:root{--ink:#0d0c0b;--char:#181514;--char2:#221e1b;--paper:#eadfc4;--paper2:#d6c298;--cork:#7a5634;--red:#8f1b1b;--red2:#b3261e;--txt:#f1e9d8;--pt:#2a2118;
--type:'Special Elite','Courier New',monospace;--hand:'Caveat','Comic Sans MS',cursive;--serif:'Libre Baskerville',Georgia,serif;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--paper:#d9cdb1;--paper2:#c4b083}}
:root[data-theme="dark"]{--paper:#d9cdb1;--paper2:#c4b083}
html{height:100%;scroll-padding-top:env(safe-area-inset-top,0px)}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--ink);color:var(--txt);font-family:var(--serif);line-height:1.55}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin:0}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.btn{display:inline-block;background:var(--red);color:#f6ecd9;font-family:var(--type);font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:11px 20px;border:1px solid #c04a40;cursor:pointer;transition:background .2s}
.btn:hover,.btn:focus-visible{background:var(--red2)}
:focus-visible{outline:2px solid #e8b04a;outline-offset:2px}
.paper{background:var(--paper);color:var(--pt);background-image:radial-gradient(rgba(90,60,20,.13) 1px,transparent 1.5px);background-size:5px 5px}
.hand{font-family:var(--hand);font-weight:700}
.note{background:#e6d3a6;color:var(--pt);padding:10px 14px;box-shadow:2px 4px 10px rgba(0,0,0,.5);position:relative}
.pin::before{content:"";position:absolute;top:-6px;left:50%;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff6a5c,#8f1b1b 70%);box-shadow:0 2px 3px rgba(0,0,0,.6)}

/* nav */
.nav{background:var(--ink);border-bottom:1px solid #2e2925}
.nav .wrap{display:flex;align-items:center;gap:22px;min-height:78px}
.logo{display:flex;align-items:center;gap:10px;font-family:var(--type);line-height:.95}
.fp{width:44px;height:52px;border-radius:50%;background:repeating-radial-gradient(ellipse at 50% 60%,transparent 0 3px,rgba(230,220,200,.55) 3px 4px);opacity:.7}
.logo b{display:block;font-size:24px;letter-spacing:.04em;color:#f3ead6;position:relative}
.logo b::after{content:"";position:absolute;left:-4px;right:-4px;top:52%;border-top:2px solid var(--red2);transform:rotate(-6deg)}
.logo small{display:block;font-size:8px;letter-spacing:.2em;color:#c9bfa9;margin-top:4px}
.links{display:flex;gap:18px;margin-left:auto;font-family:var(--type);font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.links a{padding:6px 0;border-bottom:2px solid transparent}
.links a:hover,.links a.on{border-color:var(--red2)}
.links a.on{color:#e0574a}
.menu{display:none;margin-left:auto;background:none;color:var(--txt);border:1px solid #4a423a;padding:8px 12px;font-family:var(--type)}
.tagline{font-family:var(--type);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#cfc5b0;padding:0 0 10px}


/* v2: pages + polish */
.cover.img{padding:0;background:#111;aspect-ratio:20/31}.cover.img img{width:100%;height:100%;object-fit:cover;display:block}.cover.img::after,.cover.img::before{display:none}
.ghost-l{background:transparent;border-color:#cfc5b0;color:#efe6d2;margin-left:8px}.ghost-l:hover{background:rgba(255,255,255,.08)}
.cover{transition:transform .2s}
.cover::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 68% 30%,rgba(255,255,255,.4) 0 5%,rgba(255,255,255,.09) 6% 17%,transparent 18%)}
.book:hover .cover,.card:hover .cover{transform:translateY(-4px)}
.btn{transition:background .2s,transform .15s}.btn:active{transform:translateY(1px)}
.sus{cursor:pointer;transition:transform .2s}.sus:hover{transform:rotate(0) scale(1.03)}
#page{background:var(--paper);color:var(--pt);background-image:radial-gradient(rgba(90,60,20,.13) 1px,transparent 1.5px);background-size:5px 5px;min-height:70vh;padding:34px 0 60px}
.back,.badge{font-family:var(--type);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--red)}
.badge::before{content:"● "}.sch{color:#6b5a3a}.back{text-decoration:underline}
.ph1{font-family:var(--type);font-weight:400;font-size:clamp(26px,4vw,42px);text-transform:uppercase;letter-spacing:.04em;margin:8px 0 6px}
.lede{max-width:60ch;margin-bottom:18px}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0;align-items:center}
.tab{font-family:var(--type);font-size:11px;letter-spacing:.06em;text-transform:uppercase;background:#f3ead2;color:var(--pt);border:1px solid #b9a67c;padding:7px 12px;cursor:pointer}
.tab.on{background:var(--red);color:#f6ecd9;border-color:var(--red)}
.srch{margin-left:auto;padding:7px 10px;border:1px solid #b9a67c;background:#f6eedb;font:14px var(--serif);color:var(--pt);min-width:170px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px}
.card{background:var(--ink);color:var(--txt);padding:12px;display:flex;flex-direction:column;gap:5px;font-size:12px;box-shadow:0 6px 16px rgba(0,0,0,.35)}
.card b{font-family:var(--type);font-weight:400;font-size:15px}.card .btn{text-align:center;margin-top:auto}.card span{color:#b5ab97}.card .badge{color:#e0574a}
.cf{display:grid;grid-template-columns:260px 1fr;gap:30px;margin-top:14px;position:relative}
.cf .cover{--ts:28px}
.cf dl{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;margin:14px 0;font-size:14px}
.cf dt{font-family:var(--type);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.cf dd{margin:0}
.poi{display:flex;gap:12px;align-items:center;margin:12px 0}
.av{width:58px;height:70px;flex:none;background:radial-gradient(circle at 50% 36%,#c9b9a4 0 22%,transparent 23%),radial-gradient(ellipse at 50% 100%,#2a2a2e 0 45%,transparent 46%),linear-gradient(#59606a,#2b2d33);border:3px solid #eee6d2;box-shadow:1px 3px 6px rgba(0,0,0,.4)}
.cf .note.hand{position:absolute;right:0;top:-120px;font-size:22px;transform:rotate(3deg);max-width:160px;text-align:center}
.ghost{background:none;color:var(--pt);border-color:var(--pt)}.ghost:hover{background:rgba(0,0,0,.08)}
.stops{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.stops li{display:grid;grid-template-columns:70px 150px 1fr auto;gap:12px;align-items:center;background:#f3ead2;border:1px solid #cdb98c;padding:10px 14px;font-size:14px}
.stops .dt{font-family:var(--type)}
.items{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:18px 0}
.item{background:#f3ead2;border:1px solid #cdb98c;padding:14px;font-size:14px;margin-bottom:8px}
.items .item{margin:0}.item i{font-style:normal;font-size:26px;display:block;filter:grayscale(1) contrast(1.3)}
.item b{font-family:var(--type);font-weight:400}.item summary{cursor:pointer}.item p{margin-top:8px}
.pf{display:grid;gap:8px;max-width:440px;margin-top:22px}
.pf input,.pf textarea{padding:11px;border:1px solid #9c8a66;background:#f6eedb;font:14px var(--serif);color:var(--pt)}
.msg{font-family:var(--hand);font-weight:700;font-size:22px;color:var(--red);min-height:1.3em;margin-top:8px}
@media (max-width:760px){.cf{grid-template-columns:1fr}.cf>div:nth-child(2){max-width:240px}.cf .note.hand{display:none}.stops li{grid-template-columns:60px 1fr auto}.stops li span:nth-child(3){grid-column:2/4}.srch{margin-left:0;width:100%}}

/* v4: real imagery */
:root{--img-desk:url(/img/desk.webp);--img-cork:url(/img/cork.webp);--img-woman:url(/img/woman.webp);--img-street:url(/img/street.webp);--img-mug:url(/img/mug.webp);--img-parcel:url(/img/parcel.webp);}
.book{min-width:0;width:132px}.book b{display:block;overflow-wrap:anywhere}
.cover .t{overflow-wrap:anywhere;hyphens:auto;max-width:100%}
.card{min-width:0}


/* v5: applications + admin desk */
:root{--ok:#2f6b3a;--okbg:#dcead6;--warn:#8a5a00;--warnbg:#f5e2b3;--bad:#8f1b1b;--badbg:#f1d3cc;--info:#1f4e79;--infobg:#d6e3ef;--mute:#5d5446;--mutebg:#e4dccb;--line:#cdb98c;--card:#f6efdc}
.apf{display:grid;gap:22px;max-width:860px}
.fs{border:1px solid var(--line);background:var(--card);padding:18px 18px 20px;margin:0;display:grid;gap:12px}
.fs legend{font-family:var(--type);text-transform:uppercase;letter-spacing:.08em;font-size:12px;padding:0 6px;color:var(--red)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.fl{display:grid;gap:4px;font-size:13px}
.fl>span{font-family:var(--type);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.fl input,.fl textarea,.fl select,.ain{padding:10px;border:1px solid #9c8a66;background:#fbf6ea;font:14px var(--serif);color:var(--pt);width:100%;min-width:0}
.fl textarea{resize:vertical}
.fl small{color:var(--mute)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fbf6ea;padding:6px 10px;font-size:13px;cursor:pointer}
.chip input{accent-color:var(--red)}
.pkgs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.pkg{border:1px solid var(--line);background:#fbf6ea;padding:12px 14px;display:grid;gap:3px;cursor:pointer;position:relative}
.pkg input{position:absolute;top:12px;right:12px;accent-color:var(--red)}
.pkg b{font-family:var(--type);font-weight:400;text-transform:uppercase;font-size:14px;padding-right:22px}
.pkg .pr{font-size:22px;font-family:var(--type);color:var(--red)}
.pkg:has(input:checked){border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red)}
.cvup{display:flex;gap:14px;align-items:center}
.cvup .thumb{width:84px;aspect-ratio:20/31;background:#2a2118 center/cover;flex:none;box-shadow:0 3px 8px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;color:#cfc5b0;font:10px var(--type);text-align:center;padding:6px}
.err{color:var(--bad);font-size:13px;min-height:1.2em}
.fs.bad{border-color:var(--bad)}
.ok-card{border:1px solid var(--line);background:var(--card);padding:22px;max-width:620px;display:grid;gap:10px}
.ref{font-family:var(--type);font-size:28px;letter-spacing:.06em;color:var(--red);user-select:all}
.pill{display:inline-block;font-family:var(--type);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;padding:3px 8px;border-radius:2px;white-space:nowrap}
.p-pending{background:var(--warnbg);color:var(--warn)}.p-approved{background:var(--infobg);color:var(--info)}.p-live{background:var(--okbg);color:var(--ok)}.p-declined{background:var(--badbg);color:var(--bad)}.p-closed,.p-sample{background:var(--mutebg);color:var(--mute)}
.p-paid{background:var(--okbg);color:var(--ok)}.p-invoiced{background:var(--warnbg);color:var(--warn)}.p-refunded,.p-cancelled{background:var(--mutebg);color:var(--mute)}.p-active{background:var(--okbg);color:var(--ok)}
.tl{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:13px}
.tl li{display:grid;grid-template-columns:110px 1fr;gap:10px}.tl time{font-family:var(--type);font-size:11px;color:var(--mute)}
/* admin */
.adm{max-width:1240px}
.adm-head{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;flex-wrap:wrap}
.adm-note{font-size:12px;color:var(--mute);max-width:70ch}
.atabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:2px solid var(--pt);margin:18px 0 18px}
.atab{font-family:var(--type);font-size:12px;letter-spacing:.07em;text-transform:uppercase;background:transparent;border:1px solid transparent;border-bottom:0;padding:9px 14px;cursor:pointer;color:var(--pt);display:flex;gap:6px;align-items:center}
.atab.on{background:var(--pt);color:#f3ead2}
.atab .n{background:var(--red);color:#fff;border-radius:9px;font-size:10px;padding:1px 6px;letter-spacing:0}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:18px}
.tile{background:var(--card);border:1px solid var(--line);padding:12px 14px;display:grid;gap:2px}
.tile span{font-family:var(--type);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--mute)}
.tile b{font-family:var(--type);font-weight:400;font-size:28px;font-variant-numeric:tabular-nums;line-height:1.1}
.tile small{font-size:12px;color:var(--mute)}
.bar{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.bar .grow{flex:1}
.abtn{font-family:var(--type);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:7px 11px;border:1px solid var(--pt);background:transparent;color:var(--pt);cursor:pointer;white-space:nowrap}
.abtn:hover{background:rgba(0,0,0,.07)}
.abtn.pr{background:var(--red);border-color:var(--red);color:#f6ecd9}.abtn.pr:hover{background:var(--red2)}
.abtn.go{background:var(--ok);border-color:var(--ok);color:#fff}
.abtn.dn{border-color:var(--bad);color:var(--bad)}
.abtn.on{background:var(--pt);color:#f3ead2}
.abtn[disabled]{opacity:.45;cursor:default}
.tw{overflow-x:auto;border:1px solid var(--line);background:var(--card)}
.at{width:100%;border-collapse:collapse;font-size:13px;min-width:720px}
.at th{font-family:var(--type);font-weight:400;font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);color:var(--mute);white-space:nowrap}
.at td{padding:9px 10px;border-bottom:1px solid #e2d4b0;vertical-align:middle}
.at tr:last-child td{border-bottom:0}
.at td.num,.at th.num{text-align:right;font-variant-numeric:tabular-nums}
.at tr.unread td:first-child{box-shadow:inset 3px 0 0 var(--red)}
.at .ct{display:flex;gap:10px;align-items:center}
.at .ct i{width:34px;aspect-ratio:20/31;background:#2a2118 center/cover;flex:none;display:block}
.at .ct b{font-family:var(--type);font-weight:400;display:block}
.at tr.sel td{background:#efe3c3}
.rowbtn{background:none;border:0;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer}
.rowbtn:hover b{text-decoration:underline}
.empty{padding:26px;text-align:center;color:var(--mute);display:grid;gap:10px;justify-items:center}
.det{border:2px solid var(--pt);background:var(--card);padding:18px;margin:14px 0 22px;display:grid;grid-template-columns:170px 1fr;gap:20px}
.det .dside{display:grid;gap:10px;align-content:start}
.det .cvbig{width:100%;aspect-ratio:20/31;background:#2a2118 center/cover;box-shadow:0 4px 12px rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;color:#cfc5b0;font:11px var(--type);text-align:center;padding:10px}
.acts{display:flex;gap:6px;flex-wrap:wrap}
.confirm{border:1px solid var(--bad);background:var(--badbg);padding:10px 12px;display:grid;gap:8px;font-size:13px}
.chart{position:relative;background:var(--card);border:1px solid var(--line);padding:14px 14px 8px}
.chart h3,.panel2 h3{font-family:var(--type);font-weight:400;font-size:13px;letter-spacing:.07em;text-transform:uppercase;margin:0 0 8px}
.chart svg{display:block;width:100%;height:auto;overflow:visible}
.chart .ax{font:10px var(--type);fill:var(--mute)}
.chart .gl{stroke:#d9c9a2;stroke-width:1}
.chart .bm{fill:var(--red)}
.chart .bm.hov{fill:var(--red2)}
.chart .bm.dm{fill:#b98b7f}
.tip{position:absolute;pointer-events:none;background:var(--pt);color:#f3ead2;font-size:12px;padding:6px 9px;white-space:nowrap;transform:translate(-50%,-100%);margin-top:-8px}
.two{display:grid;grid-template-columns:1.5fr 1fr;gap:14px;margin-bottom:18px;align-items:start}
footer nav{flex-wrap:wrap}
.svc2{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:860px;margin-top:18px}.svc2 .fs{align-content:start}.svc2 .btn{justify-self:start}.svh{font-family:var(--type);font-weight:400;font-size:20px;text-transform:uppercase}
.svtot{font-family:var(--type);text-transform:uppercase;letter-spacing:.05em;font-size:13px;text-align:right}.svtot b{font-size:22px;color:var(--red);font-weight:400}
[hidden]{display:none!important}
@media (max-width:760px){.svc2{grid-template-columns:1fr}}

.clegend{display:flex;gap:14px;font-size:12px;color:var(--mute);margin-top:6px}.clegend i{display:inline-block;width:10px;height:10px;margin-right:5px;vertical-align:-1px}
.panel2{background:var(--card);border:1px solid var(--line);padding:14px}
.hb{display:grid;gap:9px}
.hb div{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:3px 10px;font-size:13px;align-items:center}
.hb em{grid-column:1/-1;height:8px;background:#e4d6b3;display:block}
.hb em i{display:block;height:100%;background:var(--red);border-radius:0 4px 4px 0}
.hb b{font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hb span{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--type)}
.kv{display:grid;grid-template-columns:max-content 1fr;gap:4px 14px;font-size:13px;margin:0}
.kv dt{font-family:var(--type);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--mute)}.kv dd{margin:0;overflow-wrap:anywhere}
.lock{max-width:380px;display:grid;gap:10px;border:1px solid var(--line);background:var(--card);padding:22px}
.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--pt);color:#f3ead2;font-family:var(--type);font-size:13px;padding:10px 16px;z-index:60;box-shadow:0 6px 18px rgba(0,0,0,.4)}
.prevbar{background:var(--warnbg);color:var(--warn);border:1px solid var(--warn);padding:8px 12px;font:12px var(--type);letter-spacing:.05em;text-transform:uppercase;margin-bottom:10px;display:flex;gap:10px;flex-wrap:wrap;align-items:center}
@media (max-width:760px){.row2,.row3,.two{grid-template-columns:1fr}.det{grid-template-columns:1fr}.det .dside{grid-template-columns:110px 1fr}.tl li{grid-template-columns:1fr}}

:root{--img-paper:url(/img/paper.webp)}

/* v6: inner pages on a desk, each one a torn case-file sheet */
#page{background:linear-gradient(rgba(10,8,6,.8),rgba(10,8,6,.92)),var(--img-desk) center 30%/cover #0c0a08;padding:30px 16px 64px;color:var(--pt)}
#page>.wrap{position:relative;isolation:isolate;max-width:1180px;margin:0 auto;padding:44px clamp(18px,4.2vw,56px) 56px}
#page>.wrap::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 10% 6%,rgba(125,82,30,.2),transparent 38%),radial-gradient(ellipse at 92% 94%,rgba(110,68,24,.22),transparent 42%),radial-gradient(circle at 64% 38%,rgba(150,105,50,.08),transparent 28%),radial-gradient(rgba(90,60,20,.12) 1px,transparent 1.5px) 0 0/5px 5px,var(--img-paper) 0 0/700px 700px,#e8dcc0;box-shadow:inset 0 0 110px rgba(95,58,20,.32);clip-path:polygon(0 10px,3% 2px,8% 9px,14% 1px,21% 8px,29% 0,37% 9px,46% 2px,54% 8px,63% 0,71% 9px,80% 1px,88% 8px,95% 0,100% 7px,100% calc(100% - 8px),96% 100%,89% calc(100% - 7px),80% 100%,71% calc(100% - 9px),62% 100%,53% calc(100% - 7px),44% 100%,35% calc(100% - 9px),26% 100%,17% calc(100% - 7px),8% 100%,0 calc(100% - 6px))}
#page .ph1{font-size:clamp(30px,4.4vw,50px);line-height:1.02;text-wrap:balance}
.phd2{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:start;margin-bottom:26px}
.kick{font-weight:700;font-size:clamp(16px,1.6vw,19px);margin-top:6px;line-height:1.3;text-wrap:balance}
.kick.red{color:var(--red2);font-family:var(--type);font-weight:400;text-transform:uppercase;letter-spacing:.04em}
.lead2{max-width:62ch;margin-top:12px;font-size:15px}
.pnote{font-family:var(--hand);font-weight:700;font-size:25px;line-height:1.05;max-width:230px;text-align:center;transform:rotate(3deg);padding:14px 16px}
.pnote.l{transform:rotate(-3deg)}
.fpd{position:absolute;width:74px;height:88px;border-radius:50%;background:repeating-radial-gradient(ellipse at 50% 60%,transparent 0 3px,rgba(60,38,15,.35) 3px 4px);opacity:.55;pointer-events:none;z-index:-1}
.split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(22px,4vw,48px);align-items:center}
.lbl{font-family:var(--type);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#6b5a3a}
.bul{list-style:none;padding:0;margin:16px 0 22px;display:grid;gap:7px;font-size:15px}
.bul li{display:grid;grid-template-columns:18px 1fr;align-items:baseline}
.bul li::before{content:"";width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff7a6b,#9c1b16 65%,#5c0c09);transform:translateY(1px)}
.cta{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.btn.dark{background:#1b1714;border-color:#1b1714}.btn.dark:hover{background:#342c26}
.sec{margin-top:44px}
.sec>h2,.h2t{font-family:var(--type);font-weight:400;font-size:clamp(20px,2.4vw,26px);text-transform:uppercase;letter-spacing:.05em;margin:0 0 14px}
.card2{background:#f6eedb;border:1px solid #cdb98c;padding:16px 18px;box-shadow:2px 4px 10px rgba(60,35,10,.15)}
/* scenes */
.scn{position:relative;min-height:360px}
.shot{margin:0;background:#eee6d2;padding:10px 10px 12px;box-shadow:4px 10px 24px rgba(0,0,0,.4);transform:rotate(1.5deg)}
.shot img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.pola{position:absolute;background:#eee6d2;padding:8px 8px 26px;box-shadow:3px 8px 18px rgba(0,0,0,.45);font-family:var(--hand);font-weight:700;font-size:18px;text-align:center;color:#2a2118}
.pola i{display:block;aspect-ratio:1;background:var(--bg) center/cover #333}
.pola span{position:absolute;left:0;right:0;bottom:3px}
.pin2::after{content:"";position:absolute;top:-6px;left:50%;width:13px;height:13px;margin-left:-6px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff7a6b,#9c1b16 65%,#5c0c09);box-shadow:1px 2px 3px rgba(0,0,0,.5)}
.cut{position:absolute;background:var(--bg) center/contain no-repeat;filter:drop-shadow(4px 12px 12px rgba(0,0,0,.5))}
.tagc{position:absolute;background:#efe4c6;color:var(--red);border:1px solid #b9a67c;font-family:var(--type);font-size:15px;letter-spacing:.08em;text-transform:uppercase;padding:9px 14px;text-align:center;box-shadow:2px 3px 8px rgba(0,0,0,.4);z-index:2}
.tagc small{display:block;color:var(--pt);font-size:12px;letter-spacing:.04em;margin-top:3px}
.thread{position:absolute;height:2px;background:#b8231a;transform-origin:0 50%;box-shadow:1px 2px 2px rgba(0,0,0,.3)}
.seal{position:absolute;width:150px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#2a241e 58%,#8a6a2a 59% 61%,#2a241e 62% 70%,#b28c3c 71% 73%,#1d1915 74%);display:flex;align-items:center;justify-content:center;text-align:center;color:#d8b865;font-family:var(--type);font-size:13px;letter-spacing:.08em;line-height:1.25;box-shadow:3px 10px 20px rgba(0,0,0,.5);transform:rotate(-8deg)}
.seal b{display:block;font-size:17px;font-weight:400;color:#ecd08a}
.mag{position:absolute;width:190px;height:190px;border-radius:50%;border:14px solid #2b2521;box-shadow:inset 0 0 0 3px #6d5b45,0 12px 24px rgba(0,0,0,.45),inset 0 0 40px rgba(255,255,255,.35);background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.45),rgba(255,255,255,.08) 45%,rgba(255,255,255,.02));transform:rotate(-24deg)}
.mag::after{content:"";position:absolute;left:50%;top:100%;width:26px;height:120px;margin-left:-13px;margin-top:6px;border-radius:6px;background:linear-gradient(90deg,#1b1714,#4a3a2c 45%,#1b1714)}
.band{height:150px;margin:40px calc(-1*clamp(18px,4.2vw,56px)) -56px;background:linear-gradient(rgba(12,10,8,.15),rgba(12,10,8,.45)),var(--bg,var(--img-desk)) center 62%/cover;clip-path:polygon(0 14px,6% 4px,13% 12px,22% 2px,31% 11px,42% 3px,53% 12px,64% 2px,75% 10px,86% 3px,94% 12px,100% 5px,100% 100%,0 100%)}
/* rows, features, cards */
.opts{display:grid;gap:10px}
.opt{display:grid;grid-template-columns:48px minmax(0,1fr) 24px;gap:14px;align-items:center;background:#f6eedb;border:1px solid #cdb98c;padding:12px 16px;color:var(--pt);transition:transform .15s,box-shadow .15s}
.opt:hover{transform:translateX(3px);box-shadow:2px 4px 10px rgba(60,35,10,.18)}
.opt svg,.feat svg,.infor svg,.evc svg{width:34px;height:34px;color:#1b1714}
.opt b,.feat b,.evc b{display:block;font-family:var(--type);font-weight:400;text-transform:uppercase;letter-spacing:.04em;font-size:14px}
.opt small{font-size:13px;color:#4d4033}
.opt .ar{color:var(--red);font-size:22px}
.feats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin:22px 0}
.feat{text-align:center;display:grid;gap:6px;justify-items:center;font-size:13px}
.feat svg{width:42px;height:42px}
.feats.box .feat{background:#f6eedb;border:1px solid #cdb98c;padding:18px 14px}
.infor{display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:center;margin-bottom:16px;font-size:14px}
.infor i{width:52px;height:52px;background:#1b1714;border-radius:6px;display:flex;align-items:center;justify-content:center}
.infor i svg{color:#efe4ca;width:26px;height:26px}
.infor b{font-family:var(--type);font-weight:400;display:block}
.acc{display:grid;gap:8px}
.acc details{background:#f6eedb;border:1px solid #cdb98c}
.acc summary{cursor:pointer;padding:12px 16px;font-size:15px;list-style:none;display:flex;justify-content:space-between;gap:12px}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";font-family:var(--type);color:var(--red);font-size:18px;line-height:1}
.acc details[open] summary::after{content:"–"}
.acc details p{padding:0 16px 14px;font-size:14px;max-width:70ch}
.acc h3{font-family:var(--type);font-weight:400;font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:#6b5a3a;margin:14px 0 2px}
.pk3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.pk{background:#f6eedb;border:1px solid #cdb98c;padding:20px 18px;display:grid;gap:6px;text-align:center;justify-items:center;position:relative}
.pk b{font-family:var(--type);font-weight:400;font-size:18px;text-transform:uppercase}
.pk .pr{font-family:var(--type);font-size:30px;color:var(--red)}
.pk.hot{border:2px solid var(--red)}.pk.hot::before{content:"Most booked";position:absolute;top:-11px;background:var(--red);color:#f6ecd9;font:11px var(--type);letter-spacing:.08em;text-transform:uppercase;padding:3px 10px}
.sus5{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.sus5 .card2{position:relative;padding-top:22px}
.sus5 .no{font-family:var(--type);color:var(--red);font-size:12px;letter-spacing:.1em}
.sus5 b{display:block;font-family:var(--type);font-weight:400;font-size:17px;text-transform:uppercase;margin:4px 0 6px}
.sus5 p{font-size:13.5px}
.glos{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.glos div{background:#fbf6ea;border:1px solid #cdb98c;padding:12px 14px;font-size:14px;box-shadow:0 1px 0 #cdb98c,0 2px 0 #fbf6ea,0 3px 0 #cdb98c}
.glos b{display:block;font-family:var(--type);font-weight:400;color:var(--red);text-transform:uppercase;font-size:13px;letter-spacing:.06em}
.stripa{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:16px;align-items:center;margin-top:36px;background:#f6eedb;border:1px solid #cdb98c;padding:14px 18px}
.stripa svg{width:36px;height:36px}
.stripa b{font-family:var(--type);font-weight:400;text-transform:uppercase;display:block}
.endcta{margin-top:46px;text-align:center;display:grid;gap:12px;justify-items:center;border-top:2px dashed #b9a67c;padding-top:32px}
.endcta h2{font-family:var(--type);font-weight:400;font-size:clamp(22px,3vw,32px);text-transform:uppercase}
/* case file */
.cf2{display:grid;grid-template-columns:minmax(200px,280px) minmax(0,1fr);gap:clamp(22px,4vw,44px);align-items:start}
.cf2 .cvcap{text-align:center;font-family:var(--type);font-size:12px;margin-top:10px;color:#4d4033}
.cf2 h2{font-family:var(--serif);font-size:clamp(22px,2.6vw,30px);margin:2px 0 10px;text-wrap:balance}
.poi2{display:grid;grid-template-columns:86px 1fr;gap:14px;align-items:center;margin:18px 0}
.poi2 i{width:86px;height:100px;background:var(--bg,none) center/cover,radial-gradient(circle at 50% 36%,#c9b9a4 0 22%,transparent 23%),radial-gradient(ellipse at 50% 100%,#2a2a2e 0 45%,transparent 46%),linear-gradient(#59606a,#2b2d33);border:4px solid #eee6d2;box-shadow:2px 4px 10px rgba(0,0,0,.35);transform:rotate(-2deg)}
.dl2{display:grid;grid-template-columns:max-content 1fr;gap:4px 16px;font-size:14px;margin:6px 0 20px}
.dl2 dt{font-family:var(--type);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#6b5a3a;padding-top:2px}.dl2 dd{margin:0}
.dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--red2);margin-right:6px;vertical-align:1px}
.dot.g{background:#8a7d6a}
.stat{font-family:var(--type);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--red2);display:inline-flex;align-items:center}
.exp{margin-top:18px;background:#fbf6ea;border-left:3px solid var(--red);padding:16px 20px;font-size:15px;line-height:1.7;white-space:pre-line;max-width:70ch}
.evcs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}
.evc{background:#f6eedb;border:1px solid #cdb98c;padding:14px 10px;text-align:center;display:grid;gap:4px;justify-items:center;cursor:pointer;font:inherit;color:inherit;font-size:12px;transition:transform .15s}
.evc:hover{transform:translateY(-2px)}
.evc.on{border:2px solid var(--red);background:#fbf3e0}
.evc .n2{font-family:var(--type);color:var(--red);font-size:11px}
.follow{display:flex;gap:8px;max-width:440px;width:100%}.follow input{flex:1;min-width:0;padding:11px;border:1px solid #9c8a66;background:#fbf6ea;font:14px var(--serif)}
/* giveaway */
.gv{display:grid;grid-template-columns:minmax(180px,250px) minmax(0,1fr);gap:28px;align-items:center;background:#f6eedb;border:1px solid #cdb98c;padding:24px;box-shadow:3px 8px 20px rgba(60,35,10,.18);position:relative}
.gv .cvw{position:relative;transform:rotate(-3deg)}
.gv .ctag{left:auto;right:-14px;bottom:10%;transform:rotate(8deg)}
.gv h2{font-family:var(--serif);font-size:26px;margin:0}
.gvc{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px}
/* club */
.club{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;align-items:stretch;margin-top:26px}
.clubimg{position:relative;min-height:330px;background:linear-gradient(rgba(12,10,8,.1),rgba(12,10,8,.35)),var(--bg,var(--img-desk)) center/cover;box-shadow:0 10px 24px rgba(0,0,0,.35)}
.mug2{position:absolute;right:8%;bottom:6%;width:120px;aspect-ratio:1104/1323;background:var(--img-mug) center/contain no-repeat;filter:drop-shadow(3px 10px 10px rgba(0,0,0,.65));color:#d8cfbc;font:10px/1.35 var(--type);letter-spacing:.06em;text-align:center;padding:24% 10% 0 30%}
.lamp2{position:absolute;left:-6px;top:30px;width:90px;height:52px;background:linear-gradient(170deg,#3a342e,#0f0e0d);border-radius:48px 48px 8px 8px;transform:rotate(-18deg)}
.lamp2::after{content:"";position:absolute;left:18px;bottom:-8px;width:54px;height:14px;border-radius:50%;background:radial-gradient(#fff6d8,#f0b24e 55%,transparent 72%)}
.center{text-align:center;display:grid;justify-items:center}
/* blog */
.blog{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:30px;align-items:start}
.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}
.post{background:#fbf6ea;border:1px solid #cdb98c;display:grid;grid-template-rows:auto 1fr;color:var(--pt);box-shadow:2px 5px 12px rgba(60,35,10,.15);transition:transform .15s}
.post:hover{transform:translateY(-3px)}
.post .pi{aspect-ratio:4/3;background:var(--bg) center/cover #2a2118}
.post .pt{padding:12px 14px 14px;display:grid;gap:6px;align-content:start}
.post b{font-family:var(--type);font-weight:400;font-size:16px;line-height:1.25}
.post small{color:#6b5a3a;font-size:12px}
.cats{background:#f6eedb;border:1px solid #cdb98c;padding:14px 16px}
.cats a,.cats button{display:block;width:100%;text-align:left;background:none;border:0;padding:6px 0;font:14px var(--serif);color:var(--pt);cursor:pointer;border-bottom:1px dotted #cdb98c}
.cats a::before,.cats button::before{content:"› ";color:var(--red)}
.cats .on{color:var(--red);font-weight:700}
.art{max-width:72ch}
.art .hero2{aspect-ratio:16/8;background:var(--bg) center/cover #2a2118;margin:18px 0 24px;box-shadow:0 10px 24px rgba(0,0,0,.3)}
.art p{margin:0 0 14px;font-size:16px;line-height:1.75}
.art h3{font-family:var(--type);font-weight:400;font-size:20px;text-transform:uppercase;margin:26px 0 8px}
.bkrow{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:14px;margin:10px 0 24px}
.bkrow a{display:grid;gap:6px;font-size:12px;color:var(--pt)}.bkrow b{font-family:var(--type);font-weight:400;font-size:13px;line-height:1.2}
@media (max-width:900px){.split,.club,.blog,.cf2,.gv{grid-template-columns:1fr}.evcs{grid-template-columns:repeat(3,minmax(0,1fr))}.scn{min-height:300px}.cf2>div:first-child{max-width:260px}}
@media (max-width:600px){.phd2{grid-template-columns:1fr}.pnote{display:none}.evcs{grid-template-columns:repeat(2,minmax(0,1fr))}.stripa{grid-template-columns:1fr;text-align:left}.follow{flex-direction:column}#page{padding-inline:8px}}

.logo img{display:block;max-width:100%}
@media (max-width:760px){.nav .logo img{height:calc(40*var(--u))!important}.nav .logo{min-width:0;flex:1 1 auto}}.shot{position:relative}
.scn .shot{margin-top:10px}


/* v7: admin sidebar */
#page>.wrap.adm{max-width:1400px;padding:0}
#page>.wrap.adm::before{clip-path:none}
.alay{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:78vh}
.aside{background:#1b1714;color:#e8dcc0;padding:22px 12px;display:flex;flex-direction:column;gap:18px;position:sticky;top:env(safe-area-inset-top,0px);align-self:start;min-height:78vh;max-height:100vh;overflow-y:auto}
.aside-brand{padding:0 10px 14px;border-bottom:1px solid #3a322b;display:grid;gap:2px}
.aside-brand .badge{color:#b5ab97}
.aside-brand b{font-family:var(--type);font-weight:400;font-size:22px;text-transform:uppercase;letter-spacing:.04em;color:#f3ead6}
.agrp{display:grid;gap:2px}
.aglbl{font-family:var(--type);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#8a7f6c;padding:0 10px 4px}
.aitem{display:grid;grid-template-columns:20px 1fr auto;gap:10px;align-items:center;width:100%;background:none;border:0;border-left:3px solid transparent;color:#d8cfbc;font:13px var(--type);letter-spacing:.04em;text-align:left;padding:9px 10px;cursor:pointer;text-decoration:none}
.aitem svg{width:18px;height:18px}
.aitem:hover{background:#2a241f;color:#fff}
.aitem.on{background:#2e2620;border-left-color:var(--red2);color:#fff}
.aitem .n{background:var(--red);color:#fff;border-radius:9px;font-size:10px;padding:1px 7px;letter-spacing:0}
.afoot{margin-top:auto;padding-top:14px;border-top:1px solid #3a322b;display:grid;gap:2px}
.amain{padding:28px clamp(16px,3vw,36px) 40px;min-width:0}
@media (max-width:900px){.alay{grid-template-columns:1fr}.aside{position:static;min-height:0;max-height:none;flex-direction:row;overflow-x:auto;padding:10px;gap:4px;align-items:stretch}.aside-brand,.aglbl{display:none}.agrp,.afoot{display:flex;gap:4px;margin:0;padding:0;border:0}.aitem{grid-template-columns:18px auto auto;white-space:nowrap;border-left:0;border-bottom:3px solid transparent;width:auto}.aitem.on{border-bottom-color:var(--red2)}}

/* v9: form polish */
.fl .chip input,.chip input,.pkg input{width:16px;height:16px;padding:0;margin:0;flex:none;border:0;background:none;accent-color:var(--red)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:8px 12px;font-size:14px;line-height:1.2;border:1px solid #cdb98c;background:#fbf6ea;transition:border-color .15s,background .15s}
.chip:hover{border-color:#9c8a66}
.chip:has(input:checked){border-color:var(--red);background:#f6e6d6;box-shadow:inset 0 0 0 1px var(--red)}
.chip:has(input:focus-visible){outline:2px solid #e8b04a;outline-offset:2px}
.fs>.chip{justify-self:start;white-space:normal}
.fs{padding:20px 20px 22px;gap:14px}
.fs legend{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase}
.fl{gap:6px}
.fl>span{font-size:11px;letter-spacing:.08em}
.fl input:not([type=checkbox]):not([type=radio]):not([type=file]),.fl select,.fl textarea{height:auto;min-height:44px;box-sizing:border-box}
.fl input[type=file]{padding:6px 0;border:0;background:none;font-size:13px}
.apf{max-width:900px}
.apf .acts,.apf>div:last-child{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.row2,.row3{align-items:start}
.cvup{align-items:center}.cvup .thumb{width:64px}
.fl input[type=file]::file-selector-button,input[type=file]::file-selector-button{font:11px var(--type);letter-spacing:.06em;text-transform:uppercase;padding:8px 12px;margin-right:10px;border:1px solid var(--pt);background:transparent;color:var(--pt);cursor:pointer}
input[type=file]::file-selector-button:hover{background:rgba(0,0,0,.07)}
.grid>p.lede{grid-column:1/-1}

/* hero: The Suspect (author photo) */
.polaroid.suspect{display:block;transform:rotate(4deg);color:#222;line-height:1.25}
.polaroid.suspect .ph{height:calc(118*var(--u));background:radial-gradient(circle at 50% 38%,#c9b9a4 0 22%,transparent 23%),radial-gradient(ellipse at 50% 100%,#2a2a2e 0 45%,transparent 46%),linear-gradient(#59606a,#2b2d33);background-size:cover;background-position:center 30%}
.polaroid.suspect .sn,.polaroid.suspect .sg{display:block}
.polaroid.suspect .sg{font-size:calc(9.5*var(--u));color:#6b5a3a;margin-top:calc(1*var(--u))}
.polaroid.suspect:hover{transform:rotate(1deg) scale(1.03)}

.heropick .hp-row{display:grid;grid-template-columns:62px 62px minmax(0,1fr) minmax(240px,1.1fr);gap:14px;align-items:center;margin:6px 0 10px}
.heropick .hp-cv{aspect-ratio:20/31;background:#2a2118 center/cover;box-shadow:0 3px 8px rgba(0,0,0,.3);display:block}
.heropick .hp-ph{aspect-ratio:5/6;background:#2a2118 center 30%/cover;border:4px solid #eee6d2;box-shadow:0 3px 8px rgba(0,0,0,.3);display:block;transform:rotate(3deg)}
.heropick .hp-ph.none{background:radial-gradient(circle at 50% 38%,#c9b9a4 0 22%,transparent 23%),radial-gradient(ellipse at 50% 100%,#2a2a2e 0 45%,transparent 46%),linear-gradient(#59606a,#2b2d33)}
.heropick .hp-info{display:grid;gap:2px;min-width:0}.heropick .hp-info b{font-family:var(--type);font-weight:400;font-size:16px}
.heropick .hp-set{display:grid;gap:8px}
@media (max-width:900px){.heropick .hp-row{grid-template-columns:62px 62px minmax(0,1fr)}.heropick .hp-set{grid-column:1/-1}}
/* author and genre links */
.alink,.glink{color:inherit;text-decoration:underline;text-decoration-style:dotted;text-decoration-thickness:1px;text-underline-offset:3px}
.alink:hover,.glink:hover{color:#c8281c;text-decoration-style:solid}
.victim .alink{text-decoration-color:rgba(0,0,0,.45)}
/* author profile */
.aprof .polaroid.suspect.big{--u:1.35px;max-width:260px;margin:6px auto 0;transform:rotate(-2deg);padding:10px 10px 12px;font-size:15px}
.aprof .polaroid.suspect.big .ph{height:280px}
.aprof .polaroid.suspect.big .sg{font-size:12px}
.abio p{max-width:62ch;margin:0 0 12px}
.asoc{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 18px}
.asoc a{font-family:var(--type);font-size:12px;letter-spacing:.05em;text-transform:uppercase;padding:6px 11px;border:1px solid #9c8a66;background:#fbf6ea;color:#2a2118;text-decoration:none}
.asoc a:hover{border-color:#c8281c;color:#c8281c}
.abox{margin-top:30px;padding:16px;background:#fbf6ea;border:1px solid #cdb98c}
.byl{font-family:var(--type);font-size:13px;color:#6b5a3a;margin:-4px 0 14px}
.ntypes{font-family:var(--type);font-size:13px;margin:6px 0 0}
/* interview / review / guest post teasers */
.tzs{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.tz{display:grid;grid-template-columns:110px 1fr;gap:14px;background:#fbf6ea;border:1px solid #cdb98c;padding:12px;box-shadow:2px 5px 12px rgba(60,35,10,.15);color:var(--pt,#2a2118)}
.tzi{display:block;aspect-ratio:3/4;background:var(--bg) center/cover #2a2118;border:3px solid #eee6d2;box-shadow:1px 3px 8px rgba(0,0,0,.3)}
.tzb{display:grid;gap:6px;align-content:start;min-width:0}
.tzb b{font-family:var(--type);font-weight:400;font-size:16px;line-height:1.25}
.tzb b a{color:inherit;text-decoration:none}.tzb b a:hover{color:#c8281c}
.tzb p{margin:0;font-size:14px;line-height:1.45}
.tzb small{color:#6b5a3a;font-size:12px}
a.tab{text-decoration:none;display:inline-block}
@media (max-width:520px){.tz{grid-template-columns:80px 1fr}.tzs{grid-template-columns:1fr}}
/* giveaway application */
.svc2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-width:1100px}
.gwtot{display:grid;gap:4px;max-width:360px;margin-top:6px;font-size:15px}
.gwtot div{display:flex;justify-content:space-between;border-bottom:1px dotted #b9a67c;padding:3px 0}
.gwtot .t{border-bottom:0;border-top:2px solid #2a2118;padding-top:6px;font-size:17px}
.gwtot .t b{color:#8f1b1b}
.cvup .thumb.sq{aspect-ratio:1;width:96px;height:auto}
.gwcta{display:flex;gap:18px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:40px;padding:20px 22px;background:#fbf6ea;border:1px solid #cdb98c;box-shadow:2px 5px 12px rgba(60,35,10,.15)}
.gwcta h2{font-family:var(--type);font-weight:400;font-size:22px;margin:4px 0 6px}
.gwcta p{margin:0;max-width:62ch}
.gwd{margin-top:6px;font-size:13px}.gwd summary{cursor:pointer;font-family:var(--type);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#8f1b1b}
.gwg{display:grid;grid-template-columns:64px 1fr;gap:10px;margin-top:8px;max-width:520px}.gwg i{width:64px;aspect-ratio:1;background:center/cover #2a2118}
.gwg p{margin:2px 0 8px;white-space:pre-line}

/* =====================================================================
   THE STORYBOOK EXPRESS THEME
   Same system as The Murder Board; only the look changes here.
   Fonts: Alegreya (headings, --disp), Alegreya SC (labels, buttons, nav, --type),
   Lora (body, --serif), Caveat (notes, --hand/--script), Rye (logo lettering, --logo).
   Colors: navy #1d3557, cream #f7eedb, train red #a8262e, gold #d4a24c, forest #2f5d3a.
   ===================================================================== */
:root{--ink:#1d3557;--char:#172b47;--char2:#22406a;--paper:#f7eedb;--paper2:#ecdcb8;--red:#a8262e;--red2:#c0343b;--txt:#fbf5e8;--pt:#243048;--gold:#d4a24c;--gold2:#e7bd62;--navy:#1d3557;--navy2:#13263f;--green:#2f5d3a;--blue:#2e6da4;--mute:#56607a;--line:#e0c893;--card:#fffaf0;--brass:#d4a24c;
--type:'Alegreya SC',Georgia,serif;--disp:'Alegreya',Georgia,serif;--serif:'Lora',Georgia,serif;--hand:'Caveat','Comic Sans MS',cursive;--script:'Caveat','Comic Sans MS',cursive;--logo:'Rye',Georgia,serif;
--u:calc(clamp(14px,.82vw + 2.5px,22px) / 14);
--img-desk:url(/img/banners/hosts.webp);--img-paper:url(/img/paper.webp);--img-woman:url(/img/photo-3.webp);--img-street:url(/img/about.webp);--img-mug:url(/img/bookclub.webp);--img-parcel:url(/img/monthly.webp);--img-cork:url(/img/paper.webp)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--paper:#f3e8d0;--paper2:#e6d4ad}}
:root[data-theme="dark"]{--paper:#f3e8d0;--paper2:#e6d4ad}
body{background:#f7eedb var(--img-paper) 0 0/512px;color:var(--pt);font-family:var(--serif)}
.wrap{max-width:1260px}
::selection{background:var(--gold);color:var(--navy2)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
h1,h2,h3{font-family:var(--disp);font-weight:800;color:var(--navy)}

/* buttons: rounded red tickets with gold piping */
.btn{background:var(--red);color:#fff8ea;border:2px solid #7e1820;box-shadow:inset 0 0 0 2px rgba(231,189,98,.75),0 3px 0 #6d141b,0 6px 12px rgba(80,20,20,.25);font-family:var(--type);font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:11px 22px 10px;border-radius:7px;transition:transform .15s,background .15s}
.btn:hover,.btn:focus-visible{background:var(--red2);transform:translateY(-1px)}
.btn i{font-style:normal;margin-left:6px}
.btn.navy{background:var(--navy);border-color:#0e1d33;box-shadow:inset 0 0 0 2px rgba(231,189,98,.6),0 3px 0 #0b172a,0 6px 12px rgba(20,30,60,.25)}
.btn.navy:hover{background:#264673}
.btn.gold{background:linear-gradient(#e2b35a,#b98530);color:#fffaf0;border-color:#8a5f1c;box-shadow:inset 0 0 0 2px rgba(255,240,200,.6),0 3px 0 #7a5316,0 6px 12px rgba(90,60,10,.25);text-shadow:0 1px 1px rgba(90,55,5,.6)}
.btn.gold:hover{background:linear-gradient(#ebc06a,#c7913a)}
.btn.ghost-o{background:transparent;border-color:var(--navy);color:var(--navy);box-shadow:none}
.btn.ghost-d,.ghost{background:#fffaf0;border:2px solid var(--navy);color:var(--navy);box-shadow:none}
.ghost-l{background:#fffaf0;border:2px solid var(--navy);color:var(--navy);box-shadow:none;margin-left:0}
.ghost-l:hover,.btn.ghost-d:hover,.ghost:hover{background:#f0e3c4}
.btn.dark{background:var(--navy);border-color:var(--navy2)}
.label{font-family:var(--type);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--red)}
.script,.hand{font-family:var(--script);font-weight:700}
.lead{font-size:15px}
.paper{background:#f7eedb var(--img-paper) 0 0/512px;color:var(--pt)}

/* header: cream bar, big hanging logo */
.nav{background:rgba(251,245,232,.97);border-bottom:3px solid var(--gold);position:relative;z-index:20;box-shadow:0 2px 10px rgba(29,53,87,.12)}
.nav .wrap{display:flex;align-items:center;gap:calc(16*var(--u));min-height:calc(68*var(--u));max-width:1440px;padding:calc(4*var(--u)) calc(22*var(--u))}
.logo{display:flex;align-items:center;color:var(--navy);flex:none;position:relative}
.logo .wm{display:grid;line-height:.9;justify-items:start}
.logo .wm b{font-family:var(--logo);font-weight:400;font-size:28px;color:var(--navy);letter-spacing:.02em;text-transform:uppercase;-webkit-text-stroke:.6px var(--gold)}
.logo .wm b.ex{color:var(--red);font-size:24px;margin-left:30px}
.logo .wm small{font-family:var(--type);font-size:9px;letter-spacing:.16em;color:var(--pt);margin-top:3px;text-transform:uppercase}
.logo .wm small.the{font-family:var(--script);font-size:18px;letter-spacing:0;text-transform:none;margin:0 0 -4px 4px}
.nav .logo{align-self:flex-start;margin-bottom:calc(-48*var(--u));z-index:3}
.nav .logo img{height:calc(112*var(--u))!important;width:auto;filter:drop-shadow(0 4px 6px rgba(29,53,87,.3))}
footer .logo img{height:calc(96*var(--u))!important;width:auto}
.links{display:flex;gap:calc(14*var(--u));margin-left:auto;font-family:var(--disp);font-weight:700;font-size:calc(11.2*var(--u));letter-spacing:.01em}
.links a{padding:6px 0;border-bottom:2px solid transparent;color:var(--navy);white-space:nowrap}
.links a:hover,.links a.on{border-color:var(--red);color:var(--red)}
.srchi{color:var(--navy);display:flex}.srchi svg{width:calc(18*var(--u));height:calc(18*var(--u))}
.navcta{display:flex;flex:none}
.navcta .btn{font-size:calc(10.5*var(--u));padding:calc(9*var(--u)) calc(14*var(--u)) calc(8*var(--u));white-space:nowrap}
.menu{display:none;margin-left:auto;background:var(--navy);color:#fff8ea;border:0;border-radius:6px;padding:8px 12px;font-family:var(--type);letter-spacing:.1em;font-size:12px;cursor:pointer}
@media (max-width:1320px){.links{display:none}.menu{display:block}
 .links.open{display:flex;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:#fbf5e8;padding:10px 24px 18px;gap:0;border-bottom:3px solid var(--gold);font-size:16px;box-shadow:0 12px 20px rgba(29,53,87,.2)}
 .links.open a{padding:12px 0;border-bottom:1px solid #ead9b4}}
@media (max-width:640px){.srchi{display:none}.navcta .btn{padding:8px 10px;font-size:10px;letter-spacing:.04em}.nav .logo img{height:64px!important}.nav .logo{margin-bottom:-20px}.nav .wrap{gap:8px;padding:6px 12px}}
@media (max-width:420px){.navcta{display:none}}

/* hero: the station */
.station{position:relative;overflow:hidden;min-height:calc(560*var(--u));display:flex;align-items:center;background:#8fb6d8;isolation:isolate}
.hbg{position:absolute;inset:-2%;background:url(/img/hero.webp) center 60%/cover no-repeat;z-index:-2;will-change:transform}
.station::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 33% 50% at 50% 46%,rgba(253,246,228,.97),rgba(253,246,228,.9) 52%,rgba(253,246,228,0) 80%),linear-gradient(rgba(0,0,0,0) 70%,rgba(29,53,87,.25))}
.station>.wrap{position:relative;z-index:2;width:100%;display:flex;justify-content:center;padding-top:calc(40*var(--u));padding-bottom:calc(60*var(--u))}
.hcopy{text-align:center;max-width:calc(560*var(--u))}
.station h1{font-size:clamp(38px,4.6vw,calc(66*var(--u)));line-height:.98;color:var(--navy);text-shadow:0 2px 0 #fff8e6,0 0 18px rgba(255,248,230,.9);letter-spacing:-.005em}
.station h1 span{display:block}
.tagline{font-family:var(--disp);font-weight:800;font-size:clamp(20px,2vw,calc(29*var(--u)));color:var(--red);margin:calc(10*var(--u)) 0 calc(6*var(--u));text-shadow:0 1px 0 #fff8e6}
.station .sub{font-size:calc(15*var(--u));color:var(--pt);max-width:30ch;margin:0 auto calc(18*var(--u));font-weight:600;text-shadow:0 1px 0 rgba(255,248,230,.8)}
.hbtns .btn{font-size:calc(13*var(--u));padding:calc(12*var(--u)) calc(24*var(--u)) calc(11*var(--u))}
.spines{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:calc(18*var(--u))}
.spines a{font-family:var(--type);font-weight:700;font-size:calc(11.5*var(--u));letter-spacing:.06em;color:#fffaf0;padding:6px 14px 5px;border-radius:4px;box-shadow:inset 0 0 0 1.5px rgba(231,189,98,.8),0 3px 6px rgba(0,0,0,.25);transition:transform .15s}
.spines a:nth-child(1){background:var(--green)}.spines a:nth-child(2){background:var(--blue)}.spines a:nth-child(3){background:var(--red)}.spines a:nth-child(4){background:#8a5f1c}
.spines a:hover{transform:translateY(-2px) rotate(-1deg)}
.hnote{position:absolute;right:calc(26*var(--u));top:calc(18*var(--u));font-size:calc(26*var(--u));line-height:1;color:var(--navy);transform:rotate(-6deg);text-align:center;text-shadow:0 0 10px #fff,0 0 4px #fff}

/* now boarding: the featured tour as a golden ticket */
.boarding{position:relative;z-index:3;margin-top:calc(-44*var(--u));padding-bottom:calc(10*var(--u))}
.board{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:calc(22*var(--u));align-items:center}
.folder{position:relative;background:linear-gradient(135deg,#fff7df,#f4dfa6 60%,#eed08a);border:2px solid #b98530;border-radius:14px;box-shadow:inset 0 0 0 6px #fff7df,inset 0 0 0 8px rgba(185,133,48,.6),0 14px 30px rgba(29,53,87,.28);padding:calc(26*var(--u)) calc(26*var(--u)) calc(20*var(--u));display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:calc(20*var(--u));align-items:center;overflow:visible}
.folder::before,.folder::after{content:"";position:absolute;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:#f7eedb;box-shadow:inset 0 0 0 2px #b98530}
.folder::before{left:-15px}.folder::after{right:-15px}
.ftab{position:absolute;left:50%;top:-16px;transform:translateX(-50%);background:var(--navy);color:var(--gold2);font-family:var(--type);font-weight:800;font-size:calc(12.5*var(--u));letter-spacing:.2em;padding:6px 20px 5px;border-radius:6px;box-shadow:inset 0 0 0 2px rgba(231,189,98,.6),0 4px 8px rgba(0,0,0,.2);white-space:nowrap}
.fcol{display:grid;grid-template-columns:calc(150*var(--u)) minmax(0,1fr);gap:calc(18*var(--u));align-items:center}
.cw{position:relative}
.cw .cover{box-shadow:0 8px 18px rgba(29,53,87,.35);border-radius:4px;transform:rotate(-2deg)}
.fpage{display:grid;gap:10px;justify-items:start}
.victim{display:grid;gap:2px}
.victim span{font-family:var(--type);font-size:11px;letter-spacing:.16em;color:var(--red);text-transform:uppercase}
.victim b{font-family:var(--disp);font-weight:800;color:var(--navy);line-height:1.08}
.victim b:first-of-type{font-size:calc(22*var(--u))}
.victim b:last-of-type{font-size:calc(15*var(--u))}
.fcol .case{font-size:13px;line-height:1.6;color:var(--pt)}
.fcol .case b{font-family:var(--type);letter-spacing:.08em;color:var(--navy)}
.fcol .case a{color:var(--red);font-weight:600}
.suspects{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-content:center}
.sus{display:flex;gap:10px;align-items:center;background:#fffaf0;border:1.5px solid #d9b56a;border-radius:10px;padding:8px 10px;font-size:12px;line-height:1.25;color:var(--mute);cursor:pointer;transition:transform .15s,box-shadow .15s}
.sus:last-child{grid-column:1/-1}
.sus:hover{transform:translateY(-2px);box-shadow:0 6px 12px rgba(185,133,48,.25)}
.sus svg{width:26px;height:26px;flex:none;color:var(--red)}
.sus b{display:block;font-family:var(--disp);font-weight:800;font-size:14px;color:var(--navy)}
.waxseal{position:absolute;right:calc(-18*var(--u));top:calc(-44*var(--u));width:calc(150*var(--u));z-index:4}
.waxseal img{width:100%;height:auto;display:block;filter:drop-shadow(0 4px 6px rgba(0,0,0,.2))}
.polaroid.suspect{display:grid;justify-items:center;background:#fffaf0;padding:10px 10px 12px;border-radius:6px;box-shadow:0 10px 22px rgba(29,53,87,.25);transform:rotate(3deg);width:calc(170*var(--u));text-align:center;border:1.5px solid #e2c98c}
.polaroid .ph{width:100%;aspect-ratio:1;border-radius:4px;background:#e9dcc0 url(/img/seal.webp) center/55% no-repeat;background-size:cover}
.polaroid .ph:not([style*="url("]){background:#1d3557 url(/img/seal.webp) center/80% no-repeat}
.polaroid b{font-family:var(--type);font-size:11px;letter-spacing:.16em;color:var(--red);margin-top:8px;text-transform:uppercase}
.polaroid .sn{font-family:var(--disp);font-weight:800;font-size:17px;color:var(--navy);line-height:1.1}
.polaroid .sg{font-size:12px;color:var(--mute)}

/* program cards: four colored train cars */
.programs{padding:calc(40*var(--u)) 0 calc(30*var(--u))}
.tri{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(18*var(--u))}
.prog{--c:var(--green);--c2:#23462c;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;background:#fffaf0;border:3px solid var(--c);border-radius:14px 14px 10px 10px;padding:0 0 calc(22*var(--u));box-shadow:0 10px 22px rgba(29,53,87,.16);margin-top:18px}
.prog.blue{--c:var(--blue);--c2:#1f4c75}.prog.red{--c:var(--red);--c2:#7e1820}.prog.gold{--c:#c28f35;--c2:#8a5f1c}
.prog .roof{position:absolute;left:-3px;right:-3px;top:-20px;height:26px;background:var(--c2);border-radius:40px 40px 4px 4px;box-shadow:inset 0 3px 0 rgba(255,255,255,.18)}
.prog .roof::before{content:"";position:absolute;left:50%;top:5px;width:22px;height:12px;margin-left:-11px;border-radius:12px 12px 2px 2px;background:var(--gold2);box-shadow:0 0 12px rgba(255,210,120,.9)}
.prog .sign{position:relative;width:calc(100% - 28px);margin:14px 14px 0;background:#fffaf0;border:2px solid var(--c);border-radius:8px;padding:12px 10px 10px;box-shadow:0 0 0 4px var(--c),0 6px 10px rgba(0,0,0,.12)}
.prog h3{font-size:calc(21*var(--u));line-height:1.02;text-transform:uppercase;color:var(--c2)}
.prog .sign small{display:block;font-family:var(--disp);font-style:italic;font-weight:500;font-size:13px;color:var(--pt);margin-top:4px}
.prog .pimg{width:calc(100% - 28px);margin:14px 14px 10px;border-radius:8px;overflow:hidden;background:#f1e2bf;aspect-ratio:16/10}
.prog .pimg img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s ease}
.prog:hover .pimg img{transform:scale(1.05)}
.prog .pimg.evb .cover.img{aspect-ratio:auto;height:100%;background:#f1e2bf}
.prog .pimg.evb .cover.img img{object-fit:cover}
.prog p{font-size:13.5px;line-height:1.5;padding:0 18px;margin-bottom:14px}
.prog .price{display:block;font-family:var(--disp);font-weight:800;font-size:22px;color:var(--navy)}
.pbtns{margin-top:auto}
.pbtns .btn{font-size:12px}
.prog .wheels{position:absolute;left:14%;right:14%;bottom:-13px;height:24px;background:radial-gradient(circle at 12px 12px,#1d3557 7px,var(--gold) 8px 10px,transparent 11px) 0 0/48px 24px repeat-x}

/* departing soon */
.wanted{padding:calc(36*var(--u)) 0 calc(40*var(--u));background:linear-gradient(rgba(247,238,219,0),rgba(233,242,230,.9) 30%,rgba(214,232,210,.9)),var(--img-paper) 0 0/512px;border-top:2px dashed rgba(185,133,48,.4)}
.wanted .between{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.banner{position:relative;margin:0 auto;background:linear-gradient(#fffaf0,#f6e7c4);border:2px solid #c9a55a;padding:10px 46px 8px;text-align:center;border-radius:4px;box-shadow:0 6px 12px rgba(0,0,0,.12)}
.banner::before,.banner::after{content:"";position:absolute;top:10px;width:30px;height:100%;background:#e6cf98;z-index:-1}
.banner::before{left:-22px;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,35% 50%)}.banner::after{right:-22px;clip-path:polygon(0 0,100% 0,65% 50%,100% 100%,0 100%)}
.banner svg{position:absolute;left:12px;top:14px;width:48px;color:var(--navy)}
.wanted h2{font-family:var(--script);font-weight:700;font-size:clamp(34px,3.4vw,calc(50*var(--u)));line-height:1;color:var(--navy);padding-left:36px}
.wanted .lead{font-family:var(--disp);font-weight:700;color:var(--pt)}
.wanted .between .btn.ghost-l{margin-left:0}
.wanted .row{display:flex;align-items:center;gap:10px;margin-top:calc(24*var(--u));position:relative}
.signpost{flex:none;display:grid;gap:8px;padding-left:4px;position:relative}
.signpost::before{content:"";position:absolute;left:34px;top:-8px;bottom:-20px;width:10px;background:#7a5327;border-radius:3px;z-index:-1}
.signpost span{display:block;background:linear-gradient(#b98449,#96652f);color:#fff5de;font-family:var(--type);font-weight:800;font-size:13px;letter-spacing:.06em;padding:7px 26px 6px 14px;clip-path:polygon(0 0,86% 0,100% 50%,86% 100%,0 100%);box-shadow:0 3px 6px rgba(0,0,0,.2)}
.signpost span:nth-child(2){margin-left:8px}
.arrow{background:#fffaf0;border:2px solid var(--navy);border-radius:50%;width:38px;height:38px;color:var(--navy);font-size:26px;line-height:28px;cursor:pointer;flex:none;padding:0}
.rail{display:flex;gap:calc(16*var(--u));overflow-x:auto;scroll-snap-type:x mandatory;flex:1;padding:10px 4px 16px;scrollbar-width:thin}
.book{flex:0 0 calc(150*var(--u));width:calc(150*var(--u));min-width:0;scroll-snap-align:start;text-align:center;font-size:12px;line-height:1.35;color:var(--pt);background:#fffaf0;padding:8px 8px 12px;border-radius:10px;border:1.5px solid #e2c98c;box-shadow:0 8px 16px rgba(29,53,87,.14);transform:none!important;display:flex;flex-direction:column}
.book .cover{--ts:calc(14*var(--u));margin-bottom:8px;border-radius:6px;overflow:hidden}
.book b{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-family:var(--disp);font-size:15.5px;font-weight:800;line-height:1.12;color:var(--navy)}
.book span{display:block;color:var(--mute);font-size:12px;margin-top:3px}
.book .st{margin:8px auto 0;font-family:var(--type);font-weight:700;font-size:10.5px;letter-spacing:.08em;color:#fff8ea;background:var(--navy);border-radius:5px;padding:4px 10px 3px;text-transform:uppercase}
.tagnote{flex:none;width:calc(150*var(--u));background:#fffaf0;border:1px solid #e0c893;padding:16px 12px;font-size:calc(22*var(--u));line-height:1.02;text-align:center;color:var(--navy);transform:rotate(4deg);box-shadow:3px 8px 16px rgba(29,53,87,.18);position:relative}
.tagnote i{display:block;font-style:normal;color:var(--red);font-size:18px;margin-top:4px}
.tagnote::before{content:"";position:absolute;top:-8px;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ff8a80,#a8262e 70%)}
.railnote{text-align:center;margin-top:8px;font-family:var(--type);font-weight:700;letter-spacing:.06em}.railnote a{color:var(--red)}
@media (max-width:1100px){.signpost,.tagnote{display:none}}

/* icon strip */
.icons{background:#fffaf0;border-top:2px solid #ecd9ac;border-bottom:2px solid #ecd9ac;padding:calc(26*var(--u)) 0}
.icons .wrap{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;text-align:center}
.icons a{display:grid;justify-items:center;gap:4px;color:var(--pt);transition:transform .15s}
.icons a:hover{transform:translateY(-3px)}
.icons i{width:calc(62*var(--u));height:calc(62*var(--u));border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 40% 35%,#fffaf0,#f3e3be);border:2px solid var(--gold);box-shadow:0 4px 10px rgba(185,133,48,.25);color:var(--navy);margin-bottom:6px}
.icons svg{width:52%;height:52%}
.icons b{font-family:var(--disp);font-weight:800;font-size:15px;color:var(--navy);line-height:1.1}
.icons small{font-size:12.5px;color:var(--mute)}

/* join the journey / reader pass / authors */
.journey{padding:calc(40*var(--u)) 0 calc(46*var(--u))}
.journey .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(0,1fr);gap:calc(20*var(--u));align-items:stretch}
.pass{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:16px;align-items:center;background:#fffaf0;border:2px solid #e2c98c;border-radius:14px;padding:18px;box-shadow:0 10px 22px rgba(29,53,87,.12)}
.passimg{width:100%;height:auto;border-radius:6px;transform:rotate(-3deg);filter:drop-shadow(4px 10px 12px rgba(0,0,0,.3))}
.journey h2{font-size:clamp(24px,2.2vw,calc(30*var(--u)));text-transform:uppercase;line-height:1}
.sub2{font-family:var(--disp);font-weight:800;font-size:calc(18*var(--u));color:var(--red);margin:4px 0 8px}
.news p{font-size:14px}
.ticks{list-style:none;padding:0;margin:10px 0 16px;display:grid;gap:6px;font-size:14px}
.ticks li{display:flex;gap:10px;align-items:center}
.ticks li::before{content:"✓";width:19px;height:19px;border-radius:4px;background:var(--gold);color:#fff;font-size:12px;font-weight:700;display:grid;place-content:center;flex:none;box-shadow:inset 0 0 0 1px #9c6d22}
.news .f,.fmail .f{display:flex;gap:8px;flex-wrap:wrap}
.news input,.fmail input{flex:1 1 170px;min-width:0;padding:11px 12px;border:2px solid #d9bf85;border-radius:7px;background:#fff;font-family:var(--serif);font-size:14px;color:var(--pt)}
#thanks{width:100%;font-family:var(--hand);font-size:21px;color:var(--red);min-height:1px;margin-top:6px}
.quote{position:relative;margin:0;border-radius:14px;overflow:hidden;box-shadow:0 10px 22px rgba(29,53,87,.18);background:#27466f}
.quote img{width:100%;height:100%;object-fit:cover;display:block;min-height:260px}
.quote figcaption{position:absolute;left:8%;right:8%;top:7%;text-align:center;font-size:calc(24*var(--u));line-height:1.02;color:var(--navy);background:rgba(255,250,240,.86);border-radius:10px;padding:10px 12px}
.quote figcaption small{display:block;font-family:var(--disp);font-size:13px;font-style:italic;margin-top:4px;color:var(--mute)}
.fap{background:#fffaf0;border:3px double #c9a55a;border-radius:14px;padding:22px;box-shadow:0 10px 22px rgba(29,53,87,.12);text-align:center;display:grid;justify-items:center;align-content:start}
.fap .ticks{justify-self:stretch;text-align:left}

/* footer */
footer{background:linear-gradient(#1d3557,#13263f);color:#f3e7c9;border-top:4px solid var(--gold);padding:30px 0 26px;position:relative}
footer::before{content:"";position:absolute;left:0;right:0;top:-30px;height:30px;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 32' preserveAspectRatio='none'%3E%3Cpath fill='%231d3557' d='M0 32L0 30L6 15L13 30L18 12L24 30L32 20L41 30L46 22L52 30L57 12L62 30L71 15L80 30L85 17L90 30L99 7L108 30L116 16L123 30L129 21L135 30L142 18L149 30L154 16L159 30L166 18L173 30L179 15L185 30L192 13L199 30L204 14L210 30L218 8L226 30L232 19L239 30L246 9L252 30L240 32z'/%3E%3C/svg%3E") 0 100%/240px 30px repeat-x}
footer .wrap{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:28px;align-items:center}
.fbrand .logo{background:#fbf5e8;border-radius:16px;padding:8px 16px;box-shadow:inset 0 0 0 2px var(--gold),0 6px 14px rgba(0,0,0,.3)}
.fmid{display:grid;gap:14px;justify-items:center}
footer nav{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center;font-family:var(--disp);font-weight:700;font-size:13.5px;color:#f3e7c9}
footer nav a:hover{color:var(--gold2)}
.social{display:flex;gap:14px}.social a{color:#f3e7c9;display:flex}.social a:hover{color:var(--gold2)}.social svg{width:21px;height:21px}
.ftrain{display:grid;justify-items:center;gap:4px;color:#e9d7a8}
.ftrain svg{width:220px}
.ftrain span{font-family:var(--type);font-size:12px;letter-spacing:.3em;text-transform:uppercase}
.fend{display:grid;gap:12px;justify-items:end}
.fmail{display:grid;gap:4px;max-width:340px}
.fmail b{font-family:var(--disp);font-weight:800;font-size:17px;color:#fff8ea}
.fmail small{font-size:12px;color:#d6c7a2}
.fmail input{border-color:#c9a55a}
#fthanks{font-family:var(--hand);font-size:18px;color:var(--gold2);min-height:1px}
.fquote{color:#f3e7c9;font-size:21px;line-height:1;transform:rotate(-4deg);text-align:right}
@media (max-width:1100px){footer .wrap{grid-template-columns:1fr;justify-items:center;text-align:center}.fend{justify-items:center}.fquote{text-align:center}}

/* homepage responsive */
@media (max-width:1180px){.tri{grid-template-columns:1fr 1fr;row-gap:36px}.icons .wrap{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:22px}.journey .wrap{grid-template-columns:1fr 1fr}.pass{grid-column:1/-1}.board{grid-template-columns:1fr}.board #suspectPol{display:none}}
@media (max-width:900px){.folder{grid-template-columns:1fr}.hnote{display:none}}
@media (max-width:760px){
 .station{min-height:500px}.station::after{background:radial-gradient(ellipse 80% 55% at 50% 45%,rgba(253,246,228,.9),rgba(253,246,228,.6) 60%,rgba(253,246,228,.1))}
 .station h1{font-size:36px}.wrap{padding:0 16px}
 .fcol{grid-template-columns:110px minmax(0,1fr)}.folder{padding:30px 16px 18px}
 .waxseal{width:110px;right:-6px;top:-34px}
 .tri,.journey .wrap,.pass{grid-template-columns:minmax(0,1fr)}.pass{grid-column:auto}.passimg{max-width:200px;justify-self:center}
 .icons .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
 .arrow{display:none}.wanted h2{padding-left:28px}.banner{padding:10px 26px 8px}
}
#home{overflow-x:clip}
@media (prefers-reduced-motion:no-preference){.station h1{animation:rise .8s ease-out both}.waxseal img{animation:amb-stamp 1s cubic-bezier(.2,1.6,.4,1) .6s both}.price{animation:amb-pulse 3.6s ease-in-out infinite}
 .tagnote{animation:amb-sway 6s ease-in-out infinite}}
@keyframes rise{from{opacity:0;transform:translateY(12px)}}
@keyframes amb-stamp{0%{opacity:0;transform:scale(1.8) rotate(8deg)}60%{opacity:1}100%{opacity:1;transform:none}}
@keyframes amb-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
@keyframes amb-sway{0%,100%{transform:rotate(4deg)}50%{transform:rotate(1.5deg)}}
.amb-dust{position:absolute;inset:0;z-index:1;pointer-events:none}

/* covers: children's books are often square or landscape, so show the whole cover */
.cover{position:relative;aspect-ratio:3/4;display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center;padding:14% 9% 10%;color:#fffaf0;border-radius:4px;overflow:hidden}
.cover .t{font-family:var(--disp);font-weight:800;font-size:var(--ts,20px);line-height:1.05;position:relative;z-index:1;text-wrap:balance;overflow-wrap:anywhere}
.cover .a{font-family:var(--type);font-size:calc(var(--ts,20px)*.55);letter-spacing:.1em;position:relative;z-index:1;color:#f6e3b0}
.cover::before,.cover::after{display:none}
.cover.img{padding:0;background:#fffaf0;aspect-ratio:1/1}.cover.img img{width:100%;height:100%;object-fit:contain;display:block}

/* ---------- inner pages: a cream ticket-book page under a station banner ---------- */
#page{position:relative;background:#f7eedb var(--img-paper) 0 0/512px;padding:0 16px 96px;color:var(--pt)}
#page::before{content:"";display:block;height:clamp(150px,19vw,300px);margin:0 -16px;background:var(--pbn,url(/img/banners/tours.webp)) center 45%/cover no-repeat;border-bottom:4px solid var(--gold);box-shadow:inset 0 -40px 40px -30px rgba(29,53,87,.35)}
#page::after{content:"";position:absolute;left:0;right:0;bottom:0;height:78px;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 130 30'%3E%3Cg fill='%231d3557'%3E%3Crect x='0' y='8' width='30' height='14' rx='2'/%3E%3Crect x='34' y='8' width='30' height='14' rx='2'/%3E%3Crect x='68' y='10' width='34' height='12' rx='3'/%3E%3Crect x='96' y='2' width='18' height='20' rx='2'/%3E%3Crect x='76' y='2' width='5' height='8'/%3E%3Cpath d='M114 16l12 6h-12z'/%3E%3Ccircle cx='80' cy='24' r='4'/%3E%3Ccircle cx='104' cy='24' r='5'/%3E%3Ccircle cx='10' cy='24' r='3'/%3E%3Ccircle cx='22' cy='24' r='3'/%3E%3Ccircle cx='44' cy='24' r='3'/%3E%3Ccircle cx='56' cy='24' r='3'/%3E%3C/g%3E%3Cpath d='M0 29h130' stroke='%231d3557' stroke-width='1.5'/%3E%3C/svg%3E") calc(100% - 8%) calc(100% - 8px)/190px 44px no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 70'%3E%3Cg fill='%232f5d3a' opacity='.55'%3E%3Cpath d='M0 70V50l10-18 8 14 10-26 10 26 8-14 10 18 12-30 12 30 8-16 10 16 14-34 14 34 10-20 10 20 8-12 10 12 14-28 12 28 10-16 10 16 12-32 12 32 8-14 10 14 10-22 10 22 8-10 10 10 12-24 10 24 6-8 8 8v20z'/%3E%3C/g%3E%3C/svg%3E") 0 100%/400px 70px repeat-x}
#page[data-mode="bookstore"]{--pbn:url(/img/banners/books.webp)}
#page[data-mode="monthly"]{--pbn:url(/img/banners/monthly.webp)}
#page[data-mode="club"],#page[data-mode="room"]{--pbn:url(/img/banners/club.webp)}
#page[data-mode="drop"]{--pbn:url(/img/banners/giveaway.webp)}
#page[data-mode="authors"],#page[data-mode="apply"],#page[data-mode="submit-evidence"],#page[data-mode="giveaway-application"],#page[data-mode="status"],#page[data-mode="payment"]{--pbn:url(/img/banners/authors.webp)}
#page[data-mode="interviews"],#page[data-mode="reviews"],#page[data-mode="guest-posts"],#page[data-mode="notes"],#page[data-mode="note"],#page[data-mode="author"]{--pbn:url(/img/banners/readers.webp)}
#page[data-mode="investigators"],#page[data-mode="evidence-room"]{--pbn:url(/img/banners/hosts.webp)}
#page[data-mode="about"],#page[data-mode="contact"],#page[data-mode="faq"],#page[data-mode="privacy"],#page[data-mode="terms"]{--pbn:url(/img/banners/about.webp)}
#page[data-mode="admin"]::before,#page[data-mode="admin"]::after{display:none}
#page[data-mode="admin"]{padding-top:24px}
#page>.wrap{position:relative;isolation:isolate;max-width:1200px;margin:calc(-54*var(--u)) auto 0;padding:40px clamp(18px,4vw,54px) 52px}
#page>.wrap::before{content:"";position:absolute;inset:0;z-index:-1;background:#fffaf0!important;border:2px solid #e2c98c;border-radius:16px;box-shadow:0 0 0 6px #fffaf0,0 0 0 8px rgba(212,162,76,.55),0 18px 40px rgba(29,53,87,.18)}
#page>.wrap+.wrap{margin-top:24px}
#page .ph1,.ph1{font-family:var(--disp);font-weight:800;color:var(--navy);line-height:1;letter-spacing:-.005em}
.sec>h2,.h2t,.endcta h2,.gwcta h2,.art h3,.acc h3{font-family:var(--disp);font-weight:800;color:var(--navy);text-transform:none;letter-spacing:0}
.sec>h2,.h2t{font-size:clamp(24px,2.6vw,32px)}
.endcta h2{font-size:clamp(26px,3vw,38px)}
.kick{font-family:var(--disp);font-size:clamp(18px,1.9vw,23px);font-weight:700;color:var(--red)}
.kick.red{font-family:var(--type);font-size:14px;letter-spacing:.1em;color:var(--red)}
.lbl{font-family:var(--type);letter-spacing:.12em;color:var(--mute)}
.lede{color:var(--pt)}
.note{background:#fffaf0;color:var(--pt);border:1px solid #e0c893;box-shadow:2px 6px 14px rgba(29,53,87,.18)}
.pin::before,.pin2::after{background:radial-gradient(circle at 35% 30%,#ff8a80,#a8262e 70%);box-shadow:0 2px 3px rgba(0,0,0,.3)}
.pnote{font-family:var(--script);font-weight:700;font-size:24px;line-height:1.05;max-width:240px;color:var(--navy)}
.card{background:#fffaf0;color:var(--pt);border:1.5px solid #e2c98c;border-radius:12px;box-shadow:0 8px 16px rgba(29,53,87,.12);padding:12px 12px 14px}
.card b{font-family:var(--disp);font-weight:800;font-size:18px;line-height:1.1;color:var(--navy)}
.card span{color:var(--mute)}.card .badge{color:var(--red)}
.card .cover{border-radius:8px}
.badge,.back{font-family:var(--type);letter-spacing:.08em;font-weight:700;font-size:12px;color:var(--red)}
.tab{font-family:var(--type);font-weight:700;letter-spacing:.04em;background:#fffaf0;border:2px solid #e2c98c;border-radius:999px;color:var(--navy);padding:7px 16px}
.tab.on{background:var(--navy);border-color:var(--navy);color:#fff8ea}
.srch,.pf input,.pf textarea,.pf select,.follow input{background:#fff;border:2px solid #dcc38b;border-radius:8px}
.bul li::before{background:radial-gradient(circle at 35% 30%,#f2cf7c,#c28f35 65%,#8a5f1c)}
.opt,.card2,.feat,.infor,.evc,.stripa,.pk,.stops li,.post{border-radius:12px}
.opt{background:#fffaf0;border:1.5px solid #e2c98c}
.opt svg,.feat svg,.infor svg,.evc svg,.stripa svg{color:var(--red)}
.opt b,.feat b,.evc b,.stripa b,.infor b,.pk b,.sus5 b,.glos b,.post b,.tzb b,.bkrow b,.stationpick .hp-info b{font-family:var(--disp);font-weight:800;font-size:17px;color:var(--navy)}
.glos b,.sus5 b{color:var(--red)}
.pk .pr{font-family:var(--disp);font-weight:800;font-size:38px;color:var(--red)}
.pk.hot::before{content:"Most chosen";font-family:var(--type);letter-spacing:.08em;background:var(--red);color:#fff;border-radius:6px}
.shot{background:#fffaf0;border-radius:10px;transform:rotate(1.5deg);box-shadow:0 10px 22px rgba(29,53,87,.22)}
.shot img{border-radius:6px}
.infor i{background:var(--red)}
.gv .ctag,.ctag{background:#fffaf0;border-color:#c9a55a;color:var(--red);font-family:var(--type);letter-spacing:.08em;border-radius:8px}
.stat{font-family:var(--type);letter-spacing:.08em;font-weight:700}
.msg{font-family:var(--hand);font-size:20px;color:var(--red)}
.endcta{border-top:2px dashed #e0c893}
.cf2 .cvcap{font-family:var(--type);letter-spacing:.08em}
.band{border-radius:12px;clip-path:none;margin-bottom:0}
.clubimg{border-radius:12px;overflow:hidden}
.aside-brand b{font-family:var(--disp);font-weight:800}
.fs legend{font-family:var(--type);font-weight:800;letter-spacing:.08em;color:var(--navy)}
.fl>span{font-family:var(--type);font-weight:700;letter-spacing:.06em}
.stops li{background:#fffaf0;border-color:#e2c98c}
.stops .dt{background:var(--red);color:#fff;border-radius:6px;font-family:var(--type);font-weight:800}
.evc.on{border-color:var(--red)}
.seal{background:radial-gradient(circle,#1d3557 58%,#d4a24c 59% 61%,#1d3557 62% 70%,#d4a24c 71% 73%,#13263f 74%);color:#f3d58c}
.thread,.mag,.fpd{display:none}
.pola{border-radius:6px}
@media (max-width:760px){#page>.wrap{margin-top:-30px;padding:30px 16px 40px}}
.lamp2{display:none}
#page[data-mode="admin"]{padding-top:calc(70*var(--u))}

/* =====================================================================
   POLISH PASS (closer to the approved mockup)
   ===================================================================== */
:root{--cond:'Oranienbaum','Alegreya',Georgia,serif;--goudy:'Sorts Mill Goudy','Alegreya',Georgia,serif}
/* header: big hanging logo, mixed-case serif menu */
.nav .wrap{min-height:calc(62*var(--u))}
.nav .logo{margin-bottom:calc(-96*var(--u));margin-top:calc(-2*var(--u))}
.nav .logo img{height:calc(150*var(--u))!important;filter:drop-shadow(0 6px 10px rgba(11,23,42,.35))}
.links{font-family:var(--disp);font-weight:500;font-size:calc(13.2*var(--u));letter-spacing:0;gap:calc(17*var(--u))}
.links a{color:#1d3557}
.navcta .btn{font-family:var(--disp);font-weight:700;letter-spacing:.06em;font-size:calc(11.5*var(--u))}
@media (max-width:1320px){.nav .logo{margin-bottom:calc(-60*var(--u))}.nav .logo img{height:calc(110*var(--u))!important}}
@media (max-width:640px){.nav .logo{margin-bottom:-26px}.nav .logo img{height:78px!important}}

/* hero */
.station{min-height:calc(660*var(--u))}
.hbg{background-position:center 58%}
.station::after{background:radial-gradient(ellipse 30% 42% at 50% 40%,rgba(255,250,236,.82),rgba(255,250,236,.55) 45%,rgba(255,250,236,0) 72%),linear-gradient(rgba(0,0,0,0) 62%,rgba(247,238,219,.55) 88%,#f7eedb)}
.station>.wrap{padding-top:calc(34*var(--u));padding-bottom:calc(190*var(--u));align-self:flex-start}
.hcopy{max-width:calc(600*var(--u))}
.station h1{font-family:var(--goudy);font-weight:400;font-size:clamp(44px,5.4vw,calc(82*var(--u)));line-height:.92;color:#16304f;letter-spacing:-.01em;text-shadow:0 0 22px rgba(255,250,236,1),0 0 6px rgba(255,250,236,.9),0 2px 0 #fff}
.station .tagline{font-family:var(--goudy);font-style:italic;font-weight:400;text-transform:none;letter-spacing:0;font-size:clamp(24px,2.5vw,calc(36*var(--u)));color:#a8262e;margin:calc(10*var(--u)) 0 calc(8*var(--u));text-shadow:0 0 14px #fffaf0,0 0 4px #fffaf0}
.station .sub{font-family:var(--disp);font-weight:500;font-size:calc(16*var(--u));max-width:34ch;color:#1d2a40;text-shadow:0 0 10px #fffaf0,0 0 3px #fffaf0}
.hbtns .btn{font-family:var(--disp);font-weight:700;letter-spacing:.08em;font-size:calc(14*var(--u));padding:calc(13*var(--u)) calc(28*var(--u)) calc(12*var(--u))}
.spines a{font-family:var(--disp);letter-spacing:.03em;font-size:calc(12.5*var(--u))}
.hnote{top:calc(20*var(--u));right:calc(34*var(--u));font-size:calc(30*var(--u));color:#fffaf0;text-shadow:0 2px 6px rgba(11,23,42,.7),0 0 2px #0b172a;transform:rotate(-8deg)}
.hnote i{font-style:normal;color:#e04b52}
/* hanging station boards */
.hsign{position:absolute;z-index:3;display:grid;gap:2px;justify-items:center;text-align:center;background:linear-gradient(#22406a,#13263f);border:3px solid #d4a24c;border-radius:6px;box-shadow:inset 0 0 0 3px #13263f,inset 0 0 0 4px rgba(231,189,98,.55),0 12px 22px rgba(11,23,42,.45);padding:calc(14*var(--u)) calc(20*var(--u));font-family:var(--cond);text-transform:uppercase;color:#f3e3bb;font-size:calc(21*var(--u));line-height:1.12;letter-spacing:.02em}
.hsign::before,.hsign::after{content:"";position:absolute;top:calc(-200*var(--u));width:3px;height:calc(200*var(--u));background:repeating-linear-gradient(#b98530 0 6px,#6d4b16 6px 9px)}
.hsign::before{left:22%}.hsign::after{right:22%}
.hsign.l{left:calc(24*var(--u));top:calc(150*var(--u));transform:rotate(-2deg)}
.hsign.r{right:calc(22*var(--u));top:calc(170*var(--u));transform:rotate(1.5deg)}
.hsign b{font-weight:400;font-size:1.25em;color:#f7d98a;border-bottom:1px solid rgba(212,162,76,.6);padding-bottom:4px;margin-bottom:4px}
.hsign a{color:#f3e3bb;transition:color .15s}.hsign a:hover{color:#fff}
.htag{position:absolute;z-index:3;right:calc(210*var(--u));bottom:calc(150*var(--u));background:linear-gradient(#fff6de,#ecd9ab);color:#1d3557;border:1.5px solid #b98530;border-radius:6px 6px 6px 6px;padding:calc(24*var(--u)) calc(16*var(--u)) calc(14*var(--u));font-size:calc(22*var(--u));line-height:1;text-align:center;transform:rotate(8deg);box-shadow:0 10px 18px rgba(11,23,42,.35);clip-path:polygon(22% 0,78% 0,100% 12%,100% 100%,0 100%,0 12%)}
.htag::before{content:"";position:absolute;left:50%;top:9px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:#7a5327;box-shadow:inset 0 0 0 2px #d4a24c}
.htag i{display:block;font-style:normal;color:#a8262e;font-size:.8em;margin-top:4px}
@media (max-width:1180px){.hsign,.htag{display:none}}

/* train-car cards overlap the bottom of the hero, like the mockup */
.programs{position:relative;z-index:4;margin-top:calc(-170*var(--u));padding-top:0;padding-bottom:calc(46*var(--u))}
.programs::before{content:"";position:absolute;left:0;right:0;top:calc(120*var(--u));bottom:0;z-index:-1;background:#f7eedb var(--img-paper) 0 0/512px}
.prog{border-width:4px;border-radius:18px 18px 12px 12px;box-shadow:0 18px 34px rgba(29,53,87,.28)}
.prog .roof{top:-24px;height:32px;border-radius:60px 60px 6px 6px;background:linear-gradient(var(--c),var(--c2))}
.prog .sign{box-shadow:0 0 0 5px var(--c),0 6px 12px rgba(0,0,0,.14);padding:14px 10px 12px;border-radius:10px}
.prog h3{font-family:var(--cond);font-weight:400;font-size:calc(29*var(--u));line-height:.98;letter-spacing:.01em}
.prog .sign small{font-family:var(--goudy);font-size:15px}
.prog .pimg{aspect-ratio:4/3;border:3px solid #fffaf0;box-shadow:0 0 0 2px var(--c),0 8px 16px rgba(0,0,0,.18);margin-top:18px}
.prog p{font-size:15px;font-family:var(--disp);line-height:1.4}
.prog .price{font-family:var(--cond);font-size:28px}
.pbtns .btn{font-family:var(--disp);font-weight:700;letter-spacing:.08em;font-size:13px;padding:11px 22px 10px}
@media (max-width:1180px){.programs{margin-top:calc(-120*var(--u))}}
@media (max-width:760px){.programs{margin-top:-80px}.station>.wrap{padding-bottom:120px}}

/* now boarding ticket sits between the cards and the departures */
.boarding{margin-top:0;padding:calc(10*var(--u)) 0 calc(44*var(--u))}
.ftab{font-family:var(--disp);letter-spacing:.14em}
.victim b:first-of-type{font-family:var(--cond);font-weight:400;font-size:calc(30*var(--u));line-height:1}

/* departing soon: departures over the viaduct valley */
.wanted{position:relative;border-top:0;padding:calc(46*var(--u)) 0 calc(54*var(--u));background:linear-gradient(rgba(247,238,219,.15),rgba(247,238,219,.25) 45%,rgba(247,238,219,.92) 82%,#f7eedb),url(/img/banners/tours.webp) center 35%/cover no-repeat}
.wanted::before{content:"";position:absolute;inset:0;background:linear-gradient(#f7eedb,rgba(247,238,219,0) 18%);pointer-events:none}
.wanted .wrap{position:relative}
.banner{background:linear-gradient(#fffaf0,#f1dfb3);border:2px solid #b98530;padding:12px 60px 10px 90px}
.banner svg{left:18px;top:18px;width:58px}
.wanted h2{font-size:clamp(38px,3.8vw,calc(56*var(--u)));padding-left:0}
.wanted .lead{font-family:var(--goudy);font-size:17px}
.wanted .between>.btn,.wanted .between .btn{box-shadow:inset 0 0 0 2px rgba(231,189,98,.6),0 6px 14px rgba(11,23,42,.35)}
.wanted .between .btn.ghost-l{background:#fffaf0}
.rail{gap:calc(20*var(--u));padding:14px 6px 20px}
.book{flex:0 0 calc(172*var(--u));width:calc(172*var(--u));background:rgba(255,250,240,.96);border:2px solid #e2c98c;border-radius:12px;box-shadow:0 14px 26px rgba(11,23,42,.28);padding:10px 10px 14px;transition:transform .2s}
.book:hover{transform:translateY(-6px)!important}
.book .cover{box-shadow:0 6px 14px rgba(11,23,42,.3);border-radius:6px}
.book b{font-family:var(--disp);font-size:16px}
.book .st{font-family:var(--disp);font-size:12px;letter-spacing:.06em;padding:6px 14px 5px;border-radius:6px;box-shadow:inset 0 0 0 1.5px rgba(231,189,98,.6)}
.signpost span{font-family:var(--cond);font-weight:400;font-size:19px;text-transform:uppercase;letter-spacing:.02em;padding:8px 30px 7px 16px}
.tagnote{font-size:calc(26*var(--u));width:calc(160*var(--u));background:linear-gradient(#fffaf0,#f3e6c6)}
.railnote a{font-family:var(--disp)}
.arrow{background:#1d3557;color:#f7d98a;border-color:#d4a24c;box-shadow:0 6px 12px rgba(11,23,42,.3)}

/* icon strip */
.icons{border:0;background:linear-gradient(#f7eedb,#fbf4e3);padding:calc(34*var(--u)) 0}
.icons i{width:calc(86*var(--u));height:calc(86*var(--u));border:3px solid #1d3557;box-shadow:inset 0 0 0 4px #fffaf0,inset 0 0 0 6px #d4a24c,0 8px 16px rgba(29,53,87,.18);background:radial-gradient(circle at 40% 35%,#fffdf6,#f4e6c3)}
.icons svg{width:48%;height:48%;stroke-width:1.9}
.icons b{font-family:var(--disp);font-weight:700;font-size:17px}
.icons small{font-family:var(--goudy);font-size:14.5px}

/* join the journey / quote / authors, inside one framed parchment panel */
.journey{padding:calc(26*var(--u)) 0 calc(56*var(--u))}
.journey .wrap{background:#fbf3de var(--img-paper) 0 0/512px;border:3px solid #b98530;border-radius:18px;box-shadow:inset 0 0 0 6px #fbf3de,inset 0 0 0 8px rgba(185,133,48,.55),0 18px 36px rgba(29,53,87,.18);padding:calc(26*var(--u));gap:calc(24*var(--u))}
.pass{background:transparent;border:0;box-shadow:none;padding:0;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:22px}
.passimg{border-radius:10px;transform:rotate(-6deg) scale(1.06);box-shadow:0 18px 28px rgba(0,0,0,.35);filter:none}
.journey h2{font-family:var(--cond);font-weight:400;font-size:clamp(30px,2.8vw,calc(40*var(--u)));letter-spacing:.01em}
.sub2{font-family:var(--goudy);font-weight:400;font-size:calc(22*var(--u))}
.news p{font-family:var(--goudy);font-size:16px}
.ticks li{font-size:15px}
.quote{border:3px solid #fffaf0;box-shadow:0 0 0 2px #b98530,0 14px 26px rgba(29,53,87,.25)}
.quote figcaption{background:rgba(255,250,240,.9);font-size:calc(27*var(--u))}
.fap{background:#fffaf0;border:3px solid #1d3557;box-shadow:inset 0 0 0 5px #fffaf0,inset 0 0 0 7px #d4a24c}
.fap h2{font-size:clamp(26px,2.4vw,calc(34*var(--u)))}

/* footer */
.fbrand .logo{background:none;box-shadow:none;padding:0}
footer .logo img{height:calc(140*var(--u))!important;filter:drop-shadow(0 6px 10px rgba(0,0,0,.4))}
footer nav{font-family:var(--disp);font-weight:500;font-size:14px;gap:6px 0}
footer nav a{padding:0 12px;border-right:1px solid rgba(212,162,76,.5);line-height:1.2}
footer nav a:last-child{border-right:0}
.fquote{font-size:26px}
.ftrain svg{width:280px}

/* inner pages share the condensed display type */
#page .ph1{font-family:var(--cond);font-weight:400;text-transform:uppercase;letter-spacing:.01em;font-size:clamp(36px,4.6vw,60px)}
.sec>h2,.h2t,.endcta h2{font-family:var(--cond);font-weight:400;text-transform:uppercase;letter-spacing:.01em}
.links a{text-transform:none}
.rail{justify-content:safe center}
.book{flex-basis:calc(158*var(--u));width:calc(158*var(--u))}
@media (max-width:760px){
 .journey .wrap{margin:0 16px;padding:18px 14px;grid-template-columns:minmax(0,1fr)}
 .pass{grid-template-columns:minmax(0,1fr)}.passimg{max-width:180px;justify-self:center}
 .station h1{font-size:40px}
}

/* Station Notes: an uploaded feature image shows whole, at its own shape */
.art .hero2.hero2i{aspect-ratio:auto;background:none;padding:0;overflow:hidden;border-radius:10px}
.art .hero2.hero2i img{display:block;width:100%;height:auto;max-height:720px;object-fit:contain;background:#fffaf0}

/* ---- cover v2 (Oct 2026): The Storybook Express cover (vintage railway poster, carriage window, tickets) ---- */
.mcover.v2{text-shadow:none;text-align:left}
.mcover.v2 :where(p,h2,ul,li){margin:0;padding:0}
.sb2{background:#f6ead0;color:#2a1d12}
.sb2 .c2-sky{position:absolute;inset:0;z-index:-5;background:linear-gradient(180deg,#9fd0e6 0,#cfe8ef 38%,#f7ecd2 62%,#f2dfb6 100%)}
.sb2 .c2-rays{position:absolute;inset:0;z-index:-4;background:repeating-conic-gradient(from 0deg at 50% 46%,rgba(255,255,255,.28) 0 6deg,transparent 6deg 14deg);-webkit-mask-image:radial-gradient(circle at 50% 46%,#000 20%,transparent 70%);mask-image:radial-gradient(circle at 50% 46%,#000 20%,transparent 70%)}
.sb2 .c2-mast{position:absolute;top:2%;left:3%;right:3%;text-align:center}
.sb2 .c2-ribbon{display:block;background:#b8322a;padding:1.6cqw 4cqw 1.8cqw;clip-path:polygon(0 0,100% 0,96% 50%,100% 100%,0 100%,4% 50%);box-shadow:0 .6cqw 0 #7a1f19}
.sb2 .c2-mast .lg{display:block;white-space:nowrap;font:400 7.4cqw/1 'Rye',Georgia,serif;color:#fbe9b7;letter-spacing:.02em;text-shadow:.35cqw .35cqw 0 #6d1b15}
.sb2 .c2-mast small{display:block;margin-top:1.6cqw;font:italic 700 2.6cqw/1 'Alegreya',Georgia,serif;color:#2f5d3a}
.sb2 .c2-board{position:absolute;left:22%;right:22%;top:20.5%;background:#1f2a24;border:.6cqw solid #c79a3a;border-radius:.8cqw;padding:1cqw 2cqw;text-align:center;box-shadow:0 .8cqw 1.4cqw rgba(0,0,0,.3);z-index:2}
.sb2 .c2-board span{display:block;font:700 1.35cqw/1 'Alegreya SC',Georgia,serif;letter-spacing:.3em;text-transform:uppercase;color:#e3b341}
.sb2 .c2-board b{display:block;margin-top:.6cqw;font:400 4.6cqw/1 'Rye',Georgia,serif;color:#fbe9b7;white-space:nowrap;letter-spacing:.02em}
.sb2 .c2-board b.l{font-size:3.9cqw}.sb2 .c2-board b.xl{font-size:3.3cqw}.sb2 .c2-board b.xxl{font-size:2.8cqw}
.sb2 .c2-car{position:absolute;left:8%;right:8%;top:28%;height:47%;background:linear-gradient(180deg,#2f5d3a 0,#26502f 100%);border-radius:4cqw 4cqw 1.4cqw 1.4cqw;box-shadow:inset 0 -2.4cqw 0 #c79a3a,inset 0 -3cqw 0 #1c3a24,0 1.4cqw 2.4cqw rgba(0,0,0,.25);z-index:-1}
.sb2 .c2-car:before{content:'';position:absolute;left:3cqw;right:3cqw;top:2.2cqw;height:.5cqw;background:#c79a3a;border-radius:1cqw}
.sb2 .c2-win{position:absolute;left:14%;right:14%;top:9%;bottom:15%;border-radius:3cqw;background:#c79a3a;padding:1cqw;box-shadow:inset 0 0 0 .4cqw #8d6a22}
.sb2 .c2-photo{position:absolute;inset:1cqw;border-radius:2.2cqw;background-size:cover;background-position:center 32%}
.sb2 .c2-car i{position:absolute;bottom:-3.4cqw;width:7cqw;height:7cqw;border-radius:50%;background:radial-gradient(circle,#c79a3a 0 18%,#2a1d12 20% 34%,#b8322a 36% 70%,#2a1d12 72%);box-shadow:0 .4cqw .6cqw rgba(0,0,0,.4)}
.sb2 .c2-car .w1{left:8%}.sb2 .c2-car .w2{left:24%}.sb2 .c2-car .w3{right:24%}.sb2 .c2-car .w4{right:8%}
.sb2 .c2-head-w{position:absolute;left:6%;right:30%;top:80.5%}
.sb2 .c2-head{font:400 3.6cqw/1.1 'Sorts Mill Goudy','Alegreya',Georgia,serif;color:#2a1d12;text-wrap:balance}
.sb2 .c2-tix{position:absolute;right:2.5%;top:31%;width:15%;list-style:none;display:grid;gap:1.4cqw;z-index:2}
.sb2 .c2-tix li{background:#fbe9b7;border:.2cqw dashed #b8322a;padding:1.1cqw 1cqw;transform:rotate(3deg);box-shadow:.3cqw .5cqw 1cqw rgba(0,0,0,.25)}
.sb2 .c2-tix li:nth-child(2){transform:rotate(-2deg);background:#fff6dc}
.sb2 .c2-tix b{display:block;font:700 1.55cqw/1.05 'Alegreya SC',Georgia,serif;color:#b8322a;text-transform:uppercase}
.sb2 .c2-tix span{display:block;margin-top:.4cqw;font:italic 400 1.25cqw/1.2 'Alegreya',Georgia,serif;color:#2a1d12}
.sb2 .c2-book{position:absolute;left:2.5%;top:44%;width:17%;transform:rotate(-5deg);z-index:2}
.sb2 .c2-book .cover{box-shadow:.8cqw 1.4cqw 2.4cqw rgba(0,0,0,.4)}
.sb2 .c2-stub{position:absolute;left:30%;bottom:-6cqw;width:110%;background:#e3b341;color:#2a1d12;padding:1cqw 1.4cqw;font:700 1.15cqw/1.1 'Alegreya SC',Georgia,serif;letter-spacing:.14em;text-transform:uppercase;transform:rotate(9deg);border-left:.4cqw dashed #2a1d12;box-shadow:.3cqw .5cqw 1cqw rgba(0,0,0,.3)}
.sb2 .c2-stub b{display:block;font:400 2.2cqw/1.1 'Rye',Georgia,serif;letter-spacing:.02em;text-transform:none}
.sb2 .c2-stub small{display:block;font-size:.9em}
.sb2 .c2-hand{position:absolute;right:4%;top:79%;width:24%;text-align:center;font:700 2.7cqw/1 'Caveat',cursive;color:#b8322a;transform:rotate(-5deg)}
.sb2 .c2-track{position:absolute;left:0;right:0;bottom:2.5%;height:2.4cqw;background:repeating-linear-gradient(90deg,#6b4a2a 0 1.4cqw,transparent 1.4cqw 4cqw),linear-gradient(180deg,transparent 0 30%,#555 30% 45%,transparent 45% 70%,#555 70% 85%,transparent 85%)}
.sb2.mini .c2-car{top:30%;height:50%}
.sb2.mini .c2-book{width:24%;top:auto;bottom:6%;left:auto;right:4%}
.sb2.mini .c2-head-w{right:32%;top:84%}

/* Book covers: always shown whole, never zoomed or cropped (square and wide covers included).
   The whole cover sits centred in its frame; any spare space shows the frame background.
   Covers from /img/covers/ and covers uploaded through the Admin Desk / author forms (Supabase storage). */
img[src*="/img/covers/"],.cover.img img[src*="/storage/v1/object/public/"]{object-fit:contain!important;object-position:center!important}
