/* Fonts */

@font-face { font-family: 'Oswald'; src: url('../fonts/Oswald-VariableFont_wght.ttf'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 100; src: url('../fonts/Poppins-Thin.ttf'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 200; src: url('../fonts/Poppins-ExtraLight.ttf'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 300; src: url('../fonts/Poppins-Light.ttf'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 400; src: url('../fonts/Poppins-Regular.ttf'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 500; src: url('../fonts/Poppins-Medium.ttf'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 600; src: url('../fonts/Poppins-SemiBold.ttf'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 700; src: url('../fonts/Poppins-Bold.ttf'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 800; src: url('../fonts/Poppins-ExtraBold.ttf'); }
@font-face { font-family: 'Poppins'; font-style: normal; font-weight: 900; src: url('../fonts/Poppins-Black.ttf'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 100; src: url('../fonts/Poppins-ThinItalic.ttf'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 200; src: url('../fonts/Poppins-ExtraLightItalic.ttf'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 300; src: url('../fonts/Poppins-LightItalic.ttf'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 400; src: url('../fonts/Poppins-Italic.ttf'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 500; src: url('../fonts/Poppins-MediumItalic.ttf'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 600; src: url('../fonts/Poppins-SemiBoldItalic.ttf'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 700; src: url('../fonts/Poppins-BoldItalic.ttf'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 800; src: url('../fonts/Poppins-ExtraBoldItalic.ttf'); }
@font-face { font-family: 'Poppins'; font-style: italic; font-weight: 900; src: url('../fonts/Poppins-BlackItalic.ttf'); }

/* Variables */

:root {
    --darkblue: #374E5C;
    --midblue: #8DA4B2;
    --lightblue: #D9EDF8;
    --white: #FFFFFB;
    --orange: #EEA04B;
    --font: 'Poppins', sans-serif;
    --h-font: 'Oswald', sans-serif;
}

/* GLOBAL */

* {
    font-family: var(--font);
    scroll-behavior: smooth;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--h-font);
    margin: 0;
    padding: 0;
}

html, body {
    margin: 0;
    padding: 0;
}

main {
    position: relative;
    z-index: 1;
}

nav {
    max-width: 1600px;
    margin: auto;
}

header > *,
section > *,
footer > * {
    max-width: 1100px;
    margin: auto;
}

.hide-desktop {
    display: none;
}

.hide-mobile {
    display: initial;
}

/* NAV */

nav {
    display: grid;
    grid-template-columns: auto max-content;
    padding: 10px;
}

.nav-left {
    display: grid;
    grid-template-columns: 220px auto;
    align-items: center;
}

.nav-left img {
    padding-right: 10px;
    border-right: 1px solid var(--lightblue);
}

.nav-left span {
    color: var(--midblue);
    line-height: 1.1;
    padding-left: 10px;
    font-family: var(--h-font);
}

.nav-right {
    z-index: 1;
}

.nav-right ul li {
    display: inline-block;
    padding-left: 24px;
    text-transform: uppercase;
}

.nav-right ul li a {
    color: var(--darkblue);
    font-weight: 600;
    text-decoration: none;
    font-size: 16px;
}

.nav-right ul li a.current {
    color: var(--orange);
    text-underline-offset: 4px;
    text-decoration: underline;
}

.nav-right ul li.btn a {
    color: var(--white);
    background: linear-gradient(#365D6E, #2C5161);
    border-radius: 30px;
    font-family: var(--h-font);
    padding: 5px 40px;
    text-shadow: 0px 2px 2px #444444;
    box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.2);
}

.nav-mobile {
    display: none;
}

.nav-mobile img {
    color: var(--darkblue);
    max-width: 50px;
    cursor: pointer;
}

/* CONTENT */

.page-home header {
    background-image: url('../img/photos/above-the-clouds.jpg');
    background-size: cover;
    background-position: bottom;
}

.page-home header .overtitle {
    text-align: center;
    color: var(--orange);
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 15px;
    padding-top: 120px;
    padding-bottom: 10px;
    font-weight: 700;
}

.page-home header .title {
    text-align: center;
    color: var(--white);
    text-shadow: 0px 2px 2px #444444;
    position: relative;
    max-width: 420px;
    font-size: 50px;
}

.page-home header .title:after {
    content: url('../img/icons/airplane-white.svg');
    position: absolute;
    top: -35px;
    right: -60px;
    width: 80px;
    height: 80px;
}

.page-home header .subtitle {
    color: var(--white);
    padding: 30px 0;
    max-width: 420px;
    font-size: 18px;
    text-align: center;
}

.page-home header form {
    text-align: center;
}

.page-home header form button {
    background-color: var(--orange);
    border: none;
    color: var(--white);
    text-transform: uppercase;
    font-family: var(--h-font);
    font-size: 20px;
    padding: 5px 42px;
    border-radius: 40px;
    text-shadow: 1px 2px 5px rgba(0,0,0,.5);
    font-weight: 500;
    box-shadow: 0px 10px 15px -3px rgba(0,0,0,.2), inset 0px -10px 15px -3px rgba(0,0,0,0.1);
    position: relative;
    cursor: pointer;
}

.page-home header .slider {
    margin: auto;
    margin-top: 60px;
    padding-left: 5px;
    padding-right: 5px;
    padding-bottom: 50px;
    position: relative;
}

.page-home header .slider span {
    display: block;
    position: absolute;
    width: 20px;
    height: 20px;
    top: calc(50% - 35px);
    cursor: pointer;
}

.page-home header .slider span.slider_prev {
    left: -40px;
}

.page-home header .slider span.slider_next {
    right: -40px;
}

.page-home header .slider > div {
    overflow: hidden;
}

.page-home header .slider div div {
    width: max-content;
    position: relative;
}

.page-home header .slider div div figure {
    display: inline-block;
    margin: 0 15px;
    vertical-align: middle;
}

.page-home header .slider div div figure img {
    width: 100%;
}

.page-home .intro {
    background-color: var(--lightblue);
}

.page-home .intro .columns {
    display: grid;
    grid-template-columns: 45% 55%;
    padding-bottom: 70px;
}

.page-home .intro-left {
    padding-right: 50px;
}

.page-home .intro-left h2 {
    font-size: 40px;
    max-width: 350px;
}

.page-home .intro-left p {
    font-size: 16px;
    margin: 30px 0;
    max-width: 350px;
}

.page-home .intro-left button {
    background: transparent;
    border: 2px solid var(--darkblue);
    color: var(--darkblue);
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 20px;
    font-family: var(--h-font);
    padding: 2px 24px;
    font-size: 16px;
    cursor: pointer;
    box-shadow: 0 2px 3px 1px rgba(0,0,0,.2);
}

.page-home .intro-right {
    background-color: var(--white);
    border-radius: 10px;
    box-shadow: 0 0 10px 5px rgba(0,0,0,.05);
}

.page-home .intro-right > div {
    border-radius: 10px;
    border: 4px solid var(--white);
    background-color: var(--white);
    padding: 60px;
    box-shadow: inset 0 -3px 10px 0 rgba(0,0,0,0.1);
}

.page-home .intro-right h3 {
    font-size: 38px;
    line-height: 1.2;
    margin-bottom: 28px;
    color: var(--darkblue);
}

.page-home .intro-right ul {
    list-style-type: none;
    padding-left: 0;
    max-width: 372px;
}

.page-home .intro-right ul li {
    margin-bottom: 20px;
    font-size: 18px;
    display: grid;
    grid-template-columns: 25px auto;
    column-gap: 10px;
}

.page-home .intro-right ul li:before {
    content: url('../img/icons/checkmark-green.svg');
}

.page-home .intro-right a {
    color: var(--orange);
    letter-spacing: 1px;
    text-underline-offset: 5px;
    font-weight: 600;
    font-size: 19px;
    margin-top: 30px;
    display: block;
}

.page-home .advertising {
    padding: 80px 0;
}

.page-home .advertising .overtitle {
    text-align: center;
    text-transform: uppercase;
    color: var(--midblue);
    letter-spacing: 3px;
    font-size: 14px;
    font-weight: bold;
}

.page-home .advertising h2 {
    text-align: center;
    max-width: 450px;
    font-size: 30px;
    color: var(--darkblue);
    margin-top: 10px;
    line-height: 1.2;
    margin-bottom: 40px;
}

.page-home .advertising > p {
    text-align: center;
    max-width: 450px;
    color: var(--darkblue);
}

.page-home .advertising .cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 30px;
    margin-top: 50px;
    margin-bottom: 80px;
}

.page-home .advertising .cards > div {
    background-color: var(--white);
    border-radius: 10px;
    box-shadow: 0 0 10px 5px rgba(0,0,0,.05);
}

.page-home .advertising .cards > div > div {
    border-radius: 10px;
    border: 4px solid var(--white);
    background-color: var(--white);
    box-shadow: inset 0 -3px 10px 0 rgba(0,0,0,0.1);
    padding: 15px 30px;
    height: calc(100% - 30px);
    text-align: center;
}

.page-home .advertising .cards > div > div img {
    max-width: 100px;
}

.page-home .advertising .cards > div > div p {
    font-weight: bold;
}

.page-home .advertising .cta {
    text-align: center;
}

.page-home .advertising .cta form {
    display: inline-block;
}

.page-home .advertising .cta form button {
    background: var(--darkblue);
    color: var(--white);
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 40px;
    border: 0;
    font-family: var(--h-font);
    padding: 5px 30px;
    font-size: 16px;
    cursor: pointer;
    box-shadow: 0 2px 3px 1px rgba(0,0,0,.2);
}

.page-home .advertising .cta a {
    margin-left: 30px;
    color: var(--orange);
    font-weight: 600;
    position: relative;
    top: -2px;
    text-underline-offset: 5px;
}

.page-home .media-agencies {
    background-color: var(--lightblue);
    padding: 80px 0;
}

.page-home .media-agencies .overtitle {
    text-align: center;
    text-transform: uppercase;
    color: var(--midblue);
    letter-spacing: 3px;
    font-size: 14px;
    font-weight: bold;
}

.page-home .media-agencies h2 {
    text-align: center;
    max-width: 380px;
    font-size: 30px;
    color: var(--darkblue);
    margin-top: 10px;
    line-height: 1.2;
    margin-bottom: 40px;
}

.page-home .media-agencies > p {
    text-align: center;
    max-width: 460px;
    color: var(--darkblue);
}

.page-home .media-agencies .cta {
    text-align: center;
    margin-top: 30px;
}

.page-home .media-agencies .cta button {
    background: transparent;
    border: 2px solid var(--orange);
    color: var(--orange);
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 40px;
    font-family: var(--h-font);
    padding: 2px 24px;
    font-size: 16px;
    cursor: pointer;
    box-shadow: 0 2px 3px 1px rgba(0,0,0,.2);
}

.page-home .media-agencies .cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 20px;
    margin-top: 40px;
}

.page-home .media-agencies .cards > div {
    background: url('../img/icons/imdnl-logo-background.svg'), linear-gradient(#223F4B, #2C5161);
    background-repeat: no-repeat;
    background-position: right;
    color: var(--white);
    text-align: center;
    font-weight: 500;
    font-size: 16px;
    padding: 15px 70px;
    box-shadow: 5px 5px 3px 0 rgba(0,0,0,.2);
    
}

.page-home .media-agencies .cards img {
    max-width: 100px;
}

.page-home .map {
    background-color: var(--darkblue);
    background-image: url('../img/icons/world-map-dark-blue.svg');
    background-position: center;
    background-repeat: no-repeat;
    color: var(--white);
    padding-top: 60px;
    padding-bottom: 60px;
}

.page-home .map .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 50px;
    padding-bottom: 50px;
    border-bottom: 1px solid var(--midblue);
    position: relative;
}

.page-home .map .columns:after {
    content: url('../img/icons/airplane-grey.svg');
    position: absolute;
    width: 100px;
    bottom: -50px;
    left: calc(50% - 50px);
}

.page-home .map .columns .left {
    padding: 0 50px 0 10px;
    border-right: 1px solid var(--midblue);
}

.page-home .map .columns .left h2 {
    font-weight: 400;
    font-size: 40px;
    max-width: 350px;
}

.page-home .map .columns .left h2 span {
    font-family: var(--h-font);
    font-weight: 100;
}

.page-home .map .columns .right {
    padding-left: 100px;
    max-width: 350px;
}

.page-home .map .partners-list h3 {
    text-align: center;
    font-weight: 400;
    font-size: 26px;
    margin-bottom: 40px;
}

.page-home .map .partners-list .logos {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    align-items: center;
}

.page-home .map .partners-list .logos figure {
    margin: 0;
}

.page-home .map .partners-list .logos figure img {
    width: 100%;
}

.page-home .map .cta {
    text-align: center;
    margin-top: 60px;
}

.page-home .map .cta form {
    display: inline-block;
}

.page-home .map .cta button {
    background: transparent;
    border: 2px solid var(--white);
    color: var(--white);
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 20px;
    font-family: var(--h-font);
    padding: 2px 24px;
    font-size: 16px;
    cursor: pointer;
    box-shadow: 0 2px 3px 1px rgba(0,0,0,.2);
}

.page-home .map .cta a {
    margin-left: 30px;
    color: var(--orange);
    font-weight: 600;
    position: relative;
    top: -2px;
    text-underline-offset: 5px;
}

.page-home .contact {
    background-color: var(--lightblue);
    background-image: url('../img/photos/airplane-interior-background.jpg');
    background-position: bottom;
    background-size: 100%;
    background-repeat: no-repeat;
    color: var(--darkblue);
    padding-top: 60px;
    padding-bottom: 60px;
}

.page-home .contact .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.page-home .contact .columns .left {
    margin-right: 20px;
}

.page-home .contact .columns .left h2 {
    font-size: 26px;
    max-width: 330px;
}

.page-home .contact .columns .left p {
    max-width: 310px;
}

.page-home .contact .columns .right {
    margin-left: 20px;
    background-color: var(--white);
    border-radius: 10px;
    box-shadow: 0 0 10px 5px rgba(0,0,0,.05);
}

.page-home .contact .columns .right > div {
    border-radius: 10px;
    border: 4px solid var(--white);
    background-color: var(--white);
    padding: 40px 60px;
    box-shadow: inset 0 -3px 10px 0 rgba(0,0,0,0.1);
}

.page-home .contact .columns .right h2 {
    text-align: center;
    font-size: 26px;
    margin-bottom: 25px;
}

.page-home .contact .columns .right p {
    text-align: center;
    font-size: 14px;
}

.page-home .contact .columns .right p strong {
    display: block;
    background-color: rgba(217, 237, 248, .4);
    padding: 5px 1px;
    font-size: 14px;
}

.page-home .contact .columns .right .contact-columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 30px;
    margin-bottom: 30px;
}

.page-home .contact .columns .right .contact-columns > div {
    display: grid;
    grid-template-columns: 25px auto;
    align-items: center;
}

.page-home .contact .columns .right .contact-columns img {
    background-color: var(--darkblue);
    padding: 3px;
    border-radius: 50%;
}

.page-home .contact .columns .right .contact-columns a {
    color: var(--orange);
    font-weight: 500;
    text-underline-offset: 3px;
    margin-left: 6px;
    font-size: 14px;
}

.page-home .contact .columns .right form .contact-msg {
    background-color: var(--lightblue);
    padding: 10px 20px;
    color: var(--darkblue);
    font-weight: 600;
    margin-bottom: 20px;
}

.page-home .contact .columns .right form .contact-msg p {
    margin: 0;
    text-align: left;
}

.page-home .contact .columns .right form input[type=text],
.page-home .contact .columns .right form input[type=tel],
.page-home .contact .columns .right form input[type=email],
.page-home .contact .columns .right form textarea,
.page-contact .contact form input[type=text],
.page-contact .contact form input[type=tel],
.page-contact .contact form input[type=email],
.page-contact .contact form textarea {
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 10px;
    padding: 7px 15px;
    border: solid 1px var(--midblue);
    box-shadow: inset 0px -2px 0px 0px rgba(0,0,0,0.05);
    font-weight: 500;
    border-radius: 2px;
}

.page-home .contact .columns .right form input.half,
.page-contact .contact form input.half {
    width: calc(50% - 5px);
}

.page-home .contact .columns .right form input.half.odd,
.page-contact .contact form input.half.odd {
    margin-right: 5px;
}

.page-home .contact .columns .right form input.half.even,
.page-contact .contact form input.half.even {
    margin-left: 5px;
}

.page-home .contact .columns .right form textarea,
.page-contact .contact form textarea {
    resize: none;
    height: 150px;
    margin-bottom: 0;
}

.page-home .contact .columns .right form input[type=checkbox],
.page-contact .contact form input[type=checkbox] {
    border: solid 1px var(--midblue);
    box-shadow: inset 0px -2px 0px 0px rgba(0,0,0,0.05);
    margin: 0;
    border-radius: 2px;
    appearance: none;
    width: 15px;
    height: 15px;
}

.page-home .contact .columns .right form .checkmark,
.page-contact .contact form .checkmark {
    display: none;
    position: relative;
}

.page-home .contact .columns .right form .checkmark img,
.page-contact .contact form .checkmark img {
    position: absolute;
    width: 20px;
    height: 20px;
    top: -19px;
    left: -19px;
}

.page-home .contact .columns .right form label,
.page-contact .contact form label {
    font-size: 12px;
    position: relative;
    top: -3px;
    margin-left: 8px;
}

.page-home .contact .columns .right form label a,
.page-contact .contact form label a {
    color: var(--orange);
    text-underline-offset: 3px;
    font-weight: 600;
}

.page-home .contact .columns .right form button,
.page-contact .contact form button {
    display: block;
    padding: 6px 40px;
    max-width: 240px;
    width: 100%;
    margin: 20px auto 0 auto;
    font-family: var(--h-font);
    text-transform: uppercase;
    color: var(--white);
    border: none;
    background-color: var(--orange);
    font-size: 20px;
    border-radius: 40px;
    text-shadow: 1px 2px 5px rgba(0,0,0,.5);
    font-weight: 500;
    box-shadow: 0px 10px 15px -3px rgba(0,0,0,.2), inset 0px -10px 15px -3px rgba(0,0,0,0.1);
    position: relative;
    cursor: pointer;
}

.page-home .contact .columns .right form button:after,
.page-contact .contact form button:after {
    content: url('../img/icons/airplane.svg');
    position: absolute;
    right: 15px;
    top: 6px;
    width: 32px;
    height: 32px;
    display: block;
}

.page-contact .contact {
    background-image: url(../img/photos/inflight-entertainment-screen.jpg);
    background-position: top;
    background-repeat: no-repeat;
    background-size: 100%;
    background-color: var(--lightblue);
    padding-top: 230px;
    padding-bottom: 80px;
}

.page-contact .contact .header {
    max-width: 400px;
    margin: auto;
}

.page-contact .contact .header .overtitle {
    text-align: center;
    color: var(--orange);
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 700;
    font-family: var(--font);
}

.page-contact .contact .header h2 {
    text-align: center;
    font-size: 46px;
    line-height: 1.2;
    margin-bottom: 30px;
    color: var(--white);
}

.page-contact .contact .header p {
    text-align: center;
    color: var(--white);
}

.page-contact .contact .card {
    box-shadow: 0 0 10px 5px rgba(0,0,0,.05);
    border-radius: 10px;
    background-color: var(--white);
    margin: 50px auto 0 auto;
}

.page-contact .contact .card > div {
    border-radius: 10px;
    border: 4px solid var(--white);
    background-color: var(--white);
    padding: 60px;
    box-shadow: inset 0 -3px 10px 0 rgba(0,0,0,0.1);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
}

.page-contact .contact .card .left {
    max-width: 340px;
}

.page-contact .contact .card .left h3 {
    font-size: 28px;
    color: var(--darkblue);
}

.page-contact .contact .card .left p {
    font-size: 14px;
    color: var(--darkblue);
}

.page-contact .contact .card .left .contact-items {
    display: grid;
    grid-template-columns: 25px auto;
    align-items: center;
    margin-bottom: 12px;
}

.page-contact .contact .card .left .contact-items img {
    background-color: var(--darkblue);
    padding: 3px;
    border-radius: 50%;
}

.page-contact .contact .card .left .contact-items a {
    color: var(--orange);
    font-weight: 500;
    text-underline-offset: 3px;
    margin-left: 6px;
    font-size: 14px;
}

.page-contact .contact .card .left .contact-map {
    background-color: #F5FAFE;
    padding: 10px 15px;
    margin-top: 30px;
}

.page-contact .contact .card .left .contact-map .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 15px;
}

.page-contact .contact .card .left .contact-map .left {
    font-size: 14px;
}

.page-contact .contact .card .left .contact-map .left p {
    margin: 0;
    font-size: 13px;
}

.page-contact .contact .card .left .contact-map .left a {
    color: var(--orange);
    text-underline-offset: 3px;
    font-weight: 600;
}

.page-contact .contact .card .left .contact-map .left a:after {
    content: url('../img/icons/rightwards-arrow-dark-orange.svg');
    transform: rotate(-45deg);
    display: inline-block;
    width: 20px;
    height: 20px;
    position: relative;
    top: 5px;
}

.page-contact .contact .card .left .contact-map .right {
    background-color: var(--white);
}

.page-contact .contact .card .right .contact-msg {
    background-color: var(--lightblue);
    padding: 10px 20px;
    color: var(--darkblue);
    font-weight: 600;
    margin-bottom: 20px;
}

.page-contact .contact .card .right .contact-msg p {
    margin: 0;
}

.page-contact .map {
    background-color: var(--darkblue);
    color: var(--white);
    padding-top: 60px;
    padding-bottom: 60px;
}

.page-contact .map .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
}

.page-contact .map .columns .left {
    background-image: url('../img/icons/world-map-dark-blue-cropped.svg');
    background-position: center;
    background-repeat: no-repeat;
    border-right: 1px solid var(--midblue);
}

.page-contact .map .columns .left h2 {
    font-size: 38px;
    font-weight: 400;
    max-width: 340px;
    line-height: 1.2;
    margin: auto;
}

.page-contact .map .columns .right div {
    max-width: 320px;
    margin: auto;
}

.page-about header {
    background-image: url(../img/photos/airplane-background.jpg);
    background-position: bottom;
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 100px;
    padding-bottom: 100px;
    text-align: center;
}

.page-about header h1 {
    color: var(--orange);
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 15px;
    margin-bottom: 10px;
    font-weight: 700;
    font-family: var(--font);
}

.page-about header h2 {
    max-width: 280px;
    font-size: 30px;
    color: var(--white);
    line-height: 1.2;
    margin-bottom: 40px;
}

.page-about header p {
    color: var(--white);
    max-width: 460px;
    margin-bottom: 40px;
}

.page-about header button {
    background-color: var(--orange);
    border: none;
    color: var(--white);
    text-transform: uppercase;
    font-family: var(--h-font);
    font-size: 20px;
    padding: 5px 42px;
    border-radius: 40px;
    text-shadow: 1px 2px 5px rgba(0,0,0,.5);
    font-weight: 500;
    box-shadow: 0px 10px 15px -3px rgba(0,0,0,.2), inset 0px -10px 15px -3px rgba(0,0,0,0.1);
    position: relative;
    cursor: pointer;
}

.page-about .audience,
.page-advertising .targeting {
    background-color: var(--lightblue);
    padding: 100px 0;
}

.page-about .innovation,
.page-advertising .audience,
.page-advertising .competition {
    padding: 100px 0;
}

.page-about .audience .columns,
.page-about .innovation .columns,
.page-advertising .audience .columns,
.page-advertising .targeting .columns,
.page-advertising .competition .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
}

.page-about .audience .columns .left,
.page-about .innovation .columns .right,
.page-advertising .audience .columns .left,
.page-advertising .targeting .columns .right,
.page-advertising .competition .columns .left {
    max-width: 330px;
    margin: 0 auto;
}

.page-advertising .audience .columns .left .overtitle,
.page-advertising .targeting .columns .right .overtitle,
.page-advertising .competition .columns .left .overtitle {
    color: var(--midblue);
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 700;
}

.page-about .audience .columns .left h2,
.page-about .innovation .columns .right h2,
.page-advertising .audience .columns .left h2,
.page-advertising .targeting .columns .right h2,
.page-advertising .competition .columns .left h2 {
    color: var(--darkblue);
    line-height: 1.2;
    font-weight: 500;
    font-size: 28px;
    margin-bottom: 30px;
}

.page-about .audience .columns .left a,
.page-about .innovation .columns .right a,
.page-advertising .audience .columns .left a,
.page-advertising .targeting .columns .right a,
.page-advertising .competition .columns .left a {
    color: var(--orange);
    font-weight: 600;
    text-underline-offset: 3px;
    text-decoration: underline;
    cursor: pointer;
}

.page-about .audience .columns .left a:after,
.page-about .innovation .columns .right a:after,
.page-advertising .audience .columns .left a:after,
.page-advertising .targeting .columns .right a:after,
.page-advertising .competition .columns .left a:after {
    content: url('../img/icons/rightwards-arrow-dark-orange.svg');
    width: 25px;
    height: 25px;
    display: inline-block;
    position: relative;
    top: 8px;
    margin-left: 3px;
}

.page-about .audience .columns .right,
.page-about .innovation .columns .left,
.page-advertising .audience .columns .right,
.page-advertising .targeting .columns .left,
.page-advertising .competition .columns .right {
    text-align: center;
}

.page-about .audience .columns .right img,
.page-about .innovation .columns .left img,
.page-advertising .audience .columns .right img,
.page-advertising .targeting .columns .left img,
.page-advertising .competition .columns .right img {
    width: 100%;
    max-width: 300px;
    box-shadow: 0px 10px 15px -3px rgba(0,0,0,0.2);
}

.page-about .technology,
.page-advertising .platform {
    background-color: #2C5161;
    color: var(--white);
    padding: 80px 0;
    text-align: center;
}

.page-about .technology .overtitle,
.page-advertising .platform .overtitle {
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 15px;
    margin-bottom: 10px;
    font-weight: 600;
    color: var(--lightblue);
}

.page-about .technology h2,
.page-advertising .platform h2 {
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 30px;
    font-size: 30px;
    max-width: 380px;
}

.page-about .technology > p,
.page-advertising .platform > p {
    max-width: 440px;
    margin-bottom: 50px;
}

.page-about .technology .columns,
.page-advertising .platform .columns {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 30px;
}

.page-about .technology .columns div,
.page-advertising .platform .columns div {
    background: url('../img/icons/imdnl-logo-background.svg'), linear-gradient(#223F4B, #2C5161);
    background-repeat: no-repeat;
    background-position: right;
    box-shadow: 5px 5px 3px 0 rgba(0,0,0,.2);
    min-height: 30px;
    padding: 20px 50px;
}

.page-about .technology .columns div img,
.page-advertising .platform .columns div img {
    max-width: 110px;
}

.page-about .technology .columns div p,
.page-advertising .platform .columns p {
    margin: 0;
    font-size: 14px;
}

.page-about .contact,
.page-partners .contact,
.page-advertising .contact,
.page-solution .contact {
    background-image: url('../img/photos/airplane-taking-off.jpg');
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
    padding: 100px 0;
    text-align: center;
}

.page-about .contact h2,
.page-partners .contact h2,
.page-advertising .contact h2,
.page-solution .contact h2 {
    color: var(--darkblue);
    font-size: 30px;
    margin-bottom: 20px;
}

.page-about .contact > p,
.page-partners .contact > p,
.page-advertising .contact > p,
.page-solution .contact > p {
    max-width: 440px;
}

.page-about .contact .card,
.page-partners .contact .card,
.page-advertising .contact .card,
.page-solution .contact .card {
    background-color: var(--white);
    border-radius: 10px;
    box-shadow: 0 0 10px 5px rgba(0,0,0,.05);
    margin-top: 40px;
    max-width: 520px;
}

.page-about .contact .card > div,
.page-partners .contact .card > div,
.page-advertising .contact .card > div,
.page-solution .contact .card > div {
    border-radius: 10px;
    border: 4px solid var(--white);
    background-color: var(--white);
    padding: 40px 70px;
    box-shadow: inset 0 -3px 10px 0 rgba(0,0,0,0.1);
}

.page-about .contact .card p,
.page-partners .contact .card p,
.page-advertising .contact .card p,
.page-solution .contact .card p {
    margin-top: 0;
    margin-bottom: 30px;
    color: var(--darkblue);
}

.page-about .contact .card .card-columns,
.page-partners .contact .card .card-columns,
.page-advertising .contact .card .card-columns,
.page-solution .contact .card .card-columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 25px;
    margin-bottom: 30px;
}

.page-about .contact .card .card-columns div,
.page-partners .contact .card .card-columns div,
.page-advertising .contact .card .card-columns div,
.page-solution .contact .card .card-columns div {
    display: grid;
    grid-template-columns: 25px max-content;
    align-items: center;
    margin: auto;
}

.page-about .contact .card .card-columns div img,
.page-partners .contact .card .card-columns div img,
.page-advertising .contact .card .card-columns div img,
.page-solution .contact .card .card-columns div img {
    background-color: var(--darkblue);
    padding: 3px;
    border-radius: 50%;
}

.page-about .contact .card .card-columns div a,
.page-partners .contact .card .card-columns div a,
.page-advertising .contact .card .card-columns div a,
.page-solution .contact .card .card-columns div a {
    color: var(--orange);
    font-weight: 500;
    text-underline-offset: 3px;
    margin-left: 6px;
    font-size: 14px;
}

.page-about .contact .card button,
.page-partners .contact .card button,
.page-advertising .contact .card button,
.page-solution .contact .card button {
    background: var(--darkblue);
    color: var(--white);
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 40px;
    border: 0;
    font-family: var(--h-font);
    padding: 5px 30px;
    font-size: 16px;
    cursor: pointer;
    box-shadow: 0 2px 3px 1px rgba(0,0,0,.2);
}

.page-partners header,
.page-advertising header,
.page-solution header {
    background-color: #2C5161;
    position: relative;
}

.page-partners header .columns,
.page-advertising header .columns,
.page-solution header .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.page-partners header .columns .left,
.page-advertising header .columns .left,
.page-solution header .columns .left {
    padding: 50px 0;
    position: relative;
}

.page-partners header .columns .left:after,
.page-advertising header .columns .left:after,
.page-solution header .columns .left:after {
    content: '';
    width: 12px;
    display: block;
    background-color: var(--white);
    position: absolute;
    transform: rotate(8deg);
    top: -10px;
    bottom: -10px;
    right: 0;
}

.page-partners header .columns .left h1,
.page-advertising header .columns .left h1,
.page-solution header .columns .left h1 {
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 15px;
    margin-bottom: 10px;
    font-weight: 600;
    color: var(--orange);
    font-family: var(--font);
}

.page-partners header .columns .left h2,
.page-advertising header .columns .left h2,
.page-solution header .columns .left h2 {
    color: var(--white);
    text-shadow: 0px 2px 2px rgba(0,0,0,.6);
    max-width: 350px;
    font-size: 40px;
    line-height: 1.2;
    margin-bottom: 30px;
}

.page-partners header .columns .left button,
.page-advertising header .columns .left button,
.page-solution header .columns .left button {
    background-color: var(--orange);
    border: none;
    color: var(--white);
    text-transform: uppercase;
    font-family: var(--h-font);
    font-size: 20px;
    padding: 5px 42px;
    border-radius: 40px;
    text-shadow: 1px 2px 5px rgba(0,0,0,.5);
    font-weight: 500;
    box-shadow: 0px 10px 15px -3px rgba(0,0,0,.2), inset 0px -10px 15px -3px rgba(0,0,0,0.2);
    cursor: pointer;
}

.page-partners header .columns .right {
    background-image: url('../img/photos/airplane-interior-desktop.jpg');
}

.page-advertising header .columns .right {
    background-image: url('../img/photos/passenger-using-entertainment-screen-desktop.jpg');
}

.page-solution header .columns .right {
    background-image: url('../img/photos/passenger-with-phone-desktop.jpg');
}

.page-partners header .columns .right,
.page-advertising header .columns .right,
.page-solution header .columns .right {
    background-repeat: no-repeat;
    background-position: bottom;
    background-size: cover;
    clip-path: polygon(55px 0, 100% 0, 100% 100%, 0 100%);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: calc(50% - 27px);
}

.page-partners .partnerships,
.page-advertising .digitalad,
.page-solution .items {
    padding: 80px 0;
    text-align: center;
    background-color: var(--lightblue);
}

.page-partners .partnerships h2,
.page-advertising .digitalad h2,
.page-solution .items h2 {
    line-height: 1.2;
    color: var(--darkblue);
    margin-bottom: 30px;
    max-width: 270px;
}

.page-partners .partnerships > p,
.page-advertising .digitalad > p,
.page-solution .items > p {
    max-width: 470px;
    margin-bottom: 20px;
}

.page-partners .partnerships .columns,
.page-advertising .digitalad .columns,
.page-solution .items .columns {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 8px;
    margin-top: 40px;
}

.page-partners .partnerships .columns figure,
.page-advertising .digitalad .columns figure,
.page-solution .items .columns figure {
    margin: 0 auto;
    background-color: var(--white);
    border-radius: 50%;
    max-width: 120px;
    max-height: 120px;
}

.page-partners .partnerships .columns figure img,
.page-advertising .digitalad .columns figure img,
.page-solution .items .columns figure img {
    padding: 20px;
}

.page-partners .partnerships .columns p,
.page-advertising .digitalad .columns p,
.page-solution .items .columns p {
    font-family: var(--h-font);
    color: var(--darkblue);
    font-size: 21px;
    max-width: 140px;
    margin-left: auto;
    margin-right: auto;
}

.page-partners .airlines {
    padding: 80px 0;
}

.page-partners .partners {
    padding: 80px 0;
    background-color: var(--lightblue);
}

.page-partners .airlines .columns,
.page-partners .partners .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 15px;
    align-items: center;
}

.page-partners .partners .columns .right {
    padding-left: 40px;
}

.page-partners .airlines .columns .left .overtitle,
.page-partners .partners .columns .right .overtitle {
    color: var(--midblue);
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 700;
}

.page-partners .airlines .columns .left h2,
.page-partners .partners .columns .right h2 {
    color: var(--darkblue);
    font-weight: 500;
    margin-top: 8px;
    font-size: 30px;
    max-width: 330px;
    line-height: 1.2;
}

.page-partners .airlines .columns .left p,
.page-partners .partners .columns .right p {
    max-width: 310px;
}

.page-partners .airlines .columns .left a,
.page-partners .partners .columns .right a {
    color: var(--orange);
    font-weight: 500;
    text-underline-offset: 3px;
}

.page-partners .airlines .columns .left a:after,
.page-partners .partners .columns .right a:after {
    content: url('../img/icons/rightwards-arrow-dark-orange.svg');
    width: 25px;
    height: 25px;
    display: inline-block;
    position: relative;
    top: 8px;
    margin-left: 3px;
}

.page-partners .airlines .columns .right,
.page-partners .partners .columns .left {
    background-color: var(--white);
    border-radius: 10px;
    box-shadow: 0 0 10px 5px rgba(0,0,0,.05);
}

.page-partners .airlines .columns .right > div,
.page-partners .partners .columns .left > div {
    border-radius: 10px;
    border: 4px solid var(--white);
    background-color: var(--white);
    padding: 30px;
    box-shadow: inset 0 -3px 10px 0 rgba(0,0,0,0.1);
    align-items: center;
    display: grid;
    gap: 20px 80px;
}

.page-partners .airlines .columns .right > div {
    grid-template-columns: repeat(3, 1fr);
}

.page-partners .partners .columns .left > div {
    grid-template-columns: repeat(2, 1fr);
}

.page-partners .airlines .columns .right figure,
.page-partners .partners .columns .left figure {
    margin: 0;
}

.page-partners .airlines .columns .right figure img,
.page-partners .partners .columns .left figure img {
    width: 100%;
}

.page-partners .content-partners {
    background-color: #2C5161;
    padding: 80px 0;
}

.page-partners .content-partners .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 15px;
}

.page-partners .content-partners .columns .left .overtitle {
    letter-spacing: 3px;
    text-transform: uppercase;
    font-size: 15px;
    font-weight: 700;
    color: var(--lightblue);
}

.page-partners .content-partners .columns .left h2 {
    font-weight: 500;
    font-size: 30px;
    line-height: 1.2;
    margin-top: 12px;
    margin-bottom: 28px;
    max-width: 390px;
    color: var(--white);
}

.page-partners .content-partners .columns .left p {
    color: var(--white);
    max-width: 320px;
}

.page-partners .content-partners .columns .left a {
    color: var(--orange);
    font-weight: 500;
    text-underline-offset: 3px;
}

.page-partners .content-partners .columns .left a:after {
    content: url('../img/icons/rightwards-arrow-dark-orange.svg');
    width: 25px;
    height: 25px;
    display: inline-block;
    position: relative;
    top: 8px;
    margin-left: 3px;
}

.page-partners .content-partners .columns .right {
    background: linear-gradient(to right, #254250 60%, #2A4E5E);
    border-radius: 50%;
    margin: auto;
    box-shadow: 8px 8px 5px -3px rgba(44,70,86,1);
}

.page-partners .content-partners .columns .right img {
    padding: 50px;
    max-width: 270px;
}

.page-advertising .platform .cta {
    text-align: center;
    margin-top: 60px;
}

.page-advertising .platform .cta form {
    display: inline-block;
}

.page-advertising .platform .cta button {
    background: transparent;
    border: 2px solid var(--white);
    color: var(--white);
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 20px;
    font-family: var(--h-font);
    padding: 2px 24px;
    font-size: 16px;
    cursor: pointer;
    box-shadow: 0 2px 3px 1px rgba(0,0,0,.2);
}

.page-advertising .platform .cta a {
    margin-left: 30px;
    color: var(--orange);
    font-weight: 600;
    position: relative;
    top: -2px;
    text-underline-offset: 5px;
}

.page-solution .features {
    padding: 80px 0;
    text-align: center;
}

.page-solution .features .overtitle {
    text-transform: uppercase;
    color: var(--midblue);
    letter-spacing: 3px;
    font-size: 14px;
    font-weight: bold;
}

.page-solution .features h2 {
    max-width: 410px;
    font-size: 30px;
    color: var(--darkblue);
    margin-top: 10px;
    margin-bottom: 30px;
    line-height: 1.2;
}

.page-solution .features > p {
    margin-bottom: 50px;
    max-width: 470px;
}

.page-solution .features .columns {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px 20px;
    margin-bottom: 50px;
}

.page-solution .features .columns .card {
    background-color: var(--white);
    border-radius: 10px;
    box-shadow: 0 0 10px 5px rgba(0,0,0,.05);
}

.page-solution .features .columns .card div {
    border-radius: 10px;
    border: 4px solid var(--white);
    background-color: var(--white);
    padding: 30px 50px;
    box-shadow: inset 0 -3px 10px 0 rgba(0,0,0,0.1);
    position: relative;
}

.page-solution .features .columns .card div img {
    position: absolute;
    display: block;
    width: 50px;
    height: 50px;
    left: calc(50% - 25px);
    top: -26px;
}

.page-solution .features .columns .card div h3 {
    font-family: var(--font);
    font-size: 15px;
}

.page-solution .features .columns .card div p {
    margin-bottom: 0;
}

.page-solution .features button {
    background: var(--darkblue);
    color: var(--white);
    text-transform: uppercase;
    font-weight: 700;
    border-radius: 40px;
    border: 0;
    font-family: var(--h-font);
    padding: 5px 30px;
    font-size: 16px;
    cursor: pointer;
    box-shadow: 0 2px 3px 1px rgba(0,0,0,.2);
}

.page-solution .formats {
    padding: 80px 0;
    background-color: var(--lightblue);
}

.page-solution .formats .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 15px;
}

.page-solution .formats .columns .left .overtitle {
    text-transform: uppercase;
    color: var(--midblue);
    letter-spacing: 3px;
    font-size: 14px;
    font-weight: bold;
}

.page-solution .formats .columns .left h2 {
    max-width: 300px;
    color: var(--darkblue);
    font-weight: 500;
    font-size: 28px;
    line-height: 1.2;
    margin-top: 10px;
    margin-bottom: 20px;
}

.page-solution .formats .columns .left .text {
    background-image: url('../img/misc/phone-ads-impression.png');
    background-position: 70%;
    background-size: contain;
    background-repeat: no-repeat;
    padding-bottom: 80px;
}

.page-solution .formats .columns .left .text p {
    max-width: 176px;
}

.page-solution .formats .columns .left .text a {
    color: var(--orange);
    text-underline-offset: 3px;
    font-weight: 600;
}

.page-solution .formats .columns .left .text a:after {
    content: url('../img/icons/rightwards-arrow-dark-orange.svg');
    display: inline-block;
    width: 20px;
    height: 20px;
    position: relative;
    top: 5px;
    margin-left: 3px;
}

.page-solution .formats .columns .right {
    background-color: var(--white);
    border-radius: 10px;
    box-shadow: 0 0 10px 5px rgba(0,0,0,.05);
    color: var(--darkblue);
}

.page-solution .formats .columns .right > div {
    border-radius: 10px;
    border: 4px solid var(--white);
    background-color: var(--white);
    padding: 50px 60px;
    box-shadow: inset 0 -3px 10px 0 rgba(0,0,0,0.1);
}

.page-solution .formats .columns .right div > ul {
    list-style-type: none;
    padding-left: 0;
}

.page-solution .formats .columns .right div ul {
    margin: 0;
}

.page-solution .formats .columns .right div > ul > li strong {
    display: grid;
    grid-template-columns: 20px auto;
    column-gap: 10px;
}

.page-solution .formats .columns .right div > ul > li strong:before {
    content: url('../img/icons/checkmark-green.svg');
}

.page-solution .formats .columns .right div > ul > li > ul {
    list-style-type: '- ';
    margin-bottom: 20px;
}

.page-solution .formats .columns .right div > ul > li > ul > li::marker {
    margin-right: 5px;
}

.page-solution .tool {
    background-image: url('../img/photos/business-meeting.jpg');
    background-size: cover;
    background-position: bottom;
    background-repeat: no-repeat;
    padding: 80px 0;
}

.page-solution .tool .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
    align-items: center;
}

.page-solution .tool .columns .left .overtitle {
    text-transform: uppercase;
    color: var(--midblue);
    letter-spacing: 3px;
    font-size: 14px;
    font-weight: bold;
}

.page-solution .tool .columns .left h2 {
    max-width: 330px;
    color: var(--white);
    font-weight: 500;
    font-size: 28px;
    line-height: 1.2;
    margin-top: 10px;
    margin-bottom: 20px;
}

.page-solution .tool .columns .left p {
    max-width: 310px;
    color: var(--white);
}

.page-solution .tool .columns .left a {
    color: var(--orange);
    text-underline-offset: 3px;
    font-weight: 600;
    cursor: pointer;
    text-decoration: underline;
}

.page-solution .tool .columns .left a:after {
    content: url('../img/icons/rightwards-arrow-dark-orange.svg');
    display: inline-block;
    width: 20px;
    height: 20px;
    position: relative;
    top: 5px;
    margin-left: 3px;
}

.page-solution .tool .columns .right .card {
    background: url(../img/icons/imdnl-logo-background.svg), linear-gradient(#223F4B, #2C5161);
    background-repeat: no-repeat;
    background-position: right;
    box-shadow: 5px 5px 3px 0 rgba(0,0,0,.2);
    min-height: 30px;
    padding: 20px 50px;
    display: grid;
    grid-template-columns: 70px auto;
    column-gap: 40px;
    align-items: center;
    color: var(--white);
    font-weight: 500;
    margin-bottom: 30px;
}

.page-solution .tool .columns .right a {
    color: var(--orange);
    text-underline-offset: 3px;
    font-weight: 600;
    margin: auto;
    margin-top: 60px;
    display: table;
    text-decoration: underline;
    cursor: pointer;
}

.page-solution .travellers {
    background-image: url('../img/icons/world-map-grey-cropped.svg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    padding: 80px 0;
}

.page-solution .travellers .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 15px;
}

.page-solution .travellers .columns .left h2 {
    max-width: 320px;
    color: var(--darkblue);
    font-weight: 500;
    font-size: 34px;
    line-height: 1.2;
    margin-bottom: 20px;
}

.page-solution .travellers .columns .left h2 span {
    font-family: var(--h-font);
    font-weight: 300;
}

.page-solution .travellers .columns .left p {
    max-width: 300px;
    color: var(--darkblue);
}

.page-solution .travellers .columns .right div {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 80px;
    align-items: center;
}

.page-solution .travellers .columns .right div figure {
    margin: 0;
}

.page-solution .travellers .columns .right p {
    text-align: center;
    margin-top: 50px;
}

.page-solution .travellers .columns .right a {
    color: var(--orange);
    text-underline-offset: 3px;
    font-weight: 600;
}

.page-solution .travellers .columns .right a:after {
    content: url('../img/icons/rightwards-arrow-dark-orange.svg');
    display: inline-block;
    width: 20px;
    height: 20px;
    position: relative;
    top: 5px;
}

.page-legals main {
    padding: 0 10px 60px 10px;
}

.page-legals h1 {
    margin-top: 60px;
    margin-bottom: 60px;
    text-align: center;
    color: var(--orange);
    font-size: 40px;
}

.page-legals h2 {
    color: var(--darkblue);
    font-size: 30px;
    font-weight: 500;
    margin-bottom: 20px;
}

.page-legals h3 {
    color: var(--darkblue);
    font-size: 24px;
    font-weight: 400;
    margin-bottom: 20px;
}

.page-legals h4 {
    color: var(--darkblue);
    font-size: 20px;
    font-weight: 400;
    margin-bottom: 20px;
}

.page-legals p {
    margin-bottom: 20px;
}

.page-legals a {
    color: var(--orange);
    text-underline-offset: 3px;
}

/* FOOTER */

footer {
    background-color: #101D23;
    color: var(--white);
    padding: 30px 0;
}

footer .footer-head {
    display: grid;
    grid-template-columns: 200px auto;
    border-bottom: 1px solid var(--darkblue);
    padding-bottom: 20px;
    margin-bottom: 20px;
}

footer .footer-head div {
    text-align: right;
    font-family: var(--h-font);
    font-weight: 200;
    font-size: 18px;
    letter-spacing: 1px;
}

footer .footer-head div strong {
    font-family: var(--h-font);
    font-weight: 400;
}

footer .footer-nav {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    font-size: 12px;
}

footer .footer-nav .title {
    color: #8DA4B2;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 16px;
}

footer .footer-nav a {
    display: block;
    margin-bottom: 10px;
    color: var(--orange);
    text-decoration: none;
}

footer .footer-nav .contact-line {
    display: grid;
    grid-template-columns: 25px auto;
    column-gap: 5px;
}

footer .footer-nav .contact-line img {
    width: 20px;
    height: 20px;
}

footer .footer-nav .contact-line a {
    color: var(--orange);
    text-decoration: none;
}

footer .footer-copyright {
    margin: auto;
    border-top: 1px solid var(--darkblue);
    margin-top: 20px;
    padding-top: 15px;
    font-size: 12px;
}

footer .footer-copyright .columns {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

footer .footer-copyright .columns .right a {
    text-align: right;
    color: var(--orange);
    display: grid;
    grid-template-columns: auto 25px;
    align-items: center;
    text-decoration: none;
}

footer .footer-copyright .columns .right a span {
    margin-right: 5px;
}

footer .footer-copyright .columns .right a img {
    width: 20px;
    height: 20px;
    transform: rotate(-90deg);
}