/* Cascina Vecchia: the venue's own layer on top of assets/style.css (build.py links it after the template's styles). */
@font-face{font-family:'DM Serif Display';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/dm-serif-display-latin.woff2') format('woff2')}
@font-face{font-family:'DM Serif Display';font-style:italic;font-weight:400;font-display:swap;src:url('fonts/dm-serif-display-italic-latin.woff2') format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/montserrat-latin.woff2') format('woff2')}
/* =====================================================================================
   Lane pizzeria-film (template/STYLES.md). Everything comes from their own material:
   - the colours from their December poster: the coral red of "SIAMO APERTI" (darkened to --brown #c23a2c for text on
     flour white; --tomato is the poster's own red for large areas) and its apricot band (--peach #e3a26a); the oven's
     char for the dark parts, flour white for the light ones;
   - the type: headings in DM Serif Display (a sturdy display serif, like the lettering on a pizzeria sign), text and
     labels in Montserrat, the poster's bold capitals; the kickers in spaced capitals with a bar, as in their logo's
     "RISTORANTE | PIZZERIA".
   Signatures: the film of the farmhouse with an ember glow at the foot of the opening, a red awning band under it,
   the five doughs as numbered dough balls by the oven, and the menu on floured paper with each price in a small
   round "pizza" of red.
   ===================================================================================== */
:root{--brick:#b8352a;--tomato:#e2483b;--char:#1a1614;--flour:#f5ede1}
body{font-family:var(--sans);font-weight:400}
h1,h2,h3{font-family:var(--serif);font-style:normal;font-weight:400;letter-spacing:-.005em;line-height:1.04;text-transform:none}
h2{font-size:clamp(2.5rem,5.6vw,4.4rem);color:var(--ink)}h3{font-size:1.6rem}.dark h2,.plateau h2,.res-card h2{color:#fff}
h2 em,.now-h em{font-style:italic;font-weight:400;color:var(--brick);opacity:1}
.dark h2 em,.res-card h2 em,.now-h em,.plateau h2 em{color:var(--peach)}
.kicker{font:700 .72rem/1.3 var(--sans);letter-spacing:.3em;color:var(--brick);display:inline-flex;align-items:center;gap:.8em}
.kicker::before{content:"";width:22px;height:2px;background:currentColor}
.dark .kicker,.res-card .kicker,.plateau .kicker{color:var(--peach)}
p.big{font:400 clamp(1.08rem,1.8vw,1.28rem)/1.7 var(--sans);color:var(--ink)}
.btn,.btn-ul{font-family:var(--sans);font-weight:700;letter-spacing:.16em}
.btn-ul.big{font:700 .9rem/1.4 var(--sans);color:inherit;letter-spacing:.18em}
.sand .btn-ul:hover,.light-w .btn-ul:hover{color:var(--brick)}
.btn{background:var(--brown);color:#fff;border-color:var(--brown);border-radius:999px}.btn:hover{background:transparent;color:var(--brown);border-color:var(--brown)}
.dark .btn,.res-card .btn,.map-bar .btn,.fab{background:var(--peach);color:var(--char);border-color:var(--peach)}
.dark .btn:hover,.res-card .btn:hover,.map-bar .btn:hover{background:transparent;color:var(--peach);border-color:var(--peach)}
.fab{border-radius:999px}
.glow,.dark{background:var(--deep)}
.sand{background:var(--flour)}

/* header: their framed farmhouse (favicon.svg), on the oven's char once scrolled */
.top.solid{background:rgba(26,22,20,.96);box-shadow:0 2px 0 var(--tomato)}
.mark{width:auto}.mark svg{display:block;width:54px;height:auto;transition:width .35s;color:#fff}.top.solid .mark svg{width:46px;color:var(--peach)}
#nav{background:var(--char);font:400 clamp(2rem,5.5vw,3.3rem)/1.15 var(--serif)}
.langs a,.top-r .btn-ul{font-family:var(--sans)}
/* scrolled, the pill header is see-through over the cream: their logo on its own warm grey, white on #8d8379 as on
   their LeggiMenu menu (the corner of research-pack/assets/leggimenu-logo.jpg), never recoloured (the user, 3 Nov 2026) */
.cb-header-pills.solid .pl-logo{top:8px;padding:6px 12px;border-radius:14px;background:#8d8379;box-shadow:0 6px 18px rgba(26,22,20,.16)}

/* hero: their whole logo in white over the film of the farmhouse (media.hero.video, video.py; the photo under it is its
   first frame). The foot of the opening glows like the mouth of the oven. */
.hero h1{flex-direction:column;align-items:center}.hero h1 img{display:block;width:min(350px,72vw);height:auto}
.e-hero-bg img,.e-hero-bg .hero-video{object-position:50% 62%}
.e-hero-bg::after{background:linear-gradient(180deg,rgba(26,22,20,.66) 0,rgba(26,22,20,.36) 36%,rgba(26,22,20,.5) 64%,rgba(26,22,20,.92) 100%),
  radial-gradient(120% 55% at 50% 112%,rgba(226,72,59,.55) 0,rgba(227,162,106,.22) 38%,transparent 70%)}
.hero-tag{font:700 clamp(.74rem,1.3vw,.86rem)/1.4 var(--sans);letter-spacing:.36em;text-transform:uppercase;margin-top:1.2rem;color:#fff3e6;text-shadow:0 1px 10px rgba(0,0,0,.6)}
.now-h{font:400 clamp(1.6rem,3vw,2.3rem)/1.12 var(--serif);text-shadow:0 1px 12px rgba(0,0,0,.5)}
.now-p{text-shadow:0 1px 10px rgba(0,0,0,.6)}
/* the opening's buttons: a red pill to book, a flour-white outline for the menu (not the underlined links of the other
   evening sites), and the open-now line in a small ticket */
.hero .btn-ul.big,.hero .now-cta .btn-ul{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 28px;border-radius:999px;
  font:700 .82rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;border:2px solid transparent;transition:.25s;margin:0}
.hero .btn-ul.big{background:var(--tomato);color:#fff;border-color:var(--tomato);box-shadow:0 8px 24px rgba(226,72,59,.35)}
.hero .btn-ul.big:hover{background:#fff;color:var(--brick);border-color:#fff}
.hero .now-cta .btn-ul:not(.big){background:rgba(255,250,242,.08);color:#fff;border-color:rgba(255,250,242,.75)}
.hero .now-cta .btn-ul:not(.big):hover{background:var(--flour);color:var(--char);border-color:var(--flour)}
.hero .now-cta{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center}
.hero .status{display:inline-block;background:rgba(26,22,20,.62);border:1px solid rgba(227,162,106,.45);border-radius:999px;padding:7px 16px;font:600 .82rem/1.3 var(--sans);letter-spacing:.02em}
.hero-info{background:none;border-top:1px solid rgba(245,237,225,.18)}
.hero-info .lbl{font-family:var(--sans);font-weight:700}
.hero-info .val{font:500 1rem/1.35 var(--sans)}

/* the band under the hero: a red awning with the poster's bold capitals */
.e-band{background:var(--tomato);color:#fff;border:0}
.e-band p span{font:800 clamp(1rem,1.8vw,1.35rem)/1 var(--sans);text-transform:uppercase;letter-spacing:.12em;color:#fff;font-style:normal}
.e-band p span::after{color:var(--char);opacity:.6}

/* the three moments: flour-white cards with a red top, the middle one red */
.mo{border:0;border-top:4px solid var(--tomato);background:var(--white);box-shadow:0 10px 30px rgba(31,27,24,.07);border-radius:0 0 18px 18px}
.mo-ic{stroke:var(--brick)}
.mo .kicker::before{display:none}
.moments .mo:nth-child(2){background:var(--brown);border-color:var(--peach);color:#fff}
.moments .mo:nth-child(2) h3,.moments .mo:nth-child(2) p,.moments .mo:nth-child(2) .kicker{color:#fff}
.moments .mo:nth-child(2) .mo-ic{stroke:#fff}

/* the doughs, by the oven: char with an ember glow, the five doughs as numbered dough balls */
.plateau{background:radial-gradient(90% 70% at 85% 100%,rgba(226,72,59,.28) 0,rgba(227,162,106,.1) 40%,transparent 70%),var(--char)}
.pl-ph img{object-position:50% 55%}
.pl-l li{grid-template-columns:3.4rem 1fr;align-items:start;border-top-color:rgba(245,237,225,.14)}
.pl-l li:last-child{border-bottom-color:rgba(245,237,225,.14)}
.pl-l li::before{content:counter(pl);width:2.9rem;height:2.9rem;border-radius:50%;
  display:grid;place-items:center;font:400 1.35rem/1 var(--serif);color:var(--char);
  background:radial-gradient(circle at 35% 30%,#fff7ea 0,#f1dcc0 55%,#d9b48a 100%);box-shadow:inset 0 -3px 6px rgba(150,95,45,.35),0 4px 14px rgba(0,0,0,.35)}
.pl-l h3{font-size:1.45rem;color:#fff}
.pl-l p{font-size:.92rem}
.e-ghost{font-family:var(--serif);font-style:normal;color:rgba(227,162,106,.05)}

/* ethos */
.ethos-l li{border-top:2px solid var(--tomato)}
.ethos-l h3{color:var(--brick)}

/* menu: on floured paper, not the dark page of the other evening sites. Pizza names in the sign's serif, the
   ingredients in Montserrat, each price in a small red round. */
.sec.menu{background:radial-gradient(circle at 12% 18%,rgba(255,255,255,.7) 0,transparent 22%),radial-gradient(circle at 88% 6%,rgba(255,255,255,.55) 0,transparent 18%),
  radial-gradient(circle at 70% 82%,rgba(255,255,255,.5) 0,transparent 20%),var(--flour);color:var(--ink)}
.sec.menu h2,.sec.menu h3{color:var(--ink)}.sec.menu h2 em{color:var(--brick)}.sec.menu .kicker{color:var(--brick)}
.sec.menu p,.sec.menu .muted,.sec.menu .note,.sec.menu .alg,.sec.menu .pf-note{color:var(--muted)}
.sec.menu a{color:var(--brick)}
.menu-langs a{color:var(--muted)!important}.menu-langs a[aria-current="true"]{color:var(--brick)!important}
.menu-jump{background:color-mix(in srgb,var(--flour) 94%,transparent)}
.menu-jump a{font:700 .7rem/1 var(--sans);letter-spacing:.14em;color:var(--ink)!important;border-color:rgba(31,27,24,.28)!important;border-radius:999px}
.menu-jump a.on,.menu-jump a[aria-current="true"]{background:var(--tomato)!important;border-color:var(--tomato)!important;color:#fff!important}
.chip{color:var(--ink);border-color:rgba(31,27,24,.28)}
.chip[aria-pressed="true"]{background:var(--tomato);border-color:var(--tomato);color:#fff}
/* the cards flow in two columns instead of a grid of rows, so the short ones (the doughs, the starters) do not sit
   beside the long pizza list with half a card of empty paper (the user's OK, 26 Oct 2026) */
@media (min-width:901px){.menu-grid{display:block;columns:2;column-gap:40px}.menu-grid .menu-col{break-inside:avoid;margin:0 0 36px;display:block}}
.menu-col{background:var(--white);padding:26px 28px 14px;border-radius:4px;box-shadow:0 1px 0 rgba(31,27,24,.06),0 14px 34px rgba(31,27,24,.06)}
.menu-col h3{font-size:2rem;color:var(--ink);border-bottom:0;padding-bottom:.5rem;position:relative}
.menu-col h3::after{content:"";position:absolute;left:0;bottom:0;width:56px;height:4px;border-radius:2px;background:var(--tomato)}
.menu-col li{border-bottom:1px dashed rgba(31,27,24,.16);align-items:center}
.dish{font:400 1.22rem/1.25 var(--serif);color:var(--ink)}
.note{font-size:.86rem;opacity:1}
.price{font:700 .86rem/1 var(--sans);color:#fff;background:var(--brown);min-width:2.9rem;height:2.9rem;padding:0 .35rem;border-radius:999px;
  display:inline-grid;place-items:center;white-space:nowrap;font-variant-numeric:lining-nums tabular-nums;box-shadow:inset 0 -3px 0 rgba(0,0,0,.14)}
.price-2 small{color:var(--muted)}
#m-impasti .price{background:var(--peach);color:var(--char)}
.tag-veg{color:#2f6b3a}
.dish-day,.dd{background:var(--white)}

/* rooms (sections.rooms) */
.rooms .rm-facts b{font-family:var(--serif);font-style:normal;color:var(--brick)}
.rooms .rm-ask{box-shadow:0 14px 40px rgba(31,27,24,.08);border-top:4px solid var(--tomato);border-radius:0 0 14px 14px}
.rm-rates li span:last-child{font-weight:700;color:var(--brick)}

/* contact */
.res-card{background:var(--char)}
.big-m{display:grid;place-items:center;width:120px;height:96px;color:var(--flour);border-radius:0}.big-m .mk{width:112px;height:auto}
.map-bar{background:rgba(26,22,20,.93)}.map-bar strong{font:400 1.4rem var(--serif)}
.hours li{border-bottom-color:rgba(245,237,225,.2)}
.hours,.hero-info .val,.rm-facts b{font-variant-numeric:lining-nums}

/* footer: the logo again, small, over a red rule */
footer{background:var(--char);color:rgba(245,237,225,.66);border-top:4px solid var(--tomato)}
footer img{display:block;width:min(200px,56vw);height:auto;margin:0 auto 1.6rem}
footer a{color:inherit}

.notice{background:var(--peach);color:var(--char)}
@media (max-width:900px){.mark svg{width:46px}.menu-col{padding:20px 18px 10px}}
@media (max-width:600px){.pl-l li{grid-template-columns:3rem 1fr}.pl-l li::before{width:2.5rem;height:2.5rem;font-size:1.15rem}.price{min-width:2.6rem;height:2.6rem;font-size:.8rem}}
/* header: the rooms beside Prenota (venue.json header_links) */
.top-r .top-x{margin-right:22px}
/* the intro row has two photos (the kitchen): two equal frames side by side */
.e-room-l{grid-template-columns:1fr 1fr;grid-auto-rows:clamp(200px,30vw,420px)}
.e-room-l li:first-child{grid-row:span 1;grid-column:auto}
@media (max-width:700px){.e-room-l{grid-auto-rows:clamp(140px,44vw,240px)}}

/* page.html (composed 29 Oct 2026). The clock of the oven, then the one question of a pizzeria with rooms, on the same
   flour ground: the hours on the left of the question, "Prenota" opening "Un tavolo o una camera?" */
.cb-now-dial,.cb-now-table{background:var(--flour);padding-bottom:clamp(28px,4vw,48px)}
.dl-ring{stroke:rgba(26,22,20,.1)}.dl-arc{stroke:var(--tomato)}
.cv-ask{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:center;background:var(--flour);
  padding:0 var(--pad) clamp(64px,8vw,110px);text-align:center}
.cv-ask-p{margin:0;font:500 clamp(1rem,1.6vw,1.15rem)/1.5 var(--sans);color:var(--ink)}
.cv-ask .cb-choose>summary{min-height:50px;display:inline-flex;align-items:center;padding:0 30px}
.cv-ask .chz-p{left:50%;translate:-50% 0;border-top:3px solid var(--tomato);text-align:left}
.cv-ask .chz-o{border-radius:999px;padding:11px 18px;font-weight:600}
/* the pills header over the film: the flag in a flour-white pill beside the menu button */
.cb-header-pills .pl-pill{font-family:var(--sans);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:.74rem}
.cb-header-pills .pl-pill:not(.pl-pill-2){background:var(--tomato)}
/* the corner opening: their whole logo in white, the ember glow at the foot (as the old opening had) */
.cb-opening-corner .co-t h1 img{display:block;width:min(420px,70vw);height:auto}
.cb-opening-corner .co-ph::after{background:linear-gradient(20deg,rgba(26,22,20,.82),rgba(26,22,20,.1) 62%),
  radial-gradient(90% 50% at 20% 110%,rgba(226,72,59,.5) 0,transparent 70%)}
.co-ph .e-hero-bg{position:absolute;inset:0}.cb-opening-corner>.pause{top:auto;bottom:clamp(20px,3vw,36px);right:clamp(16px,3vw,40px)}
@media (max-width:700px){.cb-opening-corner .co-t{padding-bottom:92px}}
/* the opening centred (the user, 29 Oct 2026: "I liked it better when it was centered"): their logo, the line and
   the buttons in the middle of the film, the glow from the foot */
.cb-opening-corner .co-t{margin:auto;text-align:center;display:flex;flex-direction:column;align-items:center;padding-top:110px}
.cb-opening-corner .co-t h1{display:flex;justify-content:center}
.cb-opening-corner .co-a{justify-content:center}
.cb-opening-corner .co-ph::after{background:linear-gradient(180deg,rgba(26,22,20,.62) 0,rgba(26,22,20,.3) 40%,rgba(26,22,20,.5) 70%,rgba(26,22,20,.9) 100%),
  radial-gradient(110% 50% at 50% 112%,rgba(226,72,59,.5) 0,transparent 70%)}
/* the old opening under the pills header: no floating "Il menu" pill over the three facts (the opening has its own
   "Vedi il menù"); the film's pause button clear of the pills */
.cb-header-pills .pl-menu{display:none}
@media (max-width:700px){.e-hero .pause{top:150px;right:auto;left:20px}}
/* the week's hours (the user, 3 Nov 2026: "Fix formatting of opening hours"): the full width of their column, each day
   and its hours on one line, the rules in the oven's char on flour (style.css's .hours is the old 340 px list for the
   dark band); on a phone the hours go under the day */
.cb-now-table .nt-l{max-width:none;width:100%;margin:.4rem 0 0;font-size:clamp(1rem,1.4vw,1.15rem)}
.cb-now-table .nt-l li{display:grid;grid-template-columns:auto 1fr;gap:24px;padding:16px 2px;border-bottom:1px solid rgba(26,22,20,.14)}
.cb-now-table .nt-l li:first-child{border-top:2px solid var(--brick)}
.cb-now-table .nt-l li span{white-space:nowrap}
.cb-now-table .nt-l li span:first-child{font-weight:600}
@media (max-width:600px){.cb-now-table .nt-l li{grid-template-columns:1fr;gap:4px}.cb-now-table .nt-l li span:last-child{text-align:left;white-space:normal}}
/* the wine list (3 Nov 2026): the bottle's price is a word and an amount («Bottiglia € 18»), not one number, so a pill
   that fits it instead of the menu's round badge (which cut it to «Bottiglia»); the producers' bottle photos stand in the
   list's bottle slot (media/img/vini, wine_photos.py) */
#vini .price.wine-pr{width:auto;min-width:0;height:auto;padding:.5rem .9rem;white-space:nowrap;line-height:1.2;justify-self:start}
#vini .wine-img{flex:none;width:44px;min-width:44px}

/* =====================================================================================
   3 Nov 2026, the Impeccable and Taste review (the user's yes to: contrast and small text, photos and menu style, the
   phone header, the page order). Their colours only: small white text sits on --brown, their red darkened for text
   (5.3:1), and --tomato stays for the large areas (the band, the glow).
   ===================================================================================== */
.cb-header-pills .pl-pill:not(.pl-pill-2),.menu-jump a.on,.menu-jump a[aria-current="true"],.chip[aria-pressed="true"]{background:var(--brown)!important;border-color:var(--brown)!important}
.hero .btn-ul.big{background:var(--brown);border-color:var(--brown);box-shadow:none}
.hero-info .lbl{font-size:.8rem;letter-spacing:.16em}
.fine,.fine a,.sand .fine{color:var(--muted)}
/* the menu as a price list: the dishes straight on the flour ground, no cards, the price in its own column */
.menu-col{background:none;padding:0;border-radius:0;box-shadow:none}
.menu-col h3{font-size:2.1rem;padding-bottom:.4rem;margin-bottom:.4rem}
.menu-col h3::after{display:none}
.menu-col li{border-bottom:0;padding-top:.55rem;padding-bottom:.55rem;align-items:baseline}
.dish{line-height:1.3}
.note{font-size:.98rem;line-height:1.5}
.sec.menu p,.sec.menu .muted,.sec.menu .note,.sec.menu .alg,.sec.menu .pf-note{color:var(--muted)}
.price,#m-impasti .price{background:none;color:var(--brick);min-width:0;width:auto;height:auto;padding:0;border-radius:0;box-shadow:none;
  display:inline;font:600 1.05rem/1.3 var(--sans);font-variant-numeric:lining-nums tabular-nums;justify-self:end;text-align:right}
#vini .price.wine-pr{padding:0}
@media (max-width:600px){.price{min-width:0;height:auto;font-size:1rem}}
/* the two dish photos side by side, the same size, never wider than their files */
.e-room .e-room-l{grid-template-columns:1fr 1fr;grid-auto-rows:auto;max-width:1360px}
.e-room .e-room-l li{grid-column:auto;grid-row:auto;aspect-ratio:1}
/* their name across the footer, whole at every width */
.fw-name{font-size:clamp(2.6rem,11.5vw,11rem);text-align:center}
/* the phone header: their menu button, their logo and one Prenota (it asks "un tavolo o una camera?"); the rooms and
   the phone are in the menu and in the opening's band */
@media (max-width:700px){.cb-header-pills .pl-pill-2,.cb-header-pills .pl-tel{display:none}.e-hero .pause{top:84px}}
/* the menu's category bars: white on their darker red, as the template means them (5.3:1; the dark ink was 3.2:1) */
.sec.menu .cb-menu-table .menu-col h3,.cb-menu-table .menu-col h3{color:#fff;font:700 .95rem/1.3 var(--sans);letter-spacing:.2em;padding:11px 14px;margin:0}
.price,#m-impasti .price{color:var(--ink)}
/* the menu's tabs stop under the header's pills, so none hides behind «Le camere» */
@media (min-width:701px){.sec.menu .menu-jump{--jump-top:118px}}
/* no dead band between the question and the rooms: one section gap */
.cv-ask{padding-bottom:clamp(44px,5vw,72px)}
.cv-ask+.rooms,.cv-ask+section{padding-top:clamp(44px,5vw,72px)}
/* the wine list (the user, 4 Nov 2026: "Lots of vertical scrolling when selecting just white wines"): each kind's
   wines in a grid of short rows, the bottle beside the name and the price under it, so one kind fills the width */
#vini .wine-list{columns:auto}
#vini .wine-g{margin-bottom:34px}
#vini .wine-g ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));column-gap:36px}
#vini .menu-col li.wine-c,#vini li.wine-c{grid-template-columns:44px minmax(0,1fr);gap:2px 16px;align-items:center;padding:14px 4px}
#vini .wine-img,#vini .wine-sil{height:96px;grid-row:span 2}
#vini .price.wine-pr{grid-column:2;justify-self:start;text-align:left;max-width:none;font-size:.98rem}
/* «Dove siamo» with its map (the user, 4 Nov 2026: "missing a small map with a pin like the others have"): the address
   over the farmhouse, the pinned map beside it; on a phone the map under the address, the full width */
.cb-location-street .lo-map{flex:0 1 46%;align-self:flex-end}
@media (max-width:900px){.cb-location-street{flex-direction:column;align-items:stretch}.cb-location-street .lo-map{flex:none;width:100%;margin:0;align-self:stretch}}
/* the room cards (4 Nov 2026): two by two, large photos, as La Fiorida's; the entrance photo shows its «Camere» sign */
@media (min-width:701px){.rm-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.6rem 2.2rem}.rm-cph img{aspect-ratio:3/2}}
.rm-gal img[src*="ingresso-camere"]{object-position:50% 72%}
/* the doughs' four pizzas (4 Nov 2026: the user's two added) across the whole width, not in five columns with one empty */
@media (min-width:701px){.pl-gal{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* the wine list's filters stay in view under the menu's tabs while the wines scroll (4 Nov 2026: the tabs slid over them) */
#vini .wf{position:sticky;top:173px;z-index:4;background:var(--flour);margin-top:0}
@media (max-width:700px){#vini .wf{top:119px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}#vini .wf::-webkit-scrollbar{display:none}#vini .wf>*{flex:none}}

/* =====================================================================================
   4 Nov 2026, round 2 of the review (Impeccable, Taste, QA, the demo walk-through), for the 5 Nov demo
   ===================================================================================== */
/* «Un tavolo o una camera?» in view, its two answers as pills (the chooser kept open by page.html's script) */
.cv-ask .cb-choose[open]>summary{display:none}
.cv-ask .cb-choose[open] .chz-p{position:static;translate:none;min-width:0;padding:0;background:none;box-shadow:none;border:0;
  flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 14px}
.cv-ask .cb-choose[open] .chz-q{width:100%;margin:0 0 4px;text-align:center;font:400 clamp(1.5rem,2.6vw,2rem)/1.2 var(--serif);color:var(--ink)}
.cv-ask .cb-choose[open] .chz-o{background:var(--brown);border-color:var(--brown);color:#fff;font:700 .82rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;padding:16px 26px;min-height:50px;display:inline-flex;align-items:center}
.cv-ask .cb-choose[open] .chz-o+.chz-o{background:transparent;color:var(--brown)}
.cv-ask .cb-choose[open] .chz-o:hover{background:var(--char);border-color:var(--char);color:#fff}
.cv-ask{flex-direction:column}
/* the menu's two columns balance: a long list may break between dishes (not inside one), no category heading alone */
@media (min-width:901px){.menu-grid .menu-col{break-inside:auto}.menu-grid .menu-col li{break-inside:avoid}.menu-grid .menu-col h3{break-after:avoid}}
/* sticky bars opaque, so no dish shows through them */
.menu-jump{background:var(--flour)!important}
#vini .wf{border-bottom:1px solid rgba(26,22,20,.12)}
/* readable small print: no faded opacity on their notes, labels at least 12.8 px */
.fine,.sec.menu .pf-note,.pf-note{opacity:1}
.fine a{opacity:1;color:var(--brown)}
.mf-l,.map-attr{font-size:.8rem}
.bd .bk-f>label,.bd-k{font-size:.78rem;font-family:var(--sans);font-weight:700;letter-spacing:.14em}
/* the menu's language link on its apricot pill in ink (brick was 2.7:1) */
.menu-langs a[aria-current="true"]{color:var(--char)!important}
/* the wine list on flour: their darker red, not apricot (2:1) */
.menu-more.wine summary,.menu-more.wine summary small,.sec.menu .wine-p{color:var(--brown);opacity:1}
/* the reviews: the line under the heading centred, a long review at reading size */
.cb-reviews-quote .rev-head p{margin-inline:auto}
.cb-reviews-quote .rev-card blockquote{font-size:clamp(1.2rem,1.7vw,1.6rem);line-height:1.45;max-width:46em;margin-inline:auto}
/* «Dove siamo» on tablet and phone: a scrim under the white address so it reads over the sky */
@media (max-width:900px){.cb-location-street .ls-t{background:rgba(26,22,20,.55);padding:22px 18px;border-radius:4px}}
/* desktop header: the two pills side by side, not stacked in the corner */
@media (min-width:901px){.cb-header-pills .pl-r{flex-direction:row;align-items:center}}
/* round 2: the stars of the reviews in their darker red (apricot on flour was 1.9:1); «Dove siamo» over the dark photo in peach */
.cb-reviews-quote .rev-stars,.rev-stars{color:var(--brown)}
.cb-location-street .kicker{color:var(--peach)}

/* =====================================================================================
   5 Nov 2026, the design choices left from round 2 (the user: "Do the best with the design choices")
   ===================================================================================== */
/* once scrolled, the pills sit on a flour band, so no heading or price hides behind them (a colour only: a filter would
   break the fixed menu, compose.css) */
html{scroll-padding-top:96px}
body .cb-header-pills.solid{background:var(--flour)!important;box-shadow:0 1px 0 rgba(26,22,20,.1)!important;padding-bottom:14px}
.sec.menu .menu-jump{--jump-top:84px}
@media (max-width:700px){.sec.menu .menu-jump{--jump-top:76px}#vini .wf{top:131px}}
@media (min-width:701px){#vini .wf{top:139px}}
/* the hours: their sentence across the page, the week under it, no empty column beside a four-line heading */
@media (min-width:761px){.cb-now-table .nt-g{grid-template-columns:1fr;gap:28px;max-width:980px}.cb-now-table .nt-g h2{max-width:none}}
/* the booking demo in the site's own type: Montserrat for the steps, their name in DM Serif as they write it */
.bd-h1{font:400 clamp(1.8rem,3.4vw,2.6rem)/1.15 var(--serif);letter-spacing:0;text-transform:none;color:var(--ink)}
.bd-steps li{font:700 .74rem/1.2 var(--sans);letter-spacing:.14em}
/* the menu's language buttons on every screen, not only on phones: the QR opens the guest's language, here they change it */
.menu-langs{display:flex}
/* the allergy filter behind one button (5 Nov 2026) */
.mf{gap:10px 14px;padding:10px 0;margin-bottom:1.4rem}
.mf-tog{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 20px;border:1px solid rgba(26,22,20,.28);border-radius:999px;background:transparent;color:var(--ink);font:700 .78rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.mf-tog:hover,.mf-tog[aria-expanded="true"]{border-color:var(--brown);color:var(--brown)}
.mf-tog.on{background:var(--brown);border-color:var(--brown);color:#fff}
.mf-ch{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;rotate:45deg;translate:0 -2px;transition:rotate .2s}
.mf-tog[aria-expanded="true"] .mf-ch{rotate:225deg;translate:0 2px}
.mf.mf-closed .mf-chips,.mf.mf-closed .mf-note{display:none}
.mf .mf-chips{flex-basis:100%}
.mf-reset{color:var(--brown)!important;border-color:currentColor}
/* The opening (the user, 5 Nov 2026, mockup 1 of 3): their white logo smaller, a soft shade behind the stack so it sits
   in the film, the line of the moment leads. The logo itself unchanged. */
body .e-hero .hero-in h1 .cb-logo-l{width:210px!important;height:auto!important;max-width:none!important}
body .e-hero .hero-in{position:relative}
body .e-hero .hero-in::before{content:"";position:absolute;inset:-12% -18%;z-index:-1;background:radial-gradient(closest-side,rgba(20,12,8,.55),rgba(20,12,8,0));pointer-events:none}
body .e-hero .hero-in .now-h{font-size:clamp(2.6rem,4.6vw,4.2rem)!important}
/* Bookings by phone only (the owners, 5 Nov 2026): the question and the two numbers, tables and rooms, as two large
   call buttons; the rooms' own call under the cards (template rooms.phone) */
.cv-calls{flex-direction:column;gap:14px}
.cv-calls .cv-call-h{margin:0;font-size:clamp(2rem,4vw,3rem)}
.cv-calls .cv-call-h em{color:var(--brown);font-style:italic}
.cv-nums{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:8px}
.cv-num{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:240px;padding:14px 28px;border-radius:999px;background:var(--tomato);color:#fff;text-decoration:none;box-shadow:0 6px 18px rgba(26,22,20,.12)}
.cv-num:nth-child(2){background:var(--char)}
.cv-num span{font:600 .74rem/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase;opacity:.9}
.cv-num b{font:600 1.35rem/1.25 var(--sans);letter-spacing:.02em}
.cv-num:hover,.cv-num:focus-visible{filter:brightness(1.06)}
.rooms .rm-call{align-self:start}
.rooms .rm-call .btn{display:inline-flex}
.rooms .rm-call .rm-act{margin-top:16px}
