@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@500;700&family=Jost:wght@400;500;600&display=swap');
/* Onakaippai — design tokens (derivados da logo) */
:root{
  --sumi-950:#070606; --sumi-900:#0e0c0c; --sumi-800:#171414; --sumi-700:#241f1f; --sumi-500:#4a4242; --sumi-300:#8f8585;
  --aka-900:#5e0a0d; --aka-700:#8e0f14; --aka-500:#c8161d; --aka-400:#e0262d; --aka-300:#ef5a5f; --aka-100:#fbe3e3;
  --washi-50:#faf7f2; --washi-200:#e9e3da; --washi-400:#bdb4a8;
  --sakura:#f4d6db;
  --color-bg:var(--sumi-950); --color-surface:var(--sumi-900); --color-line:var(--sumi-700);
  --color-text:var(--washi-50); --color-muted:var(--washi-400); --color-accent:var(--aka-500);
  --font-display:'Shippori Mincho',serif; --font-body:'Jost',sans-serif;
  --track-caps:.32em;
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:72px;--space-9:112px;
  --radius-sm:2px;--radius-md:6px;--radius-pill:999px;
  --shadow-glow:0 0 120px 20px rgba(200,22,29,.28);
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:var(--aka-300);text-decoration:none}a:hover{color:var(--washi-50)}
::selection{background:var(--aka-500);color:var(--washi-50)}
:focus-visible{outline:2px solid var(--aka-400);outline-offset:3px}

/* componentes */
.kicker{font:500 13px/1 var(--font-body);letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--aka-400)}
.display{font-family:var(--font-display);font-weight:500;line-height:1.1;letter-spacing:-.01em}
.rule{display:flex;align-items:center;gap:var(--space-4)}
.rule::before,.rule::after{content:"";height:2px;flex:1;background:linear-gradient(90deg,transparent,var(--aka-500))}
.rule::after{background:linear-gradient(90deg,var(--aka-500),transparent)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);min-height:52px;padding:0 var(--space-6);border-radius:var(--radius-sm);font:500 14px/1 var(--font-body);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.btn svg{width:20px;height:20px;flex:none}
.btn-primary{background:var(--aka-500);color:var(--washi-50);border:1px solid var(--aka-500)}
.btn-primary:hover{background:var(--aka-400);border-color:var(--aka-400);color:var(--washi-50)}
.btn-primary:active{background:var(--aka-700)}
.btn-outline{background:transparent;color:var(--washi-50);border:1px solid var(--washi-50)}
.btn-outline:hover{background:var(--washi-50);color:var(--sumi-950)}
.btn-outline:active{background:var(--washi-200)}
.hanko{display:inline-flex;flex-direction:column;align-items:center;padding:6px 4px;border:2px solid var(--aka-500);border-radius:var(--radius-sm);color:var(--aka-500);font:700 18px/1.05 var(--font-display)}
.card{border:1px solid var(--color-line);background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-6)}
