/* Summer Sky Sale landing page */
:root{
  --sky-bg:#05070f;
  --sky-navy:#050d1f;
  --sky-deep:#071428;
  --sky-gold:#d4af37;
  --sky-gold-light:#f0d78c;
  --sky-white:#f7f7f7;
  --sky-muted:#9aacbe;
}

body.theme-sky-sale{
  background:var(--sky-bg);
  color:var(--sky-white);
}

/* Header — reference layout: nav left, icons right, no logo */
.sky-header{
  position:fixed;
  top:0;left:0;right:0;
  z-index:40;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:16px;
  padding:12px clamp(20px,4vw,56px);
  background:rgba(5,7,15,.72);
  border-bottom:1px solid rgba(212,175,55,.12);
  backdrop-filter:blur(14px);
  transition:background .35s,border-color .35s,box-shadow .35s;
}
.sky-header--scrolled{
  background:rgba(5,7,15,.94);
  border-bottom-color:rgba(212,175,55,.22);
  box-shadow:0 8px 32px rgba(0,0,0,.4);
}
.theme-sky-sale .menu-button{
  display:none;
  grid-column:1;
  width:38px;height:38px;
  flex-direction:column;justify-content:center;align-items:center;gap:5px;
  background:rgba(5,7,15,.55);
  border:1px solid rgba(212,175,55,.35);
  border-radius:50%;cursor:pointer;padding:0;
  justify-self:start;
}
.theme-sky-sale .menu-button span:not(.sr-only){
  display:block;width:14px;height:1px;background:var(--sky-gold-light);
}
.sky-header-nav{
  display:flex;align-items:center;gap:clamp(14px,2.2vw,34px);
  justify-self:start;grid-column:1;
}
.sky-header-nav a{
  font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;
  color:var(--sky-white);text-decoration:none;
  transition:color .25s;
}
.sky-header-nav a:hover,.sky-header-nav a.is-active{color:var(--sky-gold)}
.sky-header-brand{
  justify-self:center;grid-column:2;
  display:flex;align-items:center;justify-content:center;
  line-height:0;text-decoration:none;
  transition:opacity .25s,transform .25s;
}
.sky-header-brand:hover{opacity:.92;transform:scale(1.02)}
.sky-header-brand img{
  height:clamp(64px,7.5vw,92px);
  width:auto;max-width:min(380px,52vw);
  object-fit:contain;
  display:block;
}
.sky-header-actions{
  display:flex;align-items:center;gap:clamp(10px,1.6vw,18px);
  justify-self:end;grid-column:3;
}
.sky-icon-btn{
  position:relative;
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;
  color:var(--sky-white);
  background:transparent;border:none;border-radius:50%;
  cursor:pointer;text-decoration:none;
  transition:color .25s,background .25s;
}
.sky-icon-btn:hover{color:var(--sky-gold);background:rgba(212,175,55,.08)}
.theme-sky-sale .cart-trigger.sky-cart-btn span.sky-cart-count{
  display:none;
  position:absolute;top:-2px;right:-4px;
  min-width:16px;height:16px;padding:0 4px;
  margin:0;
  font-size:9px;font-weight:700;line-height:16px;text-align:center;
  color:#05070f;background:var(--sky-gold);
  border:none;border-radius:999px;
  box-shadow:0 0 0 2px rgba(5,7,15,.85);
}
.theme-sky-sale .cart-trigger.sky-cart-btn span.sky-cart-count.is-visible{display:inline-grid;place-items:center}
.theme-sky-sale .sky-search.header-search{
  position:relative;width:36px;height:36px;margin:0;
  border:none;overflow:hidden;
  transition:width .3s ease;
}
.theme-sky-sale .sky-search.header-search:focus-within{width:min(220px,42vw)}
.theme-sky-sale .sky-search .sky-search-icon{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  color:var(--sky-white);pointer-events:none;
}
.theme-sky-sale .sky-search:focus-within .sky-search-icon{color:var(--sky-gold)}
.theme-sky-sale .sky-search input{
  width:100%;height:100%;
  padding:0 32px 0 12px;
  background:transparent;border:none;border-bottom:1px solid transparent;
  color:var(--sky-white);font-size:11px;letter-spacing:.06em;
  opacity:0;transition:opacity .25s,border-color .25s;
}
.theme-sky-sale .sky-search:focus-within input{opacity:1;border-bottom-color:rgba(212,175,55,.4)}
.theme-sky-sale .sky-search .search-clear{
  right:4px;color:var(--sky-muted);
}
.theme-sky-sale .sky-header .main-nav{
  position:absolute;top:100%;left:0;right:0;
  display:flex;flex-direction:column;align-items:flex-start;
  padding:24px clamp(20px,4vw,56px);gap:18px;
  background:rgba(5,7,15,.97);
  border-bottom:1px solid rgba(212,175,55,.2);
  opacity:0;visibility:hidden;transform:translateY(-8px);transition:.2s;
}
.theme-sky-sale .sky-header .main-nav.open{opacity:1;visibility:visible;transform:translateY(0)}
.theme-sky-sale .sky-header .main-nav a{
  font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--sky-white);
}

/* Hero */
.sky-hero{
  position:relative;
  margin-top:84px;
  height:clamp(500px,52vw,820px);
  overflow:hidden;
  background:var(--sky-bg);
}
.sky-hero-media{
  position:absolute;inset:0;z-index:0;overflow:hidden;
  animation:skyBottleFloat 9s ease-in-out infinite;
}
.sky-hero-image{
  width:100%;height:100%;
  object-fit:cover;
  object-position:50% 16%;
  display:block;
  filter:brightness(1.03) contrast(1.04) saturate(1.04);
  transform:scale(1.14);
  transform-origin:50% 13%;
}
.sky-hero-overlay{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(5,7,15,.2) 0%,transparent 8%,transparent 72%,rgba(5,7,15,.25) 100%),
    linear-gradient(90deg,rgba(5,7,15,.1) 0%,transparent 10%,transparent 90%,rgba(5,7,15,.08) 100%);
}
/* Hide baked-in nav/icons painted on the artwork — keep moon visible */
.sky-hero-ui-clear{
  position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    linear-gradient(180deg,#05070f 0%,rgba(5,7,15,.96) 42%,transparent 100%) top left/100% clamp(40px,9%,80px) no-repeat,
    linear-gradient(90deg,#05070f 0%,rgba(5,7,15,.94) 62%,rgba(5,7,15,.35) 82%,transparent 100%) top left/100% clamp(40px,9%,80px) no-repeat,
    radial-gradient(ellipse 90% 120% at 100% 0%,#05070f 0%,rgba(5,7,15,.88) 38%,transparent 62%) top right/min(200px,24%) clamp(32px,7%,64px) no-repeat;
}
.sky-hero-fx{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}

/* Moon glow + moonlight on ocean */
.sky-hero-moon-glow{
  position:absolute;top:7%;right:6%;
  width:min(150px,18vw);height:min(150px,18vw);
  border-radius:50%;
  background:radial-gradient(circle,rgba(247,247,247,.5) 0%,rgba(247,247,247,.15) 32%,transparent 68%);
  animation:skyMoonGlow 6s ease-in-out infinite;
}
.sky-hero-moonbeam{
  position:absolute;top:14%;right:10%;
  width:min(220px,22vw);height:48%;
  background:linear-gradient(180deg,rgba(247,247,247,.22) 0%,rgba(247,247,247,.1) 35%,rgba(212,175,55,.06) 65%,transparent 100%);
  transform:skewX(-6deg);
  filter:blur(10px);
  opacity:.65;
  animation:skyMoonbeam 8s ease-in-out infinite;
}

/* Clouds */
.sky-hero-cloud{
  position:absolute;border-radius:50%;
  background:radial-gradient(ellipse,rgba(255,255,255,.09) 0%,rgba(255,255,255,.03) 45%,transparent 72%);
  filter:blur(18px);
  opacity:.7;
}
.sky-hero-cloud--1{top:8%;left:12%;width:28%;height:12%;animation:skyCloudDrift 52s linear infinite}
.sky-hero-cloud--2{top:14%;left:45%;width:22%;height:10%;animation:skyCloudDrift 68s linear infinite reverse;animation-delay:-12s}
.sky-hero-cloud--3{top:6%;right:18%;width:20%;height:9%;animation:skyCloudDrift 58s linear infinite;animation-delay:-24s}

/* Ocean shimmer */
.sky-hero-shimmer{
  position:absolute;bottom:12%;left:18%;right:18%;height:22%;
  background:linear-gradient(105deg,transparent 0%,rgba(247,247,247,.06) 25%,rgba(212,175,55,.1) 50%,rgba(247,247,247,.05) 75%,transparent 100%);
  background-size:200% 100%;
  animation:skyOceanShimmer 7s ease-in-out infinite;
  opacity:.75;
}

/* Stars */
.sky-hero-stars{position:absolute;inset:0}
.sky-star{
  position:absolute;border-radius:50%;
  background:var(--sky-white);
  box-shadow:0 0 6px rgba(247,247,247,.8);
  animation:skyStarTwinkle var(--twinkle-dur,4s) ease-in-out infinite;
  animation-delay:var(--twinkle-delay,0s);
}

/* Hotspot over artwork CTA */
.sky-hero-inner{position:absolute;inset:0;z-index:3;pointer-events:none}
.sky-hero-hotspot{
  position:absolute;left:50%;top:61%;
  transform:translate(-50%,-50%);
  width:min(300px,78vw);height:56px;
  pointer-events:auto;border-radius:2px;
  transition:box-shadow .3s;
}
.sky-hero-hotspot:hover{
  box-shadow:0 0 36px rgba(212,175,55,.5),0 0 12px rgba(212,175,55,.35);
}
.sky-hero-hotspot:focus-visible{
  outline:2px solid var(--sky-gold-light);outline-offset:3px;
}
.sky-btn-gold{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:54px;padding:0 36px;
  background:var(--sky-gold);
  color:#05070f;
  font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
  border:1px solid var(--sky-gold-light);
  transition:transform .25s,box-shadow .25s;
}
.sky-btn-gold:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 32px rgba(212,175,55,.45),0 0 24px rgba(212,175,55,.25);
}

/* Reveal animations */
.sky-reveal{opacity:0;transform:translateY(24px);transition:opacity .8s ease,transform .8s ease}
.sky-reveal.is-visible{opacity:1;transform:translateY(0)}

@keyframes skyMoonGlow{0%,100%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
@keyframes skyMoonbeam{0%,100%{opacity:.5;transform:skewX(-6deg) translateY(0)}50%{opacity:.8;transform:skewX(-6deg) translateY(6px)}}
@keyframes skyOceanShimmer{0%,100%{background-position:0% 50%;opacity:.55}50%{background-position:100% 50%;opacity:.9}}
@keyframes skyStarTwinkle{0%,100%{opacity:.2;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}
@keyframes skyCloudDrift{0%{transform:translateX(-4%)}50%{transform:translateX(4%)}100%{transform:translateX(-4%)}}
@keyframes skyBottleFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@keyframes skyBadgeGlow{0%,100%{box-shadow:0 0 0 rgba(212,175,55,0)}50%{box-shadow:0 0 24px rgba(212,175,55,.35)}}

/* Free shipping banner */
.sky-shipping{padding:0 5vw;margin-top:-1px;position:relative;z-index:5}
.sky-shipping-inner{
  display:flex;align-items:center;justify-content:center;gap:14px;
  max-width:1280px;margin:0 auto;
  padding:18px 24px;
  background:rgba(5,7,15,.75);
  border:1px solid rgba(212,175,55,.28);
  backdrop-filter:blur(12px);
}
.sky-shipping-icon{font-size:22px}
.sky-shipping p{margin:0;font-size:12px;letter-spacing:.06em;color:var(--sky-muted)}
.sky-shipping strong{color:var(--sky-gold-light);font-weight:600}

/* Section shared */
.sky-kicker{margin:0 0 10px;font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--sky-gold)}
.sky-section-head{text-align:center;max-width:720px;margin:0 auto 32px}
.sky-section-head h2{margin:0 0 10px;font-family:var(--serif);font-size:clamp(30px,4.5vw,48px);font-weight:400;color:var(--sky-gold-light)}
.sky-section-copy{margin:0;font-family:var(--serif);font-size:clamp(16px,2vw,19px);color:var(--sky-muted);line-height:1.5}
.sky-section-foot{margin:28px 0 0;text-align:center}

/* Summer signatures — shop by vibe banner */
.sky-landing-vibes{
  padding:clamp(32px,4vw,48px) 5vw;
  background:var(--sky-bg);
  border-bottom:1px solid rgba(212,175,55,.1);
}
.sky-vibe-banner{
  position:relative;
  max-width:1280px;
  margin:0 auto;
  border:1px solid rgba(212,175,55,.22);
  border-radius:6px;
  overflow:hidden;
  background:#0a1628;
  box-shadow:0 16px 48px rgba(0,0,0,.35);
}
.sky-vibe-banner-img{
  display:block;
  width:100%;
  height:auto;
}
.sky-vibe-banner-hotspots{
  position:absolute;inset:0;
  display:grid;
  grid-template-columns:repeat(5,1fr);
}
.sky-vibe-banner-hit{
  width:100%;height:100%;
  padding:0;margin:0;border:0;
  background:transparent;
  cursor:pointer;
  transition:background .25s,box-shadow .25s;
}
.sky-vibe-banner-hit:hover{
  background:rgba(212,175,55,.08);
  box-shadow:inset 0 0 0 1px rgba(212,175,55,.35);
}
.sky-vibe-banner-hit:focus-visible{
  outline:2px solid var(--sky-gold-light);
  outline-offset:-4px;
}

/* Featured bestsellers carousel */
.sky-bestsellers{padding:64px 5vw 56px;background:var(--sky-bg)}
.sky-featured{padding:64px 5vw 56px;background:var(--sky-bg)}
.sky-carousel-wrap{
  position:relative;max-width:1280px;margin:0 auto;
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;
}
.sky-carousel{
  overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;-ms-overflow-style:none;
  padding:8px 4px 16px;
}
.sky-carousel::-webkit-scrollbar{display:none}
.sky-carousel-track{
  display:flex;gap:18px;width:max-content;
}
.sky-carousel-track .summer-product-card{
  flex:0 0 min(260px,78vw);
  scroll-snap-align:start;
  animation:skyCarouselIn .7s ease both;
}
.sky-carousel-btn{
  width:44px;height:44px;border-radius:50%;
  border:1px solid rgba(212,175,55,.4);
  background:rgba(5,7,15,.7);
  color:var(--sky-gold-light);
  font-size:28px;line-height:1;cursor:pointer;
  transition:background .2s,border-color .2s;
}
.sky-carousel-btn:hover{background:rgba(212,175,55,.15);border-color:var(--sky-gold)}
@keyframes skyCarouselIn{from{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}

/* Shop by vibe (legacy) */
.sky-vibes{padding:64px 5vw 56px;background:linear-gradient(180deg,var(--sky-deep) 0%,var(--sky-bg) 100%)}
.sky-vibes-head{text-align:center;margin-bottom:36px}
.sky-vibes-head h2{margin:0;font-family:var(--serif);font-size:clamp(28px,4vw,42px);font-weight:400;color:var(--sky-gold-light);letter-spacing:.12em}
.sky-vibes-head h2 span{color:var(--sky-gold);margin:0 8px}
.sky-vibes-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;max-width:1280px;margin:0 auto}
.sky-vibe-card{
  position:relative;overflow:hidden;aspect-ratio:3/5;
  border:1px solid rgba(212,175,55,.22);background:#0a1628;
  text-align:left;cursor:pointer;padding:0;
  transition:transform .3s,border-color .3s,box-shadow .3s;
}
.sky-vibe-card:hover{transform:translateY(-4px);border-color:rgba(212,175,55,.45);box-shadow:0 16px 40px rgba(0,0,0,.4)}

/* Reviews */
.sky-reviews{padding:64px 5vw;background:var(--sky-bg);border-top:1px solid rgba(212,175,55,.1)}
.sky-reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1280px;margin:0 auto}
.sky-glass-card{
  padding:28px 24px;
  background:rgba(5,7,15,.55);
  border:1px solid rgba(212,175,55,.22);
  backdrop-filter:blur(10px);
}
.sky-review-quote{margin:0 0 16px;font-family:var(--serif);font-size:clamp(17px,2vw,20px);line-height:1.55;color:var(--sky-white);font-style:italic}
.sky-review-author{margin:0;font-size:11px;letter-spacing:.08em;color:var(--sky-gold)}

/* Countdown */
.sky-countdown{padding:56px 5vw;background:linear-gradient(180deg,var(--sky-deep) 0%,var(--sky-bg) 100%);border-top:1px solid rgba(212,175,55,.12)}
.sky-countdown-inner{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(20px,4vw,40px);align-items:center;max-width:1280px;margin:0 auto}
.sky-countdown-gift{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:rgba(212,175,55,.1);border:1px solid rgba(212,175,55,.35);font-size:28px;animation:skyBadgeGlow 3s ease-in-out infinite}
.sky-countdown-copy h2{margin:0 0 6px;font-family:var(--serif);font-size:clamp(22px,3vw,34px);font-weight:400;color:var(--sky-white);line-height:1.15}
.sky-countdown-copy p{margin:0;font-family:var(--serif);font-size:clamp(15px,1.8vw,18px);color:var(--sky-muted);font-style:italic}
.sky-countdown-timer{text-align:center}
.sky-countdown-timer>p{margin:0 0 10px;font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--sky-gold)}
.sky-countdown-digits{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.sky-countdown-digits div{min-width:58px;padding:10px 8px;background:rgba(5,7,15,.85);border:1px solid rgba(212,175,55,.28);text-align:center}
.sky-countdown-digits strong{display:block;font-family:var(--serif);font-size:22px;color:var(--sky-gold-light);line-height:1}
.sky-countdown-digits span{display:block;margin-top:4px;font-size:7px;letter-spacing:.14em;text-transform:uppercase;color:var(--sky-muted)}

/* Final CTA */
.sky-final-cta{padding:72px 5vw 80px;text-align:center;background:radial-gradient(ellipse 80% 60% at 50% 50%,rgba(15,35,71,.35) 0%,var(--sky-bg) 70%)}
.sky-final-cta-inner{max-width:640px;margin:0 auto}
.sky-final-cta .sky-section-copy{margin:0 auto 28px}

/* Summer product cards */
.theme-sky-sale .summer-product-card{
  background:linear-gradient(165deg,rgba(12,28,58,.75) 0%,rgba(6,14,32,.92) 100%);
  border:1px solid rgba(212,175,55,.18);
}
.theme-sky-sale .summer-product-card .product-image-wrap{
  background:linear-gradient(180deg,#fff 0%,#f8f6f2 100%);
  padding:20px 16px 16px;
  border-bottom:1px solid rgba(212,175,55,.12);
}
.theme-sky-sale .summer-product-card .product-image{max-width:72%;filter:none}
.theme-sky-sale .summer-scent-note{color:#8ec8ff}
.theme-sky-sale .summer-sale-tag{background:linear-gradient(135deg,#e8945a,#d45a40)}

/* Shop section */
.theme-sky-sale .shop{
  background:radial-gradient(ellipse 90% 50% at 50% 0%,rgba(15,35,71,.45) 0%,transparent 55%),linear-gradient(180deg,var(--sky-bg) 0%,#040810 100%);
  border-top:1px solid rgba(212,175,55,.14);
}
.theme-sky-sale .collection-heading h3{color:var(--sky-gold-light)}
.theme-sky-sale .collection-heading p:last-child{color:var(--sky-muted)}
.theme-sky-sale .house-catalog-group{
  background:linear-gradient(135deg,rgba(12,28,58,.96) 0%,rgba(7,16,36,.98) 100%);
  border:1px solid rgba(212,175,55,.28);
  box-shadow:0 10px 28px rgba(0,0,0,.35);
}
.theme-sky-sale .house-catalog-group.is-open{border-color:rgba(212,175,55,.38)}
.theme-sky-sale .house-catalog-header{color:var(--sky-white)}
.theme-sky-sale .house-catalog-name{color:var(--sky-gold-light)}
.theme-sky-sale .house-catalog-meta{color:var(--sky-muted)}
.theme-sky-sale .house-catalog-chevron,.theme-sky-sale .house-catalog-link,.theme-sky-sale .house-catalog-link span{color:var(--sky-gold-light)!important}
.theme-sky-sale .house-catalog-panel{background:rgba(4,10,22,.92);border-top:1px solid rgba(212,175,55,.16)}
.theme-sky-sale .house-scent-name{color:#f7f7f7}
.theme-sky-sale .house-scent-price{color:var(--sky-gold-light)}
.theme-sky-sale .house-scent-link:hover{background:rgba(212,175,55,.08);border-color:rgba(212,175,55,.28)}
.theme-sky-sale .intro,.theme-sky-sale .concierge{background:var(--sky-bg)}
.theme-sky-sale .footer{background:#040810;border-top:1px solid rgba(212,175,55,.14)}

@media(max-width:1024px){
  .sky-hero{height:clamp(440px,58vw,680px)}
  .sky-hero-image{object-position:50% 17%;transform:scale(1.16);transform-origin:50% 14%}
  .sky-hero-hotspot{top:62%;width:min(270px,82vw);height:50px}
  .sky-landing-vibes{padding:24px 18px}
  .sky-reviews-grid{grid-template-columns:1fr;max-width:480px;margin-inline:auto}
}
@media(max-width:900px){
  .sky-header{grid-template-columns:auto 1fr auto}
  .theme-sky-sale .menu-button{display:flex}
  .sky-header-nav{display:none}
  .sky-header-brand{grid-column:2}
  .sky-header-actions{grid-column:3}
  .sky-header-brand img{height:clamp(52px,14vw,72px)}
}
@media(max-width:768px){
  .sky-hero{margin-top:58px;height:clamp(380px,68vw,560px)}
  .sky-hero-image{object-position:50% 18%;transform:scale(1.18);transform-origin:50% 15%}
  .sky-hero-hotspot{top:63%;width:min(250px,86vw);height:46px}
  .sky-hero-moon-glow{top:6%;right:4%;width:min(110px,16vw);height:min(110px,16vw)}
  .sky-landing-vibes{padding:24px 18px}
  .sky-vibe-banner{border-radius:4px}
  .sky-countdown-inner{grid-template-columns:1fr;text-align:center}
  .sky-countdown-gift{margin:0 auto}
  .sky-carousel-wrap{grid-template-columns:1fr;gap:8px}
  .sky-carousel-btn{display:none}
}
@media(max-width:520px){
  .sky-vibe-banner{border-radius:4px}
  .sky-shipping-inner{flex-direction:column;text-align:center;padding:16px}
}
@media(prefers-reduced-motion:reduce){
  .sky-reveal{opacity:1;transform:none;transition:none}
  .sky-hero-media,.sky-hero-moon-glow,.sky-hero-moonbeam,.sky-hero-shimmer,.sky-hero-cloud,.sky-star,.sky-countdown-gift{animation:none}
  .sky-carousel-track .summer-product-card{animation:none}
}
