/* Synthena, third site. Built on the frame measured from the references (SYNTHENA-2.md 11.31 to 11.33):
   big light type (headlines 48 to 72 px, body 20 to 22 px), three grounds and one accent, pill buttons about 50 px
   high, square pictures, a tall fixed header that is clear over the opening, calm motion (hover transitions, a slow
   drift in the openings, one reveal on scroll). Picture slots are drawn as plates so every page stands without a
   single image; a file dropped into assets/img/slots/ takes the plate's place at the next build. */
:root{
  --ink:#0C0B2B; --ink2:#15133F; --paper:#FBFAF7; --mist:#EEEBFA; --line:rgba(12,11,43,.14); --lineL:rgba(255,255,255,.18);
  --amber:#E8A33D; --amber2:#F4C777; --uv:#6C4BFF; --uv2:#A996FF; --text:#0C0B2B; --muted:#5B5978; --mutedL:#BDB8E6;
  --sans:'Work Sans','Albert Sans',system-ui,'Segoe UI',Arial,sans-serif; --serif:'Instrument Serif','EB Garamond',Georgia,serif; --label:'Archivo','Work Sans',system-ui,sans-serif;
  --pad:clamp(20px,6.5vw,112px); --max:1680px; --hdr:84px; --ease:cubic-bezier(.2,.7,.2,1);
}
*{box-sizing:border-box} html{scroll-behavior:smooth;scroll-padding-top:7rem;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);font-size:clamp(1.06rem,1.05rem + .28vw,1.31rem);line-height:1.5;color:var(--text);background:var(--paper);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block} a{color:inherit} p{margin:0 0 1em;max-width:60ch}
h1,h2,h3{font-weight:300;margin:0 0 .5em;letter-spacing:-.022em;text-wrap:balance}
h1{font-size:clamp(2.6rem,1.6rem + 4.2vw,4.9rem);line-height:1.06}
h2{font-size:clamp(2rem,1.4rem + 2.2vw,3.1rem);line-height:1.12}
h3{font-size:clamp(1.3rem,1.15rem + .6vw,1.7rem);line-height:1.2;font-weight:400;letter-spacing:-.012em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:var(--ink);padding:.7rem 1rem;z-index:100}.skip:focus{left:12px;top:12px}
:focus-visible{outline:3px solid var(--amber);outline-offset:3px;border-radius:2px}

/* the record label: a small index set in condensed capitals, used on every band and plate */
.rec{font-family:var(--label);font-stretch:86%;font-weight:600;font-size:.92rem;letter-spacing:.13em;text-transform:uppercase;margin:0 0 1.4rem;color:var(--muted)}
.on-dark .rec{color:var(--amber2)}

/* header */
.hdr{position:fixed;inset:0 0 auto 0;height:var(--hdr);z-index:50;color:#fff;transition:background .35s var(--ease),color .35s var(--ease),box-shadow .35s var(--ease)}
.hdr .in{height:100%;max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;gap:2rem}
.hdr.solid{background:rgba(251,250,247,.94);color:var(--ink);box-shadow:0 1px 0 var(--line);backdrop-filter:saturate(1.4) blur(10px)}
.brand{display:inline-flex;align-items:center;min-height:44px}.brand svg{height:24px;width:auto;display:block}
.menu{display:flex;gap:clamp(1.2rem,2.2vw,2.4rem);list-style:none;margin:0;padding:0;align-items:center}
.menu a{font-size:.98rem;text-decoration:none;position:relative;padding:.6rem 0;display:inline-block}
.menu a::after{content:"";position:absolute;left:0;right:100%;bottom:.35rem;height:1px;background:currentColor;transition:right .3s var(--ease)}
.menu a:hover::after,.menu a[aria-current=page]::after{right:0}
.menu .pill{border:1px solid currentColor;border-radius:999px;padding:.55rem 1.15rem}.menu .pill::after{display:none}.menu .pill:hover{background:var(--amber);border-color:var(--amber);color:var(--ink)}
.burger{display:none;background:none;border:1px solid currentColor;color:inherit;border-radius:999px;height:44px;padding:0 1.1rem;font:inherit;font-size:.95rem;cursor:pointer}
@media (max-width:900px){.burger{display:inline-block}.menu{position:fixed;inset:var(--hdr) 0 0 0;background:var(--ink);color:#fff;flex-direction:column;align-items:flex-start;gap:0;padding:1.5rem var(--pad);transform:translateY(-8px);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s}
  .menu.open{opacity:1;transform:none;pointer-events:auto}.menu li{width:100%;border-bottom:1px solid var(--lineL)}.menu a{font-size:1.5rem;font-weight:300;padding:1.1rem 0;width:100%}.menu .pill{border:0;padding:1.1rem 0;border-radius:0}.menu .pill:hover{background:none;color:var(--amber)}.menu a::after{display:none}}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:.7em;min-height:50px;padding:.2rem 1.5rem;border-radius:999px;border:1px solid var(--ink);background:var(--ink);color:#fff;text-decoration:none;font-size:1rem;font-weight:500;transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease),transform .25s var(--ease);margin-top:.9rem;cursor:pointer;font-family:inherit}
.btn::after{content:"\2192";transition:transform .25s var(--ease)}.btn:hover::after{transform:translateX(4px)}
.btn:hover{background:var(--uv);border-color:var(--uv)}
.btn.ghost{background:transparent;color:var(--ink)}.btn.ghost:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.on-dark .btn{background:var(--amber);border-color:var(--amber);color:var(--ink)}.on-dark .btn:hover{background:#fff;border-color:#fff}
.on-dark .btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}.on-dark .btn.ghost:hover{background:#fff;color:var(--ink);border-color:#fff}
.more{font-weight:500;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}.more:hover{color:var(--uv)}.on-dark .more:hover{color:var(--amber)}

/* the opening: one form and one height on every page */
.opening{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;color:#fff;background:var(--film-ground,var(--ink));overflow:hidden;isolation:isolate}
.opening .air{position:absolute;inset:-20%;z-index:-2;background:
  radial-gradient(38% 46% at 78% 30%,rgba(108,75,255,.62),transparent 70%),
  radial-gradient(30% 36% at 18% 84%,rgba(232,163,61,.42),transparent 72%),
  radial-gradient(46% 50% at 52% 58%,rgba(45,33,140,.75),transparent 75%),var(--ink)}
.opening .grid{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:calc(100%/12) 25%;mask-image:linear-gradient(180deg,transparent 0,#000 30%,#000 70%,transparent 100%)}
.opening .shot{position:absolute;inset:0;z-index:-1}.opening .shot img{width:100%;height:100%;object-fit:cover}.opening .shot::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,11,43,.72) 0,rgba(12,11,43,.35) 45%,rgba(12,11,43,0) 75%),linear-gradient(180deg,rgba(12,11,43,.4) 0,rgba(12,11,43,.05) 35%,rgba(12,11,43,.8) 100%)}
.opening .over{width:100%;max-width:var(--max);margin:0 auto;padding:calc(var(--hdr) + 3rem) var(--pad) clamp(2.6rem,6vw,5.2rem)}
.opening h1{max-width:17ch}.opening .lead{font-size:clamp(1.15rem,1.05rem + .5vw,1.5rem);max-width:44ch;color:#E9E6FF;margin-top:1.2rem}
.opening .rec{color:var(--mutedL)}
.opening .tag{position:absolute;right:var(--pad);bottom:clamp(2.6rem,6vw,5.2rem);text-align:right;font-family:var(--label);font-stretch:82%;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.55);line-height:1.7;max-width:26ch}
.opening .scroll{position:absolute;left:50%;bottom:1.1rem;width:1px;height:34px;background:linear-gradient(180deg,transparent,rgba(255,255,255,.7));transform-origin:top}
@media (max-width:900px){.opening .tag{display:none}}

/* bands */
.band{padding:clamp(4rem,8vw,8.5rem) 0;position:relative}.band.tight{padding:clamp(2.6rem,5vw,4.6rem) 0}
.dark{background:var(--ink);color:#fff}.mist{background:var(--mist)}.paper{background:var(--paper)}
.dark p{color:#DAD6F5}.lead{font-size:clamp(1.2rem,1.1rem + .5vw,1.55rem);line-height:1.42}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.4rem,6vw,7rem);align-items:center}.split.top{align-items:start}.split.flip>*:first-child{order:2}
.narrow{max-width:54rem}.center{text-align:center;margin-left:auto;margin-right:auto}.center p{margin-left:auto;margin-right:auto}
@media (max-width:900px){.split{grid-template-columns:1fr}.split.flip>*:first-child{order:0}}

/* the plate: a picture slot that stands on its own until a picture arrives */
.plate{position:relative;aspect-ratio:var(--r,4/3);overflow:hidden;color:#fff;isolation:isolate;
  background:radial-gradient(60% 70% at var(--gx,70%) var(--gy,28%),hsla(var(--h,252),90%,66%,.75),transparent 70%),radial-gradient(45% 55% at calc(100% - var(--gx,70%)) 88%,rgba(232,163,61,.5),transparent 72%),linear-gradient(135deg,#17144B,#0C0B2B)}
.plate::before{content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.28);z-index:1}
.plate::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:12.5% 16.66%}
.plate.rings::after{background-image:repeating-radial-gradient(circle at var(--gx,70%) var(--gy,28%),rgba(255,255,255,.09) 0 1px,transparent 1px 34px);background-size:auto}
.plate.lines::after{background-image:repeating-linear-gradient(115deg,rgba(255,255,255,.07) 0 1px,transparent 1px 22px);background-size:auto}
.plate .no{position:absolute;right:30px;top:14px;font-weight:200;font-size:clamp(3.4rem,7vw,6.5rem);line-height:1;letter-spacing:-.04em;color:rgba(255,255,255,.22);z-index:2}
.plate .cap{position:absolute;left:30px;right:30px;bottom:26px;z-index:2;font-family:var(--label);font-stretch:82%;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;line-height:1.7;color:rgba(255,255,255,.78)}
.plate .cap b{display:block;color:var(--amber2);font-weight:600}
.plate img,.plate video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:3}
.plate.filled::before,.plate.filled::after{display:none}
.plate[style*="--r:3/4"]{max-width:640px;margin-inline:auto}          /* an upright picture beside text, the size Altos gives it (637 x 860) */

/* numbers */
.nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--lineL)}
.nums div{padding:2.2rem 1.6rem 0 0;border-right:1px solid var(--lineL);margin-right:1.6rem}.nums div:last-child{border:0;margin:0}
.nums b{display:block;font-weight:200;font-size:clamp(3rem,2rem + 3.6vw,5.4rem);line-height:1;letter-spacing:-.04em;color:#fff}.nums span{display:block;margin-top:.9rem;font-size:.98rem;color:var(--mutedL);max-width:22ch}
@media (max-width:900px){.nums{grid-template-columns:1fr 1fr}.nums div{border-right:0;margin-right:0;padding-bottom:1.6rem}}

/* pipeline */
.pipe{border-top:1px solid var(--line)}.prow{padding:1.25rem 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(9rem,.9fr) 2fr auto;gap:1rem 1.6rem;align-items:center}
.prow .name{font-size:1.16rem}.prow .st{font-family:var(--label);font-stretch:82%;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.seg{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.seg i{height:8px;border-radius:4px;background:rgba(12,11,43,.12);position:relative;overflow:hidden}
.seg i.done{background:var(--uv)}.seg i.now::before{content:"";position:absolute;inset:0;width:var(--p,50%);background:linear-gradient(90deg,var(--uv),var(--amber));border-radius:4px;transform-origin:left;transition:transform 1.1s var(--ease) .15s}
[data-reveal]:not(.in) .seg i.now::before{transform:scaleX(0)}
.seglabels{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;font-family:var(--label);font-stretch:82%;font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-top:.45rem}
.prow.full{grid-template-columns:1fr;gap:.5rem;padding:1.7rem 0}.prow.full .head{display:flex;justify-content:space-between;gap:1rem;align-items:baseline}.prow.full p{margin:.1rem 0 .7rem;color:var(--muted);max-width:70ch;font-size:1.05rem}
.prow.full .foot{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.92rem;color:var(--muted);margin-top:.7rem}
.note{font-size:.92rem;color:var(--muted);max-width:74ch;margin-top:1.6rem}
@media (max-width:700px){.prow{grid-template-columns:1fr auto}.prow .seg{grid-column:1/-1;order:3}}

/* parts of the platform room */
.parts{display:grid;gap:clamp(3.5rem,7vw,7rem)}
.part{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2.4rem,6vw,7rem);align-items:center}.part.flip>*:first-child{order:2}
.part h3{font-size:clamp(1.7rem,1.3rem + 1.4vw,2.5rem);font-weight:300;letter-spacing:-.02em}
@media (max-width:900px){.part{grid-template-columns:1fr}.part.flip>*:first-child{order:0}}
.fig{border:1px solid var(--lineL);padding:clamp(1.4rem,3vw,2.4rem);position:relative}
.fig .ft{font-family:var(--label);font-stretch:82%;font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--mutedL);margin-bottom:1.4rem;display:flex;justify-content:space-between;gap:1rem}
.ruler .track{position:relative;height:14px;background:rgba(255,255,255,.12);border-radius:2px}.ruler .track i{position:absolute;top:0;bottom:0;border-radius:2px}
.ruler .mk{background:rgba(255,255,255,.34)}.ruler .us{background:var(--amber);box-shadow:0 0 0 3px rgba(232,163,61,.28)}
.ruler .ticks{position:relative;height:1.5rem;margin-top:.55rem;font-size:.72rem;color:var(--mutedL)}.ruler .ticks span{position:absolute;transform:translateX(-50%);white-space:nowrap}.ruler .ticks span:first-child{transform:none}.ruler .ticks span:last-child{transform:translateX(-100%)}
.ruler .key{margin-top:1.1rem;font-size:.98rem;line-height:1.9;color:#fff}.ruler .key b{display:inline-block;width:16px;height:9px;border-radius:2px;margin-right:.6rem}.ruler .key .a{background:var(--amber)}.ruler .key .b{background:rgba(255,255,255,.34)}
@media (max-width:700px){.ruler .ticks span:nth-child(2),.ruler .ticks span:nth-child(4){display:none}}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;position:relative}.steps::before{content:"";position:absolute;left:6%;right:6%;top:23px;height:1px;background:var(--lineL)}
.steps div{padding-right:1.2rem;position:relative}.steps b{display:flex;width:46px;height:46px;border-radius:50%;align-items:center;justify-content:center;background:var(--ink);border:1px solid var(--amber);color:var(--amber2);font-weight:400;font-size:1rem;margin-bottom:1rem}
.steps strong{display:block;font-weight:500;font-size:1.2rem;margin-bottom:.35rem}.steps span{font-size:1rem;color:#DAD6F5;line-height:1.45;display:block}
@media (max-width:700px){.steps{grid-template-columns:1fr;gap:1.4rem}.steps::before{display:none}}
.routes{display:grid;gap:.7rem}.route{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;padding:.95rem 1.1rem;border:1px dashed rgba(255,255,255,.3);font-size:1rem}
.route.est{border:1px solid var(--amber);background:rgba(232,163,61,.09)}.route em{font-style:normal;font-family:var(--label);font-stretch:82%;font-size:.64rem;letter-spacing:.15em;text-transform:uppercase;color:var(--mutedL);min-width:6.4rem}.route.est em{color:var(--amber2)}
.nots{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}.nots div{padding:1rem 1.1rem;border:1px solid var(--lineL);font-size:1rem}.nots .no{color:var(--mutedL)}.nots .no span{text-decoration:line-through;text-decoration-color:rgba(255,255,255,.5)}.nots .yes{border-color:var(--amber);background:rgba(232,163,61,.09)}
.nots em{display:block;font-style:normal;font-family:var(--label);font-stretch:82%;font-size:.64rem;letter-spacing:.15em;text-transform:uppercase;color:var(--mutedL);margin-bottom:.3rem;text-decoration:none}
.record{background:#fff;border:1px solid var(--line);padding:clamp(1.4rem,3vw,2.2rem);box-shadow:0 30px 60px -40px rgba(12,11,43,.45)}
.record .ft{font-family:var(--label);font-stretch:82%;font-size:.68rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);display:flex;justify-content:space-between;margin-bottom:1.1rem}
.record dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:0}.record dt,.record dd{padding:.72rem 0;border-top:1px solid var(--line);margin:0;font-size:.98rem}.record dt{color:var(--muted);padding-right:2rem}.record dd{text-align:right}

/* statement, founder, news, lists */
.statement{font-family:var(--serif);font-size:clamp(2rem,1.4rem + 2.6vw,3.6rem);line-height:1.1;letter-spacing:-.01em;max-width:20ch;margin:0 0 .6em}
blockquote{margin:0;font-family:var(--serif);font-size:clamp(1.5rem,1.2rem + 1.3vw,2.3rem);line-height:1.25;letter-spacing:-.005em}
.who{display:flex;gap:1rem;align-items:center;margin-top:1.6rem;font-size:1rem}.who .av{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--uv),var(--amber));flex:none;overflow:hidden}.who .av picture{display:block;width:100%;height:100%}.who .av img{width:100%;height:100%;object-fit:cover}
.who b{display:block;font-weight:500}.creds{font-size:.92rem;color:var(--muted);margin-top:.9rem;max-width:56ch}
.news1{display:grid;grid-template-columns:1fr auto;gap:2rem 4rem;align-items:end}.news1 h3{font-size:clamp(1.6rem,1.2rem + 1.6vw,2.6rem);font-weight:300;max-width:26ch;margin:0 0 .5em;letter-spacing:-.02em}
.when{font-size:.92rem;color:var(--muted);margin:0}.when b{color:var(--uv);font-weight:500;margin-right:.9em}
.news1 .btn{justify-self:start;margin-top:0}
@media (max-width:900px){.news1{grid-template-columns:1fr}}
.about{display:grid;grid-template-columns:minmax(11rem,.4fr) 1fr;gap:1rem 3rem;padding:1.9rem 0;border-top:1px solid rgba(12,11,43,.16)}.about h3{margin:0}.about p{max-width:68ch}.about .meta{font-size:.92rem;color:var(--muted)}
@media (max-width:700px){.about{grid-template-columns:1fr}}
.cta{background:linear-gradient(120deg,#0C0B2B 0,#21187A 60%,#3A2BB8 100%);color:#fff}.cta .in{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}.cta h2{margin:0;max-width:20ch}.cta p{color:#DAD6F5;margin:.6rem 0 0}

/* news page */
.tools{display:grid;gap:1rem;margin-bottom:1.6rem}.search input{width:100%;max-width:34rem;height:54px;border:1px solid var(--line);border-radius:999px;padding:0 1.4rem;font:inherit;font-size:1rem;background:#fff;color:var(--ink)}
.chips{display:flex;gap:.5rem;flex-wrap:wrap}.chips button{min-height:40px;padding:0 1rem;border-radius:999px;border:1px solid var(--line);background:transparent;font:inherit;font-size:.92rem;color:var(--ink);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.chips button:hover{border-color:var(--ink)}.chips button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.count{font-size:.95rem;color:var(--muted);margin:1.4rem 0 .4rem}.list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.row{display:grid;grid-template-columns:1fr auto;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid var(--line);align-items:center}.row[hidden]{display:none}
.row h3{font-size:clamp(1.15rem,1.05rem + .45vw,1.45rem);margin:.35rem 0 .3rem;font-weight:400}.row h3 a{text-decoration:none}.row h3 a:hover{color:var(--uv)}
.row .whenrow{font-size:.86rem;color:var(--muted);display:flex;gap:1rem;flex-wrap:wrap}.row .whenrow b{font-weight:500;color:var(--uv)}.row.press .whenrow b{color:#A9650F}.row .line{font-size:.98rem;color:var(--muted);max-width:80ch}
.row .arrow{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;text-decoration:none;transition:background .2s,color .2s,transform .25s var(--ease)}.row:hover .arrow{background:var(--ink);color:#fff;transform:translateX(4px)}
.pager{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:1.8rem}.pager button{min-width:44px;height:44px;border-radius:999px;border:1px solid var(--line);background:transparent;font:inherit;cursor:pointer}.pager button.on{background:var(--ink);color:#fff}.pager button:disabled{opacity:.35;cursor:default}
.sources{font-size:.9rem;color:var(--muted);max-width:80ch;margin-top:2rem}

/* form */
.form{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 1.4rem;max-width:60rem}.form>*{min-width:0}.form label{display:grid;gap:.45rem;font-family:var(--label);font-stretch:82%;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.form .full{grid-column:1/-1}.form input,.form select,.form textarea{width:100%;font:inherit;font-family:var(--sans);font-size:1.05rem;letter-spacing:0;text-transform:none;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:6px;padding:.85rem 1rem;min-height:54px}
.form textarea{min-height:170px;resize:vertical}.form input:focus,.form select:focus,.form textarea:focus{outline:3px solid rgba(108,75,255,.35);border-color:var(--uv)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-actions{grid-column:1/-1;display:flex;gap:1.4rem;align-items:center;flex-wrap:wrap}.form-status{margin:0;font-size:.98rem}.form-note{grid-column:1/-1;font-size:.9rem;color:var(--muted);margin:0}
@media (max-width:700px){.form{grid-template-columns:1fr}}

/* footer */
.ftr{background:var(--ink);color:#fff;padding:clamp(3.5rem,7vw,6rem) 0 2rem;overflow:hidden}.ftr .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2.4rem}
.ftr .h{font-family:var(--label);font-stretch:82%;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mutedL);margin-bottom:1rem}.ftr ul{list-style:none;margin:0;padding:0}.ftr li a{display:inline-block;padding:.34rem 0;text-decoration:none;color:#fff;font-size:1rem}.ftr li a:hover{color:var(--amber2)}
.ftr p{color:var(--mutedL);font-size:.98rem}.ftr .big{margin:clamp(3rem,6vw,5rem) 0 1.4rem;color:rgba(255,255,255,.1)}.ftr .big svg{width:100%;height:auto;display:block}
.ftr .legal{display:flex;justify-content:space-between;gap:1rem 3rem;flex-wrap:wrap;border-top:1px solid var(--lineL);padding-top:1.4rem;font-size:.84rem;color:var(--mutedL)}.ftr .legal div:last-child{max-width:70ch}
@media (max-width:900px){.ftr .cols{grid-template-columns:1fr 1fr}}
.prose h2{font-size:clamp(1.6rem,1.3rem + 1vw,2.2rem);margin-top:2.6rem}.prose p{max-width:72ch}

/* wording the owner removed leaves no hole */
p:empty,h1:empty,h2:empty,h3:empty,blockquote:empty,.btn:empty,.more:empty,.statement:empty,.creds:empty,.rec span:empty,dt:empty,dd:empty{display:none}
.opening .shot video{width:100%;height:100%;object-fit:cover}
/* no filter on the home first screen (the owner, 2026-09-21): the picture or film is seen as it is; the words carry a soft shadow of their own instead */
.opening.clear .shot::after{display:none}.opening.clear h1{text-shadow:0 0 .3em rgba(30,6,38,.45),0 0 1.4em rgba(30,6,38,.6),0 1px 2px rgba(30,6,38,.4)}.opening.clear .lead{color:#fff;font-weight:450;text-shadow:0 0 .18em rgba(30,6,38,.95),0 0 .4em rgba(30,6,38,.9),0 0 .65em rgba(30,6,38,.85),0 0 .9em rgba(30,6,38,.8),0 0 1.8em rgba(30,6,38,.7),0 0 3em rgba(30,6,38,.5)}
/* the film that loops the Altos way: two stacked copies of one file, the incoming one rising over the outgoing one (site.js); only its very first appearance is a fade from the ground */
.opening .shot video{position:absolute;inset:0}.opening video.fade{opacity:0;transition:opacity 1.2s ease-out}.opening video.fade.on{opacity:1}.opening video.twin{opacity:0}
/* the down chevron on an opening, as on Altos: bottom centre, to the next band */
.opening .down{position:absolute;left:50%;bottom:1.4rem;transform:translateX(-50%);z-index:4;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.45);background:rgba(12,11,43,.25);color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .25s var(--ease),border-color .25s var(--ease)}
.opening .down svg{width:16px;height:16px}.opening .down:hover{background:rgba(12,11,43,.55);border-color:#fff}.opening .down:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
/* the letter-by-letter reveal on the home first screen (site.js splits the words; .go starts it; .done shows everything at once; without script the noscript rule shows all) */
.opening.reveal h1,.opening.reveal .lead,.opening.reveal .over .btn{visibility:hidden;animation:none}
.opening.reveal.go h1,.opening.reveal.go .lead,.opening.reveal.go .over .btn,.opening.reveal.done h1,.opening.reveal.done .lead,.opening.reveal.done .over .btn{visibility:visible}
.opening.reveal .rv{opacity:0;transition:opacity .7s ease-out}.opening.reveal.go .rv{opacity:1}.opening.reveal.done .rv{opacity:1;transition:none}
.opening.reveal .over .btn{opacity:0;transform:translateY(8px);transition:opacity .8s ease-out,transform .8s ease-out}.opening.reveal.go .over .btn{opacity:1;transform:none}.opening.reveal.done .over .btn{opacity:1;transform:none;transition:none}
/* the pause control on a film: shown by the script, so it never appears where it cannot work */
.film-btn{position:absolute;right:var(--pad);bottom:clamp(2.6rem,6vw,5.2rem);z-index:4;width:44px;height:44px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(12,11,43,.35);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;display:grid;place-items:center;cursor:pointer;transition:background .25s var(--ease),border-color .25s var(--ease)}
.film-btn[hidden]{display:none}.film-btn:hover{background:rgba(12,11,43,.65);border-color:#fff}.film-btn:focus-visible{outline:2px solid var(--amber);outline-offset:3px}
.film-btn svg{width:14px;height:14px;fill:currentColor}.film-btn svg>*{display:none}.film-btn[data-state="playing"] .i-pause,.film-btn[data-state="paused"] .i-play,.film-btn[data-state="ended"] .i-again{display:block}
.plate .film-btn{right:.9rem;bottom:.9rem;width:38px;height:38px}
.about .plate{margin-top:1.1rem;max-width:22rem}

/* motion: one reveal, one slow drift; both stop when the device asks for less motion */
@media (prefers-reduced-motion:no-preference){
  [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}[data-reveal].in{opacity:1;transform:none}
  .opening .air{animation:drift 46s ease-in-out infinite alternate}.opening .scroll{animation:drop 2.4s var(--ease) infinite}
  .opening h1,.opening .lead,.opening .btn,.opening .rec{animation:rise 1s var(--ease) both}.opening .lead{animation-delay:.12s}.opening .btn{animation-delay:.22s}
}
@keyframes drift{from{transform:translate3d(-3%,-2%,0) rotate(0deg) scale(1)}to{transform:translate3d(4%,3%,0) rotate(6deg) scale(1.08)}}
@keyframes drop{0%{transform:scaleY(0)}55%{transform:scaleY(1)}100%{transform:scaleY(1);opacity:0}}
@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
/* small pictures in the three steps; the latest news beside its picture */
.steps.pics::before{display:none}.steps.pics .plate{margin:0 0 1.1rem;border-radius:2px}.steps.pics .plate .no{font-size:2.4rem;right:14px;top:8px}.steps.pics .plate .cap{left:14px;right:14px;bottom:12px;font-size:.62rem}.steps.pics>div{padding-right:1.4rem}.steps.pics .plate .cap b{display:block;width:auto;height:auto;border:0;border-radius:0;background:none;margin:0;font-size:inherit;font-weight:600}
.news1.stack{grid-template-columns:1fr;gap:1.6rem}
/* serif for every big statement (the owner's ruling, 2026-09-21): every heading of 1.6rem and up; small titles, labels, body and buttons stay sans */
h1,h2,.part h3,.news1 h3{font-family:var(--serif);font-weight:400;letter-spacing:-.012em}
h1{font-size:clamp(2.9rem,1.7rem + 4.8vw,5.6rem);line-height:1.02}h2{font-size:clamp(2.2rem,1.5rem + 2.6vw,3.6rem);line-height:1.08}.part h3{font-size:clamp(1.7rem,1.3rem + 1.4vw,2.5rem);line-height:1.12}
/* the founder's band and the values band, redecorated 2026-09-21 */
.founder .split{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(2.4rem,6vw,6.5rem)}
.founder .fh{margin-bottom:.7em}.founder blockquote{font-size:clamp(1.4rem,1.1rem + 1vw,1.95rem);line-height:1.32;border-left:2px solid var(--amber);padding-left:clamp(1.1rem,2vw,1.8rem)}
.founder .who{margin-top:2.2rem;padding-top:1.7rem;border-top:1px solid var(--line);font-size:1.05rem}.founder .who .av{width:76px;height:76px}.founder .creds{margin-top:1rem}
.capline{font-family:var(--label);font-stretch:82%;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:.9rem 0 0;padding-top:.7rem;border-top:1px solid var(--line)}.capline:empty{display:none}
.values .stick{position:sticky;top:7.5rem}.values .statement{margin-bottom:.5em}.values .about{grid-template-columns:1fr;gap:.55rem;padding:1.6rem 0}.values .about:last-child{padding-bottom:0}.values .about h3{font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,1.25rem + .8vw,2rem)}
@media (max-width:900px){.founder .split{grid-template-columns:1fr}.values .stick{position:static}}
/* the programme rows (2026-09-21): one wide row each, the picture and the words side by side, sides alternating */
.prog{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:clamp(2.2rem,5.5vw,6.5rem);align-items:center;padding:clamp(2.4rem,4.6vw,4.4rem) 0;border-top:1px solid var(--line)}
.prog:first-of-type{border-top:0;padding-top:clamp(1rem,2vw,2rem)}.prog:nth-of-type(even) .pic{order:2}
.prog .stage{font-family:var(--label);font-stretch:84%;font-weight:600;font-size:.74rem;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin:0 0 .9rem;display:flex;align-items:center;gap:.6rem}.prog .stage::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--amber)}
.prog h3{font-family:var(--serif);font-weight:400;font-size:clamp(2.1rem,1.5rem + 2vw,3.2rem);line-height:1.06;letter-spacing:-.012em;margin:0 0 .5em}.prog .lead{font-size:1.2rem;margin:0 0 1em}.prog p{max-width:52ch}.prog .meta{font-size:.92rem;color:var(--muted);margin-top:1.4rem}
@media (max-width:900px){.prog{grid-template-columns:1fr}.prog:nth-of-type(even) .pic{order:0}}
.reach-note{margin-top:1.5rem;padding-top:1.4rem;border-top:1px solid rgba(255,255,255,.18);color:#DAD6F5;font-size:1.08rem;max-width:46ch}.reach-note:empty{display:none}
/* pictures are served through <picture>; the wrapper takes no box of its own */
.plate picture,.shot picture{display:contents}
/* the three steps with pictures: a full-width row of three picture cards with their captions under, never thumbnails inside a box (2026-09-22) */
.part:has(.steps.pics){grid-template-columns:1fr;gap:1.6rem}.part:has(.steps.pics)>*{order:1;max-width:46rem}.part:has(.steps.pics)>*:has(.steps){order:2;max-width:none}
.fig:has(.steps.pics){border:0;padding:0}.fig:has(.steps.pics) .ft{display:none}.steps.pics{gap:20px}.steps.pics>div{padding-right:0}
@media (max-width:700px){.steps.pics{gap:1.6rem}}
