/* font Google serviti dal sito (nessuna richiesta a server esterni) */
@font-face{font-family:"Barlow Condensed";src:url(fonts/BarlowCondensed-500-latin-ext.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Barlow Condensed";src:url(fonts/BarlowCondensed-500-latin.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Barlow Condensed";src:url(fonts/BarlowCondensed-600-latin-ext.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Barlow Condensed";src:url(fonts/BarlowCondensed-600-latin.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap;unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Barlow Condensed";src:url(fonts/BarlowCondensed-700-latin-ext.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Barlow Condensed";src:url(fonts/BarlowCondensed-700-latin.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Herr Von Muellerhoff";src:url(fonts/HerrVonMuellerhoff-400-latin-ext.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Herr Von Muellerhoff";src:url(fonts/HerrVonMuellerhoff-400-latin.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Open Sans";src:url(fonts/OpenSans-400i-latin-ext.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Open Sans";src:url(fonts/OpenSans-400i-latin.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap;unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Open Sans";src:url(fonts/OpenSans-400-latin-ext.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF}
@font-face{font-family:"Open Sans";src:url(fonts/OpenSans-400-latin.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:"Aracne";src:url(fonts/aracne.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Novecento";src:url(fonts/novecento-medium.woff) format("woff");font-weight:500;font-display:swap}
@font-face{font-family:"Novecento";src:url(fonts/novecento-bold.woff) format("woff");font-weight:700;font-display:swap}

:root{
  --blu:#0080c8; --blu-2:#0062c4; --oro:#d49601; --sabbia:#a37b44;
  --ink:#333; --txt:#555; --mute:#8a8a8a; --line:#dadada; --fondo:#f5f5f5; --bianco:#fff;
  --wrap:1240px; --gut:clamp(16px,4vw,40px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:140px}
body{margin:0;background:var(--bianco);color:var(--txt);font:400 15px/1.6 "Open Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:var(--blu);text-decoration:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gut)}
.label{font:500 11px/1.4 "Novecento",sans-serif;letter-spacing:.14em;text-transform:uppercase}
.aracne{font-family:"Aracne",sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.01em;line-height:.95}
.script{font-family:"Herr Von Muellerhoff",cursive;font-weight:400;line-height:1}

/* ── testata: due fasce, come il sito attuale ─────────────── */
.topbar{background:var(--blu);color:#fff}
.topbar .wrap{display:flex;gap:24px;align-items:center;min-height:36px}
.topbar a{color:#fff}
.topbar .sp{flex:1}
.topbar .label{font-size:10px}
.nav{position:sticky;top:0;z-index:40;background:#fff;border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;gap:28px;min-height:84px}
.nav .logo img{width:118px;height:auto}
.nav ul{display:flex;gap:22px;margin:0 0 0 auto;padding:0;list-style:none}
.nav ul a{font:500 12px/1 "Novecento",sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--blu);padding:6px 0;border-bottom:2px solid transparent}
.nav ul a:hover,.nav ul a[aria-current]{border-color:var(--oro)}
.cta{display:inline-block;background:var(--blu);color:#fff;font:700 12px/1 "Novecento",sans-serif;letter-spacing:.14em;text-transform:uppercase;padding:16px 22px}
.cta:hover{background:var(--blu-2)}

/* ── apertura: il menu è il protagonista ──────────────────── */
.intro{background:#eee url(img/background-header.png) repeat center top}
.intro .wrap{display:grid;grid-template-columns:1fr 1.4fr;gap:48px;align-items:end;padding-top:40px;padding-bottom:36px}
.intro .label{color:var(--sabbia)}
.intro h1{margin:12px 0 0;color:var(--oro);font-size:clamp(54px,6.6vw,96px)}
.intro .script{color:var(--blu);font-size:clamp(40px,4.2vw,58px);margin:-2px 0 12px}
.intro p.lead{max-width:34em;margin:0;color:var(--ink);font-size:16px}
.degu{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.card{background:#fff;border:1px solid var(--oro);border-radius:4px;padding:18px 20px 16px}
.degu .script{font-size:36px;color:var(--oro);margin:0 0 6px;white-space:nowrap}
.degu h2{margin:0;font:700 15px/1.3 "Open Sans",sans-serif;color:var(--blu)}
.degu p{margin:4px 0 14px;font-size:13px}
.degu .pp{font:700 13px/1 "Novecento",sans-serif;letter-spacing:.08em;color:var(--ink)}
.degu .pp b{font-size:24px;color:var(--blu);letter-spacing:0}
.degu-note{grid-column:1/-1;margin:2px 0 0;font-size:12px;color:var(--mute)}

/* ── selettore dei due menu ───────────────────────────────── */
.switch{background:#fff;border-bottom:1px solid var(--line)}
.switch .wrap{display:flex;gap:40px;align-items:flex-end}
.switch button{appearance:none;background:none;border:0;border-bottom:3px solid transparent;margin:0;padding:20px 0 12px;cursor:pointer;text-align:left;color:var(--mute)}
.switch button .aracne{display:block;font-size:clamp(28px,3.4vw,42px)}
.switch button .label{display:block;margin-top:6px}
.switch button[aria-selected="true"]{color:var(--oro);border-color:var(--oro)}
.switch button[aria-selected="true"] .label{color:var(--blu)}
.switch .sp{flex:1}
.switch .pdf{padding-bottom:18px;color:var(--blu)}

/* ── corpo del menu ───────────────────────────────────────── */
.menu .wrap{display:grid;grid-template-columns:230px 1fr;gap:56px;padding-top:40px;padding-bottom:64px}
.side{position:sticky;top:110px;align-self:start;max-height:calc(100vh - 130px);overflow:auto;padding-bottom:20px}
.side h5{margin:0 0 10px;color:var(--sabbia)}
.idx{list-style:none;margin:0 0 30px;padding:0;border-left:1px solid var(--line)}
.idx a{display:block;padding:5px 0 5px 14px;margin-left:-1px;border-left:2px solid transparent;color:var(--txt);font-size:14px}
.idx a:hover{color:var(--blu)}
.idx a.on{color:var(--blu);font-weight:600;border-color:var(--blu)}
.filtro label{display:flex;gap:8px;align-items:center;padding:3px 0;font-size:13px;cursor:pointer}
.filtro input{accent-color:var(--blu);margin:0}
.filtro label span{display:inline-block;min-width:16px;color:var(--blu);font-weight:700;font-size:12px}
.filtro-stato{margin:10px 0 0;font-size:12px;color:var(--mute);min-height:1.6em}
.filtro-stato button{background:none;border:0;padding:0;color:var(--blu);font:inherit;text-decoration:underline;cursor:pointer}
.side .links{margin-top:24px;display:grid;gap:8px;font-size:13px}

.panel[hidden],.idx[hidden]{display:none!important}
.menu .wrap>*{min-width:0}
.cols{columns:2;column-gap:56px}
.sec{break-inside:avoid;margin:0 0 40px}
.sec-t{margin:0 0 4px;color:var(--oro);font-size:34px;font-family:"Aracne",sans-serif;font-weight:400;text-transform:uppercase;line-height:1;padding-bottom:10px;border-bottom:1px solid var(--oro)}
.sec-sub{margin:8px 0 0;font-style:italic;font-size:13px}
.dishes{list-style:none;margin:0;padding:0}
.dish{display:grid;grid-template-columns:1fr auto;gap:18px;padding:14px 0;border-bottom:1px dotted #c8c8c8}
.dish h4{margin:0;font:600 15px/1.35 "Open Sans",sans-serif;color:var(--ink)}
.dish p{margin:3px 0 0;font-size:13.5px;line-height:1.5}
.dish .pr{font:600 16px/1.35 "Open Sans",sans-serif;color:var(--blu);white-space:nowrap}
.dish .pr small{font-size:12px;margin-right:3px;font-weight:400}
.al{display:flex;flex-wrap:wrap;gap:4px;margin-top:7px}
.al i{font:700 10px/1 "Open Sans",sans-serif;font-style:normal;color:var(--blu);border:1px solid #9cc9e6;border-radius:9px;min-width:18px;padding:3px 4px;text-align:center}
.mk{display:inline-block;margin-left:6px;width:17px;height:17px;border-radius:50%;background:var(--blu);color:#fff;font:700 10px/17px "Open Sans",sans-serif;text-align:center;text-decoration:none;vertical-align:2px;cursor:help}
.st{color:var(--blu);font-weight:700;cursor:help}
.dish.out{display:none}
.sec-empty{display:none;margin:12px 0 0;font-size:13px;color:var(--mute);font-style:italic}
.sec.vuota .sec-empty{display:block}

/* ── fascia allergeni ─────────────────────────────────────── */
.avviso{background:var(--blu);color:#fff}
.avviso .wrap{padding-top:34px;padding-bottom:34px}
.avviso .riga{display:flex;gap:18px;align-items:baseline;flex-wrap:wrap}
.avviso .aracne{font-size:clamp(26px,3vw,38px)}
.avviso summary{margin-top:18px;cursor:pointer;font:500 12px/1 "Novecento",sans-serif;letter-spacing:.12em;text-transform:uppercase;list-style:none}
.avviso summary::-webkit-details-marker{display:none}
.avviso summary::before{content:"+ "}
.avviso details[open] summary::before{content:"− "}
.tab-al{list-style:none;padding:0;margin:22px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px 40px;font-size:13px}
.tab-al b{display:block;font-weight:600}
.tab-al i{font-style:normal;display:inline-block;min-width:22px;color:var(--oro)}
.legenda{margin:24px 0 0;padding:18px 0 0;border-top:1px solid rgba(255,255,255,.35);display:grid;grid-template-columns:repeat(3,1fr);gap:14px 40px;font-size:13px}
.legenda .mk{background:#fff;color:var(--blu);margin:0 8px 0 0}
.legenda .st{color:#fff;margin-right:8px}

/* ── titoli con i pesci ───────────────────────────────────── */
.titolo{display:flex;align-items:center;gap:18px;margin:0 0 34px}
.titolo h2{margin:0;color:var(--oro);font-size:clamp(36px,4.4vw,58px)}
.titolo img{width:46px}

.firma{padding:84px 0 40px}
.firma .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.firma figure{margin:0}
.firma figure img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:4px}
.firma h3{margin:20px 0 8px;color:var(--blu);font-size:28px}
.firma p{margin:0;font-size:14px}

.motto{padding:56px 0}
.motto .wrap{display:flex;align-items:center;gap:20px}
.motto p{margin:0;color:var(--blu);font-size:clamp(26px,3.2vw,42px)}
.motto img{width:52px;flex:none}

.racconti{padding:0 0 84px}
.racconti .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.racconti a{display:block;color:inherit}
.racconti img{width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:4px}
.racconti h3{margin:18px 0 6px;color:var(--oro);font-size:30px}
.racconti p{margin:0;font-size:14px}
.racconti .label{color:var(--blu);display:inline-block;margin-top:12px}


/* ── contatti ─────────────────────────────────────────────── */
.contatti{background:var(--blu);color:#fff;padding:64px 0}
.contatti .wrap{display:grid;grid-template-columns:200px repeat(3,1fr);gap:40px;align-items:start}
.contatti a{color:#fff}
.contatti .label{opacity:.75;margin-bottom:10px}
.contatti p{margin:0;font-size:15px}
.contatti .cta{background:#fff;color:var(--blu);margin-top:20px}
.fondo{background:#0073b4;color:rgba(255,255,255,.8);font-size:12px}
.fondo .wrap{display:flex;gap:20px;min-height:44px;align-items:center}
.fondo a{color:#fff}
.fondo .sp{flex:1}

/* ── tablet / telefono ────────────────────────────────────── */
@media (max-width:1080px){
  .nav ul{display:none}
  .nav .cta{margin-left:auto}
  .intro .wrap{grid-template-columns:1fr;gap:32px;align-items:start}
  .cols{columns:1}
}
@media (max-width:860px){
  html{scroll-padding-top:150px}
  .menu .wrap{grid-template-columns:minmax(0,1fr);gap:0;padding-top:0}
  .side{position:sticky;top:72px;z-index:30;max-height:none;overflow:visible;background:#fff;margin:0 calc(var(--gut) * -1);padding:0 var(--gut);border-bottom:1px solid var(--line)}
  .side h5,.side .links{display:none}
  .idx{display:flex;gap:18px;overflow-x:auto;border:0;margin:0;padding:12px 0;scrollbar-width:none}
  .idx::-webkit-scrollbar{display:none}
  .idx a{white-space:nowrap;padding:4px 0;margin:0;border:0;border-bottom:2px solid transparent;font-size:13px}
  .idx a.on{border-color:var(--blu)}
  .side details{padding:0 0 12px}
  .side details summary{cursor:pointer;color:var(--blu);font:500 11px/1 "Novecento",sans-serif;letter-spacing:.12em;text-transform:uppercase}
  .filtro{display:grid;grid-template-columns:1fr 1fr;margin-top:10px}
  .panel{padding-top:28px}
  .nav .wrap{min-height:72px}
  .nav .logo img{width:92px}
  .topbar .addr{display:none}
  .firma .grid,.racconti .grid{grid-template-columns:1fr}
  .tab-al,.legenda{grid-template-columns:1fr}
  .contatti .wrap{grid-template-columns:1fr 1fr}
  .switch .pdf{display:none}
}
@media (min-width:861px){ .side details{display:block} .side details summary{display:none} }
@media (max-width:520px){
  .degu{grid-template-columns:1fr}
  .switch .wrap{gap:22px}
  .switch button .aracne{font-size:25px}
  .switch button .label{font-size:9px}
  .contatti .wrap{grid-template-columns:1fr}
  .fondo .wrap{flex-wrap:wrap;padding-top:10px;padding-bottom:10px;gap:8px 16px}
  .titolo img,.motto img{width:36px}
}

/* ── home: introduzione ───────────────────────────────────── */
.apertura{background:#eee url(img/background-header.png) repeat center top}
.apertura .wrap{display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:center;padding-top:56px;padding-bottom:56px}
.apertura .label{color:var(--sabbia)}
.apertura h1{margin:14px 0 0;color:var(--oro);font-size:clamp(48px,5.8vw,86px)}
@media (min-width:1081px){.apertura h1{white-space:nowrap}}
.apertura .script{color:var(--blu);font-size:clamp(42px,4.4vw,62px);margin:0 0 16px .08em}
.apertura .lead{margin:0;color:var(--ink);font-size:16.5px;max-width:30em}
.azioni{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.cta-2{background:transparent;color:var(--blu);box-shadow:inset 0 0 0 2px var(--blu)}
.cta-2:hover{background:var(--blu);color:#fff}
.ap-foto{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px}

.capitolo{padding:96px 0}
.capitolo .num{color:var(--sabbia);display:block;margin-bottom:14px}
.capitolo h2{margin:0 0 24px;color:var(--oro);font-size:clamp(38px,4.4vw,60px);max-width:14em}
.capitolo p{font-size:15.5px;max-width:36em}
.duo{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start}
.duo-inv{grid-template-columns:1fr 1.1fr}
.duo .foto{width:100%;aspect-ratio:534/488;object-fit:cover;border-radius:4px;position:sticky;top:120px}
.duo-inv .foto{aspect-ratio:4/3}
.fatti{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-top:1px solid var(--oro);padding-top:22px}
.fatti li{font-size:13.5px}
.fatti b{display:block;color:var(--blu);font-size:28px;margin-bottom:6px}

.storia2{background:var(--fondo)}
.intro-storia{font-size:17px!important;color:var(--ink);max-width:40em!important;margin:0 0 48px}
.tappe{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:36px}
.tappe li{border-top:1px solid var(--oro);padding-top:18px}
.tappe .n{display:block;color:var(--oro);font-size:44px}
.tappe h3{margin:8px 0 10px;color:var(--blu);font-size:28px}
.tappe p{font-size:14px;margin:0}

.voce{display:block;padding:20px 0;border-bottom:1px dotted #c8c8c8;color:inherit}
.voce:first-of-type{border-top:1px solid var(--oro);margin-top:28px}
.voce .aracne{display:block;color:var(--blu);font-size:32px}
.voce .aracne::after{content:" →";font-family:"Open Sans",sans-serif;font-size:20px}
.voce .sezioni{display:block;margin-top:6px;font-size:13.5px}
.voce:hover .aracne{color:var(--oro)}
.degu-riga{margin:26px 0 28px}
.degu-riga .script{color:var(--oro);font-size:38px;margin-right:6px}
.degu-riga b{color:var(--blu)}
.home .firma{padding-top:0}

@media (max-width:1080px){
  .apertura .wrap,.duo,.duo-inv{grid-template-columns:1fr;gap:36px}
  .duo .foto{position:static;aspect-ratio:3/2}
  .duo-inv .foto{order:2}
  .tappe{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .capitolo{padding:64px 0}
  .tappe,.fatti{grid-template-columns:1fr}
  .azioni .cta{flex:1;text-align:center}
}

/* ── invito al menu ───────────────────────────────────────── */
.fascia-menu{display:block;background:var(--blu);color:#fff}
.fascia-menu:hover{background:var(--blu-2)}
.fascia-menu .wrap{display:flex;align-items:center;gap:32px;min-height:128px}
.fascia-menu .aracne{font-size:clamp(44px,5.4vw,76px);white-space:nowrap}
.fascia-menu .fm-voci{flex:1;font-size:12px;opacity:.9}
.fascia-menu .fm-freccia{font-size:44px;line-height:1;transition:transform .2s}
.fascia-menu:hover .fm-freccia{transform:translateX(8px)}
.barra-menu{display:none}
@media (max-width:600px){
  .fascia-menu .wrap{flex-wrap:wrap;gap:6px 16px;padding-top:22px;padding-bottom:22px;min-height:0}
  .fascia-menu .fm-voci{order:3;flex-basis:100%}
  .fascia-menu .fm-freccia{margin-left:auto}
  .barra-menu{display:grid;grid-template-columns:2fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:50}
  .barra-menu a{padding:17px 16px calc(17px + env(safe-area-inset-bottom));font:700 12px/1 "Novecento",sans-serif;letter-spacing:.14em;text-transform:uppercase;text-align:center;background:var(--blu);color:#fff}
  .barra-menu a+a{background:#fff;color:var(--blu);border-top:1px solid var(--line)}
  .home ~ footer .fondo{padding-bottom:52px}
}

/* ══ Stile del menu Inverno 2026/27: carta paglia, Playfair, Barlow Condensed, baccalà oro ══ */
@font-face{font-family:"Nunito Sans";src:url(fonts/NunitoSans-Regular.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:"Nunito Sans";src:url(fonts/NunitoSans-ExtraBold.woff) format("woff");font-weight:700 800;font-display:swap}
@font-face{font-family:"Nunito Sans";src:url(fonts/NunitoSans-Italic.woff) format("woff");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Playfair Display";src:url(fonts/PlayfairDisplay-500-italic.woff) format("woff");font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:"Playfair Display";src:url(fonts/PlayfairDisplay-600-italic.woff) format("woff");font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:"Playfair Display";src:url(fonts/PlayfairDisplay-700-normal.woff) format("woff");font-weight:700;font-display:swap}
:root{
  --carta:#f3ecdc; --carta-2:#ebe0c4; --oro-ink:#c99a2e; --evidenza:#f7e9c6;
  --paglia:var(--carta) url(img/carta-paglia.svg) repeat;
  --punti:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7' height='4'%3E%3Ccircle cx='3.5' cy='2' r='1.4' fill='%23c99a2e'/%3E%3C/svg%3E") 0 50%/7px 4px repeat-x;
}
body{background:var(--paglia);font-family:"Nunito Sans",system-ui,sans-serif;color:#3d3a33}
.label{font:600 11.5px/1.4 "Barlow Condensed",sans-serif;letter-spacing:.24em}
.aracne{font-family:"Playfair Display",serif;font-style:italic;font-weight:600;text-transform:none;letter-spacing:0;line-height:1.05}
.script{font-family:"Playfair Display",serif;font-style:italic;font-weight:500}
.cta,.barra-menu a{font-family:"Barlow Condensed",sans-serif;font-weight:600;font-size:13px;letter-spacing:.2em}
.nav ul a,.avviso summary,.side details summary{font-family:"Barlow Condensed",sans-serif;font-weight:600;letter-spacing:.18em}

/* fondi: carta al posto di bianco e grigio */
.nav,.switch{background:var(--paglia)}
.nav{border-bottom:0;box-shadow:0 1px 0 rgba(201,154,46,.45)}
.intro,.apertura{background:transparent}
.storia2{background:var(--carta-2) url(img/carta-paglia.svg) repeat;background-blend-mode:multiply}
.switch{border-bottom:0;position:relative}
.switch::after,.nav::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:4px;background:var(--punti)}
.nav::after{display:none}

/* riquadri «in evidenza» come in stampa: fondo dorato e bordo a puntini */
.card{background:var(--evidenza);border:2px dotted var(--oro-ink);border-radius:0}
.degu .script{font-size:30px}
.degu h2{font:600 13px/1.35 "Barlow Condensed",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#1c1c1b}
.degu .pp{font-family:"Barlow Condensed",sans-serif;font-weight:600;letter-spacing:.14em}
.degu .pp b{font-family:"Barlow Condensed",sans-serif;font-weight:600;letter-spacing:.06em;color:#1c1c1b}

/* menu: titoli Playfair con trattino oro pieno, piatti e prezzi in Barlow maiuscolo */
.sec-t{font-family:"Playfair Display",serif;font-style:italic;font-weight:600;text-transform:none;color:var(--blu);font-size:36px;line-height:1.05;border-bottom:0;position:relative;padding-bottom:12px}
.sec-t::after{content:"";position:absolute;left:0;bottom:0;width:56px;height:3px;background:var(--oro-ink)}
#pan-p .sec-t{color:#8e1b1f}
.dish{border-bottom:0;background:var(--punti);background-position:0 100%;padding-bottom:16px}
.dish h4{font:600 16px/1.3 "Barlow Condensed",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#1c1c1b}
.dish .pr{font:600 17px/1.3 "Barlow Condensed",sans-serif;letter-spacing:.1em;color:#1c1c1b}
.dish p{font-size:14px}
.voce{border-bottom:0;background:var(--punti);background-position:0 100%}
.voce:first-of-type{border-top:0;box-shadow:inset 0 3px 0 var(--oro-ink)}
.tappe li,.fatti{border-top:0;box-shadow:inset 0 3px 0 var(--oro-ink)}
.tappe .n{font-family:"Playfair Display",serif}
@media (max-width:860px){ .side{background:var(--paglia)} }

/* ── home: il baccalà oro che attraversa la sua fascia (mai sopra i testi) ── */
.acquario{position:relative;height:clamp(150px,18vw,230px);overflow:hidden;--carta:#f3ecdc;--oro:#c99a2e}
.acquario::before,.acquario::after{content:"";position:absolute;left:var(--gut);right:var(--gut);height:4px;background:var(--punti)}
.acquario::before{top:0}.acquario::after{bottom:0}
.acquario svg{position:absolute;top:50%;height:72%;width:auto;aspect-ratio:1000/420;left:100%;
  animation:nuota 26s linear infinite;transform:translateY(-50%)}
.acquario svg use{animation:onda 3.2s ease-in-out infinite;transform-origin:50% 50%;transform-box:fill-box}
@keyframes nuota{from{left:100%}to{left:calc(-1 * clamp(360px,43vw,550px))}}
@keyframes onda{0%,100%{transform:translateY(0) rotate(0)}25%{transform:translateY(-4%) rotate(-1.2deg)}75%{transform:translateY(4%) rotate(1.2deg)}}
@media (prefers-reduced-motion:reduce){
  .acquario svg{animation:none;left:auto;right:-18%}
  .acquario svg use{animation:none}
}

/* ── pagina contatti ──────────────────────────────────────── */
.ct-apertura .wrap{padding-top:56px;padding-bottom:40px}
.ct-apertura .label{color:var(--sabbia)}
.ct-apertura h1{margin:14px 0 10px;color:var(--oro);font-size:clamp(48px,6vw,86px)}
.ct-apertura .lead{margin:0;max-width:34em;color:var(--ink);font-size:16.5px}
.ct-mappa .wrap{display:grid;grid-template-columns:1.6fr 1fr;gap:48px;align-items:start;padding-top:28px;padding-bottom:64px;position:relative}
.ct-mappa .wrap::before{content:"";position:absolute;left:var(--gut);right:var(--gut);top:0;height:4px;background:var(--punti)}
.mappa{margin:0}
.mappa iframe{display:block;width:100%;aspect-ratio:4/3;border:0;box-shadow:0 0 0 2px var(--oro-ink);filter:sepia(.25) saturate(.9)}
.mappa figcaption{display:flex;justify-content:space-between;margin-top:10px;font-size:13px}
.mappa figcaption span{color:var(--mute)}
.ct-info h2,.ct-scrivi h2{margin:0 0 14px;color:var(--blu);font-size:clamp(32px,3.4vw,44px);position:relative;padding-bottom:12px}
.ct-info h2::after,.ct-scrivi h2::after{content:"";position:absolute;left:0;bottom:0;width:56px;height:3px;background:var(--oro-ink)}
.ct-indirizzo{margin:0 0 26px;font:600 20px/1.4 "Barlow Condensed",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#1c1c1b}
.ct-info h3{margin:0 0 8px;color:var(--sabbia)}
.ct-come{list-style:none;margin:0 0 20px;padding:0}
.ct-come li{padding:10px 0;background:var(--punti);background-position:0 100%;font-size:14.5px}
.ct-come b{font:600 13px/1 "Barlow Condensed",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#1c1c1b;margin-right:4px}
.ct-link{font-size:14px}
.ct-scrivi{padding:0 0 96px}
.ct-scrivi .wrap{display:grid;grid-template-columns:1.6fr 1fr;gap:48px;align-items:start;padding-top:56px;position:relative}
.ct-scrivi .wrap::before{content:"";position:absolute;left:var(--gut);right:var(--gut);top:0;height:4px;background:var(--punti)}
.ct-intro{margin:0 0 24px;max-width:36em}
.modulo .campi{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px}
.modulo label{display:flex;flex-direction:column;gap:6px;font:600 12px/1.2 "Barlow Condensed",sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#1c1c1b}
.modulo .largo{grid-column:1/-1}
.modulo input,.modulo select,.modulo textarea{font:400 15px/1.4 "Nunito Sans",sans-serif;letter-spacing:0;text-transform:none;color:#1c1c1b;
  background:rgba(255,255,255,.55);border:0;border-bottom:2px solid var(--oro-ink);border-radius:0;padding:10px 12px;width:100%}
.modulo textarea{resize:vertical}
.modulo input:focus,.modulo select:focus,.modulo textarea:focus{outline:2px solid var(--blu);outline-offset:1px;background:#fff}
.modulo .consenso{display:block;margin:20px 0;padding-left:26px;text-indent:-26px;font:400 13px/1.5 "Nunito Sans",sans-serif;letter-spacing:0;text-transform:none;color:var(--txt)}
.modulo .consenso input{width:auto;margin:0 10px 0 0;vertical-align:-2px;accent-color:var(--blu)}
.modulo button{border:0;cursor:pointer}
.esito{margin:14px 0 0;font-size:14px;color:var(--blu);min-height:1.5em}
.ct-prenota .riquadro{background:var(--evidenza);border:2px dotted var(--oro-ink);padding:22px 24px 24px}
.ct-prenota .script{margin:0 0 6px;color:var(--oro);font-size:32px}
.ct-prenota .riquadro p{margin:0 0 12px}
.ct-prenota .tel{font:600 20px/1.5 "Barlow Condensed",sans-serif;letter-spacing:.1em}
.ct-prenota .tel a{color:#1c1c1b}
.ct-prenota .cta{margin-top:6px}
.ct-altro{margin:26px 0 6px;color:var(--sabbia)}
@media (max-width:860px){
  .ct-mappa .wrap,.ct-scrivi .wrap{grid-template-columns:1fr;gap:32px}
  .modulo .campi{grid-template-columns:1fr}
  .mappa iframe{aspect-ratio:1/1}
  .contatti-pag ~ footer .fondo{padding-bottom:52px}
}

/* senza la Bottega: due voci in «fatti» e due riquadri in «racconti» */
.fatti{grid-template-columns:repeat(2,1fr)}
.racconti .grid{grid-template-columns:repeat(2,1fr)}
.racconti img{aspect-ratio:3/2}
@media (max-width:860px){ .racconti .grid{grid-template-columns:1fr} }
@media (max-width:600px){ .fatti{grid-template-columns:1fr} }

/* ── apertura home: mosaico dei piatti (foto © La Balena) ── */
.ap-piatti{display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}
.ap-piatti img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;box-shadow:0 0 0 2px var(--oro-ink)}
.ap-piatti img:nth-child(1){object-position:60% 50%}
.ap-credito{grid-column:1/-1;margin:2px 0 0;font:600 10.5px/1 "Barlow Condensed",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.ct-foto{width:100%;aspect-ratio:3/2;object-fit:cover;margin-bottom:18px;box-shadow:0 0 0 2px var(--oro-ink)}
/* apertura: i piatti hanno più spazio, il titolo può andare a capo */
@media (min-width:1081px){
  .apertura .wrap{grid-template-columns:1fr 1.15fr;gap:56px;padding-top:44px;padding-bottom:44px}
  .apertura h1{white-space:normal}
}

/* selettore lingua: «it en fr es de», minuscolo e piccolo */
.lingue{display:flex;gap:10px;margin-left:8px;font:500 12px/1 "Barlow Condensed",sans-serif;letter-spacing:.06em;text-transform:lowercase}
.lingue a{color:rgba(255,255,255,.72)}
.lingue a:hover{color:#fff}
.lingue a[aria-current]{color:#fff;text-decoration:underline;text-underline-offset:3px}
@media (max-width:860px){ .topbar .wrap{gap:14px} .lingue{margin-left:auto} }
/* degustazioni: due colonne che non si allargano oltre il margine (de, fr); su telefono una sola */
.degu{grid-template-columns:repeat(2,minmax(0,1fr))}
.degu .script{white-space:normal}
@media (max-width:600px){ .degu{grid-template-columns:minmax(0,1fr)} }
/* lingue con parole lunghe (de): le colonne non si allargano oltre lo schermo */
.duo>*,.apertura .wrap>*,.ct-mappa .wrap>*,.ct-scrivi .wrap>*{min-width:0}
/* titoli: niente sillabazione né parole spezzate; su telefono i caratteri si riproporzionano (in fondo) */
p,li,a,label{overflow-wrap:break-word}

/* ── privacy e cookie ─────────────────────────────────────── */
.pv-testo .wrap{padding-top:8px;padding-bottom:80px}
.pv-testo h2{margin:40px 0 12px;color:var(--oro);font-size:clamp(28px,3vw,38px)}
.pv-testo p{margin:0 0 12px;max-width:44em;font-size:15.5px;color:var(--ink)}
.pv-testo .pv-data{margin-top:48px;font-size:13px;color:var(--mute)}

/* ── il vero Baccalà alla napoletana (Baccalajuoli) ────────── */
.simbolo{display:inline-block;height:1.3em;width:auto;vertical-align:-.3em;margin-right:.4em}
.vero{border-top:2px dotted var(--oro);border-bottom:2px dotted var(--oro)}
.vero .wrap{display:flex;align-items:center;gap:44px;padding-top:40px;padding-bottom:40px}
.vero-logo img{width:190px;height:auto;display:block}
.vero-frase{margin:0 0 14px;font:italic 700 clamp(22px,2.3vw,30px)/1.25 "Playfair Display",serif;color:var(--blu)}
.vero .label{color:var(--oro)}
.vero-menu{break-inside:avoid;margin:0 0 40px;padding:24px 0;border-top:2px dotted var(--oro);border-bottom:2px dotted var(--oro)}
.vero-menu img:not(.simbolo){width:150px;height:auto;display:block;margin-bottom:12px}
.vero-menu p{margin:0;font:italic 700 18px/1.35 "Playfair Display",serif;color:var(--blu)}
.dish h4 .simbolo{height:1.35em;vertical-align:-.35em;margin-right:.35em}
@media (max-width:600px){
  .vero .wrap{flex-direction:column;align-items:flex-start;gap:20px}
  .vero-logo img{width:150px}
}

/* i numeri di telefono non vanno mai a capo */
a[href^="tel:"]{white-space:nowrap}
/* su telefono la barra blu tiene solo telefono e lingue (Facebook e Instagram restano nel piede) */
@media (max-width:600px){ .topbar a[href*="facebook"],.topbar a[href*="instagram"]{display:none} .topbar .sp{display:none} }
/* su telefono i titoli dei capitoli scalano con lo schermo: anche le parole lunghe (de) stanno intere */
@media (max-width:600px){ .capitolo h2{font-size:clamp(28px,8.4vw,38px)} }
