/* HOME — custom luxury flagship slider */
.hero{min-height:100svh;background:#000;position:relative;overflow:hidden;display:grid;align-items:stretch;color:#fff}
.hero__slides{position:absolute;inset:0;z-index:0}
.hero__slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1s var(--ease-lux),visibility 1s;display:grid;align-items:stretch}
.hero__slide.is-active{opacity:1;visibility:visible;z-index:1}
.hero__slide-bg{position:absolute;inset:0;overflow:hidden;background:#000;pointer-events:none}
.hero__slide-img{width:100%;height:100%;object-fit:cover;object-position:center;filter:none;transition:transform 6s ease-out;position:absolute;inset:0}
.hero__slide.is-active .hero__slide-img{transform:scale(1.05)}
.hero__grid{width:var(--container);margin:auto;padding-top:var(--nav-h);display:grid;grid-template-columns:1fr;align-items:center;min-height:100svh;position:relative;z-index:2}
.hero__copy{position:relative;z-index:3;padding:clamp(20px,2.5vw,40px) 0;max-width:620px}
.hero__eyebrow{color:#ffffff;margin-bottom:16px;opacity:0;transform:translateY(12px);font-size:.66rem;font-weight:600;letter-spacing:.22em;text-shadow:none;transition:opacity .7s var(--ease-lux),transform .7s var(--ease-lux)}
.hero__title{font-family:var(--serif);font-size:clamp(2.6rem,4.5vw,4.8rem);font-weight:400;line-height:1.05;letter-spacing:-.03em;color:#ffffff;text-shadow:none}
.hero__title-line{overflow:hidden;display:block;padding-bottom:.05em}
.hero__title-line span{display:block;transform:translateY(115%);transition:transform 1s var(--ease-lux)}
.hero__desc{max-width:440px;color:#ffffff;font-size:clamp(.84rem,.95vw,.95rem);margin:22px 0 28px;opacity:0;transform:translateY(12px);line-height:1.6;text-shadow:none;transition:opacity .8s var(--ease-lux),transform .8s var(--ease-lux)}
.hero__actions{display:flex;gap:12px;flex-wrap:wrap;opacity:0;transform:translateY(12px);transition:opacity .8s var(--ease-lux),transform .8s var(--ease-lux)}

.hero__slide.is-active .hero__eyebrow{opacity:1;transform:none;transition-delay:.1s}
.hero__slide.is-active .hero__title-line span{transform:none;transition-delay:.22s}
.hero__slide.is-active .hero__desc{opacity:1;transform:none;transition-delay:.5s}
.hero__slide.is-active .hero__actions{opacity:1;transform:none;transition-delay:.65s}

/* Hero Slider Controls */
.hero__controls{position:absolute;right:max(4vw,calc((100vw - 1480px)/2));bottom:32px;z-index:10;display:flex;align-items:center;gap:16px}
.hero__nav-btn{width:46px;height:46px;border:1px solid rgba(255,255,255,.4);border-radius:50%;color:#fff;display:grid;place-items:center;background:rgba(0,0,0,.25);backdrop-filter:blur(8px);transition:background .3s,border-color .3s,transform .3s}
.hero__nav-btn:hover{background:#fff;color:var(--deep-plum);border-color:#fff;transform:scale(1.06)}
.hero__dots{display:flex;gap:8px;align-items:center}
.hero__dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.35);border:0;padding:0;cursor:pointer;transition:width .35s var(--ease-lux),background .35s,border-radius .35s}
.hero__dot.is-active{width:32px;border-radius:999px;background:#fff}

.hero__scroll{position:absolute;left:50%;bottom:24px;z-index:6;display:grid;justify-items:center;gap:8px;transform:translateX(-50%);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:#ffffff}
.hero__scroll-line{height:34px;width:1px;background:#ffffff;animation:scrollLine 2.4s ease-in-out infinite}

.manifesto{background:var(--ivory);padding:clamp(70px,8vw,130px) 0;overflow:hidden}
.manifesto__layout{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(30px,5vw,80px);align-items:center}
.manifesto__title{font-family:var(--serif);font-size:clamp(3.5rem,8vw,10.5rem);font-weight:500;line-height:.78;letter-spacing:-.055em;color:var(--chocolate)}
.manifesto__title span{display:block}
.manifesto__image{width:100%;display:grid;place-items:center}
.manifesto__image img{width:100%;max-width:720px;height:auto;max-height:680px;object-fit:contain;filter:drop-shadow(0 20px 45px rgba(44,26,14,.15));transform:scale(1.15);transition:transform .4s var(--ease-lux)}
.manifesto__image:hover img{transform:scale(1.2)}

.collection{background:#fff}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:50px}.section-heading__title{font-family:var(--serif);font-size:clamp(3.4rem,6vw,7rem);font-weight:500;line-height:.88;letter-spacing:-.045em}.section-heading__note{max-width:360px;color:var(--muted);font-size:.86rem}
.collection__grid{display:grid;grid-template-columns:repeat(2,1fr)}

.immersive{height:360vh;background:var(--ivory);position:relative}
.immersive__sticky{position:sticky;top:0;height:100svh;overflow:hidden;display:grid;place-items:center;transition:background .5s}
.immersive__title{position:absolute;left:4.5vw;top:12vh;max-width:470px;z-index:3}.immersive__title h2{font-family:var(--serif);font-size:clamp(3.7rem,6vw,7rem);line-height:.85;font-weight:500}.immersive__title p{max-width:340px;margin-top:20px;color:var(--muted)}
.immersive__pack{width:min(29vw,430px);position:relative;z-index:4;filter:drop-shadow(0 40px 45px rgba(20,5,20,.25));transition:transform .2s linear}
.immersive__nut{position:absolute;width:clamp(80px,9vw,165px);aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#9b6844,#4a2315 70%);border-radius:43% 57% 44% 56%;opacity:0;transform:scale(.6);filter:drop-shadow(0 20px 18px rgba(25,8,16,.15))}.immersive__nut::after{content:attr(data-label);position:absolute;left:50%;top:110%;transform:translateX(-50%);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;color:var(--deep-plum);font-weight:700}.immersive__nut--1{left:18%;top:27%}.immersive__nut--2{right:17%;top:20%;background:radial-gradient(circle at 40% 35%,#e3c99a,#cda970 65%)}.immersive__nut--3{left:18%;bottom:17%;background:radial-gradient(circle at 45% 35%,#c79548,#815326 70%)}.immersive__nut--4{right:18%;bottom:20%;background:radial-gradient(circle at 35% 30%,#a5b336,#63751b 70%)}.immersive__nut--5{right:33%;top:11%;background:radial-gradient(circle at 45% 35%,#c99d65,#8f5b30 70%)}
.immersive__stage{position:absolute;right:4.5vw;bottom:6vh;font-size:.67rem;letter-spacing:.2em;text-transform:uppercase}.immersive__stage strong{font-family:var(--serif);font-size:3rem;display:block;letter-spacing:0;font-weight:500}

.experience{background:var(--deep-plum);color:var(--ivory)}
.experience__header{max-width:950px;margin-bottom:60px}.experience__header h2{font-family:var(--serif);font-size:clamp(3.7rem,7vw,8rem);font-weight:500;line-height:.86}.experience__columns{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.experience__item{padding:42px 30px 46px;border-right:1px solid rgba(255,255,255,.18)}.experience__item:last-child{border-right:0}.experience__num{font-size:.62rem;letter-spacing:.18em;opacity:.5}.experience__item h3{font-family:var(--serif);font-size:2.3rem;font-weight:500;margin:90px 0 15px}.experience__item p{font-size:.84rem;color:rgba(255,255,255,.58);max-width:290px}

.chocolate-divider{height:230px;background:var(--ivory);position:relative;overflow:hidden}.chocolate-divider__layer{position:absolute;left:-3%;right:-3%;top:-125px;height:230px;background:var(--dark-chocolate);border-radius:0 0 45% 55% / 0 0 38% 32%;filter:drop-shadow(0 20px 28px rgba(31,10,7,.18));transition:transform .2s linear}.chocolate-divider__drip{position:absolute;top:70px;width:52px;height:120px;border-radius:0 0 30px 30px;background:var(--dark-chocolate)}.chocolate-divider__drip:nth-child(1){left:20%;height:88px}.chocolate-divider__drip:nth-child(2){left:50%;height:145px;width:68px}.chocolate-divider__drip:nth-child(3){right:17%;height:105px;width:44px}

.carousel-section{background:var(--ivory);overflow:hidden}.carousel-track{display:flex;gap:18px;overflow:auto;scroll-snap-type:x mandatory;padding:0 max(4vw,calc((100vw - 1480px)/2)) 12px;cursor:grab}.carousel-track.is-dragging{cursor:grabbing;scroll-snap-type:none}.carousel-title{padding-inline:max(4vw,calc((100vw - 1480px)/2));margin-bottom:42px}

.story.story--full-bg{position:relative;min-height:clamp(750px,92vh,1020px);display:flex;align-items:center;padding:0;overflow:hidden;background:#f5efe6}
.story__bg{position:absolute;inset:0;z-index:0}
.story__bg img{width:100%;height:100%;object-fit:cover;object-position:right top}
.story__container{position:relative;z-index:2;width:var(--container);margin:auto;padding:clamp(40px,5vw,70px) 0}
.story--full-bg .story__copy{max-width:500px;color:#2c1a0e;transform:translateY(-55px)}
.story--full-bg .story__copy .eyebrow{color:#8c6827;letter-spacing:.22em;font-size:.72rem;font-weight:700;margin-bottom:16px}
.story--full-bg .story__copy h2{font-family:var(--serif);font-size:clamp(2.6rem,4.5vw,4.5rem);line-height:.96;font-weight:500;color:#2c1a0e;letter-spacing:-.03em;margin-bottom:20px}
.story--full-bg .story__copy p{font-size:clamp(.88rem,1vw,1.02rem);color:#5c4b3c;line-height:1.65;max-width:440px}
.story__dot{color:#d4a359;font-size:1.1rem;margin-top:22px}

.why{background:var(--ivory)}.why__list{border-top:1px solid var(--line)}.why__item{display:grid;grid-template-columns:80px 1fr auto;gap:24px;align-items:center;padding:32px 0;border-bottom:1px solid var(--line)}.why__item span:first-child{font-size:.65rem;color:var(--muted)}.why__item h3{font-family:var(--serif);font-size:clamp(2rem,3vw,3.5rem);font-weight:500}.why__item p{max-width:340px;font-size:.8rem;color:var(--muted)}

.bestseller{background:var(--deep-plum);color:var(--ivory);min-height:100svh;display:grid;place-items:center;overflow:hidden}.bestseller__inner{text-align:center;position:relative;width:100%;min-height:80vh;display:grid;place-items:center}.bestseller__halo{position:absolute;width:min(58vw,850px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(185,154,99,.21),rgba(185,154,99,.04) 40%,transparent 68%)}.bestseller__pack{position:relative;width:min(32vw,460px);z-index:2;filter:drop-shadow(0 40px 50px rgba(0,0,0,.35))}.bestseller__copy{position:absolute;z-index:3;left:4vw;bottom:4vh;text-align:left}.bestseller__copy h2{font-family:var(--serif);font-size:clamp(3.2rem,5vw,6.5rem);font-weight:500;line-height:.85;max-width:560px}.bestseller__cta{position:absolute;right:4vw;bottom:5vh;z-index:3}

.gifting{background:var(--ivory);padding:clamp(60px,7vw,110px) 0;overflow:hidden}
.gifting__grid{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(40px,5vw,80px);align-items:center;max-width:1440px;margin:0 auto;padding:0 max(24px,4vw)}
.gifting__visual{position:relative;overflow:hidden;border-radius:28px;box-shadow:0 20px 50px rgba(44,26,14,.12);aspect-ratio:1.35/1;background:#faf6f0;display:grid;place-items:center}
.gifting__visual picture{display:block;width:100%;height:100%}
.gifting__visual img{width:100%;height:100%;object-fit:cover;object-position:center 95%;border-radius:28px;transition:transform .6s var(--ease-lux)}
.gifting__visual:hover img{transform:scale(1.04)}
.gifting__copy{display:flex;flex-direction:column;justify-content:center;padding:10px 0;background:transparent}
.gifting__copy h2{font-family:var(--serif);font-size:clamp(3.2rem,5vw,6rem);font-weight:500;line-height:.88;color:#2c1a0e}
.gifting__copy p{max-width:440px;margin:24px 0 32px;color:#5c4b3c;line-height:1.6}

.reviews{background:var(--ivory);overflow:hidden}.reviews__top{display:flex;justify-content:space-between;align-items:end;margin-bottom:54px}.reviews__viewport{overflow:hidden}.reviews__track{display:flex;transition:transform .7s var(--ease-lux)}.review{min-width:100%;padding:20px 0 40px}.review__stars{letter-spacing:.18em;color:var(--muted-gold);font-size:.8rem}.review blockquote{font-family:var(--serif);font-size:clamp(2.7rem,5vw,5.8rem);font-weight:500;line-height:.95;max-width:1160px;margin:26px 0}.review cite{font-style:normal;font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}.review-nav{display:flex;gap:8px}.review-nav button{width:46px;height:46px;border:1px solid var(--line);border-radius:50%}

.social{background:#fff}
.social-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
@media (min-width: 1101px) {
  .social-tile--i1 { order: 1; }
  .social-tile--v1 { order: 2; }
  .social-tile--i2 { order: 3; }
  .social-tile--v2 { order: 4; }
  .social-tile--i3 { order: 5; }
  .social-tile--v3 { order: 6; }
}
@media(max-width:1100px){.social-grid{grid-template-columns:repeat(3,1fr);gap:14px}}
@media(max-width:600px){.social-grid{grid-template-columns:repeat(2,1fr);gap:10px}}
.social-tile{aspect-ratio:9/16;position:relative;overflow:hidden;background:#170f16;border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.08)}
.social-tile img,.social-tile video{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .7s var(--ease-lux)}
.social-tile:hover img,.social-tile:hover video{transform:scale(1.05)}
.social-tile__icon,.social-tile__badge-c{display:none !important}

.newsletter{background:var(--royal-purple);color:var(--ivory)}.newsletter__grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:7vw}.newsletter h2{font-family:var(--serif);font-size:clamp(4rem,7vw,8rem);line-height:.78;font-weight:500}.newsletter-form{display:flex;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:10px}.newsletter-form input{flex:1;border:0;background:transparent;color:#fff;outline:none;padding:12px 0;font-family:var(--serif);font-size:1.45rem}.newsletter-form input::placeholder{color:rgba(255,255,255,.5)}.newsletter-form button{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;padding:0 8px}.newsletter__note{font-size:.68rem;color:rgba(255,255,255,.48);margin-top:14px}

@media(max-width:1100px){
 .hero__grid{grid-template-columns:1fr 1fr}.hero__title{font-size:clamp(4rem,7.5vw,6rem)}.hero__visual{width:50vw}.collection__grid{grid-template-columns:1fr 1fr}.immersive__title{left:4vw}.immersive__pack{width:min(37vw,400px)}
 .story__grid{grid-template-columns:1fr 1fr}.gifting__grid{min-height:620px}.newsletter__grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
 .hero{min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end}
 .hero__slide-bg picture{display:block;width:100%;height:100%}
 .hero__slide-img{width:100%;height:100%;object-fit:cover;object-position:72% center}
 .hero__grid{min-height:100svh;width:100%;padding-top:80px;padding-bottom:90px;display:flex;align-items:flex-end;justify-content:flex-start}
 .hero__copy{width:100%;max-width:100%;padding:20px 5vw;margin:0}
 .hero__title{font-size:clamp(2.2rem,8vw,3.4rem);line-height:1.08}
 .hero__desc{font-size:.86rem;margin:12px 0 20px;max-width:100%}
 .hero__controls{bottom:24px;right:50%;transform:translateX(50%);gap:12px;width:auto}
 .hero__nav-btn{width:40px;height:40px}
 .hero__actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%;max-width:320px}
 .hero__actions .btn{width:100%;min-height:44px;padding:0 16px;font-size:.68rem;letter-spacing:.08em;white-space:normal;text-align:center;justify-content:center}
 .hero__scroll{display:none}
  .story.story--full-bg{min-height:clamp(520px,75vh,650px);display:flex;align-items:flex-start;padding:0}
  .story__bg picture{display:block;width:100%;height:100%}
  .story__bg img{width:100%;height:100%;object-fit:cover;object-position:center top}
  .story__container{margin:0 auto;padding:12px 0 0 0;align-self:flex-start}
  .story--full-bg .story__copy{max-width:min(55%,235px);transform:none;background:transparent;backdrop-filter:none;border:0;box-shadow:none;padding:10px 0 0 5vw;margin-top:0;color:#2c1a0e}
  .story--full-bg .story__copy .eyebrow{color:#8c6827;letter-spacing:.2em;font-size:.68rem;font-weight:700;margin-bottom:6px}
  .story--full-bg .story__copy h2{font-size:clamp(1.85rem,6.2vw,2.5rem);line-height:.98;font-weight:500;color:#2c1a0e;letter-spacing:-.03em;margin-bottom:8px}
  .story--full-bg .story__copy p{font-size:clamp(.84rem,3.4vw,.96rem);color:#3d2b1f;line-height:1.45;font-weight:500}
  .story__dot{color:#d4a359;font-size:.9rem;margin-top:6px}
  .gifting{padding:40px 0}
  .gifting__grid{grid-template-columns:1fr;min-height:0;gap:24px}
  .gifting__visual{height:auto;aspect-ratio:1/1.05;border-radius:20px}
  .gifting__visual img{object-fit:cover;object-position:center center;border-radius:20px}
  .gifting__copy{padding:10px 5vw 30px}
  .gifting__copy h2{font-size:clamp(2.4rem,7vw,3.8rem);line-height:.94}
  .gifting__copy p{margin:14px 0 24px}
  .social-grid{grid-template-columns:repeat(2,1fr)}.newsletter__grid{grid-template-columns:1fr}.newsletter-form{margin-top:40px}
}
