/* Lifestyle revision. The first pass keeps its original stylesheet for comparison. */
:root { --tikka-soft:#F7EAE7; --butter-soft:#FAF2E4; --goan-soft:#F3F2E4; }
.lifestyle-hero { position:relative; isolation:isolate; height:min(860px,calc(100svh - 88px)); min-height:680px; overflow:hidden; background:#000; color:#fff; }
.lifestyle-hero__media,.lifestyle-hero__slide,.lifestyle-hero__shade { position:absolute; inset:0; }
.lifestyle-hero__slide { opacity:0; transition:opacity 900ms ease; }
.lifestyle-hero__slide.is-active { opacity:1; }
.lifestyle-hero__slide img { width:100%; height:100%; object-fit:cover; object-position:70% 50%; }
.lifestyle-hero__shade { background:rgba(0,0,0,.25); pointer-events:none; }
.lifestyle-hero__content { position:relative; z-index:1; height:100%; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding-block:80px 125px; }
.lifestyle-hero h1 { max-width:640px; font-size:clamp(60px,6.3vw,90px); line-height:1.03; letter-spacing:-.06em; font-weight:500; margin:0; }
.lifestyle-hero__content p { max-width:420px; font-size:18px; line-height:1.55; margin:28px 0 32px; }
.lifestyle-hero__cta { background:#fff; color:#000; border-color:#fff; }
.lifestyle-hero__cta:hover { background:#fff; color:#000; border-color:#fff; text-decoration:underline; text-underline-offset:4px; }
.lifestyle-hero__bottom { position:absolute; z-index:2; left:0; right:0; bottom:30px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.lifestyle-hero__caption { font-size:14px; margin:0; max-width:350px; }
.lifestyle-hero__controls:not([hidden]) { display:flex; align-items:center; gap:16px; }
.lifestyle-hero__choices { display:flex; gap:8px; }
.lifestyle-hero__controls button { border:1px solid rgba(255,255,255,.55); background:rgba(0,0,0,.35); color:#fff; min-height:44px; padding:10px 14px; cursor:pointer; border-radius:999px; font-size:12px; }
.lifestyle-hero__choices button[aria-pressed="true"] { background:#fff; color:#000; border-color:#fff; }
.lifestyle-hero__index { margin-right:8px; font-size:10px; }
.lifestyle-hero__pause { min-width:64px; }
.v2-product { --sku-soft:var(--tikka-soft); --pouch-mask:url('../img/home-v2/pack-tikka-mask.webp'); }
.v2-product--goan { --sku-soft:var(--goan-soft); --pouch-mask:url('../img/home-v2/pack-goan-mask.webp'); }
.v2-product--butter { --sku-soft:var(--butter-soft); --pouch-mask:url('../img/home-v2/pack-butter-mask.webp'); }
.v2-product__image { border:0; background:var(--sku-soft); aspect-ratio:1.05; padding:30px; }
.v2-product:hover .v2-product__image img { transform:none; }
.v2-product__image img { transition:none; mask-image:var(--pouch-mask); mask-size:contain; mask-position:center; mask-repeat:no-repeat; clip-path:inset(3.8% 8% 4.2% 8%); }
.v2-life { padding-top:56px; }
.v2-life img,.v2-life figure:last-child img { aspect-ratio:1.25; object-position:80% 50%; }
.ingredients { border-block:1px solid #e4e4e4; background:#fff; }
.ingredients__sticky { padding-block:70px; }
.ingredients__heading { display:flex; justify-content:space-between; align-items:center; gap:40px; }
.ingredients__heading p { max-width:375px; font-size:17px; line-height:1.6; color:#555; margin:0; }
.ingredients__diagram { position:relative; width:min(100%,900px); aspect-ratio:1.5; margin:65px auto; }
.ingredients__group,.ingredients__photo { position:absolute; inset:0; }
.ingredients__group { transition:opacity 320ms ease,transform 480ms ease; }
.ingredients__photo img { width:100%; height:100%; object-fit:contain; }
.ingredients__group--onion .ingredients__photo { clip-path:polygon(0 0,50% 0,50% 50%,0 50%); }
.ingredients__group--tomato .ingredients__photo { clip-path:polygon(0 50%,50% 50%,50% 100%,0 100%); }
.ingredients__group--spices .ingredients__photo { clip-path:polygon(50% 0,100% 0,100% 50%,50% 50%); }
.ingredients__group--coconut .ingredients__photo { clip-path:polygon(50% 50%,100% 50%,100% 100%,50% 100%); }
.ingredients__pouch { position:absolute; width:32%; height:auto; top:50%; left:34%; transform:translateY(-50%); mask-image:url('../img/home-v2/pack-tikka-mask.webp'); mask-size:contain; mask-position:center; mask-repeat:no-repeat; clip-path:inset(3.8% 8% 4.2% 8%); }
.ingredients__label { position:absolute; font-size:24px; font-weight:500; letter-spacing:-.035em; line-height:1.15; margin:0; }
.ingredients__label::after { content:""; width:34px; height:1px; background:#000; position:absolute; top:13px; }
.ingredients__label span { display:block; font-size:12px; color:#555; font-weight:400; letter-spacing:0; margin-top:7px; }
.ingredients__group--onion .ingredients__label { top:-36px; left:5%; }
.ingredients__group--tomato .ingredients__label { bottom:-35px; left:5%; }
.ingredients__group--spices .ingredients__label { top:-36px; right:4%; text-align:right; }
.ingredients__group--coconut .ingredients__label { bottom:-35px; right:4%; text-align:right; }
.ingredients__group--onion .ingredients__label::after,.ingredients__group--tomato .ingredients__label::after { left:calc(100% + 12px); }
.ingredients__group--spices .ingredients__label::after,.ingredients__group--coconut .ingredients__label::after { right:calc(100% + 12px); }
.ingredients__note { color:#555; font-size:12px; text-align:center; margin:0 0 18px; }
.ingredients .v2-proof { border-bottom:0; padding-block:22px 0; }
.ingredients.has-scroll-animation { height:260svh; }
.has-scroll-animation .ingredients__sticky { position:sticky; top:88px; height:calc(100svh - 88px); padding-block:34px 26px; display:flex; flex-direction:column; justify-content:space-between; }
.has-scroll-animation .ingredients__heading .v2-title { font-size:56px; }
.has-scroll-animation .ingredients__diagram { width:min(100%,calc((100svh - 400px)*1.5),900px); margin-block:44px; flex-shrink:0; }
.has-scroll-animation .ingredients__group:not(.is-revealed) { opacity:0; transform:translateY(10px); }
.has-scroll-animation .ingredients__pouch { transform:translateY(-50%) scale(calc(1.08 - var(--ingredient-progress,0)*.08)); }
@media(max-width:1100px) and (min-width:701px) {
  .lifestyle-hero h1 { max-width:580px; font-size:74px; }
  .lifestyle-hero__controls button { padding-inline:10px; }
  .lifestyle-hero__name { display:none; }
  .lifestyle-hero__index { margin-right:0; font-size:12px; }
  .lifestyle-hero__choices button { min-width:44px; }
}
@media(max-width:900px) and (min-width:701px) {
  .lifestyle-hero__content { padding-block:70px 110px; }
  .lifestyle-hero h1 { max-width:470px; font-size:64px; }
  .lifestyle-hero__content p { max-width:340px; font-size:16px; }
  .ingredients__heading { display:block; }
  .ingredients__heading p { max-width:520px; margin-top:20px; }
}
@media(max-width:700px) {
  .lifestyle-hero { height:auto; min-height:0; overflow:visible; }
  .lifestyle-hero__media { position:relative; height:350px; }
  .lifestyle-hero__slide img { object-position:83% 50%; }
  .lifestyle-hero__shade { display:none; }
  .lifestyle-hero__content { height:auto; padding-block:28px; }
  .lifestyle-hero h1 { font-size:clamp(44px,12.4vw,74px); max-width:560px; line-height:1.04; }
  .lifestyle-hero__content p { font-size:15px; margin-block:18px 22px; max-width:450px; }
  .lifestyle-hero__bottom { position:relative; bottom:auto; display:block; padding-block:0 24px; }
  .lifestyle-hero__caption { font-size:12px; margin-bottom:16px; }
  .lifestyle-hero__controls:not([hidden]) { justify-content:space-between; gap:12px; }
  .lifestyle-hero__controls button { padding-inline:14px; }
  .lifestyle-hero__name { display:none; }
  .lifestyle-hero__index { font-size:12px; margin-right:0; }
  .lifestyle-hero__choices button { min-width:44px; }
  .v2-product__image { border:0; padding:12px; aspect-ratio:.78; }
  .v2-life { padding-top:24px; }
  .v2-life img,.v2-life figure:last-child img { aspect-ratio:1.2; object-position:83% 50%; }
  .ingredients__sticky { padding-block:60px 42px; }
  .ingredients__heading { display:block; }
  .ingredients__heading p { font-size:16px; margin-top:20px; }
  .ingredients__diagram { width:100%; margin-block:64px 55px; }
  .ingredients__label { font-size:18px; }
  .ingredients__label span { font-size:10px; margin-top:5px; }
  .ingredients__label::after { width:18px; top:10px; }
  .ingredients__group--onion .ingredients__label,.ingredients__group--spices .ingredients__label { top:-40px; }
  .ingredients__group--onion .ingredients__label,.ingredients__group--tomato .ingredients__label { left:0; }
  .ingredients__group--spices .ingredients__label,.ingredients__group--coconut .ingredients__label { right:0; }
  .ingredients__group--tomato .ingredients__label,.ingredients__group--coconut .ingredients__label { bottom:-30px; }
  .ingredients__note { font-size:10px; margin-bottom:14px; }
  .ingredients .v2-proof { padding-top:22px; }
}
@media(prefers-reduced-motion:reduce) {
  .lifestyle-hero__slide,.ingredients__group { transition:none; }
}
