/* Cleobetra Ozzie — dark luxury. Gold sampled from the logo, no image files for effects. */

:root{
  /* gold, read as a material: shadow -> midtone -> highlight -> flash */
  --metal-deep:#5E2C06;
  --metal-dark:#A4550F;
  --metal:#C87C2F;
  --metal-warm:#DCA95A;
  --metal-lit:#F0D27A;
  --metal-flash:#FDF3A9;
  /* the gem in the logo */
  --gem:#1787C9;
  --gem-lit:#3AD7F3;
  /* grounds */
  --night:#070C18;
  --night-2:#0B1628;
  --deep:#0E1B36;
  --deep-lit:#14294F;
  --lift:#1C3E72;
  /* type */
  --bright:#F7F2E7;
  --plain:#E4EBF6;
  --quiet:#C3CEE0;
  --stack:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  --edge:24px;
  --hold:1160px;
  --face:linear-gradient(180deg,#FFF0B0 0%,#FDE68A 22%,#F5CE63 44%,#D8952F 52%,#F0C55E 60%,#FBE28F 76%,#FFF3BE 92%,#E8BC63 100%);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}

body{
  margin:0;
  background:var(--night);
  color:var(--quiet);
  font-family:var(--stack);
  font-size:17px;
  line-height:1.62;
  overflow-x:hidden;
}

h1,h2,h3{margin:0;line-height:1.08;letter-spacing:-.028em;font-weight:800;color:var(--bright)}
p{margin:0}
ul,ol,dl{margin:0;padding:0;list-style:none}
img{display:block;max-width:100%;height:auto}
a{color:var(--metal-lit)}
a:hover{color:var(--metal-flash)}

:focus-visible{outline:2px solid var(--gem-lit);outline-offset:3px;border-radius:2px}

.skipto{
  position:absolute;left:-9999px;top:0;z-index:30;
  background:var(--metal-flash);color:#1F0E02;
  padding:14px 20px;font-weight:800;text-decoration:none;border-radius:3px;
}
.skipto:focus{left:14px;top:14px}

/* ---------- shared: the lit seam that opens every band ---------- */

.chapter,.finale,.footing{position:relative}
.chapter::before,.finale::before,.footing::before{
  content:"";position:absolute;top:0;left:0;right:0;height:1px;z-index:2;
  background:linear-gradient(90deg,transparent 2%,rgba(200,124,47,.35) 16%,var(--metal-flash) 38%,rgba(240,210,122,.45) 58%,transparent 92%);
}
.chapter::after{
  content:"";position:absolute;top:0;left:0;right:0;height:150px;pointer-events:none;
  background:radial-gradient(58% 100% at 38% 0,rgba(200,124,47,.15),transparent 72%);
}
.chapter:nth-of-type(even)::before{
  background:linear-gradient(90deg,transparent 6%,rgba(240,210,122,.4) 34%,var(--metal-flash) 62%,rgba(200,124,47,.3) 82%,transparent 98%);
}
.chapter:nth-of-type(even)::after{
  background:radial-gradient(58% 100% at 62% 0,rgba(200,124,47,.15),transparent 72%);
}

.chapter-inner,.marquee-inner,.finale-inner,.footing-inner{
  position:relative;z-index:1;
  max-width:var(--hold);margin:0 auto;padding:0 var(--edge);
}

/* ---------- header ---------- */

.ledge{
  position:relative;
  background:linear-gradient(104deg,#05090F 0%,#0C1A2F 52%,#060C18 100%);
}
.ledge::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(200,124,47,.55) 24%,rgba(253,243,169,.75) 46%,rgba(200,124,47,.3) 72%,transparent);
}
.ledge-inner{
  position:relative;z-index:1;
  max-width:var(--hold);margin:0 auto;
  padding:15px var(--edge);
  display:flex;align-items:center;gap:20px;flex-wrap:wrap;
}
.ledge-mark{display:block;line-height:0;flex:0 0 auto;border-radius:3px}
.ledge-mark img{width:184px;height:45px;filter:drop-shadow(0 3px 14px rgba(200,124,47,.45))}

.ledge-nav{margin-left:auto;display:flex;gap:26px;flex-wrap:wrap;font-size:15px;font-weight:700}
.ledge-nav a{position:relative;color:var(--bright);text-decoration:none;padding-bottom:5px}
.ledge-nav a::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,var(--metal),var(--metal-flash),var(--metal));
  transform:scaleX(0);transform-origin:left;transition:transform .25s ease;
}
.ledge-nav a:hover{color:var(--metal-flash)}
.ledge-nav a:hover::after{transform:scaleX(1)}

.ledge-age{
  flex:0 0 auto;font-size:12px;font-weight:800;letter-spacing:.1em;
  color:var(--metal-flash);padding:5px 11px;border-radius:999px;
  background:rgba(200,124,47,.12);
  box-shadow:inset 0 0 0 1px rgba(240,210,122,.5);
}

/* ---------- hero ---------- */

.marquee{
  position:relative;overflow:hidden;
  padding:56px 0 68px;
  background:
    radial-gradient(74% 104% at 84% 2%,rgba(28,62,114,.7),transparent 62%),
    radial-gradient(90% 34% at 46% 104%,rgba(200,124,47,.13),transparent 72%),
    linear-gradient(104deg,#04080F 0%,#0B1729 48%,#060C18 100%);
}
.beam{
  position:absolute;z-index:0;pointer-events:none;
  top:-46%;left:11%;width:24%;height:192%;
  transform:rotate(15deg);
  background:linear-gradient(90deg,transparent 0,rgba(240,210,122,.04) 26%,rgba(253,243,169,.11) 50%,rgba(240,210,122,.035) 74%,transparent 100%);
  mix-blend-mode:screen;
}
.pool{
  position:absolute;z-index:0;pointer-events:none;
  left:-14%;top:2%;width:66%;height:80%;
  background:radial-gradient(50% 50% at 50% 50%,rgba(200,124,47,.13),transparent 70%);
}
.marquee-inner{display:grid;gap:36px;align-items:center}

.marquee-kicker,.chapter-label,.finale-kicker{
  font-size:12.5px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;
  color:var(--metal-warm);
}
.marquee-kicker{margin-bottom:18px}
.marquee-title{
  font-size:clamp(2rem,4.6vw,3.1rem);
  font-weight:300;letter-spacing:-.028em;max-width:14ch;
  color:var(--bright);
}
.marquee-gold{
  display:block;font-weight:800;letter-spacing:-.036em;
  color:var(--metal-lit);
  text-shadow:0 2px 1px rgba(0,0,0,.5);
}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .marquee-gold{
    background-image:var(--face);
    -webkit-background-clip:text;background-clip:text;
    -webkit-text-fill-color:transparent;color:transparent;
    text-shadow:none;
    filter:drop-shadow(0 2px 2px rgba(0,0,0,.7));
  }
}
.marquee-lead{
  margin-top:20px;font-size:clamp(1.02rem,1.8vw,1.15rem);
  color:var(--quiet);max-width:44ch;
}

.marquee-art{position:relative}
.still{
  width:100%;
  -webkit-mask-image:radial-gradient(55% 53% at 52% 46%,#000 34%,rgba(0,0,0,0) 86%);
  mask-image:radial-gradient(55% 53% at 52% 46%,#000 34%,rgba(0,0,0,0) 86%);
}
.still-glow{
  position:absolute;inset:4% 0 6% 4%;z-index:0;pointer-events:none;
  background:radial-gradient(46% 46% at 52% 48%,rgba(28,62,114,.85),rgba(200,124,47,.16) 58%,transparent 76%);
}
.marquee-art picture,.finale-art picture{position:relative;z-index:1;display:block}

/* ---------- the sign-up (twice): a machined, gold-lipped slot ---------- */

.enrol-shell{margin-top:32px;max-width:36rem}
.enrol-label{
  display:block;font-size:12.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;
  color:var(--metal-warm);margin-bottom:10px;
}
.enrol-row{display:flex;gap:12px;flex-wrap:wrap}

.enrol-field{
  position:relative;display:block;flex:1 1 15rem;min-width:0;border-radius:3px;
  background:linear-gradient(180deg,#050B16 0%,#0E1B31 100%);
  box-shadow:
    inset 0 3px 8px rgba(0,0,0,.95),
    inset 0 0 0 1px rgba(146,176,214,.3);
}
.enrol-field::after{
  content:"";position:absolute;left:7px;right:7px;bottom:-1px;height:2px;border-radius:2px;
  background:linear-gradient(90deg,transparent,var(--metal-flash) 26%,rgba(200,124,47,.55) 72%,transparent);
}
.enrol-field:focus-within{box-shadow:inset 0 2px 7px rgba(0,0,0,.9),inset 0 0 0 1px rgba(58,215,243,.5),0 0 30px -6px rgba(58,215,243,.55)}
.enrol-input{
  display:block;width:100%;font:inherit;font-size:16px;
  padding:15px 16px;color:var(--bright);
  background:transparent;border:0;border-radius:3px;
}
.enrol-input::placeholder{color:#8FA0B8;opacity:1}
.enrol-input[aria-invalid="true"]{color:#FFD9B4}
.enrol-field:has(.enrol-input[aria-invalid="true"]){box-shadow:inset 0 2px 7px rgba(0,0,0,.9),inset 0 0 0 2px #FFB275}

.lever{
  position:relative;overflow:hidden;isolation:isolate;flex:0 0 auto;
  font:inherit;font-size:16px;font-weight:800;letter-spacing:.005em;
  padding:16px 26px;cursor:pointer;color:#1F0E02;
  border:0;border-radius:3px;
  background:linear-gradient(180deg,#FFF6D2 0%,#F5DC8C 15%,#E3B463 38%,#D08B36 57%,#C87C2F 79%,#DCA95A 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,253,240,.95),
    inset 0 -2px 3px rgba(94,44,6,.5),
    0 2px 0 var(--metal-deep),
    0 12px 26px -12px rgba(200,124,47,.9);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.lever span{position:relative;z-index:2}
.lever::after{
  content:"";position:absolute;inset:-50% -30%;z-index:1;
  background:linear-gradient(100deg,transparent 41%,rgba(255,255,255,.6) 50%,transparent 59%);
  transform:translate3d(-130%,0,0);
  transition:transform .65s ease;
}
.lever:hover{filter:brightness(1.05);box-shadow:inset 0 1px 0 rgba(255,253,240,.95),inset 0 -2px 3px rgba(94,44,6,.5),0 2px 0 var(--metal-deep),0 16px 34px -12px rgba(240,210,122,.95)}
.lever:hover::after{transform:translate3d(130%,0,0)}
.lever:active{transform:translateY(2px);box-shadow:inset 0 1px 0 rgba(255,253,240,.9),inset 0 -1px 2px rgba(94,44,6,.5),0 0 0 var(--metal-deep),0 8px 18px -12px rgba(200,124,47,.8)}

.enrol-alert{
  position:relative;margin-top:13px;padding-left:14px;
  font-size:15px;font-weight:700;color:#FFC08A;
}
.enrol-alert::before{
  content:"";position:absolute;left:0;top:.25em;bottom:.25em;width:3px;border-radius:2px;
  background:linear-gradient(180deg,#FFD9B4,#C87C2F);
}
.enrol-note{margin-top:13px;font-size:14px;color:#A9B7CC}

.enrol-done{
  position:relative;overflow:hidden;border-radius:4px;
  padding:24px 24px 26px;
  background:linear-gradient(104deg,#0D1E3B,#16305C 60%,#0C1A32);
  box-shadow:inset 0 0 0 1px rgba(240,210,122,.4),0 22px 50px -26px rgba(0,0,0,.95),0 0 60px -24px rgba(200,124,47,.5);
}
.enrol-done::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:linear-gradient(180deg,var(--metal-flash),var(--metal),rgba(94,44,6,0));
}
.enrol-done-title{font-size:1.3rem;font-weight:800;letter-spacing:-.02em;color:var(--metal-lit)}
.enrol-done-text{margin-top:9px;color:var(--plain)}

/* ---------- section bands ---------- */

.chapter{
  padding:76px 0 12px;
  background:linear-gradient(104deg,#070C18 0%,#0B1628 46%,#080F1E 100%);
}
.chapter-head{max-width:42rem}
.chapter-label{margin-bottom:15px}
.chapter-title{font-size:clamp(1.62rem,3.5vw,2.3rem)}
.chapter-lead{margin-top:16px;color:var(--quiet);max-width:46ch}

/* ---------- the vault: the most valuable object on the page ---------- */

#offer{
  padding-bottom:20px;
  background:
    radial-gradient(64% 42% at 50% 34%,rgba(200,124,47,.16),transparent 70%),
    radial-gradient(80% 50% at 50% 30%,rgba(28,62,114,.5),transparent 72%),
    linear-gradient(104deg,#05090F 0%,#0A1526 46%,#060C18 100%);
}
.vault{
  position:relative;isolation:isolate;overflow:hidden;
  margin-top:34px;
  padding:34px 26px 38px;
  display:grid;gap:30px;
  border:3px solid transparent;border-radius:6px;
  background:
    radial-gradient(120% 92% at 50% -18%,#1B3B67 0%,#102344 46%,#080F22 100%) padding-box,
    conic-gradient(from 0deg,#E8B95C 0%,#C87C2F 7%,#8B4B12 20%,#5E2C06 33%,#A4550F 45%,#C87C2F 57%,#F0D27A 69%,#FDF3A9 79%,#FFFDF2 87%,#DCA95A 96%,#E8B95C 100%) border-box;
  box-shadow:
    inset 0 0 0 1px rgba(4,8,16,.7),
    inset 0 2px 0 rgba(255,246,205,.1),
    0 34px 78px -34px rgba(0,0,0,.95),
    0 0 110px -28px rgba(200,124,47,.4);
}
.sheen{
  position:absolute;inset:-40% -70%;z-index:0;pointer-events:none;
  background:linear-gradient(100deg,transparent 43%,rgba(255,244,205,.06) 48%,rgba(255,255,255,.1) 51%,rgba(255,244,205,.055) 54%,transparent 59%);
  mix-blend-mode:screen;
}
.vault-figures,.vault-prose{position:relative;z-index:1}
.vault-figures{
  display:grid;gap:26px;padding-bottom:28px;
  background-image:linear-gradient(90deg,rgba(253,243,169,.7),rgba(200,124,47,.3) 52%,transparent);
  background-size:100% 1px;background-position:0 100%;background-repeat:no-repeat;
}
.vault-pair{position:relative}
.vault-sum{
  font-size:clamp(2.9rem,8.4vw,4.3rem);
  font-weight:800;letter-spacing:-.045em;line-height:.96;
  color:var(--metal-lit);
  text-shadow:0 2px 1px rgba(0,0,0,.6);
}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .vault-sum{
    background-image:var(--face);
    -webkit-background-clip:text;background-clip:text;
    -webkit-text-fill-color:transparent;color:transparent;
    text-shadow:none;
    filter:drop-shadow(0 2px 2px rgba(0,0,0,.75));
  }
}
.vault-unit{
  margin-top:9px;
  font-size:12.5px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;
  color:var(--metal-lit);
}
.vault-prose p{margin:0 0 15px;color:var(--plain)}
.vault-prose p:last-child{margin-bottom:0}

/* ---------- the terms ledger ---------- */

.terms{margin-top:30px;max-width:58rem}
.terms-pair{
  position:relative;
  display:flex;gap:16px;flex-wrap:wrap;align-items:baseline;justify-content:space-between;
  padding:16px 0;
}
.terms-pair::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,rgba(240,210,122,.45),rgba(126,158,199,.14) 55%,transparent);
}
.terms-key{font-size:12.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#A9B7CC}
.terms-value{margin:0;font-size:1.24rem;font-weight:800;letter-spacing:-.02em;color:var(--metal-lit)}

/* ---------- pillars ---------- */

.pillar-list{margin-top:32px;display:grid;gap:16px}
.pillar-item{
  position:relative;overflow:hidden;padding:26px 24px 28px;border-radius:4px;
  background:linear-gradient(150deg,#122444 0%,#0C1830 52%,#091324 100%);
  box-shadow:inset 0 0 0 1px rgba(126,158,199,.15),0 18px 40px -28px rgba(0,0,0,.9);
  transition:transform .25s ease,box-shadow .25s ease;
}
.pillar-item::before{
  content:"";position:absolute;left:0;top:0;width:62%;height:2px;
  background:linear-gradient(90deg,var(--metal-flash),rgba(200,124,47,.25),transparent);
}
.pillar-item::after{
  content:"";position:absolute;left:-14%;top:-40%;width:56%;height:110%;pointer-events:none;
  background:radial-gradient(50% 50% at 50% 50%,rgba(200,124,47,.18),transparent 70%);
}
.pillar-item:hover{transform:translateY(-3px);box-shadow:inset 0 0 0 1px rgba(240,210,122,.35),0 26px 48px -26px rgba(0,0,0,.95),0 0 46px -22px rgba(200,124,47,.6)}
.pillar-name{position:relative;z-index:1;font-size:1.13rem;font-weight:800;color:var(--bright)}
.pillar-text{position:relative;z-index:1;margin-top:9px;color:var(--quiet);font-size:15.5px}

/* ---------- photography embedded in the page ---------- */

.plate{margin:44px 0 0;position:relative}
.plate .still{
  -webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,0) 0,#000 17%,#000 80%,rgba(0,0,0,0) 100%),linear-gradient(90deg,rgba(0,0,0,0) 0,#000 9%,#000 91%,rgba(0,0,0,0) 100%);
  mask-image:linear-gradient(180deg,rgba(0,0,0,0) 0,#000 17%,#000 80%,rgba(0,0,0,0) 100%),linear-gradient(90deg,rgba(0,0,0,0) 0,#000 9%,#000 91%,rgba(0,0,0,0) 100%);
  -webkit-mask-composite:source-in;mask-composite:intersect;
}

/* ---------- steps ---------- */

.ladder-list{margin-top:32px;display:grid;gap:24px}
.ladder-step{position:relative;padding:24px 0 6px;overflow:hidden}
.ladder-step::before{
  content:"";position:absolute;left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,var(--metal-flash),rgba(200,124,47,.35) 40%,transparent);
}
.ladder-step::after{
  content:"";position:absolute;left:-18%;top:-58%;width:60%;height:120%;pointer-events:none;
  background:radial-gradient(50% 50% at 50% 50%,rgba(200,124,47,.2),transparent 70%);
}
.ladder-count,.ladder-name,.ladder-text{position:relative;z-index:1}
.ladder-count{
  font-size:12px;font-weight:800;letter-spacing:.19em;text-transform:uppercase;
  color:var(--metal-warm);margin-bottom:10px;
}
.ladder-name{font-size:1.13rem;font-weight:800;color:var(--bright)}
.ladder-text{margin-top:9px;color:var(--quiet);font-size:15.5px}

/* ---------- questions ---------- */

.query{margin-top:28px}
.query-item{position:relative;padding:21px 0;break-inside:avoid}
.query-item::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,rgba(240,210,122,.4),rgba(126,158,199,.13) 50%,transparent);
}
.query-ask{font-size:1.08rem;font-weight:800;color:var(--bright)}
.query-reply{margin-top:9px;color:var(--quiet);font-size:15.5px;max-width:64ch}

/* ---------- closing sign-up ---------- */

.finale{
  position:relative;overflow:hidden;
  padding:64px 0 70px;margin-top:76px;
  background:
    radial-gradient(76% 110% at 84% 8%,rgba(28,62,114,.7),transparent 64%),
    linear-gradient(104deg,#060B16 0%,#102040 48%,#08101F 100%);
}
.finale .pool{left:-10%;top:2%;height:96%}
.finale-inner{display:grid;gap:36px;align-items:center}
.finale-kicker{margin-bottom:15px}
.finale-title{font-size:clamp(1.62rem,3.5vw,2.3rem);max-width:18ch}
.finale-text{margin-top:16px;color:var(--quiet);max-width:44ch}
.finale-art{position:relative}

/* ---------- footer ---------- */

.footing{
  background:linear-gradient(104deg,#04080F 0%,#080E1B 50%,#04080F 100%);
  color:var(--quiet);padding:50px 0 36px;
}
.footing-cols{display:grid;gap:30px}
.footing-brand{font-size:1.18rem;font-weight:800;letter-spacing:-.02em;color:var(--metal-lit)}
.footing-heading{
  font-size:12px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;
  color:var(--metal-warm);margin-bottom:12px;
}
.footing-text{margin-top:10px;font-size:15px;color:#B4C1D4}
.footing-links{display:grid;gap:9px;font-size:15px}
.footing-links a{color:var(--quiet);text-decoration:underline;text-underline-offset:3px}
.footing-links a:hover{color:var(--metal-flash)}
.footing-notice{
  position:relative;margin-top:34px;padding-top:24px;
  font-size:14px;color:#A9B7CC;max-width:80ch;
}
.footing-notice::before{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,rgba(200,124,47,.5),rgba(126,158,199,.14) 50%,transparent);
}
.footing-bottom{margin-top:26px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.footing-age{
  font-size:12px;font-weight:800;letter-spacing:.1em;color:#1F0E02;padding:5px 11px;border-radius:999px;
  background:linear-gradient(180deg,#FDF3A9,#DCA95A 60%,#C87C2F);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
}
.footing-fine{font-size:14px;color:#A9B7CC}

/* ---------- wider viewports ---------- */

@media (min-width:720px){
  .pillar-list{grid-template-columns:1fr 1fr}
  .ladder-list{grid-template-columns:repeat(3,1fr);gap:28px}
  .footing-cols{grid-template-columns:1.5fr 1fr 1.5fr}
  .vault{padding:38px 34px 42px}
  .vault-figures{grid-template-columns:1fr 1fr;gap:44px}
  .vault-pair + .vault-pair{
    padding-left:44px;
    background-image:linear-gradient(180deg,rgba(253,243,169,.7),rgba(200,124,47,.28) 62%,transparent);
    background-size:1px 100%;background-position:0 0;background-repeat:no-repeat;
  }
}

@media (min-width:980px){
  body{font-size:17.5px}
  .marquee{padding:70px 0 84px}
  .marquee-inner{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:44px}
  .marquee-art{margin-right:calc(-1 * min(11vw,190px))}
  .chapter{padding-top:86px}
  .vault{gap:36px;padding:44px 44px 48px}
  .vault-prose{columns:2;column-gap:48px}
  .finale-inner{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:52px}
  .plate{max-width:1040px;margin-left:auto;margin-right:auto}
  .query{columns:2;column-gap:52px}
  .vault-sum{font-size:clamp(3.2rem,4.4vw,4.6rem)}
}

@media (min-width:1220px){
  .marquee-art{margin-right:calc(-1 * min(9vw,150px))}
}

@media (max-width:640px){
  .marquee{padding:34px 0 46px}
  .marquee-kicker{margin-bottom:13px}
  .marquee-lead{margin-top:15px}
  .enrol-shell{margin-top:24px}
  .chapter{padding-top:58px}
  .finale{margin-top:56px}
}

@media (max-width:430px){
  :root{--edge:17px}
  body{font-size:16.5px}
  .ledge-inner{gap:11px;padding:13px var(--edge)}
  .ledge-mark img{width:152px;height:37px}
  .ledge-nav{gap:15px;font-size:14px;order:3;margin-left:0;width:100%}
  .marquee-title{font-size:1.86rem}
  .marquee-lead{font-size:1rem}
  .lever{width:100%}
  .vault{padding:26px 19px 30px}
  .vault-sum{font-size:2.6rem}
}

/* ---------- motion: transform and opacity only, and never for free ---------- */

@media (prefers-reduced-motion:no-preference){
  .beam{animation:drift 26s ease-in-out infinite alternate}
  .sheen{animation:glide 15s ease-in-out infinite alternate}
}

@keyframes drift{from{transform:rotate(15deg) translate3d(-7%,0,0)}to{transform:rotate(15deg) translate3d(7%,0,0)}}
@keyframes glide{from{transform:translate3d(-24%,0,0)}to{transform:translate3d(24%,0,0)}}
@keyframes rise{from{opacity:0;transform:translate3d(0,26px,0)}to{opacity:1;transform:none}}

@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .chapter-head,.vault,.terms,.pillar-item,.plate,.ladder-step,.query-item,.finale-copy,.finale-art{
      animation:rise linear both;
      animation-timeline:view();
      animation-range:entry 4% entry 62%;
    }
  }
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.001ms !important;
    scroll-behavior:auto !important;
  }
}
