:root{--ink:#17152a;--paper:#f9f6ef;--purple:#daaff1;--yellow:#ffc972;--mint:#bbdfc5;--peach:#ffbc9b;--muted:#615e73;--ring:#e95361;--line:#302c3a;--radius:20px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit}button,a,textarea,[tabindex]{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex]:focus-visible,textarea:focus-visible{outline:4px solid var(--ring);outline-offset:4px}.skip{position:absolute;top:-80px;left:15px;z-index:99;background:#fff;padding:12px 18px}.skip:focus{top:12px}h1,h2,h3,p{margin-top:0}h1,h2,h3,.wordmark,.room-num,.section-tag,.btn,.ticker,.play-head,.stage-hint,.art-caption,.room-glyph,.eyebrow,.footer-logo,.half-label,.pair-card>span{letter-spacing:-.025em}h1,h2,h3,.wordmark,.room-num,.btn,.play-head{font-family:"Arial Black","Arial Narrow",system-ui,sans-serif}.site-shell{overflow:hidden}.topbar{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,5vw,86px);background:#17152a;color:white;gap:20px;border-bottom:1px solid #33304e}.wordmark{text-decoration:none;font-size:24px;font-weight:900;letter-spacing:-.09em;white-space:nowrap}.mark{color:#f1c271;display:inline-block;margin-right:12px;font-size:27px}.wordmark-muted{color:#cdb5df}.tiny-dot{color:#eeb87f}.topbar nav{display:flex;align-items:center;gap:clamp(10px,2.7vw,40px)}.topbar nav a{font-size:13px;font-weight:750;text-decoration:none;opacity:.85}.topbar nav a:hover{opacity:1;text-decoration:underline;text-underline-offset:6px}.topbar .universe{border:1px solid #7f7993;padding:9px 13px;border-radius:4px;opacity:1}.hero{display:grid;grid-template-columns:1.1fr .9fr;position:relative;min-height:625px;background:#17152a;color:#f8f5ed;padding:90px clamp(18px,5vw,86px) 88px;gap:18px}.hero-copy{z-index:1;max-width:765px}.hero-grain{position:absolute;inset:0;pointer-events:none;opacity:.3;background-image:radial-gradient(circle at 25% 30%,#ffffff12 1px,transparent 2px);background-size:16px 16px}.eyebrow{display:flex;gap:12px;align-items:center;font:700 11px/1.4 ui-monospace,monospace;letter-spacing:.13em;color:#dbd2d6}.live-dot{width:7px;height:7px;background:#f3ca7a;border-radius:100%;box-shadow:0 0 14px #f3ca7a}.eyebrow-line{height:1px;flex:1;max-width:44px;background:#696579}.hero h1{font-size:clamp(74px,10.1vw,178px);line-height:.86;letter-spacing:-.106em;margin:50px 0 30px;white-space:nowrap}.hero h1 em{font:italic 400 .45em/1.1 Georgia,serif;letter-spacing:-.075em;color:#badeca}.hero h1>span{display:block}.hero-period{color:#f6bd71}.hero-lede{max-width:470px;font-size:clamp(21px,2.2vw,32px);font-weight:760;line-height:1.24;letter-spacing:-.045em;margin:0 0 18px}.underline-mark{background:linear-gradient(transparent 76%,#d795db 76%)}.hero-sub{color:#c1bdce;max-width:460px;font-size:15px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;border:2px solid transparent;border-radius:6px;padding:16px 20px;min-height:50px;font-size:12px;line-height:1.3;font-weight:900;letter-spacing:.045em;transition:transform .2s,box-shadow .2s,background .2s}.btn:hover{transform:translateY(-3px)}.btn-primary{background:#f7c26f;color:#17152a;box-shadow:5px 5px 0 #694d73}.btn-outline{border-color:#9590aa;color:#f9f6ef;background:transparent}.btn-outline:hover{background:#ffffff19}.hero-pdf{margin-top:24px;display:inline-flex;flex-direction:column;color:#f0cf99;font-size:14px;font-weight:800;text-decoration:none;border:2px solid #c8a56b;border-radius:6px;padding:10px 15px;background:#f0cf9912;max-width:455px}.hero-pdf:hover{background:#f0cf992a}.hero-pdf span{font:12px/1.5 ui-monospace,monospace;opacity:.82;color:#dbd6e5}.hero-art{align-self:center;position:relative;max-width:650px}.mobile-sculpture{width:100%;overflow:visible;filter:drop-shadow(0 14px 25px #0004)}.art-caption{font:700 10px ui-monospace,monospace;letter-spacing:.12em;color:#d8d1e1;text-align:center}.art-caption span{font-size:20px}.art-float{animation:float 7s ease-in-out infinite;transform-origin:310px 260px}.art-spin{animation:slow-turn 11s ease-in-out infinite;transform-origin:165px 416px}.art-bob{animation:bob 5s ease-in-out infinite;transform-origin:460px 452px}.ticker{background:#c3e4cb;border-block:2px solid var(--ink);overflow:hidden;white-space:nowrap}.ticker>div{width:max-content;font-size:13px;font-weight:900;letter-spacing:.2em;padding:13px 0;animation:ticker 30s linear infinite}.intro{max-width:1320px;margin:auto;padding:112px clamp(18px,5vw,72px)}.section-tag{font:800 12px ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase}.intro h2,.collection-top h2,.sources h2,.takeaway h2,.contact h2{font-size:clamp(48px,6.4vw,92px);line-height:1.03;letter-spacing:-.088em;margin:18px 0 40px;font-weight:900}.intro h2 em,.collection-top h2 em,.sources h2 em,.takeaway h2 em,.contact h2 em,.interlude h2 em{font:italic 400 1.06em Georgia,serif;letter-spacing:-.065em;color:#8f639a}.intro-grid{display:grid;grid-template-columns:1fr 320px;gap:clamp(40px,8vw,140px)}.intro-grid>p{font-size:clamp(20px,2.4vw,29px);font-weight:520;letter-spacing:-.045em;line-height:1.46;max-width:690px}.side-note{background:#e4d3e9;padding:26px;border:2px solid var(--ink);box-shadow:7px 7px 0 #17152a}.side-note span{font:900 11px ui-monospace,monospace}.side-note p{font-size:22px;font-family:Georgia,serif;line-height:1.35;margin:18px 0}.side-note a{font-size:13px;font-weight:850;text-underline-offset:4px}.museum{padding:88px clamp(16px,4.6vw,76px) 110px;background:#f1ecdf;border-top:2px solid var(--ink);border-bottom:2px solid var(--ink)}.collection-top{max-width:1380px;margin:auto;display:flex;justify-content:space-between;gap:30px;align-items:end}.collection-top h2{margin-bottom:35px}.collection-aside{font-size:16px;max-width:340px;color:#4f4a5b}.room-jump{max-width:1380px;margin:0 auto 46px;display:flex;gap:9px;flex-wrap:wrap}.room-jump a{font-size:12px;font-weight:850;background:#fff;border:1px solid #918a8c;border-radius:30px;padding:9px 14px;text-decoration:none}.room-jump a:hover{background:#ddc6e1}.room{border:2px solid var(--ink);max-width:1380px;margin:0 auto 36px;display:grid;grid-template-columns:minmax(295px, .83fr) minmax(0,1.17fr);box-shadow:8px 8px 0 var(--ink);scroll-margin-top:24px}.room-side{padding:36px clamp(24px,3.7vw,58px) 32px;position:relative;display:flex;flex-direction:column;align-items:flex-start}.room-num{font:850 11px ui-monospace,monospace;letter-spacing:.1em}.room-glyph{position:absolute;top:27px;right:37px;font-size:60px;opacity:.5;line-height:1}.room h3{font-size:clamp(43px,4.55vw,71px);line-height:1.01;margin:55px 0 25px;letter-spacing:-.083em;position:relative}.room-instruction{font-weight:670;font-size:17px;line-height:1.52;max-width:420px}.room-reflection{font:15px/1.6 Georgia,serif;max-width:430px;margin:12px 0 36px}.room-reflection strong{font:900 12px system-ui,sans-serif;letter-spacing:.05em;text-transform:uppercase}.controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.controls button,.fold-controls button{border:1.5px solid var(--ink);border-radius:5px;background:#fffaf0;padding:11px 13px;min-height:44px;color:var(--ink);font-size:12px;font-weight:850;transition:background .15s,transform .15s}.controls button:hover,.fold-controls button:hover{background:#f9cb87;transform:translateY(-2px)}.room-play{min-width:0;border-left:2px solid var(--ink);background:#faf8f2;padding:25px clamp(16px,3vw,38px) 26px;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:18px}.play-head{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;font:850 11px ui-monospace,monospace;letter-spacing:.06em}.play-head span:last-child{opacity:.53}.stage-hint{font:italic 15px/1.5 Georgia,serif;color:#5c586d;margin:0;text-align:center}.mint .room-side{background:#bce1c7}.lavender .room-side{background:#dfc9ec}.peach .room-side{background:#ffc5a6}.cream .room-side{background:#ece1bc}.blue .room-side{background:#b9d0eb}.rose .room-side{background:#f5bdc2}.lemon .room-side{background:#f2dc8e}.sky-stage,.path-stage{width:100%;height:auto;display:block;aspect-ratio:560/370;touch-action:none;border-radius:7px}.sky-star{cursor:grab;outline:none}.sky-star:focus-visible .focus-ring{opacity:1}.sky-star:active{cursor:grabbing}.sky-star .focus-ring{opacity:0}.pattern-toolbar{display:flex;gap:12px;justify-content:center;align-items:center}.swatch{border:2px solid var(--ink);width:42px;height:42px;border-radius:50%;transition:transform .18s;position:relative}.swatch:hover,.swatch[aria-pressed="true"]{transform:scale(1.15);outline:3px solid #fff;box-shadow:0 0 0 5px var(--ink)}.swatch[data-color="0"]{background:#fa8d83}.swatch[data-color="1"]{background:#b79be9}.swatch[data-color="2"]{background:#8cceaf}.swatch[data-color="3"]{background:#f2c46e}.swatch.eraser{background:#fff;font-size:21px}.pattern-grid{display:grid;grid-template-columns:repeat(8,1fr);max-width:424px;width:100%;gap:4px;align-self:center;padding:8px;background:#262238;border-radius:6px}.pattern-tile{aspect-ratio:1;min-height:30px;border:1px solid #242035;border-radius:3px;background:#fff7e9;display:grid;place-items:center;color:#262238;font-size:26px;font-weight:900;padding:0;transition:background .16s,transform .16s}.pattern-tile:focus-visible{outline-offset:0;z-index:2}.pattern-tile:hover{transform:scale(.91)}.sentence-paper{min-height:200px;background:#fcf3e4;border:2px solid #242238;box-shadow:5px 5px 0 #dabc8c;padding:35px 25px;font:italic clamp(26px,3vw,42px)/1.3 Georgia,serif;letter-spacing:-.045em;overflow-wrap:anywhere;display:flex;align-items:center}.caret{color:#e16b60;animation:blink 1.2s infinite}.word-bank{display:flex;gap:9px;flex-wrap:wrap;max-height:220px;overflow:auto;padding:5px}.word-bank button{border:1px solid #27233a;background:#e4d8eb;border-radius:30px;min-height:40px;padding:8px 12px;font:650 14px Georgia,serif}.word-bank button:hover{background:#ffd89e}.poem-sheet{border:2px solid var(--ink);box-shadow:7px 7px 0 #d8d0b5;min-height:280px;perspective:800px;background:#fffdf7;overflow:hidden;display:grid;grid-template-rows:1fr 25px 1fr}.poem-half{padding:24px 32px;transition:transform .4s,filter .4s;transform-origin:bottom;backface-visibility:hidden}.poem-half p{font:italic clamp(25px,2.6vw,35px)/1.2 Georgia,serif;max-width:550px;margin:12px 0 0}.poem-half.bottom-half{transform-origin:top}.half-label{font:800 11px ui-monospace,monospace;letter-spacing:.12em;color:#77717b}.poem-hinge{border-top:2px dashed #ada79c;border-bottom:2px dashed #ada79c;text-align:center;font:800 10px ui-monospace,monospace;letter-spacing:.1em;padding:4px;background:#eee4d1}.poem-sheet.folded .top-half{transform:rotateX(-11deg);filter:brightness(.97)}.poem-sheet.folded .bottom-half{transform:rotateX(11deg);filter:brightness(.95)}.fold-controls{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.rhythm-scroll{max-width:100%;overflow-x:auto;padding:5px 4px;scrollbar-color:#6b6479 #e0dfdc}.rhythm-grid{display:grid;grid-template-columns:60px repeat(12,minmax(0,1fr));gap:5px;align-items:center;padding:20px 8px;border-radius:6px;background:#17152a}.rhythm-row-label{font:700 11px ui-monospace,monospace;color:#fdf9f2}.beat{height:48px;min-width:0;padding:0;border-radius:4px;border:2px solid #5b5a75;background:#2c2b4a;transition:background .14s,transform .14s}.beat[aria-pressed="true"]{background:#eeb66a;border-color:#eeb66a;box-shadow:inset 0 -5px 0 #cd8f54}.beat.is-current{outline:2px solid #abedc2;outline-offset:2px}.beat:hover{transform:scale(.88)}.rhythm-grid .beat:focus-visible{z-index:2}.path-stage{aspect-ratio:560/330;cursor:crosshair;touch-action:none}.path-stage:focus-visible{outline-offset:4px}.pair{display:grid;grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);align-items:center;gap:8px}.pair-card{min-height:210px;background:#252038;border-radius:8px;display:flex;flex-direction:column;justify-content:space-between;padding:20px;color:#fff}.pair-card:nth-child(3){background:#edaa70;color:#1b1729}.pair-card>span:first-child{font:850 10px ui-monospace,monospace;letter-spacing:.08em}.pair-card strong{font-size:clamp(23px,3vw,42px);line-height:1;letter-spacing:-.065em;overflow-wrap:anywhere}.pair-card .card-asterisk{font-size:27px;align-self:flex-end}.pair-symbol{font-size:30px;font-weight:900;text-align:center}.room textarea{width:100%;border:2px solid var(--ink);border-radius:5px;padding:15px;background:#fffdf5;color:#17152a;resize:vertical;min-height:91px}.interlude{padding:100px 22px 110px;text-align:center;background:#201d36;color:#f8f3e9;border-block:2px solid var(--ink)}.interlude .section-tag{color:#d9cde0}.interlude-symbol{font-size:80px;color:#eead69;margin:25px 0 0}.interlude h2{max-width:1060px;margin:0 auto 25px;font-size:clamp(40px,5.8vw,80px);line-height:1.13;letter-spacing:-.077em}.interlude h2 em{color:#bce3cc}.interlude>p:not(.interlude-symbol){max-width:530px;margin:0 auto 30px;color:#cbc7d7;font-size:18px}.interlude-credit{font:750 11px ui-monospace,monospace;letter-spacing:.09em;color:#ffcb85}.sources{padding:110px clamp(20px,6vw,96px);max-width:1500px;margin:auto}.sources h2{margin-bottom:55px}.source-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.source-grid>div{border-top:3px solid var(--ink);padding:22px 0}.source-grid h3{font-size:24px;letter-spacing:-.05em}.source-grid p{font-size:15px;line-height:1.7;color:#4f4b5e}.source-grid a{font-size:13px;line-height:1.4;font-weight:760;text-underline-offset:3px}.takeaway{background:#d9bfeb;border-block:2px solid var(--ink);display:flex;align-items:end;justify-content:space-between;gap:40px;padding:85px clamp(20px,6vw,96px)}.takeaway h2{margin-bottom:25px}.takeaway p{max-width:540px;font-size:17px}.takeaway-btn{max-width:370px;display:flex;flex-direction:column;text-align:center;gap:6px}.takeaway-btn span{font:11px ui-monospace,monospace;letter-spacing:0}.contact{background:#f6c879;padding:95px clamp(20px,6vw,96px);border-bottom:2px solid var(--ink)}.contact h2{max-width:1020px;font-size:clamp(40px,6vw,86px);margin-bottom:22px}.contact h2 em{color:#5e385d}.contact p{max-width:650px;font-size:17px}.contact-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}.btn-dark{background:#17152a;color:#fff;min-width:183px}.contact-home{font-size:15px;font-weight:900;text-underline-offset:4px}.footer{background:#17152a;color:#e6e0ef;padding:35px clamp(20px,6vw,96px);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-logo{font-size:16px;font-weight:900;white-space:nowrap;text-decoration:none}.footer p{font-size:13px;margin:0;color:#c2bccc}.footer>a:last-child{font-size:13px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,150px);opacity:0;pointer-events:none;background:#17152a;color:#fff;z-index:99;padding:13px 20px;border-radius:7px;box-shadow:4px 4px 0 #dfaf77;font-size:14px;transition:transform .3s,opacity .3s;max-width:90vw}.toast.show{transform:translate(-50%,0);opacity:1}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);height:1px;width:1px;overflow:hidden;position:absolute;white-space:nowrap}@keyframes float{50%{transform:translateY(14px) rotate(-4deg)}}@keyframes slow-turn{50%{transform:rotate(15deg)}}@keyframes bob{50%{transform:translate(-14px,10px)}}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes blink{50%{opacity:0}}@media(max-width:1020px){.topbar nav a:not(.universe){display:none}.hero{grid-template-columns:1.2fr .8fr;padding-top:70px;min-height:550px}.hero h1{font-size:clamp(67px,10vw,120px)}.room{grid-template-columns:minmax(265px,.92fr) minmax(0,1.08fr)}.room-side{padding:28px 22px}.room h3{font-size:clamp(42px,5vw,65px)}.room-play{padding:22px 17px}.rhythm-grid{gap:3px}.beat{height:39px}.room-glyph{font-size:42px;right:20px}}@media(max-width:760px){.topbar{height:72px;padding:0 18px}.wordmark{font-size:22px}.topbar nav .universe{font-size:12px}.hero{grid-template-columns:1fr;padding:64px 20px 44px;gap:2px}.hero h1{font-size:clamp(70px,16vw,125px);margin:48px 0 25px}.hero-art{width:min(100%,390px);justify-self:center;margin-top:18px}.mobile-sculpture{max-height:380px}.intro{padding:74px 22px}.intro-grid{grid-template-columns:1fr;gap:15px}.side-note{max-width:360px}.museum{padding:70px 17px}.collection-top{display:block}.collection-aside{margin-bottom:30px}.room{grid-template-columns:1fr;box-shadow:5px 5px 0 var(--ink);margin-bottom:24px}.room-side{padding:30px 26px}.room h3{margin:25px 0;font-size:clamp(42px,10vw,69px)}.room-reflection{margin-bottom:25px}.room-play{border-left:0;border-top:2px solid var(--ink);padding:25px 15px}.source-grid{grid-template-columns:1fr;gap:5px}.takeaway{display:block;padding-block:70px}.takeaway-btn{margin-top:28px}.interlude{padding:80px 20px}.footer{flex-direction:column;align-items:flex-start}.hero-lede{font-size:23px}.eyebrow{font-size:9px}.rhythm-grid{min-width:625px;grid-template-columns:45px repeat(12,minmax(42px,1fr));gap:3px;padding:13px 5px}.beat{height:38px}.rhythm-row-label{font-size:9px}.pair-card{min-height:175px;padding:12px}.pair-card strong{font-size:26px}.play-head{font-size:10px}.sentence-paper{font-size:28px;min-height:145px}.pattern-grid{gap:3px}.pattern-tile{min-height:22px}.intro h2,.collection-top h2,.takeaway h2,.contact h2,.sources h2{font-size:clamp(45px,10vw,70px)}}@media(max-width:380px){.topbar .universe{padding:6px}.topbar nav .universe{font-size:10px}.wordmark{font-size:19px}.hero h1{font-size:clamp(63px,16vw,85px)}.hero-actions .btn{width:100%}.pair{grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr)}.pair-card strong{font-size:22px}.beat{height:44px}.rhythm-grid{gap:3px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.btn:hover{transform:none!important}.ticker>div{transform:none!important}.art-float,.art-spin,.art-bob{transform:none!important}}


/* FINAL EDITION: optional routes, personal postcard, motion preference and deliberate offline use. */
:root{--violet:#17152a;--soft-lilac:#e2c8ef;--butter:#f7ce85}
.btn-motion{font-size:12px;background:transparent;color:#e7dfee;border:1px solid #756a90;padding-inline:15px;min-width:auto;white-space:nowrap}
.btn-motion:hover{background:#3a3353;color:#fff}
.site-shell.is-still *, .site-shell.is-still *::before, .site-shell.is-still *::after{animation-play-state:paused!important;transition-duration:0s!important;scroll-behavior:auto!important}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.hero-art{--pointer-x:0deg;--pointer-y:0deg;transform:perspective(1200px) rotateY(var(--pointer-x)) rotateX(var(--pointer-y));transition:transform .3s ease-out;will-change:transform}.site-shell.is-still .hero-art{transform:none}}
.route-studio{margin:28px 0 34px;padding:30px clamp(17px,4vw,54px);border:2px solid #201b32;background:#17152a;color:#f8f1e7;box-shadow:7px 7px 0 #f5c87b;display:grid;grid-template-columns:1fr 1.1fr;gap:26px 50px;position:relative;overflow:hidden}
.route-studio::after{content:'✳';position:absolute;right:-45px;top:-80px;font-size:260px;line-height:1;color:#d6aff2;opacity:.075;pointer-events:none}
.route-studio .section-tag{color:#d5c7eb}.route-studio-heading{grid-row:span 2;position:relative;z-index:1}
.route-studio-heading h3{font-size:clamp(34px,4vw,62px);line-height:1.03;letter-spacing:-.07em;margin:20px 0;color:#fff}.route-studio-heading h3 em{color:#efbc8b}
.route-studio-heading p{font-size:16px;line-height:1.65;color:#d6d0de;max-width:400px}
.route-picks{display:flex;flex-wrap:wrap;align-items:center;gap:9px;position:relative;z-index:1}
.route-pick{padding:10px 12px;border:1px solid #6e637f;border-radius:4px;color:#ede9f4;background:transparent;font-weight:750;font-size:13px;text-align:left}
.route-pick:hover,.route-pick[aria-pressed=true]{background:#f6cf90;color:#21172a;border-color:#f6cf90}
.route-pick span{margin-right:7px;font-size:17px}.route-invitation{border:1px solid #6d607d;padding:21px;position:relative;z-index:1;background:#242036}
.route-invitation-tag{font:800 10px ui-monospace,monospace;letter-spacing:.13em;color:#bba6d1}
.route-invitation p{font-family:Georgia,serif;font-size:clamp(18px,2vw,25px);line-height:1.4;color:#fff7e9;margin:14px 0 22px;max-width:560px}
.route-links{display:flex;gap:10px;flex-wrap:wrap}.route-links a{padding:12px 14px;background:#b8e1c8;color:#1d2430;text-decoration:none;font-size:12px;font-weight:850;border-radius:3px}
.route-links a+ a{background:#dcc7ef}.route-links a:hover{text-decoration:underline}
.bench-section{background:#b4dcc4;border-block:2px solid #1a1830;padding:105px clamp(18px,6vw,100px)}
.bench-head{display:flex;justify-content:space-between;align-items:center;gap:30px;max-width:1340px;margin:0 auto 45px}.bench-head h2{margin:20px 0;font-size:clamp(47px,6vw,91px);letter-spacing:-.08em;line-height:1.04}
.bench-head h2 em{color:#65507a}.bench-head p{font-size:17px;line-height:1.7;max-width:720px}.bench-flower{font-size:clamp(80px,14vw,240px);line-height:1;color:#3b7468;animation:slow-turn 9s ease-in-out infinite}
.bench-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(20px,5vw,90px);max-width:1340px;margin:auto}
.bench-form{display:flex;flex-direction:column;gap:11px;background:#f9f2e5;border:2px solid #181526;box-shadow:8px 8px 0 #1d1b2c;padding:clamp(20px,3vw,35px);min-width:0}
.bench-prompt{background:#242039;color:#fbefe2;padding:20px;margin-bottom:12px}.bench-small{font:800 10px ui-monospace,monospace;color:#eabf95;letter-spacing:.1em}.bench-prompt p{font:italic clamp(21px,2.7vw,29px)/1.3 Georgia,serif;margin:12px 0 20px}.bench-shuffle{font-size:12px;font-weight:850;text-decoration:underline;text-underline-offset:4px;color:#bde6d0}
.bench-form label{font-weight:850;font-size:15px;margin-top:9px}.bench-form label span{font-size:12px;font-weight:400;color:#665c71}
.bench-form input,.bench-form textarea{display:block;width:100%;background:#fffdf7;border:2px solid #353046;border-radius:3px;padding:15px 14px;color:#201e30;font:400 16px/1.5 system-ui,sans-serif;resize:vertical}
.bench-form input:focus-visible,.bench-form textarea:focus-visible{outline:4px solid #8a71cd;outline-offset:2px}
.form-hint{font-size:11px;color:#5c5568}.bench-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:12px}.bench-actions .btn{min-width:auto;padding:15px 16px;font-size:12px}.btn-cream{background:#f6ce88;color:#1f192d}.bench-clear{font-size:12px;font-weight:800;text-decoration:underline;text-underline-offset:3px;padding:9px}.bench-privacy{font-size:12px;line-height:1.6;color:#645c66}
.postcard-shell{position:sticky;top:25px;min-width:0}.postcard-preview{aspect-ratio:1.45;display:flex;flex-direction:column;overflow:hidden;position:relative;background:#26213b;color:#fff8e7;border:2px solid #17152a;box-shadow:10px 10px 0 #527b75;padding:clamp(18px,3vw,34px)}
.postcard-top,.postcard-bottom{display:flex;justify-content:space-between;gap:16px;font:750 clamp(8px,.83vw,11px) ui-monospace,monospace;letter-spacing:.07em;position:relative;z-index:1}
.postcard-top span:first-child{color:#f5c982}.postcard-bottom{margin-top:auto;color:#cfc4e0}.postcard-orbit{position:absolute;width:53%;aspect-ratio:1;border-radius:50%;background:#baedcb;right:-8%;top:13%;transform:rotate(-18deg);box-shadow:-35px 30px 0 #f2b69b,-60px -14px 0 #a57fca;animation:float 6s ease-in-out infinite}
.postcard-orbit span{font-size:clamp(130px,19vw,280px);position:absolute;inset:0;display:grid;place-items:center;color:#273a38;opacity:.52;line-height:1}
.postcard-content{position:relative;z-index:1;margin:auto 0;max-width:78%}.postcard-kicker{font:750 clamp(8px,.85vw,11px) ui-monospace,monospace;letter-spacing:.12em;color:#efc67c}
.postcard-content strong{display:block;font-size:clamp(29px,3.5vw,62px);letter-spacing:-.06em;line-height:1.06;margin:14px 0;overflow-wrap:anywhere}
.postcard-content p{font:italic clamp(14px,1.6vw,25px)/1.3 Georgia,serif;color:#f9e2d0;white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.postcard-hint{font-size:12px;line-height:1.6;color:#315e54;margin-top:22px}
.counterpoint{padding:80px clamp(20px,6vw,100px);background:#f4ece1}.counterpoint h2{font-size:clamp(40px,6vw,78px);letter-spacing:-.075em;line-height:1.1;margin:22px 0 37px}.counterpoint h2 em{color:#8765a5}
.counterpoint-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.counterpoint-grid p{padding-top:16px;border-top:2px solid #1b1830;font-size:16px;line-height:1.75;color:#444052}
@media(max-width:1020px){.route-studio{grid-template-columns:1fr;gap:14px}.route-studio-heading{grid-row:auto}.bench-layout{grid-template-columns:1fr;gap:45px}.postcard-shell{position:static}.postcard-preview{max-width:820px}.counterpoint-grid{grid-template-columns:1fr;gap:0}.counterpoint-grid p{margin:6px 0}}
@media(max-width:760px){.btn-motion{width:100%;text-align:center}.hero-actions{flex-wrap:wrap}.route-studio{margin-inline:4px;padding:22px 18px}.route-links{flex-direction:column}.route-links a{text-align:center}.bench-section{padding:76px 19px}.bench-flower{display:none}.bench-head{margin-bottom:27px}.bench-layout{gap:30px}.bench-form{padding:20px}.postcard-preview{aspect-ratio:1.1;padding:19px}.postcard-content{max-width:86%}.postcard-content strong{font-size:clamp(31px,7vw,51px)}.postcard-content p{font-size:clamp(16px,4vw,21px)}.postcard-orbit{width:70%}.counterpoint{padding-block:60px}.counterpoint h2{font-size:clamp(39px,9vw,67px)}}
@media(max-width:390px){.postcard-top,.postcard-bottom{font-size:7px}.postcard-preview{aspect-ratio:1;min-height:320px}.postcard-content strong{font-size:27px}.postcard-content{max-width:94%}.route-pick{flex-grow:1}}
@media(prefers-reduced-motion:reduce){.hero-art{transform:none!important;will-change:auto}.bench-flower,.postcard-orbit{animation:none!important}}

/* legible controls and typography against the decorative postcard artwork */
.bench-shuffle{display:inline-flex;align-items:center;justify-content:flex-start;border:0;background:transparent;padding:0;color:#bde6d0;appearance:none;text-decoration:underline;text-underline-offset:4px;font-size:13px;font-weight:850}
.bench-shuffle:hover{color:#fff9e9}
.bench-clear{border:0;background:transparent;appearance:none;color:#292336}
.postcard-preview::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,24,46,.93) 0%,rgba(28,24,46,.82) 42%,rgba(28,24,46,.15) 100%);z-index:0;pointer-events:none}
.postcard-content,.postcard-top,.postcard-bottom{z-index:2;text-shadow:0 1px 8px #1b1730}
.postcard-content{max-width:76%}.postcard-bottom{color:#e4d8ee}
@media(max-width:760px){.postcard-content{max-width:90%}.postcard-preview::after{background:linear-gradient(90deg,rgba(28,24,46,.93) 0%,rgba(28,24,46,.7) 48%,rgba(28,24,46,.25) 100%)}}
