/* Concept: the site is the product. One dusk scene, a twisting tower you can turn, filter and stand inside.
   Tall condensed type reads as a skyline. The logo's moon stays the brand colour; lit windows are the accent. */
:root{
  --ink:#0F1027; --night:#17183A; --dusk:#25245A; --moon:#6A73C1; --moonlit:#AEB4F5;
  --accent:#6A73C1; --accent-btn:#626BBB; --accent-text:#AEB4F5; --coral:#F0836A; --paper:#E8EAFA; --paper-2:#D8DBF4; --text:#F3F2FB; --muted:#A9ABD2;
  --on-paper:#17183A; --on-paper-muted:#4F5183; --line:rgba(174,180,245,.2); --line-paper:rgba(23,24,58,.16);
  --display:"Karantina","IBM Plex Sans Hebrew",Impact,sans-serif;
  --body:"IBM Plex Sans Hebrew","Segoe UI",Arial,sans-serif;
  --gutter:clamp(16px,4vw,56px);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--text);font:400 17px/1.65 var(--body);overflow-x:clip}
h1,h2,h3,p,ul,dl,dd{margin:0}
ul{padding:0;list-style:none}
a{color:inherit}
button,input,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px;border-radius:4px}
.skip{position:absolute;inset-block-start:-60px;inset-inline-start:12px;z-index:60;background:var(--accent-btn);color:#fff;padding:8px 14px;border-radius:6px}
.skip:focus{inset-block-start:12px}
.d{font-family:var(--display);font-weight:700;line-height:.86;letter-spacing:.002em;text-wrap:balance}
.eyebrow{font-size:.84rem;font-weight:500;letter-spacing:.04em;color:var(--accent-text)}
.wrap{max-width:1320px;margin-inline:auto;padding-inline:max(var(--gutter),env(safe-area-inset-left,0px)) max(var(--gutter),env(safe-area-inset-right,0px))}
.btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:999px;border:1px solid transparent;font-weight:600;font-size:1rem;line-height:1.2;text-decoration:none;transition:transform .18s,background .18s,color .18s,border-color .18s}
.btn:hover{transform:translateY(-2px)}
.btn-accent{background:var(--accent-btn);color:#fff}
.btn-accent:hover{background:#7780CC}
.btn-ghost{border-color:rgba(243,242,251,.45);color:var(--text);background:rgba(15,16,39,.25)}
.btn-ghost:hover{border-color:var(--text)}
.btn-sm{padding:8px 16px;font-size:.92rem}

/* Header */
.top{position:fixed;inset:0 0 auto;z-index:40;padding-top:env(safe-area-inset-top,0px);transition:background .25s,box-shadow .25s}
.top.solid{background:rgba(15,16,39,.86);backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line)}
.top .wrap{display:flex;align-items:center;gap:clamp(12px,2.4vw,32px);height:64px}
.logo{display:block;direction:ltr;flex:none;line-height:0}
.logo svg{height:20px;width:auto}
.nav{display:flex;gap:clamp(12px,2vw,26px);font-size:.95rem;margin-inline-end:auto}
.nav a{text-decoration:none;opacity:.86}
.nav a:hover{opacity:1;color:var(--accent-text)}
.lang{background:none;border:1px solid var(--line);border-radius:6px;padding:3px 9px;font-size:.84rem;font-weight:500}
.lang:hover{border-color:var(--text)}
.top .tel{font-size:.92rem;text-decoration:none;direction:ltr;white-space:nowrap;opacity:.86}
.top .tel:hover{opacity:1;color:var(--accent-text)}

/* Scroll show */
.show{position:relative;background:var(--ink)}
.stage{position:sticky;top:0;height:100vh;height:100svh;margin-bottom:-100vh;margin-bottom:-100svh;overflow:hidden;z-index:0;
  background:linear-gradient(#27477F 0%,#7E93B8 42%,#E8BE97 64%,#0F5A70 65%,#0A3A52 100%)}
.poster,.poster img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover}
#gl{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:pan-y;cursor:grab;opacity:0;transition:opacity .9s ease}
.stage.ready #gl{opacity:1}
.stage:not(.ready) .pins,.stage:not(.ready) .hud,.stage:not(.ready) .rail{opacity:0}
.pins,.hud,.rail{transition:opacity .6s ease}
#gl.drag{cursor:grabbing}
#gl.point{cursor:pointer}
.scrim{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,rgba(15,16,39,.68),transparent 20%),linear-gradient(to top,rgba(15,16,39,.62),transparent 20%)}
.pins{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.pin{position:absolute;inset-block-start:0;left:0;will-change:transform;white-space:nowrap;font-size:.82rem;line-height:1.25}
.pin b{display:block;font-weight:600}
.pin span{color:var(--accent-text);font-size:.76rem}
.pin .tag{position:absolute;bottom:0;left:0;transform:translateX(-50%);padding:5px 10px 6px;border-radius:7px;background:rgba(15,16,39,.84);border:1px solid var(--line);text-align:center;margin-bottom:24px}
.pin .tag::after{content:"";position:absolute;top:100%;left:50%;width:1px;height:24px;background:linear-gradient(var(--moonlit),transparent)}
.pin.cmp .tag{background:rgba(15,16,39,.62);border:0;margin:0;padding:0 7px 1px;border-radius:5px;font-size:.72rem;color:#fff;transform:translate(-50%,50%)}
.pin.cmp .tag::after{display:none}
.hud{position:absolute;inset-block-end:max(18px,env(safe-area-inset-bottom,0px));inset-inline-end:var(--gutter);display:flex;align-items:baseline;gap:10px;pointer-events:none}
.hud output{font:700 clamp(46px,6vw,84px)/.8 var(--display);font-variant-numeric:tabular-nums;color:var(--text);min-width:2.1ch;direction:ltr;unicode-bidi:isolate}
.hud small{font-size:.74rem;color:var(--muted);letter-spacing:.06em}
.rail{position:absolute;inset-block-end:max(22px,env(safe-area-inset-bottom,0px));inset-inline-end:calc(var(--gutter) + 170px);display:flex;gap:4px;z-index:3}
.rail button{background:none;border:0;padding:6px 10px 8px;font-size:.84rem;color:#E0E0F2;border-block-end:2px solid var(--line)}
.rail button:hover{color:var(--text)}
.rail button.on{color:var(--text);border-block-end-color:var(--accent)}
.demo-tag{position:absolute;inset-block-start:76px;inset-inline-end:var(--gutter);font-size:.76rem;color:var(--muted);background:rgba(15,16,39,.5);padding:3px 10px;border-radius:99px;pointer-events:none}

.beat{position:relative;z-index:2;display:flex;pointer-events:none;min-height:175vh;min-height:175svh;padding-inline:max(var(--gutter),env(safe-area-inset-left,0px)) max(var(--gutter),env(safe-area-inset-right,0px))}
.hero{min-height:125vh;min-height:125svh;align-items:flex-start;padding-block-start:clamp(104px,15vh,160px)}
.hero-copy{width:min(760px,100%);pointer-events:auto}
.hero h1{font-size:clamp(72px,10vw,168px);margin-block:14px 22px}
.hero h1 em{font-style:normal;color:var(--accent);text-shadow:0 2px 26px rgba(15,16,39,.65)}
.hero{overflow-x:clip}
.hero-copy{position:relative}
.hero-copy::before{content:"";position:absolute;inset:-140px -170px -130px;z-index:-1;pointer-events:none;background:radial-gradient(closest-side,rgba(15,16,39,.8),rgba(15,16,39,.66) 48%,rgba(15,16,39,.3) 74%,rgba(15,16,39,.08) 90%,transparent)}
.hero p{max-width:50ch;font-size:clamp(1rem,1.25vw,1.16rem)}
.hero .cta{display:flex;flex-wrap:wrap;gap:12px;margin-block-start:26px}
.hint{display:inline-flex;gap:8px;align-items:center;margin-block-start:20px;font-size:.86rem;color:#DCDCF0}
.hint i{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:beat 1.8s ease-in-out infinite}
@keyframes beat{50%{opacity:.25}}

.panel{position:sticky;align-self:flex-start;top:max(80px,calc(50vh - 260px));width:min(440px,100%);max-height:calc(100vh - 150px);overflow:auto;pointer-events:auto;padding:24px;border-radius:14px;background:rgba(15,16,39,.84);backdrop-filter:blur(10px);border:1px solid var(--line)}
.panel h2{font-size:clamp(46px,5vw,76px);margin-block:6px 12px}
.panel p{font-size:.98rem;color:#DCDCF0}
.ticks{display:grid;gap:6px;margin-block-start:14px;font-size:.93rem}
.ticks li{display:flex;gap:10px;align-items:baseline}
.ticks li::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--moon);translate:0 -1px}

/* Unit picker */
.wide{width:min(600px,100%)}
.picker{display:grid;grid-template-columns:112px minmax(0,1fr);gap:18px;margin-block-start:14px}
.plan{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;align-content:start}
.plan button{height:9px;padding:0;border:0;border-radius:1.5px;background:#2B2D5E;transition:opacity .2s,background .2s}
.plan button.av{background:var(--accent)}
.plan button.re{background:#AEB4F5}
.plan button.off{opacity:.16}
.plan button.sel{background:#fff;box-shadow:0 0 0 1.5px #fff}
.plan button:hover{outline:1px solid #fff}
.legend{display:flex;flex-wrap:wrap;gap:4px 12px;margin-block-start:8px;font-size:.72rem;color:var(--muted)}
.legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-inline-end:5px}
.field{display:grid;gap:6px;font-size:.84rem;color:var(--muted)}
.chips{display:flex;flex-wrap:wrap;gap:5px}
.chip{background:none;border:1px solid var(--line);border-radius:99px;padding:3px 11px;font-size:.84rem;color:var(--text)}
.chip:hover{border-color:var(--moonlit)}
.chip[aria-pressed=true]{background:var(--moonlit);border-color:var(--moonlit);color:var(--ink);font-weight:600}
.controls{display:grid;gap:11px;align-content:start;min-width:0}
input[type=range]{width:100%;accent-color:var(--accent);margin:0}
.check{display:flex;align-items:center;gap:8px;font-size:.88rem;color:var(--text)}
.check input{accent-color:var(--accent);width:16px;height:16px;margin:0}
.count{font-size:.88rem;color:var(--muted)}
.count b{font:700 1.7rem/1 var(--display);color:var(--accent-text);font-variant-numeric:tabular-nums;margin-inline-end:4px}
.card{margin-block-start:14px;padding-block-start:12px;border-block-start:1px solid var(--line)}
.card h3{font:700 2rem/1 var(--display)}
.card dl{display:grid;grid-template-columns:repeat(4,auto);gap:2px 16px;justify-content:start;margin-block:8px 12px;font-size:.92rem}
.card dt{grid-row:1;font-size:.72rem;color:var(--muted)}
.card dd{grid-row:2;font-weight:500;white-space:nowrap}
.acts{display:flex;flex-wrap:wrap;gap:8px}
.toast{min-height:1.4em;margin-block-start:6px;font-size:.82rem;color:var(--accent-text)}

/* View from the floor */
.floor-read{display:flex;align-items:baseline;gap:8px;margin-block:14px 4px;font-size:.9rem;color:var(--muted)}
.floor-read b{font:700 3.2rem/.9 var(--display);color:var(--accent-text);font-variant-numeric:tabular-nums}
.dirs{display:flex;gap:6px;margin-block-start:12px}

/* Paper: one link */
.paper{background:var(--paper);color:var(--on-paper);position:relative;z-index:3}
.paper .eyebrow{color:#7A3FA0}
.one{padding-block:clamp(64px,10vw,130px)}
.one h2{font-size:clamp(68px,10.5vw,170px);max-width:12ch}
.one-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(32px,6vw,90px);align-items:center}
.one .lead{max-width:52ch;margin-block-start:22px;color:var(--on-paper-muted);font-size:1.1rem}
.files{display:flex;flex-wrap:wrap;gap:8px;margin-block-start:26px;direction:ltr;justify-content:flex-end}
[dir=ltr] .files{justify-content:flex-start}
.files li{font-size:.82rem;padding:4px 10px;border-radius:5px;background:var(--paper-2);color:var(--on-paper-muted);text-decoration:line-through;text-decoration-color:var(--coral);text-decoration-thickness:2px}
.shares{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-block-start:18px;font-size:.92rem;color:var(--on-paper-muted)}
.shares b{color:var(--on-paper);font-weight:600}
.phone{justify-self:center;width:min(320px,100%);padding:10px;border-radius:34px;background:var(--on-paper);box-shadow:0 40px 70px -30px rgba(23,24,58,.65)}
.screen{border-radius:25px;overflow:hidden;background:var(--night);color:var(--text)}
.url{display:flex;gap:7px;align-items:center;justify-content:center;padding:12px;font-size:.76rem;color:var(--muted);direction:ltr}
.url i{width:7px;height:7px;border-radius:50%;background:var(--moon)}
.ptabs{display:flex;overflow-x:auto;gap:2px;padding-inline:10px;scrollbar-width:none}
.ptabs button{flex:none;background:none;border:0;border-block-end:2px solid transparent;padding:6px 7px;font-size:.78rem;color:var(--muted)}
.ptabs button[aria-selected=true]{color:var(--text);border-block-end-color:var(--accent)}
.pview{height:340px;padding:14px;font-size:.84rem;overflow:hidden}
.pview svg{width:100%;height:auto;display:block}
.pview table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.pview td{padding:7px 0;border-block-end:1px solid var(--line)}
.pview td:last-child{text-align:end;color:var(--accent-text)}
.gal{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1.12fr 1fr;gap:6px;height:calc(100% - 26px)}
.gal figure{position:relative;margin:0;min-height:0;min-width:0;overflow:hidden;border-radius:7px;background:var(--dusk)}
.gal figure:first-child{grid-column:span 2}
.gal img{display:block;width:100%;height:100%;object-fit:cover}
.gal figcaption{position:absolute;inset:auto 0 0;padding:14px 8px 5px;font-size:.7rem;line-height:1.25;color:#fff;background:linear-gradient(transparent,rgba(15,16,39,.82))}
.gal i{border-radius:7px;display:block}
.gal i:first-child{grid-column:span 2}
.mini{display:grid;gap:8px}
.mini span{display:block;padding:8px 10px;border:1px solid var(--line);border-radius:7px;color:var(--muted)}
.mini strong{display:block;text-align:center;background:var(--accent-btn);color:#fff;border-radius:99px;padding:8px}
.ex{display:block;margin-block-start:8px;font-size:.72rem;color:var(--muted)}

/* Services */
.svc{padding-block:clamp(64px,9vw,120px);background:var(--ink);position:relative;z-index:3}
.svc>.wrap>h2{font-size:clamp(68px,10vw,160px)}
.svc-list{margin-block-start:clamp(28px,4vw,52px);border-block-start:1px solid var(--line)}
.svc-list li{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(14px,4vw,64px);align-items:baseline;padding-block:clamp(20px,3vw,36px);border-block-end:1px solid var(--line);transition:color .2s}
.svc-list h3{font:700 clamp(48px,6.4vw,104px)/.9 var(--display);transition:color .2s}
.svc-list li:hover h3{color:var(--accent-text)}
.svc-list p{color:#CFCFE8;max-width:54ch}

/* Tools */
.tools{background:linear-gradient(var(--ink),var(--dusk));padding-block-end:clamp(64px,9vw,120px);position:relative;z-index:3}
.tools-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:clamp(28px,5vw,80px);align-items:start}
.always .clock{display:block;font:700 clamp(100px,15vw,230px)/.82 var(--display);color:var(--accent);font-variant-numeric:tabular-nums;direction:ltr;text-align:start}
.always h2{font-size:clamp(44px,5vw,76px);margin-block:10px 10px}
.always p{color:#CFCFE8;max-width:40ch}
.tlist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(22px,3vw,40px) clamp(20px,3vw,44px)}
.tlist h3{font-size:1.1rem;font-weight:600;margin-block-end:4px}
.tlist p{font-size:.96rem;color:#CFCFE8}

/* About */
.about{padding-block:clamp(64px,10vw,130px)}
.quote{font:700 clamp(58px,8.6vw,136px)/.9 var(--display);max-width:17ch;text-wrap:balance}
.quote em{font-style:normal;color:#5A3FB0}
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,3vw,40px);margin-block:clamp(36px,5vw,70px);padding-block:clamp(16px,2vw,26px);border-block:1px solid var(--line-paper)}
.stats dt{order:2;font-size:.98rem;color:var(--on-paper-muted)}
.stats div{display:flex;flex-direction:column}
.stats dd{font:700 clamp(84px,14vw,220px)/.9 var(--display);font-variant-numeric:tabular-nums;direction:ltr;text-align:start}
[dir=rtl] .stats dd{text-align:right}
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,6vw,90px)}
.about-grid h3{font:700 clamp(38px,3.8vw,56px)/1 var(--display);margin-block-end:10px}
.about-grid p{color:var(--on-paper-muted)}
.steps{display:grid;gap:12px;margin-block-start:16px;counter-reset:s}
.steps li{display:flex;gap:12px;align-items:baseline;counter-increment:s;font-weight:500}
.steps li::before{content:counter(s);font:700 1.7rem/1 var(--display);color:#5A3FB0;min-width:1ch}

/* FAQ */
.faq{background:var(--paper-2);color:var(--on-paper);padding-block:clamp(56px,8vw,110px);position:relative;z-index:3}
.faq-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(24px,5vw,70px)}
.faq h2{font-size:clamp(60px,7.4vw,118px)}
details{border-block-end:1px solid var(--line-paper)}
summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px;padding-block:15px;font-weight:600;font-size:1.06rem}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";font:700 1.7rem/.8 var(--display);transition:rotate .2s;color:#5A3FB0}
details[open] summary::after{rotate:45deg}
details p{padding-block-end:18px;max-width:62ch;color:var(--on-paper-muted)}

/* Contact: back to the horizon */
.contact{position:relative;z-index:3;padding-block:clamp(64px,9vw,120px) clamp(36px,5vw,60px);background:linear-gradient(#0C0D26,#25245A 50%,#3A3F86 82%,#4E56A6)}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(32px,6vw,90px);align-items:start}
.contact h2{font-size:clamp(84px,13vw,210px)}
.contact h2 em{font-style:normal;color:var(--accent)}
.contact .lead{margin-block-start:18px;max-width:46ch;font-size:1.1rem}
.details{display:grid;gap:12px;margin-block-start:30px}
.details dt{font-size:.78rem;color:#D8D6F0}
.details a{text-decoration:none}
.details a:hover{color:var(--accent-text)}
.details dd{font-size:1.14rem;font-weight:500}
.social{display:flex;gap:16px;margin-block-start:18px;font-size:.96rem}
form{display:grid;gap:12px;padding:clamp(18px,2.4vw,30px);border-radius:14px;background:rgba(15,16,39,.82);border:1px solid var(--line)}
form label{display:grid;gap:4px;font-size:.84rem;color:var(--muted)}
form input,form textarea{width:100%;padding:10px 12px;border-radius:7px;border:1px solid var(--line);background:rgba(232,234,250,.06);color:var(--text);font-size:1rem}
form input:focus,form textarea:focus{outline:2px solid var(--accent-text);outline-offset:0;border-color:transparent}
form .two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
form .btn{width:100%;border:0}
#formMsg{min-height:1.4em;font-size:.88rem;color:var(--accent-text)}
footer{position:relative;z-index:3;background:var(--ink);padding-block:24px;font-size:.88rem;color:var(--muted)}
footer a:hover{color:var(--accent-text)}

/* Without WebGL the static sky stays and the picker keeps working on its own */
.no-gl .hud,.no-gl .hint,.no-gl .only-gl{display:none}

@media (max-width:1040px){
  .nav,.top .tel{display:none}
  .lang{margin-inline-start:auto}
}
@media (max-width:820px){
  body{font-size:16px}
  .one-grid,.contact-grid,.tools-grid,.about-grid,.faq-grid{grid-template-columns:minmax(0,1fr)}
  .svc-list li{grid-template-columns:minmax(0,1fr)}
  .tlist{grid-template-columns:minmax(0,1fr)}
  .beat:not(.hero){align-items:flex-end;min-height:190svh}
  .panel{top:auto;bottom:max(10px,env(safe-area-inset-bottom,0px));align-self:flex-end;padding:14px 16px;max-height:54svh;width:100%}
  .panel h2{font-size:42px;margin-block:2px 6px}
  .panel p{font-size:.9rem;line-height:1.5}
  .ticks{display:none}
  .picker{grid-template-columns:minmax(0,1fr);margin-block-start:8px}
  .plan-col{display:none}
  .rail,.hud,.demo-tag{display:none}
  .hero{padding-block-start:88px}
  .hero h1{font-size:clamp(64px,17vw,130px);margin-block:8px 12px}
  .panel .only-gl:is(p){display:none}
  .wide .controls{gap:8px}
  .wide .controls label.field{display:none}
  .card{margin-block-start:6px;padding-block-start:8px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* ---------- Multi-page site ---------- */
a.lang{text-decoration:none;line-height:1.5}
.nav a[aria-current=page]{opacity:1;color:var(--accent-text)}
.menu-btn{display:none;background:none;border:1px solid var(--line);border-radius:8px;width:40px;height:36px;padding:0;flex:none;align-items:center;justify-content:center;flex-direction:column;gap:4px}
.menu-btn i{display:block;width:18px;height:2px;background:var(--text);border-radius:2px}
.more{margin-block-start:clamp(24px,3vw,40px)}
.btn-dark{background:var(--on-paper);color:#fff}
.btn-dark:hover{background:#2A2B5E}
.tmore{align-self:end}
figure{margin:0}
figure img{display:block;width:100%;height:auto;border-radius:18px;background:var(--night)}
figcaption{font-size:.76rem;color:var(--muted);margin-block-start:8px}
.paper figcaption{color:var(--on-paper-muted)}

.crumbs{padding-block:calc(64px + 18px) 0;background:var(--ink)}
.crumbs ol{list-style:none;margin:0 auto;max-width:1320px;padding-inline:var(--gutter);display:flex;flex-wrap:wrap;gap:4px 8px;font-size:.84rem;color:var(--muted)}
.crumbs li+li::before{content:"/";margin-inline-end:8px;opacity:.6}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--accent-text)}
.crumbs span{color:var(--text)}

.p-hero{background:linear-gradient(var(--ink),var(--night));padding-block:clamp(26px,4vw,56px) clamp(48px,6vw,88px)}
.p-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(24px,5vw,72px);align-items:center}
.p-hero h1{font-size:clamp(66px,8.4vw,136px);margin-block:12px 22px}
.p-hero .lead{font-size:1.1rem;max-width:58ch;margin-block-end:16px;color:var(--paper-2)}
.p-hero .btn{margin-block-start:10px}
.p-hero-text{padding-block-start:clamp(100px,12vw,150px)}
.crumbs+.p-hero-text{padding-block-start:clamp(20px,3vw,40px)}
.band{padding-block:clamp(56px,8vw,110px)}
.band h2.d{font-size:clamp(50px,6.2vw,96px)}
.lead-paper{font-size:1.1rem;max-width:62ch;margin-block:18px 0;color:var(--on-paper-muted)}
.paper.band .about{padding-block:0}
.paper.band .about-grid h2{font-size:1.3rem;margin-block-end:10px}

.intro{background:var(--ink);position:relative;z-index:3;padding-block:clamp(56px,8vw,110px)}
.intro-head{max-width:880px}
.intro-head h2{font-size:clamp(54px,7vw,110px);margin-block:12px 22px}
.intro-head .lead{font-size:1.12rem;margin-block-end:14px}
.intro-head p:not(.lead){color:var(--muted)}
.feat{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,2vw,26px);margin-block-start:clamp(30px,4vw,56px)}
.feat li{border-block-start:2px solid var(--moon);padding-block-start:14px}
.feat h3{font-size:1.14rem;font-weight:600;margin-block-end:8px}
.feat p{font-size:.95rem;color:var(--muted)}
.feat-paper{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.feat-paper p{color:var(--on-paper-muted)}
.intro-tour{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(24px,5vw,64px);align-items:center;margin-block-start:clamp(44px,6vw,80px)}
.intro-tour h3{font-size:clamp(38px,4vw,60px);margin-block-end:10px}
.intro-tour p{color:var(--paper-2);margin-block-end:26px}

.modules{background:var(--night)}
.module{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(24px,5vw,72px);align-items:center}
.module+.module{margin-block-start:clamp(56px,8vw,110px)}
.module:nth-child(even) figure{order:2}
.module h2.d{font-size:clamp(46px,5.2vw,82px);margin-block-end:16px}
.module p{color:var(--paper-2);margin-block-end:12px}
.module .ticks{margin-block-start:14px;display:grid!important;gap:8px}

.team{background:var(--ink)}
.team .lead{max-width:62ch;margin-block:16px clamp(28px,4vw,48px);color:var(--paper-2);font-size:1.08rem}
.founders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,24px)}
.founders>li{display:flex;flex-direction:column;gap:18px;padding:clamp(22px,3vw,38px);border:1px solid var(--line);border-radius:22px;background:linear-gradient(160deg,var(--dusk),var(--night))}
.init{flex:none;width:68px;height:68px;border-radius:50%;background:var(--moon);color:#fff;display:grid;place-items:center;font-weight:600;font-size:1.25rem;direction:ltr}
.founders h3{font:700 clamp(46px,4.6vw,70px)/.95 var(--display)}
.f-role{display:block;font-size:.9rem;color:var(--accent-text);margin-block:8px 16px}
.founders p{color:var(--paper-2);margin-block-end:12px}
.f-body{display:flex;flex-direction:column;flex:1}
.f-tags{display:flex;flex-wrap:wrap;gap:8px;margin-block-start:auto;padding-block-start:10px}
.f-tags li{font-size:.84rem;padding:4px 12px;border:1px solid var(--line);border-radius:99px;color:var(--accent-text)}
.f-closing{font-size:clamp(40px,4.8vw,74px);line-height:1;max-width:24ch;margin-block-start:clamp(36px,5vw,64px);margin-inline:auto;text-align:center}

.cta-band{background:linear-gradient(var(--dusk),#3A3F86);text-align:center;padding-block:clamp(56px,7vw,96px)}
.cta-band h2{font-size:clamp(58px,7vw,110px);margin-block-end:14px}
.cta-band p{max-width:70ch;margin-inline:auto;margin-block-end:24px;color:var(--paper)}
.crumbs+.contact{padding-block-start:clamp(24px,4vw,48px);background:linear-gradient(var(--ink),var(--dusk) 60%,#3A3F86)}
.contact h1{font-size:clamp(70px,9vw,150px)}
.contact h1 em{font-style:normal;color:var(--accent)}

.latest{background:var(--paper);color:var(--on-paper);position:relative;z-index:3;padding-block:clamp(56px,8vw,110px)}
.latest .eyebrow{color:#7A3FA0}
.latest h2{font-size:clamp(54px,7vw,110px);margin-block:10px clamp(24px,3vw,40px)}
.a-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px);margin-block-start:clamp(20px,3vw,36px)}
.a-card[hidden]{display:none}
.a-card a{display:flex;flex-direction:column;height:100%;background:#fff;color:var(--on-paper);border-radius:18px;overflow:hidden;text-decoration:none;box-shadow:0 1px 0 var(--line-paper);transition:transform .2s,box-shadow .2s}
.a-card a:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(23,24,58,.14)}
.a-card img{border-radius:0;aspect-ratio:16/9;object-fit:cover}
.a-card a>div{padding:16px 18px 20px}
.a-cat{display:inline-block;font-size:.76rem;font-weight:600;color:#fff;background:var(--accent-btn);border-radius:99px;padding:2px 10px;margin-block-end:8px}
.a-card h3{font-size:1.12rem;font-weight:600;line-height:1.35;margin-block-end:8px}
.a-card p{font-size:.92rem;line-height:1.55;color:var(--on-paper-muted)}
.a-filter{display:flex;flex-wrap:wrap;gap:8px}
.a-filter button{background:#fff;border:1px solid var(--line-paper);color:var(--on-paper);border-radius:99px;padding:6px 16px;font-size:.92rem}
.a-filter button.on{background:var(--accent-btn);border-color:transparent;color:#fff}

.post{background:var(--paper);color:var(--on-paper)}
.post-head{background:none;padding-block:clamp(20px,3vw,36px) clamp(18px,2.5vw,30px);max-width:980px}
.crumbs:has(+.post){padding-block-end:18px}
.post-head h1{font-size:clamp(52px,6.6vw,104px);margin-block:6px 16px}
.post-head .lead{font-size:1.14rem;color:var(--on-paper-muted);max-width:66ch}
.post-meta{font-size:.86rem;color:var(--on-paper-muted);margin-block-start:12px}
.post-cover{max-width:980px}
.post-cover figcaption{color:var(--on-paper-muted)}
.post-body{max-width:calc(720px + 2*var(--gutter));margin-inline:auto;padding:clamp(24px,4vw,44px) var(--gutter) clamp(56px,7vw,90px);font-size:1.06rem;line-height:1.8}
.post-body h2{font-size:1.62rem;font-weight:600;line-height:1.3;margin-block:1.8em .6em}
.post-body h3{font-size:1.2rem;font-weight:600;margin-block:1.4em .4em}
.post-body p{margin-block-end:1em}
.post-body ul,.post-body ol{list-style:revert;padding-inline-start:1.4em;margin-block:0 1em}
.post-body li{margin-block-end:.4em}
.post-body a{color:#3F47A8;text-underline-offset:3px}
.post-body blockquote{margin:1.2em 0;padding:12px 18px;border-inline-start:4px solid var(--moon);background:#fff;border-radius:10px}
.post-note{font-size:.9rem;background:#fff;border-radius:10px;padding:12px 16px;color:var(--on-paper-muted)}
.sources{border-block-start:1px solid var(--line-paper);margin-block-start:2em;padding-block-start:.6em;font-size:.9rem}
.sources h2{font-size:1.1rem;margin-block:.6em}
.sources li{overflow-wrap:anywhere}

.site-foot{position:relative;z-index:3;background:var(--ink);padding-block:clamp(40px,5vw,64px) 22px;font-size:.92rem;color:var(--muted);border-block-start:1px solid var(--line)}
.foot-grid{display:grid;grid-template-columns:1.5fr repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,48px)}
.foot-grid h2{font-size:.95rem;font-weight:600;color:var(--text);margin-block-end:10px}
.foot-grid nav a,.foot-grid>div>a:not(.logo),.foot-grid>div>span{display:block;padding-block:3px;text-decoration:none;width:fit-content}
.foot-grid a:hover{color:var(--accent-text)}
.foot-grid .logo{margin-block-end:12px;color:var(--text)}
.foot-end{margin-block-start:26px;font-size:.84rem}

@media (max-width:1040px){
  .menu-btn{display:inline-flex}
  .top .wrap{gap:10px}
  .top .logo{margin-inline-end:auto}
  .nav{position:absolute;inset-inline:0;top:64px;margin:0;flex-direction:column;gap:0;padding:8px var(--gutter) 16px;background:#0F1027;box-shadow:0 12px 24px rgba(0,0,0,.35);font-size:1.05rem}
  .nav:not(.open){display:none}
  .nav.open{display:flex}
  .nav a{padding-block:10px;border-block-end:1px solid var(--line)}
}
@media (max-width:820px){
  .p-hero-grid,.intro-tour,.module{grid-template-columns:minmax(0,1fr)}
  .module:nth-child(even) figure{order:0}
  .feat,.a-grid,.founders{grid-template-columns:minmax(0,1fr)}
  .foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .foot-grid>div:first-child{grid-column:1/-1}
}
@media (max-width:480px){
  .top .btn-sm{padding:7px 12px;font-size:.84rem}
}
.hp{position:absolute;inset-inline-start:-9999px;width:1px;height:1px;overflow:hidden}
