/* VAERN v1.5.2 — lysere marineblå ramme om det selvstændige 3D-forløb. */
.airspace-story{--ink:#f3f7fa;--ink-2:#cedbe6;--ink-3:#b7cad9;--brass:#9bc8e8;--brass-2:#c4e0f3;--product-accent:#e5c580;--line:rgba(196,224,243,.18);--line-2:rgba(196,224,243,.32);color-scheme:dark;color:var(--ink);position:relative;background:#172c40;border-top:1px solid var(--line-2);scroll-margin-top:var(--head-h)}
.airspace-story.is-ready{height:540svh}
.airspace-stage{display:none;position:sticky;top:var(--head-h);height:calc(100svh - var(--head-h));min-height:0;overflow:hidden;background:#172c40;isolation:isolate}
.airspace-story.is-ready .airspace-stage{display:block}
.airspace-stage canvas{position:absolute;inset:0;display:block;width:100%;height:100%}
.airspace-stage:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--brass);transform:scaleX(var(--scene-progress,0));transform-origin:left;pointer-events:none}
/* Sløret bærer teksten i venstre side; scenens midte og højre side er åbne. */
.airspace-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#172c40f2 0%,#172c40eb 22%,#172c40d9 35%,#172c4014 48%,transparent 64%),linear-gradient(0deg,#172c40f5 0%,#172c40e0 14%,transparent 34%,transparent 80%,#172c4050 100%)}
.airspace-top{position:absolute;top:28px;left:max(32px,calc((100vw - 1200px)/2));right:max(32px,calc((100vw - 1200px)/2));display:flex;align-items:start;justify-content:space-between;gap:24px;color:#cedbe6;font:13px/1.5 var(--mono);letter-spacing:.11em;text-transform:uppercase}
.airspace-live{display:flex;align-items:center;gap:10px}
.airspace-live:before{content:"";width:6px;height:6px;flex:none;background:#a9d9f7}
.airspace-cue{color:#cedbe6}
.airspace-copy{position:absolute;left:max(32px,calc((100vw - 1200px)/2));top:18%;width:min(30vw,355px);pointer-events:none;will-change:opacity,transform}
.airspace-phase{font:14px/1.5 var(--mono);color:#c4e0f3;letter-spacing:.16em}
.airspace-copy h3{font-family:var(--mono);font-size:clamp(34px,3.4vw,52px);line-height:1.05;letter-spacing:-.015em;font-weight:600;margin:20px 0;color:#f3f7fa;text-transform:none;text-wrap:balance}
.airspace-copy p{color:#cedbe6;line-height:1.7;font-size:16px;margin:0;max-width:36ch}
.airspace-tag{display:inline-block;margin-top:20px;padding-top:12px;border-top:1px solid #9bc8e875;color:#c4e0f3;font:14px/1.5 var(--mono);letter-spacing:.055em}
.airspace-hud{position:absolute;left:max(32px,calc((100vw - 1200px)/2));bottom:145px;width:min(29vw,320px);padding:20px 22px;border:1px solid #9bc8e880;background:#172c40f2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font:14px/1.7 var(--mono);color:#cedbe6;pointer-events:none}
.airspace-hud-title{display:flex;justify-content:space-between;font-size:16px;letter-spacing:.14em;color:#f3f7fa;margin-bottom:12px}
.airspace-hud-title span:last-child{font-size:12px;color:#c4d5e2;letter-spacing:.1em}
.airspace-hud-row{display:flex;justify-content:space-between;gap:12px}
.airspace-hud-row span:last-child{color:#f3f7fa;text-align:right}
.airspace-hud-separator{height:1px;margin:10px 0;background:#9bc8e850}
.airspace-hud-state{font-size:12px;letter-spacing:.06em;margin-top:10px;color:#c4d5e2}
.airspace-target{position:absolute;left:0;top:0;padding:8px 12px;border-left:2px solid #a9d9f7;background:#172c40ed;color:#d9edf9;font:13px/1.5 var(--mono);letter-spacing:.06em;pointer-events:none;will-change:transform;white-space:nowrap}
.airspace-target strong{display:block;font-size:14px;letter-spacing:.10em}
.airspace-target small{font-size:12px;color:#cedbe6;letter-spacing:.04em}
.airspace-ground{position:absolute;left:0;top:0;padding:5px 8px;border-bottom:1px solid #9bc8e8c0;color:#e4f1f9;background:#172c40ed;font:12px/1.5 var(--mono);letter-spacing:.06em;text-transform:uppercase;pointer-events:none;white-space:nowrap;will-change:transform}
.airspace-timeline{position:absolute;bottom:42px;left:max(32px,calc((100vw - 1200px)/2));right:max(32px,calc((100vw - 1200px)/2));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.airspace-timeline button{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-height:66px;padding:13px 0 4px;text-align:left;border:0;border-top:1px solid #9bc8e880;background:none;color:#cedbe6;font:15px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:color .2s}
.airspace-timeline button:before{content:"";position:absolute;top:-1px;left:0;height:2px;width:var(--fill,0%);background:#a9d9f7}
.airspace-timeline button:hover,.airspace-timeline button[aria-current="step"]{color:#fff}
.airspace-num{font:12px/1.2 var(--data);opacity:.75}
.airspace-timeline button:focus-visible,.airspace-skip:focus-visible{outline:2px solid var(--brass);outline-offset:4px}
.airspace-skip{position:absolute;bottom:9px;right:max(32px,calc((100vw - 1200px)/2));font:13px/1.5 var(--mono);color:#cedbe6;text-decoration:underline;text-underline-offset:4px;padding:4px 0}
.airspace-story:is([data-state="threat"],[data-state="approved"],[data-state="launched"],[data-state="hit"]) .airspace-target{border-color:#ff8190;color:#ffd4d9;background:#442a36f2}
.airspace-story:is([data-state="threat"],[data-state="approved"],[data-state="launched"],[data-state="hit"]) #airspace-hud-status{color:#ffacb7}
.airspace-story:is([data-state="approved"],[data-state="launched"],[data-state="hit"],[data-state="down"]) #airspace-hud-decision{color:#a9e5c5}
.airspace-story[data-state="down"] #airspace-hud-status{color:#a9e5c5}
.airspace-static{padding-block:64px}
.airspace-story.is-ready .airspace-static{display:none}
.airspace-static h3{margin-top:16px;font-size:clamp(30px,4vw,50px)}
.airspace-static .frame{margin:0}
.airspace-static-steps{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;padding:30px 0 0;margin:0;counter-reset:airspace}
.airspace-static-steps li{counter-increment:airspace}
.airspace-static-steps li:before{content:"0" counter(airspace);font:13px var(--data);color:var(--brass-2)}
.airspace-static-steps h4{margin:14px 0 10px;font-size:22px;line-height:1.1}
.airspace-static-steps p{color:var(--ink-2);font-size:16px;line-height:1.7}
.airspace-caption{padding-top:22px;padding-bottom:22px}
.airspace-caption p{font-size:14px;line-height:1.7;color:var(--ink-2);max-width:900px}
.airspace-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#dyn-h{scroll-margin-top:calc(var(--head-h) + 24px)}
@media(min-width:761px) and (max-width:1100px){
 .airspace-copy{left:28px;top:14%;width:31vw}
 .airspace-copy h3{font-size:37px}
 .airspace-tag,.airspace-hud-state{display:none}
 .airspace-hud{left:28px;width:31vw;padding:16px}
 .airspace-static-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 .airspace-story.is-ready{height:480svh}
 .airspace-top{top:18px;left:22px;right:22px;font-size:12px;letter-spacing:.06em}
 .airspace-cue{display:none}
 .airspace-copy{top:60px;left:22px;right:22px;width:auto}
 .airspace-phase{font-size:13px;letter-spacing:.09em}
 .airspace-copy h3{font-size:34px;line-height:1.03;margin:12px 0;max-width:23ch}
 .airspace-copy p{font-size:16px;line-height:1.5;max-width:38ch}
 .airspace-tag{display:none}
 .airspace-vignette{background:linear-gradient(180deg,#172c40f5 0%,#172c40ed 25%,#172c40d9 39%,transparent 51%,transparent 66%,#172c40e0 83%,#172c40f5 100%)}
 .airspace-hud{left:22px;right:22px;bottom:128px;width:auto;padding:11px 14px;font-size:13px;background:#172c40f2}
 .airspace-hud-title{font-size:14px;margin-bottom:5px}
 .airspace-hud-row:first-of-type,.airspace-hud-row.airspace-optional,.airspace-hud-state,.airspace-hud-separator{display:none}
 .airspace-hud-title+ .airspace-hud-row{display:none}
 .airspace-target{font-size:12px;padding:6px 9px}
 .airspace-target strong{font-size:13px}
 .airspace-target small{font-size:12px}
 .airspace-ground{font-size:12px;padding:3px 6px}
 .airspace-timeline{left:22px;right:22px;bottom:45px;gap:10px}
 .airspace-timeline button{min-height:59px;font-size:13px;letter-spacing:.01em;gap:7px;padding-top:12px}
 .airspace-num{font-size:12px}
 .airspace-skip{right:22px;bottom:12px;font-size:13px}
 .airspace-static{padding-block:48px}
 .airspace-static-steps{grid-template-columns:1fr;gap:24px}
}
@media(min-width:761px) and (max-height:780px){
 .airspace-copy{top:78px}
 .airspace-copy h3{font-size:34px;margin:12px 0}
 .airspace-copy p{line-height:1.5}
 .airspace-tag{display:none}
 .airspace-hud{bottom:126px;padding:12px 16px}
 .airspace-hud-state{display:none}
 .airspace-hud-title{margin-bottom:6px}
 .airspace-hud-separator{margin:6px 0}
}
@media(max-width:760px) and (max-height:760px){
 .airspace-copy h3{font-size:30px}
 .airspace-copy p{font-size:15px;line-height:1.45}
 .airspace-hud{bottom:117px}
}
@media(prefers-reduced-motion:reduce),(max-height:620px){
 .airspace-story.is-ready{height:auto}
 .airspace-story.is-ready .airspace-stage{display:none}
 .airspace-story.is-ready .airspace-static{display:block}
}
@media print{
 .airspace-story.is-ready{height:auto}
 .airspace-story.is-ready .airspace-stage{display:none}
 .airspace-story.is-ready .airspace-static{display:block}
}
