/*
Theme Name:  Haizum Bloom
Theme URI:   https://haizum.com
Author:      Haizum Agency
Description: Elegant feminine academy website. Blush pink, warm beige, lavender. Women's academies, beauty institutes, baking classes, fashion designing, ladies Islamic academy, skill development. WhatsApp enrollment. Haizum Starter Plan ₹599/month.
Version:     1.0.0
Requires PHP: 8.0
Text Domain: haizum-bloom
Tags: feminine, academy, blush, pink, lavender, elegant, women, beauty, baking, fashion
*/

/* ══════════════════════════════════════════════════════
   HAIZUM BLOOM — FEMININE ACADEMY DESIGN SYSTEM v1.0
   Blush Pink · Warm Beige · Lavender
   Soft luxury · Elegant · Welcoming
   ══════════════════════════════════════════════════════ */

:root {
  /* ── BRAND PALETTE */
  --blush:        #e8a0b0;
  --blush-dark:   #c9788a;
  --blush-mid:    #d4899a;
  --blush-light:  #fdf0f3;
  --blush-xlight: rgba(232,160,176,0.08);
  --blush-glow:   rgba(232,160,176,0.25);

  --lavender:       #b89fd4;
  --lavender-dark:  #9b82bd;
  --lavender-light: #f5f0fb;
  --lavender-mid:   rgba(184,159,212,0.15);

  --beige-0: #ffffff;
  --beige-1: #faf7f4;
  --beige-2: #f5efea;
  --beige-3: #ede4da;
  --border:  #e8ddd5;
  --border-2:#ddd0c5;

  --gold:       #c4965a;
  --gold-light: #fdf5ec;

  --text-1: #2a1a1f;
  --text-2: #4a3040;
  --text-3: #7a6070;
  --text-4: #a89098;

  --wa:      #25D366;
  --wa-dark: #1fbc59;
  --wa-glow: rgba(37,211,102,0.20);
  --green:   #16a34a;

  /* ── FONTS */
  --font-serif: 'Cormorant Garamond', 'Playfair Display', Georgia, serif;
  --font-body:  'DM Sans', 'Plus Jakarta Sans', system-ui, sans-serif;

  /* ── SPACING */
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;
  --s6:24px;--s8:32px;--s10:40px;--s12:48px;--s16:64px;
  --s20:80px;--s24:96px;

  /* ── RADIUS — very rounded, feminine */
  --r-sm:  8px;
  --r-md:  16px;
  --r-lg:  24px;
  --r-xl:  32px;
  --r-2xl: 48px;
  --r-pill:9999px;

  /* ── SHADOWS — soft, diffuse */
  --shadow-xs: 0 2px 8px rgba(42,26,31,0.05);
  --shadow-sm: 0 4px 16px rgba(42,26,31,0.07);
  --shadow-md: 0 8px 28px rgba(42,26,31,0.09);
  --shadow-lg: 0 14px 44px rgba(42,26,31,0.11);
  --shadow-pink: 0 6px 24px rgba(232,160,176,0.22);

  /* ── LAYOUT */
  --max-w:    1200px;
  --header-h: 72px;
  --bar-h:    40px;
}

/* ── RESET ─────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--font-body);font-size:15px;background:var(--beige-1);color:var(--text-2);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;display:block}img{height:auto}
a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit;border:none;background:none}
input,select,textarea{font-family:inherit}ul,ol{list-style:none}
h1,h2,h3{font-family:var(--font-serif);color:var(--text-1);line-height:1.18;font-weight:700}
h4,h5,h6{font-family:var(--font-body);color:var(--text-1);font-weight:700;line-height:1.35}
h1{font-size:clamp(2rem,5vw,3.4rem);letter-spacing:-0.01em}
h2{font-size:clamp(1.6rem,3.5vw,2.6rem);letter-spacing:-0.01em}
h3{font-size:clamp(1.1rem,2vw,1.45rem)}
h4{font-size:0.96rem}
p{color:var(--text-3);line-height:1.8}

/* ── DECORATIVE ELEMENTS ─────────────────────────────── */
/* Petal divider — used in section heads */
.petal-divider{display:flex;align-items:center;gap:var(--s3);margin-bottom:var(--s4)}
.petal-divider.center{justify-content:center}
.petal-line{height:1px;width:36px;background:linear-gradient(90deg,transparent,var(--blush))}
.petal-line.right{background:linear-gradient(90deg,var(--blush),transparent)}
.petal-icon{font-size:.9rem;line-height:1;color:var(--blush)}
/* Soft wavy underline accent for headings */
.bloom-underline{position:relative;display:inline-block}
.bloom-underline::after{content:'';position:absolute;left:0;bottom:-4px;width:100%;height:3px;background:linear-gradient(90deg,var(--blush-light),var(--blush),var(--lavender),transparent);border-radius:var(--r-pill)}

/* ── LAYOUT ─────────────────────────────────────────── */
.wrap{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 var(--s6)}
@media(max-width:640px){.wrap{padding:0 var(--s4)}}
.sec{padding:var(--s20) 0}
.sec-sm{padding:var(--s12) 0}

/* ── SECTION HEAD ────────────────────────────────────── */
.sec-head{margin-bottom:var(--s10)}
.sec-head.center{text-align:center}
.sec-head.center p{margin:var(--s3) auto 0;max-width:520px}
.sec-eyebrow{display:inline-block;font-family:var(--font-body);font-size:0.7rem;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:var(--blush-dark);margin-bottom:var(--s3)}
.sec-head h2{margin-bottom:var(--s3)}
.sec-head h2 span{color:var(--blush-dark)}
.sec-head h2 em{font-style:italic;color:var(--lavender-dark)}
.sec-head p{font-size:0.9rem}

/* ── BUTTONS ─────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);font-family:var(--font-body);font-size:0.84rem;font-weight:700;padding:12px 28px;border-radius:var(--r-pill);cursor:pointer;transition:all 220ms ease;white-space:nowrap;line-height:1;border:none;text-decoration:none;letter-spacing:0.01em}
.btn-blush{background:var(--blush);color:#fff;box-shadow:var(--shadow-pink)}
.btn-blush:hover{background:var(--blush-dark);transform:translateY(-2px);box-shadow:0 8px 28px var(--blush-glow)}
.btn-lavender{background:var(--lavender);color:#fff;box-shadow:0 4px 16px var(--lavender-mid)}
.btn-lavender:hover{background:var(--lavender-dark);transform:translateY(-2px)}
.btn-outline{background:transparent;color:var(--blush-dark);border:2px solid var(--blush)}
.btn-outline:hover{background:var(--blush);color:#fff;transform:translateY(-1px)}
.btn-outline-lav{background:transparent;color:var(--lavender-dark);border:2px solid var(--lavender)}
.btn-outline-lav:hover{background:var(--lavender);color:#fff}
.btn-beige{background:var(--beige-2);color:var(--text-2);border:1px solid var(--border-2)}
.btn-beige:hover{background:var(--beige-3)}
.btn-white{background:#fff;color:var(--blush-dark);box-shadow:var(--shadow-sm)}
.btn-white:hover{background:var(--blush-light)}
.btn-wa{background:var(--wa);color:#fff;box-shadow:0 4px 14px var(--wa-glow)}
.btn-wa:hover{background:var(--wa-dark);transform:translateY(-2px)}
.btn-wa svg{width:18px;height:18px;fill:currentColor;flex-shrink:0}
.btn-block{width:100%}
.btn-sm{padding:9px 20px;font-size:0.78rem}
.btn-lg{padding:14px 32px;font-size:0.92rem}
.btn-xl{padding:16px 38px;font-size:0.98rem}

/* ── BADGES ─────────────────────────────────────────── */
.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 14px;font-size:0.62rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;border-radius:var(--r-pill)}
.badge-blush{background:var(--blush-light);color:var(--blush-dark)}
.badge-lav{background:var(--lavender-light);color:var(--lavender-dark)}
.badge-gold{background:var(--gold-light);color:var(--gold)}
.badge-open{background:#dcfce7;color:#15803d}

/* ── ANNOUNCEMENT BAR ────────────────────────────────── */
.announce-bar{background:linear-gradient(90deg,var(--blush-dark),var(--lavender-dark));height:var(--bar-h);display:flex;align-items:center}
.announce-inner{max-width:var(--max-w);width:100%;padding:0 var(--s6);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--s5)}
.announce-ticker{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--s6);overflow:hidden}
.announce-ticker span{font-size:0.72rem;font-weight:600;color:rgba(255,255,255,0.9);white-space:nowrap;display:flex;align-items:center;gap:5px}
.announce-sep{color:rgba(255,255,255,0.35);font-size:.5rem}
.announce-wa{flex-shrink:0;display:flex;align-items:center;gap:5px;background:rgba(255,255,255,0.2);color:#fff;font-size:0.72rem;font-weight:700;padding:5px 14px;border-radius:var(--r-pill);border:1px solid rgba(255,255,255,0.3);transition:background 150ms;white-space:nowrap}
.announce-wa:hover{background:rgba(255,255,255,0.3)}
.announce-wa svg{width:13px;height:13px;fill:currentColor}
@media(max-width:640px){.announce-ticker span:not(:first-child){display:none}.announce-sep{display:none}}

/* ── HEADER ─────────────────────────────────────────── */
.site-header{position:sticky;top:0;z-index:200;height:var(--header-h);background:rgba(255,255,255,0.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);box-shadow:var(--shadow-xs);transition:box-shadow 200ms}
.site-header.scrolled{box-shadow:var(--shadow-sm)}
.header-row{display:flex;align-items:center;height:100%;gap:var(--s4)}
.site-logo{display:flex;align-items:center;gap:var(--s3);flex-shrink:0;margin-right:var(--s5)}
.site-logo img{height:40px;width:auto}
.logo-bloom{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--blush-light),var(--lavender-light));border:2px solid var(--blush-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.3rem}
.logo-words .logo-name{font-family:var(--font-serif);font-size:1.2rem;font-weight:700;color:var(--text-1);letter-spacing:0.02em;line-height:1.1;display:block}
.logo-words .logo-sub{font-size:0.58rem;font-weight:600;letter-spacing:0.16em;text-transform:uppercase;color:var(--text-4);margin-top:1px;display:block}
.header-nav{flex:1;display:flex;align-items:center;justify-content:center}
.nav-list{display:flex;align-items:center;gap:0}
.nav-list>li>a{display:block;padding:var(--s2) var(--s3);font-size:0.84rem;font-weight:600;color:var(--text-3);border-radius:var(--r-sm);transition:all 150ms}
.nav-list>li>a:hover,.nav-list>li.current-menu-item>a{color:var(--blush-dark);background:var(--blush-light)}
.nav-list>li{position:relative}
.nav-list .sub-menu{position:absolute;top:calc(100%+6px);left:0;min-width:200px;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s2);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(-4px);transition:all 200ms;z-index:300}
.nav-list>li:hover>.sub-menu{opacity:1;visibility:visible;transform:translateY(0)}
.nav-list .sub-menu a{display:block;padding:var(--s2) var(--s4);font-size:0.82rem;color:var(--text-3);border-radius:var(--r-sm);transition:all 150ms}
.nav-list .sub-menu a:hover{color:var(--blush-dark);background:var(--blush-light)}
.header-right{display:flex;align-items:center;gap:var(--s3);flex-shrink:0}
.hdr-enroll{display:flex;align-items:center;gap:5px;background:var(--blush);color:#fff;font-size:0.78rem;font-weight:700;padding:9px 20px;border-radius:var(--r-pill);box-shadow:var(--shadow-pink);transition:all 200ms;white-space:nowrap}
.hdr-enroll:hover{background:var(--blush-dark);transform:scale(1.02)}
.hdr-enroll svg{width:15px;height:15px;fill:currentColor}
.menu-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;border-radius:var(--r-md);background:var(--blush-light);transition:background 150ms}
.menu-toggle span{display:block;width:18px;height:2px;background:var(--blush-dark);border-radius:var(--r-pill);transition:all 200ms}
.menu-toggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-toggle.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.menu-toggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:1024px){.header-nav{display:none}.hdr-enroll{display:none}.menu-toggle{display:flex}}
.mobile-nav{position:fixed;top:calc(var(--bar-h)+var(--header-h));left:0;right:0;background:#fff;border-bottom:1px solid var(--border);box-shadow:var(--shadow-lg);z-index:199;padding:var(--s4);display:none;flex-direction:column;gap:3px}
.mobile-nav.open{display:flex}
.mobile-nav li a{display:block;padding:var(--s3) var(--s4);font-size:0.9rem;font-weight:600;color:var(--text-1);border-radius:var(--r-md);border-bottom:1px solid var(--border);transition:all 150ms}
.mobile-nav li a:hover{color:var(--blush-dark);background:var(--blush-light)}
.mobile-nav .m-enroll{margin-top:var(--s3);background:linear-gradient(90deg,var(--blush),var(--lavender));color:#fff;border-radius:var(--r-xl);font-weight:700;text-align:center;padding:var(--s3);display:flex;align-items:center;justify-content:center;gap:var(--s2)}

/* ── HERO ────────────────────────────────────────────── */
/* Soft warm background, no dark backgrounds */
.hero{background:linear-gradient(155deg,var(--beige-1) 0%,var(--blush-light) 50%,var(--lavender-light) 100%);padding:var(--s16) 0 var(--s20);position:relative;overflow:hidden}
/* Soft petal blobs */
.hero-blob-1{position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(ellipse,rgba(232,160,176,0.12),transparent 70%);top:-150px;right:-100px;pointer-events:none}
.hero-blob-2{position:absolute;width:350px;height:350px;border-radius:50%;background:radial-gradient(ellipse,rgba(184,159,212,0.10),transparent 70%);bottom:-80px;left:-80px;pointer-events:none}
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:var(--s12);align-items:center;position:relative;z-index:2}
@media(max-width:768px){.hero-inner{grid-template-columns:1fr;gap:var(--s8)}}
/* Decorative quote mark */
.hero-kicker{display:inline-flex;align-items:center;gap:var(--s2);background:#fff;border:1px solid var(--border);color:var(--blush-dark);font-size:0.78rem;font-weight:700;padding:6px 16px;border-radius:var(--r-pill);margin-bottom:var(--s5);box-shadow:var(--shadow-xs)}
.hero-title{font-size:clamp(2.2rem,6vw,3.8rem);line-height:1.06;margin-bottom:var(--s5)}
.hero-title em{font-style:italic;color:var(--blush-dark)}
.hero-sub{font-size:0.96rem;color:var(--text-3);line-height:1.8;margin-bottom:var(--s8);max-width:480px}
.hero-btns{display:flex;gap:var(--s4);flex-wrap:wrap;margin-bottom:var(--s10)}
.hero-trust{display:flex;align-items:center;gap:var(--s5);flex-wrap:wrap}
.hero-trust-stat{text-align:center}
.hero-trust-val{font-family:var(--font-serif);font-size:1.6rem;font-weight:700;color:var(--blush-dark);line-height:1}
.hero-trust-lbl{font-size:0.65rem;font-weight:600;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-4);margin-top:3px}
.hero-trust-div{width:1px;height:32px;background:var(--border)}
/* Right — card */
.hero-card{background:#fff;border-radius:var(--r-2xl);padding:var(--s6);box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,0.8);position:relative}
.hero-card::before{content:'🌸';position:absolute;top:-14px;right:var(--s6);font-size:1.6rem}
.hero-card-title{font-family:var(--font-serif);font-size:1rem;font-weight:700;color:var(--text-1);margin-bottom:var(--s4);text-align:center}
.hero-courses{display:flex;flex-direction:column;gap:var(--s2);margin-bottom:var(--s5)}
.hero-course-pill{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);background:var(--beige-1);border:1px solid var(--border);border-radius:var(--r-xl);transition:border-color 150ms;text-decoration:none}
.hero-course-pill:hover{border-color:var(--blush)}
.hero-course-icon{width:34px;height:34px;border-radius:50%;background:var(--blush-light);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem}
.hero-course-name{font-size:0.82rem;font-weight:700;color:var(--text-1)}
.hero-course-meta{font-size:0.7rem;color:var(--text-3);margin-top:1px}

/* ── ABOUT ───────────────────────────────────────────── */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s16);align-items:center}
@media(max-width:768px){.about-grid{grid-template-columns:1fr}}
.about-img-wrap{position:relative}
.about-img{border-radius:var(--r-2xl);overflow:hidden;aspect-ratio:4/3;background:var(--beige-2)}
.about-img img{width:100%;height:100%;object-fit:cover}
/* Floating stat badge */
.about-badge{position:absolute;bottom:var(--s5);right:var(--s5);background:#fff;border-radius:var(--r-xl);padding:var(--s4) var(--s5);box-shadow:var(--shadow-md);text-align:center;border:1px solid var(--border)}
.about-badge-val{font-family:var(--font-serif);font-size:1.6rem;font-weight:700;color:var(--blush-dark);line-height:1}
.about-badge-lbl{font-size:0.65rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--text-4);margin-top:2px}
/* Pink dot flourish */
.about-flourish{position:absolute;top:-10px;left:-10px;display:flex;gap:5px;flex-wrap:wrap;width:60px}
.about-flourish-dot{width:8px;height:8px;border-radius:50%;background:var(--blush-light)}
.about-pills{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s5)}
.about-pill{display:flex;align-items:center;gap:5px;padding:5px 14px;background:var(--blush-light);border-radius:var(--r-pill);font-size:0.76rem;font-weight:600;color:var(--blush-dark)}
.about-pill svg{width:12px;height:12px}

/* ── COURSE CARDS ────────────────────────────────────── */
.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5)}
@media(max-width:1024px){.course-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.course-grid{grid-template-columns:1fr}}
.course-card{background:#fff;border-radius:var(--r-2xl);overflow:hidden;box-shadow:var(--shadow-xs);transition:all 280ms ease;border:1px solid var(--border)}
.course-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.course-thumb{position:relative;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,var(--blush-light),var(--lavender-light))}
.course-thumb img{width:100%;height:100%;object-fit:cover;transition:transform 350ms}
.course-card:hover .course-thumb img{transform:scale(1.05)}
.course-thumb-badge{position:absolute;top:var(--s3);left:var(--s3)}
.course-body{padding:var(--s5)}
.course-cat{font-size:0.62rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:var(--lavender-dark);margin-bottom:var(--s2)}
.course-title{font-family:var(--font-serif);font-size:1rem;font-weight:700;color:var(--text-1);line-height:1.35;margin-bottom:var(--s3)}
.course-title a{color:inherit;transition:color 150ms}
.course-title a:hover{color:var(--blush-dark)}
.course-meta{display:flex;flex-direction:column;gap:var(--s2);margin-bottom:var(--s4)}
.course-meta-row{display:flex;align-items:center;gap:var(--s2);font-size:0.76rem;color:var(--text-3)}
.course-meta-row svg{width:13px;height:13px;color:var(--blush);flex-shrink:0}
.course-divider{height:1px;background:linear-gradient(90deg,var(--blush-light),var(--lavender-light),transparent);margin:var(--s3) 0}
.course-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto}
.course-fee{font-family:var(--font-serif);font-size:1.05rem;font-weight:700;color:var(--text-1)}
.course-enroll-btn{font-size:0.76rem;font-weight:700;padding:8px 18px;background:var(--blush-light);color:var(--blush-dark);border-radius:var(--r-pill);cursor:pointer;border:none;transition:all 150ms}
.course-enroll-btn:hover{background:var(--blush);color:#fff}

/* ── WHY US ──────────────────────────────────────────── */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s5)}
@media(max-width:1024px){.why-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.why-grid{grid-template-columns:1fr}}
.why-card{background:#fff;border-radius:var(--r-2xl);padding:var(--s6);box-shadow:var(--shadow-xs);border:1px solid var(--border);transition:all 250ms;text-align:center}
.why-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.why-icon{width:62px;height:62px;border-radius:50%;background:linear-gradient(135deg,var(--blush-light),var(--lavender-light));display:flex;align-items:center;justify-content:center;margin:0 auto var(--s4);font-size:1.6rem;box-shadow:var(--shadow-xs)}
.why-card h4{font-size:0.92rem;margin-bottom:var(--s2);color:var(--text-1)}
.why-card p{font-size:0.78rem;color:var(--text-3);line-height:1.65}

/* ── MENTOR CARDS ────────────────────────────────────── */
.mentor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s5)}
@media(max-width:1024px){.mentor-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.mentor-grid{grid-template-columns:1fr}}
.mentor-card{background:#fff;border-radius:var(--r-2xl);overflow:hidden;box-shadow:var(--shadow-xs);border:1px solid var(--border);text-align:center;transition:all 260ms}
.mentor-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.mentor-card-top{height:80px;background:linear-gradient(135deg,var(--blush-light),var(--lavender-light));position:relative}
.mentor-photo{width:82px;height:82px;border-radius:50%;overflow:hidden;margin:0 auto;border:3px solid #fff;box-shadow:0 0 0 2px var(--blush-light);margin-top:-41px;background:var(--beige-2);position:relative;z-index:2}
.mentor-photo img{width:100%;height:100%;object-fit:cover}
.mentor-initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:var(--font-serif);font-size:1.5rem;font-weight:700;color:var(--blush-dark)}
.mentor-body{padding:var(--s4) var(--s5) var(--s6)}
.mentor-name{font-family:var(--font-serif);font-size:1rem;font-weight:700;color:var(--text-1);margin-bottom:2px;margin-top:var(--s3)}
.mentor-subject{font-size:0.76rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--blush-dark);margin-bottom:var(--s3)}
.mentor-qual{font-size:0.74rem;color:var(--text-3);line-height:1.55;margin-bottom:var(--s4)}
.mentor-tags{display:flex;flex-wrap:wrap;gap:var(--s2);justify-content:center}
.mentor-tag{font-size:0.62rem;font-weight:600;padding:3px 10px;background:var(--lavender-light);color:var(--lavender-dark);border-radius:var(--r-pill)}

/* ── TESTIMONIALS ────────────────────────────────────── */
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5)}
@media(max-width:1024px){.testi-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.testi-grid{grid-template-columns:1fr}}
.testi-card{background:#fff;border-radius:var(--r-2xl);padding:var(--s6);box-shadow:var(--shadow-xs);border:1px solid var(--border);transition:all 250ms;position:relative}
.testi-card::after{content:'';position:absolute;bottom:0;left:20px;right:20px;height:3px;background:linear-gradient(90deg,var(--blush-light),var(--blush),var(--lavender),transparent);border-radius:var(--r-pill);transform:scaleX(0);transition:transform 250ms}
.testi-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.testi-card:hover::after{transform:scaleX(1)}
.testi-quote{font-family:var(--font-serif);font-size:3rem;line-height:.7;color:var(--blush-light);margin-bottom:var(--s3)}
.testi-stars{display:flex;gap:2px;color:var(--gold);margin-bottom:var(--s4)}
.testi-stars svg{width:13px;height:13px;fill:currentColor}
.testi-text{font-size:0.85rem;color:var(--text-2);line-height:1.78;margin-bottom:var(--s5);font-style:italic}
.testi-author{display:flex;align-items:center;gap:var(--s3)}
.testi-ava{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--blush-light),var(--lavender-light));display:flex;align-items:center;justify-content:center;font-family:var(--font-serif);font-size:0.9rem;font-weight:700;color:var(--blush-dark);flex-shrink:0}
.testi-name{font-family:var(--font-body);font-size:0.84rem;font-weight:700;color:var(--text-1)}
.testi-course{font-size:0.7rem;color:var(--text-3)}

/* ── SUCCESS STORIES ─────────────────────────────────── */
.stories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5)}
@media(max-width:1024px){.stories-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.stories-grid{grid-template-columns:1fr}}
.story-card{background:#fff;border-radius:var(--r-2xl);padding:var(--s6);box-shadow:var(--shadow-xs);border:1px solid var(--border);transition:all 250ms;display:flex;align-items:flex-start;gap:var(--s4)}
.story-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.story-emoji{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--blush-light),var(--lavender-light));display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}
.story-name{font-family:var(--font-serif);font-size:0.96rem;font-weight:700;color:var(--text-1);margin-bottom:2px}
.story-tag{font-size:0.62rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--lavender-dark);margin-bottom:var(--s2)}
.story-text{font-size:0.8rem;color:var(--text-3);line-height:1.65}

/* ── GALLERY ─────────────────────────────────────────── */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3)}
@media(max-width:640px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}
.gallery-item{position:relative;overflow:hidden;border-radius:var(--r-xl);background:var(--beige-2);aspect-ratio:1;cursor:pointer}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform 380ms}
.gallery-item:hover img{transform:scale(1.08)}
.gallery-item::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(201,120,138,0.55) 0%,transparent 55%);opacity:0;transition:opacity 250ms}
.gallery-item:hover::after{opacity:1}
.gallery-cap{position:absolute;bottom:var(--s3);left:var(--s3);right:var(--s3);color:#fff;font-size:0.76rem;font-weight:700;z-index:2;opacity:0;transform:translateY(4px);transition:all 250ms}
.gallery-item:hover .gallery-cap{opacity:1;transform:translateY(0)}

/* ── ENROLLMENT CTA ──────────────────────────────────── */
.enroll-cta{background:linear-gradient(135deg,var(--blush-dark),var(--lavender-dark));border-radius:var(--r-2xl);padding:var(--s12) var(--s10);position:relative;overflow:hidden;text-align:center}
.enroll-cta::before{content:'🌸';position:absolute;top:var(--s5);left:var(--s6);font-size:2rem;opacity:0.3}
.enroll-cta::after{content:'✨';position:absolute;bottom:var(--s5);right:var(--s6);font-size:2rem;opacity:0.3}
.enroll-cta h2{font-family:var(--font-serif);color:#fff;font-size:clamp(1.5rem,4vw,2.2rem);margin-bottom:var(--s4)}
.enroll-cta h2 em{font-style:italic;color:rgba(255,255,255,0.85)}
.enroll-cta p{color:rgba(255,255,255,0.8);font-size:0.9rem;max-width:480px;margin:0 auto var(--s8)}
.enroll-cta-btns{display:flex;gap:var(--s4);justify-content:center;flex-wrap:wrap}

/* ── CONTACT ─────────────────────────────────────────── */
.contact-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:var(--s12);align-items:start}
@media(max-width:768px){.contact-layout{grid-template-columns:1fr}}
.contact-card{display:flex;align-items:center;gap:var(--s4);padding:var(--s4) var(--s5);background:#fff;border:1px solid var(--border);border-radius:var(--r-xl);margin-bottom:var(--s3);box-shadow:var(--shadow-xs);transition:all 200ms}
.contact-card:hover{border-color:var(--blush);box-shadow:var(--shadow-sm);transform:translateX(3px)}
.contact-icon{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,var(--blush-light),var(--lavender-light));display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--blush-dark)}
.contact-icon svg{width:20px;height:20px}
.contact-lbl{font-size:0.66rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--text-4);margin-bottom:2px}
.contact-val{font-size:0.88rem;font-weight:700;color:var(--text-1)}
.contact-val a{color:inherit;transition:color 150ms}
.contact-val a:hover{color:var(--blush-dark)}
.contact-form{background:#fff;border-radius:var(--r-2xl);padding:var(--s8);box-shadow:var(--shadow-sm);border:1px solid var(--border)}
.contact-form h3{font-family:var(--font-serif);margin-bottom:var(--s2);color:var(--text-1)}
.contact-form>p{font-size:0.84rem;margin-bottom:var(--s6)}
.form-field{margin-bottom:var(--s4)}
.form-field label{display:block;font-size:0.76rem;font-weight:700;color:var(--text-2);margin-bottom:var(--s2)}
.form-field input,.form-field select,.form-field textarea{width:100%;background:var(--beige-1);border:1.5px solid var(--border);border-radius:var(--r-md);padding:11px 16px;font-size:0.88rem;color:var(--text-1);outline:none;transition:all 150ms;font-family:inherit}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--blush);background:#fff;box-shadow:0 0 0 4px var(--blush-xlight)}
.form-field input::placeholder,.form-field textarea::placeholder{color:var(--text-4)}
.form-field textarea{height:100px;resize:vertical}
.form-2col{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4)}
@media(max-width:480px){.form-2col{grid-template-columns:1fr}}

/* ── SINGLE COURSE ───────────────────────────────────── */
.course-page-wrap{padding:var(--s8) 0 var(--s24)}
.course-page-layout{display:grid;grid-template-columns:1fr 360px;gap:var(--s10);align-items:start}
@media(max-width:1024px){.course-page-layout{grid-template-columns:1fr}}
.course-banner{border-radius:var(--r-2xl);overflow:hidden;aspect-ratio:16/9;background:linear-gradient(135deg,var(--blush-light),var(--lavender-light));margin-bottom:var(--s6)}
.course-banner img{width:100%;height:100%;object-fit:cover}
.course-info h1{font-family:var(--font-serif);color:var(--text-1);margin-bottom:var(--s4)}
.course-meta-strip{display:flex;flex-wrap:wrap;gap:var(--s3);margin-bottom:var(--s6);padding:var(--s4) var(--s5);background:var(--blush-light);border-radius:var(--r-xl);border:1px solid rgba(232,160,176,0.2)}
.course-meta-chip{display:flex;align-items:center;gap:var(--s2);font-size:0.8rem;font-weight:600;color:var(--text-2)}
.course-meta-chip svg{width:14px;height:14px;color:var(--blush-dark);flex-shrink:0}
.course-outcomes{background:var(--lavender-light);border:1px solid rgba(184,159,212,0.2);border-radius:var(--r-xl);padding:var(--s6);margin-bottom:var(--s8)}
.course-outcomes h3{font-family:var(--font-body);font-size:0.95rem;color:var(--lavender-dark);margin-bottom:var(--s4)}
.course-outcomes li{display:flex;align-items:flex-start;gap:var(--s2);font-size:0.82rem;color:var(--text-2);margin-bottom:var(--s2)}
.course-outcomes li svg{width:14px;height:14px;color:var(--blush);flex-shrink:0;margin-top:2px}
/* Enrollment sidebar */
.enroll-sidebar{background:#fff;border:1px solid var(--border);border-radius:var(--r-2xl);padding:var(--s6);box-shadow:var(--shadow-md);position:sticky;top:calc(var(--header-h)+var(--bar-h)+var(--s4))}
.sidebar-thumb{width:100%;aspect-ratio:16/9;border-radius:var(--r-xl);overflow:hidden;background:linear-gradient(135deg,var(--blush-light),var(--lavender-light));margin-bottom:var(--s4)}
.sidebar-thumb img{width:100%;height:100%;object-fit:cover}
.sidebar-title{font-family:var(--font-serif);font-size:0.96rem;font-weight:700;color:var(--text-1);margin-bottom:var(--s5)}
.sidebar-details{display:flex;flex-direction:column;gap:var(--s3);margin-bottom:var(--s5);padding:var(--s4);background:var(--beige-1);border-radius:var(--r-lg);border:1px solid var(--border)}
.sidebar-detail{display:flex;align-items:center;gap:var(--s3);font-size:0.82rem;font-weight:600;color:var(--text-2)}
.sidebar-detail svg{width:15px;height:15px;color:var(--blush-dark);flex-shrink:0}
.sidebar-wa-btn{width:100%;background:var(--wa);color:#fff;font-size:0.92rem;font-weight:700;padding:13px;border-radius:var(--r-xl);display:flex;align-items:center;justify-content:center;gap:var(--s2);cursor:pointer;border:none;box-shadow:0 4px 14px var(--wa-glow);animation:waPulse 2.5s ease infinite;transition:all 200ms}
.sidebar-wa-btn:hover{background:var(--wa-dark);transform:translateY(-2px)}
.sidebar-wa-btn svg{width:20px;height:20px;fill:currentColor}
@keyframes waPulse{0%,100%{box-shadow:0 4px 16px var(--wa-glow)}50%{box-shadow:0 4px 24px rgba(37,211,102,.35)}}

/* ── ENROLLMENT MODAL ────────────────────────────────── */
.modal-overlay{position:fixed;inset:0;background:rgba(42,26,31,0.45);backdrop-filter:blur(5px);z-index:1000;display:none;align-items:center;justify-content:center;padding:var(--s5)}
.modal-overlay.open{display:flex;animation:fadeIn 200ms}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
.bloom-modal{background:#fff;border-radius:var(--r-2xl);padding:var(--s8);max-width:460px;width:100%;box-shadow:var(--shadow-lg);position:relative;animation:popIn 260ms cubic-bezier(.34,1.56,.64,1)}
@keyframes popIn{from{opacity:0;transform:scale(0.94)}to{opacity:1;transform:scale(1)}}
.modal-close{position:absolute;top:var(--s4);right:var(--s4);width:32px;height:32px;border-radius:50%;background:var(--beige-1);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-3);transition:all 150ms}
.modal-close:hover{background:var(--blush);color:#fff;border-color:var(--blush)}
.modal-close svg{width:14px;height:14px}
.modal-flower{font-size:2rem;margin-bottom:var(--s4);text-align:center}
.modal-title{font-family:var(--font-serif);font-size:1.1rem;font-weight:700;color:var(--text-1);margin-bottom:var(--s2)}
.modal-sub{font-size:0.84rem;color:var(--text-3);margin-bottom:var(--s5)}
.modal-course-box{background:var(--blush-light);border:1px solid rgba(232,160,176,0.3);border-radius:var(--r-lg);padding:var(--s3) var(--s4);margin-bottom:var(--s5)}
.modal-course-name{font-family:var(--font-serif);font-size:0.9rem;font-weight:700;color:var(--blush-dark)}
.modal-course-dur{font-size:0.74rem;color:var(--text-3);margin-top:2px}
.modal-wa-btn{width:100%;background:var(--wa);color:#fff;font-size:0.92rem;font-weight:700;padding:13px;border-radius:var(--r-xl);display:flex;align-items:center;justify-content:center;gap:var(--s3);cursor:pointer;border:none;transition:all 200ms;margin-top:var(--s5)}
.modal-wa-btn:hover{background:var(--wa-dark);transform:translateY(-1px)}
.modal-wa-btn svg{width:20px;height:20px;fill:currentColor}
.modal-note{text-align:center;font-size:0.66rem;color:var(--text-4);margin-top:var(--s3)}

/* ── FOOTER ─────────────────────────────────────────── */
.site-footer{background:var(--text-1);color:rgba(255,255,255,0.65)}
.footer-top{padding:var(--s16) 0 var(--s10)}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;gap:var(--s10)}
@media(max-width:1024px){.footer-grid{grid-template-columns:1fr 1fr;gap:var(--s8)}}
@media(max-width:640px){.footer-grid{grid-template-columns:1fr;gap:var(--s6)}}
.footer-logo-bloom{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--blush),var(--lavender));display:flex;align-items:center;justify-content:center;font-size:1.1rem;margin-bottom:var(--s4)}
.footer-brand-name{font-family:var(--font-serif);font-size:1.1rem;color:#fff;display:block;margin-bottom:var(--s4)}
.footer-brand p{font-size:0.82rem;line-height:1.75;max-width:240px;margin-bottom:var(--s5)}
.footer-socials{display:flex;gap:var(--s2)}
.f-social{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.12);color:rgba(255,255,255,0.6);display:flex;align-items:center;justify-content:center;transition:all 150ms}
.f-social svg{width:14px;height:14px}
.f-social:hover{background:var(--blush);border-color:var(--blush);color:#fff}
.footer-col h5{font-size:0.62rem;font-weight:700;letter-spacing:0.16em;text-transform:uppercase;color:rgba(255,255,255,0.3);margin-bottom:var(--s4)}
.f-links{display:flex;flex-direction:column;gap:var(--s3)}
.f-links a{font-size:0.82rem;color:rgba(255,255,255,0.55);transition:color 150ms}
.f-links a:hover{color:var(--blush-light)}
.f-contact-item{display:flex;gap:var(--s3);font-size:0.82rem;color:rgba(255,255,255,0.55);margin-bottom:var(--s3)}
.f-contact-item svg{width:13px;height:13px;flex-shrink:0;margin-top:2px;color:var(--blush)}
.f-contact-item a{color:rgba(255,255,255,0.55);transition:color 150ms}
.f-contact-item a:hover{color:var(--wa)}
.footer-bottom{padding:var(--s4) 0;border-top:1px solid rgba(255,255,255,0.07);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--s4)}
.footer-bottom p{font-size:0.7rem;color:rgba(255,255,255,0.3);margin:0}
.footer-bottom-links{display:flex;gap:var(--s5)}
.footer-bottom-links a{font-size:0.7rem;color:rgba(255,255,255,0.3);transition:color 150ms}
.footer-bottom-links a:hover{color:rgba(255,255,255,0.65)}

/* ── FLOATING ELEMENTS ───────────────────────────────── */
.wa-float{position:fixed;bottom:var(--s6);right:var(--s6);z-index:999;display:flex;flex-direction:column;align-items:flex-end;gap:var(--s2)}
.wa-float-btn{width:54px;height:54px;border-radius:50%;background:var(--wa);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 18px var(--wa-glow);border:none;cursor:pointer;animation:waPulse 2.5s ease infinite;transition:transform 200ms}
.wa-float-btn:hover{transform:scale(1.1)}
.wa-float-btn svg{width:27px;height:27px;fill:currentColor}
.wa-float-tip{background:var(--text-1);color:#fff;font-size:0.68rem;font-weight:700;padding:4px 10px;border-radius:var(--r-sm);white-space:nowrap;opacity:0;transform:translateX(6px);transition:all 200ms;pointer-events:none}
.wa-float:hover .wa-float-tip{opacity:1;transform:translateX(0)}
.btt{position:fixed;bottom:var(--s6);left:var(--s6);width:42px;height:42px;border-radius:50%;background:#fff;border:2px solid var(--blush-light);color:var(--blush-dark);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:999;opacity:0;pointer-events:none;transition:all 200ms;box-shadow:var(--shadow-xs)}
.btt.show{opacity:1;pointer-events:all}
.btt:hover{background:var(--blush);border-color:var(--blush);color:#fff}
.btt svg{width:16px;height:16px}
.toast{position:fixed;bottom:var(--s6);left:50%;transform:translateX(-50%) translateY(16px);background:var(--blush-dark);color:#fff;padding:var(--s3) var(--s6);font-size:0.8rem;font-weight:700;border-radius:var(--r-pill);z-index:9999;opacity:0;pointer-events:none;transition:all 250ms;white-space:nowrap;box-shadow:var(--shadow-pink)}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ── ANIMATIONS ──────────────────────────────────────── */
[data-reveal]{opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease}
[data-reveal].in{opacity:1;transform:translateY(0)}
[data-d="1"]{transition-delay:.1s}[data-d="2"]{transition-delay:.2s}[data-d="3"]{transition-delay:.3s}[data-d="4"]{transition-delay:.4s}

/* ── UTILITIES ───────────────────────────────────────── */
.bg-beige{background:var(--beige-1)}.bg-white{background:var(--beige-0)}
.t-center{text-align:center}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
