.booking-hero{background:var(--ink);color:var(--paper);padding:146px 0 46px;position:relative;overflow:hidden}.booking-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#be9a632e,#0000 60%);width:60%;height:220%;position:absolute;top:-60%;right:-10%}.booking-hero__inner{z-index:2;justify-content:space-between;align-items:flex-end;gap:32px;display:flex;position:relative}.booking-hero h1{font-family:var(--font-display);letter-spacing:-.04em;margin-top:20px;font-size:clamp(2.7rem,5.2vw,4.6rem);font-weight:300;line-height:.98}.booking-hero h1 em{color:var(--brass-2);font-style:italic}.booking-hero__side{text-align:right;font-family:var(--font-label);letter-spacing:.13em;text-transform:uppercase;color:var(--muted-ink);flex:none;font-size:8px;line-height:2}.stepper-band{background:var(--paper);border-bottom:1px solid var(--line)}.stepper{align-items:center;gap:0;padding:0;display:flex}.stepper__item{font-family:var(--font-label);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid #0000;align-items:center;gap:11px;margin-bottom:-1px;margin-right:34px;padding:18px 34px 18px 0;font-size:9px;display:flex}.stepper__item:after{content:"";background:var(--line);order:3;width:36px;height:1px;margin-left:34px;margin-right:-34px}.stepper__item:last-child:after{display:none}.stepper__num{border:1px solid var(--line-strong);width:24px;height:24px;color:var(--muted);border-radius:50%;place-items:center;font-size:9px;display:grid}.stepper__item.is-active{color:var(--ink);border-bottom-color:var(--brass)}.stepper__item.is-active .stepper__num{background:var(--ink);border-color:var(--ink);color:var(--paper)}.stepper__item.is-complete{color:var(--ink)}.stepper__item.is-complete .stepper__num{background:var(--brass);border-color:var(--brass);color:var(--ink)}.booking-section{padding:clamp(36px,5vw,60px) 0 clamp(80px,9vw,120px)}.booking-layout{grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:clamp(32px,5vw,64px);display:grid}.booking-main{min-width:0}.booking-layout.is-confirmation{grid-template-columns:1fr}.booking-layout.is-confirmation .fare-card{display:none}.flight-option__time sup{font-family:var(--font-label);color:var(--brass);vertical-align:super;font-size:7px}.step-panel[hidden]{display:none}.search-panel{border:1px solid var(--line);background:var(--paper);margin-bottom:34px}.search-panel__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:16px 22px;display:flex}.search-panel__title{font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:500}.search-panel__context{flex-wrap:wrap;align-items:baseline;gap:4px 14px;min-width:0;display:flex}.search-panel__summary{color:var(--muted);font-size:12px}.search-panel__toggle{color:var(--ink);background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:11px;font-weight:500;display:inline-flex}.search-panel__toggle svg{transition:transform .3s var(--ease);transform:rotate(180deg)}.search-panel.is-collapsed .search-panel__toggle svg{transform:rotate(0)}.search-panel__body{padding:18px 22px 22px}.search-panel.is-collapsed .search-panel__body{display:none}.search-form{grid-template-columns:repeat(4,1fr);align-items:end;gap:18px;display:grid}.search-form .field select,.search-form .field input{font-size:13px;font-family:var(--font-sans);border-bottom:1px solid var(--line);background-position:right 0 center;padding-bottom:8px;font-weight:500}.search-form .field select{font-family:var(--font-sans);font-size:13px}.search-form .field input[type=date]{min-height:30px}.search-form .btn{white-space:nowrap;grid-column:3/-1;justify-self:stretch;min-height:46px;padding:12px 18px}.search-form__error{color:var(--error);grid-column:1/-1;font-size:11px;line-height:1.5}.results-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:8px;padding-bottom:20px;display:flex}.results-head h2{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(2rem,3.6vw,3rem);font-weight:300;line-height:1}.results-head h2 em{font-style:italic}.results-head__meta{text-align:right;font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:8px;line-height:1.9}.flight-section{padding-top:30px}.flight-section__head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px;display:flex}.flight-section__head h3{font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;font-size:10px;font-weight:500}.flight-section__head span{color:var(--muted);font-size:11px}.flight-options{flex-direction:column;gap:10px;display:flex}.flight-option{border:1px solid var(--line);text-align:left;width:100%;transition:border-color .3s var(--ease), background .3s var(--ease);background:0 0;grid-template-columns:minmax(0,1.5fr) minmax(0,.85fr) auto;align-items:center;gap:24px;padding:18px 20px;display:grid;position:relative}.flight-option:hover{border-color:var(--line-strong);background:#ece5d76b}.flight-option[aria-pressed=true]{border-color:var(--ink);background:var(--paper-2);box-shadow:inset 0 0 0 1px var(--ink)}.flight-option__times{align-items:center;gap:12px;display:flex}.flight-option__time{font-family:var(--font-display);letter-spacing:-.02em;white-space:nowrap;font-size:clamp(1.4rem,2.2vw,1.85rem);font-weight:300;line-height:1}.flight-option__time small{font-family:var(--font-label);letter-spacing:.12em;color:var(--muted);margin-top:5px;font-size:8px;display:block}.flight-option__line{min-width:50px;font-family:var(--font-label);letter-spacing:.06em;color:var(--muted);flex-direction:column;flex:1;align-items:center;gap:5px;font-size:8px;display:flex}.flight-option__line:before{content:"";background:var(--line-strong);width:100%;height:1px;position:relative}.flight-option__meta{color:var(--muted);font-size:11px;line-height:1.7}.flight-option__meta strong{color:var(--ink);font-size:12px;font-weight:500;display:block}.flight-option__price{text-align:right;font-family:var(--font-display);white-space:nowrap;font-size:22px;font-weight:300;line-height:1}.flight-option__price small{font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:5px;font-size:7px;display:block}.flight-option__tick{background:var(--ink);width:16px;height:16px;color:var(--paper);opacity:0;border-radius:50%;place-items:center;transition:opacity .25s,transform .25s;display:grid;position:absolute;top:10px;right:10px;transform:scale(.6)}.flight-option[aria-pressed=true] .flight-option__tick{opacity:1;transform:scale(1)}.flight-option__tick svg{width:8px;height:8px}.results-empty{padding:clamp(36px,5vw,60px) 0}.results-empty h2{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(2rem,4vw,3rem);font-weight:300;line-height:1.05}.results-empty p{max-width:46ch;color:var(--muted);margin-top:14px;font-size:14px;line-height:1.7}.popular-routes{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.popular-routes a{border:1px solid var(--line);font-family:var(--font-label);letter-spacing:.1em;text-transform:uppercase;padding:9px 14px;font-size:9px;transition:background .3s,color .3s}.popular-routes a:hover{background:var(--ink);color:var(--paper)}.fare-card{border:1px solid var(--line);background:var(--paper-2);padding:24px;position:sticky;top:100px}.fare-card__label{font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:8px}.fare-card__route{font-family:var(--font-display);letter-spacing:-.02em;align-items:baseline;gap:12px;margin-top:14px;font-size:28px;font-weight:300;line-height:1;display:flex}.fare-card__route span{font-family:var(--font-label);letter-spacing:.08em;color:var(--muted);font-size:10px}.fare-card__cities{color:var(--muted);margin-top:7px;font-size:11px}.fare-legs{border-top:1px solid var(--line);margin-top:20px}.fare-leg{border-bottom:1px solid var(--line);color:var(--muted);padding:14px 0;font-size:11px;line-height:1.6}.fare-leg strong{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin-bottom:3px;font-size:8px;font-weight:500;display:block}.fare-leg__empty{color:#5a6868a6;font-style:italic}.fare-total{justify-content:space-between;align-items:flex-end;gap:16px;margin-top:20px;display:flex}.fare-total span{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:9px}.fare-total strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:36px;font-weight:300;line-height:.9}.fare-card .btn{margin-top:18px}.fare-card__hint{min-height:30px;color:var(--muted);margin-top:12px;font-size:10px;line-height:1.5}.fare-card__included{border-top:1px solid var(--line);color:var(--muted);margin-top:18px;padding-top:14px;font-size:9px;line-height:1.7}.fare-card__included li{padding-left:12px;position:relative}.fare-card__included li:before{content:"·";color:var(--brass);position:absolute;left:0}.passenger-form{border:1px solid var(--line);background:var(--paper)}.form-section{border-bottom:1px solid var(--line);padding:24px}.form-section:last-of-type{border-bottom:0}.form-section__head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px;display:flex}.form-section__head h2{font-family:var(--font-display);letter-spacing:-.02em;font-size:26px;font-weight:300}.form-section__head span{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:8px}.form-grid{grid-template-columns:1fr 1fr;gap:18px 20px;display:grid}.form-grid--three{grid-template-columns:1.2fr 1fr .8fr}.form-field{min-width:0}.form-field--full{grid-column:1/-1}.form-field label{font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:7px;font-size:8px;font-weight:500;display:block}.form-field input,.form-field select,.form-field textarea{border:0;border-bottom:1px solid var(--line-strong);background:0 0;border-radius:0;width:100%;padding:11px 0 9px;font-size:14px;line-height:1.5;transition:border-color .25s}.form-field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%235a6868' stroke-width='1.2'/%3E%3C/svg%3E");background-position:right 2px center;background-repeat:no-repeat}.form-field textarea{resize:vertical;min-height:74px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-bottom-color:var(--brass);outline:none}.form-field input:focus-visible,.form-field select:focus-visible,.form-field textarea:focus-visible{outline:2px solid var(--brass);outline-offset:2px}.form-field.has-error input,.form-field.has-error select{border-bottom-color:var(--error)}.field-error{color:var(--error);margin-top:6px;font-size:10px;line-height:1.5}.field-error[hidden]{display:none}.traveller-block{border-top:1px solid var(--line);padding:20px 0}.traveller-block:first-of-type{border-top:0;padding-top:0}.traveller-block__title{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;font-size:9px;display:flex}.traveller-block__title span{color:var(--muted);font-size:8px}.check{color:var(--muted);cursor:pointer;align-items:flex-start;gap:12px;font-size:12px;line-height:1.6;display:flex}.check input{opacity:0;width:18px;height:18px;position:absolute}.check__box{border:1px solid var(--line-strong);pointer-events:none;background:0 0;flex:none;width:18px;height:18px;margin-top:2px;transition:background .2s,border-color .2s;position:relative}.check__box:after{content:"";border:solid var(--paper);opacity:0;border-width:0 1.5px 1.5px 0;width:6px;height:10px;transition:opacity .2s,transform .2s;position:absolute;top:2px;left:5px;transform:rotate(45deg)scale(.5)}.check input:checked+.check__box{background:var(--ink);border-color:var(--ink)}.check input:checked+.check__box:after{opacity:1;transform:rotate(45deg)scale(1)}.check input:focus-visible+.check__box{outline:2px solid var(--brass);outline-offset:3px}.check strong{color:var(--ink);font-weight:500}.check-error{color:var(--error);margin-top:8px;font-size:10px}.form-actions{background:var(--paper-2);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;display:flex}.form-actions__back{letter-spacing:.04em;color:var(--muted);background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:11px;font-weight:500;display:inline-flex}.form-actions__back:hover{color:var(--ink)}.form-actions .btn{min-height:46px;padding:12px 22px}.form-error-summary{border-left:2px solid var(--error);color:var(--error);background:#9e3b2f0f;margin-bottom:18px;padding:12px 14px;font-size:12px;line-height:1.6}.form-error-summary[hidden]{display:none}.confirmation{max-width:860px;margin:0 auto}.confirmation__head{text-align:center;padding:clamp(10px,2vw,24px) 0 40px}.confirmation__tick{border:1px solid var(--brass);width:54px;height:54px;color:var(--brass);border-radius:50%;place-items:center;margin:0 auto 24px;display:grid}.confirmation h2{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(2.6rem,5vw,4.2rem);font-weight:300;line-height:1}.confirmation h2 em{font-style:italic}.confirmation__sub{color:var(--muted);margin-top:16px;font-size:14px;line-height:1.7}.confirmation__ref{border:1px dashed var(--line-strong);font-family:var(--font-label);letter-spacing:.14em;margin-top:20px;padding:9px 15px;font-size:11px;display:inline-block}.boarding-passes{gap:22px;display:grid}.boarding-pass{background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow)}.bp-top{background:var(--ink);color:var(--paper);justify-content:space-between;align-items:center;gap:20px;padding:14px 22px;display:flex}.bp-brand{letter-spacing:.26em;align-items:center;gap:9px;font-size:10px;font-weight:600;display:flex}.bp-brand svg{width:19px;height:19px;color:var(--brass)}.bp-label{font-family:var(--font-label);letter-spacing:.16em;text-transform:uppercase;color:var(--muted-ink);font-size:8px}.bp-body{grid-template-columns:1.5fr 1fr;display:grid}.bp-main{border-right:1px dashed var(--line-strong);padding:24px 26px}.bp-route{align-items:center;gap:18px;display:flex}.bp-point{min-width:0}.bp-code{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(2.4rem,5vw,3.4rem);font-weight:300;line-height:.9;display:block}.bp-city{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:6px;font-size:8px;display:block}.bp-flightline{min-width:40px;font-family:var(--font-label);letter-spacing:.08em;color:var(--muted);flex-direction:column;flex:1;align-items:center;gap:4px;font-size:7px;display:flex}.bp-flightline:before{content:"";background:var(--line-strong);width:100%;height:1px}.bp-details{grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px;display:grid}.bp-detail dt{font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:7px}.bp-detail dd{margin:5px 0 0;font-size:13px;font-weight:500;line-height:1.3}.bp-stub{background:var(--paper-2);flex-direction:column;justify-content:space-between;padding:24px 26px;display:flex}.bp-stub__row{justify-content:space-between;gap:14px;font-size:11px;line-height:1.5;display:flex}.bp-stub__row span:first-child{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:2px;font-size:7px}.bp-stub__row strong{text-align:right;font-weight:500}.bp-barcode{background:repeating-linear-gradient(90deg, var(--ink) 0, var(--ink) 1px, transparent 1px, transparent 3px, var(--ink) 3px, var(--ink) 4px, transparent 4px, transparent 6px, var(--ink) 6px, var(--ink) 9px, transparent 9px, transparent 11px);opacity:.8;height:34px;margin-top:18px}.bp-stub__ref{font-family:var(--font-label);letter-spacing:.14em;color:var(--muted);text-align:right;margin-top:8px;font-size:8px}.confirmation__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:34px;display:flex}.confirmation__note{text-align:center;max-width:520px;color:var(--muted);margin:26px auto 0;font-size:11px;line-height:1.7}.confirmation__itinerary{border:1px solid var(--line);background:var(--paper-2);margin-top:30px;padding:22px 24px}.confirmation__itinerary h3{font-family:var(--font-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;font-size:8px}.itinerary-row{border-top:1px solid var(--line);justify-content:space-between;gap:20px;padding:8px 0;font-size:12px;line-height:1.5;display:flex}.itinerary-row span:first-child{color:var(--muted)}@media (max-width:1120px){.search-form{grid-template-columns:1fr 1.2fr 1fr 1fr}.search-form .btn{grid-column:1/-1;justify-self:start}}@media (max-width:1000px){.booking-layout{grid-template-columns:1fr}.fare-card{position:static}.booking-layout .fare-card{order:2}}@media (max-width:780px){.booking-hero{padding-top:125px}.booking-hero__inner{flex-direction:column;align-items:flex-start;gap:16px}.booking-hero__side{text-align:left}.stepper{overflow-x:auto}.stepper__item{white-space:nowrap;margin-right:18px;padding-right:18px}.stepper__item:after{width:18px;margin-left:18px;margin-right:-18px}.search-form{grid-template-columns:1fr 1fr}.search-form .field--wide{grid-column:1/-1}.flight-option{grid-template-columns:1fr auto;gap:14px}.flight-option__meta{grid-area:2/1/auto/-1;gap:12px;display:flex}.flight-option__meta strong{display:inline}.flight-option__price{grid-area:1/2;align-self:start}.form-grid,.form-grid--three,.bp-body{grid-template-columns:1fr}.bp-main{border-right:0;border-bottom:1px dashed var(--line-strong)}.bp-stub{gap:14px}.bp-stub__row{font-size:12px}.bp-barcode{margin-top:10px}.bp-details{grid-template-columns:1fr 1fr}.form-actions{flex-direction:column-reverse;align-items:stretch}.form-actions__back{justify-content:center;padding:8px}}@media (max-width:520px){.search-panel__head,.search-panel__body,.form-section,.form-actions{padding-left:16px;padding-right:16px}.search-form{grid-template-columns:1fr}.results-head{flex-direction:column;align-items:flex-start;gap:10px}.results-head__meta{text-align:left}.flight-option{padding:16px 14px}.flight-option__times{gap:8px}.flight-option__line{min-width:34px}.flight-option__line span{display:none}.bp-main,.bp-stub{padding:20px 18px}.confirmation__actions{flex-direction:column;align-items:stretch}}@media print{body:before,.header,.footer,.stepper-band,.booking-hero,.search-panel,.confirmation__actions,.confirmation__note,.confirmation__head .eyebrow,.confirmation__tick,.confirmation__itinerary{display:none!important}body{color:#000;background:#fff}.booking-section{padding:0}.confirmation__head{padding-top:0}.boarding-pass{box-shadow:none;break-inside:avoid;page-break-inside:avoid}.bp-top{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#000!important}.bp-barcode{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
