/* ZOEY Baby Care – stile "Lino" */
@font-face{font-family:"Karla";src:url("/fonts/karla.woff") format("woff");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:"Young Serif";src:url("/fonts/young-serif.woff") format("woff");font-weight:400;font-style:normal;font-display:swap}
:root{
  --linen:#EEE6DA;
  --cream:#FBF8F2;
  --sage:#D3D6C3;
  --sage-ink:#7E8668;
  --green:#6B7358;
  --green-deep:#5A6149;
  --ink:#574340;
  --ink-deep:#2F2321;
  --soft:#6E5D58;
  --wave:#A08E89;
  --rule:#E2D8CB;
  --field:#CFC3B5;
  --serif:"Young Serif", Georgia, serif;
  --sans:"Karla", system-ui, sans-serif;
  --wrap:1240px;
  --gutter:24px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--linen);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:var(--ink)}
a:hover{color:var(--ink-deep)}
a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:4px}
h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0}
p{margin:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--gutter)}
.multiply{mix-blend-mode:multiply}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Fascia spedizione */
.ship-bar{background:var(--green);color:var(--cream);text-align:center;padding:10px 16px;font-size:14px;letter-spacing:.02em}

/* Testata */
.header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding-block:20px}
.nav{display:flex;gap:28px;font-size:15px}
.nav a{text-decoration:none;padding-block:10px}
.nav a:hover{text-decoration:underline;text-underline-offset:5px}
.brand{line-height:0}
.brand img{height:40px;width:auto}
.header-cta{justify-self:end}

/* Pulsanti */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 34px;border:0;border-radius:999px;background:var(--green);color:var(--cream);font:500 16px/1 var(--sans);text-decoration:none;cursor:pointer;transition:background-color .2s ease}
.btn:hover{background:var(--green-deep);color:var(--cream)}
.btn[disabled],.btn[aria-disabled="true"]{background:var(--green);cursor:not-allowed}
.btn-small{min-height:44px;padding:0 22px;font-size:15px}
.link{font-size:16px;text-underline-offset:4px}

/* Copertina */
.hero{display:flex;flex-wrap:wrap;align-items:center;gap:64px;padding-block:40px 96px}
.hero-text{flex:1 1 420px;min-width:0;max-width:560px}
.payoff{display:flex;align-items:center;gap:14px;margin-bottom:36px;font-family:var(--serif);font-size:18px;color:var(--soft)}
.payoff img{width:64px;height:64px}
.hero h1{font-size:clamp(40px,5vw,66px);line-height:1.08;letter-spacing:-.01em;margin-bottom:28px}
.lead{font-size:19px;line-height:1.6;margin-bottom:36px;max-width:34em}
.price-row{display:flex;flex-wrap:wrap;align-items:center;gap:24px 32px;margin-bottom:28px}
.price{font-family:var(--serif);font-size:34px;line-height:1}
.phase-note{font-size:15px;line-height:1.55;color:var(--soft);max-width:32em}
.hero-media{flex:1 1 440px;min-width:0;position:relative;padding:0 44px}
.hero-media img{width:100%;height:clamp(420px,52vw,660px);object-fit:cover;border-radius:3px}
.wave-v{position:absolute;top:4%;width:24px;height:92%}
.wave-v.left{left:0}.wave-v.right{right:0}
.wave-h{display:block;width:100%;height:20px}
.wave{color:var(--wave);overflow:visible}

/* Prodotto */
.product{background:var(--cream)}
.product .wrap{display:flex;flex-wrap:wrap;gap:72px;align-items:flex-start;padding-block:112px}
.product-media{flex:1 1 380px;min-width:0;align-self:stretch;min-height:560px;border-radius:3px;overflow:hidden;display:flex;justify-content:center;background:linear-gradient(180deg,#E6DCCB 0%,#EEE8DE 45%,#DAD7D1 100%)}
.product-media picture{display:flex;height:100%}
.product-media img{height:100%;width:auto;max-height:760px;object-fit:contain;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22%,#000 78%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 22%,#000 78%,transparent 100%)}
.product-info{flex:1 1 440px;min-width:0;max-width:560px}
.product-info h2{font-size:clamp(34px,3.6vw,48px);line-height:1.1;margin-bottom:12px}
.meta{font-size:16px;color:var(--soft);margin-bottom:28px}
.description{font-size:18px;line-height:1.65;margin-bottom:40px}
.actives{list-style:none;margin:0 0 36px;padding:28px 0;display:flex;flex-direction:column;gap:22px;border-block:1px solid var(--rule)}
.actives li{display:flex;gap:18px;align-items:flex-start}
.actives svg{flex:0 0 auto;margin-top:2px;stroke:var(--sage-ink)}
.actives strong{display:block;font-size:17px;margin-bottom:2px}
.actives span{font-size:16px;line-height:1.5;color:var(--soft)}

.buy{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:16px}
.buy .price{font-size:36px;margin-right:8px}
.qty{display:inline-flex;align-items:center;border:1px solid var(--field);border-radius:999px;height:52px}
.qty button{width:48px;height:50px;border:0;background:none;color:var(--ink);font-size:20px;cursor:pointer;border-radius:999px}
.qty button:disabled{color:#B9ADA8;cursor:not-allowed}
.qty output{min-width:28px;text-align:center;font-size:17px;font-weight:500}
.buy .btn{flex:1 1 200px}
.totals{font-size:15px;color:var(--soft);margin-bottom:24px;min-height:1.6em}
.totals strong{color:var(--ink);font-weight:500}
.form-error{color:#8A2C1F;font-size:15px;margin-bottom:16px}
.notice{background:var(--linen);border-radius:3px;padding:20px 22px;font-size:15px;line-height:1.6}
.notice p+p{margin-top:6px;color:var(--soft)}
.legal-note{font-size:13px;color:var(--soft);margin-top:14px}

/* Brand */
.story{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:56px 88px;padding-block:120px}
.story img{width:clamp(220px,26vw,340px);flex:0 0 auto}
.story-text{flex:1 1 400px;min-width:0;max-width:540px}
.story h2{font-size:clamp(32px,3.4vw,46px);line-height:1.12;margin-bottom:24px}
.story p{font-size:18px;line-height:1.7}
.story p+p{margin-top:18px}

/* Piè di pagina */
.footer{background:var(--sage)}
.footer .wrap{padding-block:72px 40px}
.footer-grid{display:flex;flex-wrap:wrap;gap:48px 64px;justify-content:space-between;margin-bottom:56px}
.footer-col{flex:1 1 160px;display:flex;flex-direction:column;gap:10px;font-size:15px}
.footer-col.brandcol{flex-basis:240px}
.footer-col.brandcol img{height:38px;width:auto;margin-bottom:6px;align-self:flex-start}
.footer-col .title{font-weight:700;margin-bottom:4px}
.footer-col address{font-style:normal;line-height:1.7}
.footer small{font-size:13px}
.serif{font-family:var(--serif)}

/* Pagine interne (grazie, legali) */
.page{max-width:760px;margin:0 auto;padding:72px var(--gutter) 120px}
.page h1{font-size:clamp(34px,4.4vw,52px);line-height:1.1;margin-bottom:24px}
.page h2{font-size:26px;margin:40px 0 12px}
.page p,.page li{font-size:17px;line-height:1.7}
.page p+p{margin-top:14px}
.page .notice{margin:28px 0}
.draft{background:#F5EBD3;border-radius:3px;padding:14px 18px;font-size:15px;margin-bottom:32px}

/* Telefono */
@media (max-width:760px){
  .header{grid-template-columns:1fr auto;padding-block:14px}
  .nav{display:none}
  .brand img{height:34px}
  .hero{gap:40px;padding-block:24px 64px}
  .payoff{margin-bottom:24px}
  .hero-media{padding:0 30px;order:-1}
  .hero-media img{height:min(400px,95vw)}
  .product-media{min-height:0}
  .product-media img{max-height:480px}
  .wave-v{width:18px}
  .product .wrap{gap:40px;padding-block:72px}
  .story{padding-block:80px;gap:40px}
}

/* Pagine legali */
.page.legal{padding-top:40px}
.page .meta{color:var(--soft);font-size:15px;margin-bottom:28px}
.page ul{padding-left:1.2em;margin:10px 0}
.page li+li{margin-top:8px}
.page h2+p{margin-top:0}
.page .notice p{font-size:15px}
.header .link{font-size:15px}
@media (max-width:760px){.header .link{display:none}}
