:root {
  --c-bg: #0F0B0C;
  --c-bg2: #1B1315;
  --c-rose: #B76E79;
  --c-pink: #F4C2C2;
  --c-gold: #D4AF37;
  --c-cream: #F7F1EB;
  --c-glass: rgba(255,255,255,0.06);
  --c-glass-border: rgba(255,255,255,0.1);
  --c-rose-glow: rgba(183,110,121,0.15);
  --f-display: 'Playfair Display', serif;
  --f-serif: 'Cormorant Garamond', serif;
  --f-body: 'Inter', sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html.lenis{height:auto;}
body{font-family:var(--f-body);background:var(--c-bg);color:var(--c-cream);overflow-x:hidden;-webkit-font-smoothing:antialiased;}
img{display:block;object-fit:cover;}
a{text-decoration:none;}
h1,h2,h3,h4,h5{font-family:var(--f-display);font-weight:400;}
h2{font-size:clamp(2rem,4vw,3.5rem);line-height:1.15;margin-bottom:1.5rem;color:var(--c-cream);}
h2 em{font-style:italic;color:var(--c-rose);}
.eyebrow{font-family:var(--f-serif);font-style:italic;font-size:1rem;color:var(--c-rose);margin-bottom:.8rem;display:block;letter-spacing:2px;}
.container{max-width:1440px;margin:0 auto;padding:0 5rem;}
.section{padding:8rem 0;position:relative;overflow:hidden;}
.bg2{background:var(--c-bg2);}

/* GLASS CARDS */
.glass{background:var(--c-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--c-glass-border);}

/* BTN */
.btn{display:inline-block;padding:1.1rem 2.8rem;background:transparent;border:1px solid var(--c-rose);color:var(--c-rose);font-family:var(--f-body);text-transform:uppercase;letter-spacing:2px;font-size:.7rem;text-decoration:none;transition:all .4s;cursor:pointer;position:relative;overflow:hidden;z-index:1;text-align:center;}
.btn::before{content:'';position:absolute;inset:0;background:var(--c-rose);transform:scaleX(0);transform-origin:left;transition:transform .4s ease;z-index:-1;}
.btn:hover::before{transform:scaleX(1);}
.btn:hover{color:var(--c-bg);}
.btn-gold{border-color:var(--c-gold);color:var(--c-gold);}
.btn-gold::before{background:var(--c-gold);}
.btn-solid{background:var(--c-rose);color:var(--c-bg);border-color:var(--c-rose);}
.btn-solid::before{background:rgba(255,255,255,.15);}

/* LOADER */
#loader{position:fixed;inset:0;z-index:9999;background:var(--c-bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;}
#loader-particles{position:absolute;inset:0;}
.loader-logo{font-family:var(--f-display);font-size:3rem;letter-spacing:8px;color:var(--c-cream);position:relative;z-index:2;opacity:0;animation:logoReveal 1s forwards .5s;}
.loader-logo span{color:var(--c-rose);}
.loader-line{width:0;height:1px;background:linear-gradient(to right,transparent,var(--c-rose),var(--c-gold),var(--c-rose),transparent);position:relative;z-index:2;animation:lineGrow 1.2s forwards .8s;}
.loader-sub{font-family:var(--f-serif);font-style:italic;color:var(--c-pink);font-size:.9rem;letter-spacing:4px;opacity:0;animation:logoReveal .8s forwards 1.2s;position:relative;z-index:2;}
@keyframes logoReveal{to{opacity:1;}}
@keyframes lineGrow{to{width:300px;}}
.loader-bar{width:200px;height:1px;background:rgba(255,255,255,.1);position:relative;z-index:2;overflow:hidden;margin-top:2rem;}
.loader-bar-fill{height:100%;background:linear-gradient(to right,var(--c-rose),var(--c-gold));animation:barFill 1.8s forwards;}
@keyframes barFill{to{width:100%;}}

/* HEADER */
header{position:fixed;top:0;width:100%;z-index:100;padding:1.5rem 5rem;display:flex;justify-content:space-between;align-items:center;transition:all .5s;}
header.scrolled{background:rgba(15,11,12,.92);backdrop-filter:blur(20px);padding:1rem 5rem;border-bottom:1px solid rgba(183,110,121,.15);}
.logo{font-family:var(--f-display);font-size:1.6rem;letter-spacing:5px;color:var(--c-cream);}
.logo em{color:var(--c-rose);font-style:normal;}
nav ul{display:flex;gap:2.5rem;list-style:none;}
nav a{color:rgba(247,241,235,.6);font-size:.7rem;text-transform:uppercase;letter-spacing:2px;transition:color .3s;}
nav a:hover{color:var(--c-rose);}
.header-actions{display:flex;align-items:center;gap:1.5rem;}
.icon-btn{background:none;border:none;cursor:pointer;color:var(--c-cream);font-size:1.1rem;transition:.3s;position:relative;}
.icon-btn:hover{color:var(--c-rose);}
.cart-bubble{position:absolute;top:-5px;right:-8px;background:var(--c-rose);color:#fff;font-size:.5rem;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
.mobile-toggle{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;}
.mobile-toggle span{width:26px;height:1px;background:var(--c-cream);transition:.3s;}

/* HERO */
.hero{height:100vh;display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden;}
.hero-left{display:flex;flex-direction:column;justify-content:center;padding:8rem 5rem;z-index:10;position:relative;}
.hero-right{position:relative;width:100%;height:100%;overflow:hidden;z-index:9;}
.hero-model{position:absolute;inset:0;height:100%;width:100%;overflow:hidden;}
.hero-model img{width:100%;height:100%;object-position:center center;transition:transform 1.5s cubic-bezier(.25,.46,.45,.94);}
.hero-model:hover img{transform:scale(1.05);}
.hero-tag{display:inline-flex;align-items:center;gap:.8rem;margin-bottom:2.5rem;font-size:.65rem;letter-spacing:4px;text-transform:uppercase;color:var(--c-rose);}
.hero-tag::before{content:'';width:40px;height:1px;background:var(--c-rose);}
.hero h1{font-size:clamp(3rem,6vw,5rem);line-height:1.05;margin-bottom:1.5rem;color:var(--c-cream);}
.hero h1 em{font-style:italic;color:var(--c-rose);}
.hero-sub{font-family:var(--f-serif);font-size:1.2rem;color:rgba(247,241,235,.6);line-height:1.8;margin-bottom:3rem;max-width:460px;}
.hero-btns{display:flex;gap:1.5rem;flex-wrap:wrap;}
#hero-particles{position:absolute;inset:0;z-index:8;pointer-events:none;}

/* LEGACY CATEGORY SECTION (used for skincare) */
.category-section{padding:8rem 0;border-top:1px solid rgba(255,255,255,.05);}
.category-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:4rem;}
.category-desc{max-width:500px;font-size:.9rem;color:rgba(247,241,235,.6);line-height:1.7;}

/* BRIDAL CAMPAIGN */
.bridal-campaign{height:100vh;position:relative;display:flex;align-items:center;justify-content:center;text-align:center;}
.bridal-bg{position:absolute;inset:0;}
.bridal-bg img{width:100%;height:100%;filter:brightness(.5);}
.bridal-content{position:relative;z-index:2;max-width:800px;padding:0 2rem;}
.bridal-content h2{font-size:clamp(3rem,7vw,6rem);color:var(--c-gold);margin-bottom:1rem;text-shadow:0 10px 30px rgba(0,0,0,.8);}
.bridal-content p{font-size:1.2rem;color:var(--c-cream);margin-bottom:2.5rem;font-family:var(--f-serif);font-style:italic;}

/* LUXURY COLLECTIONS */
.collection-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;}
.col-banner{position:relative;height:500px;overflow:hidden;display:flex;align-items:flex-end;padding:3rem;cursor:pointer;}
.col-banner img{position:absolute;inset:0;width:100%;height:100%;transition:transform 1s;filter:brightness(.6);}
.col-banner:hover img{transform:scale(1.05);filter:brightness(.5);}
.col-content{position:relative;z-index:2;width:100%;}
.col-content h3{font-size:2.5rem;color:var(--c-cream);margin-bottom:.5rem;}
.col-link{color:var(--c-gold);font-size:.75rem;text-transform:uppercase;letter-spacing:2px;display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;transition:.3s;}
.col-banner:hover .col-link{color:var(--c-rose);transform:translateX(10px);}

/* SALON INTERIOR */
.salon-interior{height:80vh;background-attachment:fixed;background-position:center;background-size:cover;position:relative;display:flex;align-items:center;}
.salon-overlay{position:absolute;inset:0;background:linear-gradient(to right,rgba(15,11,12,.9) 0%,rgba(15,11,12,.4) 100%);}
.salon-content{position:relative;z-index:2;max-width:600px;}

/* BOOKING EXPERIENCE */
.booking-wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;}
.booking-visual{height:100%;min-height:600px;position:relative;}
.booking-visual img{width:100%;height:100%;filter:brightness(.7);}
.booking-form{background:var(--c-glass);padding:4rem;border:1px solid var(--c-glass-border);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;}
.form-field{margin-bottom:1.5rem;}
.form-field label{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:2px;color:rgba(247,241,235,.5);margin-bottom:.8rem;}
.form-control{width:100%;background:transparent;border:none;border-bottom:1px solid rgba(183,110,121,.3);padding:.8rem 0;color:var(--c-cream);font-family:var(--f-body);font-size:1rem;outline:none;transition:.3s;}
.form-control:focus{border-color:var(--c-gold);}
select.form-control{appearance:none;cursor:pointer;}
option{background:var(--c-bg);color:#fff;}

/* EXPERTS */
.experts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;}
.expert-card{text-align:center;}
.expert-img{aspect-ratio:3/4;overflow:hidden;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.05);}
.expert-img img{width:100%;height:100%;transition:transform 1s;filter:grayscale(30%);}
.expert-card:hover .expert-img img{transform:scale(1.05);filter:grayscale(0%);}
.expert-card h3{font-size:1.4rem;color:var(--c-cream);margin-bottom:.3rem;}
.expert-role{font-family:var(--f-serif);color:var(--c-rose);font-style:italic;font-size:1rem;}

/* REELS / INSTA */
.reels-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;}
.reel-card{aspect-ratio:9/16;position:relative;overflow:hidden;cursor:pointer;}
.reel-card img{width:100%;height:100%;transition:.8s;filter:brightness(.8);}
.reel-card:hover img{transform:scale(1.05);filter:brightness(.5);}
.play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2rem;color:#fff;opacity:0;transition:.4s;}
.reel-card:hover .play-icon{opacity:1;}

/* MEMBERSHIP */
.membership-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;}
.mem-card{background:var(--c-glass);border:1px solid var(--c-glass-border);padding:4rem 3rem;text-align:center;position:relative;transition:.4s;}
.mem-card:hover{transform:translateY(-10px);border-color:var(--c-gold);box-shadow:0 20px 50px rgba(212,175,55,.1);}
.mem-card h3{font-size:1.8rem;color:var(--c-gold);margin-bottom:.5rem;}
.mem-price{font-family:var(--f-serif);font-size:3rem;color:var(--c-cream);margin-bottom:2rem;}
.mem-features{list-style:none;margin-bottom:3rem;}
.mem-features li{padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.85rem;color:rgba(247,241,235,.6);}

/* TESTIMONIALS */
.testi-slider{padding-bottom:3rem !important;}
.testi-card{background:var(--c-glass);border:1px solid var(--c-glass-border);padding:3rem;position:relative;}
.testi-stars{color:var(--c-gold);margin-bottom:1.5rem;letter-spacing:2px;}
.testi-quote{font-family:var(--f-serif);font-style:italic;font-size:1.2rem;line-height:1.7;color:var(--c-cream);margin-bottom:2rem;}
.testi-author{display:flex;align-items:center;gap:1rem;}
.testi-avatar{width:50px;height:50px;border-radius:50%;overflow:hidden;border:2px solid var(--c-rose);}
.testi-info strong{display:block;color:var(--c-rose);font-size:.9rem;}
.testi-info span{font-size:.7rem;color:rgba(255,255,255,.4);letter-spacing:1px;}

/* WA BTN */
.wa-btn{position:fixed;bottom:2rem;right:2rem;width:62px;height:62px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:1000;background:rgba(183,110,121,.2);border:1px solid rgba(183,110,121,.5);backdrop-filter:blur(15px);box-shadow:0 8px 30px rgba(183,110,121,.3);transition:.4s;}
.wa-btn::before{content:'';position:absolute;inset:-5px;border-radius:50%;border:1px solid rgba(183,110,121,.4);animation:waPulse 2s infinite;}
@keyframes waPulse{0%{transform:scale(1);opacity:1;}100%{transform:scale(1.4);opacity:0;}}
.wa-btn svg{width:28px;height:28px;fill:var(--c-rose);}
.wa-btn:hover{transform:scale(1.1);background:rgba(183,110,121,.4);}
.wa-tip{position:absolute;right:75px;background:rgba(15,11,12,.95);color:var(--c-pink);padding:.6rem 1.2rem;border-radius:4px;font-size:.65rem;letter-spacing:2px;text-transform:uppercase;border:1px solid rgba(183,110,121,.3);opacity:0;pointer-events:none;transition:.3s;white-space:nowrap;}
.wa-btn:hover .wa-tip{opacity:1;right:80px;}

/* SWIPER CUSTOM */
.swiper-button-next,.swiper-button-prev{width:50px!important;height:50px!important;background:var(--c-bg2);border-radius:50%;border:1px solid var(--c-glass-border);color:var(--c-rose)!important;}
.swiper-button-next::after,.swiper-button-prev::after{font-size:1.2rem!important;}
.swiper-pagination-bullet{background:var(--c-rose)!important;opacity:.4!important;}
.swiper-pagination-bullet-active{opacity:1!important;background:var(--c-gold)!important;}

/* ARTIST VISUAL GRIDS (used for skincare) */
.service-visual-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem;}
.svg-item{position:relative;overflow:hidden;aspect-ratio:3/4;cursor:pointer;}
.svg-item img{width:100%;height:100%;transition:transform 1s cubic-bezier(.25,.46,.45,.94), filter .5s;filter:brightness(0.7);}
.svg-item:hover img{transform:scale(1.08);filter:brightness(0.95);}
.svg-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(15,11,12,.9) 0%,transparent 60%);display:flex;flex-direction:column;justify-content:flex-end;padding:2rem;pointer-events:none;}
.svg-overlay h3{font-size:1.5rem;color:var(--c-cream);margin-bottom:.3rem;}
.svg-overlay p{font-size:.7rem;color:var(--c-rose);text-transform:uppercase;letter-spacing:2px;}
.svg-item-wide{grid-column:span 2;}

/* MASONRY GALLERY */
.gallery-masonry-huge{columns:4;column-gap:1.5rem;}
.gm-item{break-inside:avoid;margin-bottom:1.5rem;position:relative;overflow:hidden;cursor:pointer;border:1px solid rgba(255,255,255,.05);}
.gm-item img{width:100%;display:block;transition:transform 1s, filter .5s;filter:brightness(0.85);}
.gm-item:hover img{transform:scale(1.05);filter:brightness(1.1);}

/* OLD B/A (kept for compatibility) */
.ba-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;margin-top:4rem;}
.ba-card{position:relative;overflow:hidden;cursor:col-resize;aspect-ratio:4/5;}
.ba-before,.ba-after{position:absolute;inset:0;overflow:hidden;}
.ba-before img,.ba-after img{width:100%;height:100%;}
.ba-after{clip-path:inset(0 50% 0 0);}
.ba-before img{filter:saturate(0.4) contrast(0.9) brightness(0.85);}
.ba-handle{position:absolute;top:0;bottom:0;left:50%;width:2px;background:var(--c-gold);z-index:5;transform:translateX(-50%);}
.ba-handle::before{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border-radius:50%;background:var(--c-bg);border:1px solid var(--c-gold);color:var(--c-gold);display:flex;align-items:center;justify-content:center;}
.ba-labels{position:absolute;top:1rem;width:100%;display:flex;justify-content:space-between;padding:0 1.5rem;z-index:6;}
.ba-labels span{background:rgba(0,0,0,.7);color:#fff;font-size:.65rem;padding:.3rem .8rem;letter-spacing:2px;text-transform:uppercase;}

/* ================================================
   SERVICE MEGA SECTIONS — NEW EXPANDED DESIGN
================================================ */

/* Cinematic Service Intro Banner */
.svc-intro-banner {
  position: relative;
  height: 72vh;
  overflow: hidden;
}
.svc-intro-banner > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(0.35);
  transform: scale(1.05);
  transition: transform 8s ease;
}
.svc-intro-banner:hover > img { transform: scale(1.0); }
.svc-intro-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(15,11,12,.98) 0%, rgba(15,11,12,.5) 50%, rgba(15,11,12,.1) 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: 5rem;
}
.svc-intro-content {
  display: flex;
  align-items: flex-end;
  gap: 3rem;
  margin-bottom: 3rem;
}
.svc-number {
  font-family: var(--f-display);
  font-size: 9rem;
  color: rgba(255,255,255,.05);
  line-height: 1;
  position: relative;
  bottom: -1rem;
  flex-shrink: 0;
  letter-spacing: -5px;
}
.svc-intro-desc {
  font-family: var(--f-serif);
  font-size: 1.1rem;
  color: rgba(247,241,235,.65);
  line-height: 1.8;
  max-width: 580px;
  margin-top: 1rem;
}
.svc-intro-stats {
  display: flex;
  gap: 5rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(212,175,55,.2);
}
.svc-stat { display: flex; flex-direction: column; gap: .3rem; }
.svc-stat-n {
  font-family: var(--f-display);
  font-size: 2.4rem;
  color: var(--c-gold);
  line-height: 1;
}
.svc-stat-l {
  font-size: .65rem;
  text-transform: uppercase;
  letter-spacing: 2.5px;
  color: rgba(247,241,235,.4);
}

/* Service Block Rows */
.svc-block-row {
  padding: 7rem 0;
  border-top: 1px solid rgba(255,255,255,.04);
}
.svc-block-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7rem;
  align-items: center;
}
.svc-block-img {
  position: relative;
  aspect-ratio: 3/4;
  overflow: hidden;
}
.svc-block-img img {
  width: 100%;
  height: 100%;
  transition: transform 1.4s cubic-bezier(.25,.46,.45,.94), filter .6s;
  filter: brightness(0.82);
}
.svc-block-img:hover img {
  transform: scale(1.06);
  filter: brightness(1.0);
}
.svc-img-badge {
  position: absolute;
  top: 1.5rem;
  left: 1.5rem;
  background: var(--c-gold);
  color: #000;
  font-size: .6rem;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  padding: .45rem 1rem;
  font-family: var(--f-body);
  font-weight: 500;
  z-index: 2;
}
.svc-block-info {
  display: flex;
  flex-direction: column;
  gap: 1.8rem;
}
.svc-h3 {
  font-family: var(--f-display);
  font-size: clamp(2rem, 3.2vw, 2.8rem);
  line-height: 1.15;
  color: var(--c-cream);
  margin-bottom: 0;
}
.svc-h3 em { font-style: italic; color: var(--c-rose); }
.svc-block-info > p {
  font-family: var(--f-serif);
  font-size: 1.05rem;
  color: rgba(247,241,235,.58);
  line-height: 1.85;
}

/* Service Tags */
.svc-tags {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}
.svc-tag {
  display: inline-block;
  padding: .45rem 1.05rem;
  border: 1px solid rgba(255,255,255,.1);
  color: rgba(247,241,235,.6);
  font-size: .65rem;
  letter-spacing: .8px;
  border-radius: 30px;
  transition: all .3s;
  cursor: default;
  font-family: var(--f-body);
}
.svc-tag:hover {
  border-color: var(--c-rose);
  color: var(--c-rose);
  background: rgba(183,110,121,.08);
}
.svc-tag.gold {
  border-color: rgba(212,175,55,.35);
  color: var(--c-gold);
  background: rgba(212,175,55,.06);
}
.svc-tag.gold:hover { background: rgba(212,175,55,.14); }
.svc-tag.rose {
  border-color: rgba(183,110,121,.35);
  color: var(--c-pink);
  background: rgba(183,110,121,.07);
}
.svc-tag.rose:hover { background: rgba(183,110,121,.15); }

/* CTA Row */
.svc-cta-row {
  display: flex;
  align-items: center;
  gap: 2.5rem;
  margin-top: .3rem;
}
.svc-price {
  font-family: var(--f-serif);
  font-size: 1rem;
  color: rgba(247,241,235,.45);
}
.svc-price strong {
  font-size: 1.7rem;
  color: var(--c-gold);
  font-family: var(--f-display);
  font-weight: 400;
}

/* Full-width row (eye makeup, treatments) */
.svc-full-row {
  padding: 7rem 0;
  border-top: 1px solid rgba(255,255,255,.04);
}

/* Mini Cards Grid */
.svc-mini-grid {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 1rem;
  margin-bottom: 4rem;
}
.svc-mini-card {
  background: var(--c-glass);
  border: 1px solid var(--c-glass-border);
  overflow: hidden;
  transition: all .4s cubic-bezier(.25,.46,.45,.94);
  cursor: pointer;
}
.svc-mini-card:hover {
  border-color: rgba(183,110,121,.4);
  transform: translateY(-8px);
  box-shadow: 0 20px 50px rgba(0,0,0,.5);
}
.svc-mini-img {
  aspect-ratio: 1/1;
  overflow: hidden;
}
.svc-mini-img img {
  width: 100%;
  height: 100%;
  transition: transform .9s cubic-bezier(.25,.46,.45,.94);
  filter: brightness(0.65) grayscale(25%);
}
.svc-mini-card:hover .svc-mini-img img {
  transform: scale(1.12);
  filter: brightness(0.9) grayscale(0%);
}
.svc-mini-body { padding: .8rem .6rem; text-align: center; }
.svc-mini-body h4 {
  font-size: .72rem;
  color: var(--c-cream);
  margin-bottom: .25rem;
  font-family: var(--f-body);
  font-weight: 400;
  line-height: 1.3;
}
.svc-mini-body p {
  font-size: .6rem;
  color: var(--c-rose);
  letter-spacing: .8px;
}

/* Add-on Strip */
.svc-addon-strip {
  background: rgba(212,175,55,.04);
  border: 1px solid rgba(212,175,55,.15);
  padding: 2.5rem 3rem;
  display: flex;
  align-items: flex-start;
  gap: 3rem;
  flex-wrap: wrap;
  margin-top: 3rem;
}
.svc-addon-title {
  font-family: var(--f-display);
  font-size: 1.05rem;
  color: var(--c-gold);
  white-space: nowrap;
  min-width: 200px;
  padding-top: .2rem;
}
.svc-addon-pills {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}
.svc-addon-pills span {
  padding: .4rem 1rem;
  background: rgba(212,175,55,.05);
  border: 1px solid rgba(212,175,55,.18);
  color: rgba(247,241,235,.55);
  font-size: .62rem;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  transition: .3s;
  cursor: default;
  font-family: var(--f-body);
}
.svc-addon-pills span:hover {
  background: rgba(212,175,55,.12);
  color: var(--c-gold);
  border-color: rgba(212,175,55,.4);
}

/* Two-column treatment grid */
.svc-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5rem;
  margin-bottom: 4rem;
}
.svc-col-block { display: flex; flex-direction: column; gap: 1.5rem; }
.svc-col-label {
  font-family: var(--f-display);
  font-size: 1.3rem;
  color: var(--c-cream);
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(212,175,55,.15);
}

/* ================================================
   CINEMATIC BEFORE / AFTER MEGA SECTIONS
================================================ */
.ba-mega-section {
  position: relative;
  background: var(--c-bg);
  overflow: hidden;
  border-top: 1px solid rgba(183,110,121,.12);
}
.ba-particles {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}
.ba-mega-header {
  text-align: center;
  padding: 6rem 0 3rem;
  position: relative;
  z-index: 2;
}
.ba-mega-header h2 { margin-bottom: 0; }
.ba-mega-header p {
  font-family: var(--f-serif);
  font-size: 1.05rem;
  color: rgba(247,241,235,.45);
  font-style: italic;
  margin-top: 1rem;
}

/* Comparison Slider */
.ba-mega-wrap { position: relative; z-index: 2; }
.ba-mega-card {
  position: relative;
  width: 100%;
  height: 82vh;
  overflow: hidden;
  cursor: col-resize;
  user-select: none;
}
.ba-mega-before,
.ba-mega-after {
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.ba-mega-before img,
.ba-mega-after img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}

/* CSS filter to simulate before state */
.ba-before-img {
  filter: grayscale(80%) brightness(0.58) contrast(1.12) sepia(20%);
}
/* CSS filter to simulate after state — luxury glow */
.ba-after-img {
  filter: brightness(1.1) saturate(1.4) contrast(1.06);
}
/* Custom nail after */
.ba-nail-after {
  filter: brightness(1.05) saturate(1.6) contrast(1.08) hue-rotate(-5deg);
}
/* Custom hair after */
.ba-hair-after {
  filter: brightness(1.12) saturate(1.5) contrast(1.05) hue-rotate(5deg);
}

.ba-mega-after {
  clip-path: inset(0 50% 0 0);
}
/* Soft pink glow on after side */
.ba-mega-after::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 50%, rgba(183,110,121,.12));
  pointer-events: none;
}

/* Badges */
.ba-mega-badge {
  position: absolute;
  bottom: 3.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  background: rgba(15,11,12,.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,.1);
  padding: 1rem 1.6rem;
  z-index: 5;
}
.ba-badge-before { left: 2.5rem; }
.ba-badge-after { right: 2.5rem; }
.ba-badge-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: rgba(255,255,255,.3);
  flex-shrink: 0;
}
.ba-mega-badge strong {
  display: block;
  font-size: .62rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--c-cream);
  font-family: var(--f-body);
  margin-bottom: .3rem;
}
.ba-mega-badge small {
  font-size: .58rem;
  color: rgba(247,241,235,.38);
  letter-spacing: 1px;
}

/* Draggable Handle */
.ba-mega-handle {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 3px;
  background: linear-gradient(to bottom, transparent 5%, var(--c-gold) 20%, var(--c-gold) 80%, transparent 95%);
  z-index: 6;
  cursor: col-resize;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ba-mega-knob {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: var(--c-bg);
  border: 2px solid var(--c-gold);
  color: var(--c-gold);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
  cursor: col-resize;
  box-shadow: 0 0 35px rgba(212,175,55,.45), 0 0 70px rgba(212,175,55,.2);
  transition: transform .3s, box-shadow .3s;
  flex-shrink: 0;
}
.ba-mega-handle:hover .ba-mega-knob {
  transform: translate(-50%,-50%) scale(1.12);
  box-shadow: 0 0 50px rgba(212,175,55,.6), 0 0 100px rgba(212,175,55,.25);
}
.ba-mega-line { display: none; }

/* Bottom gradient fade */
.ba-mega-gradient {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 25%;
  background: linear-gradient(to top, var(--c-bg), transparent);
  pointer-events: none;
  z-index: 4;
}

/* Info strip below each B/A */
.ba-mega-info {
  padding: 4rem 0 5rem;
  background: var(--c-bg2);
}
.ba-info-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5rem;
}
.ba-info-card {
  text-align: center;
  padding: 2.5rem 1.5rem;
  background: var(--c-glass);
  border: 1px solid var(--c-glass-border);
  transition: all .4s;
}
.ba-info-card:hover {
  border-color: rgba(183,110,121,.3);
  transform: translateY(-6px);
  box-shadow: 0 18px 45px rgba(0,0,0,.4);
}
.ba-info-icon { font-size: 2.2rem; margin-bottom: 1rem; }
.ba-info-card h4 {
  font-size: 1.1rem;
  color: var(--c-rose);
  margin-bottom: .5rem;
  font-family: var(--f-display);
  font-weight: 400;
}
.ba-info-card p {
  font-size: .72rem;
  color: rgba(247,241,235,.38);
  letter-spacing: .8px;
  line-height: 1.5;
}

/* ================================================
   RESPONSIVE
================================================ */
@media(max-width:1280px){
  .container{padding:0 3rem;}
  header{padding:1.2rem 3rem;}
  .hero-left{padding:6rem 3rem;}
  .experts-grid{grid-template-columns:repeat(2,1fr);}
  .gallery-masonry-huge{columns:3;}
  .svc-mini-grid{grid-template-columns:repeat(4,1fr);}
  .svc-intro-content{gap:2rem;}
  .svc-number{font-size:6rem;}
}
@media(max-width:1024px){
  .container{padding:0 2rem;}
  header{padding:1rem 2rem;}
  header.scrolled{padding:.8rem 2rem;}
  nav{display:none;}
  .mobile-toggle{display:flex;z-index:101;}
  .hero{grid-template-columns:1fr;height:auto;padding-top:6rem;}
  .hero-right{height:60vh;}
  .hero-left{padding:4rem 2rem 3rem;}
  .collection-grid{grid-template-columns:1fr;}
  .ba-grid{grid-template-columns:1fr;}
  .booking-wrap{grid-template-columns:1fr;}
  .booking-visual{height:400px;min-height:auto;}
  .reels-grid{grid-template-columns:repeat(3,1fr);}
  .membership-grid{grid-template-columns:1fr;}
  .service-visual-grid{grid-template-columns:repeat(2,1fr);}
  .svg-item-wide{grid-column:span 1;}
  .gallery-masonry-huge{columns:2;}
  /* NEW */
  .svc-block-grid{grid-template-columns:1fr;gap:3rem;}
  .svc-block-img{aspect-ratio:16/10;}
  .svc-intro-banner{height:55vh;}
  .svc-intro-content{flex-direction:column;align-items:flex-start;gap:1.5rem;}
  .svc-number{font-size:4rem;}
  .svc-intro-stats{gap:3rem;}
  .ba-mega-card{height:60vh;}
  .ba-info-grid{grid-template-columns:repeat(2,1fr);}
  .svc-mini-grid{grid-template-columns:repeat(3,1fr);}
  .svc-two-col{grid-template-columns:1fr;}
}
@media(max-width:768px){
  .section{padding:5rem 0;}
  .category-header{flex-direction:column;align-items:flex-start;gap:1.5rem;}
  .form-row{grid-template-columns:1fr;}
  .reels-grid{grid-template-columns:repeat(2,1fr);}
  .bridal-content h2{font-size:3rem;}
  .service-visual-grid{grid-template-columns:1fr;}
  /* NEW */
  .svc-intro-banner{height:50vh;}
  .svc-intro-stats{gap:2rem;}
  .svc-stat-n{font-size:1.8rem;}
  .svc-addon-strip{flex-direction:column;gap:1.5rem;}
  .svc-addon-title{min-width:auto;}
  .ba-mega-card{height:50vh;}
  .ba-mega-badge{padding:.7rem 1rem;bottom:1.5rem;}
  .ba-mega-badge strong{font-size:.55rem;}
  .ba-mega-badge small{display:none;}
  .ba-mega-knob{width:44px;height:44px;font-size:1rem;}
  .ba-info-grid{grid-template-columns:1fr 1fr;}
  .svc-mini-grid{grid-template-columns:repeat(2,1fr);}
  .svc-cta-row{flex-wrap:wrap;}
  .svc-block-row{padding:4rem 0;}
  .svc-full-row{padding:4rem 0;}
  .ba-mega-header{padding:4rem 0 2rem;}
}
@media(max-width:480px){
  .svc-mini-grid{grid-template-columns:1fr 1fr;}
  .ba-info-grid{grid-template-columns:1fr;}
  .ba-badge-before{left:1rem;}
  .ba-badge-after{right:1rem;}
}
