/* ============================================================
   NVI — OK Sweeteners — parallax cinematic product page
   Extends main.css
   ============================================================ */
.oks{
  --oks-dark:#1e1c1c;
  --oks-dark-2:#2a2826;
  --oks-gold:#E3C487;
  --oks-gold-soft:#D7B676;
  --oks-gold-deep:#8F6F3A;
  --oks-green:#A8D5A5;
  --oks-green-deep:#3E6B3A;
  --oks-bronze:#B8885D;
  --oks-syrup:#C99859;
  background:var(--oks-dark);color:var(--color-cream);
}
.nav__link--active{background:rgba(255,253,250,.12);color:var(--color-cream)}

/* ---- Breadcrumb ---- */
.oks-breadcrumb{padding:calc(var(--nav-h) + 20px) 0 0;background:var(--oks-dark)}
.oks-breadcrumb .container{display:flex;align-items:center;gap:10px;
  font-family:var(--font-sans);font-size:12px;letter-spacing:.14em;
  text-transform:uppercase;color:rgba(255,253,250,.55)}
.oks-breadcrumb a{color:rgba(255,253,250,.75);transition:color .3s}
.oks-breadcrumb a:hover{color:var(--oks-gold)}
.oks-breadcrumb span[aria-hidden]{opacity:.4}

/* ============================================================
   HERO — dark premium, layered gold glows, parallax content
   ============================================================ */
.oks-hero{
  position:relative;min-height:70vh;
  padding:calc(var(--nav-h) + 80px) 0 120px;
  display:flex;align-items:center;justify-content:center;
  color:var(--color-cream);overflow:hidden;isolation:isolate;text-align:center;
  background:var(--oks-dark);
}
.oks-hero__bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
/* Glow rimossi: hero con sfondo uniforme (--oks-dark), in continuità con la
   sezione Manifesto successiva. */
.oks-hero__glow{ display:none; }
.oks-hero__glow--a{top:-12%;left:8%;width:520px;height:520px;background:radial-gradient(circle,var(--oks-gold) 0%,transparent 65%)}
.oks-hero__glow--b{top:30%;right:0%;width:640px;height:640px;background:radial-gradient(circle,#C9A46A 0%,transparent 65%);opacity:.22}
.oks-hero__glow--c{top:50%;left:50%;transform:translate(-50%,-50%);width:820px;height:820px;background:radial-gradient(circle,#7C5E2C 0%,transparent 70%);opacity:.18}
/* Grain rimosso: il pattern di linee minuscole creava un'interferenza visiva
   poco premium. Manteniamo solo i glow morbidi per la textura cinematografica. */
.oks-hero__grain{display:none}

/* Stesso schema dell'hero OK Sweeteners Retail (logo + titolo + sottotitolo),
   layout a gap, testo NON limitato in larghezza. */
.oks-hero__content{
  position:relative;width:100%;max-width:var(--rail-wide);padding:0 24px;
  display:flex;flex-direction:column;align-items:center;
  gap:clamp(28px,3.5vw,52px);
}
.oks-hero__logo{
  width:clamp(180px, 22vw, 280px);height:auto;margin:0;
  filter:brightness(0) invert(1);opacity:.95;
}
.oks-hero__title{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:clamp(48px, 6.4vw, 104px);line-height:1.04;letter-spacing:-.02em;
  color:var(--color-cream);margin:0;max-width:none;
  white-space:nowrap;  /* desktop/tablet: una riga; sotto 700px torna a capo */
}
.oks-hero__title em{
  font-style:italic;color:inherit;
}
.oks-hero__lede{
  font-family:var(--font-sans);font-weight:var(--lede-weight);font-style:normal;
  font-size:var(--lede-size);line-height:var(--lede-lh);max-width:var(--measure-lede);
  color:rgba(255,253,250,.86);margin:0 auto;
}
/* Chips hero — palette gold su sfondo dark forest, allineate al pattern dulcya/qualy */
.oks-hero__chips{
  list-style:none;display:flex;flex-wrap:wrap;justify-content:center;
  gap:10px 14px;margin:0 auto 56px;padding:0;
}
.oks-hero__chip{
  display:inline-flex;align-items:center;gap:8px;
  padding:8px 14px 8px 10px;border-radius:999px;
  font-family:var(--font-sans);font-size:12px;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--color-cream);
  background:rgba(227,196,135,.06);
  border:1px solid rgba(227,196,135,.28);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.oks-hero__chip::before{
  content:"";width:8px;height:8px;border-radius:50%;
  background:var(--oks-gold);
}
.oks-hero__mock{
  position:relative;max-width:600px;width:100%;
  margin:0 auto;
  display:flex;align-items:center;justify-content:center;
  min-height:clamp(420px, 55vh, 620px);  /* riserva spazio per igualare altezza dei 5 prodotti nuovi */
}
.oks-hero__mock img{
  max-width:100%;max-height:60vh;width:auto;height:auto;
  object-fit:contain;
  filter:drop-shadow(0 40px 60px rgba(0,0,0,.55)) drop-shadow(0 0 50px rgba(227,196,135,.25));
}
.oks-hero__scroll{
  position:absolute;left:50%;bottom:48px;transform:translateX(-50%);
  width:52px;height:52px;border-radius:50%;
  border:1.5px solid rgba(255,253,250,.4);display:grid;place-items:center;
  transition:transform .4s, background .4s, border-color .4s;
  z-index:3;
}
.oks-hero__scroll span{
  width:12px;height:12px;border-right:1.5px solid var(--color-cream);
  border-bottom:1.5px solid var(--color-cream);transform:rotate(45deg) translate(-3px,-3px);
}
.oks-hero__scroll:hover{background:var(--oks-gold);border-color:var(--oks-gold);transform:translateX(-50%) translateY(4px)}
.oks-hero__scroll:hover span{border-color:var(--oks-dark)}

/* ============================================================
   MANIFESTO
   ============================================================ */
.oks-manifesto{background:var(--oks-dark);padding:180px 0 160px;position:relative;color:var(--color-cream)}
.oks-manifesto__grid{
  display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(40px, 5vw, 96px);
  align-items:center;
}
.oks-manifesto .eyebrow{color:rgba(255,253,250,.7);margin-bottom:28px;display:block}
.oks-manifesto__title{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:clamp(38px, 5vw, 72px);line-height:1.02;letter-spacing:-.008em;
  color:var(--color-cream);margin-bottom:36px;
}
.oks-manifesto__title em{font-style:italic;color:var(--color-cream)}
.oks-manifesto__body{
  font-size:var(--body-size);line-height:var(--body-lh);max-width:var(--measure-lede);
  color:rgba(255,253,250,.78);margin-bottom:22px;font-weight:var(--body-weight);}
.oks-manifesto__body em{font-style:italic;color:var(--oks-gold-soft)}
.oks-manifesto__art{
  aspect-ratio:4/5;position:relative;
  background:transparent;
}
/* Mantém box-shadow/border-radius solo per video/sequence (caso usate). */
.oks-manifesto__art--video,
.oks-manifesto__art--parallax-video{
  border-radius:28px;overflow:hidden;
  box-shadow:0 50px 120px -30px rgba(0,0,0,.6);
}
.oks-manifesto__art img{width:100%;height:100%;object-fit:contain;padding:4% 6%;will-change:transform}
/* Nota: stili --parallax-video / --video sono globali in main.css */

/* ============================================================
   TRE ZERI — pinned scrollytelling
   ============================================================ */
.oks-zeri{
  position:relative;
  background:var(--oks-dark);            /* uniforme con le altre sezioni (no verde, no glow) */
  min-height:150vh;                      /* scroll per il pin (ridotto: niente finale) */
  color:var(--color-cream);
}
.oks-zeri__track{
  position:sticky;top:0;height:100vh;height:100dvh;
  display:grid;place-items:center;padding:80px 24px;
  overflow:hidden;
}
.oks-zeri__kicker{
  position:absolute;top:96px;left:0;right:0;
  font-family:var(--font-sans);font-size:12px;font-weight:500;
  letter-spacing:.28em;text-transform:uppercase;color:var(--color-cream);
  opacity:.7;text-align:center;
}
.oks-zeri__digits{
  display:grid;grid-template-columns:repeat(3,1fr);
  width:min(1080px, 92vw);margin:0 auto;
  align-items:center;justify-items:center;
  font-family:var(--font-display);font-weight:400;
  line-height:.78;letter-spacing:-.02em;
}
.oks-zeri__digit{
  font-size:clamp(140px, 20vw, 300px);
  color:var(--color-cream);
  opacity:0;transform:translateY(40px) scale(.92);
  transition:opacity .9s ease, transform 1s cubic-bezier(.22,.61,.36,1);
}
.oks-zeri__digit.is-in{opacity:1;transform:none}

.oks-zeri__legends{
  position:absolute;bottom:96px;left:50%;transform:translateX(-50%);
  width:min(1080px, 92vw);margin:0;padding:0;
  display:grid;grid-template-columns:repeat(3,1fr);
  font-family:var(--font-sans);list-style:none;
}
.oks-zeri__legend{
  display:flex;flex-direction:column;align-items:center;gap:10px;
  opacity:0;transform:translateY(16px);
  transition:opacity .7s ease, transform .7s ease;
}
.oks-zeri__legend.is-in{opacity:1;transform:none}
.oks-zeri__legend-num{
  font-size:10px;font-weight:500;letter-spacing:.28em;
  color:var(--color-cream);opacity:.5;
}
.oks-zeri__legend-label{
  font-size:clamp(14px, 1.1vw, 17px);font-weight:500;letter-spacing:.04em;
  color:var(--color-cream);
}

/* (Sezione finale "3×" rimossa: la comunicazione valeva solo per un prodotto della linea) */

/* ============================================================
   BRAND SECTIONS — OK Gold, OK Green
   ============================================================ */
.oks-brand{position:relative;overflow:hidden}
.oks-brand--gold{
  background:
    radial-gradient(80% 70% at 20% 30%, rgba(227,196,135,.22), transparent 60%),
    radial-gradient(60% 60% at 80% 80%, rgba(143,111,58,.2), transparent 60%),
    var(--oks-dark);
  color:var(--color-cream);
}
.oks-brand--green{
  background:
    radial-gradient(70% 60% at 25% 30%, rgba(168,213,165,.25), transparent 60%),
    radial-gradient(70% 60% at 80% 80%, rgba(62,107,58,.3), transparent 60%),
    #142017;
  color:var(--color-cream);
}
.oks-brand__intro{padding:160px 0 140px}
.oks-brand__intro-grid{
  display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(40px, 6vw, 96px);
  align-items:center;
}
.oks-brand__intro-grid--reverse{grid-template-columns:1fr 1.1fr}
.oks-brand__intro-grid--reverse .oks-brand__intro-copy{order:2}
.oks-brand__intro-grid--reverse .oks-brand__stage{order:1}

/* Flex column con gap esplicito — sostituisce margin-bottom dei singoli figli.
   Pattern coerente: gap base 24px, leggera enfasi prima dei tag (+12px = 36px). */
.oks-brand__intro-copy{
  display:flex;flex-direction:column;align-items:flex-start;
  gap:24px;
}
.oks-brand__intro-copy > .oks-brand__benefits{margin-top:12px}

.oks-brand .eyebrow{color:var(--oks-gold);margin-bottom:0;display:block}
.oks-brand--green .eyebrow{color:var(--oks-green)}
.oks-brand__logo{
  height:clamp(56px, 6vw, 88px);width:auto;margin-bottom:0;display:block;
  filter:brightness(0) invert(1);opacity:.95;
}
.oks-brand__title{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:clamp(40px, 5.6vw, 82px);line-height:1;letter-spacing:-.01em;
  color:var(--color-cream);margin-bottom:0;
}
.oks-brand__title em{font-style:italic;color:var(--oks-gold)}
.oks-brand--green .oks-brand__title em{color:var(--oks-green)}
.oks-brand__copy{
  font-size:var(--body-size);line-height:var(--body-lh);max-width:var(--measure-lede);
  color:rgba(255,253,250,.82);margin-bottom:0;font-weight:var(--body-weight);}
.oks-brand__copy em{font-style:italic;color:var(--oks-gold-soft)}
.oks-brand--green .oks-brand__copy em{color:var(--oks-green)}
.oks-brand__benefits{
  list-style:none;display:grid;grid-template-columns:repeat(2, 1fr);
  gap:12px 24px;max-width:520px;
}
.oks-brand__benefits li{
  display:flex;align-items:center;gap:10px;
  font-family:var(--font-sans);font-size:14px;color:rgba(255,253,250,.88);
  padding:10px 14px;border-radius:999px;
  border:1px solid rgba(255,253,250,.14);background:rgba(255,253,250,.04);
}
.oks-brand__benefits span{
  width:20px;height:20px;border-radius:50%;display:grid;place-items:center;
  font-size:11px;background:var(--oks-gold);color:var(--oks-dark);
}
.oks-brand--green .oks-brand__benefits span{background:var(--oks-green);color:#142017}

/* Product stage with parallax — aspect 1/1 invece di 1/1.15 per non
   stirare verticalmente il grid row e disallineare il testo a sinistra. */
.oks-brand__stage{
  position:relative;aspect-ratio:1/1;
  display:grid;place-items:center;
}
.oks-brand__stage::before{
  content:"";position:absolute;inset:8%;border-radius:50%;
  background:radial-gradient(circle, rgba(227,196,135,.35) 0%, transparent 70%);
  filter:blur(40px);z-index:0;
}
.oks-brand--green .oks-brand__stage::before{background:radial-gradient(circle, rgba(168,213,165,.35) 0%, transparent 70%)}
.oks-brand__product{
  position:relative;z-index:1;width:100%;height:100%;
  display:grid;place-items:center;will-change:transform;
}
.oks-brand__product img{
  max-width:92%;max-height:92%;width:auto;height:auto;object-fit:contain;
  filter:drop-shadow(0 40px 60px rgba(0,0,0,.55));
}

/* ============================================================
   FORMATS
   ============================================================ */
.oks-formats{padding:40px 0 160px;background:linear-gradient(180deg,transparent 0%, rgba(0,0,0,.2) 100%)}
.oks-formats__head{margin-bottom:72px;max-width:var(--rail)}
.oks-formats__head .eyebrow{color:var(--oks-gold);margin-bottom:20px;display:block}
.oks-formats__title{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:clamp(32px, 4.4vw, 60px);line-height:1.05;letter-spacing:-.005em;
  color:var(--color-cream);
}
.oks-formats__title em{font-style:italic;color:var(--oks-gold)}
.oks-formats__group{margin-bottom:72px}
.oks-formats__group:last-child{margin-bottom:0}
.oks-formats__group-title{
  font-family:var(--font-sans);font-size:11px;font-weight:500;
  letter-spacing:.3em;text-transform:uppercase;color:var(--oks-gold);
  margin-bottom:28px;padding-bottom:16px;
  border-bottom:1px solid rgba(227,196,135,.22);
}
.oks-formats__grid{
  display:grid;grid-template-columns:repeat(4, 1fr);gap:18px;
}
.oks-format{
  position:relative;padding:28px 24px 26px;border-radius:22px;
  background:rgba(255,253,250,.03);
  border:1px solid rgba(255,253,250,.08);
  transition:transform .5s cubic-bezier(.22,.61,.36,1), background .5s, border-color .5s;
}
.oks-format:hover{
  transform:translateY(-6px);background:rgba(255,253,250,.06);
  border-color:rgba(227,196,135,.3);
}
.oks-format__swatch{
  width:52px;height:52px;border-radius:16px;margin-bottom:22px;
  background:linear-gradient(135deg, var(--oks-gold) 0%, var(--oks-gold-deep) 100%);
  box-shadow:0 12px 32px -8px rgba(227,196,135,.45), inset 0 1px 0 rgba(255,255,255,.3);
}
.oks-format--pro .oks-format__swatch{
  background:linear-gradient(135deg, #DFD6C6 0%, #8F8775 100%);
  box-shadow:0 12px 32px -8px rgba(207,197,176,.35), inset 0 1px 0 rgba(255,255,255,.3);
}
.oks-format h5{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:22px;line-height:1.2;color:var(--color-cream);margin-bottom:10px;
}
.oks-format p{
  font-size:13.5px;line-height:1.55;color:rgba(255,253,250,.65);
  margin-bottom:20px;min-height:3em;
}
.oks-format__size{
  display:inline-block;font-family:var(--font-sans);font-size:11px;font-weight:500;
  letter-spacing:.16em;text-transform:uppercase;color:var(--oks-gold);
  padding-top:14px;border-top:1px solid rgba(255,253,250,.1);width:100%;
}
.oks-format--pro .oks-format__size{color:#DFD6C6}

/* ============================================================
   OK BRONZE + OK SYRUP — coming soon duo
   ============================================================ */
.oks-soon{
  padding:160px 0;background:var(--oks-dark-2);color:var(--color-cream);
}
.oks-soon__head{text-align:center;margin-bottom:80px;max-width:var(--rail);margin-inline:auto}
.oks-soon__head .eyebrow{color:var(--oks-bronze);margin-bottom:20px;display:block}
.oks-soon__title{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:clamp(36px, 4.8vw, 68px);line-height:1.02;letter-spacing:-.005em;
}
.oks-soon__title em{font-style:italic;color:var(--oks-bronze)}
.oks-soon__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.oks-soon__card{
  position:relative;padding:60px 48px;border-radius:28px;overflow:hidden;
  background:rgba(255,253,250,.04);border:1px solid rgba(255,253,250,.08);
  min-height:440px;display:flex;flex-direction:column;justify-content:flex-end;
  transition:transform .6s cubic-bezier(.22,.61,.36,1);
}
.oks-soon__card--bronze{
  background:
    radial-gradient(80% 80% at 0% 0%, rgba(184,136,93,.35), transparent 60%),
    radial-gradient(80% 80% at 100% 100%, rgba(184,136,93,.2), transparent 60%),
    rgba(184,136,93,.05);
  border-color:rgba(184,136,93,.22);
}
.oks-soon__card--syrup{
  background:
    radial-gradient(80% 80% at 0% 0%, rgba(201,152,89,.35), transparent 60%),
    radial-gradient(80% 80% at 100% 100%, rgba(201,152,89,.2), transparent 60%),
    rgba(201,152,89,.05);
  border-color:rgba(201,152,89,.22);
}
.oks-soon__card:hover{transform:translateY(-6px)}
.oks-soon__logo{
  height:clamp(96px,10vw,128px);width:auto;
  margin:0 auto 36px 0;display:block;align-self:flex-start;
  filter:brightness(0) invert(1);opacity:.9;
}
.oks-soon__name{
  font-family:var(--font-display);font-weight:400;
  font-size:clamp(28px, 3vw, 42px);line-height:1;letter-spacing:-.005em;
  color:var(--color-cream);margin-bottom:18px;
}
.oks-soon__card p{
  font-size:15.5px;line-height:1.65;color:rgba(255,253,250,.75);
  max-width:44ch;
}
.oks-soon__badge{
  position:absolute;top:28px;right:28px;
  padding:8px 16px;border-radius:999px;
  font-family:var(--font-sans);font-size:10.5px;font-weight:600;
  letter-spacing:.26em;text-transform:uppercase;
  background:rgba(255,253,250,.1);color:var(--color-cream);
  border:1px solid rgba(255,253,250,.22);
}
.oks-soon__card--bronze .oks-soon__badge{background:var(--oks-bronze);color:var(--oks-dark);border-color:var(--oks-bronze)}
.oks-soon__card--syrup .oks-soon__badge{background:var(--oks-syrup);color:var(--oks-dark);border-color:var(--oks-syrup)}

/* ============================================================
   APPLICAZIONI — 4 market tiles with parallax images
   ============================================================ */
.oks-apps{padding:160px 0 140px;background:var(--color-cream);color:var(--color-ink-soft)}
.oks-apps__head{text-align:center;margin-bottom:72px;max-width:var(--rail);margin-inline:auto}
.oks-apps__head .eyebrow{color:var(--color-forest);margin-bottom:20px;display:block}
.oks-apps__title{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:clamp(34px, 4.8vw, 64px);line-height:1.02;letter-spacing:-.005em;
  color:var(--color-forest);
}
.oks-apps__title em{font-style:italic;color:var(--color-sage-700)}

.oks-apps__grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:18px}
.oks-app{
  display:flex;flex-direction:column;
  border-radius:24px;overflow:hidden;
  background:var(--color-cream-warm);
  transition:transform .5s cubic-bezier(.22,.61,.36,1), box-shadow .5s;
  box-shadow:0 2px 8px rgba(28,28,28,.04);
}
.oks-app:hover{transform:translateY(-6px);box-shadow:0 24px 60px rgba(28,28,28,.12)}
.oks-app__img{aspect-ratio:4/3;overflow:hidden;position:relative}
.oks-app__img img{width:100%;height:110%;object-fit:cover;will-change:transform}
.oks-app__body{padding:24px 22px 26px;display:flex;flex-direction:column;gap:10px}
.oks-app__body h3{
  font-family:var(--title-font);font-weight:var(--title-weight);font-size:26px;line-height:1.2;
  color:var(--color-forest);
}
.oks-app__body p{font-size:var(--body-sm-size);line-height:var(--body-sm-lh);color:var(--color-ink-soft);opacity:.78;font-weight:var(--body-sm-weight);}
.oks-app__more{
  margin-top:10px;font-family:var(--font-sans);font-size:12.5px;font-weight:500;
  letter-spacing:.06em;color:var(--color-forest);
  transition:transform .3s ease;
}
.oks-app:hover .oks-app__more{transform:translateX(4px)}

/* ============================================================
   MOOD SECTION — divisorio editoriale cinematografico
   (eyebrow chip pill + titolo serif italic, immagine full-bleed)
   ============================================================ */
.oks-mood{
  position:relative;
  min-height:clamp(380px,55vh,560px);
  display:flex;align-items:center;justify-content:center;
  padding:clamp(80px,10vw,140px) 0;
  overflow:hidden;isolation:isolate;
  background:var(--oks-dark);
  color:var(--color-cream);
}
.oks-mood__media{
  position:absolute;inset:0;z-index:0;
}
.oks-mood__media img{
  width:100%;height:100%;object-fit:cover;object-position:center;
  display:block;
  transition:transform 18s linear;
}
.oks-mood:hover .oks-mood__media img{transform:scale(1.06)}
.oks-mood__overlay{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(180deg, rgba(30,28,28,.55) 0%, rgba(30,28,28,.8) 100%),
    radial-gradient(ellipse 60% 50% at 50% 50%, rgba(30,28,28,.25), rgba(30,28,28,.6));
}
/* Quando non c'è immagine, sostituiamo l'overlay con un radial glow ouro/sage */
.oks-mood:not(.oks-mood--has-media) .oks-mood__overlay{
  background:
    radial-gradient(ellipse 50% 40% at 20% 20%, rgba(227,196,135,.10), transparent 60%),
    radial-gradient(ellipse 50% 40% at 80% 80%, rgba(168,213,165,.08), transparent 60%);
}
.oks-mood__inner{
  position:relative;z-index:2;
  text-align:center;max-width:var(--rail);
  padding:0 24px;
}
.oks-mood__eyebrow{
  display:inline-block;margin:0 auto 28px;
  padding:9px 20px;border-radius:999px;
  background:rgba(255,253,250,.10);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
  border:1px solid rgba(255,253,250,.22);
  font-family:'Gotham',sans-serif;font-weight:500;font-size:11.5px;letter-spacing:.32em;
  text-transform:uppercase;color:var(--color-cream);
}
.oks-mood__title{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:clamp(36px,5vw,76px);line-height:1.04;letter-spacing:-.018em;
  color:var(--color-cream);text-wrap:balance;margin:0;
  text-shadow:0 8px 32px rgba(0,0,0,.45);
}
.oks-mood__title em{
  font-style:italic;
  color:var(--color-cream);
}

/* ============================================================
   CTA — PARLIAMO DI INGREDIENTI (palette dark armonizzata)
   ============================================================ */
.oks-cta{
  background:var(--oks-dark);
  color:var(--color-cream);padding:140px 0;position:relative;overflow:hidden;isolation:isolate;
}
.oks-cta::before{
  content:"";position:absolute;inset:-20% -10% auto auto;width:70%;height:120%;z-index:-1;
  background:radial-gradient(circle at 70% 30%, rgba(227,196,135,.14), transparent 65%);
  pointer-events:none;
}
.oks-cta::after{
  content:"";position:absolute;left:-10%;bottom:-30%;width:60%;height:90%;z-index:-1;
  background:radial-gradient(circle at 30% 70%, rgba(168,213,165,.08), transparent 65%);
  pointer-events:none;
}
.oks-cta__inner{text-align:center;max-width:var(--rail);margin:0 auto;position:relative}
.oks-cta__inner .eyebrow{color:var(--oks-gold);margin-bottom:20px;display:block}
.oks-cta__title{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:clamp(36px, 4.8vw, 64px);line-height:1.02;letter-spacing:-.005em;
  color:var(--color-cream);margin-bottom:26px;
}
.oks-cta__title em{font-style:italic;color:var(--oks-gold)}
.oks-cta__body{
  font-family:'Gotham',sans-serif;font-weight:var(--body-weight);
  font-size:var(--body-size);line-height:var(--body-lh);max-width:var(--measure-lede);
  color:rgba(255,253,250,.85);margin:0 auto 40px;
}
.oks-cta__actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.oks-cta .btn--ghost{color:var(--color-cream);border-color:rgba(255,253,250,.55)}
.oks-cta .btn--ghost:hover{background:var(--color-cream);color:var(--oks-dark);border-color:var(--color-cream)}

/* ============================================================
   Reveal base
   ============================================================ */
[data-lp-reveal]{opacity:0;transform:translateY(24px);transition:opacity .9s cubic-bezier(.22,.61,.36,1), transform .9s cubic-bezier(.22,.61,.36,1)}
[data-lp-reveal].is-in{opacity:1;transform:none}
[data-lp-reveal][data-lp-delay="1"]{transition-delay:.1s}
[data-lp-reveal][data-lp-delay="2"]{transition-delay:.2s}
[data-lp-reveal][data-lp-delay="3"]{transition-delay:.3s}
[data-lp-reveal][data-lp-delay="4"]{transition-delay:.4s}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width: 1100px){
  .oks-manifesto__grid,.oks-brand__intro-grid,.oks-brand__intro-grid--reverse{grid-template-columns:1fr;gap:40px}
  .oks-brand__intro-grid--reverse .oks-brand__intro-copy{order:1}
  .oks-brand__intro-grid--reverse .oks-brand__stage{order:2}
  .oks-manifesto__art{max-width:520px;margin:0 auto;width:100%}
  .oks-formats__grid{grid-template-columns:repeat(2, 1fr)}
  .oks-apps__grid{grid-template-columns:repeat(2, 1fr)}
  .oks-soon__grid{grid-template-columns:1fr}
}
@media (max-width: 720px){
  .oks-hero{padding:calc(var(--nav-h) + 40px) 0 72px}
  .oks-hero__logo{margin-bottom:28px;width:clamp(150px,46vw,200px)}
  .oks-hero__title{white-space:normal;font-size:clamp(34px,8.5vw,52px)}
  .oks-manifesto{padding:110px 0 100px}
  .oks-brand__intro{padding:100px 0 80px}
  .oks-formats{padding:0 0 100px}
  .oks-formats__grid{grid-template-columns:1fr}
  .oks-soon{padding:100px 0}
  .oks-soon__card{padding:44px 32px;min-height:360px}
  .oks-apps{padding:100px 0}
  .oks-apps__grid{grid-template-columns:1fr}
  .oks-cta{padding:100px 0}
  .oks-brand__benefits{grid-template-columns:1fr}
  .oks-zeri__digits{gap:12px}
  .oks-zeri__legends{bottom:60px;gap:16px;padding:0 24px}
  .oks-zeri__legend-label{font-size:13px;text-align:center}
}

@media (prefers-reduced-motion: reduce){
  [data-lp-reveal]{opacity:1;transform:none;transition:none}
  .oks-hero__glow,.oks-hero__mock img,.oks-brand__product,
  .oks-manifesto__art img,.oks-app__img img{transform:none!important}
}

/* ============================================================
   SPLIT CARDS — Retail / Professional pivot (fondo dark)
   ============================================================ */
.oks-split{
  background:var(--oks-dark);
  color:var(--color-cream);
  padding:clamp(80px,10vw,140px) 0;
  position:relative;overflow:hidden;isolation:isolate;
}
/* Glow ouro/verde rimossi: sfondo uniforme in continuità con le altre sezioni. */
.oks-split::before{ display:none; }
.oks-split__head{
  max-width:var(--rail);margin:0 auto clamp(48px,5vw,80px);
  text-align:center;
}
.oks-split__head .eyebrow{
  display:inline-block;margin-bottom:14px;color:rgba(255,253,250,.7);
}
.oks-split__title{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:clamp(34px,4vw,64px);line-height:1.1;letter-spacing:-.018em;
  color:var(--color-cream);text-wrap:balance;
}
.oks-split__title em{
  font-family:var(--title-font);font-weight:var(--title-em-weight);font-style:var(--title-em-style);
  color:var(--color-cream);
}
.oks-split__lede{
  font-family:var(--font-sans);font-weight:var(--lede-weight);
  font-size:var(--lede-size);line-height:var(--lede-lh);color:rgba(255,253,250,.78);
  margin-top:20px;max-width:var(--measure-lede);margin-left:auto;margin-right:auto;
}
.oks-split__grid{
  display:grid;grid-template-columns:1fr;gap:clamp(20px,2.5vw,32px);
}
@media (min-width:900px){
  .oks-split__grid{grid-template-columns:repeat(2,1fr);}
}
.oks-split__card{
  position:relative;display:block;
  min-height:clamp(440px, 56vh, 580px);
  border-radius:32px;overflow:hidden;
  text-decoration:none;color:inherit;
  background:var(--color-forest-900);
  transition:transform .55s var(--easing-out), box-shadow .55s;
  isolation:isolate;
}
.oks-split__card:hover{
  transform:translateY(-8px);
  box-shadow:0 30px 60px rgba(28,28,28,.22);
}
.oks-split__bg{
  position:absolute;inset:0;z-index:0;
}
.oks-split__bg img{
  width:100%;height:100%;object-fit:cover;object-position:center;
  transition:transform 1.2s var(--easing-out);
}
.oks-split__card:hover .oks-split__bg img{transform:scale(1.06)}
.oks-split__overlay{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg, rgba(0,0,0,.40) 0%, rgba(0,0,0,.62) 50%, rgba(0,0,0,.92) 100%);
  transition:opacity .55s;
}
.oks-split__card:hover .oks-split__overlay{
  background:linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.66) 50%, rgba(0,0,0,.95) 100%);
}
.oks-split__content{
  position:absolute;left:0;right:0;bottom:0;z-index:2;
  padding:clamp(28px,4vw,52px);
  color:var(--color-cream);
  display:flex;flex-direction:column;gap:16px;
}
.oks-split__eyebrow{
  font-family:var(--font-sans);font-weight:500;font-size:11.5px;letter-spacing:.28em;
  text-transform:uppercase;color:rgba(255,253,250,.78);
}
.oks-split__card--retail .oks-split__eyebrow{color:rgba(255,253,250,.85)}
.oks-split__card--pro .oks-split__eyebrow{color:rgba(255,253,250,.85)}
.oks-split__card-title{
  font-family:var(--title-font);font-weight:var(--title-weight);
  font-size:clamp(34px,3.8vw,56px);line-height:1.08;letter-spacing:-.018em;
  color:var(--color-cream);
}
.oks-split__card-title em{
  font-family:var(--title-font);font-weight:var(--title-em-weight);font-style:var(--title-em-style);
}
.oks-split__card--retail .oks-split__card-title em{color:var(--color-cream)}
.oks-split__card--pro .oks-split__card-title em{color:var(--color-cream)}
.oks-split__desc{
  font-family:var(--font-sans);font-weight:var(--body-sm-weight);
  font-size:var(--body-sm-size);line-height:var(--body-sm-lh);color:rgba(255,253,250,.86);
  max-width:48ch;
}
.oks-split__cta{
  display:inline-flex;align-items:center;gap:12px;margin-top:8px;
  font-family:var(--font-sans);font-weight:500;font-size:14.5px;letter-spacing:.04em;
  color:var(--color-cream);
}
.oks-split__arrow{
  display:inline-flex;align-items:center;justify-content:center;
  width:32px;height:32px;border-radius:50%;
  border:1px solid rgba(255,253,250,.4);font-size:16px;
  transition:transform .35s var(--easing-out), background .35s, color .35s, border-color .35s;
}
.oks-split__card:hover .oks-split__arrow{
  background:var(--color-cream);color:var(--color-forest-900);border-color:var(--color-cream);
  transform:translateX(6px);
}

/* Background fallback se non c'è immagine */
.oks-split__card--retail:not(:has(.oks-split__bg img)){
  background:linear-gradient(135deg, #2B3D35 0%, #4A3A20 100%);
}
.oks-split__card--pro:not(:has(.oks-split__bg img)){
  background:linear-gradient(135deg, #0F1A14 0%, #1E3A3A 100%);
}

@media (max-width:700px){
  .oks-split__card{min-height:380px}
}

/* =========================================================
   LE NOSTRE LINEE — Editorial Gold + Green teaser
   ========================================================= */
.oks-lines{
  position:relative;
  padding:clamp(100px,12vw,180px) 0;
  background:linear-gradient(180deg, var(--color-cream) 0%, var(--color-cream-warm) 100%);
  overflow:hidden;
  isolation:isolate;
}
.oks-lines::before{
  content:"";
  position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(ellipse 60% 40% at 15% 10%, rgba(227,196,135,.18), transparent 60%),
    radial-gradient(ellipse 60% 40% at 85% 90%, rgba(168,213,165,.16), transparent 60%);
}
.oks-lines__head{
  text-align:center;
  max-width:var(--rail);
  margin:0 auto clamp(56px,7vw,96px);
}
.oks-lines__head .eyebrow{
  display:inline-block;
  margin-bottom:18px;
  color:var(--oks-gold,#B8923D);
}
.oks-lines__title{
  font-family:var(--title-font,'Girisuba',serif);
  font-weight:var(--title-weight,400);
  font-style:italic;
  font-size:clamp(40px,5vw,72px);
  line-height:1.05;
  letter-spacing:-.01em;
  color:var(--oks-dark,#1e1c1c);
  margin:0 0 22px;
  text-wrap:balance;
}
.oks-lines__title em{
  font-style:italic;
  color:var(--oks-gold,#B8923D);
  background:linear-gradient(135deg, #C9A24A 0%, #E3C487 50%, #8FB37A 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.oks-lines__lede{
  font-family:'Gotham',sans-serif;
  font-weight:var(--lede-weight);
  font-size:var(--lede-size);
  line-height:var(--lede-lh);
  color:var(--color-ink-soft,#2B2B2B);
  max-width:var(--measure-lede);
  margin:0 auto;
}
.oks-lines__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(24px,3vw,40px);
  max-width:1180px;
  margin:0 auto;
}
@media (min-width:820px){
  .oks-lines__grid{grid-template-columns:repeat(2,1fr);}
}
.oks-lines__card{
  position:relative;
  padding:clamp(36px,4vw,56px) clamp(32px,3.5vw,52px);
  border-radius:28px;
  background:var(--color-cream);
  border:1px solid rgba(30,28,28,.08);
  box-shadow:0 24px 60px rgba(30,28,28,.06);
  overflow:hidden;
  isolation:isolate;
  display:flex;flex-direction:column;
  min-height:420px;
  transition:transform .55s cubic-bezier(.2,.7,.2,1), box-shadow .55s ease;
}
.oks-lines__card:hover{
  transform:translateY(-6px);
  box-shadow:0 36px 90px rgba(30,28,28,.12);
}
.oks-lines__card-glow{
  position:absolute;inset:-20%;z-index:-1;pointer-events:none;
  opacity:.55;
  transition:opacity .6s ease;
}
.oks-lines__card:hover .oks-lines__card-glow{opacity:.85}
.oks-lines__card--gold .oks-lines__card-glow{
  background:radial-gradient(ellipse 50% 40% at 80% 15%, rgba(227,196,135,.55), transparent 65%);
}
.oks-lines__card--green .oks-lines__card-glow{
  background:radial-gradient(ellipse 50% 40% at 80% 15%, rgba(168,213,165,.55), transparent 65%);
}
.oks-lines__card-mark{
  font-family:'Gotham',sans-serif;
  font-weight:700;
  font-size:13px;
  letter-spacing:.22em;
  text-transform:uppercase;
  margin-bottom:24px;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.oks-lines__card--gold .oks-lines__card-mark{color:#B8923D}
.oks-lines__card--green .oks-lines__card-mark{color:#5E8A4F}
.oks-lines__card-mark::after{
  content:"";display:inline-block;
  width:36px;height:1px;
  background:currentColor;opacity:.4;
}
.oks-lines__card-title{
  font-family:var(--title-font,'Girisuba',serif);
  font-weight:var(--title-weight,400);
  font-size:clamp(28px,3vw,40px);
  line-height:1.1;
  color:var(--oks-dark,#1e1c1c);
  margin:0 0 18px;
  letter-spacing:-.01em;
  text-wrap:balance;
}
.oks-lines__card-title em{
  font-style:italic;
}
.oks-lines__card--gold .oks-lines__card-title em{color:#B8923D}
.oks-lines__card--green .oks-lines__card-title em{color:#5E8A4F}
.oks-lines__card-text{
  font-family:'Gotham',sans-serif;
  font-weight:300;
  font-size:16px;
  line-height:1.7;
  color:var(--color-ink-soft,#2B2B2B);
  margin:0 0 28px;
  flex:1;
}
.oks-lines__card-text strong{font-weight:600;color:var(--oks-dark,#1e1c1c)}
.oks-lines__card-chips{
  list-style:none;padding:0;margin:0 0 28px;
  display:flex;flex-wrap:wrap;gap:8px;
}
.oks-lines__card-chips li{
  font-family:'Gotham',sans-serif;
  font-weight:500;
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid rgba(30,28,28,.12);
  background:rgba(255,253,250,.6);
  color:var(--oks-dark,#1e1c1c);
}
.oks-lines__card--gold .oks-lines__card-chips li{
  border-color:rgba(184,146,61,.3);
  background:rgba(227,196,135,.12);
}
.oks-lines__card--green .oks-lines__card-chips li{
  border-color:rgba(94,138,79,.3);
  background:rgba(168,213,165,.12);
}
.oks-lines__card-arrow{
  position:absolute;
  bottom:clamp(28px,3vw,40px);
  right:clamp(28px,3vw,40px);
  width:48px;height:48px;
  border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  border:1px solid currentColor;
  font-size:18px;
  transition:transform .4s ease;
}
.oks-lines__card--gold .oks-lines__card-arrow{color:#B8923D}
.oks-lines__card--green .oks-lines__card-arrow{color:#5E8A4F}
.oks-lines__card:hover .oks-lines__card-arrow{transform:translateX(6px)}

/* =========================================================
   COMING SOON — Bronze + Syrup simplified teaser
   ========================================================= */
.oks-soon-simple{
  position:relative;
  padding:clamp(100px,12vw,160px) 0;
  background:var(--oks-dark,#1e1c1c);
  color:var(--color-cream);
  overflow:hidden;
  isolation:isolate;
}
.oks-soon-simple::before{
  content:"";
  position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    radial-gradient(ellipse 60% 40% at 20% 30%, rgba(184,124,76,.10), transparent 60%),
    radial-gradient(ellipse 60% 40% at 80% 70%, rgba(227,196,135,.08), transparent 60%);
}
.oks-soon-simple__head{
  text-align:center;
  max-width:var(--rail);
  margin:0 auto clamp(56px,7vw,88px);
}
.oks-soon-simple__head .eyebrow{
  display:inline-block;
  margin-bottom:18px;
  color:rgba(227,196,135,.85);
}
.oks-soon-simple__title{
  font-family:var(--title-font,'Girisuba',serif);
  font-weight:var(--title-weight,400);
  font-style:italic;
  font-size:clamp(36px,4.6vw,64px);
  line-height:1.05;
  letter-spacing:-.01em;
  color:var(--color-cream);
  margin:0;
  text-wrap:balance;
}
.oks-soon-simple__title em{
  font-style:italic;
  background:linear-gradient(135deg, #E3C487 0%, #B8924D 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.oks-soon-simple__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(20px,2.5vw,32px);
  max-width:1080px;
  margin:0 auto;
}
@media (min-width:760px){
  .oks-soon-simple__grid{grid-template-columns:repeat(2,1fr);}
}
.oks-soon-simple__card{
  position:relative;
  padding:clamp(40px,5vw,68px) clamp(32px,4vw,56px);
  border-radius:28px;
  border:1px solid rgba(255,253,250,.10);
  background:linear-gradient(160deg, rgba(255,253,250,.04) 0%, rgba(255,253,250,.01) 100%);
  overflow:hidden;
  isolation:isolate;
  display:flex;flex-direction:column;
  text-align:center;
  min-height:300px;
  transition:transform .55s cubic-bezier(.2,.7,.2,1), border-color .4s ease, background .4s ease;
}
.oks-soon-simple__card::before{
  content:"";
  position:absolute;inset:-30% -10% auto -10%;height:80%;z-index:-1;
  pointer-events:none;
  opacity:.45;
  transition:opacity .55s ease;
}
.oks-soon-simple__card--bronze::before{
  background:radial-gradient(ellipse 60% 60% at 50% 0%, rgba(184,124,76,.45), transparent 65%);
}
.oks-soon-simple__card--syrup::before{
  background:radial-gradient(ellipse 60% 60% at 50% 0%, rgba(227,196,135,.45), transparent 65%);
}
.oks-soon-simple__card:hover{
  transform:translateY(-4px);
  border-color:rgba(255,253,250,.18);
  background:linear-gradient(160deg, rgba(255,253,250,.06) 0%, rgba(255,253,250,.02) 100%);
}
.oks-soon-simple__card:hover::before{opacity:.7}
.oks-soon-simple__badge{
  display:inline-block;
  font-family:'Gotham',sans-serif;
  font-weight:600;
  font-size:10px;
  letter-spacing:.28em;
  text-transform:uppercase;
  padding:8px 16px;
  border-radius:999px;
  border:1px solid rgba(255,253,250,.18);
  color:rgba(255,253,250,.65);
  margin:0 auto 28px;
  align-self:center;
}
.oks-soon-simple__name{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  margin:0 auto 24px;
}
.oks-soon-simple__name-prefix{
  font-family:'Gotham',sans-serif;
  font-weight:300;
  font-size:14px;
  letter-spacing:.4em;
  text-transform:uppercase;
  color:rgba(255,253,250,.55);
}
.oks-soon-simple__name-suffix{
  font-family:var(--title-font,'Girisuba',serif);
  font-weight:var(--title-weight,400);
  font-style:italic;
  font-size:clamp(48px,6vw,84px);
  line-height:1;
  letter-spacing:-.01em;
}
.oks-soon-simple__card--bronze .oks-soon-simple__name-suffix{
  background:linear-gradient(135deg, #C58A5E 0%, #8C5A38 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.oks-soon-simple__card--syrup .oks-soon-simple__name-suffix{
  background:linear-gradient(135deg, #E3C487 0%, #B8923D 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.oks-soon-simple__text{
  font-family:'Gotham',sans-serif;
  font-weight:var(--body-sm-weight);
  font-size:var(--body-sm-size);
  line-height:var(--body-sm-lh);
  color:rgba(255,253,250,.72);
  max-width:38ch;
  margin:0 auto;
}
