@font-face {
  font-family: "Cormorant Garamond";
  src: url(../fonts/CormorantGaramond-VariableFont_wght.ttf);
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  src: url(../fonts/Manrope-VariableFont_wght.ttf);
  font-display: swap;
}

:root{
  --color-bg:#0c1113;
  --color-surface:#151c1f;
  --color-surface-2:#20282a;
  --color-text:#f3efe6;
  --color-text-muted:#aeb8b5;
  --color-primary:#9bb8ad;
  --color-primary-deep:#78988c;
  --color-accent:#b9956b;
  --color-line:#334044;
  --color-dark:#090d0f;
  --color-light:#e8e3d9;
  --color-ink:#111718;
  --space-1:8px;
  --space-2:16px;
  --space-3:24px;
  --space-4:32px;
  --space-5:48px;
  --space-6:64px;
  --space-7:80px;
  --space-8:96px;
  --space-9:128px;
  --space-10:160px;
  --text-display:clamp(3rem,7vw,6.9rem);
  --text-h1:clamp(2.7rem,5vw,5rem);
  --text-h2:clamp(2.3rem,4vw,4.25rem);
  --text-h3:clamp(1.55rem,2.2vw,2.3rem);
  --text-body:1rem;
  --text-small:.875rem;
  --radius-sm:10px;
  --radius-md:18px;
  --radius-lg:28px;
  --shadow-soft:0 22px 70px rgba(0,0,0,.24);
  --container:min(1440px,calc(100% - 48px));
  --font-display:"Cormorant Garamond",serif;
  --font-body:"Manrope",sans-serif;
  --header-h:74px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth; width: 100%;overflow-x: hidden;}
body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-body);line-height:1.65;overflow-x: hidden;}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit}
img{width:100%;height:100%;object-fit:cover;display:block}
.media-shell{overflow:hidden;background:var(--color-surface-2)}
.text-strip{height:28px;display:flex;align-items:center;justify-content:center;background:var(--color-light);color:var(--color-ink);font-size:.69rem;letter-spacing:.2em;font-weight:700}
.site-header{height:var(--header-h);width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-4);background:rgba(12,17,19,.93);border-bottom:1px solid var(--color-line);position:sticky;top:0;z-index:50;backdrop-filter:blur(14px)}
.brand{display:inline-flex;align-items:center;gap:12px;font-size:.88rem;letter-spacing:.22em;font-weight:700}
.brand img{width:31px;height:31px;object-fit:contain}
.desktop-nav{display:flex;align-items:center;gap:clamp(14px,2vw,30px);font-size:.79rem;color:var(--color-text-muted)}
.desktop-nav a,.mobile-nav a,.site-footer a{transition:color .25s ease}
.desktop-nav a:hover,.mobile-nav a:hover,.site-footer a:hover{color:var(--color-primary)}
.menu-toggle{display:none;width:44px;height:44px;border:1px solid var(--color-line);background:var(--color-surface);border-radius:50%;align-items:center;justify-content:center;font-size:1.3rem;cursor:pointer}
.mobile-nav{display:none;position:fixed;top:calc(var(--header-h) + 28px);left:0;right:0;bottom:0;background:var(--color-bg);z-index:45;padding:var(--space-5) var(--space-4);flex-direction:column;gap:var(--space-3);font-family:var(--font-display);font-size:2rem}
.mobile-nav.is-open{display:flex}
.hero{position:relative;min-height:calc(100svh - var(--header-h) - 28px);overflow:hidden;border-bottom:1px solid var(--color-line);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(430px,.75fr)}
.hero-media{position:absolute;inset:0;z-index:0}
.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,12,14,.92) 0%,rgba(8,12,14,.68) 48%,rgba(8,12,14,.12) 100%)}
.hero-copy{position:relative;z-index:2;align-self:end;padding:var(--space-9) 0 var(--space-8) max(24px,calc((100vw - min(1440px,calc(100vw - 48px)))/2));max-width:980px}
.eyebrow{margin:0 0 var(--space-2);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--color-primary);font-weight:700}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:.98;letter-spacing:-.025em}
h1{font-size:var(--text-display);max-width:950px;margin-bottom:var(--space-3)}
h2{font-size:var(--text-h2);margin-bottom:var(--space-3)}
h3{font-size:var(--text-h3);margin-bottom:var(--space-2)}
.hero-subtitle{max-width:780px;font-size:clamp(1rem,1.3vw,1.2rem);color:#d3dbd8;margin-bottom:var(--space-4)}
.hero-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}
.btn{min-height:48px;padding:12px 20px;border-radius:999px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:.86rem;cursor:pointer;transition:transform .25s ease,background .25s ease,border-color .25s ease,color .25s ease}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--color-primary);color:var(--color-ink)}
.btn-primary:hover{background:var(--color-light)}
.btn-ghost{border-color:var(--color-line);background:rgba(12,17,19,.55);color:var(--color-text)}
.btn-ghost:hover{border-color:var(--color-primary)}
.hero-year{position:absolute;z-index:3;right:var(--space-4);bottom:var(--space-4);writing-mode:vertical-rl;letter-spacing:.18em;font-size:.72rem;color:var(--color-text-muted)}
.hero-route{position:absolute;z-index:1;width:min(46vw,700px);height:min(46vw,700px);border:1px solid rgba(155,184,173,.45);border-radius:50%;right:-10vw;top:10%;transform:rotate(-18deg)}
.hero-route:before,.hero-route:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(185,149,107,.28)}
.hero-route:before{inset:14%}
.hero-route:after{inset:28%}
.route-dot{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 7px rgba(155,184,173,.13)}
.route-dot-a{left:8%;top:48%}.route-dot-b{right:18%;top:16%}.route-dot-c{right:2%;bottom:32%;background:var(--color-accent)}
.section-pad{width:var(--container);margin:0 auto;padding:var(--space-10) 0}
.story{display:grid;grid-template-columns:.7fr 1.35fr .95fr;gap:var(--space-5);align-items:start}
.story-kicker{border-top:1px solid var(--color-line);padding-top:var(--space-2)}
.story-kicker span{display:block;font-family:var(--font-display);font-size:2.7rem;color:var(--color-accent)}
.story-kicker p{color:var(--color-text-muted);max-width:220px}
.story-copy{font-family:var(--font-display);font-size:clamp(1.55rem,2.4vw,2.45rem);line-height:1.18;color:var(--color-light)}
.story-copy p:last-child{margin-bottom:0}
.story-media{aspect-ratio:4/5;border-radius:var(--radius-lg);transform:translateY(var(--space-5))}
.stats-band{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line)}
.stats-band article{padding:var(--space-5);border-right:1px solid var(--color-line)}
.stats-band article:last-child{border-right:0}
.stats-band strong{display:block;font-family:var(--font-display);font-size:clamp(2.5rem,4vw,4.5rem);line-height:1;color:var(--color-light)}
.stats-band span{font-size:.8rem;color:var(--color-text-muted);letter-spacing:.04em}
.marquee{overflow:hidden;border-bottom:1px solid var(--color-line);background:var(--color-primary);color:var(--color-ink)}
.marquee-track{width:max-content;display:flex;gap:var(--space-3);align-items:center;white-space:nowrap;padding:13px 0;animation:marquee 28s linear infinite;font-size:.76rem;font-weight:800;letter-spacing:.14em}
.marquee-track b{font-size:1.1rem}
@keyframes marquee{to{transform:translateX(-50%)}}
.section-head{display:grid;grid-template-columns:1.3fr .7fr;gap:var(--space-6);align-items:end;margin-bottom:var(--space-6)}
.section-head h2{max-width:860px;margin-bottom:0}
.section-head>p,.section-head>div+p{color:var(--color-text-muted);margin-bottom:0;max-width:540px}
.compact-head{margin-bottom:var(--space-5)}
.experiences{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}
.experiences>.section-head{grid-column:1/-1}
.experience-card{border:1px solid var(--color-line);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface);display:flex;flex-direction:column;min-height:100%;cursor:pointer;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.experience-card:hover,.experience-card:focus-visible{transform:translateY(-3px);border-color:rgba(155,184,173,.55);box-shadow:var(--shadow-soft)}
.experience-card-wide{grid-column:1/-1;display:grid;grid-template-columns:1.08fr .92fr}
.experience-media{aspect-ratio:16/10;min-height:320px}
.experience-card-wide .experience-media{height:100%;aspect-ratio:auto}
.experience-content{padding:var(--space-4);display:flex;flex-direction:column;flex:1}
.card-topline{display:flex;justify-content:space-between;gap:var(--space-2);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-line);margin-bottom:var(--space-3)}
.route-label{color:var(--color-primary);font-size:.86rem;display:flex;align-items:center;gap:8px}
.experience-content>p:not(.route-label):not(.price-note){color:#c7d0cd}
.route-steps{display:flex;flex-wrap:wrap;gap:8px;margin:var(--space-3) 0}
.route-steps span{padding:7px 10px;border-radius:999px;border:1px solid var(--color-line);font-size:.72rem;color:var(--color-text-muted)}
.timeline{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin:var(--space-3) 0}
.timeline span{font-size:.78rem;color:var(--color-text-muted);border-bottom:1px solid var(--color-line);padding-bottom:7px}
.timeline b{color:var(--color-primary);margin-right:8px}
.included{margin-top:auto;padding-top:var(--space-3);border-top:1px solid var(--color-line)}
.included strong{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:var(--color-accent)}
.included p{margin:6px 0 0;font-size:.82rem;color:var(--color-text-muted)}
.price-row{display:flex;align-items:end;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-4)}
.price-row>div span{display:block;font-size:.7rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.1em}
.price-row>div strong{display:block;font-family:var(--font-display);font-size:2.6rem;line-height:1.05;color:var(--color-light)}
.text-link{font-size:.82rem;font-weight:700;color:var(--color-primary);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.text-link:hover{color:var(--color-light)}
.price-note{font-size:.68rem;line-height:1.55;color:#8e9b98;margin:var(--space-3) 0 0}
.gallery{border-top:1px solid var(--color-line)}
.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}
.gallery-grid figure{margin:0;position:relative;border-radius:var(--radius-md);aspect-ratio:4/3;min-height:0}
.gallery-grid figcaption{position:absolute;left:14px;bottom:14px;padding:8px 11px;border-radius:999px;background:rgba(9,13,15,.78);font-size:.72rem;color:var(--color-light);backdrop-filter:blur(8px)}
.routes{border-top:1px solid var(--color-line)}
.route-layout{display:grid;grid-template-columns:.78fr 1.22fr;border:1px solid var(--color-line);border-radius:var(--radius-lg);overflow:hidden;min-height:650px}
.route-tabs{display:flex;flex-direction:column;background:var(--color-surface)}
.route-tab{flex:1;display:grid;grid-template-columns:44px 1fr;gap:2px 12px;text-align:left;padding:var(--space-3);border:0;border-bottom:1px solid var(--color-line);background:transparent;cursor:pointer;transition:background .25s ease}
.route-tab:last-child{border-bottom:0}
.route-tab:hover,.route-tab.is-active{background:var(--color-surface-2)}
.route-tab>span{grid-row:1/3;color:var(--color-accent);font-family:var(--font-display);font-size:1.4rem}
.route-tab b{font-family:var(--font-display);font-size:1.35rem;font-weight:600}
.route-tab small{color:var(--color-text-muted)}
.route-stage{position:relative;padding:var(--space-5);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:var(--color-dark)}
.route-visual{position:absolute;left:8%;right:8%;top:8%;height:52%;border:1px solid var(--color-line);border-radius:50% 42% 55% 38%;transform:rotate(-6deg)}
.route-visual:before{content:"";position:absolute;left:12%;right:10%;top:48%;border-top:1px dashed var(--color-primary);transform:rotate(-12deg)}
.route-node{position:absolute;width:13px;height:13px;border-radius:50%;background:var(--color-bg);border:2px solid var(--color-primary)}
.n1{left:8%;bottom:22%}.n2{left:34%;top:30%}.n3{right:30%;top:19%}.n4{right:8%;bottom:18%;border-color:var(--color-accent)}
.route-plane{position:absolute;left:47%;top:41%;font-size:2rem;color:var(--color-accent);transform:rotate(30deg)}
.route-detail{position:relative;z-index:2;max-width:700px;background:rgba(21,28,31,.84);padding:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-md);backdrop-filter:blur(12px)}
.route-detail p:not(.eyebrow){color:var(--color-text-muted)}
.route-meta{display:flex;flex-wrap:wrap;gap:8px}
.route-meta span{font-size:.72rem;border:1px solid var(--color-line);border-radius:999px;padding:7px 10px}
.services{display:grid;grid-template-columns:.92fr 1.08fr;gap:var(--space-6);align-items:center}
.services-media{aspect-ratio:4/5;border-radius:var(--radius-lg)}
.services-copy>p:not(.eyebrow){max-width:720px;color:var(--color-text-muted)}
.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2);margin-top:var(--space-4)}
.service-grid article{border:1px solid var(--color-line);border-radius:var(--radius-md);padding:var(--space-3);background:var(--color-surface)}
.service-grid i{font-size:1.5rem;color:var(--color-accent)}
.service-grid h3{font-size:1.35rem;margin:var(--space-2) 0 10px}
.service-grid p{font-size:.82rem;color:var(--color-text-muted);margin:0}
.fleet{border-top:1px solid var(--color-line)}
.fleet-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}
.aircraft-card{display:grid;grid-template-columns:.86fr 1.14fr;border:1px solid var(--color-line);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface);min-height:410px}
.aircraft-media{height:100%;min-height:340px}
.aircraft-body{padding:var(--space-4);display:flex;flex-direction:column}
.aircraft-index{font-size:.7rem;letter-spacing:.16em;color:var(--color-accent);text-transform:uppercase}
.aircraft-tag{font-weight:700;color:var(--color-primary)}
.aircraft-body>p:not(.aircraft-index):not(.aircraft-tag){color:var(--color-text-muted);font-size:.87rem}
.specs{margin-top:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid var(--color-line);padding-top:var(--space-3)}
.specs span{font-size:.66rem;color:var(--color-text-muted)}
.specs b{display:block;color:var(--color-light);font-size:.9rem}
.fleet-note{max-width:900px;margin:var(--space-4) 0 0;color:var(--color-text-muted);font-size:.72rem}
.about{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--space-6);align-items:center;background:var(--color-light);color:var(--color-ink);width:100%;padding-left:max(24px,calc((100vw - min(1440px,calc(100vw - 48px)))/2));padding-right:max(24px,calc((100vw - min(1440px,calc(100vw - 48px)))/2))}
.about .eyebrow{color:var(--color-primary-deep)}
.about-copy>p:not(.eyebrow){color:#3a4546;max-width:760px}
.about-media{aspect-ratio:5/4;border-radius:var(--radius-lg)}
.about-facts{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-4)}
.about-facts span{border-top:1px solid #aeb6b2;padding-top:10px;min-width:150px;font-size:.72rem;color:#566160}
.about-facts b{display:block;font-family:var(--font-display);font-size:1.75rem;color:var(--color-ink)}
.process{display:grid;grid-template-columns:.9fr 1.1fr;gap:var(--space-6);align-items:stretch}
.process-image{border-radius:var(--radius-lg);min-height:620px}
.process-list{margin-top:var(--space-4)}
.process-list article{display:grid;grid-template-columns:72px 1fr;gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--color-line)}
.process-list article>span{font-family:var(--font-display);font-size:2rem;color:var(--color-accent)}
.process-list h3{font-size:1.55rem;margin-bottom:8px}
.process-list p{color:var(--color-text-muted);margin:0}
.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:var(--space-6);border-top:1px solid var(--color-line)}
.contact-intro>p:not(.eyebrow){color:var(--color-text-muted);max-width:580px}
.contact-card{margin-top:var(--space-5);border:1px solid var(--color-line);border-radius:var(--radius-md);overflow:hidden}
.contact-card div{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-line);display:flex;justify-content:space-between;gap:var(--space-3)}
.contact-card div:last-child{border-bottom:0}
.contact-card span{font-size:.72rem;color:var(--color-text-muted)}
.contact-card strong{font-size:.82rem;text-align:right}
.inquiry-form{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-4)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2)}
.inquiry-form label{display:block;font-size:.74rem;color:var(--color-text-muted);margin-bottom:var(--space-2)}
.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;margin-top:8px;padding:13px 14px;border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);outline:none;transition:border-color .25s ease}
.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{border-color:var(--color-primary)}
.inquiry-form textarea{resize:vertical}
.consent{display:flex!important;align-items:flex-start;gap:10px;font-size:.7rem!important;line-height:1.5}
.consent input{width:auto!important;margin:3px 0 0!important}
.consent a{text-decoration:underline}
.form-submit{margin-top:var(--space-2)}
.faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:var(--space-6)}
.accordion{border-top:1px solid var(--color-line)}
.accordion-item{border-bottom:1px solid var(--color-line)}
.accordion-item button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) 0;background:none;border:0;cursor:pointer;text-align:left;font-family:var(--font-display);font-size:1.45rem}
.accordion-item i{transition:transform .25s ease}
.accordion-item.is-open i{transform:rotate(45deg)}
.accordion-panel{display:none;padding:0 0 var(--space-3);color:var(--color-text-muted);max-width:780px}
.accordion-item.is-open .accordion-panel{display:block}
.closing-visual{position:relative;min-height:72vh;display:flex;align-items:flex-end;overflow:hidden}
.closing-visual>.media-shell{position:absolute;inset:0}
.closing-visual>.media-shell:after{content:"";position:absolute;inset:0;background:rgba(7,11,12,.48)}
.closing-copy{position:relative;z-index:2;padding:var(--space-7) max(24px,calc((100vw - min(1440px,calc(100vw - 48px)))/2));max-width:970px}
.closing-copy h2{font-size:var(--text-display);max-width:900px}
.site-footer{position:relative;border-top:1px solid var(--color-line);padding:var(--space-7) max(24px,calc((100vw - min(1440px,calc(100vw - 48px)))/2)) var(--space-3);background:var(--color-dark);overflow:hidden}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:var(--space-5);position:relative;z-index:2}
.footer-grid h3{font-family:var(--font-body);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent)}
.footer-grid p,.footer-grid a{display:block;font-size:.78rem;color:var(--color-text-muted);margin:0 0 7px}
.footer-brand>p{max-width:330px;margin-top:var(--space-2)}
.footer-grid small{display:block;margin-top:var(--space-3);font-size:.64rem;color:#73807d}
.footer-disclaimer{margin-top:var(--space-6);padding:var(--space-3) 0;border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);position:relative;z-index:2}
.footer-disclaimer p{margin:0;max-width:1100px;font-size:.7rem;color:#808c89}
.footer-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-3);font-size:.68rem;color:#707c79}
.footer-route{position:absolute;width:540px;height:270px;border:1px solid rgba(155,184,173,.14);border-radius:50%;right:-90px;bottom:-120px;transform:rotate(-16deg)}
.footer-route span{position:absolute;width:8px;height:8px;border-radius:50%;background:var(--color-primary)}
.footer-route span:nth-child(1){left:10%;top:38%}.footer-route span:nth-child(2){left:48%;top:6%}.footer-route span:nth-child(3){right:8%;bottom:33%;background:var(--color-accent)}

.experience-detail-main{width:var(--container);margin:0 auto;padding:var(--space-6) 0 var(--space-9)}
.experience-detail-hero{display:grid;grid-template-columns:1.04fr .96fr;min-height:620px;border:1px solid var(--color-line);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface)}
.experience-detail-hero .detail-hero-media{min-height:620px}
.detail-hero-copy{padding:var(--space-6);display:flex;flex-direction:column;justify-content:flex-end}
.detail-hero-copy h1{font-size:var(--text-h1);max-width:820px}
.detail-hero-copy>p:not(.eyebrow):not(.price-note){color:var(--color-text-muted);font-size:1.03rem;max-width:720px}
.detail-price{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-3);padding-top:var(--space-3);margin-top:var(--space-3);border-top:1px solid var(--color-line)}
.detail-price span{display:block;font-size:.72rem;color:var(--color-text-muted)}
.detail-price strong{font-family:var(--font-display);font-size:2.45rem;color:var(--color-light)}
.detail-intro{display:grid;grid-template-columns:.68fr 1.32fr;gap:var(--space-6);padding:var(--space-8) 0}
.detail-intro h2,.detail-section h2{font-size:var(--text-h1)}
.detail-intro-copy p,.detail-section>p{color:#c0c9c6}
.detail-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2);margin-top:var(--space-4)}
.detail-facts article{padding:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-md);background:var(--color-surface)}
.detail-facts span{display:block;font-size:.7rem;color:var(--color-text-muted);margin-bottom:8px}
.detail-facts strong{font-family:var(--font-display);font-size:1.45rem}
.detail-section{padding:var(--space-7) 0;border-top:1px solid var(--color-line)}
.flight-plan{margin-top:var(--space-4);border-top:1px solid var(--color-line)}
.flight-step{display:grid;grid-template-columns:90px 1fr .85fr;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-line);align-items:start}
.flight-step>span{font-family:var(--font-display);font-size:1.3rem;color:var(--color-accent)}
.flight-step h3{font-size:1.5rem;margin:0 0 6px}
.flight-step p{margin:0;color:var(--color-text-muted)}
.flight-step small{font-size:.72rem;color:#85918e;line-height:1.6}
.detail-two-col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}
.detail-panel{padding:var(--space-4);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:var(--color-surface)}
.detail-panel h3{font-size:1.8rem}
.detail-panel p{color:var(--color-text-muted)}
.detail-panel .included-list{display:grid;gap:10px;margin-top:var(--space-3)}
.detail-panel .included-list span{padding:10px 0;border-top:1px solid var(--color-line);font-size:.8rem}
.detail-cta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--color-light);color:var(--color-ink)}
.detail-cta h2{color:var(--color-ink);font-size:2.3rem;margin-bottom:6px}
.detail-cta p{color:#505957;max-width:720px;margin:0}
.detail-back{display:inline-flex;align-items:center;gap:8px;margin-bottom:var(--space-3);font-size:.75rem;color:var(--color-text-muted)}
.experience-content h3 a{transition:color .25s ease}
.experience-content h3 a:hover{color:var(--color-primary)}

:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}
.legal-main,.thanks-main{width:var(--container);margin:0 auto;padding:var(--space-8) 0 var(--space-10)}
.legal-hero,.thanks-hero{padding:var(--space-6) 0;border-bottom:1px solid var(--color-line);margin-bottom:var(--space-6)}
.legal-hero h1,.thanks-hero h1{font-size:var(--text-h1);max-width:950px}
.legal-hero p,.thanks-hero p{max-width:780px;color:var(--color-text-muted)}
.legal-content{max-width:920px}
.legal-content section{padding:var(--space-4) 0;border-bottom:1px solid var(--color-line)}
.legal-content h2{font-size:2rem}
.legal-content h3{font-size:1.35rem;margin-top:var(--space-3)}
.legal-content p{color:#c0c9c6}
.legal-meta{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-3)}
.legal-meta span{font-size:.72rem;border:1px solid var(--color-line);border-radius:999px;padding:7px 10px;color:var(--color-text-muted)}
.thanks-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}
.thanks-card{border:1px solid var(--color-line);border-radius:var(--radius-lg);padding:var(--space-4);background:var(--color-surface)}
.thanks-card h2{font-size:2rem}
.thanks-card p{color:var(--color-text-muted)}
.next-steps article{display:grid;grid-template-columns:52px 1fr;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--color-line)}
.next-steps article>span{font-family:var(--font-display);font-size:1.5rem;color:var(--color-accent)}
.next-steps h3{font-size:1.3rem;margin-bottom:6px}
.next-steps p{margin:0}
.return-btn{margin-top:var(--space-4)}
@media(max-width:1180px){
  .desktop-nav{display:none}.menu-toggle{display:flex}
  .hero{grid-template-columns:1fr}.hero-copy{padding-right:var(--space-4)}
  .story{grid-template-columns:.55fr 1.45fr}.story-media{grid-column:2;max-width:520px}
  .experience-card-wide{grid-template-columns:1fr}.experience-card-wide .experience-media{aspect-ratio:16/9}
  .fleet-grid{grid-template-columns:1fr}
  .aircraft-card{grid-template-columns:.75fr 1.25fr}
}
@media(max-width:900px){
  .experience-detail-hero,.detail-intro{grid-template-columns:1fr}.experience-detail-hero .detail-hero-media{min-height:420px}.detail-facts{grid-template-columns:1fr 1fr}.flight-step{grid-template-columns:72px 1fr}.flight-step small{grid-column:2}.detail-two-col{grid-template-columns:1fr}.detail-cta{align-items:flex-start;flex-direction:column}
  :root{--container:min(100% - 32px,1440px);--space-10:96px;--space-9:88px;--space-8:72px}
  .section-head,.services,.about,.process,.contact,.faq{grid-template-columns:1fr}
  .story{grid-template-columns:1fr}.story-media{grid-column:auto;transform:none;max-width:none;aspect-ratio:16/10}.story-kicker p{max-width:none}
  .stats-band{grid-template-columns:1fr 1fr}.stats-band article:nth-child(2){border-right:0}.stats-band article:nth-child(-n+2){border-bottom:1px solid var(--color-line)}
  .experiences{grid-template-columns:1fr}.experience-card-wide{grid-column:auto}
  .gallery-grid{grid-template-columns:1fr 1fr}
  .route-layout{grid-template-columns:1fr}.route-tabs{display:grid;grid-template-columns:1fr 1fr}.route-tab{min-height:150px;border-right:1px solid var(--color-line)}.route-stage{min-height:520px}
  .about{padding-top:var(--space-8);padding-bottom:var(--space-8)}
  .process-image{min-height:440px;order:2}
  .footer-grid{grid-template-columns:1fr 1fr}
  .thanks-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .experience-detail-main{width:calc(100% - 24px)}.experience-detail-hero .detail-hero-media{min-height:300px}.detail-hero-copy{padding:var(--space-4)}.detail-price{align-items:flex-start;flex-direction:column}.detail-facts{grid-template-columns:1fr}.flight-step{grid-template-columns:1fr}.flight-step small{grid-column:auto}.detail-cta{padding:var(--space-4)}
  :root{--container:calc(100% - 24px);--space-10:72px;--space-9:72px;--space-8:64px;--space-7:56px;--space-6:48px;--space-5:36px;--space-4:26px;--header-h:66px}
  .site-header{padding:0 12px}.text-strip{height:26px}
  .hero{min-height:770px}.hero-copy{padding:var(--space-8) 16px var(--space-6)}.hero-route{width:580px;height:580px;right:-330px;top:9%}.hero-year{right:12px;bottom:18px}
  .hero-actions{flex-direction:column;align-items:stretch}.btn{width:100%}
  .stats-band{grid-template-columns:1fr}.stats-band article{border-right:0!important;border-bottom:1px solid var(--color-line)}.stats-band article:last-child{border-bottom:0}
  .section-head{gap:var(--space-3)}
  .card-topline,.price-row{align-items:flex-start;flex-direction:column}.price-row .text-link{margin-top:8px}
  .timeline{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:1fr}
  .route-tabs{grid-template-columns:1fr}.route-tab{border-right:0;min-height:120px}.route-stage{min-height:560px;padding:var(--space-3)}.route-detail{padding:var(--space-3)}
  .service-grid,.form-row{grid-template-columns:1fr}
  .aircraft-card{grid-template-columns:1fr}.aircraft-media{min-height:280px}.specs{grid-template-columns:1fr 1fr 1fr}
  .about{padding-left:12px;padding-right:12px}
  .contact-card div{flex-direction:column;gap:2px}.contact-card strong{text-align:left}
  .footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}
  .legal-main,.thanks-main{width:calc(100% - 24px)}
}
.cookie-banner {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transform: translateY(100%);
  pointer-events: none;
  transition:
    opacity .3s ease,
    visibility .3s ease,
    transform .3s ease;
}

.cookie-banner.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}

.cookie-dock {
  background: rgba(9, 13, 15, .97);
  border-top: 1px solid var(--color-line);
  backdrop-filter: blur(16px);
  box-shadow: 0 -18px 60px rgba(0, 0, 0, .18);
}

.cookie-dock__inner {
  width: min(1380px, calc(100% - 48px));
  min-height: 118px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) auto;
  align-items: center;
}

.cookie-dock__label {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-right: 22px;
  border-right: 1px solid var(--color-line);
}

.cookie-dock__label span {
  color: var(--color-primary);
  font-family: var(--font-display);
  font-size: 1.55rem;
  line-height: 1;
}

.cookie-dock__label small {
  margin-top: 5px;
  color: var(--color-text-muted);
  font-size: .58rem;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.cookie-dock__content {
  min-width: 0;
  padding: 18px 30px;
}

.cookie-dock__content strong {
  display: block;
  margin-bottom: 4px;
  color: var(--color-light);
  font-family: var(--font-display);
  font-size: 1.28rem;
  font-weight: 600;
  line-height: 1.1;
}

.cookie-dock__content p {
  max-width: 720px;
  margin: 0;
  color: var(--color-text-muted);
  font-size: .75rem;
  line-height: 1.55;
}

.cookie-dock__links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 7px;
}

.cookie-dock__links a {
  color: var(--color-primary);
  font-size: .63rem;
  font-weight: 700;
  border-bottom: 1px solid rgba(155, 184, 173, .3);
  padding-bottom: 1px;
  transition:
    color .2s ease,
    border-color .2s ease;
}

.cookie-dock__links a:hover {
  color: var(--color-light);
  border-color: var(--color-light);
}

.cookie-dock__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-left: 24px;
}

.cookie-dock__button {
  min-height: 42px;
  padding: 9px 17px;
  border-radius: 999px;
  font-family: var(--font-body);
  font-size: .68rem;
  font-weight: 700;
  white-space: nowrap;
  cursor: pointer;
  transition:
    background .2s ease,
    color .2s ease,
    border-color .2s ease,
    transform .2s ease;
}

.cookie-dock__button:hover {
  transform: translateY(-1px);
}

.cookie-dock__button--necessary {
  background: transparent;
  color: var(--color-text-muted);
  border: 1px solid var(--color-line);
}

.cookie-dock__button--necessary:hover {
  color: var(--color-light);
  border-color: var(--color-primary);
}

.cookie-dock__button--accept {
  background: var(--color-primary);
  color: var(--color-ink);
  border: 1px solid var(--color-primary);
}

.cookie-dock__button--accept:hover {
  background: var(--color-light);
  border-color: var(--color-light);
}

.cookie-settings-link {
  position: fixed;
  right: 16px;
  bottom: 16px;
  z-index: 9000;
  min-height: 34px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 0 12px;
  background: var(--color-dark);
  color: var(--color-text-muted);
  border: 1px solid var(--color-line);
  border-radius: 999px;
  font-family: var(--font-body);
  font-size: .61rem;
  font-weight: 700;
  cursor: pointer;
  transition:
    color .2s ease,
    border-color .2s ease,
    background .2s ease;
}

.cookie-settings-link__line {
  width: 15px;
  height: 1px;
  background: var(--color-accent);
}

.cookie-settings-link:hover {
  color: var(--color-light);
  border-color: var(--color-primary);
  background: var(--color-surface);
}

body:has(.cookie-banner.show) .cookie-settings-link {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.cookie-dock__button:focus-visible,
.cookie-dock__links a:focus-visible,
.cookie-settings-link:focus-visible {
  outline: 2px solid var(--color-primary);
  outline-offset: 3px;
}

@media (max-width: 820px) {
  body {
    word-break: break-word;
  }
  .cookie-dock__inner {
    width: calc(100% - 24px);
    grid-template-columns: 1fr;
    padding: 13px 0 12px;
  }

  .cookie-dock__label {
    min-height: auto;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 9px;
    padding: 0 0 9px;
    border-right: 0;
    border-bottom: 1px solid var(--color-line);
  }

  .cookie-dock__label span {
    font-size: 1.15rem;
  }

  .cookie-dock__label small {
    margin-top: 0;
  }

  .cookie-dock__content {
    padding: 13px 0;
  }

  .cookie-dock__content strong {
    font-size: 1.15rem;
  }

  .cookie-dock__content p {
    font-size: .7rem;
  }

  .cookie-dock__actions {
    padding: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .cookie-dock__button {
    width: 100%;
  }

  .cookie-settings-link {
    right: 10px;
    bottom: 10px;
  }
}

@media (max-width: 430px) {
  .cookie-dock__actions {
    grid-template-columns: 1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cookie-banner,
  .cookie-dock__button,
  .cookie-dock__links a,
  .cookie-settings-link {
    transition: none;
  }
}