/* Mockup review: page content only; shared chrome is styled in styles.css. */

.landing-page .planning-strip {
    background-image: url('../img/landing-planning.png');
    background-position: right center;
    background-size: auto 100%;
    background-repeat: no-repeat;
}

.landing-page .planning-strip > .page-wrap {
    position: relative;
}

.landing-page .photo-cta {
    background-color: #f1ebff;
    background-image: linear-gradient(90deg, #f1ebff 35%, #f1ebff00 68%), url('../img/landing-takeoff.png');
    background-position: center, right center;
    background-size: cover, auto 100%;
    background-repeat: no-repeat;
    color: var(--ink);
}

.landing-page .photo-cta .eyebrow {
    color: var(--violet);
}

.landing-page .photo-cta h2 span {
    color: inherit;
}

.landing-page .photo-cta h2 {
    margin-bottom: 8px;
}

.landing-page .photo-cta .takeoff-description {
    margin-bottom: 18px;
}

.contact-page .photo-cta h2 {
    max-width: 490px;
}



@media (min-width: 801px) and (max-width: 991px) {

    .inner-page main .row > .col-lg-3 {
        width: 25%;
    }

    .inner-page main .row > .col-lg-4 {
        width: 33.333333%;
    }

    .inner-page main .row > .col-lg-5 {
        width: 41.666667%;
    }

    .inner-page main .row > .col-lg-6 {
        width: 50%;
    }

    .inner-page main .row > .col-lg-7 {
        width: 58.333333%;
    }

    .inner-page main .row > .col-lg-8 {
        width: 66.666667%;
    }

    .inner-page .checkout-layout > .col-lg-8 {
        width: 63%;
    }

    .inner-page .checkout-layout > .col-lg-4 {
        width: 37%;
    }
}

@media (min-width: 801px) {

    .contact-layout > .col-lg-4 {
        width: 40%;
    }

    .contact-layout > .col-lg-8 {
        width: 60%;
    }

    .contact-layout .contact-form {
        padding: 24px;
    }

    .contact-layout .contact-method {
        padding-block: 30px;
    }

    .contact-layout .contact-method a {
        overflow-wrap: anywhere;
    }

    .editorial {
        padding-block: 28px;
    }

    .editorial h2 {
        font-size: clamp(30px, 3.6vw, 42px);
    }

    .editorial p {
        font-size: 16px;
    }

    .values p {
        font-size: 14px;
    }

    .steps-layout {
        padding-block: 28px;
    }

    .steps-layout h2 {
        font-size: clamp(32px, 4vw, 48px);
    }

    .steps-layout > div > p:not(.eyebrow) {
        font-size: 17px;
    }

    .instruction-row {
        padding-block: 24px;
    }

    .instruction-row h2 {
        font-size: clamp(26px, 3.2vw, 36px);
    }

    .instruction-number {
        gap: 18px;
        margin-bottom: 12px;
    }

    .instruction-number .step-icon {
        width: 68px;
        height: 68px;
    }

    .instruction-number > b {
        width: 44px;
        height: 44px;
    }

    .instruction-row p {
        font-size: 15px;
    }

    .check-list {
        margin-top: 14px;
        gap: 8px;
    }

    .check-list li {
        font-size: 13px;
    }

    .checklist-section h2 {
        font-size: 25px;
    }

    .checklist-items {
        --bs-gutter-x: 14px;
    }

    .photo-cta {
        min-height: 250px;
        padding-block: 40px;
    }

    .photo-cta h2 {
        font-size: clamp(36px, 4.4vw, 52px);
    }

    .landing-hero {
        min-height: 365px;
        padding-block: 35px;
    }

    .landing-hero h1 {
        font-size: clamp(46px, 5.5vw, 66px);
    }

    .landing-hero p {
        font-size: 17px;
    }

    .landing-hero .hero-assurances {
        gap: 20px;
        margin-bottom: 0;
    }

    .landing-values .round-icon {
        width: 48px;
        height: 48px;
        margin-bottom: 10px;
    }

    .landing-values {
        padding-bottom: 20px;
    }

    .landing-values h3 {
        font-size: 16px;
    }

    .landing-values p {
        font-size: 12px;
    }

    .landing-page .terminals {
        min-height: 0;
        padding-block: 20px 16px;
    }

    .landing-page .planning-strip h2 {
        font-size: 22px;
    }

    .landing-page .landing-faq {
        padding-block: 20px;
    }

    .landing-page .landing-faq .section-top h2 {
        font-size: 26px;
    }

    .landing-page .landing-faq .accordion-button {
        font-size: 14px;
        padding-block: 9px;
    }

    .offers-page .page-wrap {
        width: 93%;
    }

    .offers-page .offers-hero > .page-wrap {
        padding-bottom: 35px;
    }

    .offers-page .offers-hero {
        min-height: 245px;
    }

    .offers-page .search-summary {
        margin-block: 16px 22px;
    }

    .offers-page .offers-section > h2 {
        font-size: 32px;
    }

    .offers-page .offer-toolbar {
        gap: 10px;
    }

    .offers-page .offer-toolbar > p {
        font-size: 14px;
    }

    .offers-page .offer-filters {
        gap: 6px;
    }

    .offers-page .offer-filters button {
        padding: 7px 10px;
        font-size: 11px;
    }

    .offers-page .sort-label {
        min-width: 155px;
    }

    .offers-page .offer-card h2 {
        min-height: 0;
        font-size: 18px;
        margin-bottom: 14px;
    }

    .offers-page .offer-features li {
        font-size: 12px;
        gap: 7px;
    }

    .offers-page .offer-grid {
        --bs-gutter-x: 12px;
        --bs-gutter-y: 14px;
    }

    .offers-page .offer-card .photo-window {
        aspect-ratio: 1.37;
    }

    .offers-page .help-strip {
        width: 100%;
    }

    .checkout-wrap, .confirmation-wrap {
        padding-top: 18px;
    }

    .checkout-wrap > .breadcrumb, .confirmation-wrap > .breadcrumb {
        margin-bottom: 12px;
    }

    .checkout-wrap .booking-progress {
        margin-block: 16px;
    }

    .checkout-wrap .form-section {
        padding: 14px;
    }

    .checkout-wrap .form-section .row {
        --bs-gutter-y: 10px;
    }

    .checkout-wrap .form-section > p:not(.form-note) {
        margin-bottom: 12px;
    }

    .checkout-wrap .summary-rows > div {
        padding-block: 8px;
    }

    .checkout-wrap .summary-trust {
        margin-top: 8px;
        padding-block: 12px;
    }

    .confirmation-wrap .booking-progress {
        margin: 8px auto 16px;
        margin-top: 0;
    }

    .confirmation-wrap .success-icon {
        width: 88px;
        height: 88px;
        margin-bottom: 12px;
    }

    .confirmation-wrap .confirmation-heading {
        margin-bottom: 18px;
    }

    .confirmation-wrap .reference-badge {
        margin-block: 10px;
    }

    .confirmation-wrap .confirmation-summary {
        padding: 22px;
    }

    .confirmation-wrap .confirmation-parking .photo-window {
        height: auto;
        aspect-ratio: 1.45;
    }

    .confirmation-wrap .customer-meta {
        grid-template-columns: 1fr 1fr;
    }

    .confirmation-wrap .customer-meta > div + div {
        border-left: 1px solid #e0d7ec;
        padding-left: 18px;
    }

    .confirmation-wrap .customer-meta h3 {
        font-size: 16px;
    }

    .confirmation-wrap .customer-meta p {
        font-size: 12px;
    }

    .confirmation-wrap .next-steps {
        padding: 22px;
    }

    .confirmation-wrap .next-steps article {
        padding-inline: 14px;
    }

    .confirmation-wrap .next-steps .step-icon {
        width: 68px;
        height: 68px;
        margin-bottom: 8px;
    }

    .inner-page main .contact-layout > .col-lg-4 {
        width: 40%;
    }

    .inner-page main .contact-layout > .col-lg-8 {
        width: 60%;
    }

    .contact-page .contact-form > p {
        margin-bottom: 16px;
    }

    .contact-page .contact-form .row {
        --bs-gutter-y: 12px;
    }

    .contact-page .contact-form textarea {
        min-height: 100px;
    }

    .contact-page .contact-form > .button {
        margin-top: 18px;
    }

    .contact-page .photo-cta {
        min-height: 345px;
        padding-block: 46px;
    }

    .contact-page .photo-cta h2 {
        font-size: 48px;
    }

    .about-page .page-hero {
        min-height: 320px;
    }

    .about-page .page-hero > .page-wrap {
        padding-bottom: 24px;
    }

    .about-page .photo-cta {
        min-height: 225px;
        padding-block: 30px;
    }

    .how-it-works-page .page-hero {
        min-height: 285px;
    }

    .how-it-works-page .page-hero > .page-wrap {
        padding-block: 24px;
    }

    .how-it-works-page .breadcrumb {
        margin-bottom: 26px;
    }

    .how-it-works-page .instruction-row h2 {
        font-size: clamp(24px, 2.8vw, 34px);
    }

    .how-it-works-page .instruction-row p {
        font-size: 14px;
    }

    .how-it-works-page .instruction-row .check-list li {
        font-size: 12px;
    }

    .how-it-works-page .instruction-number .step-icon {
        width: 62px;
        height: 62px;
    }

    .how-it-works-page .instruction-number {
        margin-bottom: 8px;
    }

    .how-it-works-page .instruction-row {
        padding-block: 20px;
    }

    .landing-page .journey-search {
        min-height: 85px;
        padding-block: 14px;
    }

    .landing-page .landing-values {
        padding-top: 70px;
        padding-bottom: 16px;
    }

    .landing-page .editorial {
        padding-block: 24px 16px;
    }

    .landing-page .editorial p {
        font-size: 15px;
    }

    .landing-page .steps-layout {
        padding-block: 20px;
        grid-template-columns: 43% 57%;
    }

    .landing-page .journey-steps {
        gap: 15px;
    }

    .landing-page .journey-steps .step-icon {
        width: 70px;
        height: 70px;
    }

    .landing-page .journey-steps .step-icon svg {
        width: 36px;
        height: 36px;
    }

    .landing-page .journey-steps h3 {
        font-size: 16px;
        margin-bottom: 6px;
    }

    .landing-page .journey-steps p {
        font-size: 11px;
        max-width: 125px;
    }

    .landing-page .steps-layout > div > p:not(.eyebrow) {
        font-size: 16px;
    }

    .landing-page .terminals .section-top h2 {
        font-size: 26px;
    }

    .landing-page .terminals .eyebrow {
        margin-bottom: 6px;
    }

    .landing-page .terminal-copy {
        padding: 8px;
    }

    .landing-page .terminal-copy strong {
        font-size: 14px;
    }

    .landing-page .terminal-copy small {
        font-size: 10px;
    }

    .landing-page .planning-strip {
        padding-block: 24px;
    }

    .landing-page .planning-strip .check-list {
        gap: 12px;
    }

    .landing-page .planning-strip .check-list li {
        font-size: 10px;
        gap: 6px;
    }

    .landing-page .planning-strip .check-list li > span {
        width: 21px;
        height: 21px;
    }

    .landing-page .landing-faq .section-top {
        margin-bottom: 4px;
    }

    .landing-page .landing-faq .eyebrow {
        margin-bottom: 6px;
    }

    .landing-page .photo-cta {
        min-height: 205px;
        padding-block: 30px;
    }

    .landing-page .photo-cta h2 {
        font-size: 34px;
    }

    .offers-page .offer-card .text-link {
        margin-top: 4px;
    }

    .offers-page .offer-card .parking-pill {
        margin-bottom: 12px;
    }

    .offers-page .offer-price {
        margin-top: 12px;
    }

    .offers-page .offer-card .button {
        min-height: 38px;
    }

    .checkout-wrap .form-section .form-control,
        .checkout-wrap .form-section .form-select {
        min-height: 38px;
    }

    .checkout-wrap .payment-options {
        margin-bottom: 14px;
    }

    .checkout-wrap .confirm-button {
        min-height: 50px;
    }

    .confirmation-wrap .booking-progress + .confirmation-heading {
        margin-top: 0;
    }

    .confirmation-wrap .payment-summary > p:not(.demo-payment) {
        margin-top: 14px;
    }

    .confirmation-wrap .payment-summary .summary-rows > div {
        padding-block: 8px;
    }

    .confirmation-wrap .payment-summary .total-row {
        margin-block: 8px;
    }

    .confirmation-wrap .payment-summary .text-link {
        margin-block: 10px 0;
    }

    .confirmation-wrap .next-steps .row {
        --bs-gutter-y: 0;
    }

    .confirmation-wrap .next-steps h3 {
        font-size: 14px;
    }

    .confirmation-wrap .next-steps p {
        font-size: 12px;
    }

    .confirmation-wrap > .help-strip {
        margin-top: 16px;
    }

    .landing-page .editorial .eyebrow {
        font-size: 10px;
        letter-spacing: 1.4px;
        white-space: nowrap;
    }

    .landing-page .editorial .eyebrow:after {
        width: 30px;
        flex-shrink: 1;
    }

    .landing-page .editorial h2 {
        margin-bottom: 10px;
    }

    .landing-page .editorial .button {
        margin-top: 12px;
        min-height: 38px;
    }

    .landing-page .landing-values .values article {
        padding-inline: 12px;
    }

    .landing-page .landing-values .values .round-icon {
        margin-bottom: 6px;
    }

    .landing-page .landing-values .values h3 {
        margin-bottom: 4px;
    }

    .landing-page .terminals .terminal-copy {
        padding-block: 7px;
    }

    .landing-page .photo-cta .button {
        min-height: 40px;
    }

    .landing-page .photo-cta .takeoff-description {
        margin-bottom: 12px;
    }
}

@media (max-width: 800px) {

    .inner-page main .row > .col-lg-4,
        .inner-page main .row > .col-lg-5,
        .inner-page main .row > .col-lg-6,
        .inner-page main .row > .col-lg-7,
        .inner-page main .row > .col-lg-8 {
        width: 100%;
    }

    .inner-page main .values > .col-lg-3 {
        width: 50%;
    }

    .confirmation-parking {
        align-items: start;
    }

    .confirmation-parking .photo-window {
        height: auto;
    }

    .landing-page .planning-strip {
        background-image: none;
    }

    .landing-page .photo-cta {
        background-image: linear-gradient(90deg, #f1ebffeb, #f1ebff80), url('../img/landing-takeoff.png');
    }
}
@media (max-width: 800px) {
    .inner-page .page-hero {
        background-image: linear-gradient(90deg, #211336e6, #21133675), url('../img/faq-hero.png');
    }
    .steps-layout > div > p br {
        display: none;
    }
}
@media (max-width: 480px) {
    .offers-page .offer-features li {
        font-size: 11px;
        line-height: 1.45;
    }
    .offers-page .offer-card h2 {
        min-height: 42px;
    }
    .confirmation-parking {
        grid-template-columns: 1fr;
    }
    .confirmation-parking .photo-window {
        max-height: 190px;
        aspect-ratio: 1.65;
    }
}
