:root{--navy:#071323;--navy2:#0d1d33;--gold:#c7a35a;--cream:#f6eddc;--sage:#91a68d;--muted:#aeb8c2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--navy);color:var(--cream);overflow-x:hidden}.grain{position:fixed;inset:0;pointer-events:none;opacity:.06;background-image:radial-gradient(#fff 1px,transparent 1px);background-size:4px 4px;z-index:20}.hidden{display:none}.age-gate{min-height:100vh;display:grid;place-items:center;position:relative;background:radial-gradient(circle at 50% 30%,#183050 0,#071323 52%,#020812 100%);padding:24px}.haze{position:absolute;inset:-20%;background:radial-gradient(circle at 20% 40%,rgba(199,163,90,.18),transparent 28%),radial-gradient(circle at 80% 30%,rgba(145,166,141,.16),transparent 30%);filter:blur(40px);animation:drift 10s infinite alternate}.age-card{position:relative;width:min(520px,100%);padding:46px 34px;text-align:center;border:1px solid rgba(199,163,90,.35);background:rgba(7,19,35,.72);backdrop-filter:blur(18px);box-shadow:0 40px 100px rgba(0,0,0,.45)}.crest,.brand span,.footer-brand span{width:64px;height:64px;border:1px solid var(--gold);border-radius:50%;display:inline-grid;place-items:center;font:600 34px Playfair Display;color:var(--gold);margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--gold);font-size:.72rem;font-weight:700}.age-card h1,.hero h2,.botanicals h2,.collection h2,.experience h2,.finder h2,footer h2{font-family:Playfair Display,serif;font-weight:600;line-height:.95}.age-card h1{font-size:clamp(2.7rem,8vw,5.2rem);margin:14px 0}.gate-copy{color:var(--muted)}.dob-row{display:flex;gap:12px;justify-content:center;margin:26px 0 18px}.dob-row input{width:92px;background:rgba(255,255,255,.04);border:1px solid rgba(199,163,90,.45);color:var(--cream);padding:16px;text-align:center;font-size:1.1rem;outline:none}.dob-row #year{width:124px}.dob-row input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(199,163,90,.12)}.remember{display:block;color:var(--muted);font-size:.9rem;margin-bottom:18px}button,.line-btn{cursor:pointer}#enterBtn{width:100%;padding:16px;border:1px solid var(--gold);background:var(--gold);color:#081326;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.error{min-height:22px;color:#ffcfb8}.shake{animation:shake .28s}.site{animation:siteIn .9s ease both}.nav{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:18px 34px;background:rgba(7,19,35,.64);backdrop-filter:blur(18px);border-bottom:1px solid rgba(199,163,90,.16)}.brand{display:flex;gap:12px;align-items:center;text-transform:uppercase;letter-spacing:.16em;font-weight:800}.brand span{width:34px;height:34px;font-size:18px}nav{display:flex;gap:24px}nav a{color:var(--cream);text-decoration:none;font-size:.88rem}.hero{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:120px 7vw 70px;position:relative;overflow:hidden}.hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 80% 50%,rgba(199,163,90,.2),transparent 28%),linear-gradient(135deg,#071323,#10213a 55%,#071323);z-index:-1}.hero h2{font-size:clamp(4.3rem,11vw,10rem);margin:12px 0}.hero-content p:last-of-type{max-width:470px;color:var(--muted);font-size:1.15rem;line-height:1.8}.line-btn{display:inline-block;color:var(--gold);text-decoration:none;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);padding:14px 0;margin-top:22px;text-transform:uppercase;letter-spacing:.14em;font-weight:700}.botanical-orb{justify-self:center;width:min(430px,80vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--sage),transparent 63%);display:grid;place-items:center;opacity:.9}.bottle,.mini-bottle{background:linear-gradient(90deg,#d8ead3,#f8f2df 40%,#799474);border:2px solid rgba(199,163,90,.65);box-shadow:0 30px 100px rgba(0,0,0,.5)}.bottle{width:160px;height:410px;border-radius:36px 36px 20px 20px;color:#071323;text-align:center;padding-top:170px;font:700 16px Playfair Display;letter-spacing:.15em}.botanicals,.collection,.experience,.finder{padding:110px 7vw}.botanicals{background:var(--cream);color:var(--navy)}.botanicals h2,.collection h2,.experience h2,.finder h2{font-size:clamp(2.6rem,6vw,5.4rem);margin:0 0 45px}.botanical-grid,.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.botanical-grid article,.product,.booking-card,.finder{border:1px solid rgba(199,163,90,.34);padding:28px;background:rgba(255,255,255,.035)}.botanical-grid span{color:var(--gold);font-weight:800}.collection{background:#081326}.section-head{display:flex;justify-content:space-between;align-items:end}.cards{grid-template-columns:repeat(4,1fr)}.product{min-height:360px;transition:.35s}.product:hover{transform:translateY(-8px);border-color:var(--gold)}.product.featured{background:linear-gradient(180deg,rgba(199,163,90,.13),rgba(255,255,255,.03))}.mini-bottle{width:72px;height:170px;border-radius:20px 20px 10px 10px;margin:0 auto 28px}.product h3{font-family:Playfair Display;font-size:1.55rem}.product p{color:var(--muted)}.product button,.booking-card button,.quiz button{background:transparent;color:var(--gold);border:1px solid rgba(199,163,90,.5);padding:12px 16px}.experience{display:grid;grid-template-columns:1fr 1fr;gap:34px;background:linear-gradient(135deg,#0d1d33,#071323)}.experience p{color:var(--muted);line-height:1.8}.booking-card{display:grid;gap:18px}.booking-card input,.booking-card select{width:100%;margin-top:8px;padding:14px;background:#071323;border:1px solid rgba(199,163,90,.4);color:var(--cream)}.botanical-picker{display:flex;flex-wrap:wrap;gap:10px}.finder{text-align:center;background:#06101d}.quiz{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.result{color:var(--gold);font-family:Playfair Display;font-size:1.5rem}footer{text-align:center;padding:90px 20px;border-top:1px solid rgba(199,163,90,.22)}.footer-brand span{margin-bottom:16px}.footer-brand h2{font-size:2.5rem;margin:0 0 14px}.reveal{opacity:0;transform:translateY(24px);animation:reveal .9s .2s ease forwards}.delay{animation-delay:.45s}@keyframes drift{to{transform:translate3d(4%,2%,0) scale(1.06)}}@keyframes shake{25%{transform:translateX(-8px)}75%{transform:translateX(8px)}}@keyframes siteIn{from{opacity:0}to{opacity:1}}@keyframes reveal{to{opacity:1;transform:none}}@media(max-width:900px){nav{display:none}.hero,.experience{grid-template-columns:1fr}.hero{padding-top:110px}.botanical-grid,.cards{grid-template-columns:1fr}.section-head{display:block}.dob-row input{width:72px}.dob-row #year{width:104px}.botanical-orb{order:-1;width:310px}.bottle{height:330px;padding-top:135px}.nav{padding:14px 18px}}

/* Hazelton bottle assets */
.hero-bottle-wrap{justify-self:center;position:relative;width:min(520px,86vw);display:grid;place-items:center;filter:drop-shadow(0 35px 70px rgba(0,0,0,.45));}
.hero-bottle-wrap::before{content:"";position:absolute;width:80%;height:80%;border-radius:50%;background:radial-gradient(circle,rgba(199,163,90,.22),transparent 65%);filter:blur(20px);z-index:-1;}
.hero-bottle{width:100%;max-height:760px;object-fit:contain;}
.product-grid{grid-template-columns:repeat(5,1fr);align-items:stretch;}
.product{overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;}
.product-image{height:255px;margin:-18px -18px 18px;display:grid;place-items:center;background:radial-gradient(circle at 50% 35%,rgba(199,163,90,.16),transparent 58%),linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.16));border-bottom:1px solid rgba(199,163,90,.18);}
.product-image img{height:100%;width:100%;object-fit:contain;object-position:center;transition:transform .45s ease, filter .45s ease;}
.product:hover .product-image img{transform:translateY(-8px) scale(1.045);filter:drop-shadow(0 28px 24px rgba(0,0,0,.55));}
.product:nth-child(2){background:linear-gradient(180deg,rgba(24,55,37,.55),rgba(255,255,255,.03));}
.product:nth-child(3){background:linear-gradient(180deg,rgba(246,237,220,.09),rgba(255,255,255,.025));}
.product:nth-child(4){background:linear-gradient(180deg,rgba(0,0,0,.36),rgba(255,255,255,.025));}
.product:nth-child(5){background:linear-gradient(180deg,rgba(232,173,174,.16),rgba(255,255,255,.025));}
@media(max-width:1180px){.product-grid{grid-template-columns:repeat(2,1fr)}.product-image{height:310px}}
@media(max-width:900px){.hero-bottle-wrap{order:-1;width:min(360px,86vw)}.hero-bottle{max-height:560px}.product-grid{grid-template-columns:1fr}.product-image{height:360px}}


/* v4: transparent bottles + mill mark polish */
.hero{isolation:isolate;}
.mill-watermark{position:absolute;left:4vw;top:130px;width:min(520px,42vw);opacity:.075;filter:drop-shadow(0 18px 28px rgba(0,0,0,.35));z-index:-1;}
.hero-bottle-wrap{width:min(490px,78vw);background:transparent;border:0;}
.hero-bottle-wrap::after{content:"";position:absolute;left:50%;bottom:3%;width:55%;height:8%;transform:translateX(-50%);border-radius:50%;background:rgba(0,0,0,.38);filter:blur(18px);z-index:-1;}
.hero-bottle{width:100%;max-height:760px;object-fit:contain;display:block;}
.product-image{background:radial-gradient(circle at 50% 38%,rgba(199,163,90,.20),transparent 56%);border-bottom:1px solid rgba(199,163,90,.18);overflow:visible;}
.product-image img{height:115%;width:100%;object-fit:contain;object-position:center;display:block;}
.product:hover .product-image img{transform:translateY(-14px) scale(1.06);filter:drop-shadow(0 36px 28px rgba(0,0,0,.55));}
.section-mill{display:flex;justify-content:center;margin:-35px auto 30px;opacity:.95;}
.section-mill img{width:min(520px,78vw);filter:drop-shadow(0 16px 24px rgba(0,0,0,.10));}
.botanicals{position:relative;overflow:hidden;}
.botanicals::after{content:"";position:absolute;right:-120px;bottom:-80px;width:520px;height:280px;background:url('assets/mill-mark.svg') center/contain no-repeat;opacity:.065;}
.footer-mill{width:min(430px,76vw);opacity:.82;margin-bottom:28px;}
.footer-brand span{background:rgba(199,163,90,.06);}
@media(max-width:900px){.mill-watermark{top:95px;left:50%;transform:translateX(-50%);width:88vw;opacity:.055}.hero-bottle-wrap{width:min(330px,86vw)}.product-image img{height:108%;}.section-mill{margin-top:-10px}}


/* v5 polish: no colour glow blocks + premium mill artwork */
.product{
  background:rgba(8,19,38,.52) !important;
  border-color:rgba(199,163,90,.24);
  box-shadow:none;
}
.product.featured{background:rgba(8,19,38,.52) !important;}
.product-image{
  background:transparent !important;
  border-bottom:1px solid rgba(199,163,90,.13);
  margin:-18px -18px 18px;
  position:relative;
}
.product-image::before{
  content:"";
  position:absolute;
  inset:18% 12% 8%;
  background:radial-gradient(circle at 50% 42%, rgba(246,237,220,.07), transparent 62%);
  z-index:0;
}
.product-image img{position:relative;z-index:1;filter:drop-shadow(0 28px 24px rgba(0,0,0,.42));}
.product:hover{
  background:rgba(9,22,42,.7) !important;
  box-shadow:0 28px 70px rgba(0,0,0,.26);
}
.product:nth-child(2),.product:nth-child(3),.product:nth-child(4),.product:nth-child(5){background:rgba(8,19,38,.52) !important;}
.section-mill img{width:min(430px,72vw);opacity:.9;}
.section-mill{margin:-18px auto 34px;}
.botanicals::after{background:url('assets/mill-mark-premium.png') center/contain no-repeat;opacity:.045;}
.footer-mill{width:min(360px,70vw);opacity:.88;}
.mill-watermark{opacity:.05;width:min(460px,40vw);}

/* v6 editorial polish */
.collection .product-image::before{display:none !important;}
.collection .product-image{background:linear-gradient(180deg,rgba(8,19,38,.12),rgba(8,19,38,.02)) !important;}
.collection .product-image img{filter:drop-shadow(0 24px 18px rgba(0,0,0,.36));}
.collection .product:hover .product-image img{filter:drop-shadow(0 30px 22px rgba(0,0,0,.46));}

.botanicals{
  background:linear-gradient(180deg,#fbf5e9 0%,#f5ead7 100%);
  color:var(--navy);
  padding:118px 7vw 95px;
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr);
  gap:54px;
  align-items:end;
}
.botanical-mark{
  grid-column:2;
  grid-row:1 / span 2;
  align-self:start;
  justify-self:end;
  width:min(420px,34vw);
  opacity:.14;
  transform:translateY(8px);
  filter:none;
}
.botanical-mark img{width:100%;display:block;}
.botanical-copy{grid-column:1;max-width:850px;position:relative;z-index:1;}
.botanical-copy h2{font-size:clamp(3rem,7vw,6.5rem);max-width:920px;margin:0 0 24px;letter-spacing:-.045em;}
.section-intro{font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.8;color:#334052;max-width:650px;margin:0;}
.botanical-grid{grid-column:1 / -1;grid-template-columns:repeat(3,1fr);gap:18px;position:relative;z-index:1;margin-top:8px;}
.botanical-grid article{
  background:rgba(255,255,255,.34);
  border:1px solid rgba(199,163,90,.28);
  min-height:178px;
  padding:30px;
  box-shadow:0 26px 60px rgba(7,19,35,.055);
}
.botanical-grid article h3{margin:18px 0 12px;font-size:1.05rem;letter-spacing:-.01em;}
.botanical-grid article p{margin:0;line-height:1.55;color:#344254;}
.botanicals::after{opacity:.025 !important;}
.section-mill{display:none !important;}

@media(max-width:900px){
  .botanicals{display:block;padding:86px 24px 72px;}
  .botanical-mark{width:min(260px,70vw);margin:0 auto 28px;opacity:.16;}
  .botanical-copy h2{font-size:clamp(2.7rem,13vw,4.5rem);}
  .botanical-grid{grid-template-columns:1fr;margin-top:34px;}
}

/* v7 expanding gin cards */
.product-grid.has-open .product:not(.open){opacity:.56;transform:scale(.985);}
.product-grid.has-open .product:not(.open) .product-image img{filter:drop-shadow(0 18px 14px rgba(0,0,0,.28));}
.product{position:relative;transition:opacity .35s ease, transform .35s ease, border-color .35s ease, box-shadow .35s ease, background .35s ease;}
.product.open{background:rgba(9,22,42,.86) !important;border-color:rgba(199,163,90,.66);box-shadow:0 34px 90px rgba(0,0,0,.34);transform:translateY(-8px);}
.product.open::after{content:"";position:absolute;inset:0;background:url('assets/mill-mark-premium.png') center 57%/82% auto no-repeat;opacity:.035;pointer-events:none;}
.product-main,.product-details{position:relative;z-index:1;}
.product .discover{transition:background .25s ease,color .25s ease,border-color .25s ease;}
.product.open .discover{background:rgba(199,163,90,.14);border-color:rgba(199,163,90,.8);color:var(--cream);}
.product-details{display:grid;grid-template-rows:0fr;opacity:0;margin-top:0;transition:grid-template-rows .42s ease, opacity .35s ease, margin-top .35s ease;}
.product-details>*{overflow:hidden;}
.product.open .product-details{grid-template-rows:1fr;opacity:1;margin-top:22px;}
.product-details .style{font-family:Playfair Display,serif;font-size:1.22rem;line-height:1.1;color:var(--cream);margin:0 0 14px;}
.product-details p:not(.style):not(.abv){font-size:.92rem;line-height:1.62;color:#c8d0d9;margin:0 0 18px;}
.detail-row{padding:14px 0;border-top:1px solid rgba(199,163,90,.18);}
.detail-row span{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:.62rem;color:var(--gold);font-weight:800;margin-bottom:6px;}
.detail-row strong{display:block;font-size:.88rem;line-height:1.42;color:#edf0f2;font-weight:500;}
.abv{margin:16px 0 0;padding-top:16px;border-top:1px solid rgba(199,163,90,.34);color:var(--gold);letter-spacing:.14em;text-transform:uppercase;font-size:.76rem;font-weight:800;}
.product[data-accent="citrus"].open{background:linear-gradient(180deg,rgba(23,48,34,.72),rgba(9,22,42,.88)) !important;}
.product[data-accent="garden"].open{background:linear-gradient(180deg,rgba(246,237,220,.16),rgba(9,22,42,.88)) !important;}
.product[data-accent="navy-strength"].open{background:linear-gradient(180deg,rgba(0,0,0,.48),rgba(9,22,42,.9)) !important;}
.product[data-accent="summer"].open{background:linear-gradient(180deg,rgba(232,173,174,.18),rgba(9,22,42,.88)) !important;}
.product.open .product-image img{transform:translateY(-16px) scale(1.07);filter:drop-shadow(0 38px 28px rgba(0,0,0,.58));}
@media(max-width:1180px){.product-grid.has-open .product:not(.open){opacity:1;transform:none;}}

/* v8: compact expanding tasting notes so the product row stays neat */
.product-grid{
  align-items:start !important;
}
.product{
  height:560px;
  min-height:560px;
  justify-content:flex-start !important;
  overflow:hidden;
}
.product.open{
  transform:translateY(-8px) !important;
}
.product-grid.has-open .product:not(.open){
  opacity:.72;
  transform:none;
}
.product-image{
  flex:0 0 255px;
}
.product-main{
  flex:1 1 auto;
}
.product-details{
  display:block !important;
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:4;
  max-height:0;
  opacity:0;
  overflow:hidden;
  margin:0 !important;
  padding:0 18px;
  transform:translateY(18px);
  background:linear-gradient(180deg,rgba(8,19,38,.96),rgba(5,12,24,.98));
  border:1px solid rgba(199,163,90,.38);
  box-shadow:0 22px 55px rgba(0,0,0,.45);
  backdrop-filter:blur(16px);
  transition:max-height .42s ease, opacity .32s ease, transform .38s ease, padding .32s ease;
  pointer-events:none;
}
.product.open .product-details{
  max-height:330px;
  opacity:1;
  transform:translateY(0);
  padding:18px;
  overflow-y:auto;
  pointer-events:auto;
}
.product-details .style{
  font-size:1.08rem;
  margin-bottom:10px;
}
.product-details p:not(.style):not(.abv){
  font-size:.86rem;
  line-height:1.52;
  margin-bottom:12px;
}
.detail-row{
  padding:10px 0;
}
.detail-row strong{
  font-size:.82rem;
}
.abv{
  margin-top:10px;
  padding-top:10px;
}
.product.open .product-main{
  opacity:.18;
  transition:opacity .25s ease;
}
.product.open .discover{
  position:relative;
  z-index:5;
  opacity:1;
}
@media(max-width:1180px){
  .product{height:590px;min-height:590px;}
  .product-grid.has-open .product:not(.open){opacity:1;}
}
@media(max-width:900px){
  .product{height:auto;min-height:0;}
  .product-details{position:relative;left:auto;right:auto;bottom:auto;margin-top:16px !important;}
  .product.open .product-main{opacity:1;}
}


/* v9: hover tasting notes, no CTA buttons */
.product{
  cursor:default;
}
.product .discover{
  display:none !important;
}
.product-details{
  max-height:0 !important;
  opacity:0 !important;
  transform:translateY(18px) !important;
  pointer-events:none !important;
}
.product:hover,
.product:focus-within{
  background:rgba(9,22,42,.78) !important;
  border-color:rgba(199,163,90,.62);
  box-shadow:0 30px 80px rgba(0,0,0,.32);
  transform:translateY(-8px);
}
.product:hover .product-details,
.product:focus-within .product-details{
  max-height:330px !important;
  opacity:1 !important;
  transform:translateY(0) !important;
  padding:18px !important;
  overflow-y:auto;
  pointer-events:auto !important;
}
.product:hover .product-main,
.product:focus-within .product-main{
  opacity:.2;
  transition:opacity .25s ease;
}
.product:hover .product-image img,
.product:focus-within .product-image img{
  transform:translateY(-16px) scale(1.07);
  filter:drop-shadow(0 38px 28px rgba(0,0,0,.58));
}
.product-grid:hover .product:not(:hover){
  opacity:.72;
}
.product-grid:hover .product:hover{opacity:1;}
.product[data-accent="citrus"]:hover{background:linear-gradient(180deg,rgba(23,48,34,.72),rgba(9,22,42,.88)) !important;}
.product[data-accent="garden"]:hover{background:linear-gradient(180deg,rgba(246,237,220,.16),rgba(9,22,42,.88)) !important;}
.product[data-accent="navy-strength"]:hover{background:linear-gradient(180deg,rgba(0,0,0,.48),rgba(9,22,42,.9)) !important;}
.product[data-accent="summer"]:hover{background:linear-gradient(180deg,rgba(232,173,174,.18),rgba(9,22,42,.88)) !important;}
.product-main::after{
  content:"";
  display:inline-block;
  margin-top:18px;
  color:var(--gold);
  font-size:.72rem;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:800;
  opacity:.82;
}
@media(max-width:900px){
  .product-main::after{content:"Tap for tasting notes";}
  .product.open .product-details{
    max-height:330px !important;
    opacity:1 !important;
    transform:translateY(0) !important;
    padding:18px !important;
  }
  .product.open .product-main{opacity:1;}
}

/* v10: seven-bottle collection with Woodland + Orchard Citrus */
.section-note{
  max-width:460px;
  color:var(--muted);
  line-height:1.7;
  margin:0 0 0 28px;
}
.product-grid{
  grid-template-columns:repeat(auto-fit,minmax(185px,1fr)) !important;
}
.product[data-accent="woodland"]:hover,
.product[data-accent="woodland"].open{
  background:linear-gradient(180deg,rgba(52,74,48,.72),rgba(9,22,42,.88)) !important;
}
.product[data-accent="plum"]:hover,
.product[data-accent="plum"].open{
  background:linear-gradient(180deg,rgba(177,126,35,.34),rgba(9,22,42,.88)) !important;
}
@media(max-width:900px){
  .section-note{margin:0 0 28px;}
  .product-grid{grid-template-columns:1fr !important;}
}

/* v10.1: collection order + updated accent states */
.product[data-accent="woodland"].open{background:linear-gradient(180deg,rgba(35,65,45,.72),rgba(9,22,42,.88)) !important;}
.product[data-accent="plum"].open{background:linear-gradient(180deg,rgba(95,45,64,.72),rgba(9,22,42,.88)) !important;}


.collection-subtitle{font-family:inherit;font-size:1.5rem;font-weight:600;color:#f3eadb;margin:.5rem 0 .75rem;}
.section-note{max-width:420px;line-height:1.7;}


/* v10.2: mobile polish */
.menu-toggle{display:none;background:transparent;color:var(--cream);border:1px solid rgba(199,163,90,.38);border-radius:999px;padding:10px 14px;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800;}
.nav{gap:18px;}
.nav nav{align-items:center;}
.section-head{display:block;max-width:760px;margin:0 auto 34px;text-align:center;}
.section-head .eyebrow{margin:0 0 12px;}
.section-head h2{margin-bottom:18px;}
.collection-subtitle{margin:.25rem 0 .7rem;}
.section-note{margin:0 auto;max-width:570px;}
.product-main::after{content:"" !important;display:none !important;}

@media(max-width:1180px){
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:22px;}
  .product-image{height:300px;}
  .collection,.botanicals,.experience,.finder{padding:86px 6vw;}
}

@media(max-width:900px){
  .nav{padding:14px 18px;align-items:center;}
  .brand{font-size:.86rem;letter-spacing:.12em;}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center;}
  .nav nav{display:none;position:absolute;left:14px;right:14px;top:64px;padding:16px;background:rgba(7,19,35,.94);border:1px solid rgba(199,163,90,.24);backdrop-filter:blur(18px);box-shadow:0 24px 60px rgba(0,0,0,.38);}
  .nav nav.open{display:grid;gap:8px;}
  .nav nav a{padding:13px 10px;border-bottom:1px solid rgba(199,163,90,.12);font-size:.95rem;}
  .nav nav a:last-child{border-bottom:0;}

  .hero{min-height:auto;grid-template-columns:1fr;padding:88px 6vw 62px;text-align:center;gap:8px;}
  .hero-content{display:grid;justify-items:center;}
  .hero h2{font-size:clamp(3.15rem,16vw,5.5rem);line-height:.94;margin:8px 0 12px;}
  .hero-content p:last-of-type{font-size:1rem;line-height:1.65;max-width:360px;margin:0 auto;}
  .line-btn{margin-top:18px;font-size:.78rem;}
  .mill-watermark{top:84px;left:50%;transform:translateX(-50%);width:min(360px,82vw);opacity:.06;}
  .hero-bottle-wrap{order:-1;width:min(310px,76vw);margin:0 auto 8px;}
  .hero-bottle{max-height:430px;}

  .botanicals,.collection,.experience,.finder{padding:72px 5vw;}
  .botanicals h2,.collection h2,.experience h2,.finder h2{font-size:clamp(2.25rem,11vw,3.75rem);line-height:1;margin-bottom:24px;}
  .section-head{margin-bottom:28px;text-align:left;}
  .section-note{margin:0;max-width:100%;font-size:1rem;}
  .collection-subtitle{font-size:1.18rem;}
  .botanical-grid{gap:14px;}
  .botanical-grid article,.product,.booking-card,.finder{padding:22px;}
  .product-grid{grid-template-columns:1fr !important;gap:18px;}
  .product{border-radius:0;min-height:0;height:auto;transform:none !important;}
  .product:hover,.product:focus-within{transform:none !important;}
  .product-grid:hover .product:not(:hover){opacity:1;}
  .product-image{height:270px;margin:-12px -12px 18px;}
  .product-image img{height:108%;}
  .product h3{font-size:1.45rem;margin:0 0 8px;}
  .product-main p{margin-top:0;}
  .product:hover .product-main,.product:focus-within .product-main{opacity:1;}
  .product:hover .product-details,.product:focus-within .product-details{max-height:0 !important;opacity:0 !important;padding:0 !important;}
  .product.open .product-details{max-height:420px !important;opacity:1 !important;padding:16px !important;}
  .detail-row{display:block;}
  .experience{gap:22px;}
  .quiz{display:grid;grid-template-columns:1fr;}
  .quiz button,.booking-card button{width:100%;}
  footer{padding:72px 20px;}
}

@media(max-width:520px){
  .age-card{padding:34px 20px;}
  .dob-row{gap:8px;}
  .dob-row input{width:64px;padding:13px 8px;font-size:1rem;}
  .dob-row #year{width:94px;}
  .nav{padding:12px 14px;}
  .brand span{width:30px;height:30px;font-size:16px;}
  .hero{padding-top:82px;}
  .hero-bottle-wrap{width:min(275px,78vw);}
  .hero-bottle{max-height:380px;}
  .product-image{height:238px;}
  .botanicals,.collection,.experience,.finder{padding-left:20px;padding-right:20px;}
}

/* v11: multi-page flagship demo */
.brand{text-decoration:none;color:var(--cream)}
.page-nav{position:fixed}
.inner-page .site{display:block;animation:siteIn .5s ease both;}
.page-hero{min-height:72vh;padding:150px 7vw 80px;display:grid;place-items:start center;text-align:center;background:radial-gradient(circle at 50% 20%,rgba(199,163,90,.2),transparent 30%),linear-gradient(135deg,#071323,#10213a 55%,#071323);}
.page-hero.compact{min-height:54vh;}
.page-hero h1{font-family:Playfair Display,serif;font-size:clamp(3.4rem,9vw,8rem);line-height:.95;letter-spacing:-.045em;max-width:980px;margin:14px auto 22px;}
.page-hero p:not(.eyebrow){max-width:680px;color:var(--muted);font-size:1.12rem;line-height:1.75;margin:0 auto;}
.split-section{padding:105px 7vw;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:54px;align-items:center;background:var(--cream);color:var(--navy);}
.split-section h2{font-family:Playfair Display,serif;font-size:clamp(2.8rem,6vw,5.7rem);line-height:.95;letter-spacing:-.04em;margin:0;}
.story-intro .section-intro,.visit-preview .section-intro{color:#334052;font-size:clamp(1.05rem,1.55vw,1.28rem);line-height:1.85;}
.v11-experience{align-items:center;}
.experience-preview{display:grid;gap:16px;}
.experience-preview article,.story-grid article,.experience-list article,.shop-grid article,.visit-grid article,.contact-card{border:1px solid rgba(199,163,90,.34);background:rgba(255,255,255,.035);padding:28px;box-shadow:0 26px 70px rgba(0,0,0,.16);}
.experience-preview span,.story-grid span{color:var(--gold);font-weight:800;letter-spacing:.16em;}
.experience-preview h3{font-family:Playfair Display,serif;font-size:1.7rem;margin:14px 0 10px;}
.brand-quote{padding:110px 7vw;text-align:center;background:#06101d;}
.brand-quote p{font-family:Playfair Display,serif;font-size:clamp(2.7rem,7vw,6.2rem);line-height:1;margin:0;color:var(--cream);}
.story-grid,.experience-list,.shop-grid,.visit-grid{padding:100px 7vw;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;background:#081326;}
.story-grid article h2,.experience-list h2,.shop-grid h2,.visit-grid h2{font-family:Playfair Display,serif;font-size:2rem;line-height:1.05;margin:16px 0;}
.story-grid article p,.experience-list p,.shop-grid p,.visit-grid p{color:var(--muted);line-height:1.7;}
.experience-list{grid-template-columns:repeat(4,minmax(0,1fr));}
.experience-list strong,.shop-grid strong{display:block;color:var(--gold);margin:18px 0;font-size:.95rem;letter-spacing:.08em;text-transform:uppercase;}
.experience-list button,.shop-grid button,.contact-card button{background:var(--gold);border:1px solid var(--gold);color:#071323;padding:13px 16px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;width:100%;}
.shop-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.shop-grid article{text-align:center;}
.shop-grid img{height:260px;max-width:100%;object-fit:contain;filter:drop-shadow(0 24px 18px rgba(0,0,0,.38));}
.visit-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.contact-card{display:grid;gap:14px;}
.contact-card input,.contact-card textarea{width:100%;padding:15px;background:#071323;border:1px solid rgba(199,163,90,.4);color:var(--cream);font:inherit;}
.contact-card textarea{min-height:150px;resize:vertical;}
.collection .line-btn{margin-top:34px;}
@media(max-width:1180px){
  .experience-list,.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:900px){
  .page-hero{min-height:auto;padding:110px 24px 64px;text-align:left;place-items:start;}
  .page-hero h1{font-size:clamp(3rem,14vw,5rem);margin-left:0;}
  .page-hero p:not(.eyebrow){margin-left:0;}
  .split-section,.story-grid,.experience-list,.shop-grid,.visit-grid{grid-template-columns:1fr;padding:72px 20px;gap:18px;}
  .split-section h2{font-size:clamp(2.55rem,12vw,4.4rem);}
  .brand-quote{padding:80px 20px;}
  .brand-quote p{font-size:clamp(2.4rem,12vw,4rem);}
  .shop-grid img{height:230px;}
}

/* v11.1: interactive shop basket */
.shop-layout{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,360px);
  gap:28px;
  padding:100px 7vw;
  background:#081326;
  align-items:start;
}
.shop-layout .shop-grid{
  padding:0;
  background:transparent;
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.shop-card button.add-to-basket{cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;}
.shop-card button.add-to-basket:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(199,163,90,.18);}
.basket-status{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:30;
  background:rgba(199,163,90,.96);
  color:#071323;
  padding:14px 18px;
  border-radius:999px;
  font-weight:800;
  letter-spacing:.04em;
  box-shadow:0 20px 50px rgba(0,0,0,.28);
  opacity:0;
  transform:translateY(16px);
  pointer-events:none;
  transition:opacity .3s ease,transform .3s ease;
}
.basket-status.show{opacity:1;transform:translateY(0);}
.basket-panel{
  position:sticky;
  top:96px;
  border:1px solid rgba(199,163,90,.34);
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025));
  padding:26px;
  box-shadow:0 30px 80px rgba(0,0,0,.22);
  backdrop-filter:blur(14px);
}
.basket-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid rgba(199,163,90,.22);padding-bottom:18px;margin-bottom:18px;}
.basket-heading h2{font-family:Playfair Display,serif;font-size:2rem;line-height:1;margin:8px 0 0;color:var(--cream);}
.basket-count{display:grid;place-items:center;min-width:38px;height:38px;border-radius:999px;background:var(--gold);color:#071323;font-weight:900;}
.basket-empty{color:var(--muted);line-height:1.6;padding:10px 0 22px;}
.basket-empty p{margin:0 0 4px;color:var(--cream);}
.basket-items{display:grid;gap:14px;}
.basket-item{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(199,163,90,.16);}
.basket-item img{width:58px;height:78px;object-fit:contain;filter:drop-shadow(0 12px 12px rgba(0,0,0,.35));}
.basket-item h3{font-family:Playfair Display,serif;font-size:1.12rem;margin:0 0 5px;color:var(--cream);}
.basket-item p{margin:0;color:var(--muted);font-size:.92rem;}
.quantity-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;}
.quantity-controls{display:inline-flex;align-items:center;border:1px solid rgba(199,163,90,.34);}
.quantity-controls button,.remove-item{appearance:none;border:0;background:transparent;color:var(--cream);cursor:pointer;font-weight:900;}
.quantity-controls button{width:32px;height:30px;font-size:1rem;}
.quantity-controls span{min-width:28px;text-align:center;color:var(--cream);font-weight:800;}
.remove-item{color:var(--gold);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;padding:0;}
.basket-summary{border-top:1px solid rgba(199,163,90,.22);padding-top:18px;display:grid;gap:12px;}
.basket-summary[hidden]{display:none;}
.basket-summary div{display:flex;justify-content:space-between;gap:18px;color:var(--muted);}
.basket-summary strong{color:var(--cream);text-align:right;}
.checkout-button,.clear-basket{width:100%;padding:13px 16px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;}
.checkout-button{margin-top:8px;background:var(--gold);border:1px solid var(--gold);color:#071323;}
.clear-basket{background:transparent;border:1px solid rgba(199,163,90,.34);color:var(--cream);}
.demo-note{color:var(--muted);line-height:1.5;text-align:center;}
@media(max-width:1180px){
  .shop-layout{grid-template-columns:1fr;padding:80px 5vw;}
  .basket-panel{position:relative;top:0;}
}
@media(max-width:900px){
  .shop-layout{padding:72px 20px;gap:22px;}
  .shop-layout .shop-grid{grid-template-columns:1fr;}
  .basket-status{left:18px;right:18px;text-align:center;bottom:18px;border-radius:18px;}
  .basket-panel{padding:22px;}
}

/* v11.2: shop tasting-note hover cards + six-gin shop range */
.shop-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:start;
}
.shop-card{
  position:relative;
  overflow:hidden;
}
.shop-bottle-wrap{
  position:relative;
  min-height:300px;
  display:grid;
  place-items:center;
  margin:-8px -8px 18px;
  padding:18px;
  border:1px solid rgba(199,163,90,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));
}
.shop-bottle-wrap img{
  max-height:280px;
  width:auto;
  object-fit:contain;
  transition:transform .35s ease, opacity .35s ease;
}
.shop-tasting-notes{
  position:absolute;
  inset:16px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  padding:20px;
  opacity:0;
  transform:translateY(14px);
  pointer-events:none;
  transition:opacity .32s ease, transform .32s ease;
  border:1px solid rgba(199,163,90,.42);
  background:rgba(7,19,35,.88);
  backdrop-filter:blur(16px);
  color:var(--cream);
  text-align:left;
}
.shop-tasting-notes .style{
  margin:0;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.68rem;
  font-weight:800;
}
.shop-tasting-notes p{
  margin:0;
  color:var(--cream);
  line-height:1.55;
  font-size:.92rem;
}
.shop-tasting-notes .detail-row{
  border-top:1px solid rgba(199,163,90,.22);
  padding-top:10px;
  margin-top:2px;
}
.shop-tasting-notes .detail-row span{
  display:block;
  color:var(--gold);
  font-size:.68rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  margin-bottom:5px;
}
.shop-tasting-notes .detail-row strong{
  font-size:.85rem;
  line-height:1.4;
  color:var(--cream);
}
.shop-card:hover .shop-bottle-wrap img,
.shop-card:focus-within .shop-bottle-wrap img,
.shop-card.open .shop-bottle-wrap img{
  opacity:.18;
  transform:scale(.96);
}
.shop-card:hover .shop-tasting-notes,
.shop-card:focus-within .shop-tasting-notes,
.shop-card.open .shop-tasting-notes{
  opacity:1;
  transform:translateY(0);
}
@media (max-width:980px){
  .shop-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:680px){
  .shop-grid{grid-template-columns:1fr;}
  .shop-bottle-wrap{min-height:270px;}
  .shop-bottle-wrap img{max-height:250px;}
  .shop-tasting-notes{inset:12px;padding:18px;}
}
@media (hover:none){
  .shop-card .shop-tasting-notes{opacity:0;transform:translateY(14px);}
  .shop-card.open .shop-tasting-notes{opacity:1;transform:translateY(0);}
}


/* v11.3: premium basket polish */
.header-basket{
  display:inline-flex;
  align-items:center;
  gap:10px;
  border:1px solid rgba(199,163,90,.42);
  background:rgba(255,255,255,.045);
  color:var(--cream);
  padding:10px 12px;
  border-radius:999px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:900;
  font-size:.72rem;
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.header-basket:hover{transform:translateY(-1px);border-color:var(--gold);background:rgba(199,163,90,.1);}
.header-basket-count{
  display:grid;
  place-items:center;
  min-width:26px;
  height:26px;
  border-radius:50%;
  background:var(--gold);
  color:#071323;
  font-size:.8rem;
}
.header-basket-count.bump,.basket-count.bump{animation:basketBump .44s ease;}
.fly-bottle{
  position:fixed;
  z-index:999;
  width:72px;
  height:auto;
  pointer-events:none;
  filter:drop-shadow(0 26px 22px rgba(0,0,0,.38));
  transition:transform .78s cubic-bezier(.2,.86,.2,1),opacity .78s ease;
}
.add-to-basket.added{background:var(--gold)!important;color:#071323!important;border-color:var(--gold)!important;}
.free-delivery{
  border:1px solid rgba(199,163,90,.2);
  background:rgba(7,19,35,.38);
  padding:14px;
  margin-bottom:16px;
}
.free-delivery-copy{color:var(--muted);font-size:.88rem;line-height:1.4;margin-bottom:10px;}
.free-delivery-copy strong{color:var(--gold);}
.free-delivery-track{height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;}
.free-delivery-bar{display:block;width:0%;height:100%;border-radius:inherit;background:var(--gold);transition:width .45s ease;}
.basket-panel.highlight{animation:basketGlow .75s ease;}
.checkout-button{transition:transform .22s ease,box-shadow .22s ease;}
.checkout-button:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(199,163,90,.18);}
@keyframes basketBump{0%,100%{transform:scale(1)}35%{transform:scale(1.2)}65%{transform:scale(.94)}}
@keyframes basketGlow{0%{box-shadow:0 0 0 rgba(199,163,90,0),0 30px 80px rgba(0,0,0,.22)}35%{box-shadow:0 0 0 5px rgba(199,163,90,.18),0 30px 80px rgba(0,0,0,.22)}100%{box-shadow:0 0 0 rgba(199,163,90,0),0 30px 80px rgba(0,0,0,.22)}}
@media(max-width:900px){
  .header-basket{margin-left:auto;padding:9px 10px;font-size:.68rem;}
  .header-basket-icon{display:none;}
}

/* v11.4: premium experiences booking calendar */
.booking-studio{
  padding:105px 7vw;
  background:linear-gradient(180deg,#081326 0%,#06101d 100%);
}
.booking-intro{
  max-width:780px;
  margin:0 auto 38px;
  text-align:center;
}
.booking-intro h2{
  font-family:Playfair Display,serif;
  font-size:clamp(3rem,7vw,6.4rem);
  line-height:.95;
  letter-spacing:-.045em;
  margin:12px 0 18px;
}
.booking-intro p:not(.eyebrow){color:var(--muted);line-height:1.8;font-size:1.08rem;}
.experience-picker{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-bottom:26px;
}
.experience-option{
  text-align:left;
  border:1px solid rgba(199,163,90,.28);
  background:rgba(255,255,255,.035);
  color:var(--cream);
  padding:22px;
  min-height:150px;
  display:grid;
  align-content:start;
  gap:10px;
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.experience-option:hover,.experience-option.active{
  transform:translateY(-4px);
  border-color:var(--gold);
  background:linear-gradient(180deg,rgba(199,163,90,.14),rgba(255,255,255,.035));
}
.experience-option span{color:var(--gold);font-weight:900;letter-spacing:.16em;font-size:.75rem;}
.experience-option strong{font-family:Playfair Display,serif;font-size:1.55rem;line-height:1.05;}
.experience-option small{color:var(--muted);line-height:1.45;}
.calendar-booking-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,390px);
  gap:26px;
  align-items:start;
}
.calendar-panel,.booking-summary{
  border:1px solid rgba(199,163,90,.32);
  background:rgba(255,255,255,.035);
  box-shadow:0 32px 90px rgba(0,0,0,.2);
}
.calendar-panel{padding:28px;}
.calendar-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:24px;
}
.calendar-head h3,.booking-summary h3{
  font-family:Playfair Display,serif;
  font-size:clamp(2rem,3.8vw,3.2rem);
  line-height:1;
  margin:8px 0 0;
}
.calendar-nav{
  width:48px;height:48px;
  border-radius:50%;
  border:1px solid rgba(199,163,90,.5);
  background:rgba(7,19,35,.56);
  color:var(--gold);
  font-size:2rem;
  line-height:1;
}
.calendar-weekdays,.calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:9px;
}
.calendar-weekdays{margin-bottom:10px;color:var(--gold);font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;text-align:center;}
.calendar-day{
  position:relative;
  min-height:86px;
  padding:12px 10px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(7,19,35,.38);
  color:var(--cream);
  text-align:left;
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.calendar-day:not(:disabled):hover,.calendar-day.selected{
  transform:translateY(-2px);
  border-color:var(--gold);
  background:rgba(199,163,90,.12);
}
.calendar-day:disabled{opacity:.26;cursor:not-allowed;}
.calendar-day .date-number{display:block;font-weight:900;font-size:1rem;}
.calendar-day .availability{position:absolute;left:10px;right:10px;bottom:10px;color:var(--muted);font-size:.68rem;line-height:1.2;}
.calendar-day.limited .availability{color:var(--gold);}
.calendar-day .dot{position:absolute;top:12px;right:10px;width:8px;height:8px;border-radius:50%;background:var(--sage);}
.calendar-day.limited .dot{background:var(--gold);}
.calendar-key{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;color:var(--muted);font-size:.84rem;}
.calendar-key span{display:flex;align-items:center;gap:8px;}
.calendar-key i{display:block;width:9px;height:9px;border-radius:50%;background:var(--sage);}
.calendar-key span:last-child i{background:var(--gold);}
.booking-summary{
  padding:28px;
  position:sticky;
  top:92px;
}
.summary-meta{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 20px;}
.summary-meta span{
  border:1px solid rgba(199,163,90,.22);
  color:var(--muted);
  padding:8px 10px;
  font-size:.78rem;
}
.selected-date-card,.booking-total{
  border:1px solid rgba(199,163,90,.22);
  background:rgba(7,19,35,.42);
  padding:16px;
  margin-bottom:16px;
}
.selected-date-card span,.booking-total span{display:block;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:6px;}
.selected-date-card strong,.booking-total strong{font-family:Playfair Display,serif;font-size:1.55rem;color:var(--cream);}
.time-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;}
.time-slots button{
  border:1px solid rgba(199,163,90,.4);
  background:transparent;
  color:var(--gold);
  padding:13px 10px;
  font-weight:900;
}
.time-slots button.active,.time-slots button:hover{background:var(--gold);color:#071323;}
.guest-select{display:grid;gap:8px;color:var(--muted);font-size:.9rem;margin-bottom:16px;}
.guest-select select{
  width:100%;
  padding:14px;
  background:#071323;
  color:var(--cream);
  border:1px solid rgba(199,163,90,.4);
  font:inherit;
}
.reserve-button{
  width:100%;
  border:1px solid var(--gold);
  background:var(--gold);
  color:#071323;
  padding:15px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  transition:transform .22s ease,box-shadow .22s ease;
}
.reserve-button:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(199,163,90,.18);}
.booking-note{color:var(--muted);font-size:.84rem;line-height:1.55;margin:14px 0 0;}
.booking-status{min-height:24px;color:var(--gold);font-weight:800;}
.refined-experiences{padding-top:0;}
@media(max-width:1120px){
  .experience-picker{grid-template-columns:repeat(2,minmax(0,1fr));}
  .calendar-booking-grid{grid-template-columns:1fr;}
  .booking-summary{position:relative;top:auto;}
}
@media(max-width:720px){
  .booking-studio{padding:72px 20px;}
  .booking-intro{text-align:left;}
  .experience-picker{grid-template-columns:1fr;}
  .calendar-panel,.booking-summary{padding:20px;}
  .calendar-weekdays,.calendar-grid{gap:6px;}
  .calendar-day{min-height:68px;padding:9px 8px;}
  .calendar-day .availability{display:none;}
  .calendar-head h3,.booking-summary h3{font-size:2rem;}
  .time-slots{grid-template-columns:1fr;}
}


/* v11.6 — premium interactive navigation */
.nav nav a{
  position:relative;
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 2px;
  color:var(--cream);
  opacity:.88;
  transition:color .24s ease, opacity .24s ease, transform .24s ease, text-shadow .24s ease;
}
.nav nav a::after{
  content:"";
  position:absolute;
  left:50%;
  right:50%;
  bottom:3px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  opacity:0;
  transition:left .28s ease,right .28s ease,opacity .28s ease;
}
.nav nav a:hover,
.nav nav a:focus-visible,
.nav nav a.current-nav{
  color:var(--gold);
  opacity:1;
  transform:translateY(-1px);
  text-shadow:0 0 18px rgba(199,163,90,.18);
}
.nav nav a:hover::after,
.nav nav a:focus-visible::after,
.nav nav a.current-nav::after{
  left:0;
  right:0;
  opacity:1;
}
.nav nav a:focus-visible,
.header-basket:focus-visible,
.menu-toggle:focus-visible{
  outline:1px solid var(--gold);
  outline-offset:5px;
}
.header-basket{
  transition:transform .24s ease, border-color .24s ease, box-shadow .24s ease, background .24s ease;
}
.header-basket:hover,
.header-basket:focus-visible{
  transform:translateY(-2px);
  border-color:var(--gold);
  background:rgba(199,163,90,.08);
  box-shadow:0 16px 42px rgba(0,0,0,.24),0 0 0 1px rgba(199,163,90,.12) inset;
}
.brand{
  transition:transform .24s ease, color .24s ease;
  text-decoration:none;
  color:var(--cream);
}
.brand:hover{
  transform:translateY(-1px);
  color:var(--gold);
}
.brand span{
  transition:box-shadow .24s ease, background .24s ease;
}
.brand:hover span{
  background:rgba(199,163,90,.08);
  box-shadow:0 0 24px rgba(199,163,90,.18);
}
@media(max-width:900px){
  .nav nav a{min-height:auto;padding:13px 10px;transform:none;}
  .nav nav a::after{left:10px;right:auto;width:0;bottom:7px;}
  .nav nav a:hover::after,.nav nav a:focus-visible::after,.nav nav a.current-nav::after{left:10px;right:auto;width:42px;}
}

/* v11.7: click-to-expand bottle gallery on shop page */
.shop-bottle-wrap img{
  cursor: zoom-in;
}
.shop-image-modal{
  position:fixed;
  inset:0;
  z-index:120;
  display:grid;
  place-items:center;
  padding:34px;
  background:rgba(2,8,17,.84);
  backdrop-filter:blur(18px);
  opacity:0;
  pointer-events:none;
  transition:opacity .28s ease;
}
.shop-image-modal.open{
  opacity:1;
  pointer-events:auto;
}
.shop-image-dialog{
  position:relative;
  width:min(92vw,760px);
  min-height:min(82vh,760px);
  display:grid;
  place-items:center;
  padding:44px 44px 34px;
  border:1px solid rgba(199,163,90,.38);
  background:radial-gradient(circle at 50% 18%,rgba(199,163,90,.12),transparent 38%),linear-gradient(180deg,rgba(11,27,49,.96),rgba(5,14,28,.98));
  box-shadow:0 40px 120px rgba(0,0,0,.55);
  transform:scale(.96) translateY(10px);
  transition:transform .28s ease;
}
.shop-image-modal.open .shop-image-dialog{
  transform:scale(1) translateY(0);
}
.shop-image-dialog img{
  max-width:100%;
  max-height:68vh;
  object-fit:contain;
  filter:drop-shadow(0 36px 34px rgba(0,0,0,.48));
}
.shop-image-caption{
  margin:20px 0 0;
  text-align:center;
  color:var(--cream);
  font-family:Playfair Display,serif;
  font-size:1.45rem;
}
.shop-image-hint{
  margin:6px 0 0;
  color:var(--muted);
  text-align:center;
  font-size:.9rem;
}
.shop-image-close{
  position:absolute;
  top:18px;
  right:18px;
  width:42px;
  height:42px;
  border-radius:50%;
  border:1px solid rgba(199,163,90,.45);
  background:rgba(255,255,255,.04);
  color:var(--cream);
  font-size:1.35rem;
  line-height:1;
  cursor:pointer;
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}
.shop-image-close:hover{
  transform:rotate(90deg) scale(1.04);
  border-color:var(--gold);
  background:rgba(199,163,90,.1);
}
body.modal-open{
  overflow:hidden;
}
@media(max-width:680px){
  .shop-image-modal{padding:18px;}
  .shop-image-dialog{width:100%;min-height:76vh;padding:54px 20px 26px;}
  .shop-image-dialog img{max-height:60vh;}
  .shop-image-caption{font-size:1.25rem;}
}

/* v11.8: final premium polish */
.hero-bottle-wrap{
  animation:heroBottleFloat 6s ease-in-out infinite;
}
.hero-bottle{
  transform-origin:50% 80%;
  transition:transform .5s ease, filter .5s ease;
}
.hero-bottle-wrap:hover .hero-bottle{
  transform:translateY(-10px) rotate(-1deg) scale(1.015);
  filter:drop-shadow(0 34px 42px rgba(0,0,0,.34));
}
.product-image img,
.shop-bottle-wrap img{
  transition:transform .42s cubic-bezier(.2,.8,.2,1), filter .42s ease;
  will-change:transform;
}
.product:hover .product-image img,
.product:focus-within .product-image img,
.shop-card:hover .shop-bottle-wrap img,
.shop-card:focus-within .shop-bottle-wrap img{
  transform:translateY(-10px) scale(1.045);
  filter:drop-shadow(0 28px 34px rgba(0,0,0,.42)) brightness(1.06);
}
.shop-bottle-wrap::after,
.product-image::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:18px;
  width:44%;
  height:14px;
  transform:translateX(-50%);
  border-radius:50%;
  background:rgba(0,0,0,.28);
  filter:blur(10px);
  opacity:.45;
  transition:opacity .35s ease, transform .35s ease;
  pointer-events:none;
}
.shop-card:hover .shop-bottle-wrap::after,
.product:hover .product-image::after{
  opacity:.25;
  transform:translateX(-50%) scale(.82);
}
.product-image{position:relative;overflow:visible;}
.shop-card{transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;}
.shop-card:hover{transform:translateY(-6px);border-color:rgba(199,163,90,.55);box-shadow:0 28px 80px rgba(0,0,0,.22);}
@keyframes heroBottleFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-12px)}
}
.product-modal{
  position:fixed;
  inset:0;
  z-index:100;
  display:grid;
  place-items:center;
  padding:28px;
  background:rgba(2,8,18,.72);
  backdrop-filter:blur(18px);
  opacity:0;
  pointer-events:none;
  transition:opacity .28s ease;
}
.product-modal.open{opacity:1;pointer-events:auto;}
.product-modal-dialog{
  position:relative;
  width:min(1060px,96vw);
  max-height:90vh;
  overflow:auto;
  display:grid;
  grid-template-columns:minmax(280px,.88fr) 1.12fr;
  gap:0;
  border:1px solid rgba(199,163,90,.32);
  background:linear-gradient(135deg,rgba(7,19,35,.98),rgba(13,29,51,.98));
  box-shadow:0 46px 120px rgba(0,0,0,.55);
  transform:translateY(18px) scale(.985);
  transition:transform .32s cubic-bezier(.2,.8,.2,1);
}
.product-modal.open .product-modal-dialog{transform:translateY(0) scale(1);}
.product-modal-image-panel{
  position:relative;
  min-height:620px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:radial-gradient(circle at 50% 42%,rgba(199,163,90,.18),transparent 42%),rgba(255,255,255,.03);
}
.product-modal-image-panel::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:58px;
  width:46%;
  height:22px;
  transform:translateX(-50%);
  border-radius:50%;
  background:rgba(0,0,0,.36);
  filter:blur(18px);
}
.product-modal-image-panel img{
  position:relative;
  z-index:1;
  max-width:86%;
  max-height:660px;
  object-fit:contain;
  filter:drop-shadow(0 34px 42px rgba(0,0,0,.45));
}
.modal-badge{
  position:absolute;
  top:22px;
  left:22px;
  z-index:2;
  color:var(--gold);
  border:1px solid rgba(199,163,90,.34);
  padding:10px 12px;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.7rem;
  font-weight:900;
}
.product-modal-copy{padding:58px 48px 42px;}
.product-modal-copy h2{font-family:Playfair Display,serif;font-size:clamp(2.7rem,5vw,5.4rem);line-height:.94;margin:10px 0 12px;letter-spacing:-.045em;}
.modal-abv{color:var(--gold);font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.modal-story{color:var(--muted);line-height:1.8;font-size:1.02rem;max-width:560px;}
.tasting-wheel{display:grid;gap:10px;margin:26px 0;}
.tasting-wheel span{position:relative;display:block;padding:9px 12px;border:1px solid rgba(199,163,90,.2);color:var(--cream);font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900;overflow:hidden;}
.tasting-wheel span::before{content:"";position:absolute;inset:0 auto 0 0;width:var(--score);background:linear-gradient(90deg,rgba(199,163,90,.22),rgba(199,163,90,.03));z-index:-1;}
.modal-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0;}
.modal-detail-grid div{border:1px solid rgba(199,163,90,.22);background:rgba(255,255,255,.035);padding:16px;}
.modal-detail-grid span{display:block;color:var(--gold);font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900;margin-bottom:8px;}
.modal-detail-grid strong{display:block;color:var(--cream);font-size:.92rem;line-height:1.55;font-weight:600;}
.modal-actions{display:flex;align-items:center;gap:14px;margin-top:22px;}
.modal-price{font-family:Playfair Display,serif;font-size:2rem;color:var(--cream);min-width:82px;}
.modal-add-to-basket{flex:1;border:1px solid var(--gold);background:var(--gold);color:#071323;padding:16px 18px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;transition:transform .22s ease,box-shadow .22s ease;}
.modal-add-to-basket:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(199,163,90,.2);}
.product-modal-close{position:absolute;top:18px;right:18px;z-index:3;width:42px;height:42px;border-radius:50%;border:1px solid rgba(199,163,90,.45);background:rgba(255,255,255,.04);color:var(--cream);font-size:1.35rem;line-height:1;cursor:pointer;transition:transform .22s ease,border-color .22s ease,background .22s ease;}
.product-modal-close:hover{transform:rotate(90deg) scale(1.04);border-color:var(--gold);background:rgba(199,163,90,.1);}
.booking-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0 18px;}
.booking-steps span{position:relative;border:1px solid rgba(199,163,90,.24);background:rgba(255,255,255,.035);padding:9px 8px;color:var(--muted);font-size:.68rem;text-align:center;text-transform:uppercase;letter-spacing:.08em;font-weight:900;}
.booking-steps span.done,.booking-steps span:first-child{color:#071323;background:var(--gold);border-color:var(--gold);}
.calendar-day.selected{box-shadow:0 0 0 2px rgba(199,163,90,.26),0 18px 48px rgba(0,0,0,.22);}
.reserve-button{position:relative;overflow:hidden;}
.reserve-button::after{content:"";position:absolute;top:0;left:-120%;width:70%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transform:skewX(-18deg);transition:left .55s ease;}
.reserve-button:hover::after{left:130%;}
@media(max-width:820px){
  .product-modal{padding:14px;}
  .product-modal-dialog{grid-template-columns:1fr;max-height:92vh;}
  .product-modal-image-panel{min-height:430px;}
  .product-modal-image-panel img{max-height:430px;}
  .product-modal-copy{padding:34px 24px 28px;}
  .modal-detail-grid{grid-template-columns:1fr;}
  .modal-actions{align-items:stretch;flex-direction:column;}
  .booking-steps{grid-template-columns:1fr 1fr;}
}

/* v11.9: fix hero bottle visibility after float animation */
.hero-bottle-wrap.reveal{
  opacity:1;
  transform:none;
}
.hero-bottle-wrap{
  animation:heroBottleFloat 6s ease-in-out infinite;
}
@keyframes heroBottleFloat{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-10px);}
}


/* Hazelton V1.0 Made by Fox integration + final header polish */
body.age-checking .age-gate,
body.age-checking #site{display:none !important;}

.brand{gap:16px !important;}
.brand span{
  border-width:2.5px !important;
  box-shadow:0 0 0 1px rgba(199,163,90,.08) inset;
  position:relative;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease, color .25s ease;
  line-height:1;
}
.brand span::before{
  content:"H";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  font:700 17px Playfair Display, serif;
  color:var(--gold);
}
.brand span{font-size:0 !important;}
.brand:hover span{
  transform:translateY(-1px);
  border-color:#e0bd70 !important;
  box-shadow:0 0 0 1px rgba(199,163,90,.18) inset, 0 0 22px rgba(199,163,90,.22);
}
.footer-brand span{border-width:1.6px;}

/* Make the imported Made by Fox system feel intentional on Hazelton */
.mbf-v2-footer{background:#050b14 !important;border-top:1px solid rgba(199,163,90,.18) !important;padding-top:70px !important;}
.mbf-v2-footer-card{background:rgba(9,18,31,.92) !important;border-color:rgba(199,163,90,.22) !important;}
.mbf-v2-footer:hover .mbf-v2-footer-card{border-color:rgba(255,139,44,.42) !important;}
.mbf-v2-reset{
  justify-self:end;
  align-self:center;
  border:1px solid rgba(199,163,90,.32);
  border-radius:999px;
  padding:10px 14px;
  color:rgba(246,237,220,.72);
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap;
  transition:color .24s ease,border-color .24s ease,background .24s ease,transform .24s ease;
}
.mbf-v2-reset:hover,.mbf-v2-reset:focus{color:#fff;border-color:rgba(255,139,44,.55);background:rgba(255,139,44,.08);transform:translateY(-1px);outline:none;}
@media(max-width:760px){.mbf-v2-reset{justify-self:center;}.mbf-v2-footer-card{grid-template-columns:64px 1fr !important;}.mbf-v2-footer-copy{min-width:0;}}
@media(max-width:430px){.mbf-v2-footer-card{grid-template-columns:1fr !important;}}


/* v1.0.1: discreet demo reset + header H optical alignment */
.footer-brand.demo-reset-trigger{cursor:default; user-select:none;}
.footer-brand.demo-reset-trigger:active span{box-shadow:0 0 24px rgba(199,163,90,.22);}
.mbf-v2-reset{display:none !important;}

/* v1.0.3: header uses the exact same H rendering as the footer mark */
.brand span{
  width:34px !important;
  height:34px !important;
  display:inline-grid !important;
  place-items:center !important;
  border:1.6px solid var(--gold) !important;
  border-radius:50% !important;
  font:600 18px 'Playfair Display', serif !important;
  line-height:1 !important;
  color:var(--gold) !important;
  font-size:18px !important;
  transform:none;
  padding:0 0 1px 0;
}
.brand span::before{
  content:none !important;
  display:none !important;
}
.brand:hover span{
  transform:translateY(-1px);
  border-color:#e0bd70 !important;
  box-shadow:0 0 0 1px rgba(199,163,90,.12) inset, 0 0 22px rgba(199,163,90,.2);
}

/* v1.0.4: header H uses the exact footer mark, scaled down as one piece */
.brand{
  gap:12px !important;
}
.brand span{
  width:34px !important;
  height:34px !important;
  position:relative !important;
  display:inline-block !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:0 !important;
  line-height:0 !important;
  color:transparent !important;
  padding:0 !important;
  flex:0 0 34px !important;
  overflow:visible !important;
}
.brand span::before,
.brand span::after{
  box-sizing:border-box;
}
.brand span::before{
  content:"H" !important;
  position:absolute !important;
  left:50% !important;
  top:50% !important;
  width:64px !important;
  height:64px !important;
  border:1.6px solid var(--gold) !important;
  border-radius:50% !important;
  display:grid !important;
  place-items:center !important;
  font:600 34px 'Playfair Display', serif !important;
  line-height:1 !important;
  color:var(--gold) !important;
  background:rgba(199,163,90,.06) !important;
  transform:translate(-50%,-50%) scale(.53125) !important;
  transform-origin:center !important;
  box-shadow:none !important;
}
.brand:hover span{
  transform:translateY(-1px) !important;
  box-shadow:none !important;
}
.brand:hover span::before{
  border-color:#e0bd70 !important;
  box-shadow:0 0 0 1px rgba(199,163,90,.12) inset, 0 0 22px rgba(199,163,90,.20) !important;
}


/* v1.0.5: replace recreated header H with the real Hazelton wordmark */
.brand.brand-wordmark{
  display:inline-flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:0 !important;
  text-decoration:none !important;
  color:var(--cream) !important;
  line-height:1 !important;
  min-width:142px;
  transform:translateY(1px);
  transition:transform .25s ease, filter .25s ease;
}
.brand.brand-wordmark .brand-main{
  display:block !important;
  width:auto !important;
  height:auto !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
  flex:none !important;
  overflow:visible !important;
  font-family:'Playfair Display',serif !important;
  font-size:1.28rem !important;
  font-weight:600 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:var(--cream) !important;
  line-height:.9 !important;
}
.brand.brand-wordmark .brand-main::before,
.brand.brand-wordmark .brand-main::after{
  content:none !important;
  display:none !important;
}
.brand.brand-wordmark .brand-sub{
  display:block !important;
  width:auto !important;
  height:auto !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:6px 0 0 2px !important;
  flex:none !important;
  overflow:visible !important;
  font-family:Inter,system-ui,sans-serif !important;
  font-size:.54rem !important;
  font-weight:800 !important;
  letter-spacing:.42em !important;
  text-transform:uppercase !important;
  color:var(--gold) !important;
  line-height:1 !important;
}
.brand.brand-wordmark .brand-sub::before,
.brand.brand-wordmark .brand-sub::after{
  content:none !important;
  display:none !important;
}
.brand.brand-wordmark:hover{
  transform:translateY(-1px) !important;
  filter:drop-shadow(0 0 14px rgba(199,163,90,.22));
}
.brand.brand-wordmark:hover .brand-main,
.brand.brand-wordmark:hover .brand-sub{
  box-shadow:none !important;
  border:0 !important;
}
@media(max-width:760px){
  .brand.brand-wordmark{min-width:116px;}
  .brand.brand-wordmark .brand-main{font-size:1.06rem !important;letter-spacing:.15em !important;}
  .brand.brand-wordmark .brand-sub{font-size:.46rem !important;letter-spacing:.34em !important;margin-top:5px !important;}
}

/* v1.0.6: wordmark-only digital identity — keep monogram on bottles only */
.brand.brand-wordmark{
  align-items:center !important;
  text-align:center !important;
  min-width:150px;
}
.brand.brand-wordmark .brand-main{
  text-align:center !important;
}
.brand.brand-wordmark .brand-sub{
  margin:6px 0 0 0 !important;
  text-align:center !important;
  align-self:center !important;
  letter-spacing:.46em !important;
  padding-left:.46em !important;
}

.age-wordmark,
.footer-wordmark{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:var(--cream);
  line-height:1;
}
.age-wordmark{margin:0 auto 18px;}
.age-main,
.footer-main{
  display:block;
  font-family:'Playfair Display',serif;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.18em;
  color:var(--cream);
}
.age-main{font-size:1.65rem;}
.footer-main{font-size:2.35rem;}
.age-sub,
.footer-sub{
  display:block;
  margin-top:7px;
  font-family:Inter,system-ui,sans-serif;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.46em;
  padding-left:.46em;
  color:var(--gold);
}
.age-sub{font-size:.62rem;}
.footer-sub{font-size:.78rem;color:var(--gold);} .footer-main{margin-bottom:2px;} .footer-sub{margin-top:2px;}
.footer-brand.footer-wordmark{margin:0 auto 18px;cursor:default;user-select:none;}
.footer-brand.footer-wordmark:active{filter:drop-shadow(0 0 18px rgba(199,163,90,.24));}
.footer-brand.footer-wordmark span{
  width:auto !important;
  height:auto !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  display:block !important;
  place-items:unset !important;
  margin:0 !important;
  color:inherit !important;
}
.crest{display:none !important;}
@media(max-width:760px){
  .brand.brand-wordmark{min-width:124px;}
  .brand.brand-wordmark .brand-sub{letter-spacing:.38em !important;padding-left:.38em !important;}
  .footer-main{font-size:1.9rem;}
  .footer-sub{font-size:.66rem;letter-spacing:.38em;padding-left:.38em;}
}

/* v1.0.7: re-centre Hazelton footer after removing H monogram */
footer .footer-mill{
  display:block !important;
  margin:0 auto 28px !important;
}
footer .footer-brand.footer-wordmark{
  display:flex !important;
  width:max-content !important;
  margin:0 auto 18px !important;
  align-items:center !important;
  text-align:center !important;
}
footer .footer-brand.footer-wordmark .footer-main,
footer .footer-brand.footer-wordmark .footer-sub{
  text-align:center !important;
}

/* v1.0.9: final footer wordmark colour + spacing fix */
footer .footer-brand.footer-wordmark{
  display:block !important;
  width:max-content !important;
  margin:0 auto 18px !important;
  text-align:center !important;
  line-height:.95 !important;
}
footer .footer-brand.footer-wordmark .footer-main,
footer .footer-brand.footer-wordmark .footer-sub{
  display:block !important;
  width:auto !important;
  height:auto !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  margin:0 !important;
  text-align:center !important;
}
footer .footer-brand.footer-wordmark .footer-main{
  color:var(--cream) !important;
  margin-bottom:-2px !important;
}
footer .footer-brand.footer-wordmark .footer-sub{
  color:var(--gold) !important;
  margin-top:0 !important;
}


/* V1.2.1 — Hazelton navigation repair + premium typography */
.nav nav{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:34px !important;
  white-space:nowrap !important;
}
.nav nav a{
  font-family:'Playfair Display', Georgia, serif !important;
  text-transform:uppercase !important;
  letter-spacing:.105em !important;
  font-size:.82rem !important;
  line-height:1 !important;
  font-weight:600 !important;
  color:rgba(246,237,220,.88) !important;
  opacity:1 !important;
  text-decoration:none !important;
  padding:7px 0 9px !important;
  min-height:auto !important;
  transform:none !important;
  transition:color .28s ease, text-shadow .28s ease !important;
}
.nav nav a:hover,
.nav nav a:focus-visible,
.nav nav a.current-nav{
  color:var(--gold) !important;
  text-shadow:0 0 16px rgba(199,163,90,.16) !important;
  transform:none !important;
}
.nav nav a::after{
  bottom:0 !important;
  height:1px !important;
  background:linear-gradient(90deg,transparent,var(--gold),transparent) !important;
  transition:left .3s ease,right .3s ease,opacity .3s ease !important;
}
@media(max-width:900px){
  .nav nav{display:none !important;gap:8px !important;white-space:normal !important;}
  .nav nav.open{display:grid !important;}
  .nav nav a{font-size:.86rem !important;letter-spacing:.1em !important;padding:13px 10px !important;}
}


.logo{display:flex;align-items:center}
.logo .wordmark{
  width:220px;
  height:auto;
  display:block;
}
@media (max-width:768px){
.logo .wordmark{width:170px;}
}

/* v1.3: cinematic Our Story page */
.story-hero{
  min-height:88vh;
  padding:190px 7vw 105px;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(260px,.65fr);
  align-items:center;
  gap:7vw;
  background:
    radial-gradient(circle at 78% 34%, rgba(199,163,90,.18), transparent 31%),
    linear-gradient(135deg,#071323,#10213a 55%,#071323);
  position:relative;
  overflow:hidden;
}
.story-hero:after{
  content:"";
  position:absolute;
  inset:auto 8vw 42px 8vw;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(199,163,90,.45), transparent);
}
.story-hero-copy{position:relative;z-index:1;max-width:720px;}
.story-hero h1,
.story-wide h2,
.story-final h2{
  font-family:'Playfair Display',serif;
  font-weight:700;
  letter-spacing:-.045em;
  line-height:.94;
  margin:16px 0 24px;
}
.story-hero h1{font-size:clamp(2.9rem,5.8vw,5.9rem);line-height:1.03;letter-spacing:-.035em;max-width:760px;}
.story-hero p:not(.eyebrow),
.story-wide p,
.story-copy p{
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.85;
}
.story-hero-mill{
  width:min(500px,100%);
  justify-self:center;
  opacity:.88;
  filter:drop-shadow(0 30px 60px rgba(0,0,0,.28));
}
.story-chapter{
  padding:125px 7vw;
  display:grid;
  grid-template-columns:minmax(260px,.8fr) minmax(0,1fr);
  gap:7vw;
  align-items:center;
  background:#081326;
}
.story-chapter-reverse{grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);background:#0b1830;}
.story-visual,
.story-card,
.story-moment-panel{
  border:1px solid rgba(199,163,90,.28);
  background:rgba(255,255,255,.035);
  box-shadow:0 30px 90px rgba(0,0,0,.22);
}
.story-visual{padding:48px;display:grid;place-items:center;}
.story-visual img{width:min(420px,100%);opacity:.94;}
.chapter-number{
  display:inline-block;
  color:var(--gold);
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.28em;
  text-transform:uppercase;
  margin-bottom:22px;
}
.story-copy h2{
  font-family:'Playfair Display',serif;
  font-size:clamp(2.4rem,4vw,4.6rem);
  line-height:.96;
  letter-spacing:-.04em;
  margin:0 0 26px;
}
.story-card{padding:46px;align-self:stretch;display:flex;flex-direction:column;justify-content:center;}
.story-card .quote-mark{font-family:'Playfair Display',serif;font-size:7rem;line-height:.6;color:var(--gold);margin:0 0 20px;}
.story-card p:not(.quote-mark){font-family:'Playfair Display',serif;font-size:clamp(2rem,3vw,3.3rem);line-height:1.05;margin:0 0 24px;}
.story-card span{color:var(--muted);line-height:1.8;}
.story-wide{
  padding:125px 7vw 105px;
  text-align:center;
  background:radial-gradient(circle at 50% 45%, rgba(199,163,90,.13), transparent 40%), #071323;
  overflow:hidden;
}
.story-wide > div:first-child{max-width:1040px;margin:0 auto;}
.story-wide h2{font-size:clamp(2.5rem,4.8vw,5.2rem);}
.story-wide p{max-width:760px;margin:0 auto;}
.story-bottle-row{
  margin:80px auto 0;
  display:flex;
  justify-content:center;
  align-items:flex-end;
  gap:clamp(8px,2vw,28px);
  min-height:310px;
}
.story-bottle-row img{
  width:clamp(70px,8vw,118px);
  height:auto;
  filter:drop-shadow(0 32px 42px rgba(0,0,0,.28));
  transition:transform .35s ease, filter .35s ease;
}
.story-bottle-row img:hover{transform:translateY(-10px);filter:drop-shadow(0 42px 58px rgba(0,0,0,.38));}
.story-chapter-moments{background:#0b1830;}
.story-moment-panel{padding:44px;display:grid;gap:18px;}
.story-moment-panel span{
  display:block;
  font-family:'Playfair Display',serif;
  font-size:clamp(1.9rem,3.2vw,3.5rem);
  line-height:.95;
  letter-spacing:-.04em;
}
.story-moment-panel span:nth-child(2){color:var(--gold);}
.story-final{
  padding:130px 7vw 150px;
  text-align:center;
  background:linear-gradient(180deg,#081326,#050b16);
}
.story-final h2{font-size:clamp(2.7rem,5.5vw,5.8rem);}
.story-final .primary-link{margin-top:18px;}
.reveal-on-scroll{
  opacity:0;
  transform:translateY(26px);
  transition:opacity 1.05s ease, transform 1.05s ease;
  will-change:opacity, transform;
}
.reveal-on-scroll.is-visible{
  opacity:1;
  transform:translateY(0);
}
.reveal-on-scroll:nth-child(2){transition-delay:.08s;}
@media (prefers-reduced-motion: reduce){
  .reveal-on-scroll{opacity:1;transform:none;transition:none;}
}
@keyframes storyFadeUp{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);}}

@media (max-width: 900px){
  .story-hero,.story-chapter,.story-chapter-reverse{grid-template-columns:1fr;padding:118px 24px 76px;gap:42px;}
  .story-hero{min-height:auto;text-align:left;}
  .story-hero-mill{max-width:320px;justify-self:start;}
  .story-copy h2,.story-wide h2,.story-final h2{letter-spacing:-.035em;}
  .story-wide{padding:84px 24px;}
  .story-bottle-row{justify-content:flex-start;overflow-x:auto;padding:0 0 18px;margin-top:54px;}
  .story-bottle-row img{min-width:82px;}
  .story-visual,.story-card,.story-moment-panel{padding:28px;}
}

.chapter-number{display:none!important;}
.story-grid{align-items:center;}
.story-image img{border-radius:18px;}


.story-banner{
position:relative;
height:76vh;
min-height:640px;
background-image:
linear-gradient(to bottom, rgba(7,19,35,0) 0%, rgba(7,19,35,0) 74%, rgba(7,19,35,.68) 100%),
linear-gradient(to left, rgba(7,19,35,.36) 0%, rgba(7,19,35,.25) 30%, rgba(7,19,35,.06) 58%, rgba(7,19,35,0) 100%),
url('assets/story-hero-full.png');
background-size:calc(100% + 40px) auto;
background-repeat:no-repeat;
background-position:calc(50% - 18px) 34%;
display:flex;
align-items:center;
justify-content:flex-end;
margin-left:calc(50% - 50vw);
margin-right:calc(50% - 50vw);
width:100vw;
}
.story-banner-overlay{
width:min(31rem,34vw);
max-width:500px;
margin-left:auto;
margin-right:9vw;
padding:5.8rem 0 5.6rem 0;
color:#f5efe3;
transform:translateY(-0.4rem);
}
.story-banner .eyebrow{color:var(--gold);font-size:.68rem;letter-spacing:.32em;margin-bottom:1.15rem;}
.story-banner h1{
font-family:Playfair Display,serif;
font-weight:500;
font-size:clamp(1.95rem,2.7vw,3.2rem);
line-height:1.28;
letter-spacing:-.022em;
margin:.45rem 0 .75rem;
}
.story-banner p:not(.eyebrow){font-size:1.5rem;max-width:28.75rem;color:#e5dccd;line-height:1.6;margin-top:0;}
.story-banner-overlay .eyebrow,
.story-banner-overlay h1,
.story-banner-overlay p:not(.eyebrow){
opacity:0;
transform:translateY(18px);
animation:storyHeroTextIn 1.25s cubic-bezier(.2,.8,.2,1) forwards;
}
.story-banner-overlay h1{animation-delay:.18s;}
.story-banner-overlay p:not(.eyebrow){animation-delay:.36s;}
@keyframes storyHeroTextIn{to{opacity:1;transform:translateY(0);}}
@media(max-width:768px){
.story-banner{height:74vh;min-height:560px;background-size:cover;background-position:25% 34%;align-items:flex-end;background-image:linear-gradient(to top, rgba(7,19,35,.84) 0%, rgba(7,19,35,.54) 44%, rgba(7,19,35,.08) 100%), url('assets/story-hero-full.png');}
.story-banner-overlay{width:auto;max-width:none;margin:0;padding:0 1.5rem 2.8rem;transform:none;}
.story-banner h1{font-size:2.35rem;line-height:1.18;}
.story-banner p:not(.eyebrow){font-size:1.12rem;line-height:1.55;}
}

.story-chapter-craft .story-visual{padding:0;overflow:hidden;}
.story-chapter-craft .story-visual img{width:100%;display:block;opacity:1;}


/* v1.6.0: Our Story copper still editorial polish */
.story-chapter-craft{
  grid-template-columns:minmax(0,.82fr) minmax(420px,1.08fr);
  gap:5.6vw;
  padding:118px 7vw 124px;
  align-items:center;
}
.story-chapter-craft .story-copy{
  max-width:680px;
}
.story-chapter-craft .story-copy h2{
  margin-bottom:28px;
}
.story-chapter-craft .story-copy p{
  max-width:620px;
}
.story-chapter-craft .story-visual{
  border:0;
  background:transparent;
  box-shadow:none;
  padding:0;
  overflow:visible;
}
.story-chapter-craft .story-visual img{
  width:100%;
  max-width:680px;
  display:block;
  opacity:1;
  box-shadow:0 38px 90px rgba(0,0,0,.28);
}
@media(max-width:900px){
  .story-chapter-craft{
    grid-template-columns:1fr;
    padding:84px 24px 92px;
    gap:36px;
  }
  .story-chapter-craft .story-visual img{
    max-width:100%;
  }
}


/* v1.6.2: Hazelton typography system - whole site consistency */
:root{
  --font-display:'Playfair Display', Georgia, serif;
  --font-body:Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --type-cream:#f6eddc;
  --type-muted:#d5dbe1;
}
body{font-family:var(--font-body);}
.brand-wordmark,
.footer-wordmark,
.nav nav a,
.header-basket,
.eyebrow,
.chapter-number,
.line-btn,
.primary-link,
.product button,
.booking-card button,
.quiz button{
  font-family:var(--font-display) !important;
}
/* One display voice for Hazelton headings */
h1,h2,h3,
.age-card h1,
.hero h2,
.page-hero h1,
.story-banner h1,
.story-copy h2,
.story-wide h2,
.story-final h2,
.split-section h2,
.botanicals h2,
.collection h2,
.experience h2,
.finder h2,
.section-head h2,
.product h3,
.experience-preview h3,
.story-grid article h2,
.experience-list h2,
.shop-grid h2,
.visit-grid h2,
.booking-intro h2,
.basket-heading h2,
.product-modal-copy h2,
footer h2{
  font-family:var(--font-display) !important;
  font-weight:500 !important;
  letter-spacing:-.032em;
  color:var(--type-cream);
}
.story-banner h1{
  font-weight:500 !important;
  letter-spacing:-.022em !important;
  line-height:1.28 !important;
}
.story-copy h2,
.story-wide h2,
.story-final h2{
  font-weight:500 !important;
  letter-spacing:-.032em !important;
  line-height:1.02 !important;
}
.story-chapter-craft .story-copy h2{
  font-size:clamp(3rem,4.7vw,5.2rem);
  line-height:.98 !important;
  letter-spacing:-.034em !important;
  margin-bottom:30px;
}
/* Consistent editorial body rhythm */
p,
.hero-content p,
.page-hero p,
.story-banner p:not(.eyebrow),
.story-copy p,
.story-wide p,
.story-card span,
.product p,
.experience p,
.booking-card,
.finder p,
.collection-subtitle,
.product-modal-copy p{
  font-family:var(--font-body) !important;
  font-weight:400;
  color:var(--type-muted);
}
.story-copy p,
.story-wide p{
  font-size:1.12rem;
  line-height:1.85;
}
.story-chapter-craft .story-copy p:not(.craft-standfirst){
  max-width:520px;
  font-size:1.14rem;
  line-height:1.85;
}
.craft-standfirst{
  font-family:var(--font-display) !important;
  font-size:1.2rem !important;
  line-height:1.55 !important;
  color:rgba(246,237,220,.84) !important;
  margin:0 0 26px !important;
  max-width:520px !important;
}
.craft-standfirst em{font-style:italic;}
.eyebrow,
.chapter-number{
  color:var(--gold) !important;
  text-transform:uppercase;
  letter-spacing:.32em !important;
  font-weight:700 !important;
}
@media(max-width:900px){
  .story-chapter-craft .story-copy h2{font-size:clamp(2.7rem,13vw,4.6rem);}
  .story-copy p,.story-wide p{font-size:1.05rem;}
}

.footer-logo{width:min(344px,54vw);opacity:.95;display:block;margin:-40px auto 36px;}

/* v1.7.6: new hand-drawn Hazelton mill footer lockup */
footer{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
footer .footer-mill{
  width:min(430px,72vw) !important;
  max-width:430px !important;
  opacity:1 !important;
  display:block !important;
  margin:0 auto 18px !important;
}
footer .footer-logo{
  width:min(430px,72vw) !important;
  max-width:430px !important;
  opacity:.96 !important;
  display:block !important;
  margin:0 auto 36px !important;
}
@media(max-width:700px){
  footer .footer-mill,
  footer .footer-logo{width:min(330px,82vw) !important;}
}


/* v1.8.1: tighten footer mill + wordmark into one logo lockup */
footer .footer-mill{
  width:min(430px,72vw) !important;
  max-width:430px !important;
  margin:0 auto 10px !important;
}
footer .footer-logo{
  width:min(430px,72vw) !important;
  max-width:430px !important;
  margin:0 auto 28px !important;
}
@media(max-width:700px){
  footer .footer-mill,
  footer .footer-logo{width:min(330px,82vw) !important;}
}


/* v1.8.2: Our Story footer wordmark reduced by 15-20% */
body.story-page footer .footer-logo{
  width:min(350px,59vw) !important;
  max-width:350px !important;
}
@media(max-width:700px){
  body.story-page footer .footer-logo{width:min(270px,67vw) !important;}
}

/* v1.8.3 story logo tweak */
.story-page .footer-logo{width:min(315px,53vw)!important;max-width:315px!important;}


.story-panorama{margin:3rem 0;border-radius:24px;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.25)}
.story-panorama img{display:block;width:100%;height:420px;object-fit:cover}

/* v1.8.6: Our Story countryside split layout */
.story-countryside-split{
  padding:115px 7vw 120px;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:5.5vw;
  align-items:center;
  background:radial-gradient(circle at 32% 48%, rgba(199,163,90,.11), transparent 36%), #071323;
  overflow:hidden;
}
.story-countryside-image{
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 30px 70px rgba(0,0,0,.28);
}
.story-countryside-image img{
  display:block;
  width:100%;
  height:520px;
  object-fit:cover;
}
.story-countryside-copy{
  max-width:620px;
}
.story-countryside-copy h2{
  font-family:'Playfair Display',serif;
  font-weight:700;
  font-size:clamp(2.5rem,4.6vw,5rem);
  line-height:1.02;
  letter-spacing:-.035em;
  margin:0 0 28px;
  color:var(--cream);
}
.story-countryside-copy p:not(.eyebrow){
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.85;
  margin:0 0 22px;
}
@media(max-width:900px){
  .story-countryside-split{
    grid-template-columns:1fr;
    padding:84px 24px 92px;
    gap:34px;
  }
  .story-countryside-image img{height:360px;}
}

/* v1.8.7: mobile collection card fix */
@media (max-width: 900px) {
  .collection .product-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  .collection .product {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 24px 22px 26px !important;
    overflow: hidden !important;
    text-align: center !important;
  }

  .collection .product-image {
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto 18px !important;
    width: 100% !important;
    max-width: 260px !important;
    display: grid !important;
    place-items: center !important;
    background: radial-gradient(circle at 50% 42%, rgba(199,163,90,.16), transparent 62%) !important;
    border-bottom: 0 !important;
    overflow: visible !important;
  }

  .collection .product-image img {
    display: block !important;
    position: static !important;
    width: auto !important;
    max-width: 100% !important;
    height: 260px !important;
    max-height: 260px !important;
    object-fit: contain !important;
    object-position: center !important;
    transform: none !important;
  }

  .collection .product-main {
    flex: 0 0 auto !important;
    position: relative !important;
    z-index: 2 !important;
    opacity: 1 !important;
  }

  .collection .product h3 {
    margin: 0 0 8px !important;
    font-size: 1.65rem !important;
    line-height: 1.05 !important;
  }

  .collection .product-main p {
    margin: 0 !important;
    font-size: 1rem !important;
    line-height: 1.55 !important;
    color: var(--muted) !important;
  }

  .collection .product:hover .product-image img,
  .collection .product:focus-within .product-image img,
  .collection .product.open .product-image img {
    transform: none !important;
    filter: drop-shadow(0 24px 18px rgba(0,0,0,.38)) !important;
  }

  .collection .product:hover .product-main,
  .collection .product:focus-within .product-main,
  .collection .product.open .product-main {
    opacity: 1 !important;
  }

  .collection .product-details {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: 100% !important;
    margin-top: 16px !important;
    text-align: left !important;
  }
}

@media (max-width: 520px) {
  .collection .product {
    padding: 22px 18px 24px !important;
  }

  .collection .product-image {
    max-width: 230px !important;
    margin-bottom: 16px !important;
  }

  .collection .product-image img {
    height: 235px !important;
    max-height: 235px !important;
  }
}


/* Hidden home logo demo reset toast */
.demo-reset-toast{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:99999;
  padding:10px 14px;
  border:1px solid rgba(199,163,90,.35);
  border-radius:999px;
  background:rgba(8,18,35,.92);
  color:#f8ecd0;
  font-family:var(--font-body, inherit);
  font-size:13px;
  letter-spacing:.02em;
  box-shadow:0 18px 40px rgba(0,0,0,.28);
  opacity:0;
  transform:translateY(8px);
  pointer-events:none;
  transition:opacity .22s ease, transform .22s ease;
}
.demo-reset-toast.show{
  opacity:1;
  transform:translateY(0);
}

/* v1.9.1: responsive collection cards for tablet / resized desktop */
@media (max-width: 1200px) {
  .collection .product-grid {
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
    gap: 22px !important;
  }

  .collection .product {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    min-height: 0 !important;
    height: auto !important;
    padding: 28px 24px 30px !important;
    text-align: center !important;
    overflow: hidden !important;
  }

  .collection .product-image {
    position: relative !important;
    width: 100% !important;
    max-width: 285px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto 18px !important;
    display: grid !important;
    place-items: center !important;
    overflow: visible !important;
    border-bottom: 0 !important;
    background: radial-gradient(circle at 50% 42%, rgba(199,163,90,.13), transparent 62%) !important;
  }

  .collection .product-image img {
    position: static !important;
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: 300px !important;
    max-height: 300px !important;
    object-fit: contain !important;
    object-position: center !important;
    transform: none !important;
  }

  .collection .product-main {
    position: static !important;
    z-index: 2 !important;
    opacity: 1 !important;
    margin: 0 auto !important;
    max-width: 100% !important;
  }

  .collection .product h3 {
    margin: 0 0 8px !important;
    line-height: 1.05 !important;
  }

  .collection .product-main p {
    margin: 0 !important;
    line-height: 1.55 !important;
  }

  .collection .product-details {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: 100% !important;
    margin-top: 16px !important;
    text-align: left !important;
  }

  .collection .product:hover .product-image img,
  .collection .product:focus-within .product-image img,
  .collection .product.open .product-image img {
    transform: none !important;
  }
}

@media (min-width: 901px) and (max-width: 1200px) {
  .collection .product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 680px) {
  .collection .product-grid {
    grid-template-columns: 1fr !important;
  }
}

.footer-mill-reset{cursor:pointer;}

/* v1.9.3: visible gold mill watermark on the home story panel */
.story-intro{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.story-intro::before{
  content:"";
  position:absolute;
  left:-120px;
  top:50%;
  width:min(760px,58vw);
  aspect-ratio:1 / 1;
  transform:translateY(-50%);
  background:url('assets/mill-mark-premium.png') center / contain no-repeat;
  opacity:.16;
  pointer-events:none;
  z-index:-1;
}
.story-intro > *{
  position:relative;
  z-index:1;
}
@media(max-width:760px){
  .story-intro::before{
    left:50%;
    top:46%;
    width:92vw;
    transform:translate(-50%,-50%);
    opacity:.10;
  }
}

/* v1.9.4: move home story heading above the copy + apply slow homepage reveals */
.story-intro.split-section{
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  min-height: 570px;
  padding-top: 112px;
  padding-bottom: 112px;
}
.story-intro .home-story-copy{
  width: min(720px, 100%);
  margin-left: min(36vw, 510px);
}
.story-intro .home-story-copy .eyebrow{
  margin: 0 0 28px;
}
.story-intro .home-story-copy .section-intro{
  margin: 0;
}
.collection .section-head.reveal-on-scroll,
.collection .product-grid.reveal-on-scroll,
.experience.v11-experience.reveal-on-scroll,
.visit-preview.reveal-on-scroll,
.brand-quote.reveal-on-scroll{
  transition-duration: 1.15s;
}
.collection .product-grid.reveal-on-scroll{transition-delay:.08s;}
@media(max-width: 900px){
  .story-intro .home-story-copy{
    margin-left: 0;
    width: min(680px, 100%);
  }
  .story-intro.split-section{
    min-height: auto;
    padding-top: 86px;
    padding-bottom: 86px;
  }
}


/* v1.9.5: remove homepage quote panel and give footer more breathing room */
body:not(.story-page) footer{
  padding-top: 150px !important;
}
body:not(.story-page) .mbf-v2-footer{
  padding-top: 80px !important;
}
@media(max-width:760px){
  body:not(.story-page) footer{
    padding-top: 110px !important;
  }
}

/* Hazelton V2 accents */
.product[data-accent="plum"]:hover,.product[data-accent="plum"].open{background:linear-gradient(180deg,rgba(95,45,64,.72),rgba(9,22,42,.88)) !important;}

/* V2.1 Distillery Store layout */
.distillery-store.shop-layout{
  grid-template-columns:minmax(0,1fr) minmax(270px,320px);
  gap:30px;
  align-items:start;
}
.store-products{display:grid;gap:28px;min-width:0;}
.store-section-head{
  border:1px solid rgba(199,163,90,.24);
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.018));
  padding:30px;
  box-shadow:0 26px 70px rgba(0,0,0,.14);
}
.store-section-head h2{
  font-family:var(--font-display), Playfair Display, serif !important;
  font-size:clamp(2.2rem,4vw,4.2rem);
  line-height:.95;
  margin:8px 0 14px;
}
.store-section-head p:last-child{max-width:760px;color:var(--muted);line-height:1.7;margin:0;}
.shop-card-featured{
  display:grid;
  grid-template-columns:minmax(220px,.9fr) minmax(260px,1.1fr);
  gap:28px;
  align-items:center;
  padding:34px;
  border-color:rgba(199,163,90,.5) !important;
  background:linear-gradient(135deg,rgba(199,163,90,.10),rgba(255,255,255,.035) 42%,rgba(255,255,255,.018));
}
.shop-card-featured .shop-bottle-wrap{min-height:430px;margin:0;}
.shop-card-featured .shop-bottle-wrap img{max-height:390px;}
.shop-card-featured .shop-copy{text-align:left;}
.shop-card-featured .shop-copy h2{font-size:clamp(2.5rem,5vw,5.8rem);line-height:.92;margin:8px 0 14px;}
.product-summary{color:var(--muted);line-height:1.6;margin:0 0 12px;}
.shop-grid-balanced{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:22px;
  padding:0 !important;
  background:transparent !important;
}
.merch-head{margin-top:18px;}
.merch-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:18px;
  padding:0 !important;
  background:transparent !important;
}
.merch-card{padding:22px !important;}
.merch-card h2{font-size:1.45rem !important;}
.merch-image{
  min-height:190px;
  display:grid;
  place-items:center;
  margin:-4px -4px 18px;
  border:1px solid rgba(199,163,90,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));
}
.merch-image img{width:100%;max-width:170px;height:170px;object-fit:contain;filter:drop-shadow(0 20px 22px rgba(0,0,0,.34));}
.distillery-store .basket-panel{top:92px;padding:24px;}
@media(max-width:1240px){
  .distillery-store.shop-layout{grid-template-columns:1fr;}
  .distillery-store .basket-panel{position:relative;top:0;}
  .merch-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:820px){
  .shop-card-featured{grid-template-columns:1fr;padding:24px;}
  .shop-card-featured .shop-copy{text-align:center;}
  .shop-grid-balanced,.merch-grid{grid-template-columns:1fr !important;}
  .store-section-head{padding:24px;}
}

/* V2.2: Our Story bottle moments section */
.story-bottle-moments{
  grid-template-columns:minmax(0,.82fr) minmax(360px,1fr);
  gap:5.5vw;
  align-items:center;
  overflow:hidden;
}
.story-bottle-moments .story-copy{max-width:650px;}
.story-moment-link{margin-top:18px;}
.story-bottle-panel{
  position:relative;
  min-height:520px;
  padding:38px 38px 32px;
  overflow:hidden;
  isolation:isolate;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(170px,.62fr);
  gap:24px;
  align-items:center;
}
.story-bottle-panel::before{
  content:"";
  position:absolute;
  inset:-20%;
  background:
    radial-gradient(circle at 72% 40%, rgba(199,163,90,.18), transparent 32%),
    radial-gradient(circle at 20% 78%, rgba(255,255,255,.08), transparent 26%);
  z-index:-1;
}
.story-bottle-panel-copy{display:grid;gap:16px;align-self:center;}
.story-bottle-panel-copy span{
  display:block;
  font-family:'Playfair Display',serif;
  font-size:clamp(1.8rem,3vw,3.35rem);
  line-height:.96;
  letter-spacing:-.04em;
}
.story-bottle-panel-copy span:nth-child(2){color:var(--gold);}
.story-bottle-showcase{display:grid;place-items:center;align-self:stretch;}
.story-bottle-feature{
  width:min(210px,100%);
  max-height:430px;
  object-fit:contain;
  filter:drop-shadow(0 34px 42px rgba(0,0,0,.45));
  transform:translateY(8px);
}
.story-bottle-note{
  grid-column:1 / -1;
  margin:0;
  color:var(--muted);
  line-height:1.72;
  max-width:640px;
}
.story-mini-bottles{
  grid-column:1 / -1;
  display:flex;
  gap:16px;
  align-items:flex-end;
  padding-top:2px;
}
.story-mini-bottles img{
  height:104px;
  width:auto;
  object-fit:contain;
  filter:drop-shadow(0 18px 22px rgba(0,0,0,.34));
  opacity:.95;
}
@media(max-width:1050px){
  .story-bottle-moments{grid-template-columns:1fr;}
  .story-bottle-panel{min-height:0;}
}
@media(max-width:700px){
  .story-bottle-panel{
    grid-template-columns:1fr;
    padding:28px;
    text-align:left;
  }
  .story-bottle-feature{width:min(185px,62vw);max-height:360px;}
  .story-mini-bottles{justify-content:center;gap:10px;}
  .story-mini-bottles img{height:82px;}
}


/* V2.2.2: Made for moments lifestyle image + consistent story imagery */
.story-page .story-visual,
.story-page .story-card,
.story-page .story-moment-panel,
.story-page .story-countryside-image,
.story-page .story-moments-photo{
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  overflow:hidden;
}
.story-page .story-visual img,
.story-page .story-countryside-image img,
.story-page .story-moments-photo img,
.story-page .story-image img,
.story-page .story-panorama,
.story-page .story-panorama img{
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.story-page .story-visual img,
.story-page .story-countryside-image img,
.story-page .story-moments-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:1;
}
.story-photo-moments{
  grid-template-columns:minmax(0,.78fr) minmax(420px,1.08fr);
  gap:5.8vw;
  align-items:center;
}
.story-photo-moments .story-copy{max-width:650px;}
.story-moments-photo{
  min-height:560px;
  height:clamp(520px,44vw,680px);
}
.story-moments-photo img{
  object-position:center center;
}
@media(max-width:900px){
  .story-photo-moments{grid-template-columns:1fr;}
  .story-moments-photo{min-height:360px;height:420px;}
}

/* V2.3: live demo stock levels */
.stock-status{
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:24px;
  margin:12px 0 10px !important;
  color:#b9d7c1 !important;
  font-size:.82rem !important;
  font-weight:700;
  letter-spacing:.04em;
  line-height:1.35 !important;
}
.stock-status::before{
  content:"";
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#78b985;
  box-shadow:0 0 0 4px rgba(120,185,133,.10);
}
.stock-status[data-level="low"]{color:#dfbc65 !important;}
.stock-status[data-level="low"]::before{background:#dfbc65;box-shadow:0 0 0 4px rgba(223,188,101,.11);}
.stock-status[data-level="critical"]{color:#e49b62 !important;}
.stock-status[data-level="critical"]::before{background:#e49b62;box-shadow:0 0 0 4px rgba(228,155,98,.11);}
.stock-status[data-level="out"]{color:#d97979 !important;}
.stock-status[data-level="out"]::before{background:#d97979;box-shadow:0 0 0 4px rgba(217,121,121,.11);}
.shop-card-featured .stock-status{justify-content:flex-start;}
.add-to-basket:disabled,
.quantity-controls button:disabled,
.modal-add-to-basket:disabled{
  cursor:not-allowed !important;
  opacity:.48 !important;
  filter:saturate(.35);
}
.quantity-controls button:disabled{transform:none !important;}
.modal-actions{flex-wrap:wrap;}
.modal-stock-status{
  margin-left:auto;
  font-size:.8rem;
  font-weight:700;
  letter-spacing:.04em;
  color:#b9d7c1;
}
.modal-stock-status[data-level="critical"]{color:#e49b62;}
.modal-stock-status[data-level="out"]{color:#d97979;}
@media(max-width:820px){
  .shop-card-featured .stock-status{justify-content:center;}
  .modal-stock-status{width:100%;margin-left:0;}
}

/* V6.2 — premium flagship shop composition */
@media (min-width:1241px){
  .distillery-store.shop-layout{
    grid-template-columns:minmax(0,1fr) minmax(290px,340px);
    gap:34px;
    padding-top:28px;
  }
  .store-products{
    grid-template-columns:minmax(440px,1.08fr) minmax(420px,.92fr);
    grid-template-rows:auto auto;
    gap:22px;
    align-items:stretch;
  }
  .store-section-head{
    grid-column:1 / -1;
    padding:28px 30px;
  }
  .shop-card-featured{
    grid-column:1;
    grid-row:2;
    min-height:566px;
    height:100%;
    padding:28px;
    grid-template-columns:minmax(190px,.78fr) minmax(235px,1.22fr);
    gap:26px;
    align-items:center;
  }
  .shop-card-featured .shop-bottle-wrap{
    min-height:500px;
    height:100%;
  }
  .shop-card-featured .shop-bottle-wrap img{max-height:450px;}
  .shop-card-featured .shop-copy{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
  }
  .shop-card-featured .shop-copy h2{
    font-size:clamp(3rem,4.4vw,5.3rem);
    max-width:430px;
  }
  .shop-grid-balanced{
    grid-column:2;
    grid-row:2;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:repeat(2,minmax(0,1fr));
    gap:14px;
    height:566px;
  }
  .shop-grid-balanced .shop-card{
    min-height:0;
    height:100%;
    padding:14px !important;
    display:flex;
    flex-direction:column;
    text-align:left;
  }
  .shop-grid-balanced .shop-bottle-wrap{
    min-height:185px;
    height:185px;
    margin:0 0 12px;
    padding:10px;
  }
  .shop-grid-balanced .shop-bottle-wrap img{max-height:170px;}
  .shop-grid-balanced .shop-card h2{
    font-size:1.28rem !important;
    line-height:1.05;
    margin:0 0 8px;
  }
  .shop-grid-balanced .product-summary{
    font-size:.8rem;
    line-height:1.4;
    margin-bottom:7px;
  }
  .shop-grid-balanced .shop-card > p:not(.product-summary):not(.stock-status){
    font-size:.78rem;
    margin:0 0 5px;
  }
  .shop-grid-balanced .shop-card > strong{font-size:.92rem;}
  .shop-grid-balanced .stock-status{
    justify-content:flex-start;
    font-size:.7rem !important;
    min-height:18px;
    margin:7px 0 8px !important;
  }
  .shop-grid-balanced .add-to-basket{
    margin-top:auto;
    min-height:38px;
    padding:9px 10px;
    font-size:.7rem;
  }
  .merch-head,.merch-grid{grid-column:1 / -1;}
}

.featured-purchase-controls{
  display:grid;
  gap:12px;
  width:min(100%,280px);
  margin-top:4px;
}
.product-quantity{
  width:142px;
  display:grid;
  grid-template-columns:42px 1fr 42px;
  align-items:center;
  border:1px solid rgba(199,163,90,.42);
  background:rgba(7,19,35,.4);
}
.product-quantity button{
  height:46px;
  border:0;
  background:transparent;
  color:var(--cream);
  font-size:1.2rem;
  cursor:pointer;
}
.product-quantity button:hover{background:rgba(199,163,90,.10);color:var(--gold);}
.product-quantity button:disabled{opacity:.35;cursor:not-allowed;}
.product-quantity-value{text-align:center;font-weight:800;color:var(--cream);}
.shop-card-featured .add-to-basket{
  width:100%;
  min-height:48px;
  background:linear-gradient(90deg,#d8ad50,#efcf79);
  border:1px solid #dfbc65;
  color:#071323;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.shop-card-featured .add-to-basket:hover{filter:brightness(1.05);transform:translateY(-1px);}

@media(max-width:1240px){
  .featured-purchase-controls{margin-inline:auto;}
}

/* V6.3 — spacious shop layout: flagship first, equal supporting cards */
@media (min-width:1001px){
  .distillery-store.shop-layout{
    grid-template-columns:minmax(0,1fr) minmax(300px,350px);
    gap:34px;
    align-items:start;
  }
  .store-products{
    display:grid;
    grid-template-columns:1fr;
    gap:24px;
    min-width:0;
  }
  .store-section-head,
  .shop-card-featured,
  .shop-grid-balanced,
  .merch-head,
  .merch-grid{
    grid-column:1 !important;
    grid-row:auto !important;
  }
  .shop-card-featured{
    min-height:560px;
    height:auto;
    padding:34px;
    grid-template-columns:minmax(250px,.9fr) minmax(340px,1.1fr);
    gap:42px;
    align-items:center;
    overflow:hidden;
  }
  .shop-card-featured .shop-bottle-wrap{
    min-height:490px;
    height:490px;
  }
  .shop-card-featured .shop-bottle-wrap img{max-height:455px;}
  .shop-card-featured .shop-copy h2{
    font-size:clamp(3.5rem,5vw,5.8rem);
    line-height:.9;
    max-width:560px;
  }
  .shop-grid-balanced{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:repeat(2,560px) !important;
    gap:24px;
    height:auto !important;
  }
  .shop-grid-balanced .shop-card{
    min-height:560px !important;
    height:560px !important;
    padding:24px !important;
    display:flex;
    flex-direction:column;
    text-align:center;
    overflow:hidden;
  }
  .shop-grid-balanced .shop-bottle-wrap{
    min-height:285px;
    height:285px;
    margin:0 0 20px;
    padding:16px;
  }
  .shop-grid-balanced .shop-bottle-wrap img{max-height:255px;}
  .shop-grid-balanced .shop-card h2{
    min-height:2.15em;
    display:flex;
    align-items:flex-start;
    justify-content:center;
    font-size:clamp(1.7rem,2.1vw,2.25rem) !important;
    line-height:1.05;
    margin:0 0 12px;
  }
  .shop-grid-balanced .product-summary{
    min-height:3em;
    font-size:.98rem;
    line-height:1.5;
    margin:0 0 12px;
  }
  .shop-grid-balanced .shop-card > p:not(.product-summary):not(.stock-status){
    font-size:.95rem;
    margin:0 0 8px;
  }
  .shop-grid-balanced .shop-card > strong{font-size:1.08rem;}
  .shop-grid-balanced .stock-status{
    justify-content:center;
    font-size:.78rem !important;
    min-height:22px;
    margin:10px 0 12px !important;
  }
  .shop-grid-balanced .add-to-basket{
    margin-top:auto;
    min-height:48px;
    padding:12px 14px;
    font-size:.78rem;
  }
  .store-basket{position:sticky;top:110px;}
}

@media (min-width:1001px) and (max-width:1220px){
  .distillery-store.shop-layout{
    grid-template-columns:minmax(0,1fr) 300px;
    gap:24px;
  }
  .shop-card-featured{
    grid-template-columns:minmax(210px,.85fr) minmax(280px,1.15fr);
    gap:28px;
    padding:28px;
  }
  .shop-grid-balanced{
    grid-template-rows:repeat(2,520px) !important;
  }
  .shop-grid-balanced .shop-card{
    min-height:520px !important;
    height:520px !important;
  }
  .shop-grid-balanced .shop-bottle-wrap{
    min-height:250px;
    height:250px;
  }
  .shop-grid-balanced .shop-bottle-wrap img{max-height:225px;}
}

/* V6.4 — restore complete controls on spacious supporting gin cards */
@media (min-width:1001px){
  .shop-grid-balanced{
    grid-template-rows:repeat(2,650px) !important;
  }
  .shop-grid-balanced .shop-card{
    min-height:650px !important;
    height:650px !important;
    overflow:visible !important;
  }
  .shop-grid-balanced .shop-bottle-wrap{
    min-height:250px;
    height:250px;
    flex:0 0 250px;
  }
  .shop-grid-balanced .shop-bottle-wrap img{
    max-height:225px;
  }
  .shop-grid-balanced .stock-status{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    margin:10px 0 12px !important;
  }
  .shop-grid-balanced .add-to-basket{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100%;
    margin-top:auto;
    flex:0 0 auto;
  }
}

@media (min-width:1001px) and (max-width:1220px){
  .shop-grid-balanced{
    grid-template-rows:repeat(2,620px) !important;
  }
  .shop-grid-balanced .shop-card{
    min-height:620px !important;
    height:620px !important;
  }
  .shop-grid-balanced .shop-bottle-wrap{
    min-height:225px;
    height:225px;
    flex-basis:225px;
  }
  .shop-grid-balanced .shop-bottle-wrap img{max-height:200px;}
}
