@font-face{font-family:Inter;src:url('assets/inter-latin.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:Inter;src:url('assets/inter-latin-ext.woff2') format('woff2');font-weight:100 900;font-display:swap;unicode-range:U+0100-024F,U+1E00-1EFF}
:root{font-family:Inter,sans-serif;font-synthesis:none;color:#000;background:#f8fbff}
.reading-section{position:relative;z-index:1;height:175svh;background:#fff}
.story--horyzont + .reading-section{margin-top:-18svh;background:transparent}
.story--horyzont + .reading-section:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(to bottom,rgba(255,255,255,0) 0,#fff 18svh,#fff 100%)}
.reading-inner{position:sticky;top:0;min-height:80svh;display:flex;align-items:center;padding:64px 7% 96px}
.reading-copy{width:100%;max-width:1050px;margin:0 auto;font-size:clamp(28px,3.05vw,44px);line-height:1.38;letter-spacing:-.035em;font-weight:400;color:#929292}
.reading-copy p{margin:0 0 26px}.reading-copy p:last-child{margin-bottom:0}.reading-word{color:#929292;transition:color 100ms linear}
@media(max-width:800px){.reading-section{height:185svh}.reading-inner{min-height:80svh;padding:56px 6% 80px}.reading-copy{font-size:28px;line-height:1.42;letter-spacing:-.035em}.reading-copy p{margin-bottom:23px}}
@media(prefers-reduced-motion:reduce){.reading-section{height:auto}.reading-inner{position:relative;min-height:80svh}.reading-word{color:#000!important}}
*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #759fff;outline-offset:5px}
.hero{height:100svh;min-height:640px;position:relative;overflow:hidden;isolation:isolate;background:#fafcff}
.story--horyzont{height:calc(100svh + clamp(160px,25svh,280px))}.story--horyzont .hero{position:sticky;top:0}.horizon-content{will-change:transform,opacity}
.horizon-content .eyebrow{animation:content-enter 650ms ease-out both}.horizon-content h1{animation:content-enter 750ms 80ms ease-out both}.horizon-content .description{animation:content-enter 750ms 150ms ease-out both}.horizon-content .actions{animation:content-enter 750ms 220ms ease-out both}
@keyframes content-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
header{position:absolute;inset:0 0 auto;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:30px 6.2%}
.brand{font-size:23px;letter-spacing:.045em;font-weight:450;line-height:1}.brand b{font-weight:600}nav{display:flex;gap:32px;font-size:14px}nav button{background:none;border:0;padding:4px 0;color:#090b10;font-weight:400}
.scene{position:absolute;inset:0;z-index:-1;pointer-events:none}.horizon-sky{position:absolute;inset:0;background:#fff;animation:atmosphere-in 1300ms ease-out both}.halo{display:none}.sphere-canvas{position:absolute;inset:0;width:100%;height:100%}
.horizon-content{position:absolute;left:5%;top:19.5%;width:90%;text-align:center}
.eyebrow{font-size:14px;letter-spacing:.17em;line-height:1.4;font-weight:500;color:#626b8b;margin:0 0 24px}
h1{font-size:clamp(50px,calc(3.3vw + 12px),66px);font-weight:400;letter-spacing:-.05em;line-height:1.16;color:#000;margin:0}
.description{font-size:18px;line-height:28px;font-weight:350;color:#666b75;margin:24px auto 0;max-width:650px}
.actions{display:flex;justify-content:center;gap:12px;margin-top:27px}.cta{height:48px;min-width:174px;border-radius:999px;padding:0 25px;display:inline-flex;align-items:center;justify-content:center;gap:13px;border:1px solid transparent;font-size:15px;font-weight:450;line-height:1;white-space:nowrap;transition:background .18s,transform .18s}
.cta:hover{transform:translateY(-1px)}.primary{background:#123ca6;color:white}.primary:hover{background:#0e328e}.primary span{font-size:18px;line-height:1}.secondary{background:#ffffff96;border-color:#adb6ce;color:#111}.secondary:hover{background:#fff}
.prism header{padding:30px 4.8%}.prism .horizon-sky{display:none}.prism-content{position:absolute;left:4.8%;top:29.4%;width:38%;max-width:580px}.prism-content .eyebrow{margin-bottom:25px;letter-spacing:.14em}.prism-content h1{font-weight:350;font-size:clamp(50px,calc(3.6vw + 12px),70px);line-height:1.13}.prism-content .description{margin:24px 0 0;max-width:470px}.prism-content .actions{justify-content:flex-start;margin-top:29px}
.prism-art{position:absolute;inset:0}.pane{position:absolute;inset:0;background:url('assets/pryzmat-background.png') center/100% 100% no-repeat;clip-path:inset(0 var(--right) 0 var(--left));animation:pane-in 850ms cubic-bezier(.22,1,.36,1) both;animation-delay:calc(var(--i)*65ms)}
.tag{position:absolute;color:#fff;font-size:15px;font-weight:400;line-height:1.4;display:flex;align-items:center;gap:12px;white-space:nowrap;animation:tag-in 450ms ease both;animation-delay:950ms}.tag:before{content:"";width:28px;height:1px;background:#fff}.t1{left:80.5%;top:23%}.t2{left:54.5%;top:64.5%}.t3{left:83%;top:68.5%}
@keyframes atmosphere-in{from{opacity:.45;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}
@keyframes horizon-breathe{0%,100%{transform:scale(1) translateY(0);filter:saturate(1.35)}50%{transform:scale(1.035) translateY(-.6%);filter:saturate(1.5)}}
@keyframes pane-in{from{opacity:0;transform:translateX(8px)}to{opacity:1;transform:none}}@keyframes tag-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.review{position:fixed;bottom:12px;left:50%;transform:translateX(-50%);z-index:10;display:flex;align-items:center;gap:5px;padding:5px;background:#ffffffdf;backdrop-filter:blur(12px);border:1px solid #dfe5ef;border-radius:12px;box-shadow:0 3px 15px #18366808;font-size:14px}.review button{background:transparent;border:1px solid transparent;padding:7px 11px;border-radius:7px;color:#586174;white-space:nowrap}.review button[aria-pressed=true]{background:#edf3ff;border-color:#c8d5ed;color:#123ca6}.review .replay{border-left:1px solid #e1e6f0;border-radius:0}
dialog{border:1px solid #dae2ef;border-radius:20px;padding:32px;max-width:min(460px,90vw);color:#10234c}dialog::backdrop{background:#07112655;backdrop-filter:blur(8px)}dialog h2{font-size:24px;font-weight:450;letter-spacing:-.04em}dialog p{font-size:16px;line-height:1.65;color:#666b75}dialog .cta{margin-top:12px}.modal-close{float:right;background:none;border:0;font-size:24px;color:#667}
@media(min-width:801px) and (max-height:680px){.horizon-content{top:21%}.prism-content{top:25%}.hero{min-height:600px}}
@media(max-width:1000px) and (min-width:801px){.prism-content{width:41%}.prism-content h1{font-size:48px}.prism-content .description{font-size:18px}.prism-content .actions{gap:8px}.prism-content .cta{min-width:0;padding-inline:18px;font-size:14px}.tag{font-size:14px;gap:8px}.tag:before{width:20px}.t1{left:78%}.t3{left:80%}}
@media(max-width:800px){header,.prism header{padding:27px 6%}.brand{font-size:19px}nav{gap:18px;font-size:14px}nav button:first-child{display:none}.hero{height:auto;min-height:100svh}.horizon-content{position:relative;top:auto;left:auto;width:88%;margin:0 auto;padding:155px 0 310px}.horizon-sky{background-size:auto 100%;background-position:center bottom}.eyebrow{font-size:14px;margin-bottom:22px}h1{font-size:48px;line-height:1.15}.description{font-size:18px;line-height:28px;margin-top:24px}.actions{flex-wrap:wrap;gap:10px}.cta{min-width:0;padding-inline:21px;font-size:14px}.prism-content{position:relative;top:auto;left:auto;width:88%;max-width:none;margin:0 6%;padding:145px 0 430px}.prism-content h1{font-size:50px}.prism-content h1 br:nth-child(2){display:none}.prism-content .description{max-width:470px}.prism-content .actions{margin-top:27px}.prism-art{top:auto;bottom:0;height:440px;left:-7%;width:114%}.pane{background-size:200% 100%;background-position:right center}.tag{font-size:14px;gap:10px}.tag:before{width:22px}.t1{left:54%;top:30%}.t2{left:20%;top:64%}.t3{left:65%;top:76%}.review{bottom:10px;max-width:96%;font-size:14px}.review button{padding:8px 9px}.prism-content .description br{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Keep all hero copy on white, with the horizon below the actions. */
.horizon-content{top:17%}
@media(min-width:801px) and (max-height:680px){.horizon-content{top:16%}}
@media(max-width:800px){.horizon-content{top:auto;padding-top:130px}}
