:root {
  --sage: #8B9E7C;
  --sage-dark: #6B7E5C;
  --sage-light: #C5D4B8;
  --cream: #F7F3ED;
  --cream-dark: #EDE7DB;
  --warm: #C9A87C;
  --warm-dark: #A88A60;
  --charcoal: #2C2C2C;
  --text: #3A3A3A;
  --text-light: #6B6B6B;
  --white: #FFFFFF;
  --terracotta: #C07850;
  --terracotta-light: #D4956F;
  --overlay: rgba(44,44,44,0.55);
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior: smooth; }

body {
  font-family: 'Jost', sans-serif;
  color: var(--text);
  background: var(--cream);
  overflow-x: hidden;
  line-height: 1.7;
}

h1,h2,h3,h4,h5 {
  font-family: 'Cormorant Garamond', serif;
  font-weight: 400;
  line-height: 1.2;
}

a { text-decoration: none; color: inherit; }
.container { max-width: 1240px; margin: 0 auto; padding: 0 24px; }

/* ─── PRELOADER ─── */
#preloader {
  position: fixed; inset:0; z-index:9999;
  background: var(--cream);
  display: flex; align-items: center; justify-content: center;
  transition: opacity .6s, visibility .6s;
}
#preloader.hidden { opacity:0; visibility:hidden; }
#preloader .lotus {
  width: 60px; height: 60px;
  animation: breathe 2s ease-in-out infinite;
}
@keyframes breathe { 0%,100%{transform:scale(1);opacity:.7} 50%{transform:scale(1.15);opacity:1} }

/* ─── TOPBAR ─── */
.topbar {
  background: var(--charcoal);
  color: rgba(255,255,255,.8);
  font-size: 13px;
  letter-spacing: .5px;
  padding: 8px 0;
}
.topbar .container { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:8px; }
.topbar a { color: rgba(255,255,255,.8); transition: color .3s; }
.topbar a:hover { color: var(--warm); }
.topbar-left, .topbar-right { display:flex; gap:20px; align-items:center; }
.topbar-right .social-links { display:flex; gap:12px; }

/* ─── NAVBAR ─── */
.navbar {
  background: rgba(247,243,237,.95);
  backdrop-filter: blur(12px);
  position: sticky; top:0; z-index:100;
  border-bottom: 1px solid rgba(0,0,0,.06);
  transition: box-shadow .3s;
}
.navbar.scrolled { box-shadow: 0 2px 30px rgba(0,0,0,.08); }
.navbar .container { display:flex; justify-content:space-between; align-items:center; height:90px; }
.logo { display:flex; align-items:center; gap:12px; flex-shrink:0; }
.logo-img { height:60px; width:auto; object-fit:contain; }
.logo-text h2 { font-size:22px; color:var(--charcoal); letter-spacing:1px; line-height:1; display:none; }
.logo-text span { font-size:10px; letter-spacing:2.5px; text-transform:uppercase; color:var(--text-light); font-family:'Jost',sans-serif; font-weight:400; display:none; }

.nav-links { display:flex; gap:20px; list-style:none; align-items:center; margin:0 16px; }
.nav-links a {
  font-size:12px; font-weight:600; letter-spacing:.7px; text-transform:uppercase;
  color:var(--text); position:relative; transition: color .3s; white-space:nowrap;
}
.nav-links a::after {
  content:''; position:absolute; bottom:-4px; left:0; width:0; height:2px;
  background:var(--sage); transition:width .3s;
}
.nav-links a:hover { color:var(--sage-dark); }
.nav-links a:hover::after { width:100%; }

.btn-book {
  background: var(--sage);
  color: var(--white);
  padding: 10px 20px;
  border-radius: 50px;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  border: none;
  cursor: pointer;
  transition: all .35s;
  font-family: 'Jost', sans-serif;
  white-space: nowrap;
  flex-shrink: 0;
}
.btn-book:hover { background:var(--sage-dark); transform:translateY(-2px); box-shadow:0 8px 25px rgba(139,158,124,.35); }

.hamburger { display:none; background:none; border:none; cursor:pointer; padding:4px; }
.hamburger span { display:block; width:28px; height:2px; background:var(--charcoal); margin:6px 0; transition: all .3s; border-radius:2px; }

/* ─── HERO ─── */
.hero {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--charcoal);
}

.hero-content {
  position:relative; z-index:2;
  max-width:560px;
  padding: 40px 0;
}
.hero-badge {
  display:inline-flex; align-items:center; gap:8px;
  background: rgba(139,158,124,.2);
  border:1px solid rgba(139,158,124,.3);
  padding:8px 20px; border-radius:50px;
  font-size:12px; letter-spacing:2.5px; text-transform:uppercase;
  color: var(--sage-light);
  margin-bottom:32px;
  animation: fadeUp .8s ease-out;
}
.hero h1 {
  font-size: clamp(40px,5vw,68px);
  color:var(--white);
  line-height:1.08;
  margin-bottom:24px;
  animation: fadeUp .8s ease-out .15s both;
}
.hero h1 em {
  font-style:italic;
  color: var(--sage-light);
}
.hero p {
  font-size:17px; color:rgba(255,255,255,.7);
  max-width:480px; margin-bottom:36px;
  animation: fadeUp .8s ease-out .3s both;
}
.hero-buttons {
  display:flex; gap:16px; flex-wrap:wrap;
  animation: fadeUp .8s ease-out .45s both;
}
.btn-primary {
  background:var(--sage); color:var(--white);
  padding:16px 36px; border-radius:50px;
  font-size:14px; font-weight:600; letter-spacing:1px; text-transform:uppercase;
  transition:all .35s; border:2px solid var(--sage);
  font-family:'Jost',sans-serif; display:inline-block;
}
.btn-primary:hover { background:var(--sage-dark); border-color:var(--sage-dark); transform:translateY(-2px); box-shadow:0 10px 30px rgba(139,158,124,.4); }
.btn-outline {
  color:var(--white); border:2px solid rgba(255,255,255,.3);
  padding:16px 36px; border-radius:50px;
  font-size:14px; font-weight:500; letter-spacing:1px; text-transform:uppercase;
  transition:all .35s;
  font-family:'Jost',sans-serif; display:inline-block;
}
.btn-outline:hover { border-color:var(--white); background:rgba(255,255,255,.08); }

.hero-slideshow {
  position:absolute; inset:0; z-index:0;
}
.hero-slide {
  position:absolute; inset:0;
  opacity:0; transition:opacity 1.2s ease-in-out;
  overflow:hidden;
}
.hero-slide.active { opacity:1; }
.hero-slide img {
  width:100%; height:100%;
  object-fit:cover;
  object-position:center top;
  animation: kenBurns 18s ease-in-out infinite alternate;
}
@keyframes kenBurns {
  0% { transform:scale(1); }
  100% { transform:scale(1.06); }
}
.hero-slide:nth-child(2) img { object-position:center 20%; }
.hero-slide:nth-child(3) img { object-position:center 25%; }
.hero-slide:nth-child(4) img { object-position:center 30%; }
.hero-slide:nth-child(5) img { object-position:center top; }
.hero-slide::after {
  content:''; position:absolute; inset:0;
  background:
    linear-gradient(to right, rgba(30,30,30,.92) 0%, rgba(30,30,30,.78) 35%, rgba(30,30,30,.45) 60%, rgba(30,30,30,.2) 100%),
    linear-gradient(to top, rgba(30,30,30,.7) 0%, transparent 40%);
}
.hero-content {
  position:relative; z-index:2;
  max-width:620px;
  padding:40px 0;
}
.hero-content h1 { text-shadow:0 2px 20px rgba(0,0,0,.5); }
.hero-content p { text-shadow:0 1px 8px rgba(0,0,0,.4); }
.hero-badge { text-shadow:0 1px 6px rgba(0,0,0,.3); }
.hero-dots {
  position:absolute; bottom:32px; left:50%; transform:translateX(-50%);
  z-index:3; display:flex; gap:10px;
}
.hero-dot {
  width:10px; height:10px; border-radius:50%;
  background:rgba(255,255,255,.35);
  cursor:pointer; transition:all .3s;
  border:none; padding:0;
}
.hero-dot.active { background:var(--sage-light); width:28px; border-radius:5px; }

.hero-stats {
  position:relative; z-index:2;
  display:grid; grid-template-columns:repeat(4,1fr); gap:24px;
  padding:32px 0;
  border-top:1px solid rgba(255,255,255,.15);
  animation: fadeUp .8s ease-out .6s both;
  background:rgba(0,0,0,.35);
  margin:0 -24px; padding:28px 24px;
  border-radius:0;
}
.hero-stat { text-align:center; }
.hero-stat h3 { font-size:32px; color:var(--sage-light); text-shadow:0 1px 8px rgba(0,0,0,.4); }
.hero-stat p { font-size:12px; color:rgba(255,255,255,.7); text-transform:uppercase; letter-spacing:1.5px; }

@keyframes fadeUp { from{opacity:0;transform:translateY(25px)} to{opacity:1;transform:translateY(0)} }

/* ─── SECTION STYLING ─── */
.section { padding: 100px 0; }
.section-header { text-align:center; max-width:620px; margin:0 auto 64px; }
.section-label {
  display:inline-flex; align-items:center; gap:8px;
  font-size:12px; letter-spacing:3px; text-transform:uppercase;
  color:var(--sage); font-weight:600; margin-bottom:16px;
}
.section-label::before, .section-label::after {
  content:''; width:30px; height:1px; background:var(--sage);
}
.section-header h2 { font-size:clamp(32px,4vw,48px); color:var(--charcoal); margin-bottom:16px; }
.section-header p { color:var(--text-light); font-size:16px; }

/* ─── ABOUT ─── */
.about { background:var(--white); }
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.about-images { position:relative; height:520px; }
.about-img-main {
  position:absolute; top:0; left:0; width:65%; height:75%;
  background: linear-gradient(135deg, var(--sage-light), var(--sage));
  border-radius:20px; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  font-size:120px;
}
.about-img-secondary {
  position:absolute; bottom:0; right:0; width:55%; height:55%;
  background:linear-gradient(135deg, var(--warm), var(--terracotta));
  border-radius:20px; overflow:hidden;
  border:6px solid var(--white);
  display:flex; align-items:center; justify-content:center;
  font-size:80px;
}
.about-exp-badge {
  position:absolute; top:60%; left:50%; transform:translate(-50%,-50%);
  background:var(--charcoal); color:var(--white); padding:20px;
  border-radius:16px; text-align:center; z-index:2; min-width:130px;
}
.about-exp-badge h3 { font-size:38px; color:var(--sage-light); }
.about-exp-badge p { font-size:11px; letter-spacing:1.5px; text-transform:uppercase; }
.about-content h2 { font-size:clamp(28px,3.5vw,42px); color:var(--charcoal); margin-bottom:20px; }
.about-content > p { color:var(--text-light); margin-bottom:24px; }
.about-features { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:32px; }
.about-feature {
  display:flex; gap:12px; align-items:flex-start;
  padding:16px; background:var(--cream); border-radius:12px;
}
.about-feature .icon {
  width:40px; height:40px; border-radius:10px;
  background:var(--sage); color:var(--white);
  display:flex; align-items:center; justify-content:center;
  font-size:18px; flex-shrink:0;
}
.about-feature h4 { font-size:16px; font-family:'Jost',sans-serif; font-weight:600; color:var(--charcoal); }
.about-feature p { font-size:13px; color:var(--text-light); line-height:1.5; }

/* ─── YOGA TYPES ─── */
.yoga-types { background:var(--cream); }
.yoga-types-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.yoga-type-card {
  background:var(--white); border-radius:20px; padding:36px 28px;
  text-align:center; position:relative; transition:all .4s;
  border-bottom:4px solid transparent;
}
.yoga-type-card:hover { transform:translateY(-6px); box-shadow:0 16px 40px rgba(0,0,0,.07); border-bottom-color:var(--sage); }
.yoga-type-icon {
  width:80px; height:80px; border-radius:50%; margin:0 auto 20px;
  display:flex; align-items:center; justify-content:center;
  font-size:36px; transition:all .35s;
}
.yoga-type-icon.yt1 { background:rgba(139,158,124,.15); }
.yoga-type-icon.yt2 { background:rgba(192,120,80,.1); }
.yoga-type-icon.yt3 { background:rgba(201,168,124,.15); }
.yoga-type-icon.yt4 { background:rgba(44,44,44,.06); }
.yoga-type-icon.yt5 { background:rgba(139,158,124,.12); }
.yoga-type-icon.yt6 { background:rgba(192,120,80,.08); }
.yoga-type-card:hover .yoga-type-icon { transform:scale(1.1); }
.yoga-type-card h3 { font-size:24px; color:var(--charcoal); margin-bottom:8px; }
.yoga-type-card .yoga-tag {
  display:inline-block; padding:4px 14px; border-radius:20px;
  font-size:11px; font-weight:600; letter-spacing:1px; text-transform:uppercase;
  margin-bottom:14px;
}
.yoga-tag.beginner { background:rgba(139,158,124,.15); color:var(--sage-dark); }
.yoga-tag.intermediate { background:rgba(201,168,124,.2); color:var(--warm-dark); }
.yoga-tag.all-levels { background:rgba(44,44,44,.06); color:var(--text-light); }
.yoga-tag.therapeutic { background:rgba(192,120,80,.12); color:var(--terracotta); }
.yoga-type-card p { font-size:14px; color:var(--text-light); line-height:1.65; }

/* ─── SERVICES / CLASSES ─── */
.services { background:var(--white); }
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.service-card {
  background:var(--white); border-radius:20px; overflow:hidden;
  transition: all .4s; position:relative;
}
.service-card:hover { transform:translateY(-8px); box-shadow:0 20px 50px rgba(0,0,0,.08); }
.service-img {
  height:220px; position:relative; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  font-size:64px;
}
.service-img.s1 { background: linear-gradient(135deg, #9bb08a, #7a8e6c); }
.service-img.s2 { background: linear-gradient(135deg, #c5c9a0, #9bb08a); }
.service-img.s3 { background: linear-gradient(135deg, #C9A87C, #A88A60); }
.service-img.s4 { background: linear-gradient(135deg, #C07850, #D4956F); }
.service-img.s5 { background: linear-gradient(135deg, #8B9E7C, #6B7E5C); }
.service-img.s6 { background: linear-gradient(135deg, #b8c4a8, #8B9E7C); }
.service-body { padding:28px; }
.service-body h3 { font-size:24px; color:var(--charcoal); margin-bottom:10px; }
.service-body p { color:var(--text-light); font-size:15px; margin-bottom:16px; }
.service-meta { display:flex; gap:20px; font-size:13px; color:var(--sage-dark); font-weight:500; }
.service-meta span { display:flex; align-items:center; gap:5px; }

/* ─── WHY CHOOSE US / FEATURES ─── */
.features { background:var(--charcoal); color:var(--white); position:relative; overflow:hidden; }
.features::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(circle at 20% 80%, rgba(139,158,124,.12) 0%, transparent 50%),
             radial-gradient(circle at 80% 20%, rgba(201,168,124,.08) 0%, transparent 40%);
}
.features .section-label { color:var(--sage-light); }
.features .section-label::before, .features .section-label::after { background:var(--sage-light); }
.features .section-header h2 { color:var(--white); }
.features .section-header p { color:rgba(255,255,255,.6); }
.features-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; position:relative; z-index:1; }
.feature-item {
  text-align:center; padding:40px 24px;
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.06);
  border-radius:20px; transition: all .35s;
}
.feature-item:hover { background:rgba(255,255,255,.08); transform:translateY(-6px); }
.feature-icon {
  width:72px; height:72px; border-radius:50%; margin:0 auto 20px;
  background:rgba(139,158,124,.2); display:flex; align-items:center; justify-content:center;
  font-size:32px; transition: all .35s;
}
.feature-item:hover .feature-icon { background:var(--sage); }
.feature-item h4 { font-size:20px; font-family:'Cormorant Garamond',serif; margin-bottom:10px; }
.feature-item p { font-size:14px; color:rgba(255,255,255,.55); line-height:1.6; }

/* ─── CLASS SCHEDULE ─── */
.schedule { background:var(--white); }

/* ─── CONDITIONS WE TREAT ─── */
.conditions { background:var(--cream); }
.conditions-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.condition-card {
  background:var(--white); border-radius:16px; padding:28px 24px;
  position:relative; transition:all .4s;
  border-left:4px solid transparent;
}
.condition-card:hover { transform:translateY(-4px); box-shadow:0 12px 35px rgba(0,0,0,.07); border-left-color:var(--sage); }
.condition-icon { font-size:32px; margin-bottom:14px; display:block; }
.condition-card h3 { font-size:20px; color:var(--charcoal); margin-bottom:10px; }
.condition-card p { font-size:13px; color:var(--text-light); line-height:1.65; }

/* ─── HEALTH BENEFITS ─── */
.benefits { background:var(--white); }
.benefits-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.benefit-item {
  padding:24px 20px; border-radius:14px;
  background:var(--cream); transition:all .35s;
  position:relative;
}
.benefit-item:hover { background:rgba(139,158,124,.1); transform:translateY(-3px); }
.benefit-num {
  font-family:'Cormorant Garamond',serif; font-size:28px; font-weight:700;
  color:var(--sage); display:block; margin-bottom:8px; line-height:1;
}
.benefit-item h4 { font-size:16px; font-family:'Jost',sans-serif; font-weight:600; color:var(--charcoal); margin-bottom:6px; }
.benefit-item p { font-size:13px; color:var(--text-light); line-height:1.55; }
.schedule-table {
  width:100%; border-collapse:separate; border-spacing:0;
  border-radius:16px; overflow:hidden;
  box-shadow:0 4px 30px rgba(0,0,0,.06);
}
.schedule-table thead { background:var(--sage); color:var(--white); }
.schedule-table th {
  padding:18px 20px; text-align:left;
  font-size:13px; letter-spacing:1px; text-transform:uppercase; font-weight:600;
}
.schedule-table td {
  padding:16px 20px; border-bottom:1px solid rgba(0,0,0,.05);
  font-size:14px;
}
.schedule-table tbody tr { transition: background .25s; }
.schedule-table tbody tr:hover { background:rgba(139,158,124,.06); }
.schedule-table tbody tr:last-child td { border-bottom:none; }
.class-tag {
  display:inline-block; padding:4px 12px; border-radius:20px;
  font-size:12px; font-weight:500;
}
.tag-hatha { background:rgba(139,158,124,.15); color:var(--sage-dark); }
.tag-vinyasa { background:rgba(192,120,80,.12); color:var(--terracotta); }
.tag-pranayama { background:rgba(201,168,124,.2); color:var(--warm-dark); }
.tag-meditation { background:rgba(44,44,44,.08); color:var(--charcoal); }
.tag-therapy { background:rgba(139,158,124,.25); color:var(--sage-dark); }
.tag-private { background:rgba(192,120,80,.15); color:var(--terracotta); }

/* ─── INSTRUCTORS ─── */
.instructors { background:var(--cream); }
.instructors-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:40px; max-width:700px; margin:0 auto; }
.instructor-card { text-align:center; }
.instructor-img {
  width:100%; aspect-ratio:3/3.5; border-radius:20px; overflow:hidden;
  margin-bottom:20px; position:relative;
  display:flex; align-items:center; justify-content:center;
  font-size:72px;
}
.instructor-img.i1 { background: linear-gradient(to bottom, var(--sage-light), var(--sage)); }
.instructor-img.i2 { background: linear-gradient(to bottom, var(--warm), var(--terracotta-light)); }
.instructor-overlay {
  position:absolute; bottom:0; left:0; right:0;
  padding:12px; display:flex; justify-content:center; gap:12px;
  background:linear-gradient(transparent, rgba(0,0,0,.4));
  opacity:0; transition:opacity .35s;
}
.instructor-card:hover .instructor-overlay { opacity:1; }
.instructor-overlay a {
  width:36px; height:36px; border-radius:50%;
  background:rgba(255,255,255,.9); display:flex; align-items:center; justify-content:center;
  color:var(--charcoal); font-size:14px; transition:all .25s;
}
.instructor-overlay a:hover { background:var(--sage); color:var(--white); }
.instructor-card h3 { font-size:24px; color:var(--charcoal); margin-bottom:4px; }
.instructor-card .role { font-size:13px; color:var(--sage-dark); letter-spacing:1px; text-transform:uppercase; font-weight:500; margin-bottom:8px; }
.instructor-card .bio { font-size:14px; color:var(--text-light); line-height:1.6; max-width:300px; margin:0 auto; }

/* ─── GOOGLE REVIEWS ─── */
.reviews { background:var(--white); position:relative; overflow:hidden; }
.reviews-header-row { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:48px; flex-wrap:wrap; gap:20px; }
.reviews-header-row .section-header { text-align:left; margin:0; }
.google-badge {
  display:flex; align-items:center; gap:12px;
  padding:16px 24px; background:var(--cream); border-radius:16px;
}
.google-badge .g-icon { font-size:32px; }
.google-rating h3 { font-size:28px; font-family:'Jost',sans-serif; font-weight:700; color:var(--charcoal); line-height:1; }
.google-rating .stars { color:var(--warm); font-size:16px; letter-spacing:2px; }
.google-rating p { font-size:12px; color:var(--text-light); }
.btn-review {
  display:inline-flex; align-items:center; gap:8px;
  background:var(--sage); color:var(--white);
  padding:12px 24px; border-radius:50px;
  font-size:13px; font-weight:600; letter-spacing:.8px; text-transform:uppercase;
  transition:all .35s; font-family:'Jost',sans-serif;
}
.btn-review:hover { background:var(--sage-dark); transform:translateY(-2px); }
.testimonials-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.testimonial-card {
  background:var(--cream); padding:36px; border-radius:20px;
  position:relative; transition:all .35s;
}
.testimonial-card:hover { transform:translateY(-4px); box-shadow:0 12px 35px rgba(0,0,0,.06); }
.testimonial-stars { color:var(--warm); font-size:16px; letter-spacing:3px; margin-bottom:16px; }
.testimonial-card blockquote { font-size:15px; color:var(--text-light); line-height:1.7; margin-bottom:20px; font-style:italic; }
.testimonial-author { display:flex; align-items:center; gap:14px; }
.testimonial-avatar {
  width:48px; height:48px; border-radius:50%;
  background:var(--sage); display:flex; align-items:center; justify-content:center;
  color:var(--white); font-size:18px; font-family:'Cormorant Garamond',serif; font-weight:600;
}
.testimonial-author h4 { font-size:16px; font-family:'Jost',sans-serif; font-weight:600; color:var(--charcoal); }
.testimonial-author span { font-size:13px; color:var(--text-light); }

/* ─── PRICING ─── */
.pricing { background:var(--cream); }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.pricing-card {
  background:var(--white); border-radius:20px; padding:40px 32px;
  text-align:center; position:relative; transition:all .4s;
  border:2px solid transparent;
}
.pricing-card:hover { transform:translateY(-6px); box-shadow:0 16px 45px rgba(0,0,0,.08); }
.pricing-card.featured { border-color:var(--sage); }
.pricing-badge {
  position:absolute; top:-14px; left:50%; transform:translateX(-50%);
  background:var(--sage); color:var(--white); padding:6px 20px;
  border-radius:20px; font-size:11px; letter-spacing:1.5px; text-transform:uppercase; font-weight:600;
}
.pricing-card h3 { font-size:24px; color:var(--charcoal); margin-bottom:8px; }
.pricing-card .price { font-size:48px; font-family:'Cormorant Garamond',serif; color:var(--sage-dark); margin:16px 0; }
.pricing-card .price small { font-size:16px; color:var(--text-light); }
.pricing-features { list-style:none; text-align:left; margin-bottom:32px; }
.pricing-features li {
  padding:10px 0; border-bottom:1px solid rgba(0,0,0,.05);
  font-size:14px; color:var(--text-light); display:flex; align-items:center; gap:10px;
}
.pricing-features li::before { content:'✓'; color:var(--sage); font-weight:700; }
.btn-price {
  width:100%; padding:14px; border-radius:50px;
  font-size:14px; font-weight:600; letter-spacing:1px; text-transform:uppercase;
  border:2px solid var(--sage); color:var(--sage);
  background:transparent; cursor:pointer; transition:all .3s;
  font-family:'Jost',sans-serif;
}
.btn-price:hover, .pricing-card.featured .btn-price {
  background:var(--sage); color:var(--white);
}
.pricing-card.featured .btn-price:hover { background:var(--sage-dark); border-color:var(--sage-dark); }

/* ─── GALLERY ─── */
.gallery { background:var(--white); }
.gallery-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-template-rows:auto auto;
  gap:16px;
}
.gallery-item {
  border-radius:16px; overflow:hidden; position:relative;
  display:flex; align-items:center; justify-content:center;
  min-height:240px;
  cursor:pointer;
  background:#e8e4dd;
}
.gallery-item img {
  width:100%; height:100%; object-fit:cover;
  position:absolute; inset:0;
  transition: transform .5s;
}
.gallery-item:hover img { transform:scale(1.06); }
.gallery-item::after {
  content:''; position:absolute; inset:0;
  background:rgba(44,44,44,0); transition:background .35s;
}
.gallery-item:hover::after { background:rgba(44,44,44,.3); }
.gallery-item:nth-child(1) { grid-column:span 2; grid-row:span 2; min-height:500px; }
.gallery-item:nth-child(2) { }
.gallery-item:nth-child(3) { }
.gallery-item:nth-child(4) { }
.gallery-item:nth-child(5) { }
.gallery-item:nth-child(6) { grid-column:span 2; }

/* ─── CTA BANNER ─── */

/* ─── SPECIAL PROGRAMS ─── */
.special-programs { background:var(--charcoal); color:var(--white); position:relative; overflow:hidden; }
.special-programs::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(circle at 30% 70%, rgba(139,158,124,.1) 0%, transparent 50%),
             radial-gradient(circle at 70% 30%, rgba(201,168,124,.07) 0%, transparent 40%);
}
.special-programs .section-label { color:var(--sage-light); }
.special-programs .section-label::before, .special-programs .section-label::after { background:var(--sage-light); }
.special-programs .section-header h2 { color:var(--white); }
.special-programs .section-header p { color:rgba(255,255,255,.6); }
.sp-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; position:relative; z-index:1; }
.sp-card {
  background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.08);
  border-radius:20px; text-align:center;
  transition:all .4s; position:relative; overflow:hidden;
}
.sp-card:hover { background:rgba(255,255,255,.1); transform:translateY(-6px); }
.sp-card-img {
  width:100%; height:200px; overflow:hidden;
}
.sp-card-img img {
  width:100%; height:100%; object-fit:cover; object-position:center center;
  transition:transform .5s;
}
.sp-card:hover .sp-card-img img { transform:scale(1.06); }
.sp-card-body { padding:28px 24px; }
.sp-card .sp-icon {
  width:56px; height:56px; border-radius:50%; margin:0 auto 16px;
  display:flex; align-items:center; justify-content:center;
  font-size:26px; transition:all .35s;
  margin-top:-44px; position:relative; z-index:2;
  border:3px solid rgba(44,44,44,.9);
}
.sp-card:nth-child(1) .sp-icon { background:rgba(37,211,102,.2); }
.sp-card:nth-child(2) .sp-icon { background:rgba(139,158,124,.2); }
.sp-card:nth-child(3) .sp-icon { background:rgba(201,168,124,.2); }
.sp-card:nth-child(4) .sp-icon { background:rgba(192,120,80,.2); }
.sp-card:hover .sp-icon { transform:scale(1.1); }
.sp-card h3 { font-size:22px; color:var(--white); margin-bottom:10px; }
.sp-card p { font-size:14px; color:rgba(255,255,255,.55); line-height:1.6; margin-bottom:16px; }
.sp-badge {
  display:inline-block; padding:5px 14px; border-radius:20px;
  font-size:11px; font-weight:600; letter-spacing:1px; text-transform:uppercase;
}
.sp-badge.online { background:rgba(37,211,102,.15); color:#25D366; }
.sp-badge.onsite { background:rgba(201,168,124,.2); color:var(--warm); }
.sp-badge.both { background:rgba(139,158,124,.2); color:var(--sage-light); }

/* ─── CTA ACTUAL ─── */
.cta-banner {
  background:var(--sage); padding:80px 0; position:relative; overflow:hidden;
}
.cta-banner::before {
  content:''; position:absolute; inset:0;
  background:radial-gradient(circle at 80% 50%, rgba(255,255,255,.1) 0%, transparent 50%);
}
.cta-content { text-align:center; position:relative; z-index:1; }
.cta-content h2 { font-size:clamp(28px,4vw,46px); color:var(--white); margin-bottom:16px; }
.cta-content p { color:rgba(255,255,255,.8); font-size:17px; max-width:520px; margin:0 auto 32px; }
.btn-cta {
  background:var(--white); color:var(--sage-dark);
  padding:16px 40px; border-radius:50px;
  font-size:14px; font-weight:600; letter-spacing:1px; text-transform:uppercase;
  transition:all .35s; display:inline-block;
  font-family:'Jost',sans-serif;
}
.btn-cta:hover { background:var(--charcoal); color:var(--white); transform:translateY(-2px); box-shadow:0 10px 30px rgba(0,0,0,.2); }

/* ─── CONTACT ─── */
.contact { background:var(--cream); }
.contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.contact-info { display:flex; flex-direction:column; gap:24px; }
.contact-item {
  display:flex; gap:16px; align-items:flex-start;
  padding:24px; background:var(--white); border-radius:16px;
}
.contact-icon {
  width:52px; height:52px; border-radius:14px;
  background:rgba(139,158,124,.12);
  display:flex; align-items:center; justify-content:center;
  font-size:22px; flex-shrink:0;
}
.contact-item h4 { font-size:17px; font-family:'Jost',sans-serif; font-weight:600; color:var(--charcoal); margin-bottom:4px; }
.contact-item p { font-size:14px; color:var(--text-light); }
.contact-item a { color:var(--sage-dark); font-weight:500; }
.contact-form { display:flex; flex-direction:column; gap:16px; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-group { display:flex; flex-direction:column; }
.form-group label {
  font-size:13px; font-weight:600; letter-spacing:.5px; color:var(--charcoal);
  margin-bottom:6px; text-transform:uppercase;
}
.form-group input, .form-group select, .form-group textarea {
  padding:14px 18px; border:1px solid rgba(0,0,0,.1);
  border-radius:12px; background:var(--white);
  font-size:15px; font-family:'Jost',sans-serif; color:var(--text);
  transition:border-color .3s; outline:none;
}
.form-group input:focus, .form-group select:focus, .form-group textarea:focus { border-color:var(--sage); }
.form-group textarea { resize:vertical; min-height:120px; }

/* ─── MAP ─── */
.map-section { background:var(--white); padding:0; }
.map-container { width:100%; height:400px; }
.map-container iframe { width:100%; height:100%; border:0; }

/* ─── FOOTER ─── */
.footer { background:var(--charcoal); color:rgba(255,255,255,.7); padding:80px 0 0; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1.5fr; gap:40px; margin-bottom:60px; }
.footer-brand .logo-text h2 { color:var(--white); }
.footer-brand > p { margin-top:16px; font-size:14px; line-height:1.7; }
.footer h4 {
  font-family:'Jost',sans-serif; font-size:14px; font-weight:600;
  letter-spacing:1.5px; text-transform:uppercase; color:var(--white);
  margin-bottom:24px;
}
.footer ul { list-style:none; }
.footer ul li { margin-bottom:12px; }
.footer ul a { font-size:14px; transition:color .3s; }
.footer ul a:hover { color:var(--sage-light); }
.footer-newsletter p { font-size:14px; margin-bottom:16px; }
.newsletter-form { display:flex; gap:8px; }
.newsletter-form input {
  flex:1; padding:12px 16px; border:1px solid rgba(255,255,255,.15);
  border-radius:50px; background:rgba(255,255,255,.05); color:var(--white);
  font-size:14px; font-family:'Jost',sans-serif; outline:none;
}
.newsletter-form input::placeholder { color:rgba(255,255,255,.4); }
.newsletter-form input:focus { border-color:var(--sage); }
.newsletter-form button {
  padding:12px 24px; border-radius:50px; background:var(--sage);
  color:var(--white); border:none; font-weight:600; font-size:13px;
  letter-spacing:.5px; cursor:pointer; transition:background .3s;
  font-family:'Jost',sans-serif;
}
.newsletter-form button:hover { background:var(--sage-dark); }
.footer-bottom {
  border-top:1px solid rgba(255,255,255,.08);
  padding:24px 0; display:flex; justify-content:space-between; align-items:center;
  font-size:13px; flex-wrap:wrap; gap:12px;
}
.footer-bottom-links { display:flex; gap:24px; }
.footer-bottom-links a:hover { color:var(--sage-light); }

/* ─── FLOATING WHATSAPP BUTTON ─── */
.whatsapp-float {
  position:fixed; bottom:28px; right:28px;
  z-index:999;
  width:62px; height:62px;
  border-radius:50%;
  background:#25D366;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 18px rgba(37,211,102,.45), 0 2px 8px rgba(0,0,0,.15);
  cursor:pointer;
  transition:all .3s;
  text-decoration:none;
}
.whatsapp-float:hover {
  transform:scale(1.1) translateY(-3px);
  box-shadow:0 8px 28px rgba(37,211,102,.5), 0 4px 12px rgba(0,0,0,.2);
}
.whatsapp-float svg { width:34px; height:34px; fill:#fff; }
.whatsapp-float .wa-tooltip {
  position:absolute; right:72px; top:50%; transform:translateY(-50%);
  background:var(--white); color:var(--charcoal);
  padding:10px 16px; border-radius:10px;
  font-size:14px; font-weight:500; font-family:'Jost',sans-serif;
  white-space:nowrap;
  box-shadow:0 4px 16px rgba(0,0,0,.12);
  opacity:0; pointer-events:none;
  transition:opacity .3s, transform .3s;
  transform:translateY(-50%) translateX(8px);
}
.whatsapp-float .wa-tooltip::after {
  content:''; position:absolute; right:-6px; top:50%; transform:translateY(-50%);
  border-left:6px solid var(--white); border-top:6px solid transparent; border-bottom:6px solid transparent;
}
.whatsapp-float:hover .wa-tooltip {
  opacity:1; transform:translateY(-50%) translateX(0);
}
.whatsapp-pulse {
  position:absolute; inset:-4px;
  border-radius:50%;
  border:2px solid #25D366;
  animation:waPulse 2s ease-out infinite;
}
@keyframes waPulse {
  0% { transform:scale(1); opacity:.6; }
  100% { transform:scale(1.5); opacity:0; }
}

/* ─── SCROLL ANIMATIONS ─── */
.reveal {
  opacity:0; transform:translateY(30px);
  transition:opacity .7s ease, transform .7s ease;
}
.reveal.visible { opacity:1; transform:translateY(0); }

/* ─── MOBILE NAV ─── */
.mobile-nav {
  display:none; position:fixed; inset:0; z-index:999;
  background:rgba(247,243,237,.98); backdrop-filter:blur(16px);
  flex-direction:column; align-items:center; justify-content:center; gap:24px;
}
.mobile-nav.active { display:flex; }
.mobile-nav a {
  font-size:22px; font-family:'Cormorant Garamond',serif;
  color:var(--charcoal); transition:color .3s;
}
.mobile-nav a:hover { color:var(--sage); }
.mobile-nav .close-btn {
  position:absolute; top:24px; right:24px;
  background:none; border:none; font-size:32px; cursor:pointer; color:var(--charcoal);
}

/* ─── RESPONSIVE ─── */
@media(max-width:1024px){
  .nav-links,.btn-book { display:none; }
  .hamburger { display:block; }
  .hero-stats { grid-template-columns:repeat(4,1fr); }
  .about-grid { grid-template-columns:1fr; }
  .about-images { height:360px; }
  .services-grid { grid-template-columns:repeat(2,1fr); }
  .yoga-types-grid { grid-template-columns:repeat(2,1fr); }
  .features-grid { grid-template-columns:repeat(2,1fr); }
  .conditions-grid { grid-template-columns:repeat(2,1fr); }
  .sp-grid { grid-template-columns:repeat(2,1fr); }
  .benefits-grid { grid-template-columns:repeat(2,1fr); }
  .pricing-grid { grid-template-columns:repeat(2,1fr); }
  .gallery-grid { grid-template-columns:repeat(2,1fr); }
  .gallery-item:nth-child(1) { min-height:300px; }
  .footer-grid { grid-template-columns:repeat(2,1fr); }
}
@media(max-width:768px){
  .topbar-right { display:none; }
  .section { padding:64px 0; }
  .services-grid { grid-template-columns:1fr; }
  .yoga-types-grid { grid-template-columns:1fr; }
  .features-grid { grid-template-columns:1fr; }
  .conditions-grid { grid-template-columns:1fr; }
  .sp-grid { grid-template-columns:1fr; }
  .benefits-grid { grid-template-columns:repeat(2,1fr); }
  .testimonials-grid { grid-template-columns:1fr; }
  .pricing-grid { grid-template-columns:1fr; }
  .contact-grid { grid-template-columns:1fr; }
  .form-row { grid-template-columns:1fr; }
  .hero-stats { gap:16px; grid-template-columns:repeat(2,1fr); }
  .gallery-grid { grid-template-columns:1fr 1fr; }
  .gallery-item:nth-child(1) { min-height:240px; }
  .gallery-item:nth-child(6) { grid-column:span 2; }
  .instructors-grid { grid-template-columns:1fr; max-width:340px; }
  .footer-grid { grid-template-columns:1fr; }
  .schedule-table { font-size:13px; }
  .schedule-table th, .schedule-table td { padding:12px 10px; }
  .reviews-header-row { flex-direction:column; align-items:flex-start; }
}
@media(max-width:480px){
  .gallery-grid { grid-template-columns:1fr; }
  .gallery-item:nth-child(1) { grid-column:span 1; grid-row:span 1; min-height:200px; }
  .gallery-item:nth-child(6) { grid-column:span 1; }
  .hero-stats { grid-template-columns:repeat(2,1fr); gap:12px; }
}


/* ─── CORPORATE YOGA SECTION ─── */
.corporate-yoga {
  background: var(--cream);
  position: relative;
  overflow: hidden;
}
.corporate-yoga::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 400px;
  background: linear-gradient(135deg, var(--sage-dark) 0%, #5a7a4a 50%, var(--sage) 100%);
  z-index: 0;
}

/* Header */
.corp-header {
  text-align: center;
  position: relative;
  z-index: 1;
  padding-bottom: 40px;
}
.corp-tag {
  display: inline-block;
  background: rgba(255,255,255,0.2);
  color: var(--white);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  padding: 6px 20px;
  border-radius: 30px;
  margin-bottom: 16px;
  backdrop-filter: blur(4px);
}
.corp-header h2 {
  font-size: 52px;
  color: var(--white);
  margin-bottom: 12px;
}
.corp-header p {
  font-size: 17px;
  color: rgba(255,255,255,0.85);
  max-width: 600px;
  margin: 0 auto;
}

/* Stats Row */
.corp-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  position: relative;
  z-index: 1;
  margin-bottom: 60px;
}
.corp-stat {
  background: var(--white);
  padding: 28px 16px;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 8px 30px rgba(0,0,0,0.08);
}
.corp-stat-num {
  display: block;
  font-family: 'Cormorant Garamond', serif;
  font-size: 40px;
  font-weight: 700;
  color: var(--sage-dark);
  line-height: 1;
  margin-bottom: 6px;
}
.corp-stat-label {
  font-size: 13px;
  color: var(--text-light);
  font-weight: 500;
}

/* Why Corporate Yoga */
.corp-why {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 40px;
  align-items: center;
  position: relative;
  z-index: 1;
  margin-bottom: 60px;
  background: var(--white);
  border-radius: 16px;
  padding: 48px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.05);
}
.corp-why h3 {
  font-size: 32px;
  color: var(--sage-dark);
  margin-bottom: 16px;
}
.corp-why > .corp-why-text > p {
  font-size: 15px;
  color: var(--text);
  line-height: 1.8;
  margin-bottom: 24px;
}
.corp-why-points {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.corp-why-point {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 15px;
  color: var(--text);
}
.cwp-icon {
  width: 28px;
  height: 28px;
  background: var(--sage-light);
  color: var(--sage-dark);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 700;
  flex-shrink: 0;
}
.cwv-card {
  background: linear-gradient(135deg, var(--sage) 0%, var(--sage-dark) 100%);
  border-radius: 16px;
  padding: 36px;
  color: var(--white);
}
.cwv-quote {
  font-family: 'Cormorant Garamond', serif;
  font-size: 22px;
  font-style: italic;
  line-height: 1.5;
  margin-bottom: 20px;
}
.cwv-author {
  font-size: 13px;
  opacity: 0.8;
}

/* Client Logos */
.corp-clients-section {
  text-align: center;
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}
.corp-clients-section h3 {
  font-size: 32px;
  color: var(--sage-dark);
  margin-bottom: 36px;
}
.corp-logos-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.corp-logo-card {
  background: var(--white);
  border-radius: 12px;
  padding: 24px 16px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  box-shadow: 0 2px 12px rgba(0,0,0,0.04);
  border: 1px solid rgba(0,0,0,0.06);
  transition: transform 0.3s, box-shadow 0.3s;
}
.corp-logo-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.08);
}
.corp-logo-circle {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 18px;
  letter-spacing: 1px;
}
.corp-logo-card span {
  font-size: 13px;
  font-weight: 500;
  color: var(--text);
}

/* Sessions */
.corp-sessions {
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}
.corp-sessions h3 {
  font-size: 32px;
  color: var(--sage-dark);
  text-align: center;
  margin-bottom: 8px;
}
.corp-sessions-sub {
  text-align: center;
  color: var(--text-light);
  font-size: 15px;
  margin-bottom: 40px !important;
}
.corp-sessions-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
}
.corp-sess-card {
  background: var(--white);
  border-radius: 14px;
  padding: 28px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.05);
  border: 1px solid rgba(0,0,0,0.04);
  transition: transform 0.3s, box-shadow 0.3s;
  display: flex;
  flex-direction: column;
}
.corp-sess-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 32px rgba(0,0,0,0.08);
}
.csc-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}
.csc-icon {
  width: 48px;
  height: 48px;
  background: var(--sage-light);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--sage-dark);
}
.csc-time {
  background: var(--cream-dark);
  color: var(--sage-dark);
  padding: 4px 14px;
  border-radius: 20px;
  font-size: 12px;
  font-weight: 600;
}
.corp-sess-card h5 {
  font-size: 19px;
  color: var(--charcoal);
  margin-bottom: 10px;
}
.corp-sess-card p {
  font-size: 14px;
  color: var(--text-light);
  line-height: 1.7;
  margin-bottom: 16px;
  flex-grow: 1;
}
.csc-tag {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--warm);
}

/* Pricing */
.corp-pricing-section {
  margin-bottom: 60px;
  text-align: center;
  position: relative;
  z-index: 1;
}
.corp-pricing-section h3 {
  font-size: 32px;
  color: var(--sage-dark);
  margin-bottom: 40px;
}
.corp-pricing-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 28px;
  max-width: 720px;
  margin: 0 auto 28px;
}
.cpp-card {
  background: var(--white);
  border-radius: 16px;
  padding: 40px 32px;
  border: 2px solid var(--cream-dark);
  text-align: center;
  position: relative;
  transition: transform 0.3s, box-shadow 0.3s;
}
.cpp-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,0,0,0.08);
}
.cpp-featured {
  border-color: var(--sage);
  background: linear-gradient(180deg, rgba(139,158,124,0.05) 0%, var(--white) 100%);
  box-shadow: 0 8px 30px rgba(139,158,124,0.15);
}
.cpp-badge {
  display: inline-block;
  background: var(--cream-dark);
  color: var(--sage-dark);
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  padding: 5px 16px;
  border-radius: 20px;
  margin-bottom: 20px;
}
.cpp-featured .cpp-badge {
  background: var(--sage);
  color: var(--white);
}
.cpp-card h5 {
  font-size: 20px;
  color: var(--charcoal);
  margin-bottom: 16px;
}
.cpp-price {
  font-family: 'Cormorant Garamond', serif;
  font-size: 52px;
  font-weight: 700;
  color: var(--sage-dark);
  line-height: 1;
  margin-bottom: 4px;
}
.cpp-rupee {
  font-size: 32px;
  vertical-align: top;
  margin-right: 2px;
}
.cpp-per {
  font-size: 14px;
  color: var(--text-light);
  margin-bottom: 24px;
}
.cpp-features {
  list-style: none;
  padding: 0;
  margin: 0 0 28px;
  text-align: left;
}
.cpp-features li {
  padding: 8px 0;
  font-size: 14px;
  color: var(--text);
  border-bottom: 1px solid var(--cream-dark);
  position: relative;
  padding-left: 24px;
}
.cpp-features li:last-child { border-bottom: none; }
.cpp-features li::before {
  content: '✓';
  position: absolute;
  left: 0;
  color: var(--sage);
  font-weight: 700;
}
.cpp-btn {
  display: inline-block;
  padding: 12px 28px;
  background: var(--sage);
  color: var(--white);
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  transition: background 0.3s, transform 0.2s;
}
.cpp-btn:hover {
  background: var(--sage-dark);
  transform: translateY(-2px);
}
.cpp-featured .cpp-btn {
  background: var(--sage-dark);
}
.cpp-featured .cpp-btn:hover {
  background: var(--charcoal);
}
.corp-cities {
  font-size: 15px;
  color: var(--text-light);
  margin-top: 12px;
}

/* Bottom CTA */
.corp-bottom-cta {
  text-align: center;
  padding: 56px 40px;
  background: linear-gradient(135deg, var(--sage-dark) 0%, #4a6840 100%);
  border-radius: 20px;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.corp-bottom-cta::before {
  content: '';
  position: absolute;
  width: 300px; height: 300px;
  background: rgba(255,255,255,0.04);
  border-radius: 50%;
  top: -100px; right: -60px;
}
.corp-bottom-cta::after {
  content: '';
  position: absolute;
  width: 200px; height: 200px;
  background: rgba(255,255,255,0.03);
  border-radius: 50%;
  bottom: -80px; left: -40px;
}
.corp-bottom-cta h3 {
  font-size: 36px;
  color: var(--white);
  margin-bottom: 12px;
  position: relative;
  z-index: 1;
}
.corp-bottom-cta p {
  color: rgba(255,255,255,0.85);
  margin-bottom: 28px;
  font-size: 16px;
  position: relative;
  z-index: 1;
}
.corp-bottom-btns {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}
.corp-bottom-btns .btn-primary {
  background: var(--warm);
  color: var(--white);
  padding: 14px 28px;
  border-radius: 8px;
  font-weight: 600;
  transition: background 0.3s;
}
.corp-bottom-btns .btn-primary:hover {
  background: var(--warm-dark);
}
.corp-bottom-btns .btn-outline {
  border: 2px solid rgba(255,255,255,0.4);
  color: var(--white);
  padding: 12px 28px;
  border-radius: 8px;
  font-weight: 600;
  transition: background 0.3s;
}
.corp-bottom-btns .btn-outline:hover {
  background: rgba(255,255,255,0.1);
}

/* ─── CORPORATE RESPONSIVE ─── */
@media (max-width: 1024px) {
  .corp-logos-grid { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 768px) {
  .corporate-yoga::before { height: 320px; }
  .corp-header h2 { font-size: 36px; }
  .corp-stats { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .corp-stat { padding: 20px 12px; }
  .corp-stat-num { font-size: 32px; }
  .corp-why {
    grid-template-columns: 1fr;
    padding: 28px;
  }
  .corp-why h3 { font-size: 26px; }
  .corp-logos-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .corp-clients-section h3,
  .corp-sessions h3,
  .corp-pricing-section h3 { font-size: 26px; }
  .corp-sessions-grid { grid-template-columns: 1fr; }
  .corp-pricing-row { grid-template-columns: 1fr; }
  .cpp-price { font-size: 42px; }
  .corp-bottom-cta {
    padding: 36px 24px;
    border-radius: 14px;
  }
  .corp-bottom-cta h3 { font-size: 28px; }
  .corp-bottom-btns { flex-direction: column; align-items: center; }
}
@media (max-width: 480px) {
  .corp-header h2 { font-size: 28px; }
  .corp-stats { grid-template-columns: repeat(2, 1fr); }
  .corp-logos-grid { grid-template-columns: repeat(2, 1fr); }
  .corp-logo-circle { width: 44px; height: 44px; font-size: 14px; }
}