/* ====== HEADER (Artery Market) ====== */
:root{
  --am-maxw: 1200px;
  --am-pad: 20px;
  --am-h: 72px;
  --am-border: #eee;
  --am-text: #111;
  --am-muted:#666;
  --am-accent:#ff5a1f;
  --am-footer-border: rgba(0,0,0,.08);
  --am-font: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

body{
  font-family: var(--am-font, "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);
}

/* Base */
.am-header *{ box-sizing:border-box }
.am-header a{ color:var(--am-text); text-decoration:none }
.am-header button{ border:0; background:transparent; cursor:pointer }
.am-header svg{ display:block; width:22px; height:22px; fill:currentColor }

/* Header sticky */
.am-header{
  position:sticky; top:0; z-index:1000;
  background:#fff; border-bottom:1px solid var(--am-border);
  transition: box-shadow .18s ease;
}
.am-header.is-scrolled{ box-shadow:0 6px 18px rgba(0,0,0,.06) }

.am-container{
  height:var(--am-h);
  display:flex; align-items:center; justify-content:space-between;
  max-width:var(--am-maxw); margin:0 auto; padding:0 var(--am-pad);
}

/* Logo */
.am-logo{ font-size:26px; font-weight:800; letter-spacing:.5px; display:flex; align-items:center; gap:10px }
.am-logo span{ display:block; line-height:1 }
.am-logo-icon{
  width:50px; height:50px; object-fit:cover; border-radius:6px; flex:0 0 28px;
}
@media (min-width:980px){
  .am-logo-icon{ width:32px; height:32px; flex-basis:32px }
}

/* Desktop nav */
.am-nav--desktop{ display:none; gap:28px; align-items:center }
.am-nav--desktop a{ font-size:16px }
.am-nav a:hover{ opacity:.7 }
.am-phone{ white-space:nowrap }

/* Social desktop */
.am-socials--desktop{ display:none; align-items:center; gap:14px; margin-left:10px }
.am-socials--desktop img{ display:block }

/* Actions */
.am-actions{ display:flex; align-items:center; gap:16px }

.am-lang{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  background:transparent;
  border:none;
  margin-left:-10px;
}
.am-lang img{
  width:34px;
  height:auto;
  object-fit:contain;
  display:block;
}
.am-lang:focus-visible{
  outline:2px solid #000;
  outline-offset:2px;
}
.am-lang__tooltip{
  position:absolute;
  top:calc(100% + 12px);
  left:50%;
  transform:translate(-50%, -6px);
  white-space:nowrap;
  background:rgba(20,22,32,0.92);
  color:#fff;
  font-size:13px;
  font-weight:500;
  line-height:1.4;
  padding:6px 12px;
  border-radius:9px;
  box-shadow:0 14px 32px -18px rgba(12,14,20,0.55);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
  transform-origin:top center;
}
.am-lang__tooltip::before{
  content:\"\"; position:absolute; top:-5px; left:50%;
  width:8px; height:8px; background:rgba(20,22,32,0.92);
  transform:translate(-50%, 0) rotate(45deg);
  border-radius:2px;
}
.am-lang:hover .am-lang__tooltip,
.am-lang:focus-within .am-lang__tooltip{
  opacity:1;
  transform:translate(-50%, 0);
}
.am-lang:focus-within .am-lang__tooltip{
  pointer-events:auto;
}

/* Cart */
.am-cart-wrapper{ position:relative; display:inline-flex; align-items:center }
.am-cart{ position:relative; display:inline-flex; align-items:center }
.am-badge{
  position:absolute; right:-8px; top:-8px;
  min-width:18px; height:18px; padding:0 5px;
  display:inline-flex; align-items:center; justify-content:center;
  background:var(--am-accent); color:#fff; border-radius:999px;
  font-size:12px; line-height:1; border:2px solid #fff;
  transform-origin:center;
}

/* Cart Hover Modal */
.am-cart-modal{
  position:absolute;
  top:calc(100% + 12px);
  right:0;
  width:320px;
  max-height:400px;
  background:#fff;
  border:1px solid var(--am-border);
  border-radius:12px;
  box-shadow:0 8px 32px rgba(0,0,0,.12);
  opacity:0;
  pointer-events:none;
  transform:translateY(-8px);
  transition:opacity .2s ease, transform .2s ease;
  z-index:1000;
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.am-cart-wrapper:hover .am-cart-modal,
.am-cart-modal:hover{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}

/* Hide cart modal on mobile */
@media (max-width: 768px) {
  .am-cart-modal {
    display: none !important;
  }
}
.am-cart-modal::before{
  content:"";
  position:absolute;
  top:-6px;
  right:12px;
  width:12px;
  height:12px;
  background:#fff;
  border-left:1px solid var(--am-border);
  border-top:1px solid var(--am-border);
  transform:rotate(45deg);
  z-index:-1;
}
.am-cart-modal__header{
  padding:14px 16px;
  border-bottom:1px solid var(--am-border);
  font-weight:600;
  font-size:14px;
  color:var(--am-text);
}
.am-cart-modal__body{
  padding:12px;
  overflow-y:auto;
  flex:1;
  max-height:280px;
}
.am-cart-modal__empty{
  text-align:center;
  padding:32px 16px;
  color:var(--am-muted);
  font-size:14px;
}
.am-cart-modal__item{
  display:flex;
  gap:10px;
  padding:10px;
  border-bottom:1px solid #f5f5f5;
  align-items:flex-start;
}
.am-cart-modal__item:last-child{
  border-bottom:none;
}
.am-cart-modal__img{
  width:50px;
  height:50px;
  object-fit:cover;
  border-radius:6px;
  flex-shrink:0;
}
.am-cart-modal__info{
  flex:1;
  min-width:0;
}
.am-cart-modal__name{
  font-size:13px;
  font-weight:500;
  color:var(--am-text);
  margin:0 0 4px 0;
  line-height:1.3;
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.am-cart-modal__details{
  font-size:12px;
  color:var(--am-muted);
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.am-cart-modal__qty{
  color:var(--am-text);
}
.am-cart-modal__price{
  font-weight:600;
  color:var(--am-text);
}
.am-cart-modal__footer{
  padding:12px 16px;
  border-top:1px solid var(--am-border);
  background:#fafafa;
}
.am-cart-modal__total{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:14px;
  margin-bottom:10px;
}
.am-cart-modal__total-label{
  font-weight:600;
  color:var(--am-text);
}
.am-cart-modal__total-value{
  font-weight:700;
  color:var(--am-accent);
  font-size:16px;
}
.am-cart-modal__cta{
  display:block;
  width:100%;
  padding:10px;
  background:var(--am-accent);
  color:#fff;
  text-align:center;
  border-radius:8px;
  font-weight:600;
  font-size:14px;
  text-decoration:none;
  transition:background .2s ease;
}
.am-cart-modal__cta:hover{
  background:#e64d17;
  color:#fff;
}

/* Burger */
.am-burger{ width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center }
.am-burger-box{ width:22px; height:16px; position:relative; display:inline-block }
.am-burger-inner,
.am-burger-inner::before,
.am-burger-inner::after{
  width:22px; height:2px; background:var(--am-text);
  position:absolute; left:0; transition:transform .22s ease, opacity .22s ease
}
.am-burger-inner{ top:50%; transform:translateY(-50%) }
.am-burger-inner::before{ content:""; top:-7px }
.am-burger-inner::after{ content:""; top:7px }

/* Stato OPEN → X (hamburger) */
.am-header.nav-open .am-burger-inner{ transform:translateY(-50%) rotate(45deg) }
.am-header.nav-open .am-burger-inner::before{ transform:rotate(-90deg) translateX(-7px); opacity:0 }
.am-header.nav-open .am-burger-inner::after{ transform:translateY(-14px) rotate(-90deg) }

/* Backdrop */
.am-backdrop{
  position:fixed; inset:0; background:rgba(0,0,0,.35); z-index:1001;
}
.am-header.nav-open #amBackdrop{ display:block }
#amBackdrop[hidden]{ display:none }

/* Drawer (da destra) */
.am-drawer{
  position:fixed; inset:0 0 0 auto; width:min(86vw, 360px);
  background:#fff; border-left:1px solid var(--am-border);
  transform:translateX(100%); transition:transform .24s ease;
  display:flex; flex-direction:column; padding:18px; z-index:1002;
  box-shadow:-24px 0 48px rgba(0,0,0,.08);
}
.am-header.nav-open .am-drawer{ transform:translateX(0) }

/* Testata drawer */
.am-drawer-head{
  position:relative; display:flex; align-items:center; justify-content:center;
  padding:10px 0 0; border:0;
}
.am-logo--drawer img{
  margin: 8px auto 0;
  height:auto;
  transform: translateX(20px);
}

/* Bottone X */
.am-close{
  position:absolute; left:8px; top:8px;
  width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center;
}
.am-close-inner,
.am-close-inner::before{
  content:""; display:block; position:absolute; width:22px; height:2px; background:var(--am-text);
}
.am-close-inner{ transform: rotate(45deg); }
.am-close-inner::before{ transform: rotate(-90deg); }

/* Info blocco sotto il logo */
.am-drawer-info{
  display:flex; flex-direction:column; align-items:center; text-align:center;
  gap:6px; padding:14px 6px 12px; color:var(--am-muted); font-size:14px;
}
.am-drawer-info a{ color:var(--am-text) }

/* Nav mobile centrato */
.am-nav--mobile{ display:flex; flex-direction:column; gap:12px; margin-top:8px }
.am-nav--mobile a{ font-size:20px; text-align:center; padding:8px 0 }

/* Social mobile */
.am-social-label{
  text-align:center; margin:22px 0 6px; color:var(--am-muted);
  font-size:12px; letter-spacing:.08em; text-transform:uppercase;
}
.am-socials--mobile{ display:flex; justify-content:center; gap:16px; margin:0 0 10px }
.am-socials--mobile img{ display:block }

/* Desktop breakpoint */
@media (min-width:980px){
  .am-nav--desktop{ display:flex }
  .am-socials--desktop{ display:flex }
  .am-burger{ display:none }
  .am-drawer, #amBackdrop{ display:none !important }
  .am-container{ height:82px }
  .am-logo{ font-size:28px }
}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  .am-header, .am-drawer, .am-burger-inner, .am-burger-inner::before, .am-burger-inner::after{
    transition:none !important;
  }
}

/* Hover generico */
.am-socials a:hover{ opacity:.7 }

/* ===== Footer ===== */
.am-footer{
  background:#fff;
  border-top:1px solid var(--am-border);
  color:var(--am-text);
}
.am-footer__inner{
  max-width:var(--am-maxw);
  margin:0 auto;
  padding:28px var(--am-pad) 24px;
  display:grid;
  grid-template-columns: 1fr;
  gap:28px;
}
.am-footer__col a{ color:var(--am-text); text-decoration:none }
.am-footer__col a:hover{ opacity:.75 }

/* Brand + info (sx) */
.am-footer__logo img{ display:block; height:auto; }
.am-footer__info{ list-style:none; margin:10px 0 0; padding:0; }
.am-footer__info li{ margin:4px 0; color:var(--am-muted); }
.am-footer__info a{ color:var(--am-text) }

/* Nav (centro) */
.am-footer__title{
  margin:0 0 10px;
  font-size:14px; text-transform:uppercase; letter-spacing:.08em; color:var(--am-muted);
  position:relative; padding-bottom:6px;
}
.am-footer__title::after{
  content:"";
  display:block;
  width:36px; height:2px;
  margin-top:8px;
  background: currentColor;
  opacity:.12;
  border-radius:999px;
}
.am-footer__links{
  list-style:none; margin:0; padding:0;
  columns: 2; column-gap: 24px;
}
.am-footer__links li{ break-inside:avoid; margin:6px 0; }
.am-footer__links a{ font-size:15px }

/* Social (dx) */
.am-footer__icons{ display:flex; gap:14px; align-items:center; margin:8px 0 14px }
.am-footer__icons img{ display:block }
.am-footer__provider{ margin-top:10px; }
.am-footer__provider-label{
  font-size:12px; color:var(--am-muted); margin-bottom:6px;
}
.am-footer__provider-logo img{
  display:block;
  height:auto;
  width:150px;
  max-width:100%;
}

/* Copyright strip */
.am-copy{
  text-align:center;
  color:var(--am-muted);
  font-size:13px;
  padding:12px var(--am-pad) 18px;
  border-top:1px solid var(--am-border);
  background:#fff;
}

/* Layout desktop */
@media (min-width:980px){
  .am-footer__inner{
    grid-template-columns: 1.1fr 1fr 1fr;
    gap:40px;
    padding:36px var(--am-pad) 28px;
  }
  .am-footer__links{ columns: 1; }
}

/* Divisori footer */
.am-footer__col{
  padding-bottom:18px;
  margin-bottom:18px;
  position:relative;
}
.am-footer__col:not(:last-child){
  border-bottom:1px solid var(--am-footer-border);
}
@media (min-width:980px){
  .am-footer__col{
    padding-right:32px;
    margin-bottom:0;
    border-bottom:0;
  }
  .am-footer__col:not(:last-child)::after{
    content:"";
    position:absolute;
    top:0; right:0;
    width:1px; height:100%;
    background: linear-gradient(
      180deg,
      transparent 0%,
      rgba(0,0,0,0.06) 12%,
      rgba(0,0,0,0.08) 50%,
      rgba(0,0,0,0.06) 88%,
      transparent 100%
    );
  }
  .am-footer__col:nth-child(2),
  .am-footer__col:nth-child(3){
    padding-left:32px;
  }
}

/* ===== HERO SLIDER ===== */
.am-hero{
  width: 100%;
  max-width: none;
  margin: 18px 0 30px;
  padding: 0;
  position: relative;
}
.am-hero__overlay-btn{
  position: absolute;
  top: 69%;
  right: 10.5%;
  width: 20%;
  height: 16%;
  background: transparent;
  border: none;
  cursor: pointer;
  z-index: 10;
  transition: all 0.4s ease;
}
.am-hero__overlay-btn:hover{
  background: rgba(255, 255, 255, 0.4);
  box-shadow: 
    0 0 20px rgba(255, 255, 255, 0.8) inset,
    0 0 30px rgba(255, 255, 255, 0.8),
    0 0 60px rgba(255, 255, 255, 0.6),
    0 0 100px rgba(255, 255, 255, 0.4),
    0 0 150px rgba(255, 255, 255, 0.2);
  transform: scale(1.02);
}
.am-hero__viewport{
  position: relative;
  overflow: hidden;
  border-radius: 0;
  box-shadow: 0 14px 40px rgba(0,0,0,.08);
}
.am-hero__viewport::before{
  content:""; display:block;
  padding-top: 38.8%; /* ~1300x504 desktop */
}
@media (max-width: 979px){
  .am-hero__viewport::before{ padding-top: 62%; } /* ~16:10 mobile */
}
.am-slide{
  position:absolute; inset:0;
  opacity:0; transform:scale(1.01);
  transition: opacity .5s ease, transform .6s ease;
}
.am-slide.is-active{
  opacity:1; transform:none; z-index:1;
}
.am-hero__hotspot{
  position:absolute;
  width:220px; height:68px;
  left:58%; top:64%;
  transform:translate(-50%,-50%);
  display:block;
  cursor:pointer;
  text-indent:-9999px;
  background:transparent;
  z-index:2;
}
.am-hero__hotspot:focus-visible{
  outline:2px solid #111;
  outline-offset:4px;
}
.am-slide picture, .am-slide img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  display:block;
}

/* Caption */
.am-slide__caption{
  position:absolute;
  left:300px;
  bottom:28px;
  display:flex;
  flex-direction:column;
  gap:8px;
  background: rgba(17,17,17,.76);
  color:#fff;
  padding:16px 22px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 20px 48px rgba(0,0,0,.28);
  max-width:min(72%, 640px);
}
.am-slide__caption h2{
  margin:0 0 6px;
  font-size: clamp(22px, 3.2vw, 40px);
  font-weight:800;
  letter-spacing:.3px;
}
.am-slide__caption p{
  margin:0;
  font-size: clamp(14px, 1.6vw, 18px);
  opacity:.95;
}

.am-slide__caption--frost{
  background: linear-gradient(135deg, rgba(255,255,255,.3) 0%, rgba(255,255,255,.18) 60%, rgba(255,255,255,.1) 100%);
  border:none;
  color:#fff;
  text-shadow: 0 2px 14px rgba(17,17,17,.35);
  backdrop-filter: blur(26px) saturate(150%);
  -webkit-backdrop-filter: blur(26px) saturate(150%);
  box-shadow: 0 14px 38px rgba(17,17,17,.14);
  isolation:isolate;
  z-index:0;
}
.am-slide__caption--frost h2,
.am-slide__caption--frost p{
  color: inherit;
}
.am-slide__caption--frost::before{
  content:"";
  position:absolute;
  inset:-32px;
  background: radial-gradient(280px 220px at 18% 74%, rgba(255,255,255,.24), rgba(255,255,255,0.1) 62%, rgba(255,255,255,0) 100%);
  opacity:.42;
  filter: blur(32px);
  z-index:-1;
}

/* Arrows */
.am-hero__arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:38px;
  height:38px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(0,0,0,.12);
  box-shadow:0 6px 16px rgba(0,0,0,.08);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
  line-height:1;
  color:var(--am-text);
  z-index: 2;
}
.am-hero__arrow:hover{ background:#f8f8f8 }
.am-hero__arrow--prev{ left: 18px }
.am-hero__arrow--next{ right:18px }
.am-hero__arrow[aria-disabled="true"]{ opacity:.4; pointer-events:none; }

/* Dots */
.am-hero{ position:relative }
.am-hero__dots{
  display:none;
}

@media (prefers-reduced-motion: reduce){
  .am-slide{ transition:none }
}

/* ========== HERO MOBILE (<980px) ========== */
@media (min-width:980px){ .am-hero-m{ display:none } }
@media (max-width:979px){
  .am-hero{ display:none }
  .am-hero-m{
    position:relative;
    margin:12px 0 22px;
    padding:0;
    width:100%;
    max-width:none;
    isolation:isolate;
  }
  .am-hero-m::before{
    content:"";
    position:absolute; inset:-6% 0 auto 0; height:56%;
    background:
      radial-gradient(900px 300px at 50% 18%, rgba(0,0,0,0.05), transparent 65%),
      linear-gradient(180deg, #f7f8fb 0%, #ffffff 70%);
    z-index:-1;
  }
  .am-hero-m__media{
    position:relative; display:block; overflow:hidden;
    border-radius:0;
    box-shadow:0 16px 44px rgba(0,0,0,.08);
    transform:translateZ(0);
  }
  .am-hero-m__media img{
    width:100%; height:auto; display:block;
    transform-origin:center;
    animation: am-hero-kb 18s ease-in-out infinite alternate;
  }
  .am-hero-m__box{
    margin-top:12px;
    background:rgba(255,255,255,.72);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    border:1px solid rgba(0,0,0,.06);
    border-radius:14px;
    padding:14px 16px;
    box-shadow:0 10px 28px rgba(0,0,0,.06);
    opacity:0; transform:translateY(10px);
    animation: am-hero-fade .6s ease forwards .2s;
  }
  .am-hero-m__title{
    margin:0 0 4px;
    font-size:22px; font-weight:800; letter-spacing:.2px; color:var(--am-text);
  }
  .am-hero-m__sub{
    margin:0 0 12px; color:var(--am-muted); font-size:14px;
  }
  .am-hero-m__cta{ display:flex; gap:10px; flex-wrap:wrap }
  .am-hero-m .btn{
    display:inline-block; padding:10px 14px; border-radius:10px; font-size:14px;
    text-decoration:none; transition: transform .15s ease, box-shadow .15s ease, background .2s ease;
  }
  .am-hero-m .btn--primary{
    background:#111; color:#fff; box-shadow:0 6px 16px rgba(0,0,0,.12);
  }
  .am-hero-m .btn--primary:hover{ transform:translateY(-1px); box-shadow:0 10px 22px rgba(0,0,0,.14) }
  .am-hero-m .btn--ghost{
    background:#fff; color:var(--am-text); border:1px solid var(--am-border);
  }
  .am-hero-m .btn--ghost:hover{ transform:translateY(-1px) }
}
/* Animazioni hero mobile */
@keyframes am-hero-kb{ 0%{transform: scale(1) translateY(0)} 100%{transform: scale(1.06) translateY(-2%)} }
@keyframes am-hero-fade{ to { opacity:1; transform:none } }

@media (prefers-reduced-motion:reduce){
  .am-hero-m__media img{ animation:none !important }
  .am-hero-m__box{ animation:none !important; opacity:1; transform:none }
  .am-hero-m .btn{ transition:none !important }
}

/* ==== FEATURE SECTION ==== */
.am-feature{
  position: relative;
  isolation: isolate;
  overflow: hidden;      /* fallback */
  overflow: clip;        /* moderno */
}
.am-feature__bg{
  position: absolute; inset: 0;
  background:
    radial-gradient(1200px 600px at 15% 20%, rgba(255,180,180,.27), transparent 60%),
    radial-gradient(900px 500px at 85% 80%, rgba(255,240,180,.22), transparent 60%),
    radial-gradient(700px 500px at 80% 20%, rgba(180,220,255,.20), transparent 60%),
    linear-gradient(180deg, #fafafa 0%, #ffffff 100%);
  filter: saturate(1.05);
  animation: amHue 16s ease-in-out infinite alternate;
  z-index: -1;
}
.am-feature__bg::after{
  content:"";
  position:absolute;
  inset:0;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0%200%20120%20120'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='120' height='120' filter='url(%23n)' opacity='0.025'/></svg>");
  mix-blend-mode:multiply;
  pointer-events:none;
}

@keyframes amHue { from{ filter:hue-rotate(0deg) saturate(1.05);} to{ filter:hue-rotate(8deg) saturate(1.1);} }

.am-feature__wrap{
  max-width: var(--am-maxw);
  padding: clamp(36px, 6vw, 80px) var(--am-pad);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: clamp(20px, 4vw, 60px);
  align-items: center;
}
.am-feature__col--text{ font-family: var(--am-font, "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif); }
.am-feature__kicker{
  display:inline-block;
  font-size:12px; letter-spacing:.18em; text-transform:uppercase;
  color: var(--am-muted,#666);
  margin-bottom:10px;
}
.am-feature__title{
  font-size: clamp(28px, 4.2vw, 54px);
  line-height: 1.06; font-weight: 800;
  margin: 0 0 14px; position: relative;
}
.am-feature__title::before{
  content:""; display:block; width:52px; height:4px; border-radius:4px;
  background: #000; opacity:.9; margin: 0 0 16px;
}
.am-feature__lead{
  font-size: clamp(16px, 1.6vw, 18px);
  line-height: 1.6; color: #222;
  margin: 0 0 24px; max-width: 58ch;
}
/* media side */
.am-feature__media{
  margin:0; position:relative; border-radius: 20px; overflow:hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,.10);
  transform: rotate(-.6deg);
}
.am-feature__media::before{ content:""; display:block; padding-top: 70%; }  /* 10:7 */
.am-feature__media img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  transform: scale(1.02); transition: transform .6s cubic-bezier(.2,.7,.2,1);
}
.am-feature__media:hover img{ transform: scale(1.06); }
/* reveal on scroll */
[data-io]{ opacity:0; transform: translateY(16px); transition: transform .6s cubic-bezier(.2,.7,.2,1), opacity .6s ease; }
[data-io].is-in{ opacity:1; transform: none; }
.am-feature__col--media[data-io]{ transition-delay: .08s; }
@media (max-width: 980px){
  .am-feature__wrap{ grid-template-columns: 1fr; }
  .am-feature__media{ order: -1; transform: none; }
}
@media (prefers-reduced-motion: reduce){
  .am-feature__bg{ animation:none; }
  [data-io]{ transition:none; opacity:1; transform:none; }
}

/* ==== DELIVERY / Доставка ==== */
.am-delivery{
  position: relative;
  isolation: isolate;
  font-family: var(--am-font, "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif);
}
.am-delivery__bg{
  position:absolute; inset:0; z-index:-1;
  background:
    radial-gradient(900px 480px at 20% 10%, rgba(255,200,180,.18), transparent 60%),
    radial-gradient(900px 520px at 90% 80%, rgba(180,220,255,.16), transparent 60%),
    linear-gradient(#fafafa, #fff);
  animation: dlvHue 16s ease-in-out infinite alternate;
}
@keyframes dlvHue { from{ filter:hue-rotate(0deg); } to{ filter:hue-rotate(10deg); } }
.am-delivery__wrap{
  max-width: var(--am-maxw);
  margin: 0 auto;
  padding: clamp(36px, 6vw, 90px) var(--am-pad);
}
.am-delivery__head{
  text-align:center;
  max-width: 900px;
  margin: 0 auto clamp(24px, 5vw, 44px);
}
.am-delivery__title{
  margin:0 0 10px;
  font-size: clamp(30px, 4.4vw, 56px);
  font-weight: 800; line-height: 1.05; position: relative;
}
.am-delivery__title::after{
  content:""; display:block; width:64px; height:4px; border-radius:4px;
  background:#000; margin: 12px auto 0; transform: scaleX(0);
  transform-origin:center; transition: transform .6s cubic-bezier(.2,.7,.2,1);
}
.am-delivery__head.is-in .am-delivery__title::after{ transform: scaleX(1); }
.am-delivery__lead{
  margin: 12px auto 0;
  font-size: clamp(16px, 1.6vw, 18px);
  line-height: 1.7; color: #222; font-style: italic;
}
.am-delivery__list{
  display:grid; grid-template-columns: 1fr;
  gap: clamp(18px, 2.8vw, 26px);
  margin: 0; padding: 0; list-style: none;
  max-width: 1050px; margin-inline: auto;
}
.am-delivery__item{
  display:grid; grid-template-columns: auto 1fr;
  gap: 16px 18px; align-items: start;
  padding: clamp(12px, 1.5vw, 16px);
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 16px; background: #fff;
  box-shadow: 0 10px 28px rgba(0,0,0,.04);
  transition: box-shadow .2s ease, transform .18s ease;
}
.am-delivery__item:hover{ box-shadow:0 16px 44px rgba(0,0,0,.08); transform: translateY(-2px); }
.am-delivery__icon{
  width:76px; height:76px; border-radius: 999px;
  display:grid; place-items:center; background: #E9D5FF;
  box-shadow: inset 0 0 0 6px rgba(255,255,255,.65);
  transform: translateY(2px);
}
.am-delivery__icon img{ width:56px; height:56px; object-fit:contain; }
.am-delivery__icon.am--mint{ background:#CFF3E4; }
.am-delivery__icon.am--blue{ background:#D7ECFF; }
.am-delivery__subtitle{
  margin: 6px 0 6px;
  font-size: clamp(18px, 2.1vw, 22px);
  font-weight: 800; line-height: 1.2;
}
.am-delivery__text{
  margin:0; color:#2a2a2a; line-height:1.65;
  font-size: clamp(15px, 1.5vw, 17px);
}
.am-link{
  color:#0b63ff; text-decoration: none; border-bottom:1px solid rgba(11,99,255,.3);
  transition: border-color .18s ease, color .18s ease;
}
.am-link:hover{ color:#084ad1; border-color: rgba(11,99,255,.55); }
/* reveal on scroll */
[data-io]{ opacity:0; transform: translateY(16px); transition: transform .6s cubic-bezier(.2,.7,.2,1), opacity .6s ease; }
[data-io].is-in{ opacity:1; transform:none; }
.am-delivery__item[data-io]{ transition-delay: .06s; }
.am-delivery__item:nth-child(2)[data-io]{ transition-delay: .12s; }
.am-delivery__item:nth-child(3)[data-io]{ transition-delay: .18s; }
@media (min-width: 980px){
  .am-delivery__list{ gap: clamp(20px, 2.2vw, 28px); }
}
@media (prefers-reduced-motion: reduce){
  .am-delivery__bg{ animation:none; }
  [data-io]{ transition:none; opacity:1; transform:none; }
}

/* ==== Animazioni badge/icona cart (SOLO animazioni/modifier) ==== */
.am-badge.is-bump{ animation: badge-bump .35s ease; }
@keyframes badge-bump{
  0%{ transform: scale(1); }
  30%{ transform: scale(1.18); }
  100%{ transform: scale(1); }
}
.am-cart.is-shake{ animation: cart-shake .5s cubic-bezier(.36,.07,.19,.97); }
@keyframes cart-shake{
  10% { transform: translateX(-1px) rotate(-3deg); }
  20% { transform: translateX( 1px) rotate( 3deg); }
  30% { transform: translateX(-1px) rotate(-2deg); }
  40% { transform: translateX( 1px) rotate( 2deg); }
  50% { transform: translateX( 0) rotate(0deg); }
}
/* “poof” quando si rimuove una riga dal carrello */
.is-poof{ animation: poof .26s ease forwards; }
@keyframes poof{ to{ transform: scale(0.98); opacity: 0; } }
