/*
Theme Name: Bartocci Restyling
Theme URI: https://www.salumificiobartocci.it/
Description: Tema child leggero per Salumificio Bartocci. Restyling editoriale, WooCommerce nativo, immagini responsive, nessuna dipendenza da Elementor Pro.
Author: AM10STUDIO
Author URI: https://am10studio.it
Template: neve
Version: 0.33.0
Requires at least: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: bartocci-restyling
*/

:root{
  --bar-osso:#ebe1cc;
  --bar-panna:#f3ecdc;
  --bar-nero:#1b1613;
  --bar-nero-soft:#27201b;
  --bar-terra:#a6482f;
  --bar-terra-deep:#8a3a24;
  --bar-wine:#4e211d;

  /* FIX v0.6 #15 — era #8c8069: 2,99:1 su osso, sotto la soglia WCAG AA.
     #6e6353 porta il rapporto a 5,0:1 mantenendo lo stesso carattere caldo. */
  --bar-muted:#6e6353;

  --bar-line:rgba(27,22,19,.18);
  --bar-focus:#1b1613;
  --bar-serif:"Newsreader",Georgia,serif;
  --bar-sans:"Inter",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;

  /* Scala di spaziatura: una sola fonte di verità per il ritmo verticale.
     Prima ogni sezione aveva i suoi clamp scritti a mano e non combaciavano. */
  --bar-maxw:1340px;
  --bar-gutter:clamp(20px,4vw,48px);
  --sp-section:clamp(56px,7.5vw,112px);  /* stacco fra sezioni      */
  --sp-block:clamp(28px,4vw,52px);       /* titolo -> contenuto     */
  --sp-item:clamp(14px,2vw,24px);        /* fra elementi in griglia */
  --sp-tight:clamp(10px,1.4vw,16px);
  --bar-header-h:66px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.bartocci-restyling,body{background:var(--bar-osso);color:var(--bar-nero);font-family:var(--bar-sans)}
body.admin-bar .bartocci-header{top:32px}
@media(max-width:782px){body.admin-bar .bartocci-header{top:46px}}
strong,b{font-weight:700}

/* FIX v0.6 #3 — l'header sticky è alto 66px: senza questo le ancore
   (#storia, #metodo, #negozio) finiscono nascoste sotto la barra. */
#top,#negozio,#storia,#metodo,#visita,#contatti,#contattaci,#main-content{scroll-margin-top:calc(var(--bar-header-h) + 20px)}

/* FIX v0.6 #16 — nessuno stato di focus esisteva: chi naviga da tastiera
   era completamente cieco. Outline visibile ovunque, senza toccare il mouse. */
:focus-visible{outline:2.5px solid var(--bar-focus);outline-offset:3px;border-radius:3px}
.bartocci-method :focus-visible,.bartocci-footer :focus-visible,.bartocci-hero :focus-visible{outline-color:var(--bar-osso)}

/* FIX v0.6 #17 — skip link */
.bartocci-skip{position:absolute;left:-9999px;top:0;z-index:1000;padding:14px 20px;background:var(--bar-nero);color:var(--bar-osso);font:600 13px/1 var(--bar-sans);text-decoration:none;border-radius:0 0 10px 0}
.bartocci-skip:focus{left:0}

.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.bartocci-wrap{width:min(var(--bar-maxw),calc(100% - var(--bar-gutter) * 2));margin-inline:auto}
.bartocci-eyebrow,.bartocci-loop-cat{font-family:var(--bar-sans);font-size:11px;line-height:1.3;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--bar-terra)}
.bartocci-display{font-family:var(--bar-serif);font-style:italic;font-weight:700;letter-spacing:0}
.bartocci-display-line{display:block}
.bartocci-display em{font:inherit;font-weight:400;color:var(--bar-terra)}
.bartocci-display--section{font-size:clamp(40px,7vw,110px);line-height:1.02;margin:0}

.bartocci-btn,.bartocci-product-card .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0!important;border-radius:999px!important;padding:13px 21px!important;background:var(--bar-terra)!important;color:var(--bar-panna)!important;font-family:var(--bar-sans)!important;font-size:12px!important;line-height:1!important;font-weight:600!important;letter-spacing:.035em!important;text-decoration:none!important;box-shadow:none!important;transition:background .2s,color .2s,transform .1s!important
}
.bartocci-btn:hover,.bartocci-product-card .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--bar-terra-deep)!important;color:var(--bar-panna)!important}
.bartocci-btn:active,.bartocci-product-card .button:active{transform:translateY(1px)}
.bartocci-btn--ghost{background:transparent!important;color:var(--bar-osso)!important;border:1.5px solid rgba(235,225,204,.6)!important}
.bartocci-btn--ghost:hover{background:rgba(235,225,204,.08)!important}
.bartocci-btn--outline{background:transparent!important;color:var(--bar-nero)!important;border:1.5px solid var(--bar-nero)!important}
.bartocci-btn--outline:hover{background:var(--bar-nero)!important;color:var(--bar-osso)!important}

/* FIX v0.6 #19 — l'esaurito deve leggersi come esaurito, non come un invito. */
.button.bartocci-btn--sold,.bartocci-product-card .button.bartocci-btn--sold{
  background:transparent!important;color:var(--bar-muted)!important;
  border:1.5px solid var(--bar-line)!important;cursor:default
}
.button.bartocci-btn--sold:hover{background:rgba(27,22,19,.05)!important;color:var(--bar-nero)!important}

/* Header */
.bartocci-header{position:sticky;top:0;z-index:999;background:rgba(235,225,204,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--bar-line)}
.bartocci-header__inner{height:var(--bar-header-h);display:flex;align-items:center;justify-content:space-between;gap:24px}
.bartocci-logo{display:inline-flex;align-items:center;flex:0 0 auto;text-decoration:none}
.bartocci-logo img{display:block;width:auto;height:48px;max-width:190px}
.bartocci-nav{display:flex;align-items:center;gap:26px}
.bartocci-nav a{position:relative;color:var(--bar-nero);font-size:12.5px;font-weight:500;text-decoration:none;letter-spacing:.02em}
.bartocci-nav a:not(.bartocci-cart)::after{content:"";position:absolute;left:0;bottom:-4px;height:1.5px;width:0;background:currentColor;transition:width .3s ease}
.bartocci-nav a:hover::after,.bartocci-nav a:focus-visible::after{width:100%}
.bartocci-cart{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;background:var(--bar-terra);color:var(--bar-panna)!important;font-weight:600!important}
.bartocci-cart__count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:var(--bar-panna);color:var(--bar-terra);font-size:10px;font-weight:700}
.bartocci-menu-toggle{display:none;border:0;background:transparent;color:var(--bar-nero);font:700 13px/1 var(--bar-sans);letter-spacing:.08em;padding:12px;cursor:pointer}

/* Hero */
.bartocci-hero{position:relative;min-height:calc(100svh - var(--bar-header-h));display:flex;align-items:flex-end;overflow:hidden;background:var(--bar-nero);color:var(--bar-osso)}
.bartocci-hero__media{position:absolute;inset:0}

/* Rotazione: le slide si sovrappongono e si dissolvono l'una nell'altra.
   Senza JS resta visibile solo la prima, che è anche l'unica scaricata. */
.bartocci-hero__slide{position:absolute;inset:0;opacity:0;transition:opacity 1.5s ease}
.bartocci-hero__slide.is-active{opacity:1}
.bartocci-hero__slide img{width:100%;height:100%;object-fit:cover;object-position:58% 45%;transform:scale(1.05)}
/* Zoom lento sulla slide attiva: è il movimento che darebbe un video.
   Dura più della permanenza, così non arriva mai a fermarsi. */
.bartocci-hero__slide.is-active img{animation:bartocci-kenburns 11s ease-out forwards}
@keyframes bartocci-kenburns{from{transform:scale(1.05)}to{transform:scale(1.13)}}

.bartocci-hero__media::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(27,22,19,.50) 0%,rgba(27,22,19,.14) 38%,rgba(27,22,19,.93) 100%)}
.bartocci-hero__content{position:relative;z-index:2;padding:0 0 clamp(46px,6vw,74px);max-width:920px}
.bartocci-hero .bartocci-eyebrow{margin-bottom:18px;color:#e0a08c}
.bartocci-display--hero{font-size:clamp(52px,10.5vw,146px);line-height:1.02;margin:0;color:var(--bar-osso)}
.bartocci-hero__lead{max-width:490px;margin:clamp(20px,2.4vw,28px) 0 0;font-size:clamp(15px,1.8vw,19px);line-height:1.65;color:rgba(235,225,204,.87)}
.bartocci-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(24px,3vw,34px)}

/* Indicatori: barre sottili che si riempiono con il tempo della slide */
.bartocci-hero__controls{position:absolute;z-index:3;left:0;right:0;bottom:0;display:flex;align-items:center;gap:16px;padding:0 var(--bar-gutter) 20px;width:min(var(--bar-maxw),calc(100% - var(--bar-gutter) * 2));margin-inline:auto}
.bartocci-hero__progress{display:flex;flex:0 1 auto;gap:6px;min-width:0}
.bartocci-hero__controls{justify-content:flex-start}
/* WCAG 2.2.2 — un contenuto che si muove da solo per piu di 5s deve poter essere fermato. */
.bartocci-hero__pause{flex:0 0 auto;border:1px solid rgba(235,225,204,.45);border-radius:999px;background:rgba(27,22,19,.38);color:var(--bar-osso);padding:7px 14px;font:600 10px/1 var(--bar-sans);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;transition:background .2s,border-color .2s}
.bartocci-hero__pause:hover{background:rgba(27,22,19,.68);border-color:var(--bar-osso)}
html.bartocci-paused .bartocci-marquee__track,
html.bartocci-paused .bartocci-hero__slide.is-active img,
html.bartocci-paused .bartocci-hero__bar.is-active i{animation-play-state:paused}
.bartocci-hero__bar{position:relative;flex:1 0 62px;height:2px;max-width:76px;background:rgba(235,225,204,.28);overflow:hidden;border-radius:2px}
.bartocci-hero__bar i{position:absolute;inset:0;transform-origin:left;transform:scaleX(0);background:var(--bar-osso)}
.bartocci-hero__bar.is-active i{animation:bartocci-fill 6.5s linear forwards}
.bartocci-hero__bar.is-done i{transform:scaleX(1)}
@keyframes bartocci-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}


/* Marquee */
.bartocci-marquee{background:var(--bar-nero);overflow:hidden;padding:13px 0;color:var(--bar-osso)}
.bartocci-marquee__track{display:inline-flex;width:max-content;white-space:nowrap;animation:bartocci-marquee 42s linear infinite}
.bartocci-marquee__track span{font:italic 600 clamp(20px,2.6vw,30px)/1 var(--bar-serif);letter-spacing:.02em}
@keyframes bartocci-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Trust bar — FIX v0.6 #20 */
.bartocci-trust{background:var(--bar-panna);border-bottom:1px solid var(--bar-line)}
.bartocci-trust__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:0}
.bartocci-trust__item{padding:clamp(20px,2.4vw,30px) clamp(20px,2.4vw,30px) clamp(20px,2.4vw,30px) 0;position:relative}
.bartocci-trust__item + .bartocci-trust__item{padding-left:clamp(20px,2.4vw,30px)}
.bartocci-trust__item + .bartocci-trust__item::before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:1px;background:var(--bar-line)}
.bartocci-trust__item strong{display:block;font:600 13px/1.3 var(--bar-sans);letter-spacing:.01em;color:var(--bar-nero);margin-bottom:5px}
.bartocci-trust__item span{display:block;font-size:12.5px;line-height:1.5;color:var(--bar-muted)}

/* Sections */
.bartocci-section{padding:var(--sp-section) 0}
.bartocci-section--osso{background:var(--bar-osso)}
.bartocci-shop-home{background:var(--bar-panna)}
.bartocci-heading-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:var(--sp-tight) var(--sp-block);margin-bottom:var(--sp-block)}
.bartocci-heading-row p{font-size:13.5px;color:var(--bar-muted);max-width:300px;line-height:1.65;margin:0 0 6px}

/* Category tabs — home e WooCommerce */
.bartocci-home-tabs,.bartocci-shop-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 var(--sp-block)}
.bartocci-home-tabs__buttons,.bartocci-shop-tabs__buttons{display:flex;flex-wrap:wrap;gap:8px}
.bartocci-cat-pill{appearance:none;text-decoration:none!important;background:transparent;color:var(--bar-nero)!important;border:1.5px solid var(--bar-nero);border-radius:999px;padding:9px 18px;font:600 12.5px/1 var(--bar-sans);letter-spacing:.02em;cursor:pointer;transition:background .18s,color .18s}
.bartocci-cat-pill:hover,.bartocci-cat-pill.is-active{background:var(--bar-nero);color:var(--bar-osso)!important}
.bartocci-home-tabs__count,.bartocci-shop-tabs__count{margin-left:auto;font:500 12px/1 var(--bar-sans);color:var(--bar-muted)}

/* Gruppi prodotti */
.bartocci-product-group{margin-bottom:var(--sp-block)}
.bartocci-product-group[hidden]{display:none!important}
.bartocci-product-group__heading{display:flex;align-items:baseline;gap:14px;margin-bottom:var(--sp-tight)}
.bartocci-product-group__heading h3{font-size:26px;font-weight:600;color:var(--bar-nero);margin:0;white-space:nowrap}
.bartocci-product-group__rule{height:1px;background:var(--bar-line);flex:1}
.bartocci-product-group__count{font:600 10px/1 var(--bar-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--bar-muted);white-space:nowrap}
.bartocci-products{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:var(--sp-item)}
.bartocci-product-card{min-width:0;border:1.5px solid var(--bar-nero);border-radius:14px;overflow:hidden;background:var(--bar-osso);display:flex;flex-direction:column;transition:background .3s}
.bartocci-product-card__image{display:block;position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--bar-panna);border-bottom:1.5px solid var(--bar-nero)}
.bartocci-product-card__image img{width:100%;height:100%;object-fit:contain;padding:8px;margin:0!important;mix-blend-mode:multiply;filter:saturate(.96) contrast(1.015);transition:transform .8s cubic-bezier(.16,.8,.24,1)}
.bartocci-product-card__badge{position:absolute;left:10px;top:10px;z-index:2;padding:6px 11px;border-radius:999px;background:rgba(27,22,19,.86);color:var(--bar-osso);font:600 10px/1 var(--bar-sans);letter-spacing:.12em;text-transform:uppercase}
.bartocci-product-card.is-sold-out .bartocci-product-card__image img{filter:grayscale(.55) opacity(.7)}
.bartocci-product-card:hover{background:var(--bar-nero)}
.bartocci-product-card:hover .bartocci-product-card__image img{transform:scale(1.05)}
.bartocci-product-card:focus-within{background:var(--bar-nero)}
.bartocci-product-card__body{padding:14px 14px 16px;display:flex;flex-direction:column;flex:1}
.bartocci-product-card__title{margin:7px 0 3px;font:italic 600 20px/1.05 var(--bar-serif);letter-spacing:0}
.bartocci-product-card__title a{color:var(--bar-nero);text-decoration:none;transition:color .3s}
.bartocci-product-card:hover .bartocci-product-card__title a,
.bartocci-product-card:focus-within .bartocci-product-card__title a{color:var(--bar-osso)}
.bartocci-product-card__tagline{font:italic 400 15px/1.4 var(--bar-serif);color:var(--bar-muted);margin:0 0 12px;flex:1;transition:color .3s}
.bartocci-product-card:hover .bartocci-product-card__tagline,
.bartocci-product-card:focus-within .bartocci-product-card__tagline{color:rgba(235,225,204,.75)}
.bartocci-product-card:hover .bartocci-eyebrow,
.bartocci-product-card:focus-within .bartocci-eyebrow{color:#e0a08c}
.bartocci-product-card__bottom{
  display:flex;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;
  gap:10px 12px;margin-top:auto;min-width:0
}
.bartocci-product-card__price{
  flex:1 1 145px;min-width:0;
  font:italic 700 clamp(19px,1.65vw,25px)/1.08 var(--bar-serif);
  white-space:normal;overflow-wrap:anywhere;color:var(--bar-nero);transition:color .3s
}
.bartocci-product-card:hover .bartocci-product-card__price,
.bartocci-product-card:focus-within .bartocci-product-card__price{color:var(--bar-osso)}
.bartocci-product-card__price del{opacity:.5;font-size:.72em}.bartocci-product-card__price ins{text-decoration:none}
.bartocci-product-card .button{
  flex:0 0 auto;max-width:100%;padding:10px 15px!important;font-size:12px!important;
  white-space:nowrap;margin:0!important
}
.bartocci-shop-all{margin-top:var(--sp-block);text-align:center}

/* Metodo */
.bartocci-method{background:var(--bar-nero);color:var(--bar-osso)}
.bartocci-method__head{max-width:850px;margin-bottom:var(--sp-block)}
.bartocci-method__head .bartocci-display{color:var(--bar-osso);margin-top:12px}
.bartocci-method__head .bartocci-eyebrow{color:#e0a08c}
.bartocci-method__head p{max-width:620px;font-size:17px;line-height:1.7;color:rgba(235,225,204,.8);margin:20px 0 0}
.bartocci-method__grid{display:grid;grid-template-columns:1.15fr .85fr .85fr;gap:var(--sp-item)}
.bartocci-method-card{position:relative;overflow:hidden;min-height:470px;background:var(--bar-nero-soft)}
.bartocci-method-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;transition:transform 1s cubic-bezier(.16,.8,.24,1)}
.bartocci-method-card:hover img{transform:scale(1.04)}
.bartocci-method-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,15,12,.82),rgba(20,15,12,.06) 65%)}
.bartocci-method-card__copy{position:absolute;z-index:2;left:26px;right:26px;bottom:26px}
.bartocci-method-card:nth-child(2) img{object-position:center 66%}
.bartocci-method-card__num{display:block;font:600 10px/1 var(--bar-sans);letter-spacing:.22em;color:#e0a08c;margin-bottom:10px}
.bartocci-method-card__copy strong{display:block;font:italic 600 31px/1 var(--bar-serif);color:var(--bar-osso);margin-bottom:8px}
.bartocci-method-card__copy span{font-size:12px;line-height:1.55;color:rgba(235,225,204,.82)}

/* Bottega */
.bartocci-bottega{display:grid;grid-template-columns:1.1fr .9fr;min-height:620px;background:var(--bar-panna);border-top:1px solid var(--bar-line);border-bottom:1px solid var(--bar-line)}
.bartocci-bottega__media{min-height:620px;overflow:hidden}
.bartocci-bottega__media img{width:100%;height:100%;object-fit:cover;object-position:center 48%;display:block;transition:transform 1s cubic-bezier(.16,.8,.24,1)}
.bartocci-bottega__media:hover img{transform:scale(1.04)}
.bartocci-bottega__copy{display:flex;align-items:center;padding:var(--sp-section) clamp(26px,5vw,84px)}
.bartocci-bottega__copy-inner{max-width:560px}
.bartocci-bottega__copy .bartocci-display{margin:12px 0 22px}
.bartocci-bottega__copy p{color:var(--bar-muted);line-height:1.75;margin:0 0 22px}
.bartocci-bottega__address a{color:var(--bar-nero);text-decoration:none;border-bottom:1px solid var(--bar-line)}
.bartocci-bottega__address a:hover{border-bottom-color:var(--bar-terra);color:var(--bar-terra)}
.bartocci-orari{margin:0 0 26px;padding:0;max-width:390px}
.bartocci-orari__row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:7px 0;border-bottom:1px solid var(--bar-line)}
.bartocci-orari__row:last-child{border-bottom:0}
.bartocci-orari dt{margin:0;font:600 12px/1.4 var(--bar-sans);letter-spacing:.02em;color:var(--bar-nero);white-space:nowrap}
.bartocci-orari dd{margin:0;font:500 13px/1.4 var(--bar-sans);color:var(--bar-muted);text-align:right;font-variant-numeric:tabular-nums}
.bartocci-orari__row.is-chiuso dt,.bartocci-orari__row.is-chiuso dd{color:var(--bar-muted);font-weight:500}
.bartocci-bottega__actions{display:flex;flex-wrap:wrap;gap:10px}

/* Contatti e modulo */

/* Banda fotografica di chiusura del laboratorio.
   Sostituisce la vecchia sezione "Dentro il lavoro", che ripeteva la stessa
   grammatica (fondo scuro, tre foto, numeri 01-02-03) della sezione Metodo. */
.bartocci-banda{display:grid;grid-template-columns:1.55fr 1fr;gap:3px;margin-top:var(--sp-block);background:rgba(235,225,204,.14)}
.bartocci-banda__item{position:relative;margin:0;height:clamp(300px,32vw,430px);overflow:hidden;background:var(--bar-nero-soft)}
.bartocci-banda__item img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.16,.8,.24,1)}
.bartocci-banda__item:hover img{transform:scale(1.035)}
.bartocci-banda__item::after{content:"";position:absolute;inset:auto 0 0;height:46%;background:linear-gradient(180deg,transparent,rgba(27,22,19,.8));pointer-events:none}
.bartocci-banda__item figcaption{position:absolute;z-index:2;left:22px;right:22px;bottom:18px;font:italic 500 22px/1.1 var(--bar-serif);color:var(--bar-osso)}

.bartocci-contatti{background:var(--bar-osso)}
.bartocci-contatti__grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(38px,6vw,86px);align-items:start}
.bartocci-contatti__copy .bartocci-display{margin:12px 0 20px}
.bartocci-contatti__copy p{font-size:16px;line-height:1.75;color:#4e4540;margin:0;max-width:440px}

.bartocci-form-wrap{scroll-margin-top:86px}
.bartocci-form{background:var(--bar-panna);border:1.5px solid var(--bar-nero);border-radius:14px;padding:clamp(20px,3vw,32px)}
.bartocci-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;margin-bottom:22px}
.bartocci-field{display:flex;flex-direction:column;align-items:stretch;gap:7px;margin:0 0 18px;text-align:left}
.bartocci-field:first-child{grid-column:1/-1}
.bartocci-form__grid .bartocci-field{margin-bottom:0;min-width:0}
.bartocci-field label{display:block;margin:0;font:600 11.5px/1.3 var(--bar-sans);letter-spacing:.06em;text-transform:uppercase;color:var(--bar-nero);text-align:left}
.bartocci-field__opt{font-weight:500;text-transform:none;letter-spacing:0;color:var(--bar-muted)}
.bartocci-form input[type=text],.bartocci-form input[type=email],.bartocci-form input[type=tel],.bartocci-form textarea{
  width:100%;border:1.5px solid var(--bar-line);border-radius:10px;background:#fffaf0;
  padding:12px 14px;font:400 15px/1.5 var(--bar-sans);color:var(--bar-nero);text-align:left;box-sizing:border-box;margin:0;
  transition:border-color .18s
}
.bartocci-form textarea{resize:vertical;min-height:120px;display:block}
.bartocci-form input:hover,.bartocci-form textarea:hover{border-color:rgba(27,22,19,.34)}
.bartocci-form input:focus,.bartocci-form textarea:focus{border-color:var(--bar-nero);outline:none}
.bartocci-form input:focus-visible,.bartocci-form textarea:focus-visible{outline:2.5px solid var(--bar-focus);outline-offset:2px}
.bartocci-form ::placeholder{color:var(--bar-muted);opacity:1}
.bartocci-form input:invalid:not(:placeholder-shown),.bartocci-form textarea:invalid:not(:placeholder-shown){border-color:var(--bar-terra)}
.bartocci-form textarea{margin-top:0}

.bartocci-consent{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;column-gap:10px;margin:2px 0 22px;text-align:left}
.bartocci-consent input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--bar-terra)}
.bartocci-consent label{margin:0;font:400 13px/1.55 var(--bar-sans);color:var(--bar-muted);text-align:left}
.bartocci-consent a{color:var(--bar-nero);text-decoration:underline}

.bartocci-form__submit{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin:0;text-align:left}
.bartocci-form__note{font:400 13px/1.5 var(--bar-sans);color:var(--bar-muted)}
.bartocci-form__note a{color:var(--bar-nero);text-decoration:underline}

/* Honeypot: nascosto senza display:none, che alcuni bot riconoscono. */
.bartocci-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

.bartocci-form-msg{margin:0 0 16px;padding:14px 18px;border-radius:12px;font:500 14px/1.5 var(--bar-sans);border:1.5px solid}
.bartocci-form-msg--ok{background:#e8efe4;border-color:#4a6b3d;color:#2f4627}
.bartocci-form-msg--errore{background:#f6e6e1;border-color:var(--bar-terra-deep);color:#6d2c1a}
.bartocci-form-msg:focus{outline:none}

/* Toast conferma carrello */
.bartocci-toast{
  position:fixed;left:50%;bottom:24px;z-index:1200;transform:translate(-50%,16px);
  padding:14px 24px;border-radius:999px;background:var(--bar-nero);color:var(--bar-osso);
  font:600 13px/1 var(--bar-sans);letter-spacing:.02em;
  box-shadow:0 12px 32px rgba(27,22,19,.28);
  opacity:0;transition:opacity .3s ease,transform .3s cubic-bezier(.16,.8,.24,1);
  pointer-events:none;max-width:calc(100% - 32px);text-align:center
}
.bartocci-toast.is-visible{opacity:1;transform:translate(-50%,0)}

/* Footer */
.bartocci-footer{background:var(--bar-nero);color:rgba(235,225,204,.78);padding:62px 0 26px}
.bartocci-footer__logo{display:inline-flex;background:var(--bar-osso);padding:11px 16px;border-radius:14px;margin-bottom:34px}
.bartocci-footer__logo img{height:67px;width:auto}
.bartocci-footer__grid{display:grid;grid-template-columns:1.3fr 1fr .9fr;gap:40px}
.bartocci-footer h2{margin:0 0 13px;color:#d78468;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.16em}
.bartocci-footer p,.bartocci-footer a{font-size:13px;line-height:1.9;color:rgba(235,225,204,.78);text-decoration:none}
.bartocci-footer-line{display:block}
.bartocci-footer a:hover{color:var(--bar-osso);text-decoration:underline}
.bartocci-footer__subhead{margin:22px 0 6px!important;color:#d78468;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.16em}
.bartocci-orari--footer{margin:0;max-width:none}
.bartocci-orari--footer .bartocci-orari__row{border-bottom-color:rgba(235,225,204,.13);padding:6px 0}
.bartocci-orari--footer dt{color:rgba(235,225,204,.9);font-size:11.5px}
.bartocci-orari--footer dd{color:rgba(235,225,204,.72);font-size:12px}
.bartocci-orari--footer .is-chiuso dt,.bartocci-orari--footer .is-chiuso dd{color:rgba(235,225,204,.62)}
/* FIX v0.6 #15 — era .44 su nero: 3,63:1. A .62 il rapporto sale a 5,3:1. */
.bartocci-footer__bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-top:38px;padding-top:20px;border-top:1px solid rgba(235,225,204,.13);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:rgba(235,225,204,.62)}

/* WooCommerce shop e pagine interne */
body:not(.home) .nv-content-wrap,body:not(.home) .container{--container:1200px}
body:not(.home) .site-main{padding-top:36px;padding-bottom:70px}
.woocommerce .woocommerce-breadcrumb{font-size:11px;color:var(--bar-muted);margin-bottom:24px}
.woocommerce-products-header__title.page-title,.woocommerce div.product .product_title,.entry-title{font-family:var(--bar-serif)!important;font-style:italic!important;font-weight:700!important;letter-spacing:0!important;color:var(--bar-nero)!important}
.woocommerce-products-header__title.page-title{font-size:clamp(42px,7vw,92px)!important;line-height:1!important}
.woocommerce .woocommerce-ordering{margin:0 0 24px!important}
.woocommerce .woocommerce-ordering select{font:500 12px/1 var(--bar-sans)!important;border:1.5px solid var(--bar-nero)!important;border-radius:999px!important;background:transparent!important;padding:9px 36px 9px 14px!important;color:var(--bar-nero)!important}
.woocommerce ul.products{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(14px,2vw,24px)!important
}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{
  width:auto!important;min-width:0!important;margin:0!important;padding:0!important;
  border:1.5px solid var(--bar-nero)!important;border-radius:14px!important;overflow:hidden;
  background:var(--bar-osso)!important;display:flex!important;flex-direction:column!important;
  transition:background .3s!important
}
.woocommerce ul.products li.product:hover,
.woocommerce ul.products li.product:focus-within{background:var(--bar-nero)!important}
.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link{
  display:flex!important;flex-direction:column!important;flex:1 1 auto!important;min-width:0!important;
  background:var(--bar-panna)
}
.woocommerce ul.products li.product a img{
  width:100%!important;aspect-ratio:1/1;object-fit:contain;background:transparent!important;padding:8px;margin:0 0 14px!important;
  mix-blend-mode:multiply;filter:saturate(.96) contrast(1.015);
  border-bottom:1.5px solid var(--bar-nero)!important;
  transition:transform .8s cubic-bezier(.16,.8,.24,1)!important
}
.woocommerce ul.products li.product:hover a img{transform:scale(1.05)}
.bartocci-loop-cat{margin:0 14px 5px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  margin:0 14px!important;font:italic 600 20px/1.08 var(--bar-serif)!important;
  color:var(--bar-nero)!important;padding:0!important;transition:color .3s!important;
  overflow-wrap:anywhere
}
.bartocci-loop-excerpt{
  margin:8px 14px 14px!important;color:var(--bar-muted);
  font:italic 400 15px/1.45 var(--bar-serif);transition:color .3s
}
.bartocci-loop-bottom{
  margin-top:auto;padding:16px 14px;display:flex;align-items:flex-end;justify-content:space-between;
  flex-wrap:wrap;gap:10px 12px;border-top:1px solid rgba(27,22,19,.12);min-width:0
}
.bartocci-loop-bottom .price{
  flex:1 1 145px;min-width:0;margin:0!important;color:var(--bar-nero)!important;
  font:italic 700 clamp(19px,1.6vw,25px)/1.08 var(--bar-serif)!important;
  white-space:normal!important;overflow-wrap:anywhere;transition:color .3s!important
}
.bartocci-loop-bottom .price del{font-size:.72em;opacity:.55}
.bartocci-loop-bottom .price ins{text-decoration:none}
.bartocci-loop-bottom .button{
  flex:0 0 auto;max-width:100%;margin:0!important;padding:10px 15px!important;
  white-space:nowrap!important
}
.woocommerce ul.products li.product:hover .woocommerce-loop-product__title,
.woocommerce ul.products li.product:hover .bartocci-loop-bottom .price,
.woocommerce ul.products li.product:focus-within .woocommerce-loop-product__title,
.woocommerce ul.products li.product:focus-within .bartocci-loop-bottom .price{color:var(--bar-osso)!important}
.woocommerce ul.products li.product:hover .bartocci-loop-excerpt{color:rgba(235,225,204,.75)}
.woocommerce ul.products li.product:hover .bartocci-loop-cat{color:#e0a08c}
.woocommerce ul.products li.product:hover .bartocci-loop-bottom{border-top-color:rgba(235,225,204,.16)}
.woocommerce div.product div.images{background:var(--bar-panna);border-radius:14px}
.woocommerce div.product div.images img{border-radius:14px;background:transparent;object-fit:contain;mix-blend-mode:multiply;filter:saturate(.96) contrast(1.015)}
.woocommerce div.product .summary{padding-top:14px}
.woocommerce div.product .product_title{font-size:clamp(38px,5vw,65px)!important;line-height:1!important}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--bar-terra)!important;font:italic 700 27px/1.2 var(--bar-serif)!important}
.woocommerce-message,.woocommerce-info{border-top-color:var(--bar-terra)!important;background:var(--bar-panna)!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--bar-terra)!important}
.woocommerce table.shop_table{border-color:var(--bar-line)!important;border-radius:14px!important;background:var(--bar-panna)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce select{border:1px solid var(--bar-line)!important;border-radius:10px!important;background:#fffaf0!important;padding:12px!important}

/* Motion */
[data-bartocci-reveal]{opacity:0;transform:translateY(28px);transition:opacity .95s cubic-bezier(.16,.8,.24,1),transform .95s cubic-bezier(.16,.8,.24,1)}
[data-bartocci-reveal].is-visible{opacity:1;transform:none}
/* FIX v0.6 #2 — se il JS non gira, il contenuto resta comunque visibile. */
html:not(.bartocci-js) [data-bartocci-reveal]{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  [data-bartocci-reveal]{opacity:1;transform:none;transition:none}
  .bartocci-marquee__track{animation:none}
  .bartocci-toast{transition:none}
  /* L'hero resta fermo sulla prima foto: niente dissolvenze, niente zoom. */
  .bartocci-hero__slide{transition:none}
  .bartocci-hero__slide.is-active img{animation:none;transform:scale(1.05)}
  .bartocci-hero__bar.is-active i{animation:none;transform:scaleX(1)}
  .bartocci-hero__controls{display:none}
}

@media(max-width:1180px){
  .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:1020px){
  .bartocci-method__grid{grid-template-columns:1fr 1fr}.bartocci-method-card:first-child{grid-column:1/-1;min-height:520px}
  .bartocci-trust__grid{grid-template-columns:1fr 1fr}
  .bartocci-trust__item:nth-child(odd){padding-left:0}
  .bartocci-trust__item:nth-child(odd)::before{display:none}
}
@media(max-width:880px){
  .bartocci-bottega{grid-template-columns:1fr}.bartocci-bottega__media{min-height:480px}.bartocci-bottega__copy{padding:54px 24px}
  .bartocci-nav{display:none;position:absolute;left:0;right:0;top:66px;padding:8px 24px 18px;background:var(--bar-osso);border-bottom:1px solid var(--bar-line);flex-direction:column;align-items:stretch;gap:0}
  .bartocci-nav.is-open{display:flex}.bartocci-nav a{padding:8px 0;font:italic 600 24px/1 var(--bar-serif)}.bartocci-cart{margin-top:8px;justify-content:center;font:600 13px/1 var(--bar-sans)!important;padding:12px 16px!important}
  .bartocci-menu-toggle{display:block}
  .bartocci-hero{min-height:76svh}.bartocci-hero__slide img{object-position:58% 48%}
  .bartocci-heading-row{display:block}.bartocci-heading-row p{margin-top:18px}
  .bartocci-footer__grid{grid-template-columns:1fr 1fr}.bartocci-footer__grid>div:first-child{grid-column:1/-1}
  .bartocci-contatti__grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .bartocci-banda{grid-template-columns:1fr}
  .bartocci-banda__item{height:270px}
}
@media(max-width:620px){
  .bartocci-wrap{width:min(100% - 28px,1340px)}
  .bartocci-header__inner{height:64px}.bartocci-logo img{height:44px}.bartocci-nav{top:64px}
  .bartocci-hero{min-height:74svh}.bartocci-display--hero{font-size:clamp(50px,15vw,80px)}.bartocci-hero__lead{font-size:15px}.bartocci-btn{width:100%}
  .bartocci-hero__controls{padding-bottom:14px;gap:12px}.bartocci-hero__bar{max-width:none}
  .bartocci-hero__pause{padding:6px 11px;font-size:9px}
  .bartocci-hero__content{padding-bottom:clamp(52px,10vw,72px)}
  .bartocci-display--section{font-size:clamp(38px,14vw,66px)}
  .bartocci-trust__grid{grid-template-columns:1fr;gap:0}
  .bartocci-trust__item,.bartocci-trust__item + .bartocci-trust__item{padding:18px 0}
  .bartocci-trust__item + .bartocci-trust__item::before{left:0;right:0;top:0;bottom:auto;width:auto;height:1px}
  .bartocci-home-tabs,.bartocci-shop-tabs{align-items:flex-start}.bartocci-home-tabs__count,.bartocci-shop-tabs__count{width:100%;margin:8px 0 0}
  .bartocci-product-group__heading{gap:9px}.bartocci-product-group__heading h3{font-size:23px}.bartocci-product-group__count{font-size:8.5px}
  .bartocci-products,.woocommerce ul.products{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .bartocci-product-card__body{padding:12px}.bartocci-product-card__title{font-size:18px}
  .bartocci-product-card__tagline{display:none}
  .bartocci-product-card__bottom{align-items:stretch;flex-direction:column}
  .bartocci-product-card__price{font-size:20px}
  .bartocci-product-card .button{width:100%}
  .bartocci-loop-excerpt{display:none}
  .bartocci-loop-bottom{align-items:stretch;flex-direction:column;padding:12px}
  .bartocci-loop-bottom .price{font-size:20px!important}
  .bartocci-loop-bottom .button{width:100%!important}
  .bartocci-bottega__actions .bartocci-btn{width:100%}
  .bartocci-form__grid{grid-template-columns:1fr;gap:16px}
  .bartocci-form__submit .bartocci-btn{width:100%}
  .bartocci-form__note{width:100%;text-align:center}

  .bartocci-method__grid{grid-template-columns:1fr}.bartocci-method-card:first-child{grid-column:auto}.bartocci-method-card{min-height:420px!important}
  .bartocci-footer__grid{grid-template-columns:1fr}.bartocci-footer__grid>div:first-child{grid-column:auto}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:18px!important}
}

@media(max-width:430px){
  .bartocci-products,.woocommerce ul.products{grid-template-columns:1fr!important}
  .bartocci-product-card__tagline,.bartocci-loop-excerpt{display:block}
  .bartocci-product-card__bottom,.bartocci-loop-bottom{flex-direction:row;align-items:flex-end}
  .bartocci-product-card .button,.bartocci-loop-bottom .button{width:auto!important}
}

/* ==========================================================
   v0.13 — rifinitura desktop da feedback PC (01/09/2026)
   Griglia più coerente, titoli meno dispersivi e hero kicker
   trattato come elemento editoriale vero, non come micro-label.
   Il mobile resta invariato.
   ========================================================== */
@media (min-width:1021px){
  :root{
    --bar-maxw:1280px;
    --bar-gutter:clamp(48px,5.55vw,80px);
    --sp-section:clamp(76px,6.7vw,96px);
    --sp-block:clamp(30px,3.1vw,44px);
    --sp-item:clamp(16px,1.55vw,22px);
    --bar-header-h:72px;
  }

  /* Header e contenitori: stessa linea verticale in tutte le sezioni. */
  .bartocci-header__inner{height:72px}
  .bartocci-wrap{width:min(var(--bar-maxw),calc(100% - var(--bar-gutter) * 2))}

  /* Hero: il testo occupa una colonna precisa e respira senza perdersi. */
  .bartocci-hero{min-height:min(820px,calc(100svh - 72px));align-items:center}
  .bartocci-hero__content{
    width:min(var(--bar-maxw),calc(100% - var(--bar-gutter) * 2));
    max-width:none;
    padding:72px 0 94px;
  }
  .bartocci-hero__content > *{max-width:650px}
  .bartocci-hero__kicker{
    display:flex;
    align-items:center;
    gap:14px;
    width:max-content;
    max-width:650px;
    margin:0 0 24px;
    color:#f0c0ae;
    font:600 13px/1.35 var(--bar-sans);
    letter-spacing:.035em;
    text-transform:none;
  }
  .bartocci-hero__kicker::before{
    content:"";
    width:34px;
    height:1.5px;
    flex:0 0 34px;
    background:var(--bar-terra);
  }
  .bartocci-display--hero{
    max-width:650px;
    font-size:clamp(76px,7.4vw,110px);
    line-height:.95;
    letter-spacing:-.018em;
  }
  .bartocci-hero__lead{
    max-width:560px;
    margin-top:26px;
    font-size:17px;
    line-height:1.62;
  }
  .bartocci-hero__actions{margin-top:28px;gap:10px}
  .bartocci-hero__controls{
    width:min(var(--bar-maxw),calc(100% - var(--bar-gutter) * 2));
    padding-left:0;
    padding-right:0;
  }

  /* Trust: quattro colonne identiche, bordi e baseline regolari. */
  .bartocci-trust__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .bartocci-trust__item,
  .bartocci-trust__item + .bartocci-trust__item{
    padding-top:22px;
    padding-bottom:22px;
    padding-right:26px;
  }
  .bartocci-trust__item + .bartocci-trust__item{padding-left:26px}

  /* Titoli sezione più editoriali e meno enormi: migliorano allineamenti. */
  .bartocci-display--section{
    font-size:clamp(54px,5.1vw,74px);
    line-height:.98;
    letter-spacing:-.012em;
  }
  .bartocci-heading-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) 390px;
    align-items:end;
    gap:72px;
    margin-bottom:36px;
  }
  .bartocci-heading-row p{
    max-width:390px;
    margin:0 0 4px;
    padding-left:20px;
    border-left:1px solid var(--bar-line);
    font-size:14px;
    line-height:1.7;
  }
  .bartocci-heading-row .bartocci-eyebrow{margin-bottom:12px}

  /* Shop: meno livelli ridondanti, cinque best seller perfettamente in griglia. */
  .bartocci-home-tabs{margin-bottom:26px}
  .bartocci-product-group--featured .bartocci-product-group__heading{display:none}
  .bartocci-product-group--featured{margin-bottom:0}
  .bartocci-product-group--featured .bartocci-products{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:18px;
  }
  .bartocci-shop-all{margin-top:36px;text-align:left}

  /* Laboratorio: tre card con lo stesso peso visivo e testi allineati. */
  .bartocci-method__head{max-width:820px;margin-bottom:38px}
  .bartocci-method__head p{max-width:720px;margin-top:18px;font-size:16px;line-height:1.72}
  .bartocci-method__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
  .bartocci-method-card{min-height:500px}
  .bartocci-method-card__copy{left:24px;right:24px;bottom:24px}
  .bartocci-banda__item{height:430px}
  .bartocci-banda__item figcaption{left:26px;right:26px;bottom:22px;font-size:26px}

  /* Visita: proporzioni e colonna testo meno compresse. */
  .bartocci-bottega{grid-template-columns:1.04fr .96fr;min-height:650px}
  .bartocci-bottega__media{min-height:650px}
  .bartocci-bottega__copy{padding:80px max(56px,5vw)}
  .bartocci-bottega__copy-inner{max-width:520px}
  .bartocci-orari{max-width:430px}

  /* Contatti: due colonne più equilibrate sulla stessa griglia. */
  .bartocci-contatti__grid{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:88px;align-items:center}
  .bartocci-contatti__copy{align-self:center;max-width:500px}
  .bartocci-contatti__copy p{max-width:480px}
  .bartocci-contatti__form{width:100%;max-width:720px;justify-self:end}
}

/* v0.16 — contatti rapidi: WhatsApp, chiamate e ordini */
.bartocci-btn--whatsapp{background:var(--bar-terra)!important;color:#fff!important;border-color:var(--bar-terra)!important}
.bartocci-btn--whatsapp:hover{background:var(--bar-terra-deep)!important;border-color:var(--bar-terra-deep)!important;color:#fff!important}

.bartocci-contatti__quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:26px;max-width:480px}
.bartocci-contatti__quick a{display:flex;flex-direction:column;gap:3px;padding:14px 16px;border:1.5px solid var(--bar-nero);border-radius:12px;color:var(--bar-nero);text-decoration:none;transition:background .2s,color .2s,transform .2s}
.bartocci-contatti__quick a:hover{background:var(--bar-nero);color:var(--bar-osso);transform:translateY(-1px)}
.bartocci-contatti__quick strong{font:600 11px/1.25 var(--bar-sans);letter-spacing:.08em;text-transform:uppercase}
.bartocci-contatti__quick span{font:500 14px/1.3 var(--bar-sans);font-variant-numeric:tabular-nums}

.bartocci-product-contact{margin:24px 0 0;padding:18px 20px;border:1.5px solid var(--bar-line);border-radius:14px;background:var(--bar-osso)}
.bartocci-product-contact p{margin:0 0 14px!important;font:400 14px/1.55 var(--bar-sans);color:var(--bar-muted)}
.bartocci-product-contact p strong{color:var(--bar-nero);font-weight:650}
.bartocci-product-contact__actions{display:flex;flex-wrap:wrap;gap:10px}
.bartocci-product-contact__actions .bartocci-btn{font-size:11px;padding:11px 15px}

.bartocci-whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:1190;display:inline-flex;align-items:center;gap:9px;padding:12px 16px;border-radius:999px;background:var(--bar-terra);color:#fff!important;text-decoration:none!important;font:650 12px/1 var(--bar-sans);letter-spacing:.02em;box-shadow:0 10px 30px rgba(27,22,19,.24);transition:transform .2s,background .2s,box-shadow .2s}
.bartocci-whatsapp-float:hover{background:var(--bar-terra-deep);transform:translateY(-2px);box-shadow:0 14px 34px rgba(27,22,19,.3)}
.bartocci-whatsapp-float__dot{width:9px;height:9px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.18)}

@media(max-width:700px){
  .bartocci-contatti__quick{grid-template-columns:1fr}
  .bartocci-whatsapp-float{right:14px;bottom:14px;padding:12px 14px}
  .bartocci-product-contact__actions{flex-direction:column}
  .bartocci-product-contact__actions .bartocci-btn{justify-content:center;text-align:center}
}

/* ========================================================================
 * v0.18 — FINAL POLISH: gerarchia, storia, shop e micro-interazioni
 * ===================================================================== */

/* Bottoni: area cliccabile più solida e transizione meno nervosa. */
.bartocci-btn,.bartocci-product-card .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{
  min-height:46px;
  transition:background .22s ease,color .22s ease,transform .22s ease,border-color .22s ease!important;
}

/* Hero: più editoriale, testo più leggibile e immagine meno "banner". */
.bartocci-hero__media::after{
  background:
    linear-gradient(90deg,rgba(27,22,19,.82) 0%,rgba(27,22,19,.43) 48%,rgba(27,22,19,.16) 76%),
    linear-gradient(0deg,rgba(27,22,19,.72) 0%,rgba(27,22,19,.05) 48%);
}
.bartocci-hero__lead{max-width:570px}
.bartocci-hero__actions .bartocci-btn:first-child{box-shadow:0 10px 28px rgba(27,22,19,.18)}

/* Shop: le card restano calde anche in hover; niente inversione nera aggressiva. */
.bartocci-product-card{
  box-shadow:0 1px 0 rgba(27,22,19,.06);
  transition:transform .28s cubic-bezier(.2,.7,.2,1),box-shadow .28s ease,border-color .28s ease,background .28s ease;
}
.bartocci-product-card:hover,.bartocci-product-card:focus-within{
  background:var(--bar-osso);
  border-color:var(--bar-terra);
  transform:translateY(-4px);
  box-shadow:0 16px 34px rgba(27,22,19,.10);
}
.bartocci-product-card:hover .bartocci-product-card__title a,
.bartocci-product-card:focus-within .bartocci-product-card__title a{color:var(--bar-terra-deep)}
.bartocci-product-card:hover .bartocci-product-card__tagline,
.bartocci-product-card:focus-within .bartocci-product-card__tagline{color:var(--bar-muted)}
.bartocci-product-card:hover .bartocci-eyebrow,
.bartocci-product-card:focus-within .bartocci-eyebrow{color:var(--bar-terra)}
.bartocci-product-card:hover .bartocci-product-card__price,
.bartocci-product-card:focus-within .bartocci-product-card__price{color:var(--bar-nero)}
.bartocci-product-card__image{background:#f6efe0}
.bartocci-product-card__image img{transition:transform .75s cubic-bezier(.16,.8,.24,1),filter .3s ease}
.bartocci-product-group--featured .bartocci-product-card:first-child{border-color:var(--bar-terra)}

/* Metodo: il nuovo titolo ha una riga più lunga, gli diamo il respiro giusto. */
.bartocci-method__head{max-width:900px}

/* Sezioni: un po' più di precisione ottica sulle descrizioni laterali. */
.bartocci-heading-row p{letter-spacing:-.004em}

@media (min-width:1021px){
  .bartocci-product-group--featured .bartocci-product-card__body{padding:16px 15px 18px}
}

@media (max-width:880px){
}

@media (max-width:620px){
  .bartocci-product-card:hover,.bartocci-product-card:focus-within{transform:none;box-shadow:none}
}

/* Il tab comunica già lo stato: evitiamo il secondo titolo "Più venduti" su ogni viewport. */
.bartocci-product-group--featured .bartocci-product-group__heading{display:none}

/* ========================================================================
 * v0.19 — STORIA: ponte editoriale tra prodotti e laboratorio
 * ===================================================================== */
.bartocci-story-v19{
  position:relative;
  overflow:hidden;
  background:var(--bar-panna);
  border-top:1px solid var(--bar-line);
}
.bartocci-story-v19 .bartocci-wrap{position:relative;z-index:1}
.bartocci-story-v19__head{margin-bottom:clamp(34px,5vw,68px)}
.bartocci-story-v19__meta{
  display:flex;
  align-items:center;
  gap:18px;
  margin-bottom:clamp(24px,3.5vw,46px);
}
.bartocci-story-v19__rule{height:1px;flex:1;background:var(--bar-line)}
.bartocci-story-v19__place{
  flex:0 0 auto;
  font:600 10px/1 var(--bar-sans);
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--bar-muted);
}
.bartocci-story-v19__intro{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
  gap:clamp(36px,6vw,92px);
  align-items:end;
}
.bartocci-story-v19__intro .bartocci-display--section{max-width:15ch}
.bartocci-story-v19__copy{
  max-width:520px;
  padding-left:clamp(18px,2.4vw,32px);
  border-left:1px solid var(--bar-line);
}
.bartocci-story-v19__copy p{
  margin:0;
  color:#4e4540;
  font-size:15px;
  line-height:1.75;
}
.bartocci-story-v19__copy p+p{margin-top:16px}
.bartocci-story-v19__lead{font-weight:500;color:var(--bar-nero)!important}
.bartocci-story-v19__bridge{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
  min-height:430px;
  border:1px solid var(--bar-line);
  background:var(--bar-osso);
}
.bartocci-story-v19__media{
  margin:0;
  min-height:430px;
  overflow:hidden;
  background:#ded2b9;
}
.bartocci-story-v19__media img{
  display:block;
  width:100%;
  height:100%;
  min-height:430px;
  object-fit:cover;
  object-position:center 48%;
  filter:saturate(.9) contrast(1.025);
  transition:transform .9s cubic-bezier(.16,.8,.24,1);
}
.bartocci-story-v19__bridge:hover .bartocci-story-v19__media img{transform:scale(1.025)}
.bartocci-story-v19__continuity{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(30px,4.8vw,70px);
  background:var(--bar-nero);
  color:var(--bar-osso);
}
.bartocci-story-v19__chapter{
  display:block;
}
.bartocci-story-v19__year{
  display:block;
  margin-bottom:10px;
  font:italic 700 clamp(34px,3.6vw,54px)/.9 var(--bar-serif);
  letter-spacing:-.02em;
  color:#e0a08c;
}
.bartocci-story-v19__chapter strong{
  display:block;
  margin:0 0 8px;
  font:italic 600 clamp(21px,2.2vw,30px)/1.05 var(--bar-serif);
  color:var(--bar-osso);
}
.bartocci-story-v19__chapter p{
  margin:0;
  max-width:34ch;
  font-size:13.5px;
  line-height:1.6;
  color:rgba(235,225,204,.72);
}
.bartocci-story-v19__divider{
  height:1px;
  margin:clamp(26px,3.4vw,40px) 0;
  background:rgba(235,225,204,.2);
}

@media (max-width:1020px){
  .bartocci-story-v19__intro{grid-template-columns:1fr;gap:28px;align-items:start}
  .bartocci-story-v19__copy{max-width:720px;padding-left:22px}
  .bartocci-story-v19__bridge{grid-template-columns:1.1fr .9fr}
}
@media (max-width:760px){
  .bartocci-story-v19__meta{gap:12px;flex-wrap:wrap}
  .bartocci-story-v19__rule{order:3;flex-basis:100%}
  .bartocci-story-v19__place{margin-left:auto;font-size:9px;letter-spacing:.12em}
  .bartocci-story-v19__copy{padding-left:0;border-left:0;padding-top:20px;border-top:1px solid var(--bar-line)}
  .bartocci-story-v19__copy p{font-size:15px;line-height:1.7}
  .bartocci-story-v19__bridge{grid-template-columns:1fr;min-height:0}
  .bartocci-story-v19__media,.bartocci-story-v19__media img{min-height:300px;height:300px}
  .bartocci-story-v19__continuity{padding:32px 24px 36px}
}
@media (max-width:420px){
  .bartocci-story-v19__meta{align-items:flex-start}
  .bartocci-story-v19__place{width:100%;margin-left:0;margin-top:2px}
  .bartocci-story-v19__rule{display:none}
  .bartocci-story-v19__media,.bartocci-story-v19__media img{height:270px;min-height:270px}
}

@media (prefers-reduced-motion:reduce){
  .bartocci-banda__item img{transition:none}
  .bartocci-story-v19__media img{transition:none!important}
  .bartocci-story-v19__bridge:hover .bartocci-story-v19__media img{transform:none}
}

/* ========================================================================
 * v0.22 — STORIA: impaginazione editoriale più pulita e fotografica
 * ===================================================================== */
.bartocci-story-v22{
  padding:clamp(72px,8vw,118px) 0 clamp(76px,8vw,120px);
  overflow:hidden;
  background:var(--bar-panna);
  border-top:1px solid var(--bar-line);
  border-bottom:1px solid var(--bar-line);
}
.bartocci-story-v22__head{margin-bottom:clamp(34px,4.5vw,64px)}
.bartocci-story-v22__meta{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding-bottom:18px;margin-bottom:clamp(28px,3.5vw,46px);
  border-bottom:1px solid var(--bar-line);
  color:var(--bar-muted);font:500 11px/1.2 var(--bar-sans);letter-spacing:.08em
}
.bartocci-story-v22__intro{
  display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.45fr);
  gap:clamp(32px,6vw,96px);align-items:end
}
.bartocci-story-v22__intro h2{
  margin:0;max-width:19ch;color:var(--bar-nero);
  font:italic 650 clamp(46px,5.6vw,82px)/.98 var(--bar-serif);
  letter-spacing:-.025em
}
.bartocci-story-v22__intro h2 em{font:inherit;font-weight:400;color:var(--bar-terra)}
.bartocci-story-v22__intro p{
  margin:0 0 7px;max-width:34ch;color:#574d46;
  font:400 15px/1.72 var(--bar-sans)
}
.bartocci-story-v22__photos{
  display:grid;grid-template-columns:minmax(0,1.62fr) minmax(280px,.88fr);
  gap:clamp(14px,1.6vw,24px);height:clamp(410px,39vw,610px)
}
.bartocci-story-v22__photo{
  position:relative;margin:0;overflow:hidden;background:#d7c9ad
}
.bartocci-story-v22__photo img{
  display:block;width:100%;height:100%;object-fit:cover;
  filter:saturate(.92) contrast(1.025);
  transition:transform .55s cubic-bezier(.2,.7,.2,1)
}
.bartocci-story-v22__photo--lab img{object-position:center 45%}
.bartocci-story-v22__photo--shop img{object-position:center center}
.bartocci-story-v22__photo:hover img{transform:scale(1.018)}
.bartocci-story-v22__photo figcaption{
  position:absolute;left:18px;bottom:18px;margin:0;
  padding:8px 11px;border:1px solid rgba(243,236,220,.48);border-radius:999px;
  background:rgba(27,22,19,.72);backdrop-filter:blur(7px);
  color:var(--bar-panna);font:600 9px/1 var(--bar-sans);
  letter-spacing:.16em;text-transform:uppercase
}
.bartocci-story-v22__timeline{
  display:grid;grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr);
  align-items:start;margin-top:clamp(30px,4vw,52px);padding-top:clamp(28px,3vw,42px);
  border-top:1px solid var(--bar-line)
}
.bartocci-story-v22__chapter{
  display:grid;grid-template-columns:86px minmax(0,1fr);gap:clamp(18px,2.4vw,34px)
}
.bartocci-story-v22__year{
  color:var(--bar-terra);font:italic 600 clamp(27px,2.6vw,38px)/1 var(--bar-serif)
}
.bartocci-story-v22__chapter strong{
  display:block;max-width:24ch;margin:0 0 10px;
  color:var(--bar-nero);font:italic 600 clamp(21px,1.9vw,28px)/1.12 var(--bar-serif)
}
.bartocci-story-v22__chapter p{
  margin:0;max-width:48ch;color:#62564e;font:400 13px/1.7 var(--bar-sans)
}
.bartocci-story-v22__arrow{
  display:flex;align-items:center;gap:9px;padding:10px 14px 0;color:var(--bar-terra)
}
.bartocci-story-v22__arrow span{height:1px;flex:1;background:currentColor;opacity:.55}
.bartocci-story-v22__arrow b{font:400 21px/1 var(--bar-sans)}

/* Hero: tre fotografie diverse, movimento minimo. */
.bartocci-hero__slide img{transform:scale(1.01)}
.bartocci-hero__slide.is-active img{animation:bartocciHeroDrift 7s ease-out both}
@keyframes bartocciHeroDrift{from{transform:scale(1.035)}to{transform:scale(1.01)}}

@media(max-width:900px){
  .bartocci-story-v22__intro{grid-template-columns:1fr;gap:22px}
  .bartocci-story-v22__intro p{max-width:58ch}
  .bartocci-story-v22__photos{grid-template-columns:1.25fr .75fr;height:clamp(360px,58vw,540px)}
  .bartocci-story-v22__timeline{grid-template-columns:1fr;gap:28px}
  .bartocci-story-v22__arrow{padding:0;width:100%;max-width:120px}
  .bartocci-story-v22__chapter{grid-template-columns:76px 1fr}
}
@media(max-width:620px){
  .bartocci-story-v22{padding-top:58px;padding-bottom:70px}
  .bartocci-story-v22__meta{align-items:flex-start;flex-direction:column;gap:8px}
  .bartocci-story-v22__intro h2{font-size:clamp(43px,13vw,64px);line-height:1.01}
  .bartocci-story-v22__photos{grid-template-columns:1fr;height:auto;gap:12px}
  .bartocci-story-v22__photo--lab{height:116vw;max-height:560px;min-height:390px}
  .bartocci-story-v22__photo--shop{height:68vw;max-height:390px;min-height:240px}
  .bartocci-story-v22__chapter{grid-template-columns:1fr;gap:9px}
  .bartocci-story-v22__arrow{max-width:84px}
}
@media(prefers-reduced-motion:reduce){
  .bartocci-story-v22__photo img{transition:none}
  .bartocci-story-v22__photo:hover img{transform:none}
  .bartocci-hero__slide.is-active img{animation:none}
}

/* ========================================================================
 * v0.24 — STORIA: composizione unica, più editoriale e meno "a card"
 * ===================================================================== */
.bartocci-story-v24{
  padding:clamp(74px,8vw,118px) 0 clamp(82px,9vw,132px);
  overflow:hidden;
  background:var(--bar-panna);
  border-top:1px solid var(--bar-line);
  border-bottom:1px solid var(--bar-line)
}
.bartocci-story-v24__meta{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  margin-bottom:clamp(24px,3vw,38px);padding-bottom:16px;
  border-bottom:1px solid var(--bar-line);
  color:var(--bar-muted);font:500 11px/1.2 var(--bar-sans);letter-spacing:.08em
}
.bartocci-story-v24__stage{
  display:grid;grid-template-columns:minmax(0,1.62fr) minmax(340px,.78fr);
  min-height:clamp(600px,52vw,710px);
  background:var(--bar-nero);color:var(--bar-osso)
}
.bartocci-story-v24__hero{
  position:relative;margin:0;min-height:100%;overflow:hidden;background:#c8b99d
}
.bartocci-story-v24__hero img{
  display:block;width:100%;height:100%;min-height:100%;object-fit:cover;object-position:center center;
  filter:saturate(.9) contrast(1.02);transition:transform .8s cubic-bezier(.16,.8,.24,1)
}
.bartocci-story-v24__hero::after{
  content:"";position:absolute;inset:auto 0 0;height:34%;
  background:linear-gradient(180deg,transparent,rgba(27,22,19,.62));pointer-events:none
}
.bartocci-story-v24__stage:hover .bartocci-story-v24__hero img{transform:scale(1.018)}
.bartocci-story-v24__hero figcaption{
  position:absolute;z-index:2;left:clamp(20px,2.4vw,34px);right:clamp(20px,2.4vw,34px);bottom:22px;
  display:flex;align-items:baseline;justify-content:space-between;gap:18px;
  color:rgba(243,236,220,.84);font:600 10px/1 var(--bar-sans);letter-spacing:.14em;text-transform:uppercase
}
.bartocci-story-v24__hero figcaption b{font:italic 500 24px/1 var(--bar-serif);letter-spacing:0;text-transform:none;color:var(--bar-panna)}
.bartocci-story-v24__panel{
  display:flex;flex-direction:column;min-width:0;
  padding:clamp(34px,4vw,62px) clamp(28px,3.8vw,56px) clamp(28px,3.2vw,46px);
  background:var(--bar-nero);color:var(--bar-osso)
}
.bartocci-story-v24__year{
  display:block;margin-bottom:clamp(22px,2.5vw,34px);
  color:#df967f;font:italic 500 clamp(54px,5vw,78px)/.82 var(--bar-serif);letter-spacing:-.035em
}
.bartocci-story-v24__panel h2{
  margin:0;max-width:12ch;color:var(--bar-osso);
  font:italic 600 clamp(33px,3.25vw,50px)/1.02 var(--bar-serif);letter-spacing:-.022em
}
.bartocci-story-v24__lead{
  margin:20px 0 0;max-width:35ch;color:rgba(235,225,204,.74);
  font:400 14px/1.68 var(--bar-sans)
}
.bartocci-story-v24__today{
  margin-top:clamp(30px,3.3vw,44px);padding-top:clamp(24px,2.7vw,34px);
  border-top:1px solid rgba(235,225,204,.2)
}
.bartocci-story-v24__today>span{
  display:block;margin-bottom:9px;color:#df967f;
  font:700 10px/1 var(--bar-sans);letter-spacing:.16em;text-transform:uppercase
}
.bartocci-story-v24__today strong{
  display:block;max-width:28ch;margin:0 0 8px;color:var(--bar-osso);
  font:italic 550 clamp(20px,1.8vw,27px)/1.1 var(--bar-serif)
}
.bartocci-story-v24__today p{
  margin:0;max-width:38ch;color:rgba(235,225,204,.68);font:400 13px/1.62 var(--bar-sans)
}
.bartocci-story-v24__detail{
  position:relative;margin:auto 0 0;padding-top:clamp(28px,3vw,42px);height:clamp(138px,12vw,178px);overflow:hidden
}
.bartocci-story-v24__detail img{
  display:block;width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:saturate(.88) contrast(1.025)
}
.bartocci-story-v24__detail figcaption{
  position:absolute;left:12px;bottom:12px;margin:0;padding:7px 9px;
  background:rgba(27,22,19,.76);color:var(--bar-panna);
  font:700 8px/1 var(--bar-sans);letter-spacing:.15em;text-transform:uppercase
}
@media(max-width:980px){
  .bartocci-story-v24__stage{grid-template-columns:1.15fr .85fr;min-height:590px}
  .bartocci-story-v24__panel{padding-left:32px;padding-right:32px}
}
@media(max-width:760px){
  .bartocci-story-v24{padding-top:58px;padding-bottom:72px}
  .bartocci-story-v24__meta{align-items:flex-start;flex-direction:column;gap:8px}
  .bartocci-story-v24__stage{grid-template-columns:1fr;min-height:0}
  .bartocci-story-v24__hero{height:clamp(330px,74vw,500px);min-height:0}
  .bartocci-story-v24__hero img{min-height:0}
  .bartocci-story-v24__panel{padding:34px 24px 24px}
  .bartocci-story-v24__year{font-size:58px;margin-bottom:22px}
  .bartocci-story-v24__panel h2{max-width:14ch;font-size:clamp(34px,9.6vw,48px)}
  .bartocci-story-v24__detail{height:clamp(150px,42vw,230px);margin-top:30px;padding-top:0}
}
@media(max-width:420px){
  .bartocci-story-v24__hero{height:310px}
  .bartocci-story-v24__hero figcaption{left:16px;right:16px;bottom:16px}
  .bartocci-story-v24__hero figcaption b{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
  .bartocci-story-v24__hero img{transition:none}
  .bartocci-story-v24__stage:hover .bartocci-story-v24__hero img{transform:none}
}

.bartocci-story-facts{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  border:1px solid var(--bar-line);border-top:0;background:var(--bar-osso)
}
.bartocci-story-fact{
  min-width:0;padding:22px clamp(18px,2.4vw,30px);
  border-right:1px solid var(--bar-line)
}
.bartocci-story-fact:last-child{border-right:0}
.bartocci-story-fact strong{
  display:block;margin-bottom:6px;color:var(--bar-terra);
  font:italic 600 clamp(25px,2.4vw,36px)/1 var(--bar-serif);letter-spacing:-.02em
}
.bartocci-story-fact span{
  display:block;max-width:28ch;color:var(--bar-muted);
  font:500 12px/1.5 var(--bar-sans)
}
@media(max-width:700px){
  .bartocci-story-facts{grid-template-columns:1fr}
  .bartocci-story-fact{border-right:0;border-bottom:1px solid var(--bar-line)}
  .bartocci-story-fact:last-child{border-bottom:0}
}


/* =========================================================================
   v0.27 — RITOCCO ESTETICO (polish pass)
   Più profondità, morbidezza e respiro, senza cambiare l'identità:
   stesso osso/nero/terracotta, stessa tipografia. Solo più "premium".
   ========================================================================= */

/* Profondità sulle card prodotto: ombra calda tenue + sollevamento all'hover.
   Toglie l'effetto "piatto" del bordo secco e dà un tocco da boutique. */
.bartocci-product-card,
.woocommerce ul.products li.product{
  box-shadow:0 1px 2px rgba(27,22,19,.04), 0 10px 26px -18px rgba(27,22,19,.28)!important;
  transition:background .3s, box-shadow .35s cubic-bezier(.16,.8,.24,1), transform .35s cubic-bezier(.16,.8,.24,1)!important;
}
.bartocci-product-card:hover,
.bartocci-product-card:focus-within,
.woocommerce ul.products li.product:hover,
.woocommerce ul.products li.product:focus-within{
  transform:translateY(-5px);
  box-shadow:0 22px 44px -22px rgba(27,22,19,.5)!important;
}

/* Bottoni: micro-sollevamento e ombra calda — più invitanti da toccare. */
.bartocci-btn,.bartocci-product-card .button,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{
  box-shadow:0 10px 22px -14px rgba(166,72,47,.7)!important;
}
.bartocci-btn:hover,.bartocci-product-card .button:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 16px 30px -14px rgba(138,58,36,.78)!important;
}
.bartocci-btn--ghost,.bartocci-btn--outline{box-shadow:none!important}

/* Hero: titolo un filo più contenuto (meno "gridato", più elegante) e
   vignettatura calda in basso perché il testo stacchi meglio dalla foto. */
.bartocci-display--hero{font-size:clamp(50px,9vw,124px);line-height:1.0;letter-spacing:-.01em}
.bartocci-hero__media::after{
  background:
    radial-gradient(120% 85% at 70% 8%, rgba(27,22,19,.12), transparent 60%),
    linear-gradient(180deg,rgba(27,22,19,.52) 0%,rgba(27,22,19,.10) 40%,rgba(27,22,19,.94) 100%);
}
.bartocci-hero__lead{color:rgba(235,225,204,.92)}

/* Pillole categoria: angoli e pressione più morbidi all'attivazione. */
.bartocci-cat-pill{transition:background .18s,color .18s,transform .12s,box-shadow .2s}
.bartocci-cat-pill:hover,.bartocci-cat-pill.is-active{box-shadow:0 8px 18px -12px rgba(27,22,19,.5)}

/* Form e bottega: un velo d'ombra per dare materia ai riquadri chiari. */
.bartocci-form{box-shadow:0 1px 2px rgba(27,22,19,.03), 0 20px 50px -34px rgba(27,22,19,.4)}
.bartocci-form input:focus,.bartocci-form textarea:focus{box-shadow:0 0 0 3px rgba(166,72,47,.12)}

/* Trust bar: un soffio di respiro in più fra le quattro voci. */
.bartocci-trust__item strong{letter-spacing:.005em}

/* Rispetta chi chiede meno movimento: niente sollevamenti animati. */
@media(prefers-reduced-motion:reduce){
  .bartocci-product-card,.woocommerce ul.products li.product,
  .bartocci-btn,.bartocci-cat-pill{transition:none!important}
  .bartocci-product-card:hover,.woocommerce ul.products li.product:hover,
  .bartocci-btn:hover{transform:none!important}
}

/* =========================================================================
   v0.28 — HERO COMMERCIALE + MOVIMENTO
   L'hero spinge al negozio; entrata animata in sequenza per dare vita.
   ========================================================================= */

/* CTA primaria dell'hero più grande e importante. */
.bartocci-btn--lg{padding:16px 30px!important;font-size:13px!important}

/* Entrata in sequenza del contenuto hero al caricamento.
   Ogni elemento sale e appare con un piccolo ritardo progressivo. */
@keyframes bartocci-hero-in{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
html.bartocci-js .bartocci-hero__content > *{opacity:0;animation:bartocci-hero-in .9s cubic-bezier(.16,.8,.24,1) forwards}
html.bartocci-js .bartocci-hero__kicker{animation-delay:.10s}
html.bartocci-js .bartocci-display--hero{animation-delay:.22s}
html.bartocci-js .bartocci-hero__lead{animation-delay:.40s}
html.bartocci-js .bartocci-hero__actions{animation-delay:.54s}
/* Le due righe del titolo entrano a loro volta, una dopo l'altra. */
html.bartocci-js .bartocci-display--hero .bartocci-display-line{display:block;opacity:0;animation:bartocci-hero-in .95s cubic-bezier(.16,.8,.24,1) forwards}
html.bartocci-js .bartocci-display--hero .bartocci-display-line:nth-child(1){animation-delay:.22s}
html.bartocci-js .bartocci-display--hero .bartocci-display-line:nth-child(2){animation-delay:.36s}


/* Lo scorrimento allo scroll (reveal) viaggia un filo di più e scala appena:
   movimento più percepibile senza esagerare. */
[data-bartocci-reveal]{transform:translateY(38px) scale(.985)}
[data-bartocci-reveal].is-visible{transform:none}

/* Il titolo di sezione si "svela" con una leggera maschera dal basso. */
.bartocci-section [data-bartocci-reveal] .bartocci-display--section{
  clip-path:inset(0 0 100% 0);transition:clip-path 1s cubic-bezier(.16,.8,.24,1) .1s;
}
.bartocci-section [data-bartocci-reveal].is-visible .bartocci-display--section{clip-path:inset(0 0 0 0)}

@media(prefers-reduced-motion:reduce){
  html.bartocci-js .bartocci-hero__content > *,
  html.bartocci-js .bartocci-display--hero .bartocci-display-line{opacity:1;animation:none}
  [data-bartocci-reveal]{transform:none}
  .bartocci-section [data-bartocci-reveal] .bartocci-display--section{clip-path:none;transition:none}
}

/* =========================================================================
   v0.29 — SECONDA METÀ A FASCE
   Ogni sezione è una fascia a tutta larghezza: foto a pieno schermo con il
   testo sopra, alternate a fasce chiare. Niente riquadri, niente card.
   ========================================================================= */

.bartocci-band{position:relative;overflow:hidden}

/* Titoli delle fasce: stesso corsivo dell'hero, una taglia sotto. */
.bartocci-band__title{
  margin:0;font-family:var(--bar-serif);font-style:italic;font-weight:700;
  font-size:clamp(46px,7.4vw,112px);line-height:.98;letter-spacing:-.01em;color:var(--bar-osso)
}
.bartocci-band__title em{font:inherit;font-weight:400;color:#e0a08c}
.bartocci-band__title--dark{color:var(--bar-nero)}
.bartocci-band__title--dark em{color:var(--bar-terra)}
.bartocci-band__text{
  max-width:46ch;margin:clamp(20px,2.4vw,30px) 0 0;
  font:400 clamp(16px,1.35vw,18.5px)/1.7 var(--bar-sans);color:rgba(235,225,204,.9)
}
.bartocci-band__text a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(235,225,204,.45)}
.bartocci-band__text a:hover{border-bottom-color:currentColor}
.bartocci-band__text--dark{color:#4e4540}

/* ---------- Fasce fotografiche (Storia, Visita) ---------- */
.bartocci-band--photo{
  min-height:clamp(620px,92vh,980px);display:flex;align-items:flex-end;
  background:var(--bar-nero);color:var(--bar-osso)
}
.bartocci-band__media{position:absolute;inset:-14% 0;will-change:transform;transform:translate3d(0,var(--bar-py,0px),0)}
.bartocci-band__media img{width:100%;height:100%;object-fit:cover;display:block}
.bartocci-band--storia .bartocci-band__media img{object-position:62% 40%}
.bartocci-band--visita .bartocci-band__media img{object-position:30% 55%}
.bartocci-band--photo::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}
.bartocci-band--storia::after{
  background:
    linear-gradient(90deg,rgba(27,22,19,.86) 0%,rgba(27,22,19,.55) 42%,rgba(27,22,19,.05) 75%),
    linear-gradient(0deg,rgba(27,22,19,.9) 0%,transparent 45%)
}
.bartocci-band--visita::after{
  background:
    linear-gradient(270deg,rgba(27,22,19,.9) 0%,rgba(27,22,19,.62) 45%,rgba(27,22,19,.08) 78%),
    linear-gradient(0deg,rgba(27,22,19,.75) 0%,transparent 40%)
}
.bartocci-band__inner{position:relative;z-index:2;padding:var(--sp-section) 0 clamp(40px,5vw,64px)}
.bartocci-band__inner--right{display:flex;justify-content:flex-end}
.bartocci-band__inner--right .bartocci-band__copy{max-width:520px}
.bartocci-band__copy{max-width:760px}

/* I tre dati della storia: solo tipografia, separati da filetti. */
.bartocci-band__facts{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:clamp(40px,5vw,72px) 0 0;
  border-top:1px solid rgba(235,225,204,.28);max-width:980px
}
.bartocci-band__facts > div{padding:18px clamp(14px,2vw,28px) 0 0}
.bartocci-band__facts > div + div{padding-left:clamp(14px,2vw,28px);border-left:1px solid rgba(235,225,204,.2)}
.bartocci-band__facts dt{font:italic 600 clamp(26px,2.6vw,38px)/1 var(--bar-serif);color:var(--bar-osso)}
.bartocci-band__facts dd{margin:8px 0 0;font:500 13px/1.45 var(--bar-sans);color:rgba(235,225,204,.72);max-width:24ch}

/* Orari sulla foto scura */
.bartocci-orari--band{margin:26px 0 30px;max-width:420px}
.bartocci-orari--band .bartocci-orari__row{border-bottom-color:rgba(235,225,204,.18)}
.bartocci-orari--band dt{color:var(--bar-osso)}
.bartocci-orari--band dd{color:rgba(235,225,204,.78)}
.bartocci-orari--band .is-chiuso dt,.bartocci-orari--band .is-chiuso dd{color:rgba(235,225,204,.55)}
.bartocci-band__actions{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- Fascia Metodo: testo a sinistra, foto che arriva al bordo ---------- */
.bartocci-band--metodo{background:var(--bar-osso)}
.bartocci-band__split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:clamp(640px,90vh,920px)}
.bartocci-band__split-copy{
  align-self:center;
  padding:var(--sp-section) clamp(28px,5vw,88px) var(--sp-section) max(var(--bar-gutter),calc((100vw - var(--bar-maxw)) / 2))
}
.bartocci-band__split-media{position:relative;margin:0;overflow:hidden;background:var(--bar-nero-soft)}
.bartocci-band__split-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%}

/* I tre passaggi: elenco tipografico, niente box. */
.bartocci-steps{list-style:none;margin:clamp(36px,4.5vw,56px) 0 0;padding:0;counter-reset:step;max-width:560px}
.bartocci-steps li{
  counter-increment:step;display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:10px;
  padding:18px 0;border-top:1px solid var(--bar-line)
}
.bartocci-steps li:last-child{border-bottom:1px solid var(--bar-line)}
.bartocci-steps li::before{content:counter(step);grid-row:span 2;font:italic 500 30px/1 var(--bar-serif);color:var(--bar-terra)}
.bartocci-steps strong{font:italic 600 22px/1.15 var(--bar-serif);color:var(--bar-nero)}
.bartocci-steps span{margin-top:5px;font:400 14.5px/1.6 var(--bar-sans);color:var(--bar-muted)}

/* ---------- Striscia di 4 foto da bordo a bordo ---------- */
.bartocci-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;background:var(--bar-nero)}
.bartocci-strip__item{position:relative;margin:0;height:clamp(300px,34vw,520px);overflow:hidden}
.bartocci-strip__item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s cubic-bezier(.16,.8,.24,1)}
.bartocci-strip__item::after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(180deg,transparent,rgba(27,22,19,.72));pointer-events:none}
.bartocci-strip__item figcaption{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;font:italic 500 clamp(19px,1.7vw,24px)/1.1 var(--bar-serif);color:var(--bar-osso)}
.bartocci-strip__item:hover img{transform:scale(1.04)}

/* ---------- Fascia Contatti: chiara, modulo senza scatola ---------- */
.bartocci-band--contatti{background:var(--bar-panna);padding:var(--sp-section) 0}
.bartocci-band__contatti{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,6vw,96px);align-items:start}
.bartocci-quick{list-style:none;margin:clamp(30px,4vw,44px) 0 0;padding:0;max-width:440px}
.bartocci-quick li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;border-top:1px solid var(--bar-line)}
.bartocci-quick li:last-child{border-bottom:1px solid var(--bar-line)}
.bartocci-quick li span{font:500 13px/1.3 var(--bar-sans);color:var(--bar-muted)}
.bartocci-quick li a{font:italic 600 20px/1.2 var(--bar-serif);color:var(--bar-nero);text-decoration:none;overflow-wrap:anywhere;text-align:right}
.bartocci-quick li a:hover{color:var(--bar-terra)}
.bartocci-band--contatti .bartocci-form{background:transparent;border:0;border-radius:0;padding:0;box-shadow:none}
.bartocci-band--contatti .bartocci-form input[type=text],
.bartocci-band--contatti .bartocci-form input[type=email],
.bartocci-band--contatti .bartocci-form input[type=tel],
.bartocci-band--contatti .bartocci-form textarea{background:var(--bar-osso)}

/* ---------- Responsive ---------- */
@media(max-width:900px){
  .bartocci-band--photo{min-height:auto}
  .bartocci-band__inner{padding:clamp(220px,52vw,340px) 0 44px}
  .bartocci-band--storia::after,.bartocci-band--visita::after{
    background:linear-gradient(0deg,rgba(27,22,19,.94) 0%,rgba(27,22,19,.72) 48%,rgba(27,22,19,.15) 100%)
  }
  .bartocci-band__inner--right{justify-content:flex-start}
  .bartocci-band__split{grid-template-columns:1fr;min-height:0}
  .bartocci-band__split-copy{padding:var(--sp-section) var(--bar-gutter) 40px}
  .bartocci-band__split-media{height:min(110vw,560px)}
  .bartocci-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bartocci-strip__item{height:clamp(220px,62vw,380px)}
  .bartocci-band__contatti{grid-template-columns:1fr}
}
@media(max-width:600px){
  .bartocci-band__facts{grid-template-columns:1fr}
  .bartocci-band__facts > div + div{padding-left:0;border-left:0;border-top:1px solid rgba(235,225,204,.16)}
  .bartocci-band__facts > div{padding:14px 0}
  .bartocci-quick li{flex-direction:column;gap:4px}
  .bartocci-quick li a{text-align:left}
}
@media(prefers-reduced-motion:reduce){
  .bartocci-band__media{transform:none!important}
  .bartocci-strip__item img{transition:none}
}

/* v0.29 — rifiniture dopo la revisione visiva */
body.bartocci-restyling{margin:0}
/* Titoli nelle colonne a metà pagina: una taglia sotto, così stanno su due righe. */
.bartocci-band__title--md{font-size:clamp(42px,5.2vw,82px)}
/* Modulo: i campi obbligatori vuoti non devono sembrare già in errore.
   Il bordo rosso compare solo dopo che il cliente ci ha scritto. */
.bartocci-form input:invalid:not(:placeholder-shown),
.bartocci-form textarea:invalid:not(:placeholder-shown){border-color:var(--bar-line)}
.bartocci-form input:user-invalid,
.bartocci-form textarea:user-invalid{border-color:var(--bar-terra)}

/* =========================================================================
   v0.31 — SLIDESHOW NEL RIQUADRO DELLA FASCIA METODO
   Le foto scorrono dove prima c'era solo Francesco: la nuova entra da
   destra, la vecchia esce a sinistra.
   ========================================================================= */
.bartocci-slider{overflow:hidden}
.bartocci-slider__slide{
  position:absolute;inset:0;margin:0;
  transform:translateX(100%);visibility:hidden;transition:none
}
.bartocci-slider__slide.is-active,
.bartocci-slider__slide.is-leaving{visibility:visible;transition:transform 1.05s cubic-bezier(.65,0,.35,1)}
.bartocci-slider__slide.is-active{transform:translateX(0);z-index:2}
.bartocci-slider__slide.is-leaving{transform:translateX(-100%);z-index:1}
.bartocci-slider__slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%}
.bartocci-slider__slide::after{content:"";position:absolute;inset:auto 0 0;height:38%;background:linear-gradient(180deg,transparent,rgba(27,22,19,.7));pointer-events:none}
.bartocci-slider__slide figcaption{
  position:absolute;z-index:2;left:clamp(20px,3vw,40px);right:20px;bottom:clamp(44px,5vw,64px);
  font:italic 500 clamp(22px,2vw,30px)/1.1 var(--bar-serif);color:var(--bar-osso)
}
/* Barre di avanzamento, come nell'hero */
.bartocci-slider__bars{
  position:absolute;z-index:3;left:clamp(20px,3vw,40px);right:clamp(20px,3vw,40px);bottom:clamp(22px,2.6vw,32px);
  display:flex;gap:6px
}
.bartocci-slider__bars span{position:relative;flex:1 1 0;max-width:64px;height:2px;border-radius:2px;background:rgba(235,225,204,.3);overflow:hidden}
.bartocci-slider__bars i{position:absolute;inset:0;transform-origin:left;transform:scaleX(0);background:var(--bar-osso)}
.bartocci-slider__bars span.is-active i{animation:bartocci-fill 4.5s linear forwards;animation-play-state:paused}
.bartocci-slider.is-playing .bartocci-slider__bars span.is-active i{animation-play-state:running}
@media(prefers-reduced-motion:reduce){
  .bartocci-slider__slide{transition:none!important}
  .bartocci-slider__bars{display:none}
}

/* =========================================================================
   v0.32 — CORREZIONI HOME dopo l'analisi
   ========================================================================= */
/* "a casa tua" leggibile sulla foto scura: stesso terracotta chiaro delle
   altre fasce fotografiche, più un'ombra morbida dietro tutto il titolo. */
.bartocci-display--hero em{color:#e0a08c}
.bartocci-display--hero{text-shadow:0 2px 30px rgba(20,15,12,.38)}

/* Titolo hero su computer: tre righe scandite nella colonna di sinistra
   ("I salumi delle / Marche, / a casa tua."), senza coprire il viso nella
   foto e senza spezzarsi in quattro. */
@media(min-width:1021px){
  .bartocci-display--hero{max-width:700px;font-size:clamp(68px,6.9vw,104px);line-height:.98}
}

/* Barra garanzie su telefono: 2×2 invece di quattro righe impilate,
   così il negozio arriva prima. */
@media(max-width:620px){
  .bartocci-trust__grid{grid-template-columns:1fr 1fr}
  .bartocci-trust__item,
  .bartocci-trust__item + .bartocci-trust__item{padding:16px 12px 16px 0}
  .bartocci-trust__item + .bartocci-trust__item::before{display:none}
  .bartocci-trust__item:nth-child(even){padding-left:14px;border-left:1px solid var(--bar-line)}
  .bartocci-trust__item:nth-child(n+3){border-top:1px solid var(--bar-line)}
}

/* v0.33 — Logo del footer scontornato: niente riquadro crema, il logo sta
   direttamente sul fondo scuro (versione con le scritte in crema). */
.bartocci-footer__logo{background:transparent;padding:0;border-radius:0}
.bartocci-footer__logo img{height:110px;width:auto}
@media(max-width:620px){.bartocci-footer__logo img{height:96px}}
