/* Isolated component styles: host pages can set .spacerel-hero height. */
.spacerel-hero,.spacerel-hero *{box-sizing:border-box}
.spacerel-hero{position:relative;isolation:isolate;overflow:hidden;width:100%;height:100svh;min-height:560px;max-height:1200px;background:#080808;color:#f5f5f3;font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
.hero-stage,.hero-stage canvas,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-stage canvas{display:block}
.hero-shade{pointer-events:none;background:linear-gradient(90deg,rgba(8,8,8,.42),transparent 46%),linear-gradient(0deg,rgba(8,8,8,.86),transparent 25%);z-index:1}
.hero-brand{position:absolute;left:5.5%;top:42px;z-index:2;font-size:19px;font-weight:600;letter-spacing:.18em;display:flex;align-items:center;gap:12px}.brand-mark{font-weight:400;font-size:32px;line-height:1}
.hero-copy{position:absolute;left:5.5%;bottom:122px;z-index:2;pointer-events:none;width:85%}
.level{position:absolute;left:5.5%;bottom:122px;z-index:2;margin:0;display:flex;align-items:center;gap:26px;font-size:15px;letter-spacing:.04em;pointer-events:none}.level-index{color:#93938f;font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.14em}.level-name{font-weight:400}.spacerel-hero.application-context .level{left:auto;right:5.5%;bottom:110px;opacity:var(--single-application-opacity,1)}
.mission-copy{opacity:var(--mission-opacity,0);transform:translateY(var(--mission-offset,8px));position:absolute;bottom:0;left:0;width:100%}
.mission-copy h1{font-size:clamp(38px,3.7vw,60px);line-height:1.08;letter-spacing:-.045em;font-weight:400;margin:0 0 23px;max-width:600px}.mission-copy p{font-size:clamp(12px,1.05vw,16px);color:#aaa9a5;margin:0;line-height:1.65;letter-spacing:.015em}
.mission-copy p{opacity:var(--support-opacity,0)}
.hero-controls{position:absolute;z-index:3;left:5.5%;right:5.5%;bottom:48px;display:flex;align-items:center;gap:32px}.hero-timeline{width:min(380px,45%);height:24px;appearance:none;background:transparent;cursor:pointer;margin:0;--progress:0%}.hero-timeline::-webkit-slider-runnable-track{height:2px;background:linear-gradient(to right,#cacac6 var(--progress),#363634 var(--progress))}.hero-timeline::-moz-range-track{height:2px;background:#363634}.hero-timeline::-moz-range-progress{height:2px;background:#cacac6}.hero-timeline::-webkit-slider-thumb{appearance:none;height:10px;width:10px;border-radius:50%;background:#dfdfdc;margin-top:-4px;opacity:0;transition:opacity .2s}.hero-timeline:hover::-webkit-slider-thumb,.hero-timeline:focus-visible::-webkit-slider-thumb{opacity:1}.hero-timeline::-moz-range-thumb{width:8px;height:8px;border:0;background:#dfdfdc}
.transport{display:flex;gap:8px;margin-left:auto}.transport button{border:1px solid #393937;border-radius:50%;background:rgba(8,8,8,.45);color:#c7c7c3;cursor:pointer;display:grid;place-items:center;width:38px;height:38px;transition:background .2s,border-color .2s}.transport button:hover{background:#252524;border-color:#8a8a85}.transport svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.transport button:focus-visible,.hero-timeline:focus-visible{outline:2px solid #ededeb;outline-offset:5px}
.hero-fallback{display:none;position:absolute;left:5.5%;bottom:18%;max-width:700px;margin:0;font-size:clamp(32px,5vw,72px);line-height:1.12;z-index:2}.hero-fallback span{display:block;margin-top:24px;font-size:15px;line-height:1.6;color:#aaa9a5}.spacerel-hero.unavailable .hero-fallback{display:block}.spacerel-hero.unavailable .hero-copy,.spacerel-hero.unavailable .hero-controls,.spacerel-hero.unavailable .level,.spacerel-hero.unavailable .application-gallery{display:none}
@media(max-width:650px){.spacerel-hero{min-height:540px}.hero-brand{top:28px;font-size:15px;gap:8px}.brand-mark{font-size:27px}.hero-copy{bottom:115px}.mission-copy h1{font-size:clamp(32px,7.9vw,49px)}.mission-copy p{font-size:12px;max-width:310px}.hero-controls{bottom:35px}.hero-timeline{width:56%}.level{bottom:115px;gap:18px;font-size:14px}.spacerel-hero.application-context .level{bottom:calc(103px + var(--application-caption-rise,0px))}.application-caption{font-size:12px;line-height:1.45;letter-spacing:.015em}}
@media(prefers-reduced-motion:reduce){.mission-copy,.level{transition:none}}

.application-gallery{position:absolute;inset:0;z-index:2;pointer-events:none;visibility:hidden;opacity:var(--gallery-opacity,0)}.at-finale .application-gallery{visibility:visible}.application-caption{position:absolute;transform:translateX(-50%);text-align:center;margin:0;color:#deded9;font-size:15px;line-height:1.4;letter-spacing:.025em}
@media(max-width:650px){.application-caption{font-size:12px;line-height:1.45;letter-spacing:.015em}}

.hero-credit{position:absolute;right:5.5%;bottom:18px;z-index:3;color:#93938e;font-size:11px;font-weight:400;letter-spacing:.025em;pointer-events:none}
@media(max-width:650px){.hero-credit{bottom:12px;font-size:10px}}
