/* brand.css — tokens & primitives de marque Yuki. Partagé landing + /menu.
   Source de vérité des couleurs/typo. Fonts : Baloo 2 (latin) + Noto Sans JP (kanji). */
:root{
  --green:#00782f; --green-dk:#005a3a; --green-lt:#e7f0e4; --green-mid:#cfe0c4;
  --cream:#f7f5ee; --cream-2:#f1ede1; --ink:#22201c; --mute:#8f8d82; --mute-2:#b3b1a6;
  --line:#e8e4d7; --coral:#e8552e; --card:#fff;
  --shadow:0 2px 10px rgba(34,32,28,.06); --shadow-lg:0 14px 40px -12px rgba(0,90,58,.28);
  --baloo:'Baloo 2',system-ui,sans-serif; --noto:'Noto Sans JP',sans-serif;
  --r:18px; --r-sm:12px; --r-pill:999px;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:var(--baloo);background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased}
.kj{font-family:var(--noto)}
/* Lock-up marque */
.yuki-wm{display:inline-flex;align-items:baseline;gap:.28em;line-height:1}
.yuki-wm .yuki{font-weight:800;color:var(--green);letter-spacing:.5px}
.yuki-wm .kj{font-weight:700;color:var(--green)}
/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;
  font-weight:800;border:0;cursor:pointer;border-radius:var(--r-pill);text-decoration:none;line-height:1;
  padding:15px 22px;font-size:15px;transition:transform .15s ease,box-shadow .15s ease}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--green);color:#fff;box-shadow:0 6px 18px -6px rgba(0,120,47,.5)}
.btn-primary:hover{box-shadow:0 10px 26px -8px rgba(0,120,47,.6)}
.btn-ghost{background:var(--card);color:var(--green-dk);border:1.5px solid var(--green-mid)}
.btn-ghost:hover{background:var(--green-lt)}
/* Titre de page partagé (landing + /menu) */
.hero-title{font-size:29px;font-weight:800;line-height:1.14;letter-spacing:-.3px;color:var(--ink);text-align:center;margin:0}
.hero-title em{font-style:normal;color:var(--green)}
/* --- Nav sticky partagée (landing <-> /menu) --- */
.nav{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:8px 13px;background:rgba(247,245,238,.9);backdrop-filter:saturate(1.4) blur(10px);
  -webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.nav .brand{display:inline-flex;align-items:baseline;gap:5px;text-decoration:none;flex-shrink:0}
.nav .brand .yuki{font-weight:800;font-size:21px;color:var(--green);line-height:1;letter-spacing:.3px}
.nav .brand .kj{font-family:var(--noto);font-weight:700;font-size:13px;color:var(--green)}
.nav .links{display:flex;align-items:center;gap:4px}
.nav .links a{display:inline-flex;align-items:center;height:33px;padding:0 11px;font-weight:700;font-size:12.5px;
  color:var(--green-dk);text-decoration:none;border-radius:var(--r-pill);line-height:1;white-space:nowrap}
.nav .links a:hover{background:var(--green-lt)}
.nav .links a.active{color:var(--green);background:var(--green-lt)}
.nav .links a.cta{background:var(--green);color:#fff}
.nav .links a.cta:hover{background:var(--green-dk)}
