/* ══════════════════════════════════════════════════════════════════════
   THE SHELL — her colours, her type, and the bones every SideBlooms page
   stands on.

   These lived inline inside `parts/head.php`, which meant any page this
   theme did not draw itself — the shared payment counter among them —
   arrived with none of her in it: Times New Roman, blue underlined links,
   a white ground. **Her payment moment looked like somebody else's
   gateway**, which is the exact fault she has ruled on by name.

   A file rather than a style block, so anything that asks for this world
   gets this world.
   ══════════════════════════════════════════════════════════════════════ */

:root{
  --paper:#F4F6F1; --ink:#131A14; --quiet:#59635A; --hair:#D3DACF;
  --bloom:#D8467A; --petal:#F7D9E8; --saffron:#F79A1E; --gold:#F5C518;
  --serif:'Fraunces','Iowan Old Style',Georgia,serif;
  --sans:'Instrument Sans','Helvetica Neue',Arial,sans-serif;
  --wonky:'opsz' 120,'SOFT' 46,'WONK' 1;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;max-width:100%}
main,.inner,section,.movement{max-width:100%}
a{color:inherit}
img,svg{display:block;max-width:100%}
:focus-visible{outline:2px solid var(--bloom);outline-offset:3px}

main{padding:clamp(3rem,7vh,5.5rem) clamp(1.5rem,6vw,4rem) clamp(4rem,9vh,7rem)}
.inner{max-width:66rem;margin:0 auto}
.eyebrow{font-size:.68rem;letter-spacing:.24em;text-transform:uppercase;color:var(--bloom);margin-bottom:1.1rem}
h1{font-family:var(--serif);font-variation-settings:var(--wonky);font-weight:500;font-size:clamp(2.3rem,7vw,4.2rem);line-height:1.02;letter-spacing:-.03em;text-wrap:balance;max-width:17ch}
h1 em{font-style:normal;color:var(--bloom)}
.lede{margin-top:1.3rem;font-size:clamp(1.15rem,1.7vw,1.38rem);line-height:1.6;color:var(--quiet);max-width:46ch}
h2{font-family:var(--serif);font-variation-settings:var(--wonky);font-weight:500;font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.06;letter-spacing:-.025em;margin-top:clamp(3rem,6vh,4.6rem);max-width:20ch}
h2 em{font-style:normal;color:var(--bloom)}
h2.atelier{margin-top:clamp(2.4rem,5vh,3.6rem);font-size:clamp(1.5rem,3.4vw,2.2rem);max-width:24ch;
  padding-top:1.4rem;border-top:2px solid var(--bloom)}
p.say{margin-top:1.15rem;font-size:1.08rem;line-height:1.65;color:var(--quiet);max-width:56ch}
p.say b{color:var(--ink);font-weight:600}
ul.rows{margin-top:1.8rem;border-top:1px solid var(--ink);list-style:none}
ul.rows li{padding:1.25rem 1.2rem 1.45rem 0;border-bottom:1px solid var(--hair)}
ul.rows i{font-style:normal;display:block;font-size:.74rem;letter-spacing:.19em;text-transform:uppercase;color:var(--bloom);margin-bottom:.5rem}
ul.rows b{display:block;font-family:var(--serif);font-variation-settings:var(--wonky);font-weight:600;font-size:1.34rem;letter-spacing:-.015em;margin-bottom:.42rem}
ul.rows span{display:block;color:var(--quiet);font-size:1.04rem;line-height:1.58;max-width:62ch}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:0}
.grid ul.rows{border-top:1px solid var(--ink)}
.land{margin-top:clamp(2.6rem,6vh,4rem);font-family:var(--serif);font-variation-settings:var(--wonky);font-weight:500;
  font-size:clamp(1.7rem,4.4vw,2.7rem);line-height:1.14;letter-spacing:-.022em;max-width:22ch}
.land em{font-style:normal;color:var(--bloom)}
.note{margin-top:1.7rem;font-size:.96rem;line-height:1.62;color:var(--quiet);max-width:52ch}
.onward{display:inline-flex;align-items:center;margin-top:2.2rem;
  padding:1.05rem 1.9rem;font-size:.98rem;font-weight:600;min-height:52px}
.tickets{margin-top:2.4rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1px;background:var(--hair);border:1px solid var(--hair)}
.ticket{background:var(--paper);padding:1.5rem 1.3rem 1.7rem}
.ticket i{font-style:normal;display:block;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--quiet);margin-bottom:.7rem}
.ticket b{display:block;font-family:var(--serif);font-variation-settings:var(--wonky);font-weight:600;font-size:clamp(2.1rem,5vw,2.9rem);letter-spacing:-.035em;line-height:1;margin-bottom:.7rem}
.ticket:first-child b{color:var(--bloom)}
.ticket span{color:var(--quiet);font-size:1.02rem;line-height:1.56}
.foot{border-top:1px solid var(--hair);padding:2.6rem clamp(1.5rem,6vw,4rem) 3.4rem;color:var(--quiet);font-size:.96rem;line-height:1.65}
.foot a{color:var(--quiet)}
.foot .lines{max-width:56rem;margin:0 auto}
.foot b{color:var(--ink)}

/* Hers, 27 September 2026: "Beautiful footer." Her own line first and large,
   the rooms beside it, and the disclaimers small and last — they are required
   and they are honest, but they are not the last thing a woman should feel. */
.foot{padding-top:3.4rem}
.foot .lines{display:grid;gap:1.9rem}
.foot-say{margin:0;font-family:var(--serif);font-size:clamp(1.35rem,3.4vw,1.95rem);
  line-height:1.2;letter-spacing:-.018em;color:var(--ink)}
.foot-say b{font-weight:500}
.foot-say em{font-style:normal;color:var(--bloom);display:inline-block;margin-top:.15em}
.foot-rooms{display:flex;flex-wrap:wrap;gap:.55rem 1.6rem;font-size:.95rem}
.foot-rooms a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--hair);padding-bottom:.12rem}
.foot-rooms a:hover{border-bottom-color:var(--bloom);color:var(--bloom)}
.foot-plain{margin:0;max-width:62ch;font-size:.86rem;line-height:1.6;color:var(--quiet);opacity:.92}
.foot-small{margin:0;font-size:.78rem;line-height:1.7;color:var(--quiet);opacity:.8}
@media (prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* ── ONE TYPE SCALE, EVERY PAGE ───────────────────────────────────────
   Hers, 24 September 2026: "the headings are all massive again, and
   they're all equal size." They were: several classes landed in the same
   band, so nothing outranked anything. This is the scale, and it holds on
   every page behind the entrance. Size is hierarchy, never volume. */
main h1{font-size:clamp(1.95rem,4.2vw,3.3rem);line-height:1.06;letter-spacing:-.02em}
main h2{font-size:clamp(1.45rem,2.5vw,2.05rem);line-height:1.12;letter-spacing:-.014em;margin-top:clamp(2.4rem,4.5vw,3.6rem)}
main h2.atelier{font-size:clamp(1.3rem,2.1vw,1.7rem)}
main h3{font-size:clamp(1.08rem,1.5vw,1.28rem);line-height:1.2;letter-spacing:-.006em}
main .lede{font-size:clamp(1.08rem,1.5vw,1.3rem);line-height:1.6}
main .say{font-size:clamp(1rem,1.2vw,1.12rem);line-height:1.7}
