/* Soft lilac glass, based on the supplied pale pink-violet reference. */
:root{--bg:#191723;--sidebar:rgba(28,24,40,.95);--panel:rgba(55,46,71,.7);--panel-hover:rgba(69,57,88,.82);--text:#f3eef8;--muted:#c5bbd2;--subtle:#b7acc6;--accent:#c8a9e2;--accent-ink:#261e33;--violet:#c4b3df;--border:rgba(218,196,237,.16);--border-bright:rgba(218,196,237,.3);--cyan-tint:rgba(190,157,218,.12);--shadow:0 14px 30px -12px rgba(25,17,39,.3)}
body.light{--bg:#f8f0f8;--sidebar:rgba(255,252,255,.88);--panel:rgba(255,250,255,.75);--panel-hover:rgba(251,240,253,.92);--text:#342f40;--muted:#70677c;--subtle:#746b7f;--accent:#705184;--accent-ink:#fff;--violet:#7a669b;--border:rgba(126,101,147,.17);--border-bright:rgba(126,101,147,.3);--cyan-tint:rgba(154,120,185,.09);--shadow:0 14px 28px -13px rgba(94,62,123,.15);--crystal-surface:linear-gradient(135deg,rgba(253,238,249,.9),rgba(253,250,255,.82) 46%,rgba(232,225,249,.8));--crystal-hover:linear-gradient(135deg,rgba(250,228,246,.94),rgba(255,252,255,.9) 46%,rgba(227,217,246,.88));background:linear-gradient(135deg,#fcf7fb 0%,#f5eaf5 48%,#eeebf8 100%);background-attachment:fixed}
body.light .glass{background:var(--crystal-surface);border-color:rgba(255,255,255,.94);border-bottom-color:rgba(142,112,164,.2);border-right-color:rgba(142,112,164,.15);outline-color:rgba(136,103,161,.13);box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 rgba(144,111,166,.09),0 5px 10px -7px rgba(93,61,124,.12),0 16px 30px -17px rgba(93,61,124,.2);backdrop-filter:blur(14px) saturate(110%)}
body.light .content-card,body.light .content-card:nth-child(3n+2),body.light .content-card:nth-child(3n){background:var(--crystal-surface)}
body.light .content-card:before,body.light .provider-card:before{background:linear-gradient(135deg,rgba(255,255,255,.5),transparent 48%)}
body.light .content-card:after,body.light .provider-card:after{background:linear-gradient(128deg,transparent 38%,rgba(255,255,255,.23) 44%,transparent 57%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.55)}
body.light .content-card:hover{background:var(--crystal-hover);border-bottom-color:rgba(136,99,157,.28);box-shadow:inset 1px 1px 0 #fff,0 18px 30px -15px rgba(93,61,124,.22)}
body.light .content-card h2,body.light .home-hero h1{color:var(--text)}
body.light .content-card>p,body.light .content-card .article-sub{color:var(--muted)}
body.light .card-overline>span,body.light .content-card .article-sub>span:last-child{color:var(--accent)}
body.light .card-overline time{color:var(--subtle)}
.airport-card{--airport-ink:#f1e9f8;--airport-label:#c3b6ce;--airport-blue:#cab5e3;--airport-green:#aecbbf;--airport-gold:#d7b7da;--airport-tag:#d0bddc}
body.light .airport-card{--airport-ink:#342f40;--airport-label:#71677e;--airport-blue:#665289;--airport-green:#466b60;--airport-gold:#7d517b;--airport-tag:#715b85;background:var(--crystal-surface);border-color:rgba(255,255,255,.94);border-bottom-color:rgba(142,112,164,.22);outline-color:rgba(136,103,161,.13);box-shadow:inset 1px 1px 0 #fff,inset -1px -1px 0 rgba(144,111,166,.09),0 16px 30px -17px rgba(93,61,124,.2)}
body.light .airport-card:hover{background:var(--crystal-hover);border-color:#fff;border-bottom-color:rgba(136,99,157,.28);box-shadow:inset 1px 1px 0 #fff,0 19px 30px -15px rgba(93,61,124,.22)}
body.light .airport-card .provider-logo,body.light .airport-card .provider-logo.purple,body.light .airport-card .provider-logo.blue,body.light .provider-logo{color:#76608c;background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(229,215,247,.6));border-color:rgba(255,255,255,.95);border-bottom-color:rgba(142,112,164,.24);box-shadow:inset 1px 1px 0 #fff,0 5px 12px -6px rgba(108,72,138,.17)}
body.light .airport-card .tag,body.light .airport-card .demo-badge{background:rgba(255,255,255,.52);border-color:rgba(139,109,158,.17)}
.home-hero{margin-bottom:28px}body.light .home-hero{background:linear-gradient(110deg,rgba(251,234,248,.88),rgba(253,249,255,.84) 52%,rgba(232,225,247,.84));border-color:rgba(255,255,255,.95);border-bottom-color:rgba(142,112,164,.2);box-shadow:inset 1px 1px 0 #fff,0 14px 26px -16px rgba(93,61,124,.18)}
.button-primary,body.light .button-primary,body.light .hero .button-primary,.airport-action-buy,body.light .airport-action-buy{background:linear-gradient(135deg,#574262,#383043);color:#fff;border-color:#493b55;box-shadow:0 4px 10px rgba(56,32,76,.13)}
.button-primary:hover,body.light .button-primary:hover,body.light .hero .button-primary:hover,.airport-action-buy:hover,body.light .airport-action-buy:hover{background:linear-gradient(135deg,#705180,#4b3a5b);color:#fff;border-color:#61486f}
body.light .button-ghost,body.light .hero .button-ghost{background:rgba(255,255,255,.9);color:#62506f;border-color:rgba(123,91,147,.29)}
body.light .button-ghost:hover,body.light .hero .button-ghost:hover{background:#fff;color:#715285;border-color:rgba(123,91,147,.48)}
body.light .brand-symbol{background:linear-gradient(140deg,#fceffa,#eae3f5);border-color:rgba(148,113,174,.2);box-shadow:inset 0 1px 0 #fff,0 4px 11px rgba(108,72,138,.08)}
body.light .main-nav a.active,body.light .scene-chip.active{color:var(--accent);background:linear-gradient(110deg,#f7e8f6,#eae3f6);border-color:rgba(145,108,171,.24);box-shadow:inset 0 1px 0 #fff}
body.light .main-nav a:hover,body.light .scene-chip:hover{background:#f7ecfa}
body.light .topic-dot.violet{background:#947cb2}body.light .topic-dot.amber{background:#b48fb1}
body.light .search{background:rgba(255,252,255,.86);border-color:var(--border)}body.light .icon-button:hover{background:#efe5f5}
body.light .fact,body.light .tutorial-steps li{background:linear-gradient(135deg,rgba(250,235,247,.8),rgba(237,228,249,.62))}
body.light .tutorial-prose{background:linear-gradient(145deg,rgba(250,239,250,.95),rgba(255,253,255,.98) 35%);border-color:rgba(146,113,169,.16)}
body:not(.light){background:var(--bg)}body:not(.light) .glass,body:not(.light) .home-hero{background:linear-gradient(145deg,rgba(70,50,87,.64),rgba(40,33,53,.62));border-color:var(--border);box-shadow:inset 0 1px 0 rgba(227,201,244,.12),0 14px 28px -12px rgba(25,17,39,.3)}
body:not(.light) .main-nav a.active,body:not(.light) .scene-chip.active{background:rgba(194,156,216,.13);border-color:var(--border-bright)}
body:not(.light) .brand-symbol,body:not(.light) .airport-card .provider-logo{color:#d8bde9;background:linear-gradient(140deg,rgba(217,172,230,.2),rgba(161,127,194,.12));border-color:var(--border-bright)}
body:not(.light) .button-primary,body:not(.light) .airport-action-buy{background:linear-gradient(135deg,#d9b7e5,#bca4d4);color:#291c35;border-color:#d0b5e0}body:not(.light) .button-primary:hover,body:not(.light) .airport-action-buy:hover{background:#e6cbf0;color:#291c35}
.airport-action-buy:disabled,.button-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.provider-logo img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.mobile-toc{display:none}@media(max-width:980px){.mobile-toc{display:block;border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:18px}.mobile-toc summary{cursor:pointer;font-size:15px;color:var(--accent)}.mobile-toc a{display:block;font-size:14px;color:var(--muted);padding:5px 0;line-height:1.7}}

/* Quiet, consistent headings; the airport list leads the home page. */
.home-airports{margin-bottom:2rem}
.home-airports .section-heading{align-items:center;margin-bottom:1.25rem}
.home-airports h1,.page-title h1{font-size:1.375rem;font-weight:600;line-height:1.5;letter-spacing:0;margin:0}
.home-airports .section-heading p,.page-title p{font-size:.875rem;line-height:1.7;margin-top:.375rem}
.section-heading h2,.onboarding-guide h2,.topic-guide h2{font-size:1.125rem;font-weight:600;line-height:1.5;letter-spacing:0}
.prose h1{font-size:clamp(1.25rem,1.6vw,1.5rem);font-weight:600;line-height:1.6;letter-spacing:0;margin:.75rem 0 1rem;overflow-wrap:anywhere}
.prose h2{font-size:1.125rem;font-weight:600;line-height:1.65;margin-top:1.75rem;letter-spacing:0}
.content-card h2,.tutorial-grid .tutorial-card h2,.home-tutorial-grid .tutorial-card h2{font-size:1rem;font-weight:600;line-height:1.65;letter-spacing:0}
.detail-side h2{font-size:1rem;line-height:1.6}
.empty-state h1{font-size:1.375rem;line-height:1.5;font-weight:600}
@media(max-width:760px){.home-airports h1,.page-title h1{font-size:1.25rem}.home-airports{margin-bottom:1.75rem}}
