/* warm trattoria: flour paper, tomato red, basil; film stage first, paper menu slides over it */
:root{--paper:#f6efe4;--ink:#22160f;--tom:#c8341f;--basil:#2f5d3a;--mu:#6d5a4b;--cream:#fff8ee;
--disp:'Fraunces',Georgia,serif;--body:'DM Sans',system-ui,sans-serif;color-scheme:light}
*{box-sizing:border-box}html{background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--ink);font:400 17px/1.6 var(--body)}
a{color:inherit}
.loader{background:var(--ink);color:var(--cream)}
.lw{font:600 34px var(--disp)}.lw i,.logo i,.big i{color:var(--tom);font-style:italic}
.shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,13,9,.55),transparent 30%,transparent 62%,rgba(20,13,9,.7))}
.nav{position:fixed;z-index:30;top:44px;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:14px max(16px,4vw);color:var(--cream)}
.logo{font:600 26px var(--disp);text-decoration:none;letter-spacing:-.02em}
.nav-links{display:flex;gap:26px;align-items:center;font-weight:500}
.nav-links a{text-decoration:none}
.pill{background:var(--tom);padding:9px 20px;border-radius:99px;color:#fff}
.nav-toggle{display:none;background:none;border:0;width:42px;height:42px;padding:10px;cursor:pointer}
.nav-toggle span{display:block;height:2px;background:var(--cream);margin:6px 0}
@media(max-width:760px){.nav-toggle{display:block}.nav-links{display:none;position:absolute;top:100%;left:16px;right:16px;flex-direction:column;background:var(--ink);padding:22px;border-radius:18px}.nav-links.open{display:flex}}
.ov{color:var(--cream)}
.o-hero{display:flex;flex-direction:column;justify-content:flex-end;padding:0 max(16px,5vw) 9vh}
.kick,.n{font:700 12px var(--body);letter-spacing:.28em;text-transform:uppercase;color:#ffcfb5}
h1{font:600 clamp(56px,10vw,150px)/.88 var(--disp);letter-spacing:-.05em;margin:14px 0 26px;text-shadow:0 6px 40px rgba(0,0,0,.4)}
h1 em{font-style:italic;font-weight:400;color:#ffb38f}
.hint{font-weight:600;font-size:14px;opacity:.85}
.o-step{display:flex;flex-direction:column;justify-content:center;padding:0 max(16px,6vw);max-width:none}
.o-step h2{font:600 clamp(34px,4.6vw,66px)/1.02 var(--disp);letter-spacing:-.035em;margin:12px 0 0;max-width:13ch;text-wrap:balance;text-shadow:0 4px 30px rgba(0,0,0,.5)}
.o-step.right{align-items:flex-end;text-align:right}
.o-fire{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:0 16px}
.deg{font:600 clamp(90px,17vw,260px)/.9 var(--disp);letter-spacing:-.06em;margin:6px 0 10px;font-variant-numeric:tabular-nums;text-shadow:0 0 60px rgba(255,120,40,.6)}
.o-fire h2{font:400 clamp(20px,2.2vw,28px)/1.3 var(--disp);font-style:italic;max-width:30ch;margin:0}
main{position:relative;z-index:10}
.track{height:600vh}
.paper{background:var(--paper);border-radius:32px 32px 0 0;position:relative}
.menu{max-width:1200px;margin:0 auto;padding:clamp(64px,9vw,120px) max(16px,4vw)}
.menu-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:48px}
.menu-head h2{font:600 clamp(48px,7vw,104px)/.9 var(--disp);letter-spacing:-.05em;margin:0}
.menu-head p{max-width:34ch;color:var(--mu);margin:0}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.card{display:grid;grid-template-columns:1fr auto;gap:6px 14px;align-items:start}
.card img{grid-column:1/-1;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:50%;transition:transform 1.2s cubic-bezier(.2,.8,.2,1);box-shadow:0 30px 50px -30px rgba(60,20,0,.6)}
.card:hover img{transform:rotate(25deg) scale(1.03)}
.card h3{font:600 26px var(--disp);margin:14px 0 2px;letter-spacing:-.02em}
.card p{margin:0;color:var(--mu);font-size:15px}
.card b{font:600 22px var(--disp);color:var(--tom);margin-top:16px;font-variant-numeric:tabular-nums}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.grid{grid-template-columns:1fr}}
.lokal{max-width:1200px;margin:0 auto;padding:0 max(16px,4vw) clamp(64px,9vw,120px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;border-top:1px solid rgba(34,22,15,.15);padding-top:64px}
.lokal h2{font:600 34px var(--disp);margin:0 0 16px;letter-spacing:-.03em}
dl{display:grid;grid-template-columns:auto 1fr;gap:8px 20px;margin:0}dt{color:var(--mu)}dd{margin:0;font-weight:600}
.muted{color:var(--mu)}.phone{font:600 34px var(--disp);margin:0 0 8px;color:var(--tom)}
.btn{display:inline-block;margin-top:14px;background:var(--basil);color:#fff;text-decoration:none;font-weight:700;padding:15px 26px;border-radius:99px;transition:transform .2s}
.btn:hover,.btn:focus-visible{transform:translateY(-3px)}
@media(max-width:820px){.lokal{grid-template-columns:1fr}}
.foot{background:var(--ink);color:var(--cream);text-align:center;padding:60px 16px 40px;overflow:hidden}
.big{font:600 clamp(70px,18vw,260px)/.85 var(--disp);letter-spacing:-.06em;margin:0}
.foot .demo-note{color:rgba(255,248,238,.6)}
a:focus-visible{outline:2px solid var(--tom);outline-offset:3px}
