/* kit.css — Brain Club's design system: tokens, base, clay surfaces, buttons, chips, sheets, the header, the footer, the door.
   Prefix k-. Every page loads fonts.css, then this, then its own stylesheet (which uses these tokens and recipes).
   The look in one line: warm gold ground, plum clay objects, cream paper, soft studio light, fine grain — the logo's own world. */

/* ── tokens ─────────────────────────────────────────────────────────────────────────────────────────────────────────── */
:root{
  /* gold: the ground of the logo */
  --gold-50:#fff8dc; --gold-100:#fff0b0; --gold-200:#ffe27a; --gold-300:#fdd45a; --gold-400:#fac93f; --gold-500:#f2b629; --gold-600:#d99a14; --gold-700:#a8730a;
  /* plum: the clay of the bubble (sampled from the badge: mean 100/8/46) */
  --plum-50:#fbeaf1; --plum-100:#f3d3e2; --plum-200:#e3a3c1; --plum-300:#c76a98; --plum-400:#a31f62; --plum-500:#811347; --plum-600:#64082e; --plum-700:#4a0a28; --plum-800:#36061f; --plum-900:#2a0518;
  /* paper */
  --cream-50:#fffaf0; --cream-100:#fff5de; --cream-200:#fdebc4; --cream-300:#f5dba3;
  /* the club's colours, used sparingly (a specialist, an app, a lane) */
  --club-cobalt:#2d5bd6; --club-emerald:#1f8a5b; --club-terracotta:#c4502f; --club-lilac:#b58bd8;

  --ink:#2a0a1c; --ink-2:#5b2a44; --ink-3:#7a4a62;
  --bg:var(--cream-100); --card:var(--cream-50); --line:rgba(100,8,46,.14); --line-2:rgba(100,8,46,.30);
  --accent:var(--plum-600);

  --r-sm:12px; --r-md:20px; --r-lg:28px; --r-xl:40px; --k-r-sheet:clamp(34px,5vw,64px); --k-lap:clamp(34px,5vw,64px);
  --display:"Bricolage Grotesque","Instrument Sans",system-ui,sans-serif;
  --text:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --gutter:clamp(18px,5vw,56px); --max:1240px;
  --ease:cubic-bezier(.2,.8,.2,1); --spring:cubic-bezier(.3,1.5,.5,1);

  /* the grain that makes a flat colour feel made: dark flecks for gold and cream, light flecks for plum */
  --k-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .40 0 0 0 0 .14 0 0 0 0 .04 0 0 0 .20 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  --k-grain-light:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 .86 0 0 0 0 .8 0 0 0 .12 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");

  /* surface recipes: a background and a shadow stack each — a page puts them on its own cards */
  --k-gold-ground:radial-gradient(900px 560px at 78% 42%,rgba(255,243,196,.8),rgba(255,243,196,0) 70%),radial-gradient(1100px 600px at 6% -8%,rgba(255,236,150,.85),rgba(255,236,150,0) 60%),linear-gradient(180deg,#fcd35a 0%,#fac93f 50%,#f1b52a 100%);
  --k-plum-ground:radial-gradient(1000px 520px at 80% 0%,rgba(163,31,98,.42),rgba(163,31,98,0) 70%),radial-gradient(900px 600px at 0% 100%,rgba(100,8,46,.55),rgba(100,8,46,0) 70%),linear-gradient(180deg,#4a0a28 0%,#3b0822 55%,#2d061b 100%);
  --k-paper:linear-gradient(180deg,#fffaf0 0%,#fff3d6 100%);
  --k-paper-shadow:inset 0 1px 0 #fff,inset 0 -2px 0 rgba(160,100,20,.10),0 22px 40px -22px rgba(90,40,10,.45),0 4px 10px -4px rgba(90,40,10,.18);
  --k-plum-clay:radial-gradient(120% 100% at 24% -8%,#a3205f 0%,#7a0f44 38%,#5c0828 100%);
  --k-plum-shadow:inset 0 2px 1px rgba(255,255,255,.26),inset 0 -12px 22px rgba(25,0,12,.5),inset 0 0 0 1px rgba(255,255,255,.05),0 28px 44px -20px rgba(60,6,30,.6),0 4px 0 -1px rgba(50,3,24,.5);
  --k-gold-clay:radial-gradient(120% 100% at 24% -8%,#ffe58a 0%,#fcd04a 40%,#efae1e 100%);
  --k-gold-shadow:inset 0 2px 1px rgba(255,255,255,.7),inset 0 -10px 18px rgba(170,100,0,.35),0 20px 34px -18px rgba(130,70,0,.55),0 3px 0 -1px rgba(160,90,0,.45);
  --k-glass:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.03));
  --star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-1 -1 2 2'%3E%3Cpath d='M0-1C.1-.3.3-.1 1 0 .3.1.1.3 0 1-.1.3-.3.1-1 0-.3-.1-.1-.3 0-1Z'/%3E%3C/svg%3E");
  color-scheme:light;
}

/* ── base ───────────────────────────────────────────────────────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:92px;background:linear-gradient(var(--gold-400) 50%,var(--plum-900) 50%)}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.0625rem/1.6 var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:clip}
h1,h2,h3,h4{margin:0;font-family:var(--display);font-weight:760;letter-spacing:-.03em;line-height:1.02;text-wrap:balance}
p,ul,ol,figure,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
img,canvas,svg{display:block;max-width:100%}
img{height:auto}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}
[hidden]{display:none!important}
::selection{background:var(--plum-600);color:var(--cream-50)}
:focus-visible{outline:3px solid var(--plum-400);outline-offset:3px;border-radius:10px}
.k-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.k-wrap{width:min(var(--max),100% - 2*var(--gutter));margin-inline:auto}

/* ── type ───────────────────────────────────────────────────────────────────────────────────────────────────────────── */
.k-h1{font-size:clamp(2.7rem,5.3vw,5.1rem);line-height:.98;font-weight:800;font-stretch:92%;letter-spacing:-.035em}
.k-h2{font-size:clamp(2.1rem,4.2vw,3.7rem);font-stretch:94%}
.k-h3{font-size:clamp(1.3rem,1.9vw,1.65rem);letter-spacing:-.02em}
.k-lead{font-size:clamp(1.06rem,1.35vw,1.26rem);line-height:1.55;color:var(--ink-2);max-width:38em}
.k-eyebrow{display:inline-flex;align-items:center;gap:10px;font:650 .78rem/1 var(--display);letter-spacing:.22em;text-transform:uppercase;color:var(--plum-500)}
.k-eyebrow img{width:18px;height:auto;flex:none}
.k-small{font-size:.9375rem;color:var(--ink-2)}

/* ── sheets: each section is a rounded sheet laid over the one before ──────────────────────────────────────────────── */
.k-sheet{position:relative;isolation:isolate;margin-top:calc(var(--k-lap)*-1);padding:clamp(72px,9vw,128px) 0 calc(clamp(72px,9vw,128px) + var(--k-lap));border-radius:var(--k-r-sheet) var(--k-r-sheet) 0 0;box-shadow:0 -22px 40px -26px rgba(42,5,24,.5)}
.k-sheet::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;opacity:.5;mix-blend-mode:multiply;background-image:var(--k-grain)}
.k-sheet--gold{background:var(--k-gold-ground)}
/* a faint lattice of stars on cream sheets: the mark as wallpaper, only enough to be felt */
.k-sheet--cream::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:rgba(100,8,46,.05);-webkit-mask:var(--star) 0 0/46px 46px,var(--star) 23px 23px/46px 46px;mask:var(--star) 0 0/46px 46px,var(--star) 23px 23px/46px 46px;-webkit-mask-repeat:repeat;mask-repeat:repeat;opacity:.55}
.k-sheet--cream{background:linear-gradient(180deg,#fff8e6,#fff3d8)}
.k-sheet--plum{background:var(--k-plum-ground);--ink:var(--cream-100);--ink-2:#ecd2c4;--ink-3:#c9a7ad;--line:rgba(255,236,214,.14);--line-2:rgba(255,236,214,.30);--bg:var(--plum-800);--card:#4a0f30;--accent:var(--gold-400);color:var(--cream-100)}
.k-sheet--plum::before{mix-blend-mode:soft-light;opacity:.72;background-image:url(/assets/clay/grain-plum.webp);background-size:512px}
.k-sheet--plum .k-eyebrow{color:var(--gold-300)}
.k-sheet--plum .k-lead{color:var(--ink-2)}
.k-sheet--plum :focus-visible{outline-color:var(--gold-300)}
.k-sheet--last{padding-bottom:clamp(72px,9vw,128px)}

/* ── surfaces ───────────────────────────────────────────────────────────────────────────────────────────────────────── */
.k-card{--ink:#2a0a1c;--ink-2:#5b2a44;--ink-3:#7a4a62;position:relative;background:var(--k-paper);box-shadow:var(--k-paper-shadow);border-radius:var(--r-lg);color:var(--ink)}
.k-card--plum{background:var(--k-grain-light),var(--k-plum-clay);box-shadow:var(--k-plum-shadow);color:var(--cream-100)}
.k-card--gold{background:var(--k-grain),var(--k-gold-clay);box-shadow:var(--k-gold-shadow);color:var(--plum-700)}

/* ── buttons ────────────────────────────────────────────────────────────────────────────────────────────────────────── */
.k-btn{--h:54px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:var(--h);padding:0 28px;border:0;border-radius:999px;font:650 1rem/1 var(--display);letter-spacing:.005em;text-decoration:none;white-space:nowrap;cursor:pointer;transition:transform .2s var(--spring),box-shadow .2s,filter .2s,background .2s;-webkit-tap-highlight-color:transparent}
.k-btn{overflow:hidden}
.k-btn:active{transform:translateY(2px) scale(.985)}
.k-btn--plum::after,.k-btn--gold::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.34) 48%,transparent 64%);transform:translateX(-130%);transition:transform .8s var(--ease)}
.k-btn--plum:hover::after,.k-btn--gold:hover::after{transform:translateX(130%)}
.k-btn svg{width:20px;height:20px;fill:currentColor;flex:none}
.k-btn--plum{color:var(--cream-50);background:var(--k-grain-light),var(--k-plum-clay);box-shadow:var(--k-plum-shadow)}
.k-btn--plum:hover{transform:translateY(-2px);filter:brightness(1.1)}
.k-btn--gold{color:var(--plum-700);background:var(--k-grain),var(--k-gold-clay);box-shadow:var(--k-gold-shadow)}
.k-btn--gold:hover{transform:translateY(-2px);filter:brightness(1.05)}
.k-btn--ghost{color:var(--plum-600);background:transparent;box-shadow:inset 0 0 0 2px rgba(100,8,46,.42)}
.k-btn--ghost:hover{background:rgba(100,8,46,.08)}
.k-btn--sm{--h:42px;padding:0 20px;font-size:.9375rem}
/* a long label wraps inside its pill on a narrow screen instead of being cut: the pill grows by a line, the radius stays */
@media (max-width:560px){.k-btn{white-space:normal;text-align:center;line-height:1.15;height:auto;min-height:var(--h);padding-block:12px;max-width:100%}.k-btn--sm{padding-block:9px}}
.k-btn--lg{--h:60px;padding:0 34px;font-size:1.0625rem}
.k-sheet--plum .k-btn--ghost,.k-ftr .k-btn--ghost{color:var(--cream-100);box-shadow:inset 0 0 0 2px rgba(255,241,214,.46)}
.k-sheet--plum .k-btn--ghost:hover,.k-ftr .k-btn--ghost:hover{background:rgba(255,241,214,.10)}
.k-sheet--plum .k-btn--plum{background:var(--k-grain),var(--k-gold-clay);color:var(--plum-700);box-shadow:var(--k-gold-shadow)}

/* ── chips and the star ────────────────────────────────────────────────────────────────────────────────────────────── */
.k-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,250,240,.72);box-shadow:inset 0 1px 0 #fff,0 6px 14px -8px rgba(110,40,0,.35);font:600 .875rem/1 var(--text);color:var(--plum-600);white-space:nowrap}
.k-sheet--plum .k-chip{background:rgba(255,241,214,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.14);color:var(--cream-100)}
.k-star{display:inline-block;width:1em;height:auto;flex:none}
@keyframes k-twinkle{0%,100%{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(.8) rotate(14deg);opacity:.72}}
@keyframes k-float{0%,100%{transform:translateY(0) rotate(var(--r,0deg))}50%{transform:translateY(-9px) rotate(calc(var(--r,0deg) + 1.5deg))}}
@keyframes k-pop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.06);opacity:1}100%{transform:scale(1)}}

/* ── the header: a cream pill floating over the page ───────────────────────────────────────────────────────────────── */
.k-hdr{position:fixed;inset:14px 0 auto 0;z-index:60;display:flex;flex-direction:column;align-items:center;pointer-events:none}
.k-hdr-in{pointer-events:auto;width:min(var(--max),100% - 24px);height:64px;display:flex;align-items:center;gap:14px;padding-block:0; padding-inline:16px 10px;border-radius:999px;background:rgba(255,248,230,.86);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(100,8,46,.07),0 14px 34px -14px rgba(70,20,40,.42);transition:box-shadow .3s,background .3s}
.k-hdr.is-scrolled .k-hdr-in{background:rgba(255,248,230,.94);box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(100,8,46,.09),0 18px 40px -14px rgba(70,20,40,.55)}
.k-brand{display:flex;align-items:center;gap:11px;text-decoration:none;flex:none}
.k-brand .k-badge{width:44px;height:auto;filter:drop-shadow(0 4px 5px rgba(70,8,36,.3))}
.k-brand .k-wm{width:116px;height:auto}
.k-nav{display:flex;align-items:center;gap:2px;margin-inline:auto;min-width:0}
.k-nav a{padding:9px 13px;border-radius:999px;font:560 .9375rem/1 var(--text);color:var(--ink-2);text-decoration:none;white-space:nowrap;transition:background .2s,color .2s}
.k-nav a:hover,.k-nav a[aria-current]{background:rgba(100,8,46,.09);color:var(--plum-600)}
.k-hdr-r{display:flex;align-items:center;gap:10px;flex:none}
.k-lang{display:inline-flex;padding:3px;border-radius:999px;background:rgba(100,8,46,.08)}
.k-lang button{height:30px;min-width:38px;padding:0 10px;border-radius:999px;font:650 .8125rem/1 var(--display);letter-spacing:.04em;color:var(--ink-2)}
.k-lang button[aria-pressed="true"]{background:var(--plum-600);color:var(--cream-50);box-shadow:inset 0 1px 0 rgba(255,255,255,.25)}
.k-burger{display:none;width:42px;height:42px;border-radius:50%;background:rgba(100,8,46,.08);position:relative}
.k-burger i{position:absolute;inset-inline-start:12px;inset-inline-end:12px;height:2.5px;border-radius:2px;background:var(--plum-600);transition:transform .25s var(--ease),top .25s var(--ease)}
.k-burger i:nth-child(1){top:16px}.k-burger i:nth-child(2){top:24px}
.k-burger[aria-expanded="true"] i:nth-child(1){top:20px;transform:rotate(45deg)}
.k-burger[aria-expanded="true"] i:nth-child(2){top:20px;transform:rotate(-45deg)}
.k-menu{pointer-events:auto;width:min(var(--max),100% - 24px);margin-top:8px;padding:12px;border-radius:30px;background:linear-gradient(180deg,#fffaf0,#fff2d6);box-shadow:inset 0 1px 0 #fff,0 24px 50px -16px rgba(70,20,40,.55);display:grid;gap:2px}
.k-menu a{padding:15px 16px;border-radius:18px;font:650 1.0625rem/1 var(--display);text-decoration:none;color:var(--plum-600)}
.k-menu a:hover{background:rgba(100,8,46,.07)}
@media (max-width:1180px){.k-nav a:nth-child(n+6){display:none}}
@media (max-width:1070px){.k-nav a:nth-child(n+5){display:none}}   /* 'A day with Brain Club' is the longest label: fewer links sooner */
@media (max-width:1000px){.k-nav a:nth-child(n+4){display:none}.k-nav a{padding-inline:11px}}
@media (max-width:900px){.k-nav{display:none}.k-burger{display:block}.k-hdr-in{gap:8px}.k-brand .k-wm{width:100px}.k-hdr-r{margin-inline-start:auto}}
.k-lang--menu{display:none;justify-self:start;margin-block:8px 4px; margin-inline:8px 0}
@media (max-width:560px){.k-brand .k-wm{display:none}.k-hdr-r>.k-lang{display:none}.k-lang--menu{display:inline-flex}.k-hdr-r .k-btn{padding:0 17px}}

/* ── the footer ─────────────────────────────────────────────────────────────────────────────────────────────────────── */
.k-ftr{position:relative;margin-top:calc(var(--k-lap)*-1);padding:clamp(64px,8vw,104px) 0 36px;border-radius:var(--k-r-sheet) var(--k-r-sheet) 0 0;background:var(--k-plum-ground);color:var(--cream-100);--ink:var(--cream-100);--ink-2:#ecd2c4;box-shadow:0 -22px 40px -26px rgba(42,5,24,.6)}
.k-ftr::before{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;pointer-events:none;mix-blend-mode:soft-light;opacity:.72;background-image:url(/assets/clay/grain-plum.webp);background-size:512px}
.k-ftr>*{position:relative;z-index:1}
.k-ftr-in{width:min(var(--max),100% - 2*var(--gutter));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,2fr);gap:clamp(32px,6vw,96px);align-items:start}
.k-ftr-brand{display:grid;gap:18px;justify-items:start}
.k-ftr-brand .k-badge{width:84px;filter:drop-shadow(0 12px 14px rgba(0,0,0,.4))}
.k-ftr-brand .k-wm{width:190px}
.k-ftr-brand p{max-width:22em;color:#ecd2c4;font-size:1.0625rem;line-height:1.5}
.k-ftr-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.k-ftr-cols b{display:block;margin-bottom:14px;font:650 .78rem/1 var(--display);letter-spacing:.2em;text-transform:uppercase;color:var(--gold-300)}
.k-ftr-cols a{display:block;padding:6px 0;color:#ecd2c4;text-decoration:none;font-size:1rem}
.k-ftr-cols a:hover{color:var(--gold-200)}
.k-ftr-small{width:min(var(--max),100% - 2*var(--gutter));margin:clamp(40px,6vw,72px) auto 0;padding-top:22px;border-top:1px solid rgba(255,236,214,.14);color:#c9a7ad;font-size:.875rem;line-height:1.5}
@media (max-width:820px){.k-ftr-in{grid-template-columns:minmax(0,1fr)}.k-ftr-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ── the door: three stars to tap, then the number, the QR and the link ───────────────────────────────────────────── */
.k-door{padding:0;border:0;background:transparent;max-width:none;max-height:none;overflow:visible;color:var(--plum-700)}
.k-door::backdrop{background:rgba(42,5,24,.64);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.k-door[open]{animation:k-pop .5s var(--spring) both}
.k-door-in{position:relative;width:min(560px,100vw - 28px);max-height:calc(100dvh - 24px);overflow:auto;padding:44px 34px 34px;border-radius:44px;text-align:center;background:var(--k-grain),var(--k-gold-clay);box-shadow:var(--k-gold-shadow),0 50px 90px -30px rgba(20,0,10,.7)}
.k-door-x{position:absolute;top:16px;inset-inline-end:16px;width:42px;height:42px;border-radius:50%;background:rgba(100,8,46,.1);font:500 1.5rem/1 var(--text);color:var(--plum-600)}
.k-door-x:hover{background:rgba(100,8,46,.18)}
.k-door h2{font-size:clamp(1.8rem,5vw,2.4rem);color:var(--plum-600)}
.k-door-p{margin:10px auto 0;max-width:24em;color:var(--plum-700);opacity:.86}
.k-stars{display:flex;align-items:flex-end;justify-content:center;gap:clamp(14px,4vw,26px);margin:26px 0 8px}
.k-star-btn{position:relative;border-radius:30%;transition:transform .3s var(--spring),filter .4s}
.k-star-btn img{width:100%;height:auto;transition:filter .5s,transform .5s var(--spring)}
.k-star-btn--a{width:clamp(110px,28vw,150px)}.k-star-btn--b{width:clamp(70px,18vw,92px)}.k-star-btn--c{width:clamp(70px,18vw,92px)}
.k-star-btn[aria-pressed="false"] img{filter:grayscale(.55) saturate(.7) brightness(.78) drop-shadow(0 8px 8px rgba(100,50,0,.28))}
.k-star-btn[aria-pressed="false"]:hover{transform:scale(1.07) rotate(-3deg)}
.k-star-btn[aria-pressed="false"].is-next{animation:k-twinkle 1.6s ease-in-out infinite}
.k-star-btn[aria-pressed="true"] img{filter:drop-shadow(0 0 22px rgba(255,248,200,.95)) drop-shadow(0 10px 10px rgba(130,70,0,.4));transform:scale(1.04)}
.k-num{margin:12px 0 0;font:800 clamp(1.7rem,6.2vw,2.5rem)/1.1 var(--display);letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--plum-600);min-height:1.2em;display:flex;justify-content:center}
.k-num .k-d{display:inline-block;min-width:.6em;text-align:center;color:rgba(100,8,46,.24);transition:color .5s,transform .5s var(--spring)}
.k-num .k-d.k-sp{min-width:.34em}
.k-num .k-d.on{color:var(--plum-600);animation:k-pop .5s var(--spring) both}
.k-num a{display:flex;color:inherit;text-decoration:none}
.k-open{margin-top:22px;display:grid;gap:16px;justify-items:center}
.k-open-row{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center}
.k-qr{padding:12px;border-radius:24px;background:var(--cream-50);box-shadow:inset 0 1px 0 #fff,0 18px 34px -16px rgba(100,50,0,.5)}
.k-qr svg{width:168px;height:auto}
.k-door-note{font-size:.9375rem;color:var(--plum-700);opacity:.86}
.k-snd{position:absolute;top:16px;inset-inline-start:16px;width:42px;height:42px;border-radius:50%;background:rgba(100,8,46,.1);color:var(--plum-600);display:grid;place-items:center}
.k-snd[aria-pressed="true"]{background:var(--plum-600);color:var(--cream-50)}
.k-snd svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:640px),(max-height:780px){.k-qr{display:none}}

/* ── motion that is only added when the visitor allows it ───────────────────────────────────────────────────────────── */
html.anim [data-reveal]{opacity:0;transform:translateY(28px) scale(.985);transition:opacity .9s var(--ease),transform .9s var(--spring);transition-delay:var(--d,0s)}
html.anim [data-reveal].is-in{opacity:1;transform:none}
html.anim [data-rise]{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform 1s var(--spring);transition-delay:calc(var(--i,0)*90ms + 80ms)}
html.anim .hero.is-in [data-rise]{opacity:1;transform:none}


/* ── more of the kit: what the inner pages share ─────────────────────────────────────────────────────────────────── */
/* a section head: eyebrow, headline, lead */
.k-sechead{max-width:46rem;margin-bottom:clamp(34px,5vw,64px)}
.k-sechead .k-h2{margin-top:18px}
.k-sechead .k-lead{margin-top:18px}

/* the page hero of an inner page: a gold sheet with the floating header over it; the next sheet laps onto it */
.k-phero{position:relative;isolation:isolate;overflow:clip;padding:clamp(118px,17vh,176px) 0 calc(clamp(56px,8vw,96px) + var(--k-lap));background:var(--k-gold-ground);color:var(--plum-600)}
.k-phero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.55;mix-blend-mode:multiply;background-image:var(--k-grain)}
.k-phero-in{width:min(var(--max),100% - 2*var(--gutter));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,5vw,72px);align-items:center}
.k-phero-in--solo{grid-template-columns:minmax(0,1fr)}
.k-phero h1{margin-top:16px;font-size:clamp(2.4rem,4.6vw,4.4rem);font-weight:800;font-stretch:92%;letter-spacing:-.035em;line-height:.98;color:var(--plum-600);text-shadow:0 2px 0 rgba(255,255,255,.4),0 10px 22px rgba(140,70,0,.18)}
.k-phero .k-lead{margin-top:20px}
.k-phero-acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.k-phero-art{position:relative;justify-self:center;width:100%;max-width:460px}
@media (max-width:900px){.k-phero-in{grid-template-columns:minmax(0,1fr)}.k-phero-art{max-width:320px}}
.k-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font:600 .875rem/1 var(--text);color:var(--ink-3)}
.k-crumbs a{color:var(--plum-500);text-decoration:none}
.k-crumbs a:hover{text-decoration:underline}
.k-crumbs i{font-style:normal;opacity:.5}

/* tabs: a pill track with a plum clay thumb (gold on plum) */
.k-tabs{display:inline-flex;flex-wrap:wrap;gap:4px;padding:5px;border-radius:999px;background:rgba(100,8,46,.08);box-shadow:inset 0 1px 2px rgba(100,8,46,.12)}
.k-tab{display:inline-flex;align-items:center;gap:9px;height:44px;padding:0 20px;border-radius:999px;font:650 .9375rem/1 var(--display);color:var(--ink-2);transition:background .25s,color .25s,box-shadow .25s}
.k-tab svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.k-tab:hover{color:var(--plum-600)}
.k-tab[aria-selected="true"],.k-tab[aria-pressed="true"]{color:var(--cream-50);background:var(--k-grain-light),var(--k-plum-clay);box-shadow:var(--k-plum-shadow)}
.k-sheet--plum .k-tabs{background:rgba(255,241,214,.1)}
.k-sheet--plum .k-tab{color:var(--ink-2)}
.k-sheet--plum .k-tab[aria-selected="true"],.k-sheet--plum .k-tab[aria-pressed="true"]{color:var(--plum-700);background:var(--k-grain),var(--k-gold-clay);box-shadow:var(--k-gold-shadow)}

/* the search field */
.k-search{position:relative;display:flex;align-items:center;gap:12px;height:56px;padding:0 20px;border-radius:999px;background:#fff;box-shadow:inset 0 2px 4px rgba(100,8,46,.12),inset 0 0 0 1px rgba(100,8,46,.08),0 12px 24px -16px rgba(90,40,0,.35)}
.k-search svg{width:20px;height:20px;flex:none;fill:none;stroke:var(--plum-500);stroke-width:2;stroke-linecap:round}
.k-search input{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;font:500 1.0625rem/1 var(--text);color:var(--ink)}
.k-search input::placeholder{color:var(--ink-3)}
.k-search:focus-within{box-shadow:inset 0 2px 4px rgba(100,8,46,.12),0 0 0 3px var(--plum-400)}

/* a tag: a small label; tones for state */
.k-tag{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;background:rgba(100,8,46,.08);font:650 .6875rem/1 var(--text);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap}
.k-tag--gold{background:var(--k-gold-clay);color:var(--plum-700);box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}
.k-tag--plum{background:var(--plum-600);color:var(--cream-50)}
.k-tag--ok{background:#e1f1d6;color:#2a6e45}
.k-tag--late{background:#fbe0d6;color:#a2391d}

/* truth chips — works today · at launch · being built: they stay in the markup and show only with ?truth (html.truth) */
.tg{display:inline-block;vertical-align:middle;margin-inline-start:8px;padding:1px 9px;border-radius:999px;font:600 .6875rem/1.5 var(--text);letter-spacing:.04em;white-space:nowrap;background:rgba(100,8,46,.08);color:var(--plum-600)}
html:not(.truth) .tg{display:none!important}
.tg.now{background:#e1f1d6;color:#2a6e45}
.tg.launch{background:#f3d3e2;color:#64082e}
.tg.later{background:#fbe0d6;color:#a2391d}

/* a face in a ring */
.k-ava{--s:56px;width:var(--s);height:var(--s);border-radius:50%;object-fit:cover;border:3px solid var(--cream-50);box-shadow:0 10px 14px -8px rgba(90,40,0,.55);background:var(--cream-200)}
.k-sheet--plum .k-ava{border-color:#ffe9a0}

/* a grid of cards that fills the width */
.k-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:clamp(14px,2vw,24px)}

/* the lamp, when it belongs to the story (inside the club, the wishes, the hall): the real clay lamp, the three stars rising from its spout */
.k-lamp{position:relative;width:100%;aspect-ratio:1200/721;container-type:inline-size}
.k-lamp>img.k-lamp-body{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3cqw 3cqw rgba(60,6,30,.45))}
.k-lamp .k-lamp-st{position:absolute;height:auto;filter:drop-shadow(0 .8cqw .8cqw rgba(120,60,0,.4));animation:k-lamp-rise 5.5s ease-in-out infinite;opacity:0}
.k-lamp .k-lamp-st--1{inset-inline-start:90%;top:10%;width:13cqw;animation-delay:0s}
.k-lamp .k-lamp-st--2{inset-inline-start:104%;top:-18%;width:8cqw;animation-delay:1.7s}
.k-lamp .k-lamp-st--3{inset-inline-start:82%;top:-36%;width:6cqw;animation-delay:3.4s}
@keyframes k-lamp-rise{0%{transform:translate(0,2cqw) scale(.3);opacity:0}18%{opacity:1}70%{opacity:1}100%{transform:translate(2cqw,-14cqw) scale(1.05) rotate(14deg);opacity:0}}
@media (prefers-reduced-motion:reduce){.k-lamp .k-lamp-st{animation:none;opacity:1}}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important}
}

/* Workspace entry and the product's supported languages. */
.k-hdr-in{height:76px;gap:18px}
.k-nav{gap:4px}
.k-nav a:is([data-i="nav_day"],[data-i="nav_procs"]){display:none}
.k-nav a{padding-inline:14px;font-size:.9rem}
.k-burger{display:block;flex:none}
.k-entry{display:grid;justify-items:center;gap:6px;padding-block:5px}
.k-entry .k-btn{--h:36px;box-shadow:inset 0 1px 1px #ffffff40,inset 0 -6px 14px #19000c60,0 3px 6px -3px #3a061e60}
.k-workspace{font:600 .75rem/1.15 var(--text);color:var(--plum-600);text-decoration:none;white-space:normal;text-align:center;max-width:210px}
.k-workspace:hover{text-decoration:underline;text-underline-offset:3px}
.k-lang{padding:0;background:transparent;flex:none}
.k-lang .k-language-button{display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 12px;border:1px solid var(--line);background:rgba(255,250,240,.75);font:600 .8125rem/1 var(--text);letter-spacing:0;color:var(--plum-600)}
.k-language-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}
.k-language-button span{max-width:120px;line-height:1.15;overflow-wrap:anywhere}
@media(max-width:1070px){.k-nav a[data-i="nav_club"]{display:none}}
@media(max-width:1000px){.k-nav{display:none}}
@media(max-width:560px){.k-hdr-in{height:76px;gap:8px;padding-inline:12px 8px}.k-hdr-r{gap:8px}.k-entry .k-btn{min-height:36px;padding:8px 16px;font-size:.875rem}.k-workspace{max-width:180px;font-size:.7rem}.k-burger{width:38px;height:38px}.k-lang--menu{display:flex}}
