/* Layout dedicati: tablet orizzontale, tablet verticale e telefono verticale. */
:root{--responsive-gutter:clamp(18px,5vw,54px)}
html,body{max-width:100%;overflow-x:clip}
img{max-width:100%}

/* Tablet: struttura ariosa, meno spazio sprecato, loghi dei pagamenti sempre leggibili. */
@media (min-width:681px) and (max-width:1180px){
  .payment-trust{gap:28px;grid-template-columns:minmax(215px,.85fr) minmax(0,1.15fr);padding:44px var(--responsive-gutter)}
  .stripe-security{grid-column:1/-1;justify-self:stretch;min-height:82px;width:auto}
  .stripe-security img{max-width:190px}
  .payment-fineprint{margin:-13px 0 0}
  .payment-logo-grid{gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}
  .payment-logo-grid img{min-height:58px;padding:8px}
  .payment-logo-grid img[alt="Klarna"],.payment-marks img[alt="Klarna"]{object-fit:cover;object-position:center 54%}
  .conversion-cta{gap:25px;grid-template-columns:minmax(0,1fr) minmax(205px,.55fr);padding:48px var(--responsive-gutter)}
  .cta-index{grid-column:1/-1}.cta-copy h2{font-size:clamp(42px,6vw,62px)}
}

/* Tablet stretto: il menu resta accessibile senza comprimere logo, carrello e WhatsApp. */
@media (min-width:681px) and (max-width:860px){
  .site-header,.shop-header,body>header{height:72px}
  .menu-button,.shop-menu{background:transparent;border:0;display:block;font-size:11px;font-weight:bold;margin-left:auto;margin-right:12px;padding:10px 6px}
  .site-nav,.shop-nav{background:var(--surface,#f4f6f1);border-bottom:1px solid var(--line,#d8ddd5);display:none;left:0;margin:0;padding:20px var(--responsive-gutter);position:absolute;top:71px;width:100%;z-index:30}
  .site-nav.open,.shop-nav.open{display:flex;flex-direction:column;gap:16px}
  body>header nav:not(.site-nav),.site-header nav:not(.site-nav){display:none}
  .cart-link,.product-cart{margin-left:auto}
}

/* Tablet verticale: contenuti in ordine naturale, senza colonne troppo strette. */
@media (min-width:681px) and (max-width:1024px) and (orientation:portrait){
  .site-header,.shop-header,body>header{padding-inline:var(--responsive-gutter)}
  .site-nav{gap:16px;margin-right:18px}.site-nav a,.shop-nav a,nav a{font-size:11px}
  .hero{min-height:520px;padding:64px var(--responsive-gutter)}
  .hero-visual{min-height:380px;transform:scale(.88);transform-origin:center}
  .section{padding:88px var(--responsive-gutter)}
  .sell{gap:42px}.category-grid{gap:12px}.category-card{height:285px}
  .shop-hero{padding:64px var(--responsive-gutter)}
  .catalogue{grid-template-columns:190px minmax(0,1fr);padding:48px var(--responsive-gutter) 84px}
  .catalogue-main{padding-left:26px}.product-grid{gap:13px;grid-template-columns:repeat(2,minmax(0,1fr))}
  .cart-layout{gap:38px;grid-template-columns:1fr;padding:48px var(--responsive-gutter) 82px}
  .order-summary{max-width:none;width:100%}
  .product-page{gap:5vw;padding:42px 0 82px}.visual{height:390px}.visual.phone:before{height:325px;width:180px}
}

/* Tablet orizzontale: mantiene lo shop compatto e la navigazione leggibile. */
@media (min-width:768px) and (max-width:1180px) and (orientation:landscape){
  .site-header,.shop-header,body>header{padding-inline:var(--responsive-gutter)}
  .site-nav,.shop-nav,nav{gap:16px;margin-right:17px}.site-nav a,.shop-nav a,nav a{font-size:11px}
  .hero{min-height:500px;padding:58px var(--responsive-gutter)}
  .hero h1{font-size:clamp(52px,6vw,72px)}.hero-visual{min-height:375px;transform:scale(.87);transform-origin:center}
  .section{padding:82px var(--responsive-gutter)}.sell{gap:44px}
  .shop-hero{padding:62px var(--responsive-gutter)}
  .catalogue{grid-template-columns:190px minmax(0,1fr);padding:48px var(--responsive-gutter) 84px}
  .catalogue-main{padding-left:26px}.product-grid{gap:13px;grid-template-columns:repeat(3,minmax(0,1fr))}.product-image{height:205px}
  .cart-layout{gap:40px;grid-template-columns:minmax(0,1fr) 300px;padding:48px var(--responsive-gutter) 82px}
  .cart-intro{padding:62px var(--responsive-gutter)}
  .product-page{gap:5vw;padding:42px 0 82px}.visual{height:385px}
}

/* Telefono verticale: una colonna, comandi grandi e nessun contenuto tagliato. */
@media (max-width:680px){
  :root{--responsive-gutter:18px}
  .announcement,.shop-topline,.topline{font-size:9px;letter-spacing:.1em;padding:9px var(--responsive-gutter)}
  .site-header,.shop-header,body>header{height:64px;padding-inline:var(--responsive-gutter)}
  .brand img,.shop-brand img{height:39px!important;object-fit:contain!important;width:138px!important}
  .header-action,.shop-wa,.whatsapp{font-size:10px;padding:10px 11px}
  .menu-button,.shop-menu{font-size:10px;margin-right:9px;padding:8px 5px}
  .site-nav,.shop-nav{left:0;padding:18px var(--responsive-gutter);top:63px;width:100%}
  .hero{padding:42px var(--responsive-gutter) 0}.hero-copy{padding-bottom:0}.hero h1{font-size:clamp(43px,13vw,56px);margin-bottom:22px}.hero-description{font-size:15px;line-height:1.5}.hero-actions{display:grid;grid-template-columns:1fr;margin-top:27px}.button{min-height:52px;width:100%}.hero-note{font-size:11px;line-height:1.45;margin:16px 0 0;max-width:310px}
  .hero-visual{margin:14px -8px 0;min-height:286px;transform:scale(.9);transform-origin:center bottom}.device-back{height:250px;right:9%;top:30px;width:134px}.device-front{height:270px;right:38%;top:56px;width:142px}.speaker{left:52px;top:8px;width:34px}.device-screen{border-radius:24px}.floating-card{bottom:8px;right:2%;width:112px}.floating-card strong{font-size:16px;margin-top:18px}.orb-a{height:250px;right:4%;top:6%;width:250px}.orb-b{height:190px;right:35%;top:42%;width:190px}
  .values>div{gap:14px;padding:17px var(--responsive-gutter)}.values p{font-size:12px}
  .section{padding:64px var(--responsive-gutter)}.section-heading>p,.steps-heading>p{font-size:14px}.category-grid{gap:11px}.category-card{height:225px;padding:20px}.category-card h3{font-size:25px;margin-top:28px}
  .sell{gap:34px}.sell-form{padding:22px 18px}.form-heading{align-items:flex-start;gap:8px;line-height:1.4}.form-heading small{padding-top:2px;text-align:right}.steps ol{gap:0}.steps li,.steps li+li{padding:22px 0}.steps h3{font-size:20px;margin-top:23px}
  .conversion-cta{padding:42px var(--responsive-gutter)}.cta-copy h2{font-size:clamp(39px,12vw,52px)}.cta-actions{gap:10px}.cta-button{min-height:52px}.contact-panel{padding:24px 20px}.contact-panel a{font-size:clamp(23px,8vw,34px)}
  .payment-trust{display:block;padding:36px var(--responsive-gutter)}.payment-logo-grid{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin:24px 0 18px}.payment-logo-grid img{aspect-ratio:2.15/1;min-height:62px;padding:9px}.payment-logo-grid img[alt="Klarna"],.payment-marks img[alt="Klarna"]{object-fit:cover;object-position:center 54%}.stripe-security{min-height:78px;width:100%}.payment-fineprint{font-size:9px;margin:14px 0 0}
  .shop-hero{padding:45px var(--responsive-gutter)}.shop-hero h1{font-size:clamp(46px,14vw,64px)}.shop-hero-note{font-size:14px;margin-top:32px}.shop-toolbar{padding:22px var(--responsive-gutter)}.search-field{max-width:none}.quick-categories{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}.quick-categories button{flex:0 0 auto}.catalogue{padding:32px var(--responsive-gutter) 64px}.filters{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:22px}.filter-title{grid-column:1/-1}.filters fieldset{border:1px solid var(--line);margin:0;padding:13px}.filters fieldset label{font-size:11px;margin:9px 0}.catalogue-main{padding:28px 0 0}.catalogue-meta{align-items:flex-start;gap:12px;flex-direction:column}.catalogue-meta label{width:100%}.catalogue-meta select{float:right;max-width:72%}.demo-message{font-size:11px}.product-grid{gap:12px;grid-template-columns:1fr}.product-image{height:230px}.product-info{padding:16px}.product-info h3{font-size:19px}.product-bottom{align-items:center;display:flex}.product-bottom strong{margin-bottom:0}
  .cart-intro{padding:46px var(--responsive-gutter)}.cart-intro>div{margin-top:28px}.cart-intro h1{font-size:clamp(49px,14vw,64px)}.cart-intro div p:last-child{font-size:14px;margin-top:24px}.cart-layout{padding:36px var(--responsive-gutter) 65px}.cart-heading{align-items:flex-start;gap:8px}.cart-heading h2{font-size:26px}.cart-item{gap:12px;grid-template-columns:78px minmax(0,1fr)}.cart-item-price{gap:8px}.order-summary{padding:24px 18px}.order-summary h2{font-size:34px;margin-bottom:25px}.checkout-field-row{grid-template-columns:1fr}.delivery-options label{padding:12px}.payment-marks{grid-template-columns:repeat(2,minmax(0,1fr))!important}.payment-marks img{aspect-ratio:2.15/1;min-height:52px;padding:7px}
  body:has(.product-page) main{padding-left:var(--responsive-gutter);padding-right:var(--responsive-gutter)}.back{display:inline-block;margin-top:2px}.product-page{padding:28px 0 56px}.visual{height:295px;margin-bottom:32px}.visual.phone:before{height:245px;width:136px}.visual.phone:after{left:calc(50% - 49px);top:43px}.product-copy h1{font-size:clamp(44px,14vw,58px)}.product-copy>strong{font-size:30px;margin-top:26px}.notice{margin-top:24px}.ask{display:block;text-align:center;width:100%}.ask+.ask{margin-left:0;margin-top:8px}.product-gallery{overflow-x:auto}.details{margin-inline:calc(var(--responsive-gutter) * -1);padding-inline:var(--responsive-gutter)}
  footer,.shop-footer{gap:14px;padding:24px var(--responsive-gutter)}footer img,.shop-footer img{height:38px;width:136px}
  .cfp-cookie-banner{max-height:72dvh;overflow-y:auto;padding:16px var(--responsive-gutter)}.cfp-cookie-title{font-size:23px}.cfp-cookie-copy{font-size:11px;line-height:1.45}.cfp-cookie-actions{grid-template-columns:1fr 1fr;margin-top:14px}.cfp-cookie-primary{grid-column:1/-1;grid-row:auto}.cfp-cookie-button{min-height:42px;padding:0 10px}.cfp-cookie-settings{margin-top:15px}
}

@media (min-width:481px) and (max-width:680px){
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-image{height:190px}.product-info{padding:13px}.product-info h3{font-size:17px}.product-bottom{display:block}.product-bottom strong{display:block;margin-bottom:9px}
}
