/* Layout: workshop counter. Linen ground, a leather hang-tag with the key dates, product rows with saddle-stitch frames. */
:root{
  --bg:#ECEBE6; --surface:#F7F6F2; --ink:#1D211E; --muted:#5A6058; --line:#CDCAC0;
  --tan:#94531F; --tan-ink:#FFF8F0; --forest:#284437; --stitch:#C08038;
  --hide-a:#B8763D; --hide-b:#8E5326; --wa:#1F7A4D;
  --display:"Zilla Slab", Rockwell, "Roboto Slab", Georgia, serif;
  --body:"Work Sans", "Segoe UI", system-ui, -apple-system, sans-serif;
  --mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;
  --s1:.25rem; --s2:.5rem; --s3:.75rem; --s4:1rem; --s5:1.5rem; --s6:2rem; --s7:3rem; --s8:4.5rem;
  --wrap:72rem;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#141715; --surface:#1C201D; --ink:#ECE8DF; --muted:#A4A89F; --line:#343A35;
  --tan:#D28C50; --tan-ink:#1A120B; --forest:#93BBA3; --stitch:#D9A15E;
  --hide-a:#7A4A24; --hide-b:#4F2E15; --wa:#3FB57A; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#141715; --surface:#1C201D; --ink:#ECE8DF; --muted:#A4A89F; --line:#343A35;
  --tan:#D28C50; --tan-ink:#1A120B; --forest:#93BBA3; --stitch:#D9A15E;
  --hide-a:#7A4A24; --hide-b:#4F2E15; --wa:#3FB57A; color-scheme:dark}

*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.55;margin:0}
a{color:inherit}
:focus-visible{outline:2px solid var(--tan);outline-offset:3px;border-radius:4px}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-left:max(16px, env(safe-area-inset-left, 0px));padding-right:max(16px, env(safe-area-inset-right, 0px))}
h1,h2,h3{font-family:var(--display);line-height:1.08;text-wrap:balance;margin:0;font-weight:700}
h2{font-size:clamp(1.75rem, 1.2rem + 2vw, 2.5rem)}
h3{font-size:1.25rem;font-weight:600}
p{margin:0}
.eyebrow{font-family:var(--mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tan)}
.lede{color:var(--muted);max-width:38rem}
.ph{background:color-mix(in srgb, var(--stitch) 18%, transparent);border-radius:3px;padding-inline:.2em}

/* Header */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top, 0px);z-index:10;background:var(--bg)}
.top{position:sticky;top:env(safe-area-inset-top, 0px);z-index:9;background:color-mix(in srgb, var(--bg) 92%, transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding-block:var(--s3)}
.mark{display:flex;align-items:center;gap:var(--s3);text-decoration:none}
.mark-seal{width:2.4rem;height:2.4rem;border-radius:50%;background:var(--tan);color:var(--tan-ink);display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:1.05rem;outline:1.5px dashed var(--tan-ink);outline-offset:-5px;flex:none}
.mark-name{font-family:var(--display);font-weight:700;font-size:1.1rem;letter-spacing:.02em;line-height:1.1}
.mark-name small{display:block;font-family:var(--mono);font-weight:400;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.nav{display:flex;gap:var(--s5);font-size:.92rem}
.nav a{text-decoration:none;color:var(--muted)}
.nav a:hover{color:var(--ink)}
@media (max-width:820px){.nav{display:none}}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);font:600 .95rem/1 var(--body);padding:.85rem 1.2rem;border-radius:999px;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:transform .15s ease, background .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--tan);color:var(--tan-ink)}
.btn-wa{background:var(--wa);color:#fff}
.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-sm{padding:.6rem .95rem;font-size:.88rem}
.wa-ico{width:1.1em;height:1.1em;flex:none}

/* Hero */
.hero .wrap{display:grid;grid-template-columns:1.25fr .9fr;gap:var(--s7);align-items:center;padding-block:var(--s8) var(--s7)}
@media (max-width:860px){.hero .wrap{grid-template-columns:1fr;gap:var(--s6);padding-block:var(--s6)}}
.hero h1{font-size:clamp(2.5rem, 1.4rem + 4.6vw, 4.6rem);margin-block:var(--s3) var(--s4);letter-spacing:-.01em}
.hero h1 em{font-style:normal;color:var(--tan)}
.hero .lede{font-size:1.1rem}
.cta-row{display:flex;flex-wrap:wrap;gap:var(--s3);margin-top:var(--s5)}
.proof{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);margin-top:var(--s5);font-family:var(--mono);font-size:.8rem;color:var(--muted);list-style:none;padding:0}
.proof li::before{content:"+ ";color:var(--stitch)}

/* Hang tag */
.tag{position:relative;background:linear-gradient(160deg, var(--hide-a), var(--hide-b));color:#FFF6EC;border-radius:14px 14px 14px 14px;padding:var(--s6) var(--s5) var(--s5);outline:1.5px dashed color-mix(in srgb, #FFE3C2 70%, transparent);outline-offset:-10px;box-shadow:0 18px 40px -22px rgba(40,20,5,.55);transform:rotate(1.2deg);max-width:26rem;justify-self:center;width:100%}
.tag::before{content:"";position:absolute;top:1.1rem;left:50%;width:1rem;height:1rem;margin-left:-.5rem;border-radius:50%;background:var(--bg);box-shadow:inset 0 1px 2px rgba(0,0,0,.35)}
.tag h2{font-size:1.35rem;text-align:center;margin-top:var(--s4);color:#FFF6EC}
.tag p.sub{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;text-align:center;opacity:.8;margin-top:var(--s1)}
.tag dl{margin:var(--s5) 0 0;display:grid;gap:0}
.tag dl div{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3);padding-block:var(--s3);border-top:1px dashed rgba(255,230,200,.35)}
.tag dt{font-size:.92rem}
.tag dd{margin:0;font-family:var(--mono);font-weight:500;font-size:.95rem;white-space:nowrap;font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion: reduce){.tag{transform:none}.btn{transition:none}}

/* Sections */
section{scroll-margin-top:5rem}
.band{padding-block:var(--s8)}
.band-alt{background:var(--surface);border-block:1px solid var(--line)}
.head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:var(--s4);margin-bottom:var(--s6)}
.head > div{display:grid;gap:var(--s2);min-width:0}

/* Filter */
.chips{display:flex;flex-wrap:wrap;gap:var(--s2)}
.chip{font:500 .85rem/1 var(--body);padding:.55rem .9rem;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}

/* Products */
.grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(15.5rem, 1fr));gap:var(--s6) var(--s5)}
.card{display:grid;grid-template-rows:auto 1fr;gap:var(--s4);min-width:0}
.photo{aspect-ratio:4/3;max-width:100%;border-radius:10px;background:
  radial-gradient(120% 90% at 20% 15%, color-mix(in srgb, var(--hide-a) 85%, #fff 15%), transparent 60%),
  linear-gradient(145deg, var(--hide-a), var(--hide-b));
  outline:1.5px dashed color-mix(in srgb, #FFE3C2 65%, transparent);outline-offset:-9px;display:grid;place-items:center;position:relative;overflow:hidden}
.photo span{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#FFF1DE;opacity:.85}
.photo .badge{position:absolute;top:.9rem;left:.9rem;background:var(--bg);color:var(--ink);font-family:var(--mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .55rem;border-radius:4px;opacity:1}
.info{display:grid;grid-template-rows:auto auto 1fr auto;gap:var(--s2)}
.title-row{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s3)}
.price{font-family:var(--mono);font-weight:500;font-size:1.05rem;white-space:nowrap;font-variant-numeric:tabular-nums}
.spec{font-family:var(--mono);font-size:.75rem;color:var(--muted)}
.desc{font-size:.93rem;color:var(--muted)}
.actions{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s2)}
.empty{color:var(--muted);font-style:italic}

/* Custom */
.custom .wrap{display:grid;grid-template-columns:1fr 1fr;gap:var(--s7);align-items:start}
@media (max-width:860px){.custom .wrap{grid-template-columns:1fr;gap:var(--s6)}}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:var(--s5);counter-reset:s}
.steps li{display:grid;grid-template-columns:2.6rem 1fr;gap:var(--s4);counter-increment:s}
.steps li::before{content:counter(s);width:2.6rem;height:2.6rem;border-radius:50%;border:1.5px dashed var(--stitch);display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:1.15rem;color:var(--tan)}
.steps h3{margin-bottom:var(--s1)}
.steps p{color:var(--muted);font-size:.95rem}
.thread{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s3)}
.thread i{display:inline-flex;align-items:center;gap:.35rem;font-style:normal;font-family:var(--mono);font-size:.72rem;color:var(--muted)}
.thread i::before{content:"";width:.9rem;height:.9rem;border-radius:50%;background:var(--c);border:1px solid var(--line)}
.note{margin-top:var(--s5);padding:var(--s4);border-left:3px solid var(--stitch);background:var(--bg);font-size:.9rem;color:var(--muted)}
.band-alt .note{background:var(--bg)}

/* Visit */
.visit .wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--s7)}
@media (max-width:860px){.visit .wrap{grid-template-columns:1fr;gap:var(--s6)}}
.addr{display:grid;gap:var(--s3);margin-top:var(--s5)}
.addr p{font-size:1.05rem}
.hours{width:100%;border-collapse:collapse;font-size:.95rem}
.hours caption{text-align:left;font-family:var(--mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tan);padding-bottom:var(--s3)}
.hours th,.hours td{padding:.7rem 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.hours td{font-family:var(--mono);font-size:.88rem;text-align:right;font-variant-numeric:tabular-nums}
.hours tr.hi th,.hours tr.hi td{color:var(--tan);font-weight:600}
.hours tr.off td{color:var(--muted)}

/* Shipping */
.ship{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--s5)}
@media (max-width:760px){.ship{grid-template-columns:1fr}}
.ship div{display:grid;gap:var(--s2);padding-top:var(--s4);border-top:2px solid var(--ink);min-width:0}
.ship p{color:var(--muted);font-size:.95rem}

/* Footer */
footer{padding-block:var(--s7) var(--s8);border-top:1px solid var(--line);font-size:.88rem;color:var(--muted)}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s5)}
footer nav{display:flex;flex-wrap:wrap;gap:var(--s4)}
footer a{color:var(--muted)}

/* Floating WhatsApp */
.fab{position:fixed;right:calc(16px + env(safe-area-inset-right, 0px));bottom:calc(16px + env(safe-area-inset-bottom, 0px));z-index:8;box-shadow:0 10px 24px -10px rgba(0,0,0,.45)}
@media (min-width:821px){.fab{display:none}}

/* Today strip (top of every page) */
.today{background:var(--forest);color:var(--bg)}
.today .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s2) var(--s4);padding-block:.55rem;font-size:.88rem}
.today a{color:inherit;font-weight:600;text-underline-offset:3px}
.dot{display:inline-block;width:.55rem;height:.55rem;border-radius:50%;margin-right:.45rem;vertical-align:.05em;background:currentColor;opacity:.55}
[data-open="true"] .dot{background:#7BE0A6;opacity:1;box-shadow:0 0 0 3px rgba(123,224,166,.25)}

/* Status pill (shop page) */
.status{display:inline-flex;align-items:center;gap:.5rem;font:600 .95rem/1 var(--body);padding:.6rem .95rem;border-radius:999px;background:var(--surface);border:1px solid var(--line)}
.status .dot{opacity:1;background:var(--muted);margin:0}
.status[data-open="true"] .dot{background:var(--wa);box-shadow:0 0 0 3px color-mix(in srgb, var(--wa) 25%, transparent)}
.hours tr.now th,.hours tr.now td{color:var(--ink);font-weight:600}
.hours tr.now th::after{content:"Hoy";margin-left:.5rem;font:500 .65rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:.25rem .4rem;border-radius:3px;background:var(--tan);color:var(--tan-ink);vertical-align:.15em}

/* Shop page */
.visit-hero .wrap{display:grid;grid-template-columns:1fr 1fr;gap:var(--s7);align-items:start;padding-block:var(--s7)}
@media (max-width:860px){.visit-hero .wrap{grid-template-columns:1fr;gap:var(--s6);padding-block:var(--s6)}}
.visit-hero h1{font-size:clamp(2.2rem, 1.3rem + 3.8vw, 3.8rem);margin-block:var(--s3) var(--s4)}
.visit-hero h1 em{font-style:normal;color:var(--tan)}
.hours-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:var(--s5);display:grid;gap:var(--s4);min-width:0}
.hours-card .status{justify-self:start}
.perks{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--s5)}
@media (max-width:760px){.perks{grid-template-columns:1fr}}
.perks div{display:grid;gap:var(--s2);padding-top:var(--s4);border-top:1.5px dashed var(--stitch);min-width:0}
.perks p{color:var(--muted);font-size:.95rem}
.lights{display:grid;grid-template-columns:auto 1fr;gap:var(--s5);align-items:center;padding:var(--s5);border-radius:12px;background:linear-gradient(150deg, var(--hide-a), var(--hide-b));color:#FFF6EC;outline:1.5px dashed rgba(255,227,194,.6);outline-offset:-9px}
.lights h2{color:#FFF6EC;font-size:clamp(1.4rem, 1.1rem + 1.2vw, 1.9rem)}
.lights p{opacity:.9;margin-top:var(--s2);max-width:36rem}
.bulbs{display:flex;gap:.45rem}
.bulbs i{width:.8rem;height:.8rem;border-radius:50%;background:#FFD27A;box-shadow:0 0 12px 3px rgba(255,210,122,.65)}
.bulbs i:nth-child(2){background:#FFF1D0}
@media (max-width:560px){.lights{grid-template-columns:1fr}}
@media (prefers-reduced-motion: no-preference){.bulbs i{animation:glow 2.4s ease-in-out infinite}.bulbs i:nth-child(2){animation-delay:.8s}.bulbs i:nth-child(3){animation-delay:1.6s}}
@keyframes glow{50%{opacity:.45;box-shadow:0 0 4px 1px rgba(255,210,122,.4)}}
.returns{display:grid;gap:var(--s2)}
.returns p{color:var(--muted);font-size:.95rem}
.returns strong{color:var(--ink);font-weight:600}

/* Hero dates (replaces hang tag) */
.dates{display:flex;flex-wrap:wrap;gap:var(--s3) var(--s6);margin:var(--s6) 0 0;padding-top:var(--s4);border-top:1.5px dashed var(--stitch)}
.dates div{display:grid;gap:.15rem}
.dates dt{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.dates dd{margin:0;font-family:var(--display);font-weight:600;font-size:1.15rem}

/* Vertical video, 9:16 like Reels/TikTok */
.video-frame{margin:0;justify-self:center;width:100%;max-width:21rem;aspect-ratio:9/16;max-height:78vh;border-radius:18px;overflow:hidden;position:relative;
  background:radial-gradient(120% 80% at 30% 20%, color-mix(in srgb, var(--hide-a) 85%, #fff 15%), transparent 60%), linear-gradient(160deg, var(--hide-a), var(--hide-b));
  outline:1.5px dashed rgba(255,227,194,.6);outline-offset:-10px;box-shadow:0 24px 50px -28px rgba(40,20,5,.6)}
.video-frame video,.video-frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.video-frame .vph{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:var(--s3);color:#FFF1DE;text-align:center;padding:var(--s5)}
.video-frame .vph b{width:3.4rem;height:3.4rem;border-radius:50%;border:1.5px solid #FFF1DE;display:grid;place-items:center;justify-self:center}
.video-frame .vph b::after{content:"";border-left:14px solid #FFF1DE;border-top:9px solid transparent;border-bottom:9px solid transparent;margin-left:4px}
.video-frame .vph span{font-family:var(--mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;opacity:.85}
.video-frame .mute{position:absolute;right:.9rem;bottom:.9rem;z-index:2;font:600 .8rem/1 var(--body);padding:.55rem .8rem;border-radius:999px;border:0;background:rgba(0,0,0,.55);color:#fff;cursor:pointer}
@media (max-width:860px){.video-frame{max-width:19rem;order:-1}}

/* Workshop gallery */
.gallery{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--s3)}
@media (max-width:640px){.gallery{grid-template-columns:repeat(2, 1fr)}}
.gallery figure{margin:0;aspect-ratio:1;max-width:100%;border-radius:8px;overflow:hidden;position:relative;background:linear-gradient(145deg, var(--hide-a), var(--hide-b));display:grid;place-items:center}
.gallery figure:first-child{grid-row:span 2;aspect-ratio:auto}
.gallery img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gallery span{font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:#FFF1DE;opacity:.85;text-align:center;padding:var(--s2)}
.from{font-family:var(--mono);font-size:.72rem;color:var(--muted);margin-right:.2rem}
.head > .chips{display:flex}
.social{display:flex;flex-wrap:wrap;gap:var(--s4)}
.social a{color:var(--ink);font-weight:500}

/* Built to last: patina */
.durar{display:grid;grid-template-columns:1fr 1fr;gap:var(--s7);align-items:center}
@media (max-width:860px){.durar{grid-template-columns:1fr;gap:var(--s6)}}
.patina{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--s4)}
.patina li{display:grid;gap:var(--s1);min-width:0}
.patina .sw{aspect-ratio:3/4;max-width:100%;border-radius:10px;outline:1.5px dashed rgba(255,227,194,.55);outline-offset:-8px;margin-bottom:var(--s2)}
.sw1{background:radial-gradient(110% 80% at 30% 20%, #E9C79C, transparent 60%), linear-gradient(160deg, #D8A877, #C38F5E)}
.sw2{background:radial-gradient(110% 80% at 30% 20%, #C98A52, transparent 60%), linear-gradient(160deg, #B0703C, #8F5427)}
.sw3{background:radial-gradient(110% 80% at 30% 20%, rgba(255,214,160,.55), transparent 45%), linear-gradient(160deg, #8A4A1E, #5C2E10)}
.patina b{font-family:var(--display);font-weight:600;font-size:1.05rem}
.patina small{font-family:var(--mono);font-size:.72rem;color:var(--muted)}
.pillars{list-style:none;margin:var(--s7) 0 0;padding:0;display:grid;grid-template-columns:repeat(4, 1fr);gap:var(--s5)}
@media (max-width:960px){.pillars{grid-template-columns:repeat(2, 1fr)}}
@media (max-width:560px){.pillars{grid-template-columns:1fr}}
.pillars li{display:grid;gap:var(--s2);align-content:start;padding-top:var(--s4);border-top:2px solid var(--ink);min-width:0}
.pillars p{color:var(--muted);font-size:.95rem}

/* Process */
.process{list-style:none;margin:0 0 var(--s6);padding:0;display:grid;grid-template-columns:repeat(4, 1fr);gap:var(--s4);counter-reset:p}
@media (max-width:760px){.process{grid-template-columns:repeat(2, 1fr)}}
.process li{counter-increment:p;display:grid;gap:var(--s1);align-content:start;min-width:0}
.process b{font-family:var(--display);font-weight:600;font-size:1.05rem}
.process b::before{content:counter(p) " · ";color:var(--tan)}
.process span{color:var(--muted);font-size:.9rem}

/* Real product photos */
.photo{aspect-ratio:4/5}
.photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.photo:has(img){outline:none}
.grid{grid-template-columns:repeat(auto-fill, minmax(14.5rem, 1fr))}

/* Process videos */
.proc{display:grid;grid-template-columns:repeat(4, 1fr);gap:var(--s5)}
@media (max-width:960px){.proc{grid-template-columns:repeat(2, 1fr)}}
@media (max-width:480px){.proc{grid-template-columns:1fr 1fr;gap:var(--s3)}}
.step{margin:0;display:grid;gap:var(--s3);min-width:0}
.clip{position:relative;aspect-ratio:9/14;max-width:100%;border-radius:12px;overflow:hidden;background:linear-gradient(160deg, var(--hide-a), var(--hide-b))}
.clip video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.clip .n{position:absolute;top:.6rem;left:.6rem;width:1.9rem;height:1.9rem;border-radius:50%;background:var(--bg);color:var(--tan);display:grid;place-items:center;font-family:var(--display);font-weight:700}
.step figcaption{display:grid;gap:.2rem}
.step b{font-family:var(--display);font-weight:600;font-size:1.1rem}
.step figcaption span{color:var(--muted);font-size:.9rem}
.shopfront{margin:var(--s5) 0 0;width:100%;max-width:17rem;aspect-ratio:9/14;border-radius:12px;overflow:hidden;position:relative;background:var(--hide-b)}
.shopfront video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hours-card{align-content:start;align-self:start}
@media (max-width:560px){
  .grid{grid-template-columns:1fr 1fr;gap:var(--s5) var(--s3)}
  .card h3{font-size:1rem}
  .card .desc{font-size:.82rem}
  .card .badge{font-size:.6rem;top:.5rem;left:.5rem}
  .card .btn-sm{padding:.55rem .7rem;font-size:.8rem;width:100%}
}
.hours tr.grp th{padding:1.1rem 0 .35rem;border-bottom:0;font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:500}
.hours tr.grp:first-child th{padding-top:0}
.closed-note{font-size:.88rem;color:var(--muted);padding-top:var(--s2);border-top:1.5px dashed var(--stitch)}

/* Language switch */
.top .wrap{gap:var(--s3)}
.lang{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:2px;flex:none;margin-left:auto}
.lang a{font:600 .75rem/1 var(--mono);letter-spacing:.06em;text-decoration:none;color:var(--muted);padding:.45rem .6rem;border-radius:999px}
.lang a[aria-current="page"]{background:var(--ink);color:var(--bg)}
.lang a:hover:not([aria-current]){color:var(--ink)}
@media (min-width:821px){.lang{margin-left:0}}
@media (max-width:420px){.mark-name small{display:none}.mark-name{font-size:1rem}}
html[lang="en"] .hours tr.now th::after{content:"Today"}

/* Legal page */
.legal{max-width:46rem;padding-block:var(--s7) var(--s8);display:grid;gap:var(--s4)}
.legal h1{font-size:clamp(2rem, 1.4rem + 2.4vw, 3rem)}
.legal .updated,.legal .note-en{font-family:var(--mono);font-size:.78rem;color:var(--muted)}
.legal section{display:grid;gap:var(--s3);padding-top:var(--s6);border-top:1.5px dashed var(--stitch);margin-top:var(--s4);scroll-margin-top:5rem}
.legal h2{font-size:1.7rem}
.legal h3{font-size:1.1rem;margin-top:var(--s3)}
.legal p,.legal li{color:var(--muted);max-width:42rem}
.legal ul{margin:0;padding-left:1.2rem;display:grid;gap:var(--s2)}
.legal strong{color:var(--ink)}
.facts{margin:var(--s2) 0 0;display:grid;gap:0;border-top:1px solid var(--line)}
.facts div{display:grid;grid-template-columns:minmax(8rem, 12rem) 1fr;gap:var(--s4);padding-block:.6rem;border-bottom:1px solid var(--line)}
.facts dt{font-family:var(--mono);font-size:.78rem;letter-spacing:.04em;color:var(--muted);padding-top:.15rem}
.facts dd{margin:0;min-width:0;overflow-wrap:anywhere}
@media (max-width:520px){.facts div{grid-template-columns:1fr;gap:.15rem}}
footer a[href^="mailto"]{color:inherit}
