/* Public site design system. Loaded after legacy styles to keep layout predictable. */
:root {
    --p-navy: #0b2a4a;
    --p-blue: #1463aa;
    --p-red: #d8332a;
    --p-ink: #172033;
    --p-muted: #5f6f82;
    --p-line: #dce5ee;
    --p-surface: #f4f7fb;
    --p-white: #fff;
}

.public-site { background: #edf2f6; color: var(--p-ink); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 16px; line-height: 1.55; }
.public-site *, .public-site *::before, .public-site *::after { box-sizing: border-box; }
.public-site .page-shell { width: 100%; max-width: 1440px; min-height: 100vh; margin: 0 auto; overflow: clip; background: var(--p-white); box-shadow: 0 0 42px rgba(15, 23, 42, .08); }
.public-site img { max-width: 100%; }
.public-site a { color: var(--p-blue); }
.public-site h1, .public-site h2, .public-site h3, .public-site p { overflow-wrap: anywhere; }

/* Header and navigation */
.public-site .site-header { display: grid; place-items: center; min-height: 108px; padding: 18px 24px; background: #fff; border-bottom: 1px solid #edf1f5; }
.public-site .brand { display: block; padding: 0; }
.public-site .header-logo-combined { width: min(285px, 72vw); height: auto; }
.public-site .nav-bar { position: sticky; top: 0; z-index: 20; display: flex; align-items: center; min-height: 56px; padding: 0 max(18px, calc((100% - 1160px) / 2)); overflow: visible; background: var(--p-navy); border-bottom: 3px solid var(--p-red); box-shadow: 0 7px 18px rgba(15,23,42,.14); }
.public-site .nav-bar a { display: inline-flex; align-items: center; min-height: 53px; padding: 0 23px; color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; white-space: nowrap; }
.public-site .nav-bar a:hover, .public-site .nav-bar a.active { background: var(--p-red); color: #fff; }
.public-site .nav-search { margin-left: auto; min-width: 52px; color: transparent; background: rgba(0,0,0,.18); }
.public-site .site-menu-toggle { display: none; }

/* Shared action and form styles */
.public-site .btn, .public-site button[type="submit"] { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; border-radius: 9px; font-size: 14px; font-weight: 800; transition: transform .16s ease, filter .16s ease; }
.public-site .btn:hover, .public-site button[type="submit"]:hover { transform: translateY(-1px); filter: brightness(.96); }
.public-site .btn-red, .public-site .btn-blue, .public-site .btn-green, .public-site .screen-package-body a, .public-site .screen-route-card > a { color: #fff !important; }
.public-site input, .public-site select, .public-site textarea { min-height: 45px; border: 1px solid #cbd7e4; border-radius: 8px; padding: 10px 12px; color: var(--p-ink); background: #fff; font-size: 15px; }
.public-site input:focus, .public-site select:focus, .public-site textarea:focus { border-color: var(--p-blue); outline: 3px solid rgba(20,99,170,.13); }
.public-site label { color: #263950; font-size: 14px; font-weight: 700; }

/* Home */
.public-site .screenshot-home { padding: 46px 0 0; background: linear-gradient(180deg, #f6f9fc 0, #fff 420px); }
.public-site .home-heli-divider { width: 225px; margin: 0 auto 34px; }
.public-site .home-package-list, .public-site .screen-route-list { width: min(1040px, calc(100% - 48px)); margin: 0 auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px; }
.public-site .screen-package-card, .public-site .screen-route-card { overflow: hidden; border: 1px solid var(--p-line); border-radius: 16px; background: #fff; box-shadow: 0 14px 34px rgba(15,23,42,.09); }
.public-site .screen-package-card { display: grid; grid-template-columns: 43% minmax(0, 1fr); min-height: 292px; }
.public-site .screen-package-card img { width: 100%; height: 100%; min-height: 292px; object-fit: cover; }
.public-site .screen-package-body { display: flex; flex-direction: column; padding: 27px 24px 22px; background: #fff; color: var(--p-ink); text-align: left; }
.public-site .screen-package-body h2 { margin: 0 0 8px; color: var(--p-ink); font-size: 23px; line-height: 1.25; }
.public-site .screen-package-body p { min-height: 44px; margin: 0; color: var(--p-muted); font-size: 14px; }
.public-site .screen-package-icons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px; margin: 17px 0; }
.public-site .screen-package-icons span { display: grid; min-height: 54px; place-items: center; align-content: center; padding: 6px 3px; border: 0; border-radius: 8px; background: #f2f6fa; color: var(--p-ink); }
.public-site .screen-package-icons strong { display: block; margin: 0; color: var(--p-blue); font-size: 14px; line-height: 1.2; }
.public-site .screen-package-icons small { display: block; margin-top: 3px; color: var(--p-muted); font-size: 10px; line-height: 1.2; text-align: center; }
.public-site .screen-package-body a, .public-site .screen-route-card > a { display: grid; min-height: 45px; margin-top: auto; place-items: center; border-radius: 8px; background: var(--p-red); font-size: 13px; font-weight: 800; letter-spacing: .025em; }
.public-site .screen-divider { width: min(1040px, calc(100% - 48px)); height: 1px; margin: 54px auto; background: var(--p-line); }
.public-site .screen-route-list { gap: 26px; }
.public-site .screen-route-image { width: 100%; height: 210px; object-fit: cover; }
.public-site .screen-route-body { padding: 24px; background: #fff; color: var(--p-ink); text-align: left; }
.public-site .screen-route-body h2 { margin: 0 0 9px; color: var(--p-ink); font-size: 21px; line-height: 1.3; }
.public-site .screen-route-body p { margin: 0; color: var(--p-muted); font-size: 14px; }
.public-site .screen-route-body p strong { display: inline; color: var(--p-ink); }
.public-site .screen-route-fares { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 20px 0; }
.public-site .screen-route-fares div { min-height: 74px; padding: 13px; border: 1px solid #d7e4f2; border-radius: 9px; background: #edf4fc; color: var(--p-blue); text-align: left; }
.public-site .screen-route-fares span, .public-site .screen-route-fares strong { display: block; }
.public-site .screen-route-fares span { color: var(--p-muted); font-size: 12px; font-weight: 700; }
.public-site .screen-route-fares strong { margin-top: 3px; color: var(--p-blue); font-size: 19px; line-height: 1.2; }
.public-site .screen-route-operators { display: block; margin: 0; padding: 16px; border: 1px solid var(--p-line); border-radius: 9px; background: #f8fafc; color: var(--p-ink); }
.public-site .screen-route-operators h3 { margin: 0 0 9px; color: var(--p-ink); font-size: 14px; }
.public-site .screen-route-operators span { display: inline-flex; min-height: 0; margin: 3px 3px 0 0; padding: 5px 8px; border: 1px solid #d8e1eb; border-radius: 999px; background: #eaf0f6; color: #263950; font-size: 12px; font-weight: 600; }
.public-site .screen-route-card > a { margin: 0 24px 24px; }
.public-site .screen-how { width: min(1040px, calc(100% - 48px)); margin: 62px auto 38px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.public-site .screen-section-bar { grid-column: 1 / -1; display: grid; min-height: 52px; place-items: center; border-radius: 10px; background: #e6eef8; color: var(--p-blue); font-size: 16px; font-weight: 800; text-transform: uppercase; }
.public-site .screen-step-image { width: 100%; border-radius: 11px; }
.public-site .info-links-section { width: min(1040px, calc(100% - 48px)); margin: 0 auto 48px; }
.public-site .info-links-heading { margin-bottom: 18px; text-align: center; }
.public-site .info-links-heading span { color: var(--p-blue); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.public-site .info-links-heading h2 { margin: 3px 0 0; color: var(--p-ink); font-size: 24px; }
.public-site .info-links-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.public-site .info-link-card { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 154px; padding: 22px; border: 1px solid #e0e7f0; border-radius: 18px; background: linear-gradient(135deg, #f8fafc, #eef2ff); box-shadow: 0 10px 28px rgba(15,23,42,.06); color: var(--p-ink); }
.public-site .info-link-card h3 { margin: 0; color: var(--p-ink); font-size: 20px; line-height: 1.25; }
.public-site .info-link-card p { margin: 7px 0 0; color: var(--p-muted); font-size: 12px; line-height: 1.45; }
.public-site .info-link-card svg { width: 60px; height: 60px; flex: 0 0 60px; fill: none; stroke: #142033; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2.8; }
.public-site .info-link-card svg text { fill: #142033; stroke: none; font-family: Arial, sans-serif; font-size: 9px; font-weight: 800; }
.public-site .screen-guidelines, .public-site .screen-article { width: min(1040px, calc(100% - 48px)); margin: 0 auto 46px; color: var(--p-ink); }
.public-site .screen-guidelines { padding: 26px 28px; border: 1px solid var(--p-line); border-radius: 14px; background: #fff; font-size: 14px; }
.public-site .screen-guidelines h2, .public-site .screen-article h2 { margin: 0 0 12px; color: var(--p-ink); font-size: 22px; }
.public-site .screen-guidelines li { margin: 8px 0; }
.public-site .screen-article { font-size: 15px; line-height: 1.7; }
.public-site .screen-article h3 { color: var(--p-ink); font-size: 17px; }
.public-site .screen-article img { width: 100%; max-height: 480px; margin: 22px 0; border-radius: 14px; object-fit: cover; }
.public-site .home-gallery { width: min(1040px, calc(100% - 48px)); margin: 0 auto 64px; }
.public-site .home-gallery-heading { margin-bottom: 20px; text-align: center; }
.public-site .home-gallery-heading span { color: var(--p-blue); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.public-site .home-gallery-heading h2 { margin: 3px 0 4px; color: var(--p-ink); font-size: 26px; }
.public-site .home-gallery-heading p { margin: 0; color: var(--p-muted); font-size: 14px; }
.public-site .home-gallery-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 165px; gap: 14px; }
.public-site .home-gallery-item { min-width: 0; margin: 0; overflow: hidden; border-radius: 13px; background: #e9eef4; box-shadow: 0 10px 24px rgba(15,23,42,.08); }
.public-site .home-gallery-item-wide { grid-column: span 2; grid-row: span 2; }
.public-site .home-gallery-item img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.public-site .home-gallery-item:hover img { transform: scale(1.04); }

/* Package, booking and gallery pages */
.public-site .screen-detail-page, .public-site .screen-booking-wrap, .public-site .screen-summary-wrap, .public-site .payment-wrap, .public-site .verify-booking-page, .public-site .screen-gallery { padding-top: 48px; padding-bottom: 64px; }
.public-site .screen-detail-card { width: min(760px, calc(100% - 48px)); margin: 0 auto 30px; border: 1px solid var(--p-line); border-radius: 16px; background: #fff; box-shadow: 0 14px 34px rgba(15,23,42,.08); }
.public-site .screen-detail-card > img { width: 100%; height: 300px; object-fit: cover; }
.public-site .screen-detail-body { padding: 28px; background: #fff; color: var(--p-ink); text-align: left; }
.public-site .screen-detail-body h1 { color: var(--p-ink); font-size: 30px; }
.public-site .screen-detail-body p { color: var(--p-muted); font-size: 15px; }
.public-site .screen-detail-section, .public-site .screen-sector-table { width: min(900px, calc(100% - 48px)); margin: 30px auto; color: var(--p-ink); font-size: 15px; }
.public-site .screen-gallery .gallery-stack, .public-site .screen-gallery .gallery-history { width: min(680px, calc(100% - 32px)); }
.public-site .screen-gallery .gallery-photo, .public-site .screen-gallery .gallery-promo { border-radius: 14px; }
.public-site .screen-gallery .promo-temple { background: linear-gradient(110deg, rgba(11,42,74,.86), rgba(20,99,170,.42)), url("../images/yatra/temple-v1.webp") center / cover; }
.public-site .screen-gallery .promo-safety { background: linear-gradient(110deg, rgba(95,28,28,.8), rgba(79,110,136,.45)), url("../images/yatra/temple-v2.webp") center / cover; }
.public-site .gallery-history { color: var(--p-ink); font-size: 14px; line-height: 1.65; }

.public-site .screen-booking-wrap { width: min(890px, calc(100% - 48px)); margin: 0 auto; background: transparent; }
.public-site .screen-booking-head { padding: 27px 28px; border-radius: 16px; background: linear-gradient(135deg, #0b2a4a, #1a69b0); color: #fff; }
.public-site .screen-booking-head h1 { font-size: 28px; }
.public-site .screen-booking-head p { color: #e8f1fa; font-size: 14px; }
.public-site .screen-form-panel { padding: 22px; border: 1px solid var(--p-line); border-radius: 13px; background: #fff; box-shadow: 0 8px 20px rgba(15,23,42,.045); }
.public-site .screen-form-panel h2 { color: var(--p-ink); font-size: 18px; }
.public-site .screen-form-panel small { color: var(--p-muted); }
.public-site .screen-form-panel .passenger-box { background: #f6f9fc; }
.public-site .fare-summary { background: #f6f9fd; }

/* Payment, booking summary and verification */
.public-site .payment-shell { background: #fff; border: 1px solid var(--p-line); box-shadow: 0 14px 34px rgba(15,23,42,.08); }
.public-site .payment-main h1, .public-site .payment-card h2, .public-site .amount-card h2 { color: var(--p-ink); }
.public-site .payment-card, .public-site .amount-card, .public-site .copy-tile { background: #fff; color: var(--p-ink); }
.public-site .heli-summary-page { padding: 48px 24px 64px; background: var(--p-surface); }
.public-site .heli-route-card, .public-site .heli-passenger-panel, .public-site .heli-price-card { background: #fff; color: var(--p-ink); border-color: var(--p-line); box-shadow: 0 8px 22px rgba(15,23,42,.05); }
.public-site .heli-route-segment strong, .public-site .heli-panel-head h1, .public-site .heli-price-card h2, .public-site .heli-price-total { color: var(--p-ink); }
.public-site .verify-booking-page { color: var(--p-ink); }
.public-site .verify-check-form, .public-site .verify-paid-result, .public-site .verify-passenger-card { background: #fff; }
.public-site .verify-paid-meta, .public-site .verify-paid-total { color: var(--p-ink); }

/* Footer */
.public-site .site-footer { margin-top: 0; background: #0b233b; color: #eef6ff; }
.public-site .footer-grid { width: min(1120px, calc(100% - 48px)); margin: 0 auto; padding: 48px 0; }
.public-site .footer-grid p { color: #c4d2df; }
.public-site .copyright { padding: 17px 20px; background: #071827; color: #aebdcb; font-size: 13px; }

@media (max-width: 820px) {
    .public-site .home-package-list, .public-site .screen-route-list { grid-template-columns: 1fr; width: min(580px, calc(100% - 32px)); }
    .public-site .screen-package-card { grid-template-columns: 42% minmax(0, 1fr); }
    .public-site .screen-how { width: min(580px, calc(100% - 32px)); grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .public-site .info-links-section { width: min(580px, calc(100% - 32px)); }
    .public-site .info-links-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .public-site .home-gallery { width: min(580px, calc(100% - 32px)); }
    .public-site .home-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 180px; }
}

@media (max-width: 640px) {
    .public-site { background: #fff; font-size: 15px; }
    .public-site .page-shell { box-shadow: none; overflow: visible; }
    .public-site .site-header { min-height: 82px; padding: 12px 16px; }
    .public-site .nav-bar { position: relative; min-height: 52px; padding: 0 12px; }
    .public-site .site-menu-toggle { display: grid; width: 42px; height: 42px; place-items: center; margin-right: 4px; border: 0; border-radius: 8px; background: rgba(255,255,255,.12); color: #fff; }
    .public-site .nav-bar a { display: none; min-height: 0; padding: 14px 16px; background: var(--p-navy); }
    .public-site.site-menu-open .nav-bar { align-items: stretch; flex-wrap: wrap; }
    .public-site.site-menu-open .nav-bar a { display: flex; flex: 1 0 100%; }
    .public-site .nav-search { display: none; }
    .public-site .screenshot-home { padding-top: 30px; }
    .public-site .home-heli-divider { width: 175px; margin-bottom: 24px; }
    .public-site .home-package-list, .public-site .screen-route-list { gap: 18px; }
    .public-site .screen-route-list { margin: 18px auto 0; }
    .public-site .screen-divider { display: none; margin: 0; }
    .public-site .screen-package-card { display: block; min-height: 0; }
    .public-site .screen-package-card img { height: 205px; min-height: 0; }
    .public-site .screen-package-body { padding: 21px 17px 17px; }
    .public-site .screen-package-body h2 { font-size: 21px; }
    .public-site .screen-package-icons strong { font-size: 13px; }
    .public-site .screen-route-image { height: 190px; }
    .public-site .screen-route-body { padding: 21px 17px; }
    .public-site .screen-route-body h2 { font-size: 20px; }
    .public-site .screen-route-card > a { margin: 0 17px 17px; }
    .public-site .screen-how { grid-template-columns: 1fr; margin-top: 38px; }
    .public-site .screen-section-bar { grid-column: 1; }
    .public-site .screen-section-bar::after { content: none; display: none; }
    .public-site .info-links-section { width: calc(100% - 32px); margin-bottom: 38px; }
    .public-site .info-links-heading { margin-bottom: 14px; }
    .public-site .info-links-heading h2 { font-size: 21px; }
    .public-site .info-links-grid { grid-template-columns: 1fr; gap: 13px; }
    .public-site .info-link-card { min-height: 128px; padding: 20px 22px; border-radius: 16px; }
    .public-site .info-link-card h3 { font-size: 22px; }
    .public-site .info-link-card p { font-size: 12px; }
    .public-site .info-link-card svg { width: 64px; height: 64px; flex-basis: 64px; }
    .public-site .screen-guidelines, .public-site .screen-article { width: calc(100% - 32px); }
    .public-site .screen-guidelines { padding: 20px; }
    .public-site .screen-article { font-size: 14px; }
    .public-site .home-gallery { width: calc(100% - 32px); margin-bottom: 44px; }
    .public-site .home-gallery-heading h2 { font-size: 22px; }
    .public-site .home-gallery-grid { grid-auto-rows: 145px; gap: 10px; }
    .public-site .home-gallery-item-wide { grid-column: span 2; grid-row: span 2; }
    .public-site .screen-detail-page, .public-site .screen-booking-wrap, .public-site .screen-summary-wrap, .public-site .payment-wrap, .public-site .verify-booking-page, .public-site .screen-gallery { padding-top: 28px; padding-bottom: 40px; }
    .public-site .screen-detail-card, .public-site .screen-booking-wrap { width: calc(100% - 32px); }
    .public-site .screen-detail-card > img { height: 210px; }
    .public-site .screen-detail-body { padding: 20px; }
    .public-site .screen-detail-body h1 { font-size: 25px; }
    .public-site .screen-detail-section, .public-site .screen-sector-table { width: calc(100% - 32px); font-size: 14px; }
    .public-site .screen-booking-head { padding: 21px 19px; }
    .public-site .screen-booking-head h1 { font-size: 23px; }
    .public-site .screen-form-panel { padding: 17px; }
    .public-site .screen-form-panel h2 { font-size: 17px; }
    .public-site .payment-wrap { padding-left: 16px; padding-right: 16px; }
    .public-site .payment-shell { grid-template-columns: minmax(0, 1fr); padding: 14px; border-radius: 13px; }
    .public-site .heli-summary-page { padding: 20px 12px 42px; }
    .public-site .heli-summary-shell { grid-template-columns: minmax(0, 1fr); }
    .public-site .heli-route-card { grid-template-columns: 38px minmax(0, 1fr); }
    .public-site .heli-route-segment { grid-template-columns: minmax(0, 1fr); }
    .public-site .heli-route-segment > div:last-child { text-align: left; }
    .public-site .heli-passenger-table, .public-site .verify-passenger-card, .public-site .table-scroll { max-width: 100%; overflow-x: visible; }
    .public-site .heli-passenger-table .heli-passenger-row { min-width: 0; }
    .public-site .footer-grid { width: calc(100% - 40px); grid-template-columns: 1fr; padding: 38px 0; }
}

@media (max-width: 640px) {
    .public-site .screen-package-icons span {
        padding: 20px 16px;
    }

    .public-site .heli-passenger-table-head,
    .public-site .heli-passenger-table .heli-passenger-row {
        grid-template-columns: minmax(0, 1fr) minmax(0, .62fr) 42px minmax(0, .83fr) !important;
        min-width: 0 !important;
    }

    .public-site .heli-passenger-table-head span {
        white-space: nowrap;
    }
}

/* Use the same blue primary action style on all public inner pages. */
.public-site main .btn,
.public-site main .heli-book-button,
.public-site main .screen-continue,
.public-site main button[type="submit"] {
    border-color: #5a86c4 !important;
    background: #5a86c4 !important;
    color: #fff !important;
}

.public-site main .btn:hover,
.public-site main .heli-book-button:hover,
.public-site main .screen-continue:hover,
.public-site main button[type="submit"]:hover {
    background: #3f70b2 !important;
    color: #fff !important;
}

.public-site .screen-package-body p {
    text-align: center;
}

/* Shared header and footer aligned with the reference utility bar and information footer. */
.public-site .site-header { position: relative; display: flex; align-items: center; justify-content: space-between; min-height: 68px; padding: 11px max(24px, calc((100% - 1200px) / 2)); border-bottom: 1px solid #e8edf3; }
.public-site .brand { flex: 0 0 auto; }
.public-site .header-logo-combined { width: 190px; max-width: 48vw; }
.public-site .nav-bar { position: static; display: flex; justify-content: flex-end; min-height: 0; padding: 0; overflow: visible; background: transparent; border: 0; box-shadow: none; }
.public-site .nav-bar a { min-height: 38px; padding: 0 12px; color: #44556c; font-size: 14px; font-weight: 700; letter-spacing: 0; text-transform: none; }
.public-site .nav-bar a .icon { display: inline-block; width: 17px; height: 17px; margin-right: 5px; }
.public-site .nav-bar a:hover, .public-site .nav-bar a.active { background: transparent; color: #2361ae; }
.public-site .site-menu-toggle { display: none; }

.public-site .site-footer { position: relative; overflow: hidden; background: #1d2a3b; }
.public-site .site-footer::after { content: ""; position: absolute; right: -20px; bottom: -62px; width: 280px; height: 145px; opacity: .16; background: linear-gradient(135deg, transparent 47%, #dbe7ff 48% 49%, transparent 50%) 0 0 / 55px 75px, linear-gradient(45deg, transparent 47%, #dbe7ff 48% 49%, transparent 50%) 0 0 / 55px 75px; }
.public-site .footer-grid { position: relative; z-index: 1; width: min(1200px, calc(100% - 48px)); grid-template-columns: 1.25fr .9fr 1.15fr .7fr; gap: 36px; padding: 44px 0 34px; }
.public-site .footer-grid > div { min-width: 0; }
.public-site .footer-grid strong { display: block; margin-bottom: 7px; color: #fff; font-size: 16px; }
.public-site .footer-grid p { margin: 0 0 13px; color: #d5deeb; font-size: 13px; line-height: 1.55; }
.public-site .footer-brand img { width: 76px; margin-bottom: 12px; }
.public-site .footer-brand strong { color: #fff; font-size: 15px; }
.public-site .partner-badge { justify-self: start; color: #d5deeb; text-align: left; }
.public-site .partner-icons { justify-content: flex-start; }
.public-site .copyright { position: relative; z-index: 1; padding: 17px 24px; border-top: 1px solid rgba(255,255,255,.12); background: #172334; color: #cad5e3; font-size: 12px; text-align: left; }

@media (max-width: 640px) {
    .public-site .site-header { min-height: 60px; padding: 9px 16px; }
    .public-site .header-logo-combined { width: 155px; }
    .public-site .site-menu-toggle { display: grid; order: 2; width: 38px; height: 38px; place-items: center; margin: 0; border: 0; border-radius: 7px; background: #eef3f8; color: #31455d; }
    .public-site .nav-bar { order: 2; }
    .public-site .nav-bar a { display: none; }
    .public-site.site-menu-open .site-header { flex-wrap: wrap; }
    .public-site.site-menu-open .nav-bar { display: grid; order: 3; width: 100%; grid-template-columns: 1fr; padding-top: 8px; }
    .public-site.site-menu-open .nav-bar a { display: flex; min-height: 42px; padding: 0 10px; border-top: 1px solid #edf1f5; }
    .public-site .footer-grid { width: calc(100% - 40px); grid-template-columns: 1fr 1fr; gap: 26px 18px; padding: 35px 0 28px; }
    .public-site .footer-brand { grid-column: 1 / -1; }
    .public-site .footer-grid strong { font-size: 14px; }
    .public-site .footer-grid p { font-size: 12px; }
    .public-site .copyright { padding: 14px 20px; font-size: 11px; text-align: center; }
}

@media (max-width: 390px) {
    .public-site .footer-grid { grid-template-columns: 1fr; }
    .public-site .footer-brand { grid-column: auto; }
}

/* Final mobile header and package-fact polish. */
.public-site .screen-package-icons span { min-height: 56px; padding: 9px 6px; }
.public-site .screen-package-icons strong { line-height: 1.25; }
.public-site .screen-package-icons small { margin-top: 4px; line-height: 1.25; }

@media (max-width: 640px) {
    .public-site .site-header { position: relative; display: flex; width: 100%; min-height: 68px; padding: 10px 16px; background: #fff; box-shadow: 0 2px 10px rgba(15,23,42,.07); }
    .public-site .brand { display: inline-flex; align-items: center; min-width: 0; }
    .public-site .header-logo-combined { width: min(172px, 58vw); max-width: 100%; }
    .public-site .nav-bar { display: flex; width: auto; flex: 0 0 auto; margin-left: auto; }
    .public-site .site-menu-toggle { display: grid; width: 44px; height: 44px; margin: 0; place-items: center; border: 1px solid #d7e2ee; border-radius: 10px; background: #f3f7fb; color: #1e4c78; box-shadow: 0 3px 8px rgba(15,23,42,.08); }
    .public-site .site-menu-toggle .icon { width: 22px; height: 22px; stroke-width: 2.5; }
    .public-site.site-menu-open .site-header { align-items: flex-start; flex-wrap: wrap; }
    .public-site.site-menu-open .nav-bar { display: grid; width: 100%; flex-basis: 100%; margin-top: 8px; padding: 0; border: 1px solid #e1e9f1; border-radius: 10px; background: #fff; box-shadow: 0 12px 25px rgba(15,23,42,.1); }
    .public-site.site-menu-open .site-menu-toggle { position: absolute; top: 11px; right: 16px; z-index: 2; }
    .public-site.site-menu-open .nav-bar a { position: static; display: flex; grid-column: 1; width: auto; min-height: 46px; padding: 0 14px; border-top: 1px solid #edf1f5; background: #fff; color: #233b56; font-size: 14px; }
    .public-site.site-menu-open .nav-bar a:hover, .public-site.site-menu-open .nav-bar a.active { background: #eef5fc; color: #1f5fae; }
    .public-site.site-menu-open .nav-bar a:first-of-type { border-top: 0; }
    .public-site .screen-package-icons { gap: 7px; }
    .public-site .screen-package-icons span { min-height: 62px; padding: 10px 4px; }
    .public-site .screen-package-icons strong { font-size: 13px; }
    .public-site .screen-package-icons small { font-size: 10px; }
}

@media (max-width: 390px) {
    .public-site .home-package-list, .public-site .screen-route-list, .public-site .screen-how, .public-site .screen-guidelines, .public-site .screen-article, .public-site .screen-detail-card, .public-site .screen-booking-wrap { width: calc(100% - 24px); }
    .public-site .screen-package-icons { gap: 4px; }
    .public-site .screen-package-icons span { padding: 5px 2px; }
    .public-site .screen-package-icons strong { font-size: 12px; }
    .public-site .screen-package-icons small { font-size: 9px; }
}

/* Reference-inspired home composition. Keeps all existing content and destinations intact. */
.public-site .screenshot-home { padding-top: 28px; background: #fff; }
.public-site .home-package-list { width: min(1200px, calc(100% - 48px)); gap: 24px; }
.public-site .screen-package-card { display: block; min-height: 0; border-radius: 8px; box-shadow: none; }
.public-site .screen-package-card img { height: 260px; min-height: 0; }
.public-site .screen-package-body { min-height: 230px; padding: 14px 24px 24px; text-align: center; }
.public-site .screen-package-body h2 { color: #2463b7; font-size: 25px; }
.public-site .screen-package-body p { min-height: 42px; color: #bd1e24; font-size: 14px; text-align: left; }
.public-site .screen-package-icons { margin: 8px auto 16px; max-width: 340px; }
.public-site .screen-package-icons span { min-height: 43px; background: #f3f6fa; }
.public-site .screen-package-body a, .public-site .screen-route-card > a { min-height: 40px; border-radius: 5px; background: #5a86c4; font-size: 12px; }
.public-site .screen-route-list { width: min(1200px, calc(100% - 48px)); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-top: 24px; }
.public-site .screen-route-card { border-radius: 8px; box-shadow: none; }
.public-site .screen-route-image { height: 230px; }
.public-site .screen-route-body { padding: 17px 20px; }
.public-site .screen-route-card > a { margin: 0 20px 20px; }
.public-site .screen-how { width: min(1200px, calc(100% - 48px)); margin: 64px auto 56px; gap: 20px; }
.public-site .screen-section-bar { min-height: 0; padding: 0 0 14px; border-radius: 0; border-bottom: 2px solid #2c6abe; background: transparent; color: #2561b4; font-size: 20px; text-transform: none; }

.public-site .home-actions { width: min(1200px, calc(100% - 48px)); display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr); gap: 40px; margin: 0 auto 72px; align-items: start; }
.public-site .home-actions .screen-guidelines { width: auto; margin: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none; }
.public-site .home-actions .screen-guidelines h2, .public-site .home-history h2 { padding-bottom: 10px; border-bottom: 1px solid #dce5ee; color: #2463b7; font-size: 22px; }
.public-site .home-actions .screen-guidelines ul { padding-left: 20px; font-size: 13px; line-height: 1.55; }
.public-site .home-actions .screen-guidelines li { margin: 10px 0; }
.public-site .home-actions .info-links-section { width: auto; margin: 0; }
.public-site .info-links-heading { display: none; }
.public-site .info-links-grid { grid-template-columns: 1fr; gap: 16px; }
.public-site .info-link-card { min-height: 110px; padding: 21px 28px; border: 0; border-radius: 14px; background: #f0f2f9; box-shadow: 0 10px 20px rgba(15,23,42,.08); }
.public-site .info-link-card h3 { font-size: 17px; font-weight: 500; }
.public-site .info-link-card p { display: none; }
.public-site .info-link-card svg { width: 54px; height: 54px; }

.public-site .screen-article { width: 100%; max-width: none; margin: 0 0 72px; padding: 68px max(24px, calc((100% - 1100px) / 2)); background: #e9ebf4; }
.public-site .home-story { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; align-items: center; margin: 0 0 56px; }
.public-site .home-story:last-child { margin-bottom: 0; }
.public-site .home-story img { width: 100%; height: 255px; margin: 0; border-radius: 10px; object-fit: cover; }
.public-site .home-story h2 { margin: 0 0 12px; color: #2463b7; font-size: 26px; }
.public-site .home-story p { margin: 0 0 12px; color: #263950; font-size: 14px; line-height: 1.55; }
.public-site .home-gallery { width: min(1200px, calc(100% - 48px)); margin-bottom: 72px; }
.public-site .home-gallery-heading h2 { padding-bottom: 10px; border-bottom: 1px solid #dce5ee; color: #2463b7; font-size: 24px; }
.public-site .home-gallery-heading span, .public-site .home-gallery-heading p { display: none; }
.public-site .home-gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: 230px; gap: 16px; }
.public-site .home-gallery-item, .public-site .home-gallery-item-wide { grid-column: auto; grid-row: auto; border-radius: 8px; box-shadow: none; }
.public-site .home-history { width: min(1200px, calc(100% - 48px)); margin: 0 auto 72px; color: var(--p-ink); }
.public-site .home-history h2 { margin: 0 0 26px; font-size: 26px; }
.public-site .home-history h3 { margin: 24px 0 7px; color: #172033; font-size: 18px; }
.public-site .home-history p { margin: 0 0 12px; font-size: 14px; line-height: 1.6; }
.public-site .site-footer { background: #1d2a3b; }
.public-site .footer-grid { width: min(1200px, calc(100% - 48px)); }

@media (max-width: 820px) {
    .public-site .screen-route-list { width: min(580px, calc(100% - 32px)); grid-template-columns: 1fr; }
    .public-site .home-actions { width: min(580px, calc(100% - 32px)); grid-template-columns: 1fr; }
    .public-site .screen-article { padding-left: max(16px, calc((100% - 580px) / 2)); padding-right: max(16px, calc((100% - 580px) / 2)); }
    .public-site .home-gallery { width: min(580px, calc(100% - 32px)); }
    .public-site .home-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .public-site .home-history { width: min(580px, calc(100% - 32px)); }
}

@media (max-width: 640px) {
    .public-site .screenshot-home { padding-top: 18px; }
    .public-site .home-package-list { width: calc(100% - 32px); gap: 16px; }
    .public-site .screen-package-card img { height: 190px; }
    .public-site .screen-package-body { min-height: 0; padding: 13px 16px 17px; }
    .public-site .screen-package-body h2 { font-size: 21px; }
    .public-site .screen-package-body p { font-size: 13px; }
    .public-site .screen-route-list { margin-top: 16px; gap: 16px; }
    .public-site .screen-how { width: calc(100% - 32px); margin: 42px auto 36px; gap: 14px; }
    .public-site .screen-step-image { border-radius: 7px; }
    .public-site .home-actions { width: calc(100% - 32px); gap: 30px; margin-bottom: 48px; }
    .public-site .home-actions .screen-guidelines h2, .public-site .home-history h2 { font-size: 20px; }
    .public-site .home-actions .screen-guidelines ul { font-size: 12px; }
    .public-site .info-link-card { min-height: 88px; padding: 16px 20px; border-radius: 10px; }
    .public-site .screen-article { margin-bottom: 48px; padding: 44px 16px; }
    .public-site .home-story, .public-site .home-story-reverse { grid-template-columns: 1fr; gap: 18px; margin-bottom: 38px; }
    .public-site .home-story-reverse div { order: 2; }
    .public-site .home-story-reverse img { order: 1; }
    .public-site .home-story img { height: 205px; }
    .public-site .home-story h2 { font-size: 22px; }
    .public-site .home-story p { font-size: 13px; }
    .public-site .home-gallery { width: calc(100% - 32px); margin-bottom: 48px; }
    .public-site .home-gallery-grid { grid-auto-rows: 142px; gap: 12px; }
    .public-site .home-history { width: calc(100% - 32px); margin-bottom: 48px; }
    .public-site .home-history h2 { margin-bottom: 18px; }
    .public-site .home-history p { font-size: 13px; }
}

@media (max-width: 640px) {
    .public-site .screen-package-icons span {
        padding: 20px 16px;
    }
}

/* Professional three-stage booking journey */
.public-site .booking-flow { position: relative; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); width: 100%; margin: 0 auto 22px; padding: 18px 20px; border: 1px solid #dbe5ef; border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(15,38,64,.06); }
.public-site .booking-flow::before { content:""; position:absolute; top:38px; left:17%; right:17%; height:2px; background:#dce5ee; }
.public-site .booking-flow div { position:relative; z-index:1; display:grid; justify-items:center; text-align:center; }
.public-site .booking-flow div>span { display:grid; width:40px; height:40px; margin-bottom:9px; place-items:center; border:2px solid #d1dce7; border-radius:50%; background:#fff; color:#708095; font-size:13px; font-weight:900; }
.public-site .booking-flow strong { color:#526277; font-size:13px; line-height:1.3; }
.public-site .booking-flow small { margin-top:2px; color:#8a99aa; font-size:10px; }
.public-site .booking-flow .is-active>span { border-color:#1463aa; background:#1463aa; color:#fff; box-shadow:0 0 0 5px rgba(20,99,170,.1); }
.public-site .booking-flow .is-active strong { color:#0b2a4a; }
.public-site .booking-flow .is-complete>span { border-color:#13875d; background:#13875d; color:#fff; }
.public-site .booking-flow .is-complete strong { color:#285a49; }
.public-site .booking-flow-wide { width:min(1100px,calc(100% - 48px)); }
.public-site .booking-eyebrow,.public-site .flow-page-heading>span { display:inline-flex; margin-bottom:9px; color:#9ed1ff; font-size:11px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.public-site .flow-page-heading { width:min(1100px,calc(100% - 48px)); margin:0 auto 22px; padding:26px 28px; border-radius:16px; background:linear-gradient(135deg,#0b2a4a,#1463aa); color:#fff; }
.public-site .flow-page-heading h1 { margin:0 0 6px; color:#fff; font-size:28px; letter-spacing:-.025em; }
.public-site .flow-page-heading p { margin:0; color:#d9e9f7; font-size:14px; }
.public-site .screen-booking-head { margin-bottom:18px; padding:32px; box-shadow:0 18px 42px rgba(11,42,74,.18); }
.public-site .screen-booking-head h1 { margin:0 0 7px; letter-spacing:-.025em; }
.public-site .screen-booking-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.public-site .screen-form-panel { margin:0; padding:24px; border-radius:16px; box-shadow:0 10px 28px rgba(15,38,64,.055); }
.public-site .screen-form-panel h2 { display:flex; align-items:center; gap:10px; margin:0 0 19px; padding-bottom:14px; border-bottom:1px solid #e8eef4; }
.public-site .panel-step { display:grid; flex:0 0 31px; width:31px; height:31px; place-items:center; border-radius:9px; background:#e9f3fc; color:#1463aa; font-size:10px; font-weight:900; }
.public-site .screen-form-panel label { display:grid; gap:7px; margin-bottom:14px; }
.public-site .screen-form-panel input,.public-site .screen-form-panel select { min-height:50px; border-radius:10px; }
.public-site .screen-form-panel small { display:block; line-height:1.5; }
.public-site .screen-form-panel:nth-last-child(2),.public-site .screen-payment-summary { grid-column:1/-1; }
.public-site .passenger-box { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 16px; margin-top:15px; padding:20px; border:1px solid #dce6ef; border-radius:13px; }
.public-site .passenger-box>strong { grid-column:1/-1; padding-bottom:10px; border-bottom:1px solid #dde7f0; color:#0b2a4a; }
.public-site .fare-summary { padding:20px; border:1px solid #d6e3ef; border-radius:13px; background:linear-gradient(135deg,#f4f9fd,#eef5fb); }
.public-site .fare-summary-copy strong { color:#0b2a4a; font-size:30px; }
.public-site .fare-summary .btn { min-width:210px; min-height:52px; border-radius:11px; }
.public-site .heli-summary-shell { gap:22px; }
.public-site .heli-route-card,.public-site .heli-passenger-panel,.public-site .heli-price-card { border-radius:16px; box-shadow:0 12px 32px rgba(15,38,64,.07); }
.public-site .heli-price-card { position:sticky; top:75px; }
.public-site .heli-book-button { min-height:54px; border-radius:11px; font-weight:850; }
.public-site .payment-wrap { width:min(1120px,calc(100% - 48px)); margin:0 auto; }
.public-site .payment-wrap .booking-flow-wide { width:100%; }
.public-site .payment-shell { gap:24px; padding:24px; border-radius:18px; background:#f8fafc; }
.public-site .payment-main { min-width:0; }
.public-site .payment-main>h1 { margin-bottom:6px; font-size:30px; letter-spacing:-.025em; }
.public-site .payment-card { border:1px solid #dbe5ef; border-radius:15px; box-shadow:0 8px 24px rgba(15,38,64,.05); }
.public-site .merchant-grid { gap:10px; }
.public-site .copy-tile { border:1px solid #dde7f0; border-radius:10px; background:#f8fafc; }
.public-site .confirm-card { border-top:4px solid #1463aa; }
.public-site .confirm-card label { display:grid; gap:7px; margin-top:16px; }
.public-site .confirm-card input { min-height:51px; border-radius:10px; }
.public-site .amount-card { position:sticky; top:75px; border:0; border-radius:16px; background:linear-gradient(145deg,#0b2a4a,#155f9e); color:#fff; box-shadow:0 16px 38px rgba(11,42,74,.22); }
.public-site .amount-card span,.public-site .amount-card strong,.public-site .amount-card p { color:#fff; }

@media(max-width:760px){
 .public-site .booking-flow,.public-site .booking-flow-wide { width:calc(100% - 32px); padding:14px 8px; }
 .public-site .screen-booking-wrap .booking-flow { width:100%; }
 .public-site .booking-flow::before { top:31px; left:17%; right:17%; }
 .public-site .booking-flow div>span { width:34px; height:34px; margin-bottom:7px; }
 .public-site .booking-flow strong { font-size:10px; }
 .public-site .booking-flow small { display:none; }
 .public-site .flow-page-heading { width:calc(100% - 32px); padding:21px 19px; }
 .public-site .flow-page-heading h1 { font-size:23px; }
 .public-site .screen-booking-form { grid-template-columns:1fr; gap:13px; }
 .public-site .screen-form-panel,.public-site .screen-form-panel:nth-last-child(2),.public-site .screen-payment-summary { grid-column:1; }
 .public-site .passenger-box { grid-template-columns:1fr; padding:16px; }
 .public-site .passenger-box>strong { grid-column:1; }
 .public-site .fare-summary { display:grid; gap:16px; }
 .public-site .fare-summary .btn { width:100%; min-width:0; }
 .public-site .heli-price-card,.public-site .amount-card { position:static; }
 .public-site .payment-wrap { width:100%; }
 .public-site .payment-wrap .booking-flow-wide { width:100%; }
 .public-site .payment-shell { padding:14px; }
 .public-site .payment-main>h1 { font-size:25px; }
}

/* Unified legal/professional booking forms */
.public-site .screen-booking-wrap { width:min(1000px,calc(100% - 48px)); }
.public-site .screen-booking-head { margin-bottom:0; border-radius:18px 18px 0 0; padding:32px 36px; }
.public-site .screen-booking-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; padding:10px 36px 0; border:1px solid #d7e2ed; border-top:0; border-radius:0 0 18px 18px; background:#fff; box-shadow:0 20px 55px rgba(15,38,64,.09); }
.public-site .screen-booking-form .booking-section { min-width:0; margin:0; padding:28px 0; border:0; border-bottom:1px solid #e5ebf1; border-radius:0; background:#fff; box-shadow:none; }
.public-site .screen-booking-form .booking-section:nth-of-type(odd) { padding-right:28px; }
.public-site .screen-booking-form .booking-section:nth-of-type(even) { padding-left:28px; border-left:1px solid #e5ebf1; }
.public-site .screen-booking-form .booking-section-route,.public-site .screen-booking-form .booking-section-contact,.public-site .screen-booking-form .booking-section-passengers,.public-site .screen-booking-form .booking-submit-section { grid-column:1/-1; padding-left:0!important; padding-right:0!important; border-left:0!important; }
.public-site .screen-booking-form .booking-section h2 { margin:0 0 20px; padding:0; border:0; color:#14253b; font-size:17px; }
.public-site .screen-booking-form .panel-step { border:1px solid #cfe0ef; background:#f1f7fc; }
.public-site .screen-booking-form label { color:#283b52; font-size:13px; font-weight:750; }
.public-site .screen-booking-form .field-label { display:flex; align-items:center; min-height:18px; color:#263a52; font-size:12px; font-weight:850; letter-spacing:.025em; }
.public-site .screen-booking-form .field-label::after { content:"*"; margin-left:4px; color:#c92b25; font-size:11px; }
.public-site .screen-booking-form .field-hint { display:block; margin:-3px 0 2px; color:#7c8b9c; font-size:10px; font-weight:600; }
.public-site .screen-booking-form input,.public-site .screen-booking-form select { width:100%; min-height:54px; padding:0 15px; border:1px solid #bfcddd; border-radius:8px; background-color:#fff; color:#16283e; font-size:14px; font-weight:600; line-height:1.3; box-shadow:0 1px 2px rgba(15,38,64,.025); transition:border-color .16s,box-shadow .16s,background-color .16s; }
.public-site .screen-booking-form select { padding-right:42px; appearance:none; background-image:linear-gradient(45deg,transparent 50%,#52677d 50%),linear-gradient(135deg,#52677d 50%,transparent 50%); background-position:calc(100% - 19px) 23px,calc(100% - 14px) 23px; background-size:5px 5px,5px 5px; background-repeat:no-repeat; cursor:pointer; }
.public-site .screen-booking-form input[type="date"] { position:relative; padding-right:12px; cursor:pointer; color-scheme:light; }
.public-site .screen-booking-form input::placeholder { color:#91a0af; font-weight:500; opacity:1; }
.public-site .screen-booking-form input:hover,.public-site .screen-booking-form select:hover { border-color:#839db6; background-color:#fcfdff; }
.public-site .screen-booking-form input:focus,.public-site .screen-booking-form select:focus { border-color:#1463aa; outline:0; box-shadow:0 0 0 3px rgba(20,99,170,.12),0 2px 5px rgba(15,38,64,.06); background-color:#fff; }
.public-site .screen-booking-form input:disabled,.public-site .screen-booking-form select:disabled,.public-site .screen-booking-form input[readonly] { border-color:#d7e0e8; background-color:#f2f5f8; color:#637487; cursor:not-allowed; }
.public-site .screen-booking-form input:user-valid,.public-site .screen-booking-form select:user-valid { border-color:#78a996; }
.public-site .screen-booking-form input:user-invalid,.public-site .screen-booking-form select:user-invalid { border-color:#c86660; box-shadow:0 0 0 3px rgba(200,70,60,.08); }
.public-site .booking-section-contact { display:grid; grid-template-columns:1fr 1fr; gap:0 24px; }
.public-site .booking-section-contact h2 { grid-column:1/-1; }
.public-site .booking-section-passengers>label { max-width:310px; }
.public-site [data-passenger-container] { display:grid; gap:16px; margin-top:20px; }
.public-site .passenger-box { display:grid; grid-template-columns:2fr 1fr 1fr 1.6fr; gap:16px; margin:0; padding:22px; border:1px solid #d8e3ed; border-radius:12px; background:#f8fafc; }
.public-site .passenger-box legend { grid-column:1/-1; float:none; width:100%; margin:0 0 2px; padding:0 0 14px; border-bottom:1px solid #dfe7ef; color:#14253b; font-size:15px; font-weight:850; }
.public-site .passenger-box legend span { display:inline-grid; width:28px; height:28px; margin-right:8px; place-items:center; border-radius:50%; background:#1463aa; color:#fff; font-size:11px; }
.public-site .passenger-box label { margin:0; }
.public-site .passenger-box label small { color:#7b8999; font-size:10px; font-weight:600; }
.public-site .booking-submit-section { padding:26px 0 30px!important; border-bottom:0!important; }
.public-site .booking-submit-section h2 { display:none; }
.public-site .booking-submit-section .fare-summary { display:flex; align-items:center; padding:24px; border:1px solid #cfe0ef; border-radius:12px; background:#f2f7fc; }
.public-site .booking-consent { margin:14px 2px 0; color:#64748b; font-size:11px; line-height:1.55; }
.public-site .booking-checkout { grid-column:1/-1; display:grid; grid-template-columns:minmax(180px,1fr) auto minmax(210px,auto); align-items:center; gap:28px; margin:0 -36px; padding:24px 36px 20px; border-top:1px solid #d7e2ed; background:#f6f9fc; }
.public-site .booking-checkout-label>span { display:block; color:#14253b; font-size:14px; font-weight:850; text-transform:uppercase; letter-spacing:.045em; }
.public-site .booking-checkout-label>small { display:block; margin-top:3px; color:#728195; font-size:11px; }
.public-site .booking-checkout-total { min-width:175px; padding-left:26px; border-left:1px solid #d5e0ea; }
.public-site .booking-checkout-total small,.public-site .booking-checkout-total span { display:block; color:#66778a; font-size:10px; font-weight:650; }
.public-site .booking-checkout-total small { text-transform:uppercase; letter-spacing:.06em; }
.public-site .booking-checkout-total strong { display:block; margin:2px 0; color:#0b2a4a; font-size:29px; line-height:1.1; letter-spacing:-.03em; }
.public-site .booking-review-button { min-width:220px; min-height:52px; padding:0 22px; border:0; border-radius:9px; background:#c92b25; color:#fff; font-size:14px; font-weight:850; cursor:pointer; box-shadow:0 8px 18px rgba(201,43,37,.18); }
.public-site .booking-review-button span { margin-left:8px; font-size:18px; }
.public-site .booking-consent { grid-column:1/-1; margin:0; padding-top:14px; border-top:1px solid #e0e7ee; }
.public-site .flow-legal-note { width:min(1100px,calc(100% - 48px)); margin:-8px auto 22px; padding:14px 17px 14px 45px; border:1px solid #d6e1ec; border-radius:10px; background:#fff; color:#536579; font-size:12px; line-height:1.55; position:relative; }
.public-site .flow-legal-note::before { content:"i"; position:absolute; left:16px; top:14px; display:grid; width:20px; height:20px; place-items:center; border-radius:50%; background:#1463aa; color:#fff; font-weight:900; }
.public-site .heli-summary-shell { align-items:start; }
.public-site .heli-summary-main { overflow:hidden; border:1px solid #d7e2ed; border-radius:16px; background:#fff; box-shadow:0 14px 38px rgba(15,38,64,.07); }
.public-site .heli-summary-main .heli-route-card,.public-site .heli-summary-main .heli-passenger-panel { margin:0; border:0; border-bottom:1px solid #e3eaf1; border-radius:0; box-shadow:none; }
.public-site .heli-summary-main .heli-passenger-panel { border-bottom:0; }
.public-site .heli-price-card { border-top:4px solid #1463aa; }
.public-site .payment-shell { grid-template-columns:minmax(0,1fr) 280px; align-items:start; padding:0; overflow:visible; border:1px solid #d7e2ed; background:#fff; }
.public-site .payment-main { padding:32px; }
.public-site .payment-main>.payment-card { margin:0; padding:25px 0; border:0; border-top:1px solid #e3eaf1; border-radius:0; box-shadow:none; }
.public-site .payment-main>.payment-card:first-of-type { margin-top:24px; }
.public-site .payment-main>.confirm-card { border-top:1px solid #e3eaf1; }
.public-site .merchant-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.public-site .copy-tile { padding:15px; background:#f8fafc; }
.public-site .amount-card { top:84px; margin:24px 24px 24px 0; }
.public-site .payment-legal-box { margin-top:18px; padding:16px; border:1px solid #d7e1ea; border-radius:9px; background:#f8fafc; }
.public-site .payment-legal-box strong { display:block; margin-bottom:5px; color:#243850; font-size:12px; }
.public-site .payment-legal-box p,.public-site .payment-legal-box small { display:block; margin:0; color:#64748b; font-size:10px; line-height:1.55; }
.public-site .payment-legal-box small { margin-top:7px; }

@media(max-width:760px){
 .public-site .screen-booking-wrap { width:calc(100% - 24px); padding-top:18px; }
 .public-site .screen-booking-head { padding:24px 20px; border-radius:14px 14px 0 0; }
 .public-site .screen-booking-form { grid-template-columns:1fr; padding:4px 18px 0; border-radius:0 0 14px 14px; }
 .public-site .screen-booking-form .booking-section,.public-site .screen-booking-form .booking-section:nth-of-type(odd),.public-site .screen-booking-form .booking-section:nth-of-type(even) { grid-column:1; padding:23px 0!important; border-left:0; }
 .public-site .booking-section-contact { grid-template-columns:1fr; }
 .public-site .booking-section-contact h2 { grid-column:1; }
 .public-site .booking-section-passengers>label { max-width:none; }
 .public-site .passenger-box { grid-template-columns:1fr 1fr; gap:13px; padding:16px; }
 .public-site .passenger-box legend { grid-column:1/-1; }
 .public-site .passenger-box label:first-of-type,.public-site .passenger-box label:last-of-type { grid-column:1/-1; }
 .public-site .booking-submit-section .fare-summary { display:grid; padding:18px; }
 .public-site .booking-checkout { grid-template-columns:1fr; gap:16px; margin:0 -18px; padding:20px 18px; }
 .public-site .booking-checkout-label { padding-bottom:13px; border-bottom:1px solid #dce5ed; }
 .public-site .booking-checkout-total { min-width:0; padding:0; border-left:0; }
 .public-site .booking-checkout-total strong { font-size:31px; }
 .public-site .booking-review-button { width:100%; min-width:0; }
 .public-site .booking-consent { padding-top:13px; }
 .public-site .flow-legal-note { width:calc(100% - 32px); }
 .public-site .heli-summary-main { border-radius:12px; }
 .public-site .payment-shell { grid-template-columns:1fr; overflow:hidden; }
 .public-site .payment-main { padding:22px 18px; }
 .public-site .merchant-grid { grid-template-columns:1fr; }
 .public-site .amount-card { grid-row:1; margin:16px 16px 0; }
}

@media(max-width:430px){
 .public-site .passenger-box { grid-template-columns:1fr; }
 .public-site .passenger-box legend,.public-site .passenger-box label:first-of-type,.public-site .passenger-box label:last-of-type { grid-column:1; }
}

/* Formal booking review document */
.public-site .heli-summary-page{padding-top:38px;background:#f3f6f9}.public-site .heli-summary-shell{grid-template-columns:minmax(0,1fr) 300px;width:min(1100px,calc(100% - 48px));gap:20px;align-items:start}.public-site .heli-summary-main{border:1px solid #d5e0ea;border-radius:14px;background:#fff;box-shadow:0 12px 34px rgba(15,38,64,.06)}
.public-site .summary-document-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 28px;border-bottom:1px solid #e2e9f0}.public-site .summary-document-head>div:first-child>span,.public-site .price-eyebrow{display:block;margin-bottom:4px;color:#1463aa;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.public-site .summary-document-head h2{margin:0;color:#14253b;font-size:21px;line-height:1.3}.public-site .summary-document-head>div:last-child{flex:0 0 auto;padding-left:22px;border-left:1px solid #dde5ed;text-align:right}.public-site .summary-document-head small{display:block;color:#7b8998;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.public-site .summary-document-head>div:last-child strong{display:block;margin-top:3px;color:#14253b;font-size:15px}
.public-site .summary-section-label{display:flex;align-items:center;gap:11px;padding:21px 28px 10px}.public-site .summary-section-label>span{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border:1px solid #cbddeb;border-radius:8px;background:#eef5fb;color:#1463aa;font-size:10px;font-weight:900}.public-site .summary-section-label strong{display:block;color:#1c3047;font-size:14px}.public-site .summary-section-label small{display:block;margin-top:1px;color:#778798;font-size:10px}
.public-site .heli-summary-main .heli-route-card{display:grid;grid-template-columns:82px minmax(0,1fr);margin:0 28px 14px;padding:0;overflow:hidden;border:1px solid #dce5ed!important;border-radius:10px!important;background:#fff;box-shadow:none!important}.public-site .heli-summary-main .heli-route-card+.heli-route-card{margin-top:0}.public-site .heli-route-label{display:grid;place-items:center;padding:16px 8px;background:#f1f6fa;color:#315675;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;writing-mode:initial;transform:none}.public-site .heli-route-segment{display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);align-items:center;min-height:122px;padding:18px 22px}.public-site .heli-route-segment>div:not(.heli-route-divider){display:grid;gap:2px}.public-site .heli-route-segment>div:last-child{text-align:right;justify-items:end}.public-site .heli-route-segment strong{color:#14253b;font-size:17px}.public-site .heli-route-segment span,.public-site .heli-route-segment b{color:#344b64;font-size:12px}.public-site .heli-route-segment small,.public-site .heli-route-segment em{color:#7a8999;font-size:10px;font-style:normal}.public-site .heli-route-divider{display:grid;place-items:center;width:30px;height:30px;margin:auto;border:1px solid #cfdbe6;border-radius:50%;color:#6a7d90;font-size:9px;text-transform:uppercase}
.public-site .heli-summary-main .heli-passenger-panel{margin:0;padding:5px 28px 28px;border:0;border-radius:0;box-shadow:none}.public-site .heli-panel-head{align-items:center;margin:0;padding:0}.public-site .heli-panel-head .summary-section-label{padding-left:0}.public-site .heli-panel-head>a{padding:8px 12px;border:1px solid #cddae5;border-radius:7px;color:#1463aa;font-size:11px;font-weight:800}.public-site .heli-pilgrim-row{margin:5px 0 12px;padding:11px 14px;border:1px solid #dde6ee;border-radius:8px;background:#f8fafc}.public-site .heli-pilgrim-row span,.public-site .heli-pilgrim-row strong{color:#445a70;font-size:11px}.public-site .heli-passenger-table{border:1px solid #d9e3ec;border-radius:9px}.public-site .heli-passenger-table-head{background:#eef3f7;color:#465b70}.public-site .heli-passenger-table-head span{font-size:9px;letter-spacing:.04em;text-transform:uppercase}.public-site .heli-passenger-table .heli-passenger-row{background:#fff}.public-site .heli-passenger-table .heli-passenger-row>*{color:#334a61;font-size:11px}
.public-site .summary-contact-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.public-site .summary-contact-row>div{padding:12px 14px;border:1px solid #dde6ee;border-radius:8px;background:#fafbfd}.public-site .summary-contact-row small{display:block;color:#7b8997;font-size:9px;text-transform:uppercase;letter-spacing:.05em}.public-site .summary-contact-row strong{display:block;margin-top:3px;color:#253b52;font-size:11px;overflow-wrap:anywhere}.public-site .heli-id-note{margin:14px 0;padding:12px 14px 12px 38px;border:1px solid #e1d7b8;border-radius:8px;background:#fffaf0;color:#6b5b34;font-size:10px;position:relative}.public-site .heli-id-note::before{content:"!";position:absolute;left:14px;top:11px;display:grid;width:17px;height:17px;place-items:center;border-radius:50%;background:#ad7b15;color:#fff;font-size:10px;font-weight:900}.public-site .heli-book-button{display:flex;width:100%;min-height:52px;align-items:center;justify-content:center;border-radius:8px;background:#c92b25;color:#fff!important;font-size:13px;font-weight:850;box-shadow:0 8px 18px rgba(201,43,37,.16)}
.public-site .heli-price-card{position:sticky;top:72px;margin:0;padding:24px;border:1px solid #d5e0ea;border-top:4px solid #1463aa;border-radius:12px;background:#fff;box-shadow:0 12px 32px rgba(15,38,64,.06)}.public-site .heli-price-card h2{margin:0 0 19px;padding-bottom:15px;border-bottom:1px solid #e1e8ef;color:#1b3047;font-size:17px}.public-site .heli-price-card .heli-price-group{display:none}.public-site .heli-price-line{padding:10px 0;border:0}.public-site .heli-price-line span,.public-site .heli-price-line strong{color:#52677c;font-size:11px}.public-site .heli-price-total{margin-top:11px;padding:17px 0 5px;border-top:1px solid #cfdbe6;background:transparent}.public-site .heli-price-total span{color:#354b62;font-size:11px;font-weight:800}.public-site .heli-price-total strong{color:#0b2a4a;font-size:23px}.public-site .price-note{display:block;margin-top:12px;color:#778697;font-size:9px;line-height:1.5}
@media(max-width:760px){.public-site .heli-summary-shell{grid-template-columns:1fr;width:calc(100% - 24px);gap:14px}.public-site .summary-document-head{align-items:flex-start;padding:20px 17px}.public-site .summary-document-head h2{font-size:18px}.public-site .summary-document-head>div:last-child{padding-left:12px}.public-site .summary-section-label{padding:18px 17px 9px}.public-site .heli-summary-main .heli-route-card{grid-template-columns:1fr;margin:0 17px 12px}.public-site .heli-route-label{display:block;padding:8px 12px;text-align:left}.public-site .heli-route-segment{grid-template-columns:1fr 34px 1fr;min-height:105px;padding:15px 13px}.public-site .heli-route-segment>div:last-child{text-align:right;justify-items:end}.public-site .heli-route-segment strong{font-size:14px}.public-site .heli-summary-main .heli-passenger-panel{padding:4px 17px 20px}.public-site .summary-contact-row{grid-template-columns:1fr}.public-site .heli-price-card{position:static;padding:20px}}

/* Preserve the original onward and return route presentation */
.public-site .heli-summary-main .heli-route-card{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);min-height:132px;margin:0 28px 14px;padding:0;overflow:hidden;border:1px solid #e2e8f0!important;border-radius:8px!important;background:#fff;box-shadow:none!important}.public-site .heli-summary-main .heli-route-card+.heli-route-card{margin-top:2px}.public-site .heli-route-label{display:grid;place-items:center;padding:0;border-left:1px solid #e2e8f0;background:#f8fafc;color:#475569;font-size:13px;font-weight:700;letter-spacing:0;text-transform:none;writing-mode:vertical-rl;transform:rotate(180deg)}.public-site .heli-route-segment{display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);align-items:center;gap:12px;min-height:0;padding:18px 22px}.public-site .heli-route-segment>div:not(.heli-route-divider){display:grid;gap:6px}.public-site .heli-route-segment>div:last-child{text-align:right;justify-items:stretch}.public-site .heli-route-segment strong{color:#0f172a;font-size:20px}.public-site .heli-route-segment span,.public-site .heli-route-segment b{color:#334155;font-size:14px}.public-site .heli-route-segment b{font-weight:800}.public-site .heli-route-segment small,.public-site .heli-route-segment em{color:#64748b;font-size:12px;font-style:normal}.public-site .heli-route-divider{display:grid;width:auto;height:auto;place-items:center;margin:0;border:0;border-radius:0;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase}
@media(max-width:640px){.public-site .heli-summary-main .heli-route-card{grid-template-columns:42px minmax(0,1fr);margin:0 17px 12px}.public-site .heli-route-label{display:grid;padding:0;text-align:center;writing-mode:vertical-rl;transform:rotate(180deg)}.public-site .heli-route-segment{grid-template-columns:1fr;gap:10px;min-height:0;padding:14px}.public-site .heli-route-segment>div:last-child{text-align:left;justify-items:start}.public-site .heli-route-divider{justify-content:start}.public-site .heli-route-segment strong{font-size:clamp(17px,5.2vw,20px);line-height:1.25}}

/* Summary headings without numbering and booking-style fare bar */
.public-site .summary-section-label{padding-left:28px;gap:0}.public-site .heli-panel-head .summary-section-label{padding-left:0}.public-site .heli-summary-shell{grid-template-columns:minmax(0,1fr)}.public-site .heli-price-card{position:static;display:grid;grid-template-columns:minmax(160px,1fr) repeat(3,minmax(105px,auto)) minmax(175px,auto);grid-template-rows:auto auto;align-items:center;gap:4px 24px;margin:0;padding:22px 28px 17px;border:1px solid #d5e0ea;border-top:1px solid #d5e0ea;border-radius:12px;background:#f6f9fc;box-shadow:0 10px 28px rgba(15,38,64,.05)}.public-site .heli-price-card .price-eyebrow{grid-column:1;grid-row:1;margin:0;color:#14253b;font-size:12px}.public-site .heli-price-card h2{grid-column:1;grid-row:2;margin:2px 0 0;padding:0;border:0;color:#728195;font-size:10px;font-weight:650}.public-site .heli-price-card .heli-price-group{display:none}.public-site .heli-price-card .heli-price-line{display:grid;grid-row:1/3;align-content:center;gap:3px;min-width:105px;padding:0 0 0 22px;border-left:1px solid #d5e0ea}.public-site .heli-price-card .heli-price-line span{color:#6c7c8d;font-size:9px;text-transform:uppercase;letter-spacing:.04em}.public-site .heli-price-card .heli-price-line strong{color:#344b62;font-size:13px}.public-site .heli-price-card .heli-price-total{display:grid;grid-row:1/3;align-content:center;gap:2px;min-width:175px;margin:0;padding:0 0 0 24px;border-top:0;border-left:1px solid #d5e0ea}.public-site .heli-price-card .heli-price-total span{font-size:9px;text-transform:uppercase;letter-spacing:.05em}.public-site .heli-price-card .heli-price-total strong{font-size:27px}.public-site .heli-price-card .price-note{grid-column:1/-1;margin:12px 0 0;padding-top:11px;border-top:1px solid #e0e7ee}
@media(max-width:760px){.public-site .summary-section-label{padding-left:17px}.public-site .heli-panel-head .summary-section-label{padding-left:0}.public-site .heli-price-card{grid-template-columns:1fr 1fr;grid-template-rows:auto;gap:14px 18px;padding:19px 17px}.public-site .heli-price-card .price-eyebrow{grid-column:1;grid-row:1}.public-site .heli-price-card h2{grid-column:2;grid-row:1;text-align:right}.public-site .heli-price-card .heli-price-line{grid-row:auto;min-width:0;padding:10px 0;border-left:0;border-top:1px solid #dce5ed}.public-site .heli-price-card .heli-price-line:nth-of-type(3){grid-column:1/-1}.public-site .heli-price-card .heli-price-total{grid-column:1/-1;grid-row:auto;min-width:0;padding:15px 0 0;border-left:0;border-top:1px solid #ccd9e4}.public-site .heli-price-card .price-note{grid-column:1/-1;margin:0}}

/* Clean receipt-style summary fare */
.public-site .legacy-price-card{display:none!important}.public-site .review-fare{overflow:hidden;border:1px solid #d5e0ea;border-radius:12px;background:#fff;box-shadow:0 10px 28px rgba(15,38,64,.05)}.public-site .review-fare header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;border-bottom:1px solid #e2e9f0;background:#f8fafc}.public-site .review-fare header div>span{display:block;color:#1463aa;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.public-site .review-fare header div>strong{display:block;margin-top:3px;color:#1a3047;font-size:15px}.public-site .review-fare header>small{color:#768698;font-size:10px}.public-site .review-fare-rows{display:grid;grid-template-columns:repeat(3,1fr);padding:18px 22px}.public-site .review-fare-rows>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 22px;border-right:1px solid #e1e8ef}.public-site .review-fare-rows>div:first-child{padding-left:0}.public-site .review-fare-rows>div:last-child{padding-right:0;border-right:0}.public-site .review-fare-rows span{color:#627487;font-size:11px}.public-site .review-fare-rows strong{color:#263d54;font-size:13px}.public-site .review-fare footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 22px;border-top:1px solid #d8e2eb;background:#eef5fb}.public-site .review-fare footer div>span{display:block;color:#263d54;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.public-site .review-fare footer div>small{display:block;margin-top:2px;color:#748497;font-size:9px}.public-site .review-fare footer>strong{color:#0b2a4a;font-size:27px;letter-spacing:-.025em}
@media(max-width:640px){.public-site .review-fare header{align-items:flex-start;padding:16px}.public-site .review-fare header>small{max-width:145px;text-align:right}.public-site .review-fare-rows{display:block;padding:8px 16px}.public-site .review-fare-rows>div,.public-site .review-fare-rows>div:first-child,.public-site .review-fare-rows>div:last-child{padding:11px 0;border-right:0;border-bottom:1px solid #e7edf2}.public-site .review-fare-rows>div:last-child{border-bottom:0}.public-site .review-fare footer{padding:16px}.public-site .review-fare footer>strong{font-size:25px}}

/* Formal payment checkout */
.public-site .payment-wrap{width:min(1100px,calc(100% - 48px));margin:0 auto;padding-top:38px}.public-site .payment-wrap>.booking-flow{width:100%}.public-site .payment-shell{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:0;overflow:visible;padding:0;border:1px solid #d5e0ea;border-radius:14px;background:#fff;box-shadow:0 14px 38px rgba(15,38,64,.07)}.public-site .payment-main{min-width:0;padding:0}.public-site .payment-document-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 30px;border-bottom:1px solid #e1e8ef;background:linear-gradient(135deg,#0b2a4a,#155f9e);border-radius:13px 0 0 0;color:#fff}.public-site .payment-document-head>div:first-child>span{display:block;margin-bottom:5px;color:#a9d4f8;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.public-site .payment-document-head h1{margin:0 0 4px;color:#fff;font-size:26px;letter-spacing:-.025em}.public-site .payment-document-head p{margin:0;color:#d4e5f3;font-size:12px}.public-site .payment-document-head>div:last-child{flex:0 0 auto;padding-left:22px;border-left:1px solid rgba(255,255,255,.25);text-align:right}.public-site .payment-document-head small{display:block;color:#b9d8f0;font-size:9px;text-transform:uppercase;letter-spacing:.06em}.public-site .payment-document-head>div:last-child strong{display:block;margin-top:3px;color:#fff;font-size:14px}
.public-site .payment-section{margin:0;padding:27px 30px;border:0;border-bottom:1px solid #e2e9f0;border-radius:0;background:#fff;box-shadow:none}.public-site .payment-section:last-child{border-bottom:0}.public-site .payment-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.public-site .payment-section-head>div>span{display:block;color:#1463aa;font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.public-site .payment-section-head h2{margin:3px 0 0;color:#192f46;font-size:18px}.public-site .payment-section-head>small{max-width:265px;color:#748497;font-size:10px;line-height:1.45;text-align:right}.public-site .merchant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.public-site .copy-tile{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 12px;min-height:68px;padding:13px 14px;border:1px solid #dbe4ec;border-radius:8px;background:#f8fafc}.public-site .copy-tile>span{grid-column:1;color:#718195;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.public-site .copy-tile>strong{grid-column:1;color:#253c53;font-size:12px;overflow-wrap:anywhere}.public-site .copy-tile>button{grid-column:2;grid-row:1/3;min-height:32px;padding:0 10px;border:1px solid #cbd9e5;border-radius:6px;background:#fff;color:#1463aa;font-size:9px;font-weight:800}.public-site .verification-intro{margin:-5px 0 18px;color:#647589;font-size:11px}.public-site .verification-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.public-site .verification-fields label{display:grid;gap:6px;color:#263c54;font-size:12px;font-weight:800}.public-site .verification-fields label>small{color:#7a8999;font-size:9px;font-weight:600}.public-site .verification-fields input{width:100%;min-height:52px;border:1px solid #c2d0de;border-radius:8px;background:#fff;font-size:13px}.public-site .verification-fields input:focus{border-color:#1463aa;outline:0;box-shadow:0 0 0 3px rgba(20,99,170,.11)}.public-site .verification-section>button[type=submit]{width:100%;min-height:52px;margin-top:18px;border-radius:8px}.public-site .payment-legal-box{margin-top:16px;padding:14px 16px;border:1px solid #e1d8bc;border-radius:8px;background:#fffaf0}
.public-site .payment-order-summary{position:sticky;top:72px;align-self:start;margin:22px;padding:23px;border:1px solid #d5e0ea;border-top:4px solid #1463aa;border-radius:11px;background:#f8fafc}.public-site .payment-order-summary>span{display:block;color:#1463aa;font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.public-site .payment-order-summary>strong{display:block;margin:6px 0 1px;color:#0b2a4a;font-size:29px;letter-spacing:-.03em}.public-site .payment-order-summary>p{margin:0 0 19px;color:#6d7e90;font-size:10px}.public-site .payment-order-summary dl{margin:0;padding:14px 0;border-top:1px solid #dbe4ec;border-bottom:1px solid #dbe4ec}.public-site .payment-order-summary dl>div{display:flex;justify-content:space-between;gap:12px;padding:6px 0}.public-site .payment-order-summary dt{color:#728295;font-size:9px}.public-site .payment-order-summary dd{margin:0;color:#30475e;font-size:9px;font-weight:800;text-align:right}.public-site .payment-security-note{display:flex;gap:9px;margin-top:16px;color:#4f665d}.public-site .payment-security-note svg{flex:0 0 20px;width:20px;height:20px}.public-site .payment-security-note span{color:#687a70;font-size:9px;line-height:1.4}.public-site .payment-security-note b{display:block;color:#355848;font-size:10px}.public-site .payment-main>.pay-apps,.public-site .payment-main>.secure-pill,.public-site .payment-main>h1,.public-site .payment-main>h1+p{display:none}
@media(max-width:760px){.public-site .payment-wrap{width:calc(100% - 24px);padding-top:18px}.public-site .payment-shell{grid-template-columns:1fr;border-radius:12px}.public-site .payment-document-head{align-items:flex-start;padding:22px 18px;border-radius:11px 11px 0 0}.public-site .payment-document-head h1{font-size:22px}.public-site .payment-document-head>div:last-child{padding-left:12px}.public-site .payment-order-summary{position:static;grid-row:2;margin:16px 16px 0}.public-site .payment-section{padding:23px 18px}.public-site .payment-section-head{display:block}.public-site .payment-section-head>small{display:block;max-width:none;margin-top:7px;text-align:left}.public-site .merchant-grid,.public-site .verification-fields{grid-template-columns:1fr}.public-site .copy-tile{min-height:64px}}

/* Flat, readable payment form */
.public-site .payment-shell{display:block;overflow:hidden;border:0;border-radius:14px;background:#fff;box-shadow:0 14px 38px rgba(15,38,64,.08)}.public-site .payment-main{width:100%}.public-site .payment-document-head{border-radius:14px 14px 0 0}.public-site .payment-head-meta{display:flex!important;align-items:center;gap:24px!important;padding-left:26px!important}.public-site .payment-head-meta>div+div{padding-left:24px;border-left:1px solid rgba(255,255,255,.25)}.public-site .payment-head-meta small{font-size:11px!important}.public-site .payment-head-meta strong{font-size:16px!important}.public-site .payment-head-meta>div:last-child strong{font-size:22px!important}.public-site .payment-section{padding:32px 34px;border-bottom:1px solid #dbe4ec;background:#fff}.public-site .payment-section-head{margin-bottom:24px}.public-site .payment-section-head>div>span{font-size:11px}.public-site .payment-section-head h2{font-size:21px}.public-site .payment-section-head>small{max-width:340px;font-size:13px;line-height:1.55}.public-site .merchant-grid{display:block;border-top:1px solid #d9e3eb}.public-site .copy-tile{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:20px;min-height:58px;padding:13px 0;border:0;border-bottom:1px solid #e1e8ef;border-radius:0;background:#fff}.public-site .copy-tile>span{grid-column:1;align-self:center;color:#53677b;font-size:12px;font-weight:750;text-transform:none;letter-spacing:0}.public-site .copy-tile>strong{grid-column:2;align-self:center;color:#172e45;font-size:14px}.public-site .copy-tile>button{grid-column:3;grid-row:1;align-self:center;min-height:36px;padding:0 13px;font-size:11px}.public-site .verification-intro{margin:-5px 0 22px;font-size:14px;line-height:1.65}.public-site .verification-fields{gap:22px}.public-site .verification-fields label{font-size:14px}.public-site .verification-fields label>small{font-size:11px}.public-site .verification-fields input{min-height:55px;font-size:14px}.public-site .verification-section>button[type=submit]{min-height:55px;font-size:14px}.public-site .payment-legal-box{padding:17px 18px}.public-site .payment-legal-box strong{font-size:13px}.public-site .payment-legal-box p,.public-site .payment-legal-box small{font-size:12px;line-height:1.65}.public-site .payment-order-summary{display:none!important}
@media(max-width:760px){.public-site .payment-shell{border-radius:12px}.public-site .payment-document-head{display:block;padding:24px 19px;border-radius:12px 12px 0 0}.public-site .payment-head-meta{display:grid!important;grid-template-columns:1fr 1fr;gap:12px!important;margin-top:20px;padding:15px 0 0!important;border-top:1px solid rgba(255,255,255,.2)!important;text-align:left!important}.public-site .payment-head-meta>div+div{padding-left:12px;border-left:1px solid rgba(255,255,255,.2)}.public-site .payment-section{padding:26px 19px}.public-site .payment-section-head>div>span{font-size:10px}.public-site .payment-section-head h2{font-size:19px}.public-site .payment-section-head>small{font-size:12px}.public-site .copy-tile{grid-template-columns:1fr auto;gap:4px 12px;padding:14px 0}.public-site .copy-tile>span{grid-column:1;font-size:11px}.public-site .copy-tile>strong{grid-column:1;font-size:13px}.public-site .copy-tile>button{grid-column:2;grid-row:1/3}.public-site .verification-fields{grid-template-columns:1fr}.public-site .verification-intro{font-size:13px}.public-site .payment-legal-box p,.public-site .payment-legal-box small{font-size:11px}}

/* Bootstrap-compatible container gutters across the three booking steps */
.public-site .screen-booking-wrap,
.public-site .heli-summary-page > .booking-flow,
.public-site .heli-summary-shell,
.public-site .payment-wrap {
    width: calc(100% - 24px);
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
}
.public-site .heli-summary-page { padding-left: 0; padding-right: 0; }

@media (max-width: 1399.98px) {
    .public-site .screen-booking-wrap,
    .public-site .heli-summary-page > .booking-flow,
    .public-site .heli-summary-shell,
    .public-site .payment-wrap { max-width: 1140px; }
}
@media (max-width: 1199.98px) {
    .public-site .screen-booking-wrap,
    .public-site .heli-summary-page > .booking-flow,
    .public-site .heli-summary-shell,
    .public-site .payment-wrap { max-width: 960px; }
}
@media (max-width: 991.98px) {
    .public-site .screen-booking-wrap,
    .public-site .heli-summary-page > .booking-flow,
    .public-site .heli-summary-shell,
    .public-site .payment-wrap { max-width: 720px; }
}
@media (max-width: 767.98px) {
    .public-site .screen-booking-wrap,
    .public-site .heli-summary-page > .booking-flow,
    .public-site .heli-summary-shell,
    .public-site .payment-wrap { max-width: 540px; }
}
@media (max-width: 575.98px) {
    .public-site .screen-booking-wrap,
    .public-site .heli-summary-page > .booking-flow,
    .public-site .heli-summary-shell,
    .public-site .payment-wrap { width: calc(100% - 24px); max-width: none; }
}

/* Temporarily hide only the UTR field; keep screenshot upload visible. */
.public-site .verification-fields .payment-field:first-child { display: none; }
.public-site .verification-fields { grid-template-columns: 1fr; }

/* Refined payment heading and verification controls */
.public-site .payment-document-head { position:relative;align-items:stretch;padding:0;overflow:hidden;border:1px solid #d8e3ed;border-top:5px solid #1463aa;border-radius:14px 14px 0 0;background:#fff;color:#172e45; }
.public-site .payment-document-head>div:first-child { padding:28px 32px; }
.public-site .payment-document-head>div:first-child>span { margin-bottom:7px;color:#1463aa;font-size:11px; }
.public-site .payment-document-head h1 { margin-bottom:7px;color:#102a43;font-size:clamp(25px,2.2vw,32px); }
.public-site .payment-document-head p { color:#64778b;font-size:14px; }
.public-site .payment-head-meta { display:grid!important;grid-template-columns:minmax(130px,.85fr) minmax(190px,1.15fr);min-width:400px;gap:0!important;padding:0!important;border:0!important;border-left:1px solid #d8e3ed!important;background:#f4f8fc;text-align:left!important; }
.public-site .payment-head-meta>div { display:flex;flex-direction:column;justify-content:center;padding:24px 26px; }
.public-site .payment-head-meta>div+div { padding-left:26px;border-left:1px solid #d8e3ed;background:#eaf3fb; }
.public-site .payment-head-meta small { color:#587086!important;font-size:11px!important;font-weight:800; }
.public-site .payment-head-meta strong { margin-top:7px!important;color:#142f49!important;font-size:17px!important; }
.public-site .payment-head-meta>div:last-child strong { color:#0b5da5!important;font-size:28px!important; }

/* Screenshot-matched booking ID and payable amount panels */
.public-site .payment-document-head { display:block; }
.public-site .payment-head-meta { width:100%;grid-template-columns:1fr 1.2fr;min-width:0;border:1px solid #cbd9e5!important;background:#f3f6fb; }
.public-site .payment-head-meta>div { min-height:190px;padding:38px 36px;align-items:flex-start; }
.public-site .payment-head-meta>div+div { padding-left:36px;border-left:1px solid #c4d3df;background:#e9f1fb; }
.public-site .payment-head-meta small { color:#50677c!important;font-size:16px!important;font-weight:850;letter-spacing:.08em;line-height:1.2; }
.public-site .payment-head-meta strong { margin-top:25px!important;color:#102a43!important;font-size:30px!important;font-weight:850;letter-spacing:.01em;line-height:1; }
.public-site .payment-head-meta>div:last-child strong { color:#075da7!important;font-size:42px!important;letter-spacing:-.025em; }
.public-site .verification-section { padding-top:34px; }
.public-site .verification-fields { align-items:start;gap:24px; }
.public-site .verification-fields .payment-field { display:grid;grid-template-rows:auto auto 58px;gap:5px;margin:0;color:#18334e;font-size:15px;font-weight:800; }
.public-site .verification-fields .payment-field>small { min-height:20px;color:#6d7f91;font-size:12px;font-weight:500; }
.public-site .verification-fields .payment-field input { min-height:58px;padding:0 17px;border:1px solid #b9cad9;border-radius:9px;background:#fff;color:#172e45;font-size:15px;box-shadow:0 1px 2px rgba(15,38,64,.04);transition:border-color .18s ease,box-shadow .18s ease; }
.public-site .verification-fields .payment-field input:hover { border-color:#829bb1; }
.public-site .verification-fields .payment-field input:focus { border-color:#1463aa;background:#fff;outline:0;box-shadow:0 0 0 4px rgba(20,99,170,.12); }
.public-site .verification-fields input[type=file] { padding:6px;color:#607488;cursor:pointer; }
.public-site .verification-fields input[type=file]::file-selector-button { height:44px;margin-right:14px;padding:0 17px;border:0;border-radius:7px;background:#e9f2fa;color:#0f5c9f;font:inherit;font-size:13px;font-weight:800;cursor:pointer; }
.public-site .verification-fields .payment-file-field { grid-template-rows:auto auto 58px auto; }
.public-site .payment-upload-error { display:none;min-height:0!important;margin-top:3px;color:#c62828!important;font-size:12px!important;font-weight:700!important;line-height:1.45; }
.public-site .payment-upload-error.is-visible { display:block; }
.public-site .payment-checkout-intro { display:block;max-width:920px; }
.public-site .payment-checkout-intro h2 { margin:0 0 18px;font-size:23px; }
.public-site .payment-checkout-intro p { margin:0 0 12px;color:#53677b;font-size:14px;font-weight:400;line-height:1.7; }
.public-site .payment-checkout-intro p strong { color:#18334e;font-weight:800; }
.public-site .payment-checkout-intro p:last-child { margin-bottom:0; }
.public-site .payment-confirm-amount { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding:16px 18px;border:1px solid #c9dbea;border-radius:9px;background:#eef6fc; }
.public-site .payment-confirm-amount span { color:#425b72;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em; }
.public-site .payment-confirm-amount strong { color:#0b5da5;font-size:25px;line-height:1;letter-spacing:-.02em; }
.public-site .payment-confirm-amount+.btn { margin-top:12px!important; }
.public-site .to-top { display:none!important; }
.public-site .payment-open-checkout { display:block;width:calc(100% - 64px);min-height:56px;margin:28px 32px;border:0;border-radius:8px;background:#1463aa;color:#fff;font-size:15px;font-weight:850;text-transform:uppercase;letter-spacing:.03em;cursor:pointer; }
.public-site .payment-entry-modal { position:fixed;z-index:1000;inset:0;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(12,29,47,.68);overflow-y:auto; }
.public-site .payment-entry-modal.is-open { display:flex; }
.public-site .payment-entry-dialog { position:relative;width:min(620px,100%);max-height:calc(100vh - 48px);overflow-y:auto;border-radius:12px;background:#fff;box-shadow:0 24px 70px rgba(3,18,32,.3); }
.public-site .payment-entry-close { position:absolute;z-index:2;top:10px;right:12px;width:38px;height:38px;border:0;border-radius:50%;background:#f2f5f8;color:#344b61;font-size:27px;line-height:1;cursor:pointer; }
.public-site .payment-account-title { display:flex;align-items:center;gap:18px;margin:0;padding:25px 58px 12px;color:#f0209a;font-size:32px;text-align:center;white-space:nowrap; }
.public-site .payment-account-title::before,.public-site .payment-account-title::after { content:"";height:1px;flex:1;background:#d9dfe5; }
.public-site .payment-entry-dialog .bank-transfer-section { padding:0 32px; }
.public-site .payment-entry-dialog .verification-section { padding:24px 32px 32px;border:0; }
.public-site .payment-entry-dialog .copy-tile { grid-template-columns:minmax(0,1fr) auto;padding:17px 0; }
.public-site .payment-entry-dialog .copy-tile>span { grid-column:1; }
.public-site .payment-entry-dialog .copy-tile>strong { grid-column:1;font-size:17px; }
.public-site .payment-entry-dialog .copy-tile>button { grid-column:2;grid-row:1/3;min-height:48px;padding:0 18px;font-size:14px; }
@media(max-width:575.98px){.public-site .payment-open-checkout{width:calc(100% - 32px);margin:20px 16px}.public-site .payment-entry-modal{align-items:flex-end;padding:0}.public-site .payment-entry-dialog{width:100%;max-height:94vh;border-radius:16px 16px 0 0}.public-site .payment-account-title{padding:24px 50px 10px;font-size:27px}.public-site .payment-entry-dialog .bank-transfer-section{padding:0 20px}.public-site .payment-entry-dialog .verification-section{padding:22px 20px 28px}.public-site .payment-entry-dialog .copy-tile>strong{font-size:15px}.public-site .payment-entry-dialog .copy-tile>button{min-height:44px;padding:0 13px;font-size:12px}}

/* Keep the original verification UI; refine only Passenger Details. */
.public-site .verify-passenger-card { overflow:hidden; }
.public-site .verify-passenger-card h2 { margin:0;padding:18px 20px;border-bottom:1px solid #dce5ed;color:#172e45;font-size:19px; }
.public-site .verify-passenger-card table { width:100%;border-collapse:collapse; }
.public-site .verify-passenger-card th { padding:11px 12px;background:#eef3f7;color:#52677b;font-size:11px;text-align:left;white-space:nowrap; }
.public-site .verify-passenger-card td { padding:13px 12px;border-bottom:1px solid #e1e8ef;color:#263d54;font-size:12px; }
.public-site .verify-passenger-card td:last-child { color:#111827;font-weight:800; }
@media(max-width:640px){.public-site .verify-passenger-card{overflow-x:auto}.public-site .verify-passenger-card h2{position:sticky;left:0;padding:16px;font-size:17px}.public-site .verify-passenger-card table{min-width:520px}}
@media(max-width:575.98px){.public-site .payment-confirm-amount{padding:15px}.public-site .payment-confirm-amount strong{font-size:23px}}

/* Keep longer package duration values contained within homepage stat cells. */
.public-site .screen-package-icons strong {
    width: 100%;
    max-width: 100%;
    text-align: center;
    white-space: normal;
    overflow-wrap: break-word;
    text-wrap: balance;
}

/* IRCTC-style compact booking review */
.public-site .heli-summary-page > .booking-flow { display:none; }
.public-site .heli-summary-page { padding-top:24px;background:#fff; }
.public-site .summary-reference-layout {
    display:grid;
    grid-template-columns:minmax(0,1fr) 310px;
    gap:24px;
    align-items:start;
}
.public-site .summary-reference-layout .heli-summary-main {
    display:block;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
.public-site .summary-reference-layout .journey-section-heading { display:none; }
.public-site .summary-reference-layout .heli-route-card {
    min-height:104px;
    margin:0!important;
    border:0!important;
    border-bottom:1px solid #cfd2e1!important;
    border-radius:0!important;
    background:#e5e5f1;
}
.public-site .summary-reference-layout .heli-route-onward { border-radius:6px 6px 0 0!important; }
.public-site .summary-reference-layout .heli-route-return { border-radius:0 0 6px 6px!important; }
.public-site .summary-reference-layout .heli-route-card + .heli-route-card { margin-top:0!important; }
.public-site .summary-reference-layout .heli-route-label {
    border:0;
    background:#dadbe8;
    color:#394356;
    font-size:11px;
}
.public-site .summary-reference-layout .heli-route-segment { min-height:104px;padding:13px 20px; }
.public-site .summary-reference-layout .heli-route-segment strong { font-size:15px; }
.public-site .summary-reference-layout .heli-route-segment span,
.public-site .summary-reference-layout .heli-route-segment b { font-size:11px; }
.public-site .summary-reference-layout .heli-route-segment small,
.public-site .summary-reference-layout .heli-route-segment em { font-size:9px; }
.public-site .summary-reference-layout .heli-passenger-panel { margin-top:20px;padding:0; }
.public-site .summary-reference-layout .heli-panel-head { border-bottom:1px solid #dce3ea; }
.public-site .summary-reference-layout .summary-section-label { padding:0 0 11px; }
.public-site .summary-reference-layout .summary-section-label strong { color:#202631;font-size:18px; }
.public-site .summary-reference-layout .summary-section-label small { color:#697586;font-size:10px; }
.public-site .summary-reference-layout .heli-panel-head>a {
    border:0;color:#386898;font-size:10px;text-transform:uppercase;
}
.public-site .summary-reference-layout .heli-pilgrim-row {
    margin:0;padding:14px 8px 9px;border:0;border-radius:0;background:transparent;
}
.public-site .summary-reference-layout .heli-passenger-table { border:0;border-radius:0; }
.public-site .summary-reference-layout .heli-passenger-table-head { display:none; }
.public-site .summary-reference-layout .heli-passenger-row {
    grid-template-columns:minmax(100px,1.5fr) .8fr .45fr 1fr;
    min-height:44px;
    padding:0 9px;
    border-top:1px solid #e0e6ec;
}
.public-site .summary-reference-layout .heli-passenger-row>* { font-size:11px; }
.public-site .summary-reference-layout .passenger-selected-dot{display:block;width:9px;height:9px;border-radius:2px;background:#1767a9}.public-site .summary-reference-layout .heli-passenger-mobile,.public-site .summary-reference-layout .heli-passenger-action{color:#526273;text-align:center}
.public-site .summary-reference-layout .heli-id-note {
    margin:7px 0 9px;padding:8px 12px 8px 35px;border:0;border-radius:2px;background:#e5e5ef;color:#566171;font-size:10px;
}
.public-site .summary-reference-layout .heli-id-note::before { top:7px;left:11px;background:#657386; }
.public-site .summary-reference-layout .heli-book-button {
    min-height:39px;border-radius:3px;background:#0868be;color:#fff!important;font-size:11px;box-shadow:none;
}
.public-site .summary-reference-layout .review-fare {
    border:0;border-radius:0;background:#fff;box-shadow:none;
}
.public-site .summary-reference-layout .review-fare header {
    padding:4px 0 12px;border-bottom:1px solid #dce3ea;background:#fff;
}
.public-site .summary-reference-layout .review-fare header div>span { display:inline;color:#315c83;font-size:14px;text-transform:none;letter-spacing:0; }
.public-site .summary-reference-layout .review-fare header div>strong { display:inline;margin:0 0 0 4px;color:#315c83;font-size:14px;font-weight:500; }
.public-site .summary-reference-layout .review-fare header>small { display:none; }
.public-site .summary-reference-layout .review-fare-rows { display:block;padding:10px 0; }
.public-site .summary-reference-layout .review-fare-rows>div,
.public-site .summary-reference-layout .review-fare-rows>div:first-child,
.public-site .summary-reference-layout .review-fare-rows>div:last-child {
    padding:8px 6px;border:0;
}
.public-site .summary-reference-layout .review-fare-rows .fare-group{padding:9px 0;font-weight:700}.public-site .summary-reference-layout .review-fare-rows .fare-child{padding:6px 12px 6px 25px}.public-site .summary-reference-layout .review-fare-rows .fare-convenience{margin-top:6px;padding-top:12px;border-top:1px solid #edf0f3}
.public-site .summary-reference-layout .review-fare-rows span { font-size:11px; }
.public-site .summary-reference-layout .review-fare-rows strong { font-size:11px; }
.public-site .summary-reference-layout .review-fare footer {
    padding:15px 6px;border-top:1px solid #dce3ea;background:#fff;
}
.public-site .summary-reference-layout .review-fare footer div>span { color:#315c83;font-size:13px;text-transform:none; }
.public-site .summary-reference-layout .review-fare footer div>small { display:none; }
.public-site .summary-reference-layout .review-fare footer>strong { color:#315c83;font-size:15px; }
@media(max-width:767.98px){
 .public-site .summary-reference-layout{grid-template-columns:1fr;gap:18px}.public-site .summary-reference-layout .heli-route-segment{padding:13px}.public-site .summary-reference-layout .heli-passenger-row{grid-template-columns:1.3fr .7fr .4fr .9fr;padding:0 4px}.public-site .summary-reference-layout .heli-passenger-row>*{font-size:8px}.public-site .summary-reference-layout .review-fare{padding:0 2px}
}
@media (max-width: 575.98px) {
    .public-site .screen-package-icons strong { font-size: 11px; line-height: 1.25; }
    .public-site .screen-package-icons span { min-width: 0; min-height: 60px; }
}
.public-site .verification-section>button[type=submit] { min-height:58px;margin-top:25px;border-radius:9px;font-size:15px; }
.public-site .verification-section>button[type=submit]:not(:disabled) { background:#c92b25;box-shadow:0 8px 18px rgba(201,43,37,.18); }
.public-site .verification-section>button[type=submit]:disabled { background:#9aabbc;color:#fff;cursor:not-allowed;opacity:1; }
@media(max-width:767.98px){
 .public-site .payment-document-head{display:block;padding:0}.public-site .payment-document-head>div:first-child{padding:24px 18px 20px}.public-site .payment-document-head h1{font-size:25px}.public-site .payment-head-meta{grid-template-columns:1fr 1.2fr;min-width:0;margin:0;padding:0!important;border:1px solid #d4e0ea!important;border-right:0!important;border-left:0!important}.public-site .payment-head-meta>div{min-height:112px;padding:22px 17px}.public-site .payment-head-meta>div+div{padding-left:17px}.public-site .payment-head-meta small{font-size:11px!important}.public-site .payment-head-meta strong{margin-top:12px!important;font-size:18px!important}.public-site .payment-head-meta>div:last-child strong{font-size:28px!important}
}

/* Match mobile step-page edges to the 16px header grid */
@media (max-width: 575.98px) {
    .public-site .screen-booking-wrap,
    .public-site .heli-summary-page > .booking-flow,
    .public-site .heli-summary-shell,
    .public-site .payment-wrap {
        width: calc(100% - 32px);
        max-width: none;
    }
    .public-site .payment-wrap {
        padding-left: 0;
        padding-right: 0;
    }
    .public-site .payment-wrap > .booking-flow,
    .public-site .screen-booking-wrap > .booking-flow {
        width: 100%;
    }
}
