:root {
  --dusk: #2b3450;
  --deep: #151d31;
  --night: #0e1527;
  --snow: #f4f3eb;
  --ice: #cce5ed;
  --brass: #d4a65c;
  --brass-light: #f3d18d;
  --walnut: #5a3324;
  --walnut-dark: #2d1b19;
  --ember: #ffce78;
  --ink: #19223a;
  --serif: 'Young Serif', Georgia, serif;
  --round: 'Baloo 2', sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: hidden; }
body { margin: 0; color: var(--snow); background: var(--deep); font-family: var(--round); font-size: 17px; line-height: 1.55; overflow-x: hidden; }
button, a { font: inherit; }
a { color: inherit; }
button { color: inherit; }
::selection { background: var(--brass); color: var(--night); }
.skip-link { position: absolute; left: 16px; top: 0; z-index: 100; background: var(--snow); color: var(--night); padding: 12px 18px; border-radius: 0 0 8px 8px; transform: translateY(-120%); }
.skip-link:focus-visible { transform: translateY(0); }
:focus-visible { outline: 3px solid var(--brass-light); outline-offset: 4px; }
.aurora { position: fixed; inset: 0; pointer-events: none; z-index: 20; opacity: .12; mix-blend-mode: soft-light; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E"); }

.site-header { height: 92px; display: flex; align-items: center; justify-content: space-between; padding: 0 clamp(24px, 5vw, 76px); position: absolute; z-index: 30; width: 100%; border-bottom: 1px solid rgba(255,255,255,.12); }
.maker-mark { text-decoration: none; display: flex; align-items: center; gap: 11px; min-height: 48px; }
.maker-mark svg { width: 37px; fill: none; stroke: var(--brass-light); stroke-width: 2; }
.maker-mark span { display: grid; line-height: 1.05; }
.maker-mark b { font-family: var(--serif); font-weight: 400; font-size: 17px; }
.maker-mark small { font-size: 9px; letter-spacing: .16em; text-transform: uppercase; color: #d8deea; margin-top: 5px; }
.site-header nav { display: flex; align-items: center; gap: clamp(17px, 2.2vw, 38px); }
.site-header nav a { text-decoration: none; font-size: 12px; text-transform: uppercase; letter-spacing: .12em; color: #e7ebf3; padding: 14px 0; position: relative; }
.site-header nav a:not(.nav-seal)::after { content: ''; position: absolute; height: 1px; left: 0; right: 100%; bottom: 9px; background: var(--brass); transition: right .3s; }
.site-header nav a:hover::after { right: 0; }
.site-header .nav-seal { border: 1px solid rgba(243,209,141,.6); padding: 10px 17px; border-radius: 99px; color: var(--brass-light); }

.hero { min-height: 980px; height: 100svh; max-height: 1120px; position: relative; overflow: hidden; background: radial-gradient(circle at 75% 25%, rgba(118,147,178,.28), transparent 32%), linear-gradient(155deg, #333e5e 0%, var(--dusk) 48%, #1a253e 100%); display: grid; grid-template-columns: minmax(290px, .82fr) minmax(560px, 1.18fr); align-items: center; padding: 90px clamp(24px, 5vw, 76px) 38px; }
.hero::before { content: ''; position: absolute; inset: 55% -10% -20%; background: radial-gradient(ellipse at center, rgba(152,99,54,.45), transparent 66%); }
.hero-copy { align-self: center; z-index: 4; max-width: 580px; margin-top: 20px; }
.kicker, .chapter { text-transform: uppercase; letter-spacing: .18em; font-size: 11px; font-weight: 700; color: var(--brass-light); }
.kicker span { display: inline-flex; align-items: center; gap: 12px; }
.kicker span::before { content: ''; width: 45px; height: 1px; background: var(--brass); }
h1, h2 { font-family: var(--serif); font-weight: 400; letter-spacing: -.035em; line-height: .91; margin: 0; }
h1 { font-size: clamp(72px, 8.2vw, 134px); }
h1 i { font-weight: 400; color: var(--brass-light); position: relative; }
h1 i::after { content: ''; position: absolute; width: 118%; height: 14px; left: -9%; bottom: 3px; border-bottom: 2px solid rgba(243,209,141,.5); border-radius: 50%; transform: rotate(-3deg); }
.hero-deck { color: #e0e4ec; max-width: 490px; font-size: 20px; line-height: 1.48; margin: 34px 0 28px; }
.hero-note { display: flex; align-items: center; gap: 18px; border-top: 1px solid rgba(255,255,255,.16); padding-top: 18px; max-width: 410px; }
.hero-note .scribble { font-family: var(--serif); font-style: italic; color: var(--brass-light); transform: rotate(-8deg); font-size: 20px; white-space: nowrap; }
.hero-note p { margin: 0; color: #cbd3df; font-size: 13px; line-height: 1.4; }
.hero-note b { color: white; text-transform: uppercase; letter-spacing: .1em; font-size: 11px; }

.globe-stage { z-index: 3; position: relative; height: min(86vh, 900px); min-height: 730px; display: grid; place-items: center; perspective: 1000px; }
.globe-stage::before { content: ''; position: absolute; width: 78%; height: 16%; bottom: 5%; border-radius: 50%; background: #0a101c; opacity: .55; filter: blur(30px); }
.globe-wrap { width: min(620px, 43vw); position: relative; margin-top: -20px; filter: drop-shadow(0 35px 40px rgba(0,0,0,.35)); transform-origin: 50% 85%; transition: transform .18s ease-out; }
.globe { width: 100%; aspect-ratio: 1; border-radius: 50%; position: relative; z-index: 2; overflow: hidden; cursor: grab; touch-action: none; box-shadow: inset 0 0 28px 5px rgba(225,246,255,.72), inset -35px -20px 65px rgba(8,17,37,.35), 0 0 0 2px rgba(229,246,255,.55), 0 0 40px rgba(204,229,237,.18); }
.globe:active { cursor: grabbing; }
.village-scene, #snowCanvas { position: absolute; inset: 0; display: block; width: 100%; height: 100%; }
#snowCanvas { z-index: 3; }
.glass-shine { position: absolute; z-index: 5; inset: 4%; border-radius: 50%; pointer-events: none; background: radial-gradient(ellipse at 28% 18%, rgba(255,255,255,.85) 0 1%, rgba(255,255,255,.3) 2%, transparent 19%), radial-gradient(ellipse at 23% 36%, transparent 0 45%, rgba(255,255,255,.14) 49%, transparent 53%); transform: rotate(-20deg); }
.glass-rim { position: absolute; z-index: 6; inset: 2px; border-radius: 50%; pointer-events: none; border: clamp(4px,.6vw,9px) solid rgba(221,240,247,.22); box-shadow: inset 10px 8px 16px rgba(255,255,255,.22), inset -10px -12px 24px rgba(0,0,0,.16); }
.globe-neck { position: relative; z-index: 1; width: 58%; height: 50px; margin: -32px auto -4px; border-radius: 8px; background: linear-gradient(90deg,#1e1515,#69412d 20%,#9b6240 45%,#553222 78%,#1e1516); border-top: 3px solid #ae774d; }
.globe-base { width: 76%; height: 150px; margin: 0 auto; position: relative; z-index: 3; overflow: hidden; border-radius: 16px 16px 42% 42% / 12px 12px 36px 36px; background: linear-gradient(120deg,#2b1917,#70422b 30%,#9a5e38 50%,#56301f 75%,#241617); border: 1px solid #a36a43; box-shadow: inset 0 7px 12px rgba(255,255,255,.08), 0 20px 25px rgba(0,0,0,.4); }
.wood-grain { position: absolute; inset: 0; opacity: .3; background: repeating-radial-gradient(ellipse at 40% -30%, transparent 0 13px,#1c1111 14px 15px,transparent 16px 26px); }
.brass-plaque { position: absolute; left: 19%; right: 19%; top: 32px; height: 69px; border-radius: 5px; background: linear-gradient(125deg,#76511f,#e3ba67 35%,#ffe4a5 50%,#b17c31 85%); color: #33200f; display: grid; place-content: center; text-align: center; box-shadow: inset 0 0 0 2px #70501f, inset 0 0 0 4px rgba(255,246,196,.5), 0 4px 9px rgba(0,0,0,.35); }
.brass-plaque span { font-family: var(--serif); font-size: 15px; letter-spacing: .08em; }
.brass-plaque small { font-size: 8px; letter-spacing: .15em; font-weight: 700; }
.shake-button { position: absolute; z-index: 8; right: -42px; bottom: 42px; border: 1px solid rgba(243,209,141,.7); background: var(--night); border-radius: 50%; width: 126px; height: 126px; display: grid; place-content: center; cursor: pointer; text-align: center; box-shadow: 0 10px 30px rgba(0,0,0,.35); transition: transform .3s, background .3s; }
.shake-button:hover { transform: rotate(5deg) scale(1.04); background: #25304b; }
.shake-button span { font-family: var(--serif); color: var(--brass-light); line-height: 1.05; font-size: 17px; width: 85px; }
.shake-button small { text-transform: uppercase; font-size: 8px; letter-spacing: .12em; color: #d8deea; margin-top: 8px; }
.orbit-label { position: absolute; color: rgba(235,242,249,.25); font-size: 9px; letter-spacing: .32em; text-transform: uppercase; }
.orbit-one { right: 3%; top: 34%; transform: rotate(90deg); }
.orbit-two { left: 3%; top: 55%; transform: rotate(-90deg); }
.physics-readout { position: absolute; right: calc(100% + 35px); bottom: 18px; width: max-content; display: flex; gap: 20px; color: #c9d2df; font-size: 9px; letter-spacing: .12em; text-transform: uppercase; padding: 9px 13px; border: 1px solid rgba(255,255,255,.1); background: rgba(10,17,31,.26); }
.physics-readout i { font-style: normal; color: var(--brass-light); }
.bench-edge { position: absolute; bottom: 0; left: 0; right: 0; height: 38px; background: linear-gradient(#84553b,#4b2b24 40%,#24181b); box-shadow: 0 -8px 20px rgba(0,0,0,.25); display: flex; gap: 24%; padding-left: 18%; }
.bench-edge span { width: 4px; height: 24px; background: #d4a65c; opacity: .35; transform: rotate(16deg); }

.load-in { opacity: 0; transform: translateY(25px); animation: arrive .9s cubic-bezier(.2,.8,.2,1) forwards; }
.globe-stage.load-in { animation-delay: .22s; }
@keyframes arrive { to { opacity: 1; transform: translateY(0); } }

.memory-band { min-height: 130px; background: var(--snow); color: var(--ink); display: grid; grid-template-columns: 1fr minmax(220px, 420px) 1fr; align-items: center; gap: 30px; padding: 24px clamp(24px,6vw,90px); font-family: var(--serif); text-align: center; }
.memory-band p { margin: 0; font-size: clamp(16px,1.5vw,23px); }
.memory-line { display: flex; align-items: end; justify-content: space-evenly; height: 35px; border-bottom: 1px solid #a6a8ad; }
.memory-line i { width: 4px; background: var(--dusk); border-radius: 4px 4px 0 0; }
.memory-line i:nth-child(1) { height: 12px; }.memory-line i:nth-child(2) {height:27px}.memory-line i:nth-child(3){height:18px}.memory-line i:nth-child(4){height:34px}.memory-line i:nth-child(5){height:14px}.memory-line i:nth-child(6){height:24px}.memory-line i:nth-child(7){height:8px}

.shelf-section { background: #202940; position: relative; min-height: 1020px; padding: 130px clamp(24px,6vw,90px) 150px; overflow: hidden; }
.shelf-section::before { content: ''; position: absolute; inset: 0; opacity: .2; background: linear-gradient(90deg,transparent 49.7%,rgba(255,255,255,.12) 50%,transparent 50.3%),linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px); background-size: 34% 100%,100% 80px; }
.section-heading { display: grid; grid-template-columns: .75fr 1.2fr .75fr; gap: 50px; align-items: end; position: relative; z-index: 1; }
.section-heading .chapter { align-self: start; }
.section-heading h2, .recipe-copy h2, .maker-copy h2, .anatomy-heading h2, .commission-section h2 { font-size: clamp(58px,7vw,104px); }
.section-heading > p:last-child { color: #c5ceda; max-width: 360px; margin: 0 0 6px; }
.globe-shelf { position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4,1fr); gap: clamp(20px,4vw,70px); margin-top: 105px; align-items: end; padding: 0 3% 37px; border-bottom: 22px solid #4e2d22; box-shadow: 0 15px 0 #27191a, 0 28px 35px rgba(0,0,0,.35); }
.shelf-globe { border: 0; background: none; display: grid; justify-items: center; cursor: pointer; padding: 0 4px 15px; min-height: 340px; align-content: end; transition: transform .45s cubic-bezier(.2,.9,.3,1), filter .3s; filter: saturate(.7) brightness(.78); position: relative; }
.shelf-globe:hover, .shelf-globe.is-active { filter: none; transform: translateY(-25px); }
.shelf-globe b { font-family: var(--serif); font-weight: 400; font-size: 18px; margin-top: 15px; }
.shelf-globe small { color: #9eabbc; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.mini-dome { position: relative; display: block; width: min(15vw,180px); aspect-ratio: 1; border-radius: 50%; overflow: hidden; border: 3px solid rgba(216,237,245,.6); box-shadow: inset 9px 9px 16px rgba(255,255,255,.14),inset -12px -15px 25px rgba(0,0,0,.27),0 10px 24px rgba(0,0,0,.3); }
.mini-dome::after { content:''; position:absolute; width:38%;height:15%;border-radius:50%;left:16%;top:10%;border-top:3px solid rgba(255,255,255,.55);transform:rotate(-35deg); }
.mini-base { width: 75%; height: 45px; background: linear-gradient(90deg,#2c1a18,#885339,#2c1a18); border-radius: 5px 5px 45% 45%; box-shadow: 0 6px 9px #0e111b; }
.village-mini { background: linear-gradient(#263859,#778ca0); }
.mini-moon {position:absolute; width:15%;aspect-ratio:1;border-radius:50%;background:#ffe89d;right:20%;top:17%}.mini-house {position:absolute;bottom:18%;width:25%;height:25%;background:#65402f}.mini-house::before{content:'';position:absolute;border:22px solid transparent;border-bottom:20px solid #eaece8;top:-38px;left:-7px}.mini-house::after{content:'';position:absolute;background:#ffc85f;width:6px;height:8px;left:8px;top:8px;box-shadow:10px 0 #ffc85f}.mini-house.one{left:25%}.mini-house.two{left:57%;transform:scale(.7);bottom:15%}.mini-snow{position:absolute;inset:0;background-image:radial-gradient(circle,#fff 0 1px,transparent 2px);background-size:17px 23px;opacity:.75}
.lighthouse-mini { background: linear-gradient(#182943 55%,#5a7484 56%); }
.tower { position:absolute;width:16%;height:47%;bottom:12%;left:43%;background:linear-gradient(90deg,#ddd 0 45%,#a84838 46% 72%,#eee 73%);clip-path:polygon(25% 0,75% 0,100% 100%,0 100%)}.beam{position:absolute;left:49%;top:28%;width:53%;height:8%;background:linear-gradient(90deg,#ffe99d,transparent);transform-origin:left;transform:rotate(-12deg)}.gale{position:absolute;inset:0;background:repeating-linear-gradient(-12deg,transparent 0 17px,rgba(255,255,255,.75) 18px 20px,transparent 21px 29px)}
.desert-mini { background: linear-gradient(#d27651 54%,#c4914d 55%); }.sun{position:absolute;width:21%;aspect-ratio:1;border-radius:50%;background:#ffe078;left:18%;top:17%;box-shadow:0 0 20px #f7b654}.mesa{position:absolute;bottom:19%;right:5%;width:66%;height:31%;background:#87442d;clip-path:polygon(22% 0,70% 8%,100% 100%,0 100%)}.sand{position:absolute;inset:0;background-image:radial-gradient(circle,#ffe5a6 0 1px,transparent 2px);background-size:15px 19px;opacity:.6}
.observatory-mini { background: linear-gradient(#111a39,#43506d); }.star{position:absolute;inset:0;background-image:radial-gradient(circle,#ffe9ad 0 1px,transparent 2px);background-size:22px 27px}.observatory{position:absolute;width:50%;height:31%;bottom:15%;left:25%;border-radius:60px 60px 5px 5px;background:#c2c6c5;border:7px solid #70777b}.comet{position:absolute;width:40%;height:2px;background:linear-gradient(90deg,transparent,#fff);top:25%;left:10%;transform:rotate(-20deg);box-shadow:55px 20px 0 #fff}
.shelf-card { position: relative; z-index: 3; width: min(820px,78%); margin: 76px auto 0; background: #e9e3d4; color: #24304b; padding: 35px 42px; box-shadow: 9px 12px 0 rgba(10,15,27,.34); transform: rotate(-1deg); display: grid; grid-template-columns: 80px 1fr .8fr; gap: 30px; align-items: center; border: 1px solid #b7a98b; }
.shelf-card::before { content:'';position:absolute;inset:7px;border:1px solid #c8bda5;pointer-events:none}.catalog-no{font-family:var(--serif);font-size:18px;border:1px solid #956d36;border-radius:50%;width:70px;height:70px;display:grid;place-items:center;transform:rotate(-6deg)}.shelf-card h3{font-family:var(--serif);font-size:32px;font-weight:400;margin:3px 0}.shelf-card p{margin:0;line-height:1.4}.shelf-card > div > p:first-child{text-transform:uppercase;letter-spacing:.15em;font-size:9px;color:#77552f}.shelf-card dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:13px}.shelf-card dt{text-transform:uppercase;letter-spacing:.12em;font-size:8px;color:#7b6e60}.shelf-card dd{margin:0;font-size:13px}.shelf-card dl div:last-child{grid-column:1/-1}

.recipe-section { min-height: 1000px; display: grid; grid-template-columns: .92fr 1.08fr; background: var(--snow); color: var(--ink); }
.recipe-illustration { min-height: 900px; position: relative; overflow: hidden; background: radial-gradient(circle at 45% 42%,#627088,#303a56 55%,#20283f 100%); display: grid; place-items: center; }
.recipe-illustration::before { content:''; position:absolute; inset:0; background:linear-gradient(90deg,transparent 49.7%,rgba(255,255,255,.08) 50%,transparent 50.3%),linear-gradient(transparent 49.7%,rgba(255,255,255,.06) 50%,transparent 50.3%);background-size:100px 100px; }
.jar { width: 280px; height: 475px; position: relative; z-index:2; margin-top: 60px; }
.jar-cork { position:absolute;z-index:3;width:50%;height:80px;left:25%;top:-45px;border-radius:8px;background:linear-gradient(90deg,#76543b,#b68a5c,#78543a);box-shadow:inset 0 0 0 3px rgba(72,38,27,.35)}
.jar-glass { position:absolute;inset:0;border:6px solid rgba(220,241,245,.62);border-radius:42px 42px 73px 73px;background:linear-gradient(100deg,rgba(255,255,255,.17),rgba(255,255,255,.03));box-shadow:inset 20px 0 28px rgba(255,255,255,.13),10px 25px 40px rgba(0,0,0,.28);overflow:hidden}.jar-glass::after{content:'';position:absolute;left:8%;right:8%;bottom:3%;height:53%;border-radius:50% 50% 30px 30px;background:linear-gradient(#fdfdf8,#d9e1e0);clip-path:polygon(0 27%,10% 18%,20% 31%,30% 12%,42% 26%,53% 8%,64% 25%,76% 10%,88% 24%,100% 15%,100% 100%,0 100%)}.jar-glass i{position:absolute;z-index:2;width:7px;height:7px;background:white;transform:rotate(45deg);animation:floatChip 5s ease-in-out infinite}.jar-glass i:nth-child(1){left:20%;top:35%}.jar-glass i:nth-child(2){left:62%;top:28%;animation-delay:-1s}.jar-glass i:nth-child(3){left:78%;top:44%;animation-delay:-2.5s}.jar-glass i:nth-child(4){left:35%;top:18%;animation-delay:-3.4s}.jar-glass i:nth-child(5){left:52%;top:48%;animation-delay:-4s}@keyframes floatChip{50%{transform:translateY(-14px) rotate(140deg)}}
.jar-label { position:absolute;z-index:4;left:-25px;right:-25px;top:205px;background:#e5dfd1;color:#26304b;text-align:center;padding:20px 10px;font-family:var(--serif);font-size:24px;line-height:1;border:1px solid #a39886;transform:rotate(2deg);box-shadow:5px 6px 10px rgba(0,0,0,.2)}.jar-label small{font-family:var(--round);text-transform:uppercase;letter-spacing:.16em;font-size:8px}.apothecary-label{position:absolute;left:9%;top:12%;border:1px solid rgba(243,209,141,.65);width:135px;height:135px;border-radius:50%;display:grid;place-content:center;text-align:center;transform:rotate(-9deg);color:var(--brass-light);line-height:1.1}.apothecary-label b{font-family:var(--serif);font-size:34px;font-weight:400}.apothecary-label small,.apothecary-label span{font-size:8px;text-transform:uppercase;letter-spacing:.15em}.measuring-spoon{position:absolute;width:520px;bottom:5%;right:-60px;fill:none;stroke:#d2a65c;stroke-width:5;transform:rotate(-7deg);opacity:.8}
.recipe-copy { padding: 130px clamp(40px,7vw,120px); align-self:center; }
.recipe-copy .chapter, .anatomy-section .chapter { color: #805b30; }
.recipe-copy h2 em { color:#7b4b32;font-style:normal}.recipe-copy .lead{font-family:var(--serif);font-size:23px;line-height:1.45;margin:40px 0;color:#39435a;max-width:650px}.formula{list-style:none;padding:0;margin:0;counter-reset:formula}.formula li{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:20px 0;border-top:1px solid #b9b9b2}.formula li>span{font-family:var(--serif);font-size:42px;color:#8a6033;line-height:1}.formula b{font-family:var(--serif);font-weight:400;font-size:20px}.formula p{margin:2px 0;color:#566074;font-size:14px}.lore-note{margin:28px 0 0;padding:20px 24px;background:#29334d;color:#eff0ec;position:relative;box-shadow:6px 6px 0 #c8a36a}.lore-note span{text-transform:uppercase;letter-spacing:.16em;font-size:9px;color:var(--brass-light)}.lore-note p{margin:5px 0 0;font-family:var(--serif);font-size:16px}

.maker-section { display:grid;grid-template-columns:1fr 1fr;min-height:960px;background:#182238; }
.maker-portrait{position:relative;overflow:hidden;min-height:800px;background:linear-gradient(150deg,#2d3954,#121a2b);display:flex;align-items:flex-end}.maker-portrait::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 80% 60%,rgba(255,194,100,.18),transparent 30%)}.window-grid{position:absolute;inset:8% 9% 12%;border:12px solid #111a2c;background:linear-gradient(90deg,transparent 48%,#111a2c 49% 52%,transparent 53%),linear-gradient(transparent 48%,#111a2c 49% 52%,transparent 53%),linear-gradient(#7d8da2,#394864);box-shadow:0 0 0 1px #516279}.maker-portrait svg{width:86%;margin:0 auto;position:relative;z-index:2}.portrait-caption{position:absolute;z-index:4;left:8%;bottom:6%;background:#e7e0d1;color:#202a42;padding:18px 26px;display:grid;transform:rotate(-2deg);box-shadow:5px 7px 0 rgba(0,0,0,.2)}.portrait-caption b{font-family:var(--serif);font-size:22px;font-weight:400}.portrait-caption span{font-size:9px;text-transform:uppercase;letter-spacing:.14em}.maker-copy{padding:130px clamp(45px,7vw,120px);align-self:center}.maker-copy h2{margin-bottom:42px}.maker-copy blockquote{font-family:var(--serif);font-size:26px;line-height:1.35;color:var(--brass-light);margin:0 0 35px;padding-left:25px;border-left:1px solid var(--brass)}.maker-copy>p:not(.chapter){color:#c8d1de;max-width:660px}.maker-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px;border-top:1px solid rgba(255,255,255,.17);padding-top:25px}.maker-facts span{font-size:10px;text-transform:uppercase;letter-spacing:.09em;color:#aebaca}.maker-facts b{display:block;font-family:var(--serif);font-size:29px;color:var(--snow);font-weight:400;text-transform:none;letter-spacing:0}
.hanging-globes{position:absolute;z-index:1;inset:0;pointer-events:none}.hanging-globes i{position:absolute;top:9%;width:54px;height:54px;border:2px solid rgba(221,239,245,.42);border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.34),transparent 12%),linear-gradient(#71869d,#293b57);box-shadow:0 0 18px rgba(182,214,229,.12)}.hanging-globes i::before{content:'';position:absolute;width:1px;height:160px;background:rgba(220,229,237,.22);bottom:100%;left:50%}.hanging-globes i::after{content:'';position:absolute;left:16%;right:16%;bottom:-12px;height:14px;background:#5e3827;border-radius:2px 2px 45% 45%}.hanging-globes i:nth-child(1){left:10%;top:18%;transform:scale(.72)}.hanging-globes i:nth-child(2){right:12%;top:13%;transform:scale(.5)}.hanging-globes i:nth-child(3){right:25%;top:29%;transform:scale(.34)}.bench-tools{position:absolute;z-index:3;left:4%;right:4%;bottom:4%;height:68px;border-top:10px solid #5a3427;background:linear-gradient(180deg,#70452e,#24191a);box-shadow:0 -10px 24px rgba(0,0,0,.28)}.bench-tools i{position:absolute;width:6px;height:65px;background:#c59650;bottom:25px;border-radius:5px;transform-origin:bottom}.bench-tools i:nth-child(1){left:13%;transform:rotate(27deg)}.bench-tools i:nth-child(2){left:21%;height:48px;transform:rotate(8deg)}.bench-tools i:nth-child(3){right:16%;height:55px;transform:rotate(-33deg)}.bench-tools i:nth-child(4){right:9%;height:40px;transform:rotate(-8deg)}
.maker-facts span{color:#bac4d1}

.anatomy-section{background:#e8e3d8;color:var(--ink);padding:130px clamp(24px,7vw,110px)}.anatomy-heading{display:grid;grid-template-columns:.7fr 1.3fr;gap:50px;align-items:start}.anatomy-diagram{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7vw;max-width:1250px;margin:70px auto 0}.diagram-globe{position:relative;width:min(40vw,520px);aspect-ratio:1;border:3px solid #6e8292;border-radius:50%;background:linear-gradient(#70839b,#c1d1d4);box-shadow:inset 17px 17px 20px rgba(255,255,255,.4),12px 18px 0 rgba(41,52,76,.11)}.diagram-world{position:absolute;left:12%;right:12%;bottom:13%;height:37%;background:#f7f5e9;clip-path:polygon(0 50%,17% 24%,30% 47%,49% 10%,65% 37%,80% 19%,100% 45%,100% 100%,0 100%)}.diagram-snow{position:absolute;inset:4%;border-radius:50%;background-image:radial-gradient(circle,#fff 0 2px,transparent 3px);background-size:35px 41px}.diagram-base{position:absolute;left:19%;right:19%;bottom:-27%;height:28%;background:linear-gradient(90deg,#2b1919,#825039,#2a1818);border-radius:10px 10px 45% 45%}.callouts{list-style:none;padding:0;margin:0}.callouts li{display:grid;grid-template-columns:58px 1fr;gap:22px;padding:23px 0;border-top:1px solid #b2ada2}.callouts span{width:42px;height:42px;border:1px solid #87653d;border-radius:50%;display:grid;place-items:center;font-size:11px}.callouts b{font-family:var(--serif);font-size:20px;font-weight:400}.callouts p{margin:3px 0;color:#5c6371;font-size:14px}

.commission-section{position:relative;text-align:center;min-height:870px;padding:150px 24px 120px;overflow:hidden;background:radial-gradient(circle at 50% 30%,#43516e,#212b45 48%,#151d31);display:flex;flex-direction:column;align-items:center}.commission-section::before{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 0 48%,rgba(255,255,255,.04) 49%,transparent 50%);background-size:90px 90px}.commission-section>*{position:relative}.commission-section h2{font-size:clamp(70px,9vw,132px);max-width:1000px}.commission-section>p:not(.chapter):not(.fineprint){max-width:650px;color:#d5dce7;font-size:19px;margin:35px auto}.commission-details{display:flex;justify-content:center;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);margin:16px auto 40px}.commission-details span{padding:19px clamp(20px,4vw,55px);display:grid}.commission-details span+span{border-left:1px solid rgba(255,255,255,.18)}.commission-details small{text-transform:uppercase;letter-spacing:.15em;color:#9fabbc;font-size:9px}.commission-details b{font-family:var(--serif);font-weight:400;color:var(--brass-light);font-size:19px}.commission-cta{min-width:min(560px,90vw);min-height:78px;text-decoration:none;border:1px solid var(--brass);display:flex;align-items:center;justify-content:space-between;padding:12px 15px 12px 30px;color:var(--brass-light);transition:background .3s,color .3s}.commission-cta:hover{background:var(--brass-light);color:var(--night)}.commission-cta span{font-family:var(--serif);font-size:20px}.commission-cta i{font-style:normal;width:48px;height:48px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center}.fineprint{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#95a1b3;margin-top:19px}.commission-snow{position:absolute;inset:0;background-image:radial-gradient(circle,#fff 0 1px,transparent 2px),radial-gradient(circle,#fff 0 1px,transparent 2px);background-size:43px 61px,71px 89px;background-position:0 0,20px 30px;opacity:.22;animation:snowBg 14s linear infinite}@keyframes snowBg{to{background-position:80px 122px,90px 208px}}

.site-footer{background:#0c1323;min-height:180px;padding:50px clamp(24px,6vw,90px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px;color:#aeb8c7;font-size:11px}.footer-mark{display:flex;align-items:center;gap:12px}.footer-mark svg{width:34px;fill:none;stroke:var(--brass);stroke-width:2}.site-footer>p{text-align:center}.site-footer nav{justify-self:end;display:flex;gap:22px}.site-footer a{text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.site-footer a:hover{color:var(--brass-light)}

@media (max-width: 1050px){
  .site-header nav a:not(.nav-seal){display:none}.hero{grid-template-columns:.78fr 1.22fr;padding-left:38px;padding-right:38px}.hero-copy{position:relative;top:-42px}.globe-wrap{width:min(590px,56vw)}.physics-readout{left:auto;right:0;bottom:32px}.section-heading{grid-template-columns:.5fr 1.2fr .7fr}.shelf-card{width:90%}.recipe-copy{padding:100px 55px}.maker-copy{padding:100px 50px}.site-footer{grid-template-columns:1fr 1fr}.site-footer>p{display:none}
}

@media (max-width: 760px){
  body{font-size:16px}.site-header{height:72px;padding:0 18px}.maker-mark small{display:none}.site-header .nav-seal{font-size:9px;padding:8px 11px;min-height:44px;display:flex;align-items:center}.hero{height:auto;max-height:none;min-height:1110px;grid-template-columns:1fr;align-content:start;padding:100px 18px 30px}.hero-copy{margin:0;max-width:none;transform:none}.kicker{font-size:9px}.hero h1{font-size:clamp(64px,21vw,86px)}.hero-deck{font-size:17px;max-width:350px;margin:20px 0 18px}.hero-note{padding-top:13px}.globe-stage{min-height:620px;height:620px;margin-top:-4px}.globe-wrap{width:min(92vw,430px);margin-top:10px}.globe-base{height:104px}.globe-neck{height:37px;margin-top:-25px}.brass-plaque{top:21px;height:51px;left:16%;right:16%}.brass-plaque span{font-size:11px}.shake-button{width:112px;height:112px;right:-2px;bottom:14px;background:#111a2e;box-shadow:0 10px 30px rgba(0,0,0,.5),inset 0 0 0 4px rgba(212,166,92,.08)}.shake-button span{font-size:15px;width:78px}.physics-readout{right:auto;left:50%;transform:translateX(-50%);bottom:-4px;width:max-content;max-width:96vw;justify-content:center;gap:10px;font-size:7px;padding:8px 9px}.orbit-label{display:none}.bench-edge{height:28px}
  .memory-band{min-height:150px;grid-template-columns:1fr;gap:9px;padding:24px}.memory-line{grid-row:2;height:21px}.memory-band p{font-size:16px}
  .shelf-section{padding:90px 18px 110px;min-height:auto}.section-heading{grid-template-columns:1fr;gap:18px}.section-heading .chapter{order:0}.section-heading h2{order:1;font-size:56px}.section-heading>p:last-child{order:2}.globe-shelf{grid-template-columns:repeat(2,1fr);gap:45px 14px;margin-top:65px;padding:0 2% 28px}.shelf-globe{min-height:235px}.mini-dome{width:min(39vw,160px)}.mini-base{height:35px}.shelf-globe:hover,.shelf-globe.is-active{transform:translateY(-14px)}.shelf-card{width:100%;margin-top:62px;padding:28px 24px;grid-template-columns:1fr;gap:15px;transform:none}.catalog-no{width:55px;height:55px}.shelf-card dl{border-top:1px solid #b7ad9c;padding-top:12px}
  .recipe-section{grid-template-columns:1fr}.recipe-illustration{min-height:650px}.jar{width:220px;height:375px}.jar-label{top:160px;font-size:19px}.apothecary-label{width:100px;height:100px;top:8%;left:5%}.apothecary-label b{font-size:26px}.measuring-spoon{width:360px}.recipe-copy{padding:80px 22px 90px}.recipe-copy h2{font-size:55px}.recipe-copy .lead{font-size:19px;margin:28px 0}.formula li{grid-template-columns:45px 1fr;gap:12px}.formula li>span{font-size:34px}
  .maker-section{grid-template-columns:1fr}.maker-portrait{min-height:650px}.maker-copy{padding:85px 22px}.maker-copy h2{font-size:55px}.maker-copy blockquote{font-size:21px}.maker-facts{gap:7px}.maker-facts b{font-size:23px}
  .anatomy-section{padding:85px 22px 120px}.anatomy-heading{grid-template-columns:1fr;gap:18px}.anatomy-heading h2{font-size:55px}.anatomy-diagram{grid-template-columns:1fr;gap:112px;margin-top:55px}.diagram-globe{width:min(83vw,440px);margin:0 auto}.callouts li{grid-template-columns:48px 1fr;gap:10px}
  .commission-section{padding:100px 18px 90px;min-height:800px}.commission-section h2{font-size:62px}.commission-section>p:not(.chapter):not(.fineprint){font-size:16px}.commission-details{width:100%;display:grid;grid-template-columns:1fr}.commission-details span{padding:12px}.commission-details span+span{border-left:0;border-top:1px solid rgba(255,255,255,.18)}.commission-cta{min-width:100%;padding-left:17px}.commission-cta span{text-align:left;font-size:17px}.site-footer{grid-template-columns:1fr;padding:40px 22px;gap:22px}.site-footer nav{justify-self:start;display:grid;gap:0}.footer-mark{align-items:flex-start}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}.load-in{opacity:1;transform:none;animation:none}.commission-snow,.jar-glass i{animation:none}.shake-button,.shelf-globe,.commission-cta{transition:none}
}

@media (max-width: 760px){.hero-copy{top:0}}

/* Pass 2 — deeper workshop atmosphere, physics affordance, and editorial rhythm */
html { color-scheme: dark; }
button, a { touch-action: manipulation; -webkit-tap-highlight-color: rgba(243,209,141,.22); }
h1, h2, h3 { text-wrap: balance; }
p, li { text-wrap: pretty; }
[id] { scroll-margin-top: 28px; }
.sr-only { position: absolute!important; width: 1px!important; height: 1px!important; padding: 0!important; margin: -1px!important; overflow: hidden!important; clip: rect(0,0,0,0)!important; white-space: nowrap!important; border: 0!important; }

.hero { isolation: isolate; background:
  radial-gradient(circle at 78% 21%,rgba(192,222,235,.22),transparent 25%),
  radial-gradient(ellipse at 22% 84%,rgba(177,100,48,.18),transparent 38%),
  linear-gradient(148deg,#364260 0%,#27324e 49%,#121b30 100%); }
.hero::after { content:''; position:absolute; inset:92px 0 38px; z-index:-1; pointer-events:none; opacity:.34; background-image:radial-gradient(circle,rgba(226,238,243,.55) 0 1px,transparent 1.4px); background-size:97px 83px; mask-image:linear-gradient(90deg,transparent,#000 42%,#000 82%,transparent); }
.site-header { background:linear-gradient(180deg,rgba(9,15,28,.2),transparent); }
.site-header nav a, .maker-mark { transition:color .25s ease, opacity .25s ease; }
.maker-mark:hover, .site-header nav a:hover { color:var(--brass-light); }
.hero-copy { z-index:6; }
.hero-copy.load-in { opacity:1; transform:none; animation:none; }
.hero-copy.load-in > * { opacity:0; transform:translateY(18px); animation:ledgerReveal .75s cubic-bezier(.16,.84,.31,1) forwards; }
.hero-copy.load-in > :nth-child(2) { animation-delay:.09s; }
.hero-copy.load-in > :nth-child(3) { animation-delay:.19s; }
.hero-copy.load-in > :nth-child(4) { animation-delay:.3s; }
@keyframes ledgerReveal { to { opacity:1; transform:translateY(0); } }
.globe-stage.load-in { animation-duration:1.15s; animation-delay:.13s; }
.globe-wrap { transition:transform .12s cubic-bezier(.2,.75,.25,1); will-change:transform; }
.globe { user-select:none; -webkit-user-select:none; }
.globe::after { content:''; position:absolute; z-index:4; inset:0; pointer-events:none; border-radius:50%; background:linear-gradient(112deg,transparent 48%,rgba(255,255,255,.08) 50%,transparent 53%); transform:translateX(-45%); opacity:.65; }
.globe.is-grabbing { cursor:grabbing; box-shadow:inset 0 0 34px 7px rgba(225,246,255,.78),inset -35px -20px 65px rgba(8,17,37,.35),0 0 0 3px rgba(243,209,141,.6),0 0 54px rgba(204,229,237,.28); }
.shake-button::before { content:''; position:absolute; inset:-9px; border:1px dashed rgba(243,209,141,.38); border-radius:50%; animation:sealTurn 13s linear infinite; }
.shake-button.has-shaken { animation:buttonKick .48s cubic-bezier(.2,.9,.3,1); }
@keyframes sealTurn { to { transform:rotate(360deg); } }
@keyframes buttonKick { 45% { transform:rotate(-6deg) scale(1.08); } }
.physics-readout { backdrop-filter:blur(7px); border-color:rgba(243,209,141,.22); box-shadow:inset 0 0 18px rgba(7,12,22,.3); font-variant-numeric:tabular-nums; }
.physics-readout i { font-weight:700; }

.memory-band { position:relative; box-shadow:inset 0 1px #fff, inset 0 -1px rgba(35,43,62,.16); }
.memory-band::after { content:'ACCUMULATION RECORD / LAST SHAKE'; position:absolute; left:50%; bottom:8px; transform:translateX(-50%); color:#707889; font-size:7px; letter-spacing:.2em; font-family:var(--round); white-space:nowrap; }
.memory-line i { animation:memoryPulse 4.8s ease-in-out infinite; transform-origin:bottom; }
.memory-line i:nth-child(2n) { animation-delay:-2.1s; }
@keyframes memoryPulse { 50% { transform:scaleY(.62); opacity:.55; } }

.shelf-section { background:
  radial-gradient(circle at 74% 24%,rgba(100,127,153,.14),transparent 26%),
  linear-gradient(135deg,#222c45,#141d31); }
.globe-shelf { border-bottom-color:#583225; box-shadow:0 6px 0 #9a6640,0 17px 0 #27191a,0 34px 46px rgba(0,0,0,.43); }
.shelf-globe:focus-visible { filter:none; transform:translateY(-18px); }
.shelf-globe .mini-dome { transition:box-shadow .35s ease, filter .35s ease; }
.shelf-globe.is-active .mini-dome { box-shadow:inset 9px 9px 16px rgba(255,255,255,.18),inset -12px -15px 25px rgba(0,0,0,.2),0 0 0 5px rgba(212,166,92,.12),0 18px 31px rgba(0,0,0,.38); }
.shelf-card { overflow:hidden; transition:background-color .35s ease, color .35s ease, border-color .35s ease; }
.shelf-card > *:not(.climate-stamp) { position:relative; z-index:2; }
.shelf-card::after { content:''; position:absolute; width:250px; aspect-ratio:1; right:-105px; top:-130px; border-radius:50%; background:var(--card-weather,rgba(87,117,142,.18)); opacity:.6; }
.shelf-card.scene-lighthouse { --card-weather:repeating-linear-gradient(-14deg,rgba(50,81,110,.22) 0 3px,transparent 3px 18px); }
.shelf-card.scene-desert { --card-weather:radial-gradient(circle,#c96f42,#e0b86f 55%,transparent 57%); background:#eee0c5; border-color:#a85f38; }
.shelf-card.scene-observatory { --card-weather:radial-gradient(circle,#cda85d 0 2px,transparent 3px); }
.climate-stamp { position:absolute; z-index:1; right:19px; bottom:16px; width:58px; aspect-ratio:1; border:1px solid rgba(95,65,38,.25); border-radius:50%; opacity:.42; }
.climate-stamp::before,.climate-stamp::after,.climate-stamp i { content:''; position:absolute; left:50%; top:50%; width:70%; height:1px; background:#725333; transform-origin:center; }
.climate-stamp::before { transform:translate(-50%,-50%) rotate(45deg); }.climate-stamp::after { transform:translate(-50%,-50%) rotate(-45deg); }.climate-stamp i { transform:translate(-50%,-50%); }

.recipe-section { background:#f1eee5; }
.recipe-illustration { background:radial-gradient(circle at 46% 43%,#6e7e93 0%,#303b58 48%,#171f34 100%); }
.recipe-illustration::after { content:'17 / BONE-CHINA / SLOW FALL'; position:absolute; right:22px; bottom:36px; writing-mode:vertical-rl; letter-spacing:.2em; font-size:8px; color:rgba(243,209,141,.72); }
.lore-note { transform:rotate(-.7deg); }

.maker-section { background:linear-gradient(115deg,#202d48,#111a2d); }
.maker-portrait { background:linear-gradient(150deg,#35435f,#111a2c 72%); }
.window-grid { box-shadow:0 0 0 1px #596b82,inset 0 0 70px rgba(199,221,232,.08); }
.work-lamp { position:absolute; z-index:1; width:180px; height:180px; right:2%; top:37%; border-radius:50%; background:radial-gradient(circle,rgba(255,194,105,.22),transparent 68%); }
.work-lamp::before { content:''; position:absolute; width:122px; height:5px; right:62px; top:55px; border-radius:5px; background:#a36d38; transform:rotate(-6deg); transform-origin:right center; box-shadow:-2px 2px 0 rgba(24,18,20,.4); }
.work-lamp::after { content:''; position:absolute; width:14px; aspect-ratio:1; left:-4px; top:42px; border:4px solid #ba8042; border-radius:50%; background:#253048; }
.work-lamp i { position:absolute; width:58px; height:34px; right:20px; top:35px; background:linear-gradient(130deg,#dda957,#8f5f31); clip-path:polygon(18% 0,82% 0,100% 100%,0 100%); transform:rotate(-24deg); filter:drop-shadow(0 6px 5px rgba(0,0,0,.25)); }
.work-lamp i::before { content:''; position:absolute; width:115px; height:5px; right:42px; top:1px; background:#a36d38; transform:rotate(29deg); transform-origin:right center; }
.work-lamp i::after { content:''; position:absolute; width:22px; height:8px; left:18px; bottom:-4px; border-radius:50%; background:#ffd17a; box-shadow:0 0 18px rgba(255,192,96,.55); }
.blue-flame { position:absolute; z-index:5; right:9%; bottom:34%; width:64px; height:80px; filter:drop-shadow(0 0 12px rgba(93,190,255,.75)); transform:rotate(27deg); }
.blue-flame i { position:absolute; left:50%; bottom:0; transform:translateX(-50%); width:18px; height:64px; border-radius:70% 30% 60% 40%; background:linear-gradient(0deg,#4d9dff,#8cd9ff 52%,rgba(255,255,255,.9)); clip-path:polygon(50% 0,100% 62%,74% 100%,24% 100%,0 62%); animation:flameTalk .78s ease-in-out infinite alternate; transform-origin:50% 100%; }
.blue-flame i:nth-child(2) { width:9px; height:47px; margin-left:-12px; opacity:.7; animation-delay:-.24s; }.blue-flame i:nth-child(3) { width:8px; height:38px; margin-left:11px; opacity:.6; animation-delay:-.52s; }
@keyframes flameTalk { to { transform:translateX(-50%) scaleX(.78) scaleY(1.1) rotate(3deg); } }
.maker-copy h2 { max-width:720px; }

.anatomy-section { background:linear-gradient(120deg,#ebe6da,#f5f2e9); }
.diagram-globe { background:linear-gradient(145deg,#647a94,#aebfc6 59%,#d9d6c7); }
.callouts li { transition:transform .25s ease, border-color .25s ease; }
.callouts li:hover { transform:translateX(8px); border-color:#8a663e; }

.commission-section { min-height:850px; padding:135px clamp(35px,7vw,110px); text-align:left; display:grid; grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr); align-items:center; gap:clamp(55px,8vw,130px); background:radial-gradient(circle at 18% 36%,#4a5874,#25314e 42%,#11192d 80%); }
.commission-section::before { opacity:.7; }
.commission-intro,.commission-ledger { position:relative; z-index:2; }
.commission-section h2 { font-size:clamp(72px,8.1vw,122px); max-width:820px; }
.commission-section h2 em { color:var(--brass-light); font-style:italic; }
.commission-ledger { background:rgba(11,18,33,.64); border:1px solid rgba(243,209,141,.32); padding:clamp(30px,4vw,55px); box-shadow:15px 16px 0 rgba(7,12,23,.24); transform:rotate(.6deg); }
.commission-ledger::before { content:'VOSS & VALE / ENTRY 91'; position:absolute; top:-24px; right:20px; color:var(--brass-light); font-size:8px; letter-spacing:.2em; }
.commission-ledger > p:first-child { color:#d5dce7; font-size:18px; margin:0 0 30px; }
.commission-details { display:grid; grid-template-columns:1fr; margin:0 0 32px; border-bottom:0; }
.commission-details span { padding:15px 0; grid-template-columns:1fr auto; align-items:end; border-bottom:1px solid rgba(255,255,255,.15); }
.commission-details span+span { border-left:0; }
.commission-details small { align-self:center; }
.commission-details b { text-align:right; }
.commission-cta { min-width:0; width:100%; }
.fineprint { line-height:1.6; }

@media (min-width:761px) and (max-width:1050px) {
  .hero { min-height:940px; height:100svh; padding-top:64px; }
  .hero-copy { top:-8px; }
  .globe-stage { min-height:690px; height:74vh; }
  .commission-section { grid-template-columns:1fr 1fr; gap:45px; padding-left:42px; padding-right:42px; }
  .commission-section h2 { font-size:68px; }
  .commission-ledger { padding:32px; }
}

@media (max-width:760px) {
  .hero { min-height:970px; padding:94px 18px 20px; }
  .hero-copy { min-width:0; }
  .hero h1 { font-size:clamp(61px,18.5vw,72px); line-height:.89; }
  .hero-deck { font-size:16px; line-height:1.42; max-width:360px; margin:17px 0 15px; }
  .hero-note { max-width:360px; gap:12px; }
  .globe-stage { min-height:480px; height:480px; margin-top:-2px; }
  .globe-wrap { width:min(82vw,330px); margin-top:0; }
  .globe-base { height:92px; }
  .globe-neck { height:33px; }
  .brass-plaque { top:18px; height:48px; left:13%; right:13%; }
  .shake-button { width:94px; height:94px; right:-11px; bottom:9px; }
  .shake-button span { font-size:13px; width:68px; }.shake-button small { font-size:6px; margin-top:5px; }
  .physics-readout { bottom:-6px; gap:7px; font-size:6.5px; }
  .memory-band::after { bottom:5px; }
  .shelf-card { padding-right:24px; }
  .climate-stamp { right:14px; top:16px; bottom:auto; width:46px; }
  .maker-portrait { min-height:610px; }
  .blue-flame { right:7%; bottom:29%; transform:rotate(27deg) scale(.75); }
  .commission-section { min-height:auto; padding:95px 18px 100px; text-align:left; display:grid; grid-template-columns:1fr; gap:52px; }
  .commission-section h2 { font-size:60px; }
  .commission-ledger { padding:30px 22px; transform:none; }
  .commission-ledger > p:first-child { font-size:16px; }
  .commission-details span { padding:12px 0; grid-template-columns:1fr; gap:3px; }
  .commission-details b { text-align:left; }
  .commission-cta { min-height:72px; }
}

@media (prefers-reduced-motion:reduce) {
  .hero-copy.load-in > * { opacity:1; transform:none; animation:none; }
  .shake-button::before,.memory-line i,.blue-flame i { animation:none; }
  .globe-wrap,.site-header nav a,.maker-mark,.shelf-globe .mini-dome,.shelf-card,.callouts li { transition:none; }
}

/* Pass 3 — the last-light ritual and a live drift impression */
html { scrollbar-color:var(--brass) var(--night); scrollbar-width:thin; }
::-webkit-scrollbar { width:10px; }
::-webkit-scrollbar-track { background:var(--night); }
::-webkit-scrollbar-thumb { background:linear-gradient(var(--brass-light),#8f6332); border:2px solid var(--night); border-radius:10px; }
body { font-kerning:normal; font-optical-sizing:auto; }
.kicker,.chapter,.site-header nav a,.physics-readout,.fineprint,.maker-mark small { font-variant-numeric:tabular-nums; }
.hero-deck,.section-heading>p:last-child,.maker-copy>p,.commission-ledger>p { max-width:62ch; }
.site-header nav a:not(.nav-seal)::after { transition-timing-function:cubic-bezier(.16,.84,.31,1); }
.nav-seal:hover,.nav-seal:focus-visible { background:rgba(243,209,141,.1); box-shadow:inset 0 0 0 1px rgba(243,209,141,.12),0 0 22px rgba(243,209,141,.08); }

.brass-plaque { border:0; cursor:pointer; padding:0 12px; width:auto; font:inherit; transition:filter .28s ease,transform .28s cubic-bezier(.16,.84,.31,1),box-shadow .28s ease; }
.brass-plaque::after { content:''; position:absolute; inset:3px; border-radius:3px; pointer-events:none; background:linear-gradient(105deg,transparent 30%,rgba(255,250,213,.42) 48%,transparent 64%); transform:translateX(-130%); transition:transform .6s cubic-bezier(.16,.84,.31,1); }
.brass-plaque:hover,.brass-plaque:focus-visible { filter:saturate(1.12) brightness(1.08); transform:translateY(-2px); box-shadow:inset 0 0 0 2px #70501f,inset 0 0 0 4px rgba(255,246,196,.65),0 7px 14px rgba(0,0,0,.4); }
.brass-plaque:hover::after,.brass-plaque:focus-visible::after,.brass-plaque.is-impressed::after { transform:translateX(130%); }
.brass-plaque.is-impressed span { font-size:13px; letter-spacing:.12em; }
.brass-plaque.is-impressed small { color:#4a2b12; }

.light-key { position:absolute; z-index:8; left:-48px; bottom:48px; width:110px; min-height:104px; border:0; padding:4px; color:var(--brass-light); background:none; cursor:pointer; display:grid; justify-items:center; align-content:center; filter:drop-shadow(0 8px 10px rgba(0,0,0,.38)); transition:transform .3s cubic-bezier(.16,.84,.31,1),color .25s ease; }
.light-key svg { width:74px; height:54px; overflow:visible; fill:none; stroke:currentColor; stroke-width:3; stroke-linecap:round; transform-origin:50% 50%; transition:transform .55s cubic-bezier(.16,.84,.31,1); }
.light-key span { display:grid; line-height:1.05; text-align:center; margin-top:-3px; }
.light-key b { font-family:var(--serif); font-size:12px; font-weight:400; }
.light-key small { font-size:7px; letter-spacing:.18em; text-transform:uppercase; color:#cdd5df; margin-top:4px; }
.light-key:hover,.light-key:focus-visible { color:#ffe1a2; transform:translateY(-4px) rotate(-2deg); }
.light-key[aria-pressed="true"] svg { transform:rotate(180deg); }
.light-key[aria-pressed="true"] { color:#ffe09a; text-shadow:0 0 12px rgba(255,206,120,.55); }

.window-lights rect { fill:#ffd274; opacity:.08; transform-box:fill-box; transform-origin:center; }
.globe.lights-awake .window-lights rect { animation:windowWake .34s calc(var(--i) * 42ms) cubic-bezier(.16,.84,.31,1) forwards; }
.last-light-star path { fill:none; stroke:#ffe6a7; stroke-width:2; stroke-linecap:round; stroke-dasharray:130; stroke-dashoffset:130; opacity:0; }
.last-light-star circle { fill:#fff5c8; opacity:0; }
.globe.lights-awake .last-light-star path { animation:starFlight 1.1s 1.15s cubic-bezier(.16,.84,.31,1) forwards; }
.globe.lights-awake .last-light-star circle { animation:starSpark .65s 1.83s ease-out forwards; }
.globe.lights-awake .skater-motion { animation:skaterCircuit 3.4s .7s cubic-bezier(.42,0,.2,1) both; }
@keyframes windowWake { 55% { opacity:1; transform:scale(1.8); filter:drop-shadow(0 0 7px #ffd274); } 100% { opacity:.92; transform:scale(1); filter:drop-shadow(0 0 4px #ffd274); } }
@keyframes starFlight { 0% { opacity:0; stroke-dashoffset:130; } 20% { opacity:1; } 100% { opacity:.8; stroke-dashoffset:0; } }
@keyframes starSpark { 50% { opacity:1; r:7px; } 100% { opacity:.35; r:3px; } }
@keyframes skaterCircuit { 0% { transform:translate(0,0) rotate(0); } 24% { transform:translate(54px,-13px) rotate(10deg); } 52% { transform:translate(10px,-27px) rotate(-6deg); } 78% { transform:translate(-48px,-9px) rotate(-13deg); } 100% { transform:translate(0,0) rotate(0); } }

.memory-line { position:relative; height:52px; border:0; overflow:hidden; align-items:stretch; }
.memory-line svg { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.memory-paper-line { fill:none; stroke:#b4ac9d; stroke-width:1; }
#memoryTrace { fill:none; stroke:#33415b; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; transition:d .18s linear; }
.memory-line span { position:absolute; right:3px; top:2px; color:#737b88; font:700 6px/1 var(--round); letter-spacing:.18em; }
.memory-band.has-impression .memory-line { animation:impressionLift .7s cubic-bezier(.16,.84,.31,1); }
.memory-band.has-impression #memoryTrace { stroke:#9a6c35; }
@keyframes impressionLift { 45% { transform:translateY(-4px) rotate(-.4deg); filter:drop-shadow(0 6px 4px rgba(30,35,48,.14)); } }

.window-grid::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 18% 26%,rgba(238,247,250,.2),transparent 18%),linear-gradient(115deg,transparent 44%,rgba(238,247,250,.09) 46%,transparent 49%); mix-blend-mode:screen; }
.globe-shelf::before,.globe-shelf::after { content:''; position:absolute; bottom:-14px; width:8px; aspect-ratio:1; border-radius:50%; background:radial-gradient(circle at 35% 35%,#f3d18d,#7b4d25 64%,#251716 67%); box-shadow:0 2px 3px rgba(0,0,0,.5); }
.globe-shelf::before { left:2%; }.globe-shelf::after { right:2%; }
.site-footer a { position:relative; transition:color .25s ease; }
.site-footer a::after { content:''; position:absolute; left:0; right:100%; bottom:7px; height:1px; background:var(--brass); transition:right .28s cubic-bezier(.16,.84,.31,1); }
.site-footer a:hover::after,.site-footer a:focus-visible::after { right:0; }

@media (max-width:760px) {
  .light-key { left:-9px; bottom:8px; width:82px; min-height:82px; }
  .light-key svg { width:55px; height:39px; stroke-width:3.4; }
  .light-key b { font-size:10px; }.light-key small { font-size:5.5px; }
  .brass-plaque { padding:0 7px; }
  .brass-plaque span { letter-spacing:.055em; }
  .brass-plaque.is-impressed span { font-size:10px; }
  .memory-line { width:100%; max-width:340px; margin:auto; }
  .site-footer>p { display:block; text-align:left; margin:0; color:#d1d8e2; }
}

@media (min-width:761px) and (max-width:1050px) {
  .site-footer>p { display:block; grid-column:1/-1; margin:0; color:#d1d8e2; }
}

@media (prefers-reduced-motion:reduce) {
  .brass-plaque,.brass-plaque::after,.light-key,.light-key svg,#memoryTrace,.site-footer a::after { transition:none; }
  .globe.lights-awake .window-lights rect { animation:none; opacity:.92; filter:drop-shadow(0 0 4px #ffd274); }
  .globe.lights-awake .last-light-star path { animation:none; opacity:.8; stroke-dashoffset:0; }
  .globe.lights-awake .last-light-star circle { animation:none; opacity:.45; }
  .globe.lights-awake .skater-motion,.memory-band.has-impression .memory-line { animation:none; }
}
