@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#080e19;--panel:#0e1826;--line:#223045;--muted:#98a8bf;--mint:#80efd2;--white:#eef4fc}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--white);font:14px 'DM Sans',sans-serif}button,a,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;background:none;color:inherit;border:1px solid var(--line);border-radius:9px;padding:11px 16px}button:hover{border-color:var(--mint);color:var(--mint)}button:disabled{opacity:.3;cursor:default}a{color:inherit;text-decoration:none}a:hover{color:var(--mint)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--mint);outline-offset:4px}header{max-width:1480px;margin:auto;padding:24px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #1c2634;gap:24px}.brand{display:flex;gap:12px;align-items:center;font:700 26px 'Space Grotesk',sans-serif;letter-spacing:2px}.brand small{font:10px 'DM Sans',sans-serif;display:block;letter-spacing:2.6px;margin-top:3px}.wing{color:var(--mint);font-size:40px}nav{display:flex;gap:30px;align-items:center;color:var(--muted)}nav button{border:0;padding:0}nav .active{color:var(--white)}.school{display:flex;gap:12px;align-items:center;font-size:12px}.school img{height:48px;width:43px;object-fit:contain;background:white;border-radius:3px}.school small{display:block;color:var(--muted);font-size:9px;letter-spacing:1.5px;margin-top:6px}main{max-width:1340px;margin:auto;padding:0 42px}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:35px;align-items:center;padding:60px 0 50px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;color:var(--mint);margin:0 0 16px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--mint);margin-right:8px;box-shadow:0 0 14px #80efd277}h1{font:500 clamp(36px,4vw,58px)/1.13 'Space Grotesk',sans-serif;letter-spacing:-2.5px;margin:0}h1 em{font-style:normal;color:var(--mint)}.intro{color:var(--muted);line-height:1.8;font-size:14px;margin:22px 0 25px}.facts{display:flex;gap:28px;color:var(--muted);font-size:11px}.facts b{display:block;font:500 22px 'Space Grotesk';color:var(--white);margin-bottom:5px}.flight-art{height:290px;position:relative;overflow:hidden;background:radial-gradient(ellipse,#193d4650,transparent 65%)}.orbit{border:1px solid #71b3aa30;border-radius:50%;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-23deg)}.o1{width:360px;height:220px}.o2{width:260px;height:260px}.o3{width:450px;height:180px;border-style:dashed}.plane{position:absolute;left:50%;top:48%;font:175px/1 sans-serif;color:#c0e3e1;transform:translate(-50%,-50%) rotate(-23deg);text-shadow:14px 24px 0 #31464d,0 25px 70px #80efd233}.compass{position:absolute;left:50%;top:0;font-size:10px;color:var(--mint)}.coords{position:absolute;bottom:12px;left:24px;font:10px monospace;color:var(--mint);line-height:2}.coords span{font-size:8px;color:var(--muted)}.flight-label{position:absolute;right:0;top:35px;font:9px/2 monospace;color:var(--muted)}.flight-label strong{color:var(--mint);font-size:9px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px}h2{font:500 26px 'Space Grotesk';letter-spacing:-.8px;margin:0}h2 span{color:#53647a;font-size:16px}.section-head .eyebrow{font-size:9px;margin-bottom:8px}.view-switch{display:flex;background:#0e1724;padding:4px;border:1px solid var(--line);border-radius:10px}.view-switch button{border:0;color:var(--muted);font-size:12px;padding:9px 14px}.view-switch .selected{background:#243342;color:var(--mint)}.months{display:flex;gap:8px;margin:24px 0 18px}.months button{flex:1;border:0;border-bottom:2px solid #1b2838;border-radius:0;padding:12px 4px;color:var(--muted);font-size:12px}.months button.active{color:var(--mint);border-color:var(--mint)}.workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(310px,1fr);gap:22px}.journey{background:radial-gradient(ellipse at 50% 50%,#143c4140,transparent 75%),#0b1421;border:1px solid var(--line);border-radius:16px;overflow:hidden;min-width:0}.journey-top{display:flex;justify-content:space-between;padding:23px 24px;color:#d8e4f4;font-size:13px}.pill{font-size:8px;letter-spacing:1px;border:1px solid #344052;border-radius:20px;padding:5px 8px;color:var(--muted)}.stage{height:330px;position:relative;perspective:1100px;overflow:hidden;touch-action:pan-y}.grid-floor{position:absolute;inset:35% -40% -70%;background-image:linear-gradient(#548e8b15 1px,transparent 1px),linear-gradient(90deg,#548e8b15 1px,transparent 1px);background-size:40px 40px;transform:rotateX(65deg);transform-origin:center top}.session-card{position:absolute;width:218px;height:264px;left:calc(50% - 109px);top:30px;border:1px solid #385c69;background:linear-gradient(140deg,#23404a,#142535 65%);border-radius:16px;text-align:left;padding:23px;box-shadow:0 30px 40px #0005;transition:transform .45s,opacity .45s,border-color .2s;color:var(--white);display:flex;flex-direction:column;justify-content:space-between}.session-card.current{border-color:#82ebd0;box-shadow:0 0 50px #69ebcf15,0 30px 40px #0005}.session-card .num{font:10px monospace;color:var(--mint);letter-spacing:1px}.session-card .day{font:500 67px/1 'Space Grotesk';letter-spacing:-3px}.session-card .date{font-size:12px;color:#acc2cb}.session-card h3{font-size:18px;font-weight:500;margin:0;line-height:1.25}.session-card .card-bottom{border-top:1px solid #66828e44;padding-top:15px;display:flex;justify-content:space-between;font-size:11px;color:#b6ccd1}.journey-bottom{padding:8px 25px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}.journey-bottom button{border-radius:50%;width:38px;height:38px;padding:0;margin-left:6px}.hint{text-align:center;color:#8294ac;font-size:10px;margin:12px 12px 22px}.break-note{padding:16px 23px;background:#111e2c;border-top:1px solid var(--line);font-size:11px;color:#a6b9ce;min-height:49px}aside{background:#111c2b;border:1px solid #2a3b50;border-radius:16px;padding:25px;min-width:0}.detail-top{display:flex;justify-content:space-between;align-items:center;font:9px monospace;color:var(--mint);letter-spacing:1px}.detail-top button{border:0;padding:5px;font-size:11px;color:var(--muted);letter-spacing:0}.detail-date{font-size:12px;color:var(--muted);margin:22px 0 10px}aside h3{font:500 27px/1.2 'Space Grotesk';margin:0 0 13px;letter-spacing:-.5px}.description{font-size:12px;color:#aabbd0;line-height:1.7;min-height:58px}.meta{display:flex;gap:20px;font-size:11px;margin:18px 0;color:#c8d6e5}.resources-title{font-size:9px;letter-spacing:1.5px;color:#8296ac;margin:22px 0 12px}.resource{display:flex;align-items:center;gap:12px;width:100%;background:#18273a;border:1px solid #2b3d52;border-radius:10px;padding:13px;margin-top:10px;text-align:left}.resource-icon{background:#df8d6230;color:#ffc5a8;width:35px;height:40px;border-radius:7px;display:grid;place-items:center;font-size:15px}.resource.video .resource-icon{background:#6d7ce630;color:#b9c7ff}.resource span:nth-child(2){flex:1;font-size:12px}.resource small{display:block;color:#8ea2bb;font-size:10px;margin-top:5px}.download{display:block;text-align:center;font-size:10px;color:var(--mint);margin:12px 0 0}.route-footer{display:flex;justify-content:space-between;align-items:center;margin:26px 0;padding:25px 0;border-bottom:1px solid var(--line);font-size:13px}.route-footer p{color:var(--muted);font-size:11px;margin:8px 0 0}.route-footer button{font-size:11px}footer{display:flex;justify-content:space-between;align-items:center;padding-bottom:25px;color:#8295ac;font-size:11px;gap:20px}footer small{font-size:10px;display:block;margin-top:6px}footer button{border:0;font-size:10px}dialog{background:#111d2d;color:var(--white);border:1px solid #38516d;border-radius:18px;padding:35px;width:min(660px,calc(100% - 24px));max-height:90vh}dialog::backdrop{background:#020911bd;backdrop-filter:blur(8px)}.close{position:absolute;right:12px;top:10px;border:0;font-size:23px;padding:5px 12px}dialog h2{margin:8px 0 20px}dialog p,dialog li{color:#abbdd2;line-height:1.65}dialog a{color:var(--mint)}label{display:block;margin:16px 0;font-size:12px;color:#b8c8da}input,textarea{display:block;width:100%;background:#0a1320;color:white;border:1px solid #3c4d64;border-radius:8px;padding:11px;margin-top:7px;max-width:100%}textarea{height:100px;resize:vertical}.primary{background:var(--mint);color:#09251e;border:0}.form-actions{display:flex;gap:12px;margin-top:20px}.local-note{font-size:11px;border-left:2px solid var(--mint);padding-left:12px}.slide-preview{background:#08182b;border-radius:8px;padding:30px;min-height:240px;border:1px solid var(--line)}.slide-preview h3{font:500 27px 'Space Grotesk';margin:10px 0}.slide-nav{display:flex;justify-content:space-between;align-items:center;margin-top:16px}.calendar-head,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;padding:0 20px}.calendar-head{font-size:10px;color:var(--muted);text-align:center;padding-top:20px;padding-bottom:12px}.calendar-days button,.calendar-days span{height:45px;display:grid;place-items:center;padding:0;font-size:12px}.calendar-days button{border-color:var(--mint);color:var(--mint);background:#80efd210}.calendar-days button.active{background:var(--mint);color:#09251e}.calendar-days span{color:#677d95}.calendar-days .off{color:#8b8193;text-decoration:line-through}#calendar-grid{min-height:330px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--mint);color:#05231d;border-radius:9px;padding:13px 22px;display:none;z-index:10;max-width:90%}video{width:100%;border-radius:8px;margin:15px 0}details{margin:20px 0;font-size:12px}summary{cursor:pointer}.program-item{padding:13px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;font-size:13px}.program-item span{color:var(--muted)}@media(max-width:900px){header{padding:20px 24px}nav{display:none}main{padding:0 24px}.hero{gap:0}.flight-label{display:none}.workspace{grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr)}.facts{gap:18px}.school{font-size:10px}}@media(max-width:700px){main{padding:0 17px}.hero{grid-template-columns:1fr;padding:38px 0 30px}.flight-art{display:none}h1{font-size:39px;letter-spacing:-1.6px}.workspace{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column;gap:16px}.months{gap:3px}.months button{font-size:10px}.school span{display:none}header{padding:18px}.facts{gap:27px}.route-footer,footer{align-items:flex-start;flex-direction:column;gap:18px}aside{padding:23px}.view-switch{align-self:stretch}.view-switch button{flex:1}.stage{height:320px}.journey-top{padding:20px 18px}h2{font-size:24px}dialog{padding:27px 20px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Dumas — bright flight academy */
:root{color-scheme:light;--bg:#f5f9ff;--panel:#fff;--line:#d7e3ef;--muted:#536b83;--mint:#126caa;--white:#172e49}body{background:linear-gradient(130deg,#f6fbff 0%,#edf6ff 42%,#fff8ee 100%);font-size:16px;color:var(--white)}button{background:#fff;border-color:#cbdbe9;box-shadow:0 2px 3px #17395705}button:hover{color:#126caa;border-color:#389bd3;background:#f2fbff}a:hover{color:#137fbf}header{max-width:none;background:#ffffffdf;border-bottom:1px solid #d8e5f0;padding:18px max(30px,calc((100vw - 1330px)/2));gap:24px;box-shadow:0 5px 30px #18568805}.school-primary{gap:17px;flex-shrink:0}.school-primary img{height:94px;width:83px;border-radius:8px;box-shadow:0 3px 12px #24394d12;padding:5px;border:1px solid #e3eaf1}.school-primary small{font-size:11px;color:#386785;letter-spacing:2px;margin:0 0 6px}.school-primary strong{display:block;font:700 25px/1.2 'Space Grotesk',sans-serif;letter-spacing:-.8px;color:#15385a}.school-sub{display:block;font-size:12px;color:#536b83;margin-top:6px}.brand{font-size:30px;color:#167bab;border-left:1px solid #d8e5f0;padding-left:24px;letter-spacing:-1px}.brand small{font-size:10px;letter-spacing:1px}nav{font-size:14px;gap:25px}nav .active{color:#137cb3;border-bottom:2px solid #ff8a47;padding:12px 0}nav button{background:none;box-shadow:none}main{max-width:1370px;padding:0 36px}.hero{grid-template-columns:1fr 1fr;padding:28px 0 34px;gap:36px;min-height:370px}h1{font-size:clamp(36px,3.7vw,52px);letter-spacing:-2px;line-height:1.13}h1 em{color:#147cac}.eyebrow{font-size:12px;letter-spacing:1.5px;color:#20719d}.dot{background:#ff904c;box-shadow:none}.intro{font-size:15px;line-height:1.65;margin:18px 0}.facts{gap:28px;font-size:12px}.facts b{font-size:25px;color:#203b58}.facts span:nth-child(2) b{color:#dd6a24}.facts span:nth-child(3) b{color:#247b68}.aircraft-panel{position:relative;background:radial-gradient(ellipse at 50% 45%,#fff 0%,#dff1ff 62%,#cfebff 100%);border:1px solid #cae3f3;border-radius:24px;overflow:hidden;box-shadow:inset 0 1px 0 white,0 18px 35px #2e70aa0a}.aircraft-heading{display:flex;justify-content:space-between;align-items:center;position:absolute;left:20px;right:20px;top:17px;font-size:12px;color:#326485;z-index:1;pointer-events:none}.aircraft-tag{background:#fff9;border:1px solid #fff;border-radius:20px;padding:7px 11px;font-size:10px;letter-spacing:1.5px;font-weight:700}#aircraft-view{height:280px;width:100%;position:relative;cursor:grab}#aircraft-view:active{cursor:grabbing}#aircraft-view canvas{display:block;touch-action:none}#aircraft-status{position:absolute;inset:80px 30px auto;text-align:center;color:#386985;font-size:14px;line-height:1.7}.aircraft-controls{display:flex;justify-content:center;gap:7px;margin:-5px 10px 0;position:relative}.aircraft-controls button{font-size:11px;padding:7px 12px;border-radius:20px;background:#ffffffc9}.aircraft-hint{font-size:11px;color:#46718e;text-align:center;margin:10px 10px 14px}.section-head .eyebrow{font-size:11px;color:#2d799f}.section-head h2{font-size:27px}.section-head h2 span{color:#7c93a9}.view-switch{background:#dfebf5;border:1px solid #d1e1ef}.view-switch button{font-size:13px;background:transparent;color:#45607b;box-shadow:none}.view-switch .selected{background:white;color:#176f9f;box-shadow:0 2px 6px #21456312}.months{margin:22px 0 18px;gap:10px}.months button{background:transparent;border-bottom:2px solid #d7e3ee;color:#60788f;font-size:13px;box-shadow:none;padding:11px 4px}.months button.active{color:#1174af;border-color:#1884be;background:#fff7}.workspace{grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr);gap:22px;align-items:stretch}.journey{background:radial-gradient(ellipse at 50% 46%,#fff 0,#eaf5ff 54%,#ddebfc 100%);border-color:#c5d9eb;border-radius:21px;box-shadow:0 14px 28px #284e6f09}.journey-top{padding:20px 24px;color:#285779;font-size:14px}.pill{color:#51758f;border-color:#afcadf;background:#ffffff65;font-size:10px}.stage{height:385px;perspective:820px;perspective-origin:50% 37%;overflow:hidden;isolation:isolate;touch-action:pan-y;cursor:grab}.stage:active{cursor:grabbing}.grid-floor{inset:41% -90% -130%;background-image:linear-gradient(#548fba25 1px,transparent 1px),linear-gradient(90deg,#548fba25 1px,transparent 1px);background-size:42px 42px;transform:rotateX(73deg);transform-origin:center top;mask-image:linear-gradient(transparent,#000 20%,#000 65%,transparent);pointer-events:none}.flight-ring{position:absolute;left:calc(50% - 280px);top:103px;width:560px;height:560px;border:2px solid #85afd335;border-radius:50%;transform:rotateX(76deg);pointer-events:none;box-shadow:0 0 0 33px #78b5dc09,0 0 0 65px #78b5dc07}#cards{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--incline,12deg)) rotateY(var(--drag-angle,0deg));transition:transform .25s ease;pointer-events:none}.session-card{width:214px;height:263px;left:calc(50% - 107px);top:44px;padding:0;border:0;border-radius:15px;box-shadow:16px 28px 23px #284b772b;background:var(--card-tone);color:#183754;transform-style:preserve-3d;backface-visibility:hidden;transition:transform .75s cubic-bezier(.22,.7,.18,1),opacity .55s;pointer-events:auto;cursor:pointer;display:block}.session-card::before{content:'';position:absolute;top:0;right:-11px;width:12px;height:100%;background:color-mix(in srgb,var(--card-tone),#295877 32%);transform-origin:left;transform:rotateY(90deg);border-radius:0 6px 6px 0}.session-card::after{content:'';position:absolute;left:0;bottom:-10px;width:100%;height:11px;background:color-mix(in srgb,var(--card-tone),#275576 20%);transform-origin:top;transform:rotateX(-90deg);border-radius:0 0 5px 5px}.card-face{display:flex;flex-direction:column;justify-content:space-between;padding:21px;height:100%;border:1px solid #fff;border-radius:15px;background:linear-gradient(130deg,#ffffffb8,transparent 70%);transform:translateZ(1px);text-align:left}.session-card.current{border:0;box-shadow:0 0 0 2px var(--card-accent),18px 34px 28px #284b7738}.session-card:hover{background:var(--card-tone);color:#183754}.session-card .num{font-size:10px;color:var(--card-accent);letter-spacing:1.5px;font-weight:bold;transform:translateZ(8px)}.card-date{display:flex;flex-direction:column;transform:translateZ(15px)}.session-card .day{font-size:67px;line-height:1;color:#173d60;letter-spacing:-3px}.session-card .date{font-size:12px;color:#42617b;margin-top:5px}.card-title{font:600 19px/1.2 'Space Grotesk';transform:translateZ(12px)}.session-card .card-bottom{font-size:10px;border-top:1px solid #36658725;color:#42617b;padding-top:12px;transform:translateZ(5px)}.journey-bottom{font-size:12px;color:#426986;padding:4px 23px}.journey-bottom button{background:#fff9;color:#275c80;width:40px;height:40px;border-color:#aecade}.depth-control{display:flex;align-items:center;justify-content:center;gap:12px;padding:4px 25px;margin:9px 0 0;font-size:12px;color:#496d87}.depth-control label{margin:0;color:inherit;font-size:12px;white-space:nowrap}.depth-control input{width:120px;padding:0;margin:0;accent-color:#2189bd;height:20px;cursor:pointer;border:0;background:none}.depth-control output{min-width:28px;font-variant-numeric:tabular-nums}.hint{color:#607c93;font-size:11px;margin:8px 10px 16px}.break-note{background:#ffffff91;border-color:#caddeb;color:#41637e;font-size:12px;padding:17px 23px}aside{background:#fff;border-color:#d3e1ed;border-radius:21px;box-shadow:0 16px 32px #3157790a;padding:25px}.detail-top{color:#137ba0;line-height:1.6;font-size:10px;letter-spacing:.8px;gap:10px}.detail-top button{border:1px solid #d7e3ec;color:#58738b;font-size:12px;white-space:nowrap;padding:7px 9px;border-radius:7px;background:#f8fbfe}.detail-date{color:#657d92;font-size:13px;margin-top:24px}aside h3{font-size:28px;color:#183b5b}.meta{color:#426784;font-size:12px;gap:16px}.description{font-size:14px;color:#536c83;line-height:1.65}.resources-title{font-size:11px;color:#4d6b85;letter-spacing:1px;margin-top:22px}.resource{background:#f4f9fe;border-color:#d9e7f2;padding:14px;box-shadow:none}.resource:hover{background:#eaf6ff}.resource-icon{background:#fff0e2;color:#c65c1f}.resource.video .resource-icon{background:#ece6ff;color:#7252b1}.resource span:nth-child(2){font-size:14px;color:#294760}.resource small{font-size:11px;color:#617d95}.download{color:#177db0;font-size:12px;margin-top:14px}.route-footer{border-color:#d0dfeb;font-size:15px}.route-footer p{font-size:13px}.route-footer button{font-size:13px;color:#236c98;background:#fff}footer{color:#536d83;font-size:12px}footer small{font-size:11px}footer button{font-size:12px;background:transparent;box-shadow:none}dialog{background:#fff;color:#17344f;border-color:#c0d8e9;box-shadow:0 30px 120px #133b6044}dialog::backdrop{background:#27496766}dialog p,dialog li{color:#536c83}dialog a{color:#187aac}.close{background:transparent;box-shadow:none}label{color:#405e77;font-size:14px}input,textarea{background:#f6faff;color:#17344f;border-color:#c5d8e7;font-size:16px}.primary{background:#177eb3;color:#fff}.primary:hover{background:#126594;color:white}.local-note{border-color:#39a2bf;font-size:12px}.slide-preview{background:#eaf5ff;border-color:#bcdcec}.slide-preview h3{color:#19415f}.slide-preview .eyebrow{color:#247799}.calendar-head{color:#416985;font-size:12px}.calendar-days span{color:#5a7690}.calendar-days .off{color:#a098a6}.calendar-days button{background:#fff;color:#1678a8;border-color:#69adcf}.calendar-days button.active{background:#187fb5;color:#fff}.calendar-days button,.calendar-days span{height:49px;font-size:14px}#calendar-grid{min-height:385px}.program-item span{color:#617e94}#toast{background:#177fac;color:white}#form-error{color:#b4383b}[hidden]{display:none!important}
@media(min-width:1400px){.hero{gap:65px}.aircraft-panel{max-width:590px;width:100%;justify-self:end}}
@media(max-width:1050px){header{padding:17px 26px}.school-primary strong{font-size:22px}.brand{font-size:26px}nav{display:none}.hero{gap:22px}.aircraft-controls button{padding:8px;font-size:10px}h1{font-size:40px}.workspace{grid-template-columns:minmax(0,1.25fr) minmax(300px,1fr)}.session-card{width:200px;left:calc(50% - 100px)}.facts{gap:20px}}
@media(max-width:760px){header{padding:13px 18px;gap:12px}.school-primary img{height:78px;width:69px}.school-primary{gap:12px}.school-primary strong{font-size:20px}.school-primary small{font-size:10px;letter-spacing:1.1px}.school-sub{font-size:11px}.brand{font-size:23px;padding-left:15px}.brand small{display:none}main{padding:0 18px}.hero{grid-template-columns:1fr;gap:22px;padding:27px 0 30px}.hero h1{font-size:40px}.hero .intro{font-size:14px}.aircraft-panel{width:100%}#aircraft-view{height:280px}.aircraft-controls button{font-size:12px;padding:8px 12px}.aircraft-hint{font-size:12px}.workspace{grid-template-columns:1fr}.section-head{flex-direction:column;align-items:stretch;gap:14px}.view-switch{align-self:stretch}.view-switch button{flex:1;font-size:13px}.months{gap:4px}.months button{font-size:12px}.stage{height:380px;perspective:850px}.journey-top{padding:20px 18px}.session-card{width:207px;left:calc(50% - 103.5px)}.description{font-size:15px}.route-footer,footer{align-items:flex-start;flex-direction:column;gap:16px}.school-primary span{display:block}.school-primary .school-sub{display:block}.section-head h2{font-size:25px}.facts b{font-size:24px}.facts{gap:25px}.detail-top{font-size:11px}.pill{font-size:9px}.calendar-days button,.calendar-days span{height:45px}}
@media(max-width:390px){.school-primary strong{font-size:18px}.school-primary img{height:70px;width:62px}.brand{display:none}.facts{gap:18px}.facts b{font-size:22px}.hero h1{font-size:35px}.months button{font-size:11px}.aircraft-controls button{font-size:11px;padding:8px}.depth-control{gap:8px}}
/* Unframed, quietly animated aircraft */
.aircraft-panel{background:none;border:0;border-radius:0;box-shadow:none;overflow:visible;max-width:none}.aircraft-panel #aircraft-view{height:345px;background:transparent}.aircraft-panel canvas{outline-offset:-5px}.aircraft-panel #aircraft-status:empty{display:none}.journey-bottom{padding-bottom:20px}.hero h1{font-size:clamp(34px,3.25vw,47px)}@media(max-width:760px){.aircraft-panel #aircraft-view{height:280px}.hero{gap:0}.hero h1{font-size:38px}.aircraft-panel{margin:5px 0 -15px}}@media(max-width:390px){.hero h1{font-size:34px}.aircraft-panel #aircraft-view{height:245px}}
#admin-toggle{font-size:12px;padding:9px 12px;white-space:nowrap}#admin-toggle.admin-active{color:#177259;background:#e1f7ec;border-color:#96d5b9}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid select{display:block;width:100%;padding:11px;background:#f6faff;color:#17344f;border:1px solid #c5d8e7;border-radius:8px;margin-top:7px;font-size:14px}.check-row{display:flex;align-items:center;gap:10px;overflow-wrap:anywhere}.check-row input{width:auto;margin:0}#login-error{color:#b4383b}@media(max-width:1050px){header{flex-wrap:wrap}header .brand{margin-left:auto}}@media(max-width:480px){#admin-toggle{font-size:11px;margin-left:auto}header .brand{display:none}.form-grid{grid-template-columns:1fr}}
/* Soft edge dissolve: the animation blends into the actual page underneath. */
.aircraft-panel #aircraft-view canvas{
 -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.18) 4%,rgba(0,0,0,.65) 10%,#000 19%,#000 81%,rgba(0,0,0,.65) 90%,rgba(0,0,0,.18) 96%,transparent 100%),linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.18) 5%,rgba(0,0,0,.65) 12%,#000 23%,#000 77%,rgba(0,0,0,.65) 88%,rgba(0,0,0,.18) 95%,transparent 100%);
 -webkit-mask-composite:source-in;
 mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.18) 4%,rgba(0,0,0,.65) 10%,#000 19%,#000 81%,rgba(0,0,0,.65) 90%,rgba(0,0,0,.18) 96%,transparent 100%),linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.18) 5%,rgba(0,0,0,.65) 12%,#000 23%,#000 77%,rgba(0,0,0,.65) 88%,rgba(0,0,0,.18) 95%,transparent 100%);
 mask-composite:intersect;
 mask-repeat:no-repeat;
 -webkit-mask-repeat:no-repeat;
}
/* BIA practice portal */
.quiz-invitation{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px 32px;margin:32px 0;border:1px solid #b9d9e9;border-radius:20px;background:linear-gradient(120deg,#e0f2fc,#f4fbff 60%,#fff2e7)}.quiz-invitation .eyebrow{margin-bottom:10px}.quiz-invitation h2{font-size:28px}.quiz-invitation p:last-child{font-size:15px;line-height:1.65;color:#536b83;margin-bottom:0}.quiz-entry{display:inline-block;flex-shrink:0;background:#177dab;color:white;padding:15px 22px;border-radius:10px;font-size:16px;font-weight:600}.quiz-entry:hover{color:white;background:#11658d}header nav{gap:17px;flex-wrap:wrap}header nav a{white-space:nowrap}@media(max-width:700px){.quiz-invitation{flex-direction:column;align-items:flex-start;padding:25px}.quiz-invitation h2{font-size:25px}.quiz-entry{width:100%;text-align:center}}
/* Course data supplied by the teaching team */
.description,.course-comment{white-space:pre-wrap;overflow-wrap:anywhere}.description{font-size:15px;line-height:1.7}.course-comment{font-size:14px;padding:12px;border-radius:9px;background:#eef6fc;color:#42627b}.bo-reference{font-size:14px;color:#3d6986}.empty-resources{font-size:14px;color:#657d92}.calendar-days .no-session{background:#fff0ee;color:#a4524c;border-color:#e8beb7;text-decoration:line-through}.calendar-days .no-session.active{background:#f6d9d1;color:#853b35}.resource span{overflow-wrap:anywhere}#months{overflow-x:auto}.months button{min-width:62px}.card-title{overflow-wrap:anywhere}.card-bottom span:first-child{max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.card-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}

/* Keep administration beside the BIA mark at the right edge. */
.header-actions{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.header-actions .brand{margin-left:0;padding-left:10px}.header-actions #admin-toggle{margin-left:0}
