/* Valentin Marchetti — monochrome pass
   Warm white paper, near-black ink, one grotesque. No serif, no gold,
   no dark slabs. Surfaces are #f7f5f4; the only dark areas are text and
   the single primary button. */

@font-face{
  font-family:"Inter";
  font-weight:100 900;
  font-style:normal;
  font-display:swap;
  src:url(/fonts/inter-latin-var.woff2) format("woff2");
}

:root{
  color-scheme:light;
  --bg:#ffffff;
  --surface:#f7f5f4;
  --surface-2:#efedeb;
  --ink:#0d0900;
  --ink-2:#454545;
  --mute:#6f6f6f;
  --hair:#dadada;
  --hair-2:#ececec;
  --err:#b50000;
  --sans:Inter,"Helvetica Neue",Arial,"Noto Sans SC","Noto Sans JP","Noto Sans Arabic",sans-serif;
  --mono:ui-monospace,"SFMono-Regular",Menlo,Consolas,"Liberation Mono","Courier New",monospace;
  --max:1440px;
  --gutter:clamp(1.25rem,4vw,3.5rem);
  --sec:clamp(4rem,8vw,7rem);
  --ease:cubic-bezier(.22,.61,.36,1);
  --out:cubic-bezier(.16,1,.3,1);
}

*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-padding-top:4.5rem}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{-webkit-tap-highlight-color:transparent;
  margin:0;background:var(--bg);color:var(--ink);
  font:400 1rem/1.6 var(--sans);
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
h1,h2,h3{font-family:var(--sans);font-weight:400;line-height:1.1;letter-spacing:-.02em;margin:0}
p{margin:0}
a{color:inherit;text-decoration:none;transition:color .2s var(--ease);-webkit-tap-highlight-color:transparent;touch-action:manipulation}
img{max-width:100%}
::selection{background:var(--ink);color:#fff}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
:lang(ar) *{letter-spacing:0!important}

.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.skip{position:absolute;top:0;inset-inline-start:1rem;transform:translateY(-200%);background:var(--ink);color:#fff;padding:.8rem 1.1rem;z-index:80;font:500 .68rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.skip:focus{transform:none;top:.75rem}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
main:focus{outline:none}

/* ---------- Header ---------- */
.site-hdr{
  position:sticky;top:0;z-index:40;background:var(--bg);
  border-bottom:1px solid var(--hair);
  transition:transform .45s var(--out);
}
.site-hdr.is-hidden{transform:translateY(-100%)}
.site-hdr__inner{max-width:var(--max);margin:0 auto;padding:env(safe-area-inset-top) var(--gutter) 0;min-height:4.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.wordmark{display:inline-flex;align-items:center;gap:.75rem;font:500 .7rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}
.wordmark__mark{display:block;width:1.7rem;height:auto}
.site-hdr__right{display:flex;align-items:center;gap:clamp(1.25rem,3vw,2.5rem)}
.hdr-cta{font:500 .66rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;padding:.6rem 0;position:relative;white-space:nowrap}
.hdr-cta::after{content:"";position:absolute;inset-inline:0;bottom:.2rem;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--out)}
[dir=rtl] .hdr-cta::after{transform-origin:right}
.hdr-cta:hover::after{transform:scaleX(1)}
@media(max-width:40rem){.hdr-cta{display:none}.wordmark{letter-spacing:.14em;gap:.55rem}}
@media(max-width:23rem){.wordmark{font-size:.6rem;letter-spacing:.1em}}

/* ---------- Language picker ---------- */
.lang-picker{position:relative}
.lang-btn{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;padding:0;background:none;border:0;color:var(--ink);font:500 .66rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;transition:opacity .2s var(--ease)}
.lang-btn:hover{opacity:.6}
.lang-chev{transition:transform .35s var(--out)}
.lang-btn[aria-expanded=true] .lang-chev{transform:rotate(180deg)}
.lang-menu{position:absolute;inset-inline-end:0;top:calc(100% + .25rem);min-width:11rem;padding:.3rem 0;margin:0;list-style:none;background:var(--bg);border:1px solid var(--hair);box-shadow:0 1rem 2rem -.75rem rgba(13,9,0,.14);z-index:50}
.lang-menu [role=option]{padding:.7rem 1.25rem;color:var(--ink-2);font:400 .85rem/1.3 var(--sans);cursor:pointer;transition:background-color .15s var(--ease),color .15s var(--ease)}
.lang-menu [role=option]:hover,.lang-menu [role=option]:focus-visible{color:var(--ink);background:var(--surface);outline:none}
.lang-menu [role=option][aria-selected=true]{color:var(--ink);font-weight:500}
@media(prefers-reduced-motion:no-preference){
  .lang-menu:not([hidden]){animation:menuIn .2s var(--out) both}
  @keyframes menuIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
}

/* ---------- Breadcrumbs ---------- */
.breadcrumbs{max-width:52rem;margin:0 auto;padding:1.75rem var(--gutter) 0;display:flex;gap:.5rem;font:400 .72rem/1.4 var(--mono);letter-spacing:.04em;color:var(--mute)}
.breadcrumbs a:hover{color:var(--ink)}

/* ---------- Hero ---------- */
.hero-wrap{max-width:var(--max);margin:0 auto;padding:clamp(2.5rem,5vw,4.5rem) var(--gutter) clamp(3rem,6vw,5rem)}
.hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.hero__copy{display:flex;flex-direction:column;justify-content:flex-start;gap:1.4rem;min-width:0;padding-block:0}
.hero__eyebrow{display:flex;align-items:center;gap:.65rem;font:500 .66rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.hero__eyebrow .dot{flex:none;width:5px;height:5px;border-radius:50%;background:var(--ink)}
.hero__title{font-weight:300;font-size:clamp(3.1rem,7.2vw,6.6rem);line-height:.94;letter-spacing:-.045em;direction:ltr}
[dir=rtl] .hero__title{text-align:right}
.hero__title .ln{display:block}
.hero__title-l2{padding-inline-start:0}
.hero__lede{max-width:29rem;color:var(--ink-2);font-size:1.02rem;line-height:1.65}
.hero__cta{margin-top:.35rem}
.cta{display:inline-flex;align-items:center;gap:.8rem;padding-bottom:.5rem;border-bottom:1px solid var(--ink);font:500 .68rem/1 var(--sans);letter-spacing:.17em;text-transform:uppercase;color:var(--ink);transition:gap .35s var(--out),opacity .2s var(--ease)}
.cta:hover{gap:1.1rem;opacity:.7}
.cta__arw{display:inline-block;transition:transform .35s var(--out)}
[dir=rtl] .cta__arw{transform:scaleX(-1)}

.hero__panel{position:relative;margin:0;background:var(--surface);display:flex;flex-direction:column;min-height:clamp(20rem,38vw,32rem);overflow:hidden}
.hero__viewport{position:relative;flex:1;overflow:hidden;touch-action:pan-y;cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.hero__viewport:active{cursor:grabbing}
.hero__track{display:flex;height:100%;transition:transform .55s var(--out);will-change:transform}
.hero__slide{flex:0 0 100%;display:grid;place-items:center;padding:clamp(1.5rem,4vw,3rem)}
.hero__art{display:grid;place-items:center;width:100%;height:100%}
.hero__art>svg{display:block;width:min(14rem,58%);height:auto;max-height:100%}
.hero__art :is(path,circle,rect,ellipse){fill:none;stroke:var(--ink);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
.hero__art .acc{stroke:var(--mute)}
.hero__art .solid{fill:var(--surface)}
.hero__art .set-art svg{height:clamp(6rem,10vw,9rem)}
.hero__art .set-art svg:nth-child(1){height:clamp(8rem,13vw,12rem)}
.hero__art .set-art svg:nth-child(3){height:clamp(4.5rem,7.5vw,6.5rem)}
.hero__nav{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:2.4rem;height:2.4rem;display:grid;place-items:center;background:rgba(255,255,255,.86);border:1px solid var(--hair);color:var(--ink);cursor:pointer;transition:background-color .2s var(--ease),opacity .2s var(--ease)}
.hero__nav:hover{background:#fff}
.hero__nav--prev{inset-inline-start:.9rem}
.hero__nav--next{inset-inline-end:.9rem}
[dir=rtl] .hero__nav svg{transform:scaleX(-1)}
.hero__dots{display:flex;align-items:center;justify-content:center}
.hero__dot{width:1.35rem;height:1.35rem;display:grid;place-items:center;padding:0;border:0;background:none;cursor:pointer}
.hero__dot::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--hair);transition:background-color .2s var(--ease),transform .25s var(--out)}
.hero__dot[aria-current=true]::before{background:var(--ink);transform:scale(1.35)}
.hero__panel figcaption{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1.2rem;border-top:1px solid var(--hair);font:500 .6rem/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.hero__panel figcaption>span:last-child{color:var(--ink);text-align:end}
@media(max-width:46rem){.hero__nav{display:none}.hero__dot{width:2rem;height:2rem}}
@media(max-width:30rem){.hero__panel figcaption>span:first-child{display:none}.hero__panel figcaption>span:last-child{white-space:nowrap}}
button{touch-action:manipulation}

@media(prefers-reduced-motion:no-preference){
  .hero__eyebrow,.hero__lede,.hero__cta{animation:rise .8s var(--out) both}
  .hero__eyebrow{animation-delay:.05s}
  .hero__lede{animation-delay:.2s}
  .hero__cta{animation-delay:.3s}
  .hero__title{animation:rise .9s var(--out) .1s both}
  .hero__panel{animation:rise 1s var(--out) .15s both}
  .hero__eyebrow .dot{animation:blink 3.4s ease-in-out infinite}
  .hero__slide .hero__art :is(path,circle,rect,ellipse){stroke-dasharray:1;stroke-dashoffset:0}
  .hero__slide.is-active .hero__art :is(path,circle,rect,ellipse){animation:strokeIn 1.5s var(--out) both;animation-delay:calc(.1s + var(--k,0) * 80ms)}
  .hero__slide .hero__art :is(path,circle,rect,ellipse):nth-child(2){--k:1}
  .hero__slide .hero__art :is(path,circle,rect,ellipse):nth-child(3){--k:2}
  .hero__slide .hero__art :is(path,circle,rect,ellipse):nth-child(4){--k:3}
  .hero__slide .hero__art :is(path,circle,rect,ellipse):nth-child(5){--k:4}
  .hero__slide .hero__art :is(path,circle,rect,ellipse):nth-child(n+6){--k:5}
  @keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
  @keyframes blink{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.18;transform:scale(.7)}}
}
.hero__art>svg{transition:transform .6s var(--out)}
.hero__art .set-art{transition:transform .6s var(--out)}
.hero__panel:hover .hero__slide.is-active .hero__art>svg{transform:scale(1.03)}
.hero__panel:hover .hero__slide.is-active .hero__art .set-art{transform:scale(1.02)}
@media(max-width:62rem){
  .hero{grid-template-columns:1fr;gap:2.25rem}
  .hero__panel{min-height:22rem}
}

.hero__idx{position:absolute;inset-block-start:1rem;inset-inline-start:1.1rem;z-index:1;font:500 .62rem/1 var(--mono);letter-spacing:.08em;color:var(--mute);direction:ltr;unicode-bidi:isolate}
[dir=rtl] .hero__idx{inset-inline-start:auto;inset-inline-end:1.1rem}

/* ---------- Join ---------- */
.join{background:var(--surface);padding:clamp(3rem,6vw,5rem) 0}
.join__inner{max-width:var(--max);margin:0 auto;padding:0 var(--gutter);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.join-head h2{font-weight:300;font-size:clamp(2rem,4.2vw,3.4rem);line-height:1;letter-spacing:-.03em}
.waitlist-count{margin:1rem 0 0;color:var(--mute);font-size:.88rem}
.join-meta{margin:1.1rem 0 0;font:400 .64rem/1.6 var(--mono);letter-spacing:.06em;color:var(--mute)}
@media(max-width:62rem){.join__inner{grid-template-columns:1fr;gap:2rem}}

/* ---------- Forms ---------- */
form{display:grid;gap:1.4rem;max-width:34rem;margin:0}
.join form{max-width:38rem}
label{display:grid;gap:.45rem;font:500 .62rem/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
input[type=email],input[type=text],textarea{width:100%;min-height:2.9rem;padding:.55rem 0;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--hair);border-radius:0;font:400 1rem/1.5 var(--sans);letter-spacing:0;text-transform:none;transition:border-color .2s var(--ease)}
textarea{border:1px solid var(--hair);padding:.7rem .8rem;resize:vertical}
input::placeholder,textarea::placeholder{color:#9a9a9a}
input:focus,textarea:focus{outline:0;border-color:var(--ink)}
input:user-invalid,textarea:user-invalid{border-color:var(--err)}
.hint{color:var(--mute);font-size:.85rem;line-height:1.55;margin-top:-.35rem}
.small{color:var(--mute);font-size:.85rem}
label.chk{display:flex;gap:.7rem;align-items:flex-start;font:400 .85rem/1.55 var(--sans);letter-spacing:0;text-transform:none;color:var(--ink-2);cursor:pointer}
.chk a{color:var(--ink);text-decoration:underline;text-underline-offset:.2em}
.chk input{appearance:none;-webkit-appearance:none;flex:none;width:1.15rem;height:1.15rem;margin:.15rem 0 0;border:1px solid var(--mute);background:#fff;display:grid;place-items:center;cursor:pointer;transition:border-color .2s,background-color .2s}
.chk input:hover{border-color:var(--ink)}
.chk input::after{content:"";width:.3rem;height:.6rem;margin-top:-.1rem;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:rotate(45deg) scale(0);transition:transform .2s var(--out)}
.chk input:checked{border-color:var(--ink);background:var(--ink)}
.chk input:checked::after{transform:rotate(45deg) scale(1)}
.turnstile{min-height:0}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:3.25rem;padding:0 2rem;border:1px solid var(--ink);border-radius:0;font:500 .68rem/1 var(--sans);letter-spacing:.17em;text-transform:uppercase;cursor:pointer;color:#fff;background:var(--ink);text-decoration:none;transition:background-color .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)}
.btn:hover{background:#fff;color:var(--ink)}
.btn:active{transform:translateY(1px)}
.btn.alt{color:var(--ink);background:#fff;border-color:var(--hair)}
.btn.alt:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn[disabled]{opacity:.55;cursor:progress}
.btn.done{background:#fff;color:var(--ink);border-color:var(--ink)}
.check{display:inline-block;font-size:1rem;line-height:1}
.spinner{width:.85rem;height:.85rem;border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.msg{min-height:1.4rem;font-size:.88rem;color:var(--err)}
.msg.ok{color:var(--ink-2)}

/* ---------- Drop 01 ---------- */
.drop{max-width:var(--max);margin:0 auto;padding:var(--sec) var(--gutter)}
.drop-head{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:2rem;padding-bottom:1.25rem;margin-bottom:clamp(1.75rem,4vw,2.75rem)}
.drop-head::after{content:"";position:absolute;inset-inline:0;bottom:0;height:1px;background:var(--hair);transform:scaleX(1);transform-origin:left}
[dir=rtl] .drop-head::after{transform-origin:right}
.drop-head h2{font-weight:300;font-size:clamp(2rem,4vw,3.1rem);line-height:1;letter-spacing:-.03em}
.drop__sub{max-width:26rem;margin-inline-start:auto;font-size:.95rem;line-height:1.6;color:var(--mute);text-align:end}
@media(max-width:50rem){.drop-head{grid-template-columns:1fr;gap:.75rem}.drop__sub{margin-inline-start:0;text-align:start}}

.items{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,2.5rem) clamp(1rem,2vw,1.75rem)}
.item{position:relative;display:flex;flex-direction:column;background:none;color:var(--ink)}
.item__idx{position:absolute;inset-block-start:1rem;inset-inline-start:1.1rem;z-index:1;font:500 .62rem/1 var(--mono);letter-spacing:.08em;color:var(--mute);font-variant-numeric:lining-nums}
.item__art{background:var(--surface);display:grid;place-items:center;aspect-ratio:4/3;padding:clamp(1.5rem,3vw,2.5rem);transition:background-color .35s var(--ease);overflow:hidden}
.item__art svg{display:block;width:min(17rem,60%);height:auto;transition:transform .5s var(--out)}
.item:hover .item__art{background:var(--surface-2)}
.item:hover .item__art svg{transform:scale(1.03)}
.item__art :is(path,circle,rect,ellipse){fill:none;stroke:var(--ink);stroke-width:1.1;stroke-linecap:round;stroke-linejoin:round}
.item__art .acc{stroke:var(--mute)}
.item__art .solid{fill:var(--surface)}
.item:hover .item__art .solid{fill:var(--surface-2)}
.item__body{-webkit-tap-highlight-color:transparent;padding:1rem .1rem 0}
.item h3{font-weight:400;font-size:1.02rem;line-height:1.3;letter-spacing:-.01em;color:var(--ink)}
.item__role{margin:.32rem 0 0;font:500 .6rem/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.item__desc{margin:.65rem 0 0;font-size:.87rem;line-height:1.55;color:var(--mute);max-width:30rem}
.item--set{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.46fr) minmax(0,.54fr);align-items:center;background:var(--surface);margin-top:.5rem}
.item--set .item__idx{inset-block-start:1.25rem;inset-inline-start:1.5rem}
.item--set .item__art{aspect-ratio:auto;background:none;padding:clamp(1.5rem,4vw,3rem)}
.set-art{display:flex;align-items:center;justify-content:center;gap:clamp(.9rem,2vw,1.6rem);width:100%}
.set-art svg{display:block;width:auto;height:clamp(5.5rem,9vw,9rem);max-width:100%}
.set-art svg:nth-child(1){height:clamp(7rem,12vw,11rem)}
.set-art svg:nth-child(3){height:clamp(4rem,7vw,6rem)}
.item--set .item__body{-webkit-tap-highlight-color:transparent;padding:clamp(1.5rem,4vw,3rem)}
.item--set .item__desc{max-width:34rem}
@media(max-width:56rem){.items{gap:1.25rem}.item__art{aspect-ratio:1/1}.item__art svg{width:min(13rem,64%)}}
@media(max-width:40rem){.items{grid-template-columns:1fr;gap:1.75rem}.item__art{aspect-ratio:1/1}
  .item--set{grid-template-columns:1fr;align-items:stretch}
  .item--set .item__body{-webkit-tap-highlight-color:transparent;padding-top:0}
}
.cap{margin:2rem 0 0;color:var(--mute);font-size:.82rem;letter-spacing:.02em}

/* line art draws itself */
@media(prefers-reduced-motion:no-preference){
  .item__art :is(path,circle,rect,ellipse){stroke-dasharray:1;stroke-dashoffset:0}
  .item[data-reveal]:not(.is-in) .item__art :is(path,circle,rect,ellipse){stroke-dashoffset:1}
  .item.is-in .item__art :is(path,circle,rect,ellipse){animation:strokeIn 2.4s var(--out) both;animation-delay:calc(.2s + var(--k,0) * 120ms)}
  .item.is-in .item__art{animation:panelIn .9s var(--out) both}
  .drop-head[data-reveal]:not(.is-in)::after{transform:scaleX(0)}
  .drop-head.is-in::after{animation:drawLine 1.2s var(--out) both}
  .item__art :is(path,circle,rect,ellipse):nth-child(2){--k:1}
  .item__art :is(path,circle,rect,ellipse):nth-child(3){--k:2}
  .item__art :is(path,circle,rect,ellipse):nth-child(4){--k:3}
  .item__art :is(path,circle,rect,ellipse):nth-child(5){--k:4}
  .item__art :is(path,circle,rect,ellipse):nth-child(6){--k:5}
  .item__art :is(path,circle,rect,ellipse):nth-child(n+7){--k:6}
  @keyframes strokeIn{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
  @keyframes panelIn{from{opacity:.35;transform:scale(.985)}to{opacity:1;transform:none}}
  @keyframes drawLine{from{transform:scaleX(0)}to{transform:scaleX(1)}}
}

/* ---------- Legal / thanks / imprint ---------- */
.legal{max-width:52rem;margin:0 auto;padding:clamp(2.5rem,6vw,4.5rem) var(--gutter) var(--sec)}
.legal h1{font-weight:300;font-size:clamp(2rem,4.5vw,3.1rem);letter-spacing:-.03em;margin:0 0 1.25rem}
.legal h2{font-weight:400;font-size:1.15rem;letter-spacing:-.01em;margin:2.5rem 0 .65rem}
.legal p,.legal li{color:var(--ink-2);margin:0 0 .9rem;font-size:.95rem;line-height:1.65}
.legal ul{padding-inline-start:1.1rem}
.legal p a,.legal li a,.legal td a{color:var(--ink);text-decoration:underline;text-underline-offset:.2em}
.legal form{margin-top:1.75rem}
.eyebrow{font:500 .64rem/1.5 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.lede{max-width:32rem;color:var(--ink-2)}
table{width:100%;border-collapse:collapse;margin:1.25rem 0;font-size:.9rem}
th,td{padding:.8rem .75rem .8rem 0;text-align:start;vertical-align:top;border-bottom:1px solid var(--hair);color:var(--ink-2)}
th{font:500 .6rem/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
@media(max-width:40rem){.legal table{display:block;overflow-x:auto}}

.thanks-box{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:2rem;margin:2rem 0;padding:clamp(1.25rem,3vw,2rem);background:var(--surface)}
.thanks-position{display:grid;align-content:start;gap:.4rem}
.thanks-label,.thanks-count{font:500 .6rem/1.4 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin:0}
.thanks-number{font-weight:300;font-size:clamp(3rem,7vw,4.75rem);line-height:1;color:var(--ink);font-variant-numeric:lining-nums tabular-nums}
.thanks-hint{color:var(--ink-2);margin:0 0 .9rem;font-size:.9rem}
.thanks-link-row{display:flex;gap:.6rem;margin-bottom:.75rem}
.thanks-link-row input{flex:1;min-width:0;border:1px solid var(--hair);padding:.65rem .8rem;font-size:.9rem;background:#fff}
.thanks-share{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.thanks-share .btn{min-height:2.6rem;padding:0 1.1rem}
@media(max-width:40rem){.thanks-box{grid-template-columns:1fr}.thanks-link-row{flex-direction:column}}

/* ---------- Footer ---------- */
footer{background:var(--bg);border-top:1px solid var(--hair);padding:clamp(3rem,6vw,4.5rem) 0 clamp(1.5rem,3vw,2rem)}
.footer__inner{max-width:var(--max);margin:0 auto;padding:0 var(--gutter);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:3rem}
.footer__brand{display:inline-block;margin:0 0 1.4rem}
.footer__brand img{display:block;width:clamp(9rem,14vw,11.5rem);height:auto}
.footer__tagline{color:var(--mute);font-size:.88rem}
.footer__status{color:var(--mute);font:500 .6rem/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;margin:.75rem 0 1rem}
.footer__email{margin:0 0 .55rem;font-size:.88rem;letter-spacing:.01em}
.footer__email a{border-bottom:1px solid var(--hair);padding-bottom:.1rem;transition:border-color .2s var(--ease)}
.footer__email a:hover{border-color:var(--ink)}
.footer__contact{color:var(--mute);font-size:.82rem;max-width:24rem}
.footer__links{list-style:none;margin:0;padding:0;columns:2;column-gap:2rem;align-self:end}
.footer__links li{break-inside:avoid;padding:.3rem 0}
.footer__links a{display:inline-block;min-height:30px;color:var(--ink-2);font-size:.85rem;transition:color .2s var(--ease)}
.footer__links a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:.2em}
@media(max-width:48rem){.footer__inner{grid-template-columns:1fr;gap:2rem;padding-bottom:5.5rem}footer{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}}
@media(max-width:30rem){.footer__links{columns:1}}

/* ---------- Cookie bar ---------- */
#cookie{position:fixed;inset-inline:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));z-index:75;max-width:56rem;margin:0 auto;background:#fff;border:1px solid var(--hair);box-shadow:0 1rem 2.5rem -.9rem rgba(13,9,0,.18)}
.cookie__inner{padding:1rem 1.25rem;display:flex;gap:1rem 2rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.cookie__text{flex:1 1 20rem;font-size:.82rem;line-height:1.55;color:var(--ink-2)}
.cookie__text a{color:var(--ink);text-decoration:underline;text-underline-offset:.2em}
.cookie__btns{display:flex;gap:.5rem;flex-wrap:wrap}
.cookie__btns .btn{min-height:2.7rem;padding:0 1.1rem}
@media(prefers-reduced-motion:no-preference){
  #cookie:not([hidden]){animation:cookieIn .5s var(--out) .15s both}
  @keyframes cookieIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
}

/* ---------- Mobile CTA ---------- */
.mobile-cta{display:none}
@media(max-width:46rem){
  .mobile-cta{display:inline-flex;position:fixed;inset-inline:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:30;transition:transform .4s var(--out),opacity .25s var(--ease)}
  .mobile-cta.is-hidden{transform:translateY(160%);opacity:0;pointer-events:none}
}
body:has(#cookie:not([hidden])) .mobile-cta{display:none}

/* ---------- 404 ---------- */
.error-page{min-height:100vh;min-height:100svh;display:grid;align-content:center;gap:1.25rem;max-width:52rem}
.error-page__logo{display:block;width:min(11rem,52%);height:auto;margin:0 0 1.5rem}
.error-page h1{font-weight:300;font-size:clamp(2.6rem,7vw,5rem);letter-spacing:-.04em}
.error-actions{display:flex;flex-wrap:wrap;gap:.6rem}

/* ---------- Reveal ---------- */
@media(prefers-reduced-motion:no-preference){
  [data-reveal]{opacity:0;transform:translateY(14px);transition:opacity .7s var(--out) var(--d,0s),transform .7s var(--out) var(--d,0s)}
  [data-reveal].is-in{opacity:1;transform:none}
}


/* ---------- Arabic: text runs RTL, page layout stays LTR ---------- */
:lang(ar) :where(h1,h2,h3,p,li,label,textarea,figcaption,.item__desc,.item__role,.legal p,.legal li,.thanks-hint,.footer__links a,.footer__tagline,.footer__status,.drop__sub,.cap,.waitlist-count,.join-meta){direction:rtl;text-align:left}
:lang(ar) .hero__title,
:lang(ar) .hero__eyebrow,
:lang(ar) .drop-head h2,
:lang(ar) .wordmark,
:lang(ar) .footer__email,
:lang(ar) .breadcrumbs,
:lang(ar) .thanks-number,
:lang(ar) .hero__idx{direction:ltr;text-align:left}
:lang(ar) .hero__panel figcaption{direction:ltr;text-align:left}
:lang(ar) .hero__eyebrow>span:last-child{direction:rtl;unicode-bidi:isolate}
:lang(ar) .hero__cta{text-align:left}
:lang(ar) .hero__cta .cta{direction:rtl}
:lang(ar) .btn{direction:rtl}
:lang(ar) input[type=email],
:lang(ar) input[name=url]{direction:ltr;text-align:left}
:lang(ar) textarea{direction:rtl;text-align:right}
/* ---------- Print ---------- */
@media print{
  :root{color-scheme:light}
  body{-webkit-tap-highlight-color:transparent;background:#fff;color:#000}
  .site-hdr,#cookie,.mobile-cta,.skip,.breadcrumbs,.nav,.site-hdr__right{display:none!important}
  .legal a{text-decoration:underline}
  [data-reveal]{opacity:1!important;transform:none!important}
  .hero__panel,.item__art{background:#fff!important;border:1px solid #000!important}
  .item__art :is(path,circle,rect,ellipse){stroke:#000!important;stroke-dashoffset:0!important}
  .item--set{background:#fff!important;border:1px solid #000!important}
  footer{background:#fff;color:#000;border-top:1px solid #000}
}
