/* ---------- CV ---------- */
.cv{max-width:860px;margin:0 auto;padding-block:20px 64px;padding-inline:16px;display:flex;flex-direction:column;gap:18px}
.menu{background:var(--parchment);color:var(--ink);padding-block:0 30px;padding-inline:clamp(16px,5vw,44px);
  box-shadow:0 0 0 4px #c27d45,0 0 0 8px var(--wood),0 0 0 11px var(--wood-dark),0 18px 40px rgba(0,0,0,.5)}
.noren{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-inline:calc(-1*clamp(16px,5vw,44px));margin-bottom:24px}
.noren span{height:34px;background:var(--crimson);box-shadow:inset 0 -4px 0 rgba(0,0,0,.18)}
.menu header{display:flex;flex-wrap:wrap;gap:20px;align-items:center;border-bottom:3px double var(--ink);padding-bottom:18px}
.photo{width:120px;height:120px;flex:none;background:var(--parchment-2);box-shadow:0 0 0 4px #c27d45,0 0 0 7px var(--wood-dark);display:grid;place-items:center}
.photo img{width:100%;height:100%;display:block;object-fit:cover}
.who{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}
.who h1{margin:0;font-family:var(--font-display);font-weight:700;font-size:clamp(28px,5.5vw,42px);line-height:1;text-wrap:balance}
.who .role{font-size:24px}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{font-family:var(--font-display);font-size:14px;background:var(--ink);color:var(--parchment);padding:2px 8px}
.who .icons{display:flex;gap:8px;margin-top:4px}
.menu h2{font-family:var(--font-display);font-weight:700;font-size:20px;letter-spacing:.08em;text-transform:uppercase;margin:28px 0 8px;color:var(--crimson);scroll-margin-top:16px}
.dishes{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.dish-line{display:flex;align-items:baseline;gap:10px}
.no{font-family:var(--font-display);font-size:14px;background:var(--crimson);color:var(--parchment);padding:1px 6px;font-variant-numeric:tabular-nums;flex:none}
.name{min-width:0;font-size:23px}
.org{color:#7a5a3a}
a.org{text-decoration-color:#c9ab86}
a.org:hover{color:var(--crimson)}
.leader{flex:1;min-width:12px;border-bottom:2px dotted #a8865a;transform:translateY(-5px)}
.price{flex:none;font-variant-numeric:tabular-nums;font-size:21px}
.notes{margin:2px 0 0 56px;padding:0;list-style:none;font-size:19px;color:#5a3f2a;max-width:62ch}
.notes li::before{content:"~ ";color:var(--crimson)}
.flash{animation:flash 1.2s ease-out}
@keyframes flash{from{background:#ffe08a}to{background:transparent}}
@media (prefers-reduced-motion: reduce){.flash{animation:none}}
