/* POP COMEDY — design tokens.
   Portés à l'identique depuis design_handoff_popcormedy/tokens/*.css
   (fusionnés en un seul fichier statique, chemins de police corrigés
   pour /popcomedy-assets/fonts/). Page indépendante du site principal :
   volontairement aucun lien avec les tokens rs-* de Re.Snack Event. */

/* ---------- fonts.css ----------
   Archivo Narrow et Kalam (licence OFL) : WOFF2 réduits au latin / français
   (ttf d'origine conservés à côté). Built Titling : OTF d'origine, en attente
   de la licence web. */
@font-face{font-family:"Built Titling";src:url("/popcomedy-assets/fonts/BuiltTitling-El.otf") format("opentype");font-weight:200;font-style:normal;font-display:swap}
@font-face{font-family:"Built Titling";src:url("/popcomedy-assets/fonts/BuiltTitling-ElIt.otf") format("opentype");font-weight:200;font-style:italic;font-display:swap}
@font-face{font-family:"Built Titling";src:url("/popcomedy-assets/fonts/BuiltTitling-Lt.otf") format("opentype");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Built Titling";src:url("/popcomedy-assets/fonts/BuiltTitling-LtIt.otf") format("opentype");font-weight:300;font-style:italic;font-display:swap}
@font-face{font-family:"Built Titling";src:url("/popcomedy-assets/fonts/BuiltTitling-Rg.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Built Titling";src:url("/popcomedy-assets/fonts/BuiltTitling-RgIt.otf") format("opentype");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Built Titling";src:url("/popcomedy-assets/fonts/BuiltTitling-Sb.otf") format("opentype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Built Titling";src:url("/popcomedy-assets/fonts/BuiltTitling-SbIt.otf") format("opentype");font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:"Built Titling";src:url("/popcomedy-assets/fonts/BuiltTitling-Bd.otf") format("opentype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Built Titling";src:url("/popcomedy-assets/fonts/BuiltTitling-BdIt.otf") format("opentype");font-weight:700;font-style:italic;font-display:swap}
@font-face{font-family:"Archivo Narrow";src:url("/popcomedy-assets/fonts/ArchivoNarrow-Variable.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Archivo Narrow";src:url("/popcomedy-assets/fonts/ArchivoNarrow-Italic-Variable.woff2") format("woff2");font-weight:400 700;font-style:italic;font-display:swap}
@font-face{font-family:"Kalam";src:url("/popcomedy-assets/fonts/Kalam-Light.ttf") format("truetype");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Kalam";src:url("/popcomedy-assets/fonts/Kalam-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Kalam";src:url("/popcomedy-assets/fonts/Kalam-Bold.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}

/* ---------- colors.css ---------- */
:root{
  --pc-bordeaux:#6A0E18;
  --pc-bordeaux-900:#3A0C10;
  --pc-rideau:#4F1116;
  --pc-rideau-600:#7A2A2E;
  --pc-rideau-100:#EADCDC;
  --pc-rideau-050:#F7EFEF;
  --pc-papier-050:#FAF8F6;
  --pc-papier-100:#F0EBE8;
  --pc-blanc:#FFFFFF;
  --pc-encre-douce:#7A5A5A;
  --pc-noir:#303437;

  --parfum-parmesan-thym:#32582D;
  --parfum-parmesan-thym-tint:#E4EADF;
  --parfum-framboise:#E10047;
  --parfum-framboise-tint:#FBDCE6;
  --parfum-chocolat:#701C17;
  --parfum-chocolat-tint:#EFDFDD;
  --parfum-fruits-exotiques:#772870;
  --parfum-fruits-exotiques-tint:#EFE1EE;
  --parfum-truffe:#303437;
  --parfum-truffe-tint:#E2E4E5;
  --parfum-paprika:#C11323;
  --parfum-paprika-tint:#F8DCDE;

  --text-ink:var(--pc-rideau);
  --text-body:var(--pc-rideau);
  --text-muted:var(--pc-encre-douce);
  --text-on-dark:var(--pc-blanc);
  --text-on-dark-muted:#E0C4C6;
  --text-link:var(--pc-bordeaux);
  --text-link-hover:var(--pc-rideau);

  --surface-page:var(--pc-blanc);
  --surface-cream:var(--pc-papier-050);
  --surface-card:var(--pc-blanc);
  --surface-ink:var(--pc-bordeaux);
  --surface-ink-deep:var(--pc-bordeaux-900);
  --surface-sunken:var(--pc-rideau-050);

  --border-hairline:rgba(79,17,22,.16);
  --border-strong:var(--pc-rideau);
  --border-cream:rgba(79,17,22,.08);

  --accent:var(--pc-bordeaux);
  --accent-hover:var(--pc-bordeaux-900);
  --accent-ink:var(--pc-rideau);
  --accent-on-dark:var(--pc-blanc);

  --state-success:var(--parfum-parmesan-thym);
  --state-warning:var(--parfum-chocolat);
  --state-danger:var(--parfum-paprika);
  --state-info:var(--parfum-truffe);

  --focus-ring:var(--pc-bordeaux);
}

/* ---------- typography.css ---------- */
:root{
  --font-titling:"Built Titling","Archivo Narrow",Haettenschweiler,"Arial Narrow",sans-serif;
  --font-text:"Archivo Narrow",system-ui,-apple-system,"Segoe UI",sans-serif;
  --font-hand:"Kalam","Bradley Hand",cursive;
  --font-mono:ui-monospace,"SFMono-Regular",Menlo,monospace;

  --fw-el:200; --fw-lt:300; --fw-rg:400; --fw-sb:600; --fw-bd:700;

  --ts-hero:clamp(56px,9vw,132px);
  --ts-d1:72px; --ts-d2:54px; --ts-d3:40px; --ts-d4:30px;
  --ts-label:15px;

  --ts-lead:21px; --ts-body:17px; --ts-sm:15px; --ts-xs:13px; --ts-legal:11px;

  --lh-tight:0.88; --lh-snug:1.05; --lh-body:1.55; --lh-loose:1.7;

  --tr-titling:0.005em; --tr-label:0.14em; --tr-body:0;
}

/* ---------- spacing.css ---------- */
:root{
  --sp-0:0; --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:20px;
  --sp-6:24px; --sp-8:32px; --sp-10:40px; --sp-12:48px; --sp-14:56px;
  --sp-18:72px; --sp-24:96px; --sp-32:128px;

  --gutter:var(--sp-6);
  --section-y:var(--sp-24);
  --card-pad:var(--sp-6);
  --page-max:1200px;
  --prose-max:64ch;
}

/* ---------- radius.css ---------- */
:root{
  --r-0:0; --r-sm:6px; --r-md:12px; --r-lg:20px; --r-xl:32px;
  --r-pill:999px;
  --r-pouch:20px 20px 8px 8px;
}

/* ---------- shadows.css ---------- */
:root{
  --sh-1:0 1px 2px rgba(81,25,25,.06),0 2px 6px rgba(81,25,25,.05);
  --sh-2:0 2px 4px rgba(81,25,25,.07),0 8px 20px rgba(81,25,25,.08);
  --sh-3:0 6px 12px rgba(81,25,25,.09),0 20px 44px rgba(81,25,25,.12);
  --sh-pressed:inset 0 2px 4px rgba(81,25,25,.18);
  --sh-inner-cream:inset 0 0 0 1px rgba(81,25,25,.06);
  --sh-pop:3px 3px 0 var(--pc-rideau);
  --focus:0 0 0 3px rgba(106,14,24,.35);
}

/* ---------- motion.css ---------- */
:root{
  --ease-pop:cubic-bezier(.34,1.56,.64,1);
  --ease-out:cubic-bezier(.22,.61,.36,1);
  --ease-in-out:cubic-bezier(.45,.05,.55,.95);
  --dur-1:120ms; --dur-2:200ms; --dur-3:360ms; --dur-4:600ms;
}
@media (prefers-reduced-motion:reduce){
  :root{--dur-1:0ms; --dur-2:0ms; --dur-3:0ms; --dur-4:0ms;}
}

/* ---------- base.css ---------- */
*{box-sizing:border-box}
body{margin:0;font-family:var(--font-text);font-size:var(--ts-body);line-height:var(--lh-body);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-titling);font-weight:var(--fw-bd);text-transform:uppercase;line-height:var(--lh-tight);letter-spacing:var(--tr-titling);color:var(--text-ink);margin:0 0 var(--sp-4)}
h1{font-size:var(--ts-d1)} h2{font-size:var(--ts-d2)} h3{font-size:var(--ts-d3)} h4{font-size:var(--ts-d4)}
p{margin:0 0 var(--sp-4)}
a{color:var(--text-link);text-decoration-thickness:1px;text-underline-offset:3px;transition:color var(--dur-1) var(--ease-out)}
a:hover{color:var(--text-link-hover)}
strong{font-weight:var(--fw-bd)}
small{font-size:var(--ts-xs)}
img{max-width:100%;display:block}
::selection{background:var(--pc-papier-100);color:var(--pc-rideau)}
:focus-visible{outline:none;box-shadow:var(--focus);border-radius:var(--r-sm)}
