/* ============================================================
   EVERGREEN CREATIVE HOUSE — Design System
   Pixel-perfect match to Envens template
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400;1,600&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&display=swap');

:root {
  --bg-body: #080a1a;
  --bg-dark: #060818;
  --bg-card: #0d1128;
  --bg-card-hover: #111636;
  --bg-header-top: #060818;
  --bg-header-nav: rgba(8, 10, 26, 0.97);
  
  --purple: #6c5ce7;
  --purple-light: #7b68ee;
  --purple-dark: #5a4bd1;
  --magenta: #e91e8a;
  --magenta-light: #ff2d78;
  --blue-accent: #2563eb;
  
  --white: #ffffff;
  --text-light: #d8d8e8;
  --text-muted: #9999b0;
  --text-dim: #555570;
  
  --border: rgba(255,255,255,0.08);
  --border-purple: rgba(108,92,231,0.25);
  
  --gradient-hero: linear-gradient(135deg, #e91e8a 0%, #6c5ce7 100%);
  --gradient-counter: linear-gradient(135deg, #e91e8a 0%, #9b59b6 50%, #6c5ce7 100%);
  
  --shadow-sm: 0 2px 10px rgba(0,0,0,0.3);
  --shadow-md: 0 5px 25px rgba(0,0,0,0.4);
  --shadow-purple: 0 5px 30px rgba(108,92,231,0.25);
  
  --font-body: 'Poppins', sans-serif;
  --font-heading: 'Playfair Display', serif;
  
  --container: 1280px;
  --transition: 0.3s ease;
  --smooth: 0.4s cubic-bezier(0.4,0,0.2,1);
}

/* ===== RESET ===== */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:140px;}
body{font-family:var(--font-body);font-size:16px;font-weight:400;line-height:1.7;color:var(--text-light);background:var(--bg-body);overflow-x:hidden;-webkit-font-smoothing:antialiased;}
a{text-decoration:none;color:inherit;transition:color var(--transition);}
ul,ol{list-style:none;}
img{max-width:100%;height:auto;display:block;}
button,input,textarea,select{font-family:inherit;font-size:inherit;border:none;outline:none;background:none;}
button{cursor:pointer;}

/* ===== CONTAINER ===== */
.container{max-width:var(--container);margin:0 auto;padding:0 20px;}

/* ===== SECTION LABELS ===== */
.section-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:500;color:var(--text-muted);letter-spacing:1px;margin-bottom:10px;}
.section-label::before{content:'//';color:var(--purple-light);font-weight:700;}
.section-label::after{content:'//';color:var(--purple-light);font-weight:700;}

.section-title{font-family:var(--font-heading);font-size:48px;font-weight:700;color:var(--white);line-height:1.2;margin-bottom:20px;}
.section-title .highlight{color:var(--magenta);font-style:italic;}

.section-text{font-size:16px;color:var(--text-muted);max-width:650px;line-height:1.8;}

.text-center{text-align:center;}
.text-center .section-label{justify-content:center;}
.text-center .section-text{margin:0 auto;}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;border-radius:4px;transition:all var(--transition);position:relative;overflow:hidden;z-index:1;}
.btn::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;z-index:-1;transition:left var(--transition);}
.btn:hover::before{left:0;}
.btn:hover{color:var(--white);}

.btn-primary{background:var(--purple);color:var(--white);border:2px solid var(--purple);}
.btn-primary::before{background:var(--magenta);}
.btn-primary:hover{border-color:var(--magenta);}

.btn-outline{background:transparent;color:var(--white);border:2px solid rgba(255,255,255,0.3);}
.btn-outline::before{background:var(--purple);}
.btn-outline:hover{border-color:var(--purple);}

.btn-magenta{background:var(--magenta);color:var(--white);border:2px solid var(--magenta);}
.btn-magenta::before{background:var(--purple);}
.btn-magenta:hover{border-color:var(--purple);}

/* ========================================
   HEADER — Exact Envens 2-row
   ======================================== */
.header{position:fixed;top:0;left:0;width:100%;z-index:1000;transition:all var(--transition);}
.header.scrolled{box-shadow:var(--shadow-md);}

/* --- Top Bar --- */
.header-top{background:var(--bg-header-top);padding:10px 0;border-bottom:1px solid var(--border);}
.header-top .container{display:flex;align-items:center;justify-content:space-between;}

.logo{display:flex;align-items:center;gap:0;}
.logo img{height:75px;width:auto;mix-blend-mode:screen;filter:brightness(1.8) contrast(1.1);}

/* "Join With Us" link in top bar — like Envens */
.header-cta{display:flex;align-items:center;gap:12px;margin-left:auto;}
.header-cta .cta-icon{width:40px;height:40px;background:rgba(255,255,255,0.08);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:18px;}
.header-cta a{font-size:14px;font-weight:500;color:var(--white);display:flex;align-items:center;gap:5px;}
.header-cta a i.fa-chevron-down{font-size:10px;color:var(--text-muted);}

/* --- Navigation Bar --- */
.header-nav{background:var(--bg-header-nav);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);}
.header-nav .container{display:flex;align-items:center;justify-content:space-between;}

.nav-menu{display:flex;align-items:center;}
.nav-menu>li>a{display:block;padding:20px 28px;font-size:14px;font-weight:500;color:var(--text-light);text-transform:capitalize;letter-spacing:0.5px;border-right:1px solid var(--border);transition:all var(--transition);}
.nav-menu>li:first-child>a{border-left:1px solid var(--border);}
.nav-menu>li>a:hover,.nav-menu>li>a.active{color:var(--purple-light);background:rgba(108,92,231,0.06);}

.nav-right{display:flex;align-items:center;gap:0;}
.nav-social{display:flex;align-items:center;background:rgba(255,255,255,0.95);overflow:hidden;}
.nav-social a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:#333;font-size:15px;transition:all var(--transition);border-right:1px solid #eee;}
.nav-social a:last-child{border-right:none;}
.nav-social a:hover{background:var(--purple);color:var(--white);}

.nav-search{display:flex;align-items:center;gap:10px;padding:12px 28px;margin-left:0;background:var(--purple);color:var(--white);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition);height:44px;}
.nav-search:hover{background:var(--purple-dark);}
.nav-search i{font-size:16px;}

/* Mobile Toggle */
.mobile-toggle{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:10px;z-index:1001;}
.mobile-toggle span{display:block;width:28px;height:2px;background:var(--white);transition:all var(--transition);border-radius:2px;}
.mobile-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px);}
.mobile-toggle.active span:nth-child(2){opacity:0;}
.mobile-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px);}

/* ========================================
   HERO — Premium animated hero section
   ======================================== */
.hero{position:relative;width:100vw;min-height:100vh;display:flex;align-items:center;overflow:hidden;padding-top:150px;}

/* Background with Ken Burns zoom */
.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;}
.hero-bg img{width:100%;height:100%;object-fit:cover;animation:hero-ken-burns 25s ease-in-out infinite alternate;}
.hero-bg::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(8,10,26,0.5) 0%,rgba(8,10,26,0.35) 40%,rgba(8,10,26,0.7) 100%);}

@keyframes hero-ken-burns{
  0%{transform:scale(1) translateX(0);}
  100%{transform:scale(1.08) translateX(-2%);}
}

/* Diagonal gradient overlay — LEFT side, skewed */
.hero-overlay{position:absolute;top:0;left:-12%;width:58%;height:100%;background:linear-gradient(160deg, #e91e8a 0%, #a855f7 40%, #6c5ce7 100%);transform:skewX(-8deg);z-index:1;opacity:0.85;animation:hero-overlay-in 1.2s cubic-bezier(0.22,1,0.36,1) both;}
.hero-overlay::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(255,255,255,0.08) 0%,transparent 40%,rgba(0,0,0,0.1) 100%);}
/* Shimmer effect on overlay */
.hero-overlay::after{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 40%,rgba(255,255,255,0.04) 50%,transparent 60%);animation:hero-shimmer 6s ease-in-out infinite;}

.hero-overlay-edge{position:absolute;top:0;left:calc(46% - 80px);width:80px;height:100%;background:linear-gradient(160deg,rgba(168,85,247,0.5),rgba(108,92,231,0.3));transform:skewX(-8deg);z-index:1;opacity:0.5;animation:hero-overlay-in 1.2s cubic-bezier(0.22,1,0.36,1) 0.15s both;}

@keyframes hero-overlay-in{
  from{transform:skewX(-8deg) translateX(-100%);opacity:0;}
  to{transform:skewX(-8deg) translateX(0);opacity:0.85;}
}
@keyframes hero-shimmer{
  0%,100%{transform:translateX(-100%) rotate(45deg);}
  50%{transform:translateX(100%) rotate(45deg);}
}

/* Dot pattern top-right corner */
.hero::before{content:'';position:absolute;top:160px;right:50px;width:140px;height:140px;z-index:2;pointer-events:none;opacity:0.15;background-image:radial-gradient(circle,var(--white) 1px,transparent 1px);background-size:12px 12px;animation:fadeInDown 1.5s ease 0.5s both;}

/* Floating Particles System */
.hero-particles{position:absolute;top:0;left:0;width:100%;height:100%;z-index:2;pointer-events:none;overflow:hidden;}
.particle{position:absolute;border-radius:50%;opacity:0;animation:particle-float linear infinite;}

.p1{width:4px;height:4px;background:rgba(168,85,247,0.6);top:20%;left:15%;animation-duration:8s;animation-delay:0s;}
.p2{width:6px;height:6px;background:rgba(233,30,138,0.5);top:60%;left:25%;animation-duration:10s;animation-delay:1s;}
.p3{width:3px;height:3px;background:rgba(255,255,255,0.4);top:30%;left:50%;animation-duration:7s;animation-delay:2s;}
.p4{width:5px;height:5px;background:rgba(108,92,231,0.5);top:70%;left:70%;animation-duration:9s;animation-delay:0.5s;}
.p5{width:4px;height:4px;background:rgba(255,255,255,0.3);top:40%;left:80%;animation-duration:11s;animation-delay:3s;}
.p6{width:7px;height:7px;background:rgba(233,30,138,0.3);top:80%;left:40%;animation-duration:12s;animation-delay:1.5s;}
.p7{width:3px;height:3px;background:rgba(168,85,247,0.5);top:15%;left:65%;animation-duration:8s;animation-delay:4s;}
.p8{width:5px;height:5px;background:rgba(255,255,255,0.25);top:55%;left:90%;animation-duration:10s;animation-delay:2.5s;}

@keyframes particle-float{
  0%{opacity:0;transform:translateY(0) translateX(0);}
  10%{opacity:1;}
  90%{opacity:1;}
  100%{opacity:0;transform:translateY(-120px) translateX(40px);}
}

/* Decorative glow orbs */
.hero-glow{position:absolute;border-radius:50%;filter:blur(80px);z-index:1;pointer-events:none;}
.hero-glow-1{width:350px;height:350px;background:rgba(108,92,231,0.2);top:10%;right:-5%;animation:glow-pulse 5s ease-in-out infinite alternate;}
.hero-glow-2{width:250px;height:250px;background:rgba(233,30,138,0.15);bottom:5%;left:30%;animation:glow-pulse 7s ease-in-out infinite alternate-reverse;}

@keyframes glow-pulse{
  0%{transform:scale(1);opacity:0.4;}
  100%{transform:scale(1.3);opacity:0.7;}
}

/* Hero Content — same container width/inset as the rest of the page */
.hero-content{position:relative;z-index:3;max-width:750px;width:100%;padding:40px 0 60px;}

/* Animated Label */
.hero-label{display:inline-flex;align-items:center;gap:12px;padding:10px 24px;border:1px solid rgba(255,255,255,0.25);border-radius:50px;font-size:13px;font-weight:500;color:rgba(255,255,255,0.9);letter-spacing:2px;text-transform:uppercase;margin-bottom:30px;backdrop-filter:blur(4px);background:rgba(255,255,255,0.05);animation:hero-label-in 0.8s cubic-bezier(0.22,1,0.36,1) 0.3s both;}

.hero-label-line{display:block;width:20px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.7),transparent);animation:label-line-glow 2s ease-in-out infinite;}

@keyframes hero-label-in{from{opacity:0;transform:translateY(-15px) scale(0.95);}to{opacity:1;transform:translateY(0) scale(1);}}
@keyframes label-line-glow{0%,100%{opacity:0.4;width:20px;}50%{opacity:1;width:30px;}}

/* Hero Title — Staggered word reveal */
.hero-title{font-family:var(--font-heading);font-size:78px;font-weight:700;color:var(--white);line-height:1.05;margin-bottom:22px;text-transform:uppercase;}

.hero-title-line{display:block;overflow:hidden;}
.hero-word{display:inline-block;animation:hero-word-reveal 0.9s cubic-bezier(0.22,1,0.36,1) both;}
.hero-title-line:nth-child(1) .hero-word{animation-delay:0.5s;}
.hero-title-line:nth-child(2) .hero-word:nth-child(1){animation-delay:0.65s;}
.hero-title-line:nth-child(2) .hero-word:nth-child(2){animation-delay:0.8s;}
.hero-word.accent{color:var(--magenta);font-style:italic;}

@keyframes hero-word-reveal{
  from{opacity:0;transform:translateY(100%) rotateX(-40deg);filter:blur(4px);}
  to{opacity:1;transform:translateY(0) rotateX(0);filter:blur(0);}
}

/* Subtitle */
.hero-subtitle{font-size:17px;color:rgba(255,255,255,0.75);line-height:1.7;max-width:520px;margin-bottom:35px;animation:hero-subtitle-in 0.8s ease 0.9s both;}
@keyframes hero-subtitle-in{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}

/* CTA Buttons */
.hero-actions{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:40px;}
.hero-btn{animation:hero-btn-in 0.7s cubic-bezier(0.22,1,0.36,1) both;}
.hero-btn:nth-child(1){animation-delay:1.1s;}
.hero-btn:nth-child(2){animation-delay:1.25s;}
@keyframes hero-btn-in{from{opacity:0;transform:translateY(25px);}to{opacity:1;transform:translateY(0);}}

/* Rotating circular discover text */
.hero-discover{position:relative;width:130px;height:130px;animation:hero-btn-in 0.7s ease 1.4s both;}
.hero-discover-circle{width:130px;height:130px;animation:spin-slow 15s linear infinite;position:relative;}
.hero-discover-circle svg{width:100%;height:100%;}
.hero-discover-circle text{fill:rgba(255,255,255,0.7);font-size:11.5px;font-weight:500;letter-spacing:3px;text-transform:uppercase;font-family:var(--font-body);}
.hero-discover-arrow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:50%;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.15);display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--white);transition:all var(--transition);}
.hero-discover:hover .hero-discover-arrow{background:var(--purple);border-color:var(--purple);transform:translate(-50%,-50%) scale(1.1);}

@keyframes spin-slow{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}

/* Slide dots — right edge, vertical */
.hero-dots{position:absolute;right:40px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px;z-index:3;animation:fadeInUp 0.8s ease 1.6s both;}
.hero-dots span{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,0.35);cursor:pointer;transition:all var(--transition);position:relative;}
.hero-dots span.active{background:var(--white);border-color:var(--white);box-shadow:0 0 12px rgba(255,255,255,0.4);}
.hero-dots span:hover{border-color:var(--white);}

/* Scroll Indicator */
.hero-scroll-indicator{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:3;animation:fadeInUp 0.8s ease 1.8s both;}
.scroll-mouse{width:24px;height:38px;border:2px solid rgba(255,255,255,0.35);border-radius:12px;position:relative;}
.scroll-wheel{width:4px;height:8px;background:var(--white);border-radius:2px;position:absolute;top:6px;left:50%;transform:translateX(-50%);animation:scroll-wheel-move 1.8s ease-in-out infinite;}
.hero-scroll-indicator span{font-size:11px;color:rgba(255,255,255,0.45);letter-spacing:2px;text-transform:uppercase;font-weight:500;}

@keyframes scroll-wheel-move{
  0%{opacity:1;transform:translateX(-50%) translateY(0);}
  100%{opacity:0;transform:translateX(-50%) translateY(16px);}
}

/* ========================================
   FEATURES — 3 cards with big numbers
   ======================================== */
.features{padding:100px 0;background:var(--bg-body);position:relative;}

/* Diagonal lines left decoration */
.features::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:60px;height:200px;opacity:0.06;background:repeating-linear-gradient(-45deg,var(--white),var(--white) 2px,transparent 2px,transparent 12px);}

.features-header{text-align:center;margin-bottom:60px;}

.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}

.feature-card{position:relative;border-radius:12px;overflow:hidden;min-height:340px;display:flex;flex-direction:column;justify-content:flex-end;padding:30px;transition:all var(--smooth);cursor:pointer;}
.feature-card-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;}
.feature-card-bg img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease;}
.feature-card:hover .feature-card-bg img{transform:scale(1.06);}
.feature-card-bg::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(8,10,26,0.3) 0%,rgba(8,10,26,0.85) 100%);}

/* Big number behind the card — matching Envens exactly */
.feature-number{position:absolute;top:-10px;left:-5px;font-family:var(--font-heading);font-size:140px;font-weight:700;color:var(--purple);opacity:0.25;z-index:1;line-height:1;pointer-events:none;}

.feature-card-content{position:relative;z-index:2;text-align:center;}
.feature-icon{width:70px;height:70px;background:var(--purple);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:30px;color:var(--white);margin:0 auto 18px;transition:all var(--transition);}
.feature-card:hover .feature-icon{background:var(--magenta);transform:translateY(-5px);}
.feature-card h3{font-family:var(--font-heading);font-size:22px;font-weight:600;color:var(--white);margin-bottom:8px;}
.feature-card p{font-size:14px;color:var(--text-muted);}

/* ========================================
   ABOUT SECTION — left text, right circular images
   ======================================== */
.about-section{padding:100px 0;background:var(--bg-body);position:relative;overflow:hidden;}

.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}

.about-text .section-text{margin-bottom:20px;}
.about-checklist{margin:25px 0;}
.about-checklist li{display:flex;align-items:center;gap:12px;padding:8px 0;font-size:15px;color:var(--purple-light);}
.about-checklist li i{color:var(--purple);font-size:18px;}

/* Countdown timer boxes — matching Envens exactly */
.about-countdown{display:flex;gap:12px;margin-top:30px;}
.countdown-box{width:85px;height:85px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:8px;background:var(--bg-card);border:1px solid var(--border);}
.countdown-box.alt{background:var(--white);border-color:var(--white);}
.countdown-box .num{font-size:30px;font-weight:700;color:var(--white);line-height:1;}
.countdown-box.alt .num{color:var(--purple);}
.countdown-box .lbl{font-size:11px;color:var(--text-dim);text-transform:capitalize;font-weight:500;}
.countdown-box.alt .lbl{color:var(--magenta);}

/* Circular images — exactly like Envens about section */
.about-images{position:relative;display:flex;align-items:center;justify-content:center;min-height:450px;}
.about-img-main{width:300px;height:300px;border-radius:50%;overflow:hidden;position:relative;z-index:2;}
.about-img-main img{width:100%;height:100%;object-fit:cover;}
.about-img-secondary{width:220px;height:220px;border-radius:50%;overflow:hidden;position:absolute;bottom:10px;right:20px;z-index:3;border:4px solid var(--magenta);}
.about-img-secondary img{width:100%;height:100%;object-fit:cover;}
/* Magenta ring decoration around main image */
.about-images::before{content:'';position:absolute;width:360px;height:360px;border:2px solid var(--magenta);border-radius:50%;top:50%;left:45%;transform:translate(-55%,-50%);z-index:1;opacity:0.5;}

/* ========================================
   COUNTER SECTION — dark circles on gradient
   ======================================== */
.counter-section{padding:80px 0;background:var(--gradient-counter);position:relative;overflow:hidden;}
.counter-section::before,.counter-section::after{content:'';position:absolute;border:1px solid rgba(255,255,255,0.1);border-radius:50%;}
.counter-section::before{width:300px;height:300px;top:-100px;left:-100px;}
.counter-section::after{width:200px;height:200px;bottom:-50px;right:100px;}

.counter-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;text-align:center;}

.counter-item{position:relative;}
.counter-circle{width:180px;height:180px;margin:0 auto 15px;border-radius:50%;background:rgba(0,0,0,0.4);display:flex;align-items:center;justify-content:center;position:relative;}
/* Concentric rings around counter circles — exact Envens look */
.counter-circle::before{content:'';position:absolute;width:200px;height:200px;border-radius:50%;border:1px solid rgba(255,255,255,0.12);}
.counter-circle::after{content:'';position:absolute;width:220px;height:220px;border-radius:50%;border:1px dashed rgba(255,255,255,0.06);}

.counter-number{font-family:var(--font-heading);font-size:52px;font-weight:700;color:var(--white);line-height:1;}
.counter-label{font-size:16px;font-weight:500;color:var(--white);text-transform:capitalize;}

/* ========================================
   SCHEDULE SECTION — tabs with pointed arrow
   ======================================== */
.schedule-section{padding:100px 0;background:var(--bg-body);}

.schedule-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:50px;}

.schedule-tabs{display:flex;gap:0;}
.schedule-tab{padding:18px 36px;font-family:var(--font-heading);font-size:20px;font-weight:600;color:var(--bg-body);background:var(--white);border:none;cursor:pointer;transition:all var(--transition);position:relative;border-radius:30px;margin:0 5px;}
.schedule-tab.active{background:var(--purple);color:var(--white);border-radius:30px 30px 30px 30px;}
/* Arrow pointer under active tab */
.schedule-tab.active::after{content:'';position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);border-left:12px solid transparent;border-right:12px solid transparent;border-top:12px solid var(--purple);}

.schedule-tab .tab-date{display:block;font-family:var(--font-body);font-size:12px;font-weight:400;color:var(--magenta);margin-top:2px;}
.schedule-tab.active .tab-date{color:rgba(255,255,255,0.6);}

/* Timeline */
.schedule-timeline{position:relative;padding:20px 0;}
.schedule-timeline::before{content:'';position:absolute;left:50%;top:0;height:100%;width:2px;background:var(--border);}

.timeline-item{display:flex;align-items:center;gap:0;padding:25px 0;position:relative;justify-content:center;}
.timeline-dot{position:absolute;left:50%;transform:translateX(-50%);width:16px;height:16px;border-radius:50%;background:var(--purple);border:3px solid var(--bg-body);z-index:2;}

.timeline-left,.timeline-right{width:45%;}
.timeline-left{text-align:right;padding-right:40px;}
.timeline-right{padding-left:40px;}

.timeline-card{display:flex;align-items:center;gap:20px;background:var(--bg-card);border-radius:12px;padding:20px 25px;border:1px solid var(--border);transition:all var(--transition);}
.timeline-card:hover{border-color:var(--purple);transform:translateY(-3px);box-shadow:var(--shadow-purple);}

.timeline-img{width:80px;height:80px;border-radius:50%;overflow:hidden;flex-shrink:0;border:3px solid rgba(255,255,255,0.1);}
.timeline-img img{width:100%;height:100%;object-fit:cover;}

.timeline-info h4{font-family:var(--font-heading);font-size:18px;font-weight:600;color:var(--white);margin-bottom:6px;}
.timeline-meta{display:flex;flex-direction:column;gap:4px;}
.timeline-meta span{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);}
.timeline-meta i{color:var(--purple-light);font-size:13px;}

/* Speaker avatars in diamond shape */
.timeline-speakers{display:flex;gap:5px;align-items:center;}
.timeline-speakers img{width:40px;height:40px;border-radius:4px;transform:rotate(45deg);border:2px solid var(--bg-card);object-fit:cover;}

.timeline-action{width:120px;height:120px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:all var(--transition);flex-shrink:0;}
.timeline-action:hover{background:var(--purple);border-color:var(--purple);}
.timeline-action i{margin-right:5px;}

/* ========================================
   TICKER / MARQUEE
   ======================================== */
.ticker{padding:80px 0;background:var(--bg-body);overflow:hidden;}
.ticker-track{display:flex;animation:ticker-scroll 25s linear infinite;white-space:nowrap;}
.ticker-item{font-family:var(--font-heading);font-size:clamp(70px,8vw,130px);font-weight:700;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,0.06);text-transform:uppercase;letter-spacing:6px;padding:0 40px;flex-shrink:0;}
@keyframes ticker-scroll{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

/* ========================================
   GALLERY SECTION
   ======================================== */
.gallery-section{padding:100px 0;background:var(--bg-body);}
.gallery-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:50px;}

.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:auto auto;gap:15px;}
.gallery-item{position:relative;border-radius:12px;overflow:hidden;cursor:pointer;height:250px;}
.gallery-item:nth-child(1),.gallery-item:nth-child(2){grid-column:span 2;height:380px;}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease;}
.gallery-item:hover img{transform:scale(1.06);}

/* Vertical text overlay on gallery items — exactly like Envens */
.gallery-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:flex-start;padding:20px;opacity:0;transition:opacity var(--transition);background:linear-gradient(0deg,rgba(8,10,26,0.6) 0%,transparent 60%);}
.gallery-item:hover .gallery-overlay{opacity:1;}
.gallery-overlay .gallery-text{writing-mode:vertical-lr;transform:rotate(180deg);display:flex;flex-direction:column;gap:4px;}
.gallery-overlay .gallery-text .location{font-size:11px;color:var(--text-muted);display:flex;align-items:center;gap:4px;}
.gallery-overlay .gallery-text .location i{color:var(--purple-light);font-size:10px;}
.gallery-overlay .gallery-text h4{font-family:var(--font-heading);font-size:16px;font-weight:600;color:var(--white);}

/* ========================================
   PRICING / PACKAGES
   ======================================== */
.pricing-section{padding:100px 0;background:var(--bg-dark);}
.pricing-header{text-align:center;margin-bottom:60px;}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}

.pricing-card{background:var(--bg-card);border-radius:12px;padding:40px 30px;border:1px solid var(--border);position:relative;overflow:hidden;transition:all var(--smooth);}
.pricing-card:hover{border-color:var(--purple);transform:translateY(-8px);box-shadow:var(--shadow-purple);}
.pricing-card.featured{border-color:var(--purple);background:linear-gradient(180deg,rgba(108,92,231,0.1) 0%,var(--bg-card) 100%);}
.pricing-card.featured::before{content:'POPULAR';position:absolute;top:20px;right:-30px;background:var(--magenta);color:var(--white);font-size:11px;font-weight:700;padding:5px 40px;transform:rotate(45deg);letter-spacing:1px;}

.pricing-icon{width:70px;height:70px;border-radius:10px;background:rgba(108,92,231,0.1);display:flex;align-items:center;justify-content:center;font-size:32px;color:var(--purple);margin-bottom:20px;}
.pricing-card h3{font-family:var(--font-heading);font-size:22px;font-weight:600;color:var(--white);margin-bottom:10px;}
.pricing-card .price{font-size:36px;font-weight:700;color:var(--magenta);margin-bottom:20px;}
.pricing-card .price span{font-size:14px;color:var(--text-muted);font-weight:400;}

.pricing-features{margin-bottom:30px;}
.pricing-features li{display:flex;align-items:center;gap:12px;padding:10px 0;font-size:14px;color:var(--text-muted);border-bottom:1px solid rgba(255,255,255,0.04);}
.pricing-features li:last-child{border-bottom:none;}
.pricing-features li i{color:var(--purple);font-size:14px;}

.pricing-card .btn{width:100%;justify-content:center;}

/* ========================================
   CTA / REGISTRATION FORM
   ======================================== */
.cta-section{padding:80px 0;background:var(--bg-dark);}
.cta-form{display:flex;gap:15px;align-items:center;justify-content:center;flex-wrap:wrap;}
.cta-input{flex:1;min-width:230px;padding:16px 18px;background:var(--white);border-radius:8px;font-size:15px;color:#333;display:flex;align-items:center;gap:10px;}
.cta-input input,.cta-input select{flex:1;border:none;outline:none;font-size:15px;color:#333;background:transparent;}
.cta-input input::placeholder{color:#999;}
.cta-input i{color:#aaa;}
.cta-form .btn{padding:16px 32px;}

/* ========================================
   BLOG / NEWS
   ======================================== */
.blog-section{padding:100px 0;background:var(--bg-body);}
.blog-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:50px;}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}

.blog-card{background:var(--bg-card);border-radius:12px;overflow:hidden;border:1px solid var(--border);transition:all var(--smooth);}
.blog-card:hover{border-color:var(--purple);transform:translateY(-5px);box-shadow:var(--shadow-purple);}

.blog-card-img{position:relative;height:220px;overflow:hidden;}
.blog-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease;}
.blog-card:hover .blog-card-img img{transform:scale(1.05);}
.blog-card-tag{position:absolute;bottom:15px;right:15px;padding:6px 16px;background:var(--purple);color:var(--white);font-size:11px;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:1px;}

.blog-card-body{padding:25px;}
.blog-card-meta{display:flex;gap:20px;margin-bottom:12px;}
.blog-card-meta span{font-size:12px;color:var(--text-dim);display:flex;align-items:center;gap:6px;}
.blog-card-meta i{color:var(--purple-light);}
.blog-card h3{font-family:var(--font-heading);font-size:20px;font-weight:600;color:var(--white);margin-bottom:12px;line-height:1.4;transition:color var(--transition);}
.blog-card:hover h3{color:var(--purple-light);}
.blog-card p{font-size:14px;color:var(--text-muted);margin-bottom:15px;}
.blog-card .read-more{font-size:13px;font-weight:600;color:var(--purple-light);display:flex;align-items:center;gap:6px;text-transform:uppercase;letter-spacing:1px;}
.blog-card .read-more:hover{color:var(--magenta);}

/* ========================================
   FOOTER — 4-column + newsletter bar
   ======================================== */
.footer{background:var(--bg-dark);position:relative;}

.footer-newsletter{background:var(--purple);padding:40px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative;top:-40px;margin-bottom:-40px;}
.footer-newsletter h3{font-family:var(--font-heading);font-size:28px;font-weight:600;color:var(--white);}
.footer-newsletter p{font-size:14px;color:rgba(255,255,255,0.7);}
.newsletter-form{display:flex;gap:10px;}
.newsletter-form input{padding:14px 20px;background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.3);border-radius:4px;color:var(--white);font-size:14px;width:280px;}
.newsletter-form input::placeholder{color:rgba(255,255,255,0.5);}

.footer-main{padding:80px 0 40px;}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.5fr;gap:40px;}

.footer-brand .logo{margin-bottom:20px;}
.footer-brand .logo img{height:65px;}
.footer-brand p{font-size:14px;color:var(--text-muted);margin-bottom:20px;line-height:1.8;}
.footer-social{display:flex;gap:10px;}
.footer-social a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:rgba(108,92,231,0.1);border:1px solid var(--border-purple);color:var(--purple-light);font-size:14px;transition:all var(--transition);}
.footer-social a:hover{background:var(--purple);border-color:var(--purple);color:var(--white);}

.footer-col h4{font-size:18px;font-weight:600;color:var(--white);margin-bottom:25px;position:relative;padding-bottom:12px;}
.footer-col h4::after{content:'';position:absolute;bottom:0;left:0;width:40px;height:2px;background:var(--purple);}

.footer-links li{margin-bottom:12px;}
.footer-links a{font-size:14px;color:var(--text-muted);display:flex;align-items:center;gap:8px;transition:all var(--transition);}
.footer-links a::before{content:'›';color:var(--purple);font-weight:700;}
.footer-links a:hover{color:var(--purple-light);transform:translateX(5px);}

.footer-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.footer-gallery img{width:100%;height:80px;object-fit:cover;border-radius:4px;transition:all var(--transition);cursor:pointer;}
.footer-gallery img:hover{opacity:0.7;transform:scale(1.05);}

.footer-bottom{padding:20px 0;border-top:1px solid var(--border);}
.footer-bottom .container{display:flex;align-items:center;justify-content:space-between;}
.footer-bottom p{font-size:14px;color:var(--text-dim);}
.footer-bottom a{color:var(--purple-light);}

/* ========================================
   PAGE BANNER — matching Envens inner pages
   ======================================== */
.page-banner{position:relative;padding:220px 0 100px;min-height:420px;display:flex;align-items:center;overflow:hidden;}
.page-banner-bg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;}
.page-banner-bg img{width:100%;height:100%;object-fit:cover;}
.page-banner-bg::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(8,10,26,0.85) 0%,rgba(14,18,37,0.8) 50%,rgba(8,10,26,0.85) 100%);}

/* Dot pattern — bottom left */
.page-banner::before{content:'';position:absolute;left:40px;bottom:40px;width:120px;height:120px;opacity:0.2;z-index:1;background-image:radial-gradient(circle,var(--white) 1px,transparent 1px);background-size:10px 10px;}
/* Diagonal lines — top right */
.page-banner::after{content:'';position:absolute;right:0;top:0;width:200px;height:100%;opacity:0.05;z-index:1;background:repeating-linear-gradient(45deg,var(--purple),var(--purple) 2px,transparent 2px,transparent 14px);}

.page-banner-content{position:relative;z-index:2;}
.page-banner h1{font-family:var(--font-heading);font-size:60px;font-weight:700;color:var(--white);margin-bottom:20px;}
.breadcrumb{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;background:rgba(255,255,255,0.05);border:1px solid var(--border);border-radius:4px;font-size:14px;color:var(--text-muted);}
.breadcrumb a{color:var(--white);}
.breadcrumb a:hover{color:var(--purple-light);}
.breadcrumb .separator{color:var(--text-dim);}

/* ========================================
   SERVICES PAGE GRID
   ======================================== */
.services-section{padding:100px 0;background:var(--bg-body);}
.services-intro{text-align:center;margin-bottom:60px;}

.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.service-card{background:var(--bg-card);border-radius:12px;padding:40px 30px;border:1px solid var(--border);text-align:center;position:relative;overflow:hidden;transition:all var(--smooth);}
.service-card:hover{border-color:var(--purple);transform:translateY(-8px);box-shadow:var(--shadow-purple);}
.service-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--purple),var(--magenta));transform:scaleX(0);transition:transform var(--transition);}
.service-card:hover::before{transform:scaleX(1);}

.service-card-icon{width:80px;height:80px;margin:0 auto 25px;border-radius:10px;background:rgba(108,92,231,0.1);display:flex;align-items:center;justify-content:center;font-size:36px;color:var(--purple);transition:all var(--transition);}
.service-card:hover .service-card-icon{background:var(--purple);color:var(--white);transform:scale(1.1);}
.service-card h3{font-family:var(--font-heading);font-size:22px;font-weight:600;color:var(--white);margin-bottom:15px;}
.service-card p{font-size:14px;color:var(--text-muted);line-height:1.7;}
.service-card .service-number{position:absolute;top:15px;right:20px;font-family:var(--font-heading);font-size:44px;font-weight:700;color:rgba(108,92,231,0.08);}

/* Journey CTA */
.journey-section{padding:80px 0;background:var(--bg-dark);text-align:center;}
.journey-section .section-text{margin:0 auto 30px;}

/* ========================================
   PACKAGES PAGE
   ======================================== */
.packages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-bottom:80px;}
.package-card{background:var(--bg-card);border-radius:12px;padding:40px 30px;border:1px solid var(--border);text-align:center;transition:all var(--smooth);position:relative;overflow:hidden;}
.package-card:hover{border-color:var(--purple);transform:translateY(-8px);box-shadow:var(--shadow-purple);}
.package-card.featured-pkg{border-color:var(--magenta);background:linear-gradient(180deg,rgba(233,30,138,0.08) 0%,var(--bg-card) 100%);}
.package-icon{width:80px;height:80px;margin:0 auto 20px;border-radius:50%;background:rgba(108,92,231,0.1);display:flex;align-items:center;justify-content:center;font-size:36px;color:var(--purple);transition:all var(--transition);}
.package-card:hover .package-icon{background:var(--gradient-hero);color:var(--white);}
.package-card h3{font-family:var(--font-heading);font-size:22px;font-weight:600;color:var(--white);margin-bottom:12px;}
.package-card p{font-size:14px;color:var(--text-muted);margin-bottom:25px;}

/* Celebrations */
.celebrations-section{padding:100px 0;background:var(--bg-body);}
.celebrations-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:50px;}
.celebration-item{background:var(--bg-card);border-radius:12px;padding:30px 20px;text-align:center;border:1px solid var(--border);transition:all var(--transition);cursor:pointer;}
.celebration-item:hover{border-color:var(--purple);background:rgba(108,92,231,0.08);transform:translateY(-5px);}
.celebration-item i{font-size:40px;color:var(--purple);margin-bottom:15px;display:block;}
.celebration-item h4{font-size:15px;font-weight:600;color:var(--white);}

/* Broadcast CTA */
.broadcast-cta{padding:60px 0;background:var(--gradient-counter);text-align:center;}
.broadcast-cta h3{font-family:var(--font-heading);font-size:28px;font-weight:600;color:var(--white);margin-bottom:10px;}
.broadcast-cta p{font-size:16px;color:rgba(255,255,255,0.8);margin-bottom:25px;}
.broadcast-cta .phone-number{font-size:40px;font-weight:700;color:var(--white);display:flex;align-items:center;justify-content:center;gap:12px;}

/* ========================================
   CONTACT PAGE
   ======================================== */
.contact-section{padding:100px 0;background:var(--bg-body);}
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:60px;}
.contact-card{background:var(--bg-card);border-radius:12px;padding:40px 30px;text-align:center;border:1px solid var(--border);transition:all var(--smooth);}
.contact-card:hover{border-color:var(--purple);transform:translateY(-5px);box-shadow:var(--shadow-purple);}
.contact-card-icon{width:70px;height:70px;margin:0 auto 20px;border-radius:50%;background:rgba(108,92,231,0.1);display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--purple);}
.contact-card h4{font-family:var(--font-heading);font-size:20px;font-weight:600;color:var(--white);margin-bottom:10px;}
.contact-card p{font-size:14px;color:var(--text-muted);line-height:1.7;}
.contact-card a{color:var(--purple-light);}

.contact-form-section{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.contact-form{background:var(--bg-card);border-radius:12px;padding:40px;border:1px solid var(--border);}
.contact-form h3{font-family:var(--font-heading);font-size:28px;font-weight:600;color:var(--white);margin-bottom:30px;}
.form-group{margin-bottom:20px;}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:14px 18px;background:rgba(255,255,255,0.05);border:1px solid var(--border);border-radius:8px;color:var(--text-light);font-size:15px;transition:border-color var(--transition);}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--purple);}
.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-dim);}
.form-group select{appearance:none;cursor:pointer;color:var(--text-dim);}
.form-group textarea{resize:vertical;min-height:140px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;}

.contact-map{border-radius:12px;overflow:hidden;min-height:400px;}
.contact-map iframe{width:100%;height:100%;border:none;filter:grayscale(0.8) brightness(0.7);}

/* ========================================
   ABOUT PAGE SPECIFICS
   ======================================== */
.vision-mission{padding:100px 0;background:var(--bg-dark);}
.vm-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.vm-card{background:var(--bg-card);border-radius:12px;padding:40px;border:1px solid var(--border);position:relative;overflow:hidden;transition:all var(--smooth);}
.vm-card:hover{border-color:var(--purple);box-shadow:var(--shadow-purple);}
.vm-card::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--purple),var(--magenta));}
.vm-card-icon{width:60px;height:60px;border-radius:10px;background:rgba(108,92,231,0.1);display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--purple);margin-bottom:20px;}
.vm-card h3{font-family:var(--font-heading);font-size:28px;font-weight:600;color:var(--white);margin-bottom:15px;}
.vm-card p{font-size:15px;color:var(--text-muted);line-height:1.8;}

/* Core Values */
.values-section{padding:100px 0;background:var(--bg-body);}
.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:50px;}
.value-card{background:var(--bg-card);border-radius:12px;padding:35px 25px;text-align:center;border:1px solid var(--border);transition:all var(--smooth);position:relative;overflow:hidden;}
.value-card:hover{border-color:var(--purple);transform:translateY(-8px);box-shadow:var(--shadow-purple);}
.value-card::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--magenta),var(--purple));transform:scaleX(0);transition:transform var(--transition);}
.value-card:hover::after{transform:scaleX(1);}
.value-icon{width:70px;height:70px;margin:0 auto 20px;border-radius:50%;background:rgba(108,92,231,0.1);display:flex;align-items:center;justify-content:center;font-size:30px;color:var(--purple);transition:all var(--transition);}
.value-card:hover .value-icon{background:linear-gradient(135deg,var(--purple),var(--magenta));color:var(--white);}
.value-card h4{font-family:var(--font-heading);font-size:20px;font-weight:600;color:var(--white);margin-bottom:12px;}
.value-card p{font-size:14px;color:var(--text-muted);line-height:1.7;}

/* Team */
.team-section{padding:100px 0;background:var(--bg-dark);}
.team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;max-width:800px;margin:50px auto 0;}
.team-card{background:var(--bg-card);border-radius:12px;overflow:hidden;border:1px solid var(--border);transition:all var(--smooth);}
.team-card:hover{border-color:var(--purple);transform:translateY(-5px);box-shadow:var(--shadow-purple);}
.team-card-img{height:280px;overflow:hidden;position:relative;}
.team-card-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s ease;}
.team-card:hover .team-card-img img{transform:scale(1.05);}
.team-card-social{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);display:flex;gap:8px;opacity:0;transition:opacity var(--transition);}
.team-card:hover .team-card-social{opacity:1;}
.team-card-social a{width:36px;height:36px;border-radius:50%;background:var(--purple);display:flex;align-items:center;justify-content:center;color:var(--white);font-size:14px;}
.team-card-body{padding:25px;text-align:center;}
.team-card h4{font-family:var(--font-heading);font-size:20px;font-weight:600;color:var(--white);margin-bottom:5px;}
.team-card span{font-size:14px;color:var(--purple-light);font-weight:500;}

/* ========================================
   SCROLL TO TOP
   ======================================== */
.scroll-top{position:fixed;bottom:30px;right:30px;width:45px;height:45px;background:var(--purple);color:var(--white);border:none;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;z-index:999;opacity:0;visibility:hidden;transition:all var(--transition);box-shadow:var(--shadow-purple);}
.scroll-top.visible{opacity:1;visibility:visible;}
.scroll-top:hover{background:var(--magenta);transform:translateY(-3px);}

/* ========================================
   SEARCH OVERLAY
   ======================================== */
.search-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(8,10,26,0.95);z-index:2000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all var(--transition);}
.search-overlay.active{opacity:1;visibility:visible;}
.search-overlay-content{width:100%;max-width:600px;padding:0 20px;transform:translateY(20px);transition:transform var(--transition);}
.search-overlay.active .search-overlay-content{transform:translateY(0);}
.search-overlay input{width:100%;padding:20px 24px;background:transparent;border:none;border-bottom:2px solid var(--purple);color:var(--white);font-size:32px;font-family:var(--font-heading);}
.search-overlay input::placeholder{color:var(--text-dim);}
.search-close{position:absolute;top:30px;right:30px;width:50px;height:50px;background:transparent;border:1px solid var(--border);color:var(--white);font-size:20px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition);}
.search-close:hover{background:var(--purple);border-color:var(--purple);}

/* ========================================
   PAGE LOADER
   ======================================== */
.page-loader{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--bg-body);display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity 0.5s ease,visibility 0.5s ease;}
.page-loader.hidden{opacity:0;visibility:hidden;}
.loader-spinner{width:50px;height:50px;border:3px solid rgba(108,92,231,0.2);border-top-color:var(--purple);border-radius:50%;animation:spin 0.8s linear infinite;}
@keyframes spin{to{transform:rotate(360deg);}}

/* ========================================
   ANIMATIONS
   ======================================== */
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}
@keyframes fadeInDown{from{opacity:0;transform:translateY(-20px);}to{opacity:1;transform:translateY(0);}}

.reveal{opacity:0;transform:translateY(40px);transition:all 0.8s cubic-bezier(0.4,0,0.2,1);}
.reveal.visible{opacity:1;transform:translateY(0);}
.reveal-left{opacity:0;transform:translateX(-40px);transition:all 0.8s cubic-bezier(0.4,0,0.2,1);}
.reveal-left.visible{opacity:1;transform:translateX(0);}
.reveal-right{opacity:0;transform:translateX(40px);transition:all 0.8s cubic-bezier(0.4,0,0.2,1);}
.reveal-right.visible{opacity:1;transform:translateX(0);}

.stagger-children>*{opacity:0;transform:translateY(20px);transition:all 0.5s ease;}
.stagger-children.visible>*:nth-child(1){transition-delay:0.1s;opacity:1;transform:translateY(0);}
.stagger-children.visible>*:nth-child(2){transition-delay:0.2s;opacity:1;transform:translateY(0);}
.stagger-children.visible>*:nth-child(3){transition-delay:0.3s;opacity:1;transform:translateY(0);}
.stagger-children.visible>*:nth-child(4){transition-delay:0.4s;opacity:1;transform:translateY(0);}
.stagger-children.visible>*:nth-child(5){transition-delay:0.5s;opacity:1;transform:translateY(0);}
.stagger-children.visible>*:nth-child(6){transition-delay:0.6s;opacity:1;transform:translateY(0);}
.stagger-children.visible>*:nth-child(7){transition-delay:0.7s;opacity:1;transform:translateY(0);}
.stagger-children.visible>*:nth-child(8){transition-delay:0.8s;opacity:1;transform:translateY(0);}
.stagger-children.visible>*:nth-child(9){transition-delay:0.9s;opacity:1;transform:translateY(0);}

/* ========================================
   RESPONSIVE — Comprehensive breakpoints
   ======================================== */

/* ===== LARGE DESKTOPS ===== */
@media(max-width:1200px){
  .container{max-width:960px;}
  .section-title{font-size:38px;}
  .hero-title{font-size:62px;}
  .footer-grid{grid-template-columns:1fr 1fr;gap:40px;}
  .hero-overlay{width:62%;}
  .hero-overlay-edge{left:calc(50% - 80px);}
}

/* ===== TABLETS LANDSCAPE ===== */
@media(max-width:992px){
  /* Logo */
  .logo img{height:60px;}
  .footer-brand .logo img{height:55px;}

  /* Hero */
  .hero{min-height:90vh;padding-top:100px;}
  .hero-overlay{width:75%;left:-15%;}
  .hero-overlay-edge{left:calc(60% - 80px);}
  .hero-title{font-size:52px;}
  .hero-subtitle{font-size:15px;max-width:440px;}
  .hero-discover{width:110px;height:110px;}
  .hero-discover-circle{width:110px;height:110px;}
  .hero-glow-1{width:250px;height:250px;}
  .hero-glow-2{width:180px;height:180px;}

  /* Grids */
  .features-grid{grid-template-columns:1fr;gap:20px;}
  .feature-card{min-height:260px;}
  .about-grid{grid-template-columns:1fr;gap:40px;}
  .about-images{min-height:380px;order:-1;}
  .counter-grid{grid-template-columns:repeat(2,1fr);gap:30px;}
  .pricing-grid,.services-grid,.blog-grid{grid-template-columns:1fr 1fr;}
  .gallery-grid{grid-template-columns:repeat(2,1fr);}
  .gallery-item:nth-child(1),.gallery-item:nth-child(2){grid-column:span 1;height:250px;}
  .contact-cards{grid-template-columns:1fr;}
  .contact-form-section{grid-template-columns:1fr;}
  .vm-grid{grid-template-columns:1fr;}
  .values-grid{grid-template-columns:repeat(2,1fr);}
  .celebrations-grid{grid-template-columns:repeat(2,1fr);}

  /* Header — Mobile menu */
  .header-cta{display:none;}
  .nav-social,.nav-search{display:none;}
  .mobile-toggle{display:flex;}
  /* Hamburger now lives in header-top, right of the logo — the nav bar row is left empty (nav-menu becomes a fixed overlay), so collapse it */
  .header-nav{border-bottom:none;}
  .header-nav .container{min-height:0;}

  .nav-menu{position:fixed;top:0;right:-100%;width:300px;height:100vh;background:var(--bg-dark);flex-direction:column;padding:80px 20px 30px;transition:right var(--transition);box-shadow:-5px 0 30px rgba(0,0,0,0.5);overflow-y:auto;z-index:1000;}
  .nav-menu.active{right:0;}
  .nav-menu>li>a{border-right:none;border-bottom:1px solid var(--border);padding:15px 20px;font-size:16px;}
  .nav-menu>li:first-child>a{border-left:none;}

  /* Other sections */
  .schedule-header{flex-direction:column;gap:20px;align-items:flex-start;}
  .schedule-tabs{flex-wrap:wrap;}
  .footer-newsletter{flex-direction:column;text-align:center;}
  .newsletter-form{flex-direction:column;width:100%;}
  .newsletter-form input{width:100%;}
  .timeline-left,.timeline-right{width:100%;}
  .timeline-item{flex-direction:column;gap:15px;}
  .schedule-timeline::before{display:none;}
  .timeline-dot{display:none;}
  .timeline-left{text-align:left;padding-right:0;}
  .timeline-right{padding-left:0;}
}

/* ===== TABLETS PORTRAIT ===== */
@media(max-width:768px){
  .container{max-width:100%;padding:0 16px;}
  .section-title{font-size:30px;}

  /* Logo */
  .logo img{height:50px;}
  .footer-brand .logo img{height:45px;}

  /* Hero */
  .hero .container{padding:0 20px;}
  .hero{min-height:100vh;padding-top:90px;}
  .hero-title{font-size:42px;}
  .hero-subtitle{font-size:14px;max-width:380px;}
  .hero-dots{display:none;}
  .hero-overlay{width:90%;left:-18%;}
  .hero-overlay-edge{display:none;}
  .hero-discover{width:100px;height:100px;}
  .hero-discover-circle{width:100px;height:100px;}
  .hero-discover-circle text{font-size:10px;letter-spacing:2px;}
  .hero-discover-arrow{width:40px;height:40px;font-size:14px;}
  .hero::before{width:80px;height:80px;right:15px;top:120px;}
  .hero-particles .p5,.hero-particles .p6,.hero-particles .p7,.hero-particles .p8{display:none;}
  .hero-scroll-indicator{bottom:20px;}
  .hero-scroll-indicator span{font-size:9px;}
  .hero-content{padding:30px 0 50px 0;}
  .hero-actions{gap:10px;}
  .hero-btn{padding:12px 24px;font-size:12px;}
  .hero-label{font-size:11px;padding:8px 16px;letter-spacing:1px;}

  /* About */
  .about-countdown{flex-wrap:wrap;justify-content:center;}
  .about-images{min-height:320px;}
  .about-img-main{width:230px;height:230px;}
  .about-img-secondary{width:170px;height:170px;}
  .about-images::before{width:280px;height:280px;}

  /* Grids */
  .pricing-grid,.services-grid,.blog-grid{grid-template-columns:1fr;}
  .gallery-grid{grid-template-columns:1fr 1fr;}
  .gallery-item{height:200px;}
  .packages-grid{grid-template-columns:1fr;}

  /* Counter */
  .counter-circle{width:130px;height:130px;}
  .counter-circle::before{width:150px;height:150px;}
  .counter-circle::after{width:170px;height:170px;}
  .counter-number{font-size:38px;}

  /* Other */
  .team-grid{grid-template-columns:1fr;}
  .cta-form{flex-direction:column;}
  .cta-input{min-width:100%;}
  .gallery-header,.blog-header{flex-direction:column;gap:20px;align-items:flex-start;}
  .page-banner{padding:140px 0 70px;min-height:320px;}
  .page-banner h1{font-size:36px;}
  .breadcrumb{padding:10px 18px;font-size:13px;}
  .footer-grid{grid-template-columns:1fr;}
  .footer-bottom .container{flex-direction:column;gap:10px;text-align:center;}
  .form-row{grid-template-columns:1fr;}
  .values-grid,.celebrations-grid{grid-template-columns:1fr 1fr;}
  .ticker-item{letter-spacing:3px;padding:0 20px;}
  .schedule-tab{padding:14px 24px;font-size:17px;}
  .pricing-header .section-text{max-width:100%;}
  .feature-number{font-size:100px;}
  .footer-newsletter{padding:30px 20px;top:-25px;margin-bottom:-25px;}
}

/* ===== SMALL PHONES ===== */
@media(max-width:576px){
  .hero .container{padding:0 16px;}
  .hero-title{font-size:36px;}
  .hero-subtitle{font-size:13px;max-width:100%;}
  .hero-label{font-size:10px;padding:7px 14px;gap:8px;}
  .hero-label-line{width:15px;}
  .hero-actions{flex-direction:column;gap:10px;width:100%;}
  .hero-btn{width:100%;justify-content:center;padding:14px 20px;}
  .hero-overlay{width:100%;left:-10%;opacity:0.8;}
  .hero-discover{width:90px;height:90px;margin-top:20px;}
  .hero-discover-circle{width:90px;height:90px;}
  .hero-discover-circle text{font-size:9px;letter-spacing:1.5px;}
  .hero-discover-arrow{width:36px;height:36px;font-size:12px;}
  .hero-glow-1,.hero-glow-2{display:none;}
  .hero-scroll-indicator{display:none;}

  .section-title{font-size:26px;}
  .counter-grid{grid-template-columns:1fr 1fr;gap:15px;}
  .counter-circle{width:110px;height:110px;}
  .counter-circle::before{width:125px;height:125px;}
  .counter-circle::after{display:none;}
  .counter-number{font-size:32px;}
  .counter-label{font-size:13px;}

  .values-grid,.celebrations-grid{grid-template-columns:1fr;}
  .broadcast-cta .phone-number{font-size:24px;}
  .schedule-tab{padding:12px 18px;font-size:15px;}
  .page-banner{padding:120px 0 50px;min-height:260px;}
  .page-banner h1{font-size:30px;}
  .contact-form{padding:25px 20px;}
  .footer-newsletter h3{font-size:22px;}
  .blog-card-body{padding:18px;}
}

/* ===== EXTRA SMALL ===== */
@media(max-width:380px){
  .logo img{height:42px;}
  .hero{padding-top:75px;}
  .hero-title{font-size:30px;}
  .hero-content{padding:20px 0 40px 0;}
  .container{padding:0 12px;}
  .section-title{font-size:24px;}
  .page-banner h1{font-size:26px;}
  .counter-circle{width:90px;height:90px;}
  .counter-circle::before{width:105px;height:105px;}
  .counter-number{font-size:28px;}
  .counter-label{font-size:12px;}
  .pricing-card,.service-card,.package-card{padding:25px 18px;}
}
