/* One sky across home, workspaces and quiet document routes. Only opacity
   and transform animate: no per-frame layout, filters, or colour parsing. */
body.u-night{--ink2:var(--ob-ink2);--graphite:var(--ob-muted);--grain-opacity:0}
/* Near-black stays near-black through the entire light cycle. */
html{background:#030405;background-image:none}
body.u-night{
  --ob-0:#030405;--ob-1:#080a0c;--ob-2:#0d1012;--ob-3:#15181b;--ob-4:#1d2023;
  --ob-muted:#b4b0a7;--ob-quiet:#99978f;
}
.ml-atmosphere{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;
  background:radial-gradient(ellipse at 76% 28%,#0d1013,transparent 58%),#030405;isolation:isolate}
.ml-atmosphere::before,.ml-atmosphere::after{content:"";position:absolute;inset:-8%;pointer-events:none}
.ml-atmosphere::before{
  background:radial-gradient(ellipse at 82% 75%,rgba(167,138,85,.055),transparent 44%);
  animation:ml-night-breathe 48s ease-in-out infinite;animation-delay:var(--sky-offset,0s)}
.ml-atmosphere::after{
  background:radial-gradient(ellipse at 72% 30%,rgba(130,139,149,.025),transparent 48%);
  animation:ml-night-breathe 32s ease-in-out infinite alternate;animation-delay:var(--sky-offset,0s)}
@keyframes ml-night-breathe{0%,100%{opacity:.25;transform:translate3d(0,1%,0)}50%{opacity:.8;transform:translate3d(-2%,-1%,0)}}
/* CSS-only stars keep legal/account confirmation pages script-free. */
.ml-atmosphere::before,.ml-atmosphere::after{animation-play-state:var(--sky-play,running)}
.ml-atmosphere--quiet{background-image:
  radial-gradient(1px 1px at 17% 22%,#d9c99e 80%,transparent),
  radial-gradient(1px 1px at 83% 18%,#e6dfce 80%,transparent),
  radial-gradient(1.5px 1.5px at 65% 38%,#d9c99e 80%,transparent),
  radial-gradient(1px 1px at 39% 72%,#c3d3de 80%,transparent),
  radial-gradient(1px 1px at 90% 80%,#d9c99e 80%,transparent),
  linear-gradient(155deg,#030405,#0b0d0f 55%,#030405);background-size:480px 530px,630px 410px,740px 670px,510px 620px,820px 710px,auto}
body.u-night .paper{background:linear-gradient(120deg,rgba(5,7,9,.86),rgba(7,9,11,.64));color:var(--ob-ink2)}
body.u-night .paper h2,body.u-night .paper h3{color:var(--ob-ink)}
body.u-night .paper .lbl,body.u-night .paper .n{color:var(--gold-hi)}
body.u-night .paper .tick li{color:var(--ob-ink2)}
body.u-night .paper .step{border-color:var(--ob-line)}
body.u-night .paper .btn-p{background:var(--gold);color:var(--ob-0)}
body.u-night .paper .btn-g{color:var(--ob-ink);border-color:var(--ob-line)}
body.u-night .paper .oc{color:var(--gold-hi);background:rgba(201,162,87,.1);border-color:rgba(201,162,87,.38)}
body.u-night .paper .baba-pod{background:rgba(10,12,14,.94);border-color:var(--ob-line)}
body.u-night .paper .baba-pod .say{color:var(--ob-ink2)}
body.u-night :is(.orders-state,.launch-doc){background:rgba(7,9,11,.9);border:1px solid var(--ob-line);border-radius:20px;box-shadow:0 24px 80px -40px #000}
body.u-night .launch-doc{padding:clamp(24px,5vw,64px);margin-block:clamp(24px,5vw,64px)}
body.u-night .legal-nav{background:rgba(5,7,9,.96);border-color:var(--ob-line)}
body.u-night .legal-wordmark{font-family:var(--serif);letter-spacing:0;text-transform:none}
body.u-night :is(a,button,input,textarea,select):focus-visible{outline:2px solid var(--gold-hi);outline-offset:4px}
body.u-night .hero-veil{background:linear-gradient(90deg,rgba(2,7,12,.6),transparent 75%)}
body.u-night .uni-veil{background:linear-gradient(180deg,rgba(3,10,17,.28),transparent 25%,transparent 80%,rgba(3,10,17,.35))}
body.u-night .rv{opacity:1;transform:none}
body.u-night .btn-p:hover{box-shadow:0 0 0 1px rgba(232,197,126,.25),0 8px 32px -12px rgba(201,162,87,.55)}
@media (prefers-reduced-motion:reduce){
  .ml-atmosphere::before,.ml-atmosphere::after{animation:none!important;opacity:.2}
}

/* Navigation never switches to the former paper theme. */
body.u-night #nav,body.u-night #nav.on-paper{background:rgba(4,6,8,.94);border-color:var(--ob-line)}
body.u-night #nav :is(.brand,.navlink,.burger){color:var(--ob-ink)}
body.u-night #nav .btn-g{color:var(--ob-ink);border-color:var(--ob-line)}
body.u-night #nav .btn-p{background:var(--gold);color:var(--ob-0)}
body.u-night #nav .burger i,body.u-night #nav .burger i::before,body.u-night #nav .burger i::after{background:var(--ob-ink)}
#skyCanvas{opacity:.68}
body.u-night:has(.product-shell) #skyCanvas{opacity:.4}
body.u-night .legal-footer{background:rgba(4,6,8,.9)}

.shots{grid-template-columns:repeat(3,minmax(0,1fr))}
.shots .shot{grid-column:auto;aspect-ratio:4/5;height:auto}
.shots .shot img{object-fit:cover}
@media(max-width:860px){.shots{grid-template-columns:1fr}.shots .shot{aspect-ratio:4/3}}
body.u-night .orders-action--primary{background:var(--gold);color:var(--ob-0);border-color:var(--gold)}

/* The story supports the work; it no longer delays reaching it. */
.motion-story{margin-block:20px 70px;border-block:1px solid var(--ob-line)}
.motion-story>summary{display:flex;align-items:center;gap:24px;cursor:pointer;padding:28px 0;color:var(--ob-ink);font:500 clamp(1.1rem,2vw,1.5rem)/1.4 var(--serif);list-style:none}
.motion-story>summary::-webkit-details-marker{display:none}
.motion-story>summary span:first-child{font:.75rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--gold);margin-right:auto}
.motion-story>summary span:last-child{font:400 1.5rem var(--sans);color:var(--gold);margin-left:auto}
.motion-story #universe{height:420px}
.motion-story .pour-track{height:180vh}
.home-skip{position:fixed;top:8px;left:16px;z-index:1000;padding:12px 18px;border-radius:8px;background:var(--gold);color:#030405;transform:translateY(-160%)}
.home-skip:focus{transform:none}
body:has(#hero) .sec{padding-block:clamp(48px,7vw,92px)}
body:has(#hero) .sec-head p{max-width:54ch}
#hero .hero-note{font-size:.875rem}
@media(max-width:760px){
 .motion-story>summary{flex-wrap:wrap;gap:12px}
 .motion-story>summary span:first-child{width:100%}
 .motion-story #universe{height:300px}
 .motion-story .pour-track{height:160vh}
}
.baba-real-portrait{margin:0}
.baba-real-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:18px}
.baba-real-portrait figcaption{margin-top:12px;color:var(--ob-muted);font:.875rem/1.5 var(--sans)}

/* Primary actions retain dark ink in the mobile drawer. */
body.u-night #drawer a.btn-p{color:#030405}
