/*
 * Vetrina pubblica — tema semplice coordinato al logo del negozio.
 * Base bianca, azzurro principale e rosso come accento.
 */
:root{
  --simple-bg:#f5f9fc;
  --simple-card:#ffffff;
  --simple-text:#1f2b33;
  --simple-muted:#677781;
  --simple-line:#dbe8ee;
  --simple-shadow:0 12px 32px rgba(29,73,94,.09);
  --simple-shadow-soft:0 6px 18px rgba(29,73,94,.07);
  --simple-radius:18px;
}

body.public-storefront-body{
  background:var(--simple-bg)!important;
  color:var(--simple-text)!important;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
body.public-storefront-body::before{display:none!important}
.shop-shell{width:min(1180px,calc(100% - 36px))}

/* Header semplice */
.shop-header{
  background:rgba(255,255,255,.98)!important;
  border-bottom:1px solid var(--simple-line)!important;
  box-shadow:none!important;
}
.shop-header-main{
  min-height:126px!important;
  grid-template-columns:minmax(240px,1fr) auto auto!important;
  gap:22px!important;
}
.shop-brand{gap:12px!important}
.shop-logo-frame{
  width:210px!important;
  height:98px!important;
  padding:6px 10px!important;
  background:#fff!important;
  border:0!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
.shop-logo-frame::after{display:none!important}
.shop-logo-frame img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center!important}
.shop-brand.has-shop-logo .shop-brand-copy{display:none!important}
.shop-brand-copy strong{
  font-family:Inter,system-ui,sans-serif!important;
  font-size:24px!important;
  font-weight:900!important;
  color:var(--simple-text)!important;
  letter-spacing:-.02em!important;
}
.shop-brand-copy small{color:var(--simple-muted)!important;font-size:11px!important}
.shop-main-nav{
  gap:2px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.shop-main-nav a{
  padding:10px 12px!important;
  border-radius:10px!important;
  color:var(--simple-text)!important;
  font-size:13px!important;
  font-weight:800!important;
}
.shop-main-nav a:hover,.shop-main-nav a.active{
  background:var(--logo-primary-faint)!important;
  color:var(--logo-primary-dark)!important;
}
.shop-search-jump{
  border:1px solid var(--simple-line)!important;
  background:#fff!important;
  color:var(--logo-primary-dark)!important;
  border-radius:12px!important;
  padding:10px 14px!important;
  box-shadow:none!important;
}
.shop-header-stripe{
  height:4px!important;
  background:linear-gradient(90deg,var(--logo-primary) 0 82%,var(--logo-accent) 82% 100%)!important;
  opacity:1!important;
}

/* Apertura */
.shop-hero{padding:30px 0 22px!important}
.shop-hero::before{display:none!important}
.shop-hero-grid{
  min-height:430px!important;
  grid-template-columns:minmax(0,1fr) minmax(340px,.78fr)!important;
  gap:34px!important;
  padding:38px!important;
  border:1px solid var(--simple-line)!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,#fff 0%,var(--logo-primary-faint) 100%)!important;
  box-shadow:var(--simple-shadow-soft)!important;
}
.shop-hero-grid::before,.shop-hero-grid::after{display:none!important}
.shop-kicker{
  color:var(--logo-accent)!important;
  font-size:11px!important;
  letter-spacing:.12em!important;
}
.shop-kicker.dark{color:var(--logo-primary-dark)!important}
.shop-hero h1,.shop-section-heading h2,.shop-sell-copy h2,.shop-detail-panel h1,.shop-detail-bottom-cta h2{
  font-family:Inter,system-ui,sans-serif!important;
  color:var(--simple-text)!important;
  letter-spacing:-.035em!important;
}
.shop-hero h1{
  font-size:clamp(42px,5vw,66px)!important;
  line-height:1!important;
  margin:12px 0 16px!important;
  max-width:610px!important;
}
.shop-hero-copy>p{font-size:17px!important;line-height:1.6!important;color:var(--simple-muted)!important}
.shop-hero-actions{margin-top:24px!important}
.shop-btn{
  min-height:46px!important;
  border-radius:12px!important;
  padding:11px 17px!important;
  box-shadow:none!important;
}
.shop-btn-primary{
  background:var(--logo-primary)!important;
  color:#fff!important;
}
.shop-btn-primary:hover{background:var(--logo-primary-dark)!important}
.shop-btn-secondary,.shop-btn-outline{
  background:#fff!important;
  color:var(--logo-primary-dark)!important;
  border-color:var(--logo-primary)!important;
}
.shop-btn-secondary:hover,.shop-btn-outline:hover{background:var(--logo-primary-faint)!important}
.shop-btn-light{background:#fff!important;color:var(--logo-primary-dark)!important}
.shop-btn-whatsapp{background:#238c56!important;color:#fff!important}

.shop-window-card{
  padding:10px!important;
  color:var(--simple-text)!important;
  background:#fff!important;
  border:1px solid var(--simple-line)!important;
  border-top:5px solid var(--logo-primary)!important;
  border-radius:18px!important;
  box-shadow:var(--simple-shadow)!important;
}
.shop-window-card::before{display:none!important}
.shop-window-label{
  top:22px!important;
  left:22px!important;
  padding:7px 10px!important;
  background:var(--logo-primary)!important;
  color:#fff!important;
  border:0!important;
  border-radius:8px!important;
  box-shadow:none!important;
  letter-spacing:.08em!important;
}
.shop-window-image{height:300px!important;border-radius:12px!important;background:#eef5f8!important}
.shop-window-caption{padding:15px 8px 7px!important}
.shop-window-caption small{color:var(--simple-muted)!important}
.shop-window-caption h2{
  font-family:Inter,system-ui,sans-serif!important;
  font-size:22px!important;
  color:var(--simple-text)!important;
  letter-spacing:-.02em!important;
}
.shop-window-caption strong{font-size:22px!important;color:var(--logo-primary-dark)!important}
.shop-window-placeholder{
  height:340px!important;
  background:var(--logo-primary-faint)!important;
  color:var(--simple-text)!important;
  border-radius:12px!important;
}
.shop-window-ornament{color:var(--logo-accent)!important}
.shop-window-placeholder strong{font-family:Inter,system-ui,sans-serif!important;font-size:28px!important}
.shop-window-placeholder small{color:var(--simple-muted)!important}

/* Ricerca */
.shop-search-zone{margin-top:14px!important}
.shop-search-bar{
  background:#fff!important;
  border:1px solid var(--simple-line)!important;
  border-radius:16px!important;
  box-shadow:var(--simple-shadow-soft)!important;
}
.shop-search-field,.shop-select-field{
  min-height:50px!important;
  background:#fff!important;
  border:1px solid var(--simple-line)!important;
  border-radius:11px!important;
}
.shop-search-field>span{color:var(--logo-primary)!important}
.shop-search-button{
  min-height:50px!important;
  background:var(--logo-primary)!important;
  border-radius:11px!important;
}
.shop-search-button:hover{background:var(--logo-primary-dark)!important}
.shop-reset-link{color:var(--logo-accent)!important}

/* Sezioni e categorie */
.shop-section{padding:54px 0!important}
.shop-section-heading{margin-bottom:22px!important}
.shop-section-heading h2{font-size:clamp(32px,4vw,44px)!important;line-height:1.05!important;margin:6px 0!important}
.shop-section-heading p{color:var(--simple-muted)!important}
.shop-categories-section{padding-top:48px!important;padding-bottom:20px!important}
.shop-category-rail{gap:10px!important}
.shop-category-pill{
  min-height:70px!important;
  display:flex!important;
  flex-direction:row!important;
  gap:8px!important;
  justify-content:space-between!important;
  text-align:left!important;
  background:#fff!important;
  border:1px solid var(--simple-line)!important;
  border-radius:14px!important;
  padding:14px 16px!important;
  box-shadow:none!important;
}
.shop-category-pill>span{display:none!important}
.shop-category-pill b{font-family:Inter,system-ui,sans-serif!important;font-size:15px!important;color:var(--simple-text)!important}
.shop-category-pill small{color:var(--logo-primary-dark)!important}
.shop-category-pill:hover,.shop-category-pill.active{
  transform:none!important;
  border-color:var(--logo-primary)!important;
  background:var(--logo-primary-faint)!important;
  box-shadow:none!important;
}

/* Articoli */
.shop-products-section{padding-top:38px!important;background:transparent!important}
body.public-storefront-body .shop-product-grid{gap:16px!important}
body.public-storefront-body .shop-product-card{
  background:#fff!important;
  border:1px solid var(--simple-line)!important;
  border-radius:16px!important;
  box-shadow:var(--simple-shadow-soft)!important;
}
body.public-storefront-body .shop-product-card:hover{
  transform:translateY(-3px)!important;
  border-color:var(--logo-primary)!important;
  box-shadow:var(--simple-shadow)!important;
}
body.public-storefront-body .shop-product-card::after{display:none!important}
body.public-storefront-body .shop-product-image{height:260px!important;background:#eef5f8!important}
.shop-product-status{
  background:var(--logo-primary)!important;
  color:#fff!important;
  border:0!important;
  border-radius:8px!important;
  box-shadow:none!important;
  letter-spacing:.05em!important;
}
.shop-product-status.is-sale{background:var(--logo-accent)!important}
body.public-storefront-body .shop-no-photo{
  color:var(--logo-primary-dark)!important;
  font-family:Inter,system-ui,sans-serif!important;
  font-size:20px!important;
}
.shop-no-photo b{color:var(--logo-accent)!important}
body.public-storefront-body .shop-product-info{padding:16px!important}
body.public-storefront-body .shop-product-topline{color:var(--simple-muted)!important}
body.public-storefront-body .shop-product-info h3{
  font-family:Inter,system-ui,sans-serif!important;
  color:var(--simple-text)!important;
  font-size:19px!important;
  line-height:1.22!important;
  min-height:46px!important;
}
body.public-storefront-body .shop-product-bottom strong{color:var(--logo-primary-dark)!important}
body.public-storefront-body .shop-card-button{
  color:var(--logo-primary-dark)!important;
  border-color:var(--logo-primary)!important;
  border-radius:9px!important;
}
body.public-storefront-body .shop-card-button:hover{background:var(--logo-primary)!important;color:#fff!important}
.shop-empty-state{background:#fff!important;border-color:var(--simple-line)!important;border-radius:18px!important;box-shadow:var(--simple-shadow-soft)!important}
.shop-empty-state>span{color:var(--logo-primary)!important}
.shop-empty-state h3{font-family:Inter,system-ui,sans-serif!important;font-size:32px!important}
.shop-empty-state p{color:var(--simple-muted)!important}

/* Sezione vendita */
.shop-sell-section{padding:20px 0 54px!important}
.shop-sell-banner{
  grid-template-columns:auto minmax(260px,1fr) minmax(340px,1fr) auto!important;
  gap:24px!important;
  padding:30px 32px!important;
  background:linear-gradient(135deg,var(--logo-primary-dark),var(--logo-primary))!important;
  border-radius:18px!important;
  box-shadow:var(--simple-shadow)!important;
}
.shop-sell-banner::after{display:none!important}
.shop-sell-mark{background:rgba(255,255,255,.15)!important;color:#fff!important;border-color:rgba(255,255,255,.35)!important}
.shop-sell-copy .shop-kicker{color:#fff!important;opacity:.85}
.shop-sell-copy h2{color:#fff!important;font-size:34px!important}
.shop-sell-copy p{color:rgba(255,255,255,.84)!important}
.shop-steps li{color:#fff!important}
.shop-steps b{background:#fff!important;color:var(--logo-primary-dark)!important;border:0!important}

/* Fiducia e footer */
.shop-trust-section{padding:0 0 54px!important}
.shop-trust-grid article{background:#fff!important;border-color:var(--simple-line)!important;border-radius:14px!important}
.shop-trust-grid article>span{background:var(--logo-primary-faint)!important;color:var(--logo-primary-dark)!important}
.shop-trust-grid b{color:var(--simple-text)!important}
.shop-trust-grid small{color:var(--simple-muted)!important}
.shop-footer{
  background:var(--logo-primary-dark)!important;
  color:#fff!important;
  border-top:4px solid var(--logo-accent)!important;
}
.shop-footer-grid{padding:34px 0!important}
.shop-footer-logo{background:#fff!important;border:0!important;border-radius:10px!important}
.shop-footer-brand b{font-family:Inter,system-ui,sans-serif!important;font-size:22px!important}
.shop-footer-brand p,.shop-footer-contact small,.shop-footer-bottom{color:rgba(255,255,255,.72)!important}
.shop-footer-links a:hover,.shop-footer-contact a:hover{color:#fff!important;text-decoration:underline}
.shop-footer-contact a{color:#fff!important}
.shop-footer-bottom{border-top-color:rgba(255,255,255,.18)!important}

/* Dettaglio articolo */
.shop-detail-body{background:var(--simple-bg)!important}
.shop-detail-main{padding-top:22px!important}
.shop-breadcrumb{color:var(--simple-muted)!important}
.shop-breadcrumb a{color:var(--logo-primary-dark)!important}
.shop-breadcrumb b{color:var(--simple-text)!important}
.shop-detail-photo-frame{
  background:#fff!important;
  border-color:var(--simple-line)!important;
  border-radius:18px!important;
  box-shadow:var(--simple-shadow-soft)!important;
}
.shop-detail-photo-frame::after{display:none!important}
.shop-detail-photo-frame img{background:#eef5f8!important;border-radius:12px!important}
.shop-detail-corner-label{background:var(--logo-primary)!important;border:0!important;border-radius:8px!important}
.shop-detail-placeholder{background:var(--logo-primary-faint)!important;color:var(--simple-text)!important;border-radius:12px!important}
.shop-detail-placeholder span{color:var(--logo-accent)!important}
.shop-detail-placeholder b{font-family:Inter,system-ui,sans-serif!important}
.shop-detail-shop-note{background:#fff!important;border-color:var(--simple-line)!important;border-radius:14px!important}
.shop-detail-panel{
  background:#fff!important;
  border-color:var(--simple-line)!important;
  border-radius:18px!important;
  padding:32px!important;
  box-shadow:var(--simple-shadow-soft)!important;
}
.shop-detail-panel::before{background:linear-gradient(90deg,var(--logo-primary) 0 82%,var(--logo-accent) 82% 100%)!important}
.shop-detail-panel h1{font-size:clamp(38px,4vw,54px)!important;line-height:1.02!important}
.shop-detail-code{color:var(--simple-muted)!important}
.shop-detail-code b{color:var(--simple-text)!important}
.shop-detail-price{color:var(--logo-primary-dark)!important}
.shop-detail-description{color:var(--simple-text)!important;border-color:var(--simple-line)!important}
.shop-detail-description-muted{color:var(--simple-muted)!important}
.shop-detail-facts>div{background:var(--logo-primary-faint)!important;border-color:var(--simple-line)!important}
.shop-detail-facts dt{color:var(--simple-muted)!important}
.shop-detail-facts dd{color:var(--simple-text)!important}
.shop-detail-bottom-cta{background:#fff!important;border-color:var(--simple-line)!important;border-radius:18px!important}
.shop-detail-bottom-cta h2{font-size:30px!important}

/* Evita che i vecchi temi reintroducano colori caldi */
html.has-shop-logo-theme body.public-storefront-body,
body.public-storefront-body.public-logo-theme{
  --cream:var(--simple-bg)!important;
  --card:#fff!important;
  --ink:var(--simple-text)!important;
  --line:var(--simple-line)!important;
}
html.has-shop-logo-theme body.public-storefront-body .shop-header,
body.public-storefront-body.public-logo-theme .shop-header{background:rgba(255,255,255,.98)!important}
html.has-shop-logo-theme body.public-storefront-body .shop-product-card,
body.public-storefront-body.public-logo-theme .shop-product-card{border-color:var(--simple-line)!important}

@media(max-width:1080px){
  .shop-header-main{grid-template-columns:minmax(190px,1fr) auto!important}
  .shop-search-jump{display:none!important}
  .shop-hero-grid{grid-template-columns:1fr .8fr!important;padding:32px!important}
  .shop-sell-banner{grid-template-columns:auto 1fr auto!important}
}
@media(max-width:880px){
  .shop-header-main{grid-template-columns:1fr auto!important;min-height:106px!important}
  .shop-main-nav{display:none!important}
  .shop-hero-grid{grid-template-columns:1fr!important;padding:28px!important}
  .shop-window-card{max-width:620px!important;width:100%!important;margin-inline:auto!important}
  .shop-sell-banner{grid-template-columns:auto 1fr!important}
}
@media(max-width:620px){
  .shop-shell{width:min(100% - 22px,1180px)!important}
  .shop-header-main{min-height:94px!important}
  .shop-logo-frame{width:156px!important;height:76px!important;padding:3px 5px!important}
  .shop-brand-copy{display:none!important}
  .shop-back-button{font-size:0!important;padding:9px 11px!important}
  .shop-back-button::after{content:"← Articoli"!important;font-size:12px!important}
  .shop-hero{padding-top:16px!important}
  .shop-hero-grid{padding:24px 19px!important;border-radius:17px!important}
  .shop-hero h1{font-size:39px!important}
  .shop-hero-copy>p{font-size:15px!important}
  .shop-hero-actions{display:grid!important}
  .shop-window-card{border-radius:15px!important}
  .shop-window-image{height:250px!important}
  .shop-window-caption{display:block!important}
  .shop-window-caption strong{display:block!important;margin-top:8px!important}
  .shop-search-zone{margin-top:10px!important}
  .shop-section{padding:42px 0!important}
  .shop-section-heading h2{font-size:34px!important}
  .shop-category-rail{grid-template-columns:1fr 1fr!important}
  body.public-storefront-body .shop-product-grid{grid-template-columns:1fr!important}
  body.public-storefront-body .shop-product-image{height:300px!important}
  .shop-sell-banner{grid-template-columns:1fr!important;padding:25px 20px!important}
  .shop-sell-copy h2{font-size:30px!important}
  .shop-steps{grid-template-columns:1fr 1fr!important}
  .shop-footer-grid{grid-template-columns:1fr!important}
  .shop-detail-panel{padding:25px 20px!important}
  .shop-detail-panel h1{font-size:38px!important}
}

/* FIX 2026-07-12 — logo del negozio scontornato e interamente contenuto. */
.shop-header-main{
  min-height:158px!important;
}
.shop-logo-frame{
  width:244px!important;
  height:132px!important;
  padding:4px 8px!important;
  background:transparent!important;
  overflow:visible!important;
}
.shop-logo-frame img{
  object-fit:contain!important;
  object-position:center!important;
  filter:none!important;
}
.shop-footer-logo{
  background:transparent!important;
}
.shop-footer-logo img{
  object-fit:contain!important;
}
@media(max-width:900px){
  .shop-header-main{min-height:136px!important}
  .shop-logo-frame{width:214px!important;height:116px!important;padding:3px 6px!important}
}
@media(max-width:620px){
  .shop-header-main{min-height:122px!important}
  .shop-logo-frame{width:184px!important;height:104px!important;padding:2px 4px!important}
}
