/* Page & Paper: home. */
.hh{padding-block:var(--s6) var(--s7);overflow:clip}
.hh-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s6);align-items:center}
@media (min-width:1000px){.hh-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:var(--s7);padding-block:var(--s5)}}
.hh h1{font-size:var(--t-display);line-height:.96;letter-spacing:-.02em;margin-block-end:var(--s5);max-inline-size:11ch}
.hh .lead{margin-block-end:var(--s5)}
.hh-hours{display:flex;align-items:center;gap:var(--s2);margin-block-start:var(--s5);color:var(--muted);font-weight:600}
.hh-art{position:relative;min-inline-size:0}
.hh-photo .ph img{aspect-ratio:5/4}
.hh-photo .ph{background:transparent}
.hh-card{position:absolute;inset-inline-start:2%;inset-block-end:4%;display:grid;grid-template-columns:64px minmax(0,1fr);gap:var(--s3);align-items:center;max-inline-size:290px;padding:var(--s3) var(--s4) var(--s3) var(--s3);background:var(--surface);color:var(--fg);border:1px solid var(--line-strong);border-block-start:4px solid var(--gold);text-decoration:none}
.hh-card:hover{background:var(--ink);color:var(--paper)}
.hh-card:hover .hh-card__k{color:var(--gold-l)}
.hh-card__c svg{aspect-ratio:2/3;block-size:auto;inline-size:100%;box-shadow:3px 4px 0 -1px rgba(20,32,51,.2)}
.hh-card__t{display:grid;gap:2px;line-height:1.3}
.hh-card__k{font-size:var(--t-label);letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--brand-t)}
.hh-card b{font-family:var(--f-display);font-weight:500;font-size:1.375rem;line-height:1.1}
@media (max-width:559px){.hh-card{position:static;margin-block-start:var(--s3);max-inline-size:none}}
/* colophon strip */
.colo{border-block:1px solid var(--line-strong)}
.colo-list{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);padding:0}
.colo-list li{display:grid;gap:var(--s2);align-content:start;padding:var(--s5) 0;border-block-end:1px solid var(--line-strong)}
.colo-list li:last-child{border-block-end:0}
.colo-n{font-family:var(--f-display);font-style:italic;font-size:1.5rem;color:var(--gold-t);line-height:1}
.colo-list h2{font-size:var(--t-h3)}
.colo-list p{color:var(--muted)}
@media (min-width:860px){.colo-list{grid-template-columns:repeat(3,minmax(0,1fr))}.colo-list li{padding:var(--s6) var(--s6);border-block-end:0;border-inline-start:1px solid var(--line-strong)}.colo-list li:first-child{border-inline-start:0;padding-inline-start:0}}
/* talker wall */
.hp-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s7)}
@media (min-width:1000px){.hp-grid{grid-template-columns:minmax(0,.62fr) minmax(0,1.38fr);gap:var(--s8);align-items:start}.hp-intro{position:sticky;inset-block-start:calc(var(--header) + var(--s5))}}
.hp-intro h2{margin-block-end:var(--s4)}
.hp-intro .lead{margin-block-end:var(--s5)}
.hp-intro .ph{margin-block-start:var(--s6)}
.hp-intro .ph img{aspect-ratio:3/2}
.hp-wall{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s5)}
@media (min-width:700px){.hp-wall{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* just in (navy band) */
.hn{--surface:#fdfaf3;--fg:#16202e;--line:#d8cdb6;--muted:#4a5465;--brand-t:#1b4332;--line-strong:#6a6355}
.hn.night{background:var(--ink);--bg:#142033}
.hn .sec-head h2,.hn .sec-head .lead,.hn .sec-head .eyebrow{color:#f4efe4}
.hn .sec-head .lead{color:#c9d1de}
.hn .sec-head .eyebrow{color:var(--gold-l)}
.hn .bk{color:var(--fg)}
.hn .bk .btn{background:var(--brand);border-color:var(--brand)}
.hn .bk .btn--ghost{background:transparent;color:var(--fg);border-color:var(--fg)}
.hn .bk .btn--ghost:hover{background:var(--fg);color:#fdfaf3}
.hn .bk .btn:not(.btn--ghost):hover{background:var(--brand-h)}
.hn .bk-t a{color:var(--fg)}
.hn .bk-t a:hover{color:var(--brand-t)}
.hn .bk-tag{color:var(--fg);background:var(--bg-tag,#f6f1e6)}
.hn .bk-tag--new{background:var(--brand);color:#fff}.hn .bk-tag--soon{background:var(--ink);color:#fff}
.hn .bk-tag--sample{color:var(--muted)}
.hn-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}
/* club + quiz */
.hc{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s5)}
@media (min-width:1100px){.hc{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}}
.hc-club{display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:var(--s5);padding:var(--s5)}
@media (min-width:760px){.hc-club{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);padding:var(--s6)}}
.hc-club .eyebrow{color:var(--gold-l)}
.hc-club h2{margin-block-end:var(--s3)}
.hc-club .lead{color:#d3e0d8;margin-block-end:var(--s4)}
.hc-club__img .ph img{aspect-ratio:3/2}
.hc-club__c{display:flex;align-items:center;gap:var(--s4);margin-block-end:var(--s5);line-height:1.5}
.hc-club__cv{inline-size:64px;flex:none}
.hc-club__cv svg{aspect-ratio:2/3;block-size:auto;inline-size:100%;box-shadow:3px 4px 0 -1px rgba(0,0,0,.3)}
.hc-quiz{display:grid;gap:var(--s4);align-content:start;padding:var(--s6);background:var(--kraft);border:1px solid var(--line-strong)}
.hc-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));counter-reset:q;padding:0;gap:var(--s2)}
.hc-steps li{counter-increment:q;border-block-start:3px solid var(--ink);padding-block-start:var(--s2);font-weight:700;display:grid;gap:2px}
.hc-steps li::before{content:counter(q,decimal-leading-zero);font-family:var(--f-display);font-style:italic;font-weight:400;color:var(--gold-t);font-size:1.125rem}
.hc-quiz .btn{justify-self:start}
/* events ledger */
.evs{list-style:none;padding:0;border-block-start:2px solid var(--ink)}
.ev{border-block-end:1px solid var(--line-strong)}
.ev-link{display:grid;grid-template-columns:72px minmax(0,1fr);gap:var(--s4);align-items:center;padding:var(--s4) 0;text-decoration:none;color:var(--fg)}
@media (min-width:760px){.ev-link{grid-template-columns:110px minmax(0,1fr) auto;gap:var(--s6);padding:var(--s5) var(--s3)}}
.ev-date{display:grid;justify-items:center;line-height:1;text-align:center;border-inline-end:1px solid var(--line-strong);padding-inline-end:var(--s4)}
.ev-date b{font-family:var(--f-display);font-weight:400;font-size:3.5rem;letter-spacing:-.03em}
.ev-date span{font-size:var(--t-label);letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--brand-t);margin-block-start:var(--s1)}
.ev-main{display:grid;gap:2px;min-inline-size:0}
.ev-type{font-size:var(--t-label);letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--brand-t)}
.ev-t{font-family:var(--f-display);font-size:clamp(1.375rem,1.2rem + .8vw,1.875rem);line-height:1.15}
.ev-meta{color:var(--muted)}
.ev-go{display:none;font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.25em}
@media (min-width:760px){.ev-go{display:inline}}
.ev-link:hover{background:var(--ink);color:var(--paper)}
.ev-link:hover .ev-date span,.ev-link:hover .ev-type{color:var(--gold-l)}
.ev-link:hover .ev-meta{color:#c9d1de}
.ev-link:hover .ev-date{border-color:#5d6d8a}
/* stationery + challenge */
.hs{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s6)}
@media (min-width:900px){.hs{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s7)}}
.hs-card{display:grid;gap:var(--s5);align-content:start}
.hs-img .ph img{aspect-ratio:3/2}
.hs-body{display:grid;gap:var(--s3);justify-items:start}
.hs-body h2{font-size:var(--t-h3)}
/* sample reviews */
.hr{background:var(--ink)}
.hr .eyebrow{color:var(--gold-l)}
.hr-list{list-style:none;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s6)}
@media (min-width:900px){.hr-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s7)}.hr-list li+li{border-inline-start:1px solid var(--line);padding-inline-start:var(--s7)}}
.hr-q{display:grid;gap:var(--s4);align-content:start}
.hr-q blockquote p{font-family:var(--f-display);font-size:clamp(1.5rem,1.3rem + .7vw,1.875rem);line-height:1.3}
.hr-q figcaption{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s2);color:var(--muted)}
.hr .bk-tag{background:transparent;color:#c9d1de;border-color:#8f9db8}
/* visit */
.hv{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--s6);align-items:center}
@media (min-width:900px){.hv{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:var(--s8)}}
.hv-img .ph img{aspect-ratio:4/5}
.hv-t{display:grid;gap:var(--s4);justify-items:start}
.hv-table{border-collapse:collapse;inline-size:100%;max-inline-size:440px;font-variant-numeric:tabular-nums}
.hv-table th,.hv-table td{padding:var(--s2) 0;border-block-end:1px solid var(--line);text-align:start;font-weight:500}
.hv-table td{text-align:end;font-weight:600}
