/*
Theme Name: My Custom Child Theme
Theme URI: http://example.com/
Description: Child theme for the Gutenify Starter theme.
Author: Your Name
Author URI: http://example.com/
Template: gutenify-starter
Version: 1.0.0
*/
/* This section is where you will link your custom CSS later */

  /* --- IMPORTS --- */
    @import url('https://fonts.googleapis.com/css2?family=Cabin:wght@400;500;700&family=Montserrat+Alternates:wght@400;600;700&family=Montserrat:wght@500;600;700&display=swap');
    /* SF Pro fallback stack for header navigation */

    /* --- VARIABLES & RESET --- */
    :root {
        /* Colors */
        --bg-color: #F6F6F5;
        --text-dark: #1B1917;
        --accent-gold: #EAC992;
        --accent-border: #D4A76A;
        --white: #FFFFFF;
        
        /* Grey scale - standardized */
        --grey-100: #f5f5f5;
        --grey-200: #e0e0e0;
        --grey-300: #ccc;
        --grey-400: #999;
        --grey-500: #666;
        --grey-600: #555;
        
        /* Typography */
        --font-title: 'Montserrat', sans-serif;
        --font-logo: 'Montserrat Alternates', sans-serif;
        --font-body: 'Cabin', sans-serif;
        --font-system: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro Text', 'Segoe UI', Roboto, sans-serif;
        
        /* Spacing */
        --section-padding: 80px;
        --section-padding-mobile: 60px;
        --container-padding: 20px;
        
        /* Border radius - standardized */
        --radius-sm: 8px;
        --radius-md: 12px;
        --radius-lg: 16px;
        --radius-xl: 20px;
        --radius-2xl: 30px;
        --radius-pill: 50px;
        
        /* Shadows */
        --shadow-sm: 0 4px 15px rgba(0,0,0,0.08);
        --shadow-md: 0 10px 30px rgba(0,0,0,0.08);
        --shadow-lg: 0 10px 30px rgba(0,0,0,0.1);
        
        /* Transitions */
        --transition-fast: 0.2s ease;
        --transition-base: 0.3s ease;
    }

    * {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
    }

    html {
        scroll-behavior: smooth;
    }

    body {
        background-color: var(--bg-color);
        color: var(--text-dark);
        font-family: var(--font-body);
        line-height: 1.7;
    }

    img {
        max-width: 100%;
        height: auto;
        display: block;
    }

    /* --- UTILITIES --- */
    .container {
        max-width: 1140px;
        margin: 0 auto;
        padding: 0 20px;
    }

    .text-center { text-align: center; }
    
    .btn {
        display: inline-block;
        padding: 12px 28px;
        border-radius: var(--radius-pill);
        text-decoration: none;
        font-family: var(--font-title);
        font-weight: 600;
        font-size: 0.9rem;
        transition: var(--transition-base);
        cursor: pointer;
        border: 1px solid transparent;
    }

    .btn-dark {
        background-color: #2D2A26;
        color: var(--white);
        border-color: var(--accent-gold);
    }
    
    .btn-dark:hover {
        background-color: var(--text-dark);
        transform: translateY(-2px);
        box-shadow: var(--shadow-sm);
    }

    .btn-gold {
        background-color: var(--accent-gold);
        color: var(--text-dark);
    }

    .btn-gold:hover {
        background-color: #dcb36d;
        transform: translateY(-2px);
    }

    h1, h2, h3, h4, h5 {
        font-family: var(--font-title);
        font-weight: 600;
        line-height: 1.2;
    }

    h1, h2 {
        margin-bottom: 20px;
    }

    /* Scroll offset for anchor links (accounts for sticky header + countdown bar) */
    [id] {
        scroll-margin-top: 180px;
    }

    /* --- HEADER (Scoped to avoid conflicts) --- */
    #site-header {
        background: var(--bg-color);
        position: sticky;
        top: 0;
        z-index: 100;
    }

    #site-header .header-nav {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 24px 0;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }

    #site-header .header-logo {
        font-family: var(--font-logo);
        font-weight: 700;
        font-size: 1.6rem;
        letter-spacing: 0.5px;
        color: var(--text-dark);
        position: relative;
        display: flex;
        flex-direction: column;
        text-decoration: none;
        line-height: 1.2;
    }

    #site-header .header-logo-subtitle {
        font-family: var(--font-body);
        font-weight: 500;
        font-size: 0.7rem;
        letter-spacing: 1.5px;
        text-transform: uppercase;
        color: var(--text-dark);
        opacity: 0.6;
        margin-top: 2px;
    }

    #site-header .header-logo::after {
        content: '';
        position: absolute;
        bottom: -6px;
        left: 0;
        width: 100%;
        height: 3px;
        background: linear-gradient(90deg, var(--accent-gold), var(--accent-border));
        border-radius: 2px;
    }

    #site-header .header-nav-right {
        display: flex;
        align-items: center;
        gap: 40px;
    }

    #site-header .header-nav-link {
        text-decoration: none;
        color: var(--text-dark);
        font-family: var(--font-body);
        font-size: 1rem;
        font-weight: 500;
        transition: var(--transition-fast);
        position: relative;
    }

    #site-header .header-nav-link::after {
        content: '';
        position: absolute;
        bottom: -4px;
        left: 0;
        width: 0;
        height: 2px;
        background: var(--accent-gold);
        transition: var(--transition-base);
    }

    #site-header .header-nav-link:hover::after {
        width: 100%;
    }

    #site-header .header-nav-link:hover {
        color: var(--text-dark);
    }

    #site-header .header-btn {
        display: inline-block;
        padding: 12px 28px;
        background-color: #2D2A26;
        color: var(--white);
        border: 1.5px solid var(--accent-gold);
        border-radius: var(--radius-pill);
        text-decoration: none;
        font-family: var(--font-title);
        font-size: 0.95rem;
        font-weight: 600;
        transition: var(--transition-base);
    }

    #site-header .header-btn:hover {
        background-color: var(--text-dark);
        transform: translateY(-2px);
        box-shadow: var(--shadow-sm);
    }

    /* --- COUNTDOWN BAR --- */
    .countdown-bar {
        background-color: var(--text-dark);
        color: var(--white);
        padding: 10px 0;
        text-align: center;
        font-size: 0.9rem;
    }
    
    .countdown-bar span {
        margin: 0 10px;
    }
    
    .countdown-bar b {
        font-size: 1.1rem;
        font-weight: 700;
    }

    /* --- HERO SECTION --- */
    .hero {
        padding: var(--section-padding) 0 60px;
    }

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

    .hero-content {
        padding-right: 20px;
    }

    .hero-title {
        font-size: 3rem;
        font-family: var(--font-title);
        font-weight: 600;
        line-height: 1.2;
        margin-bottom: 24px;
        color: var(--text-dark);
    }

    .hero-text {
        font-size: 1rem;
        line-height: 1.7;
        color: var(--grey-600);
        margin-bottom: 30px;
        font-family: var(--font-body);
        font-weight: 400;
    }

    .hero-image-wrapper {
        position: relative;
    }

    .hero-image-wrapper img {
        width: 100%;
        aspect-ratio: 1 / 1;
        object-fit: cover;
        border-radius: var(--radius-xl);
        display: block;
    }

    .hero-badges {
        position: absolute;
        bottom: 20px;
        left: 50%;
        transform: translateX(-50%);
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 12px;
        font-size: 0.9rem;
        color: var(--grey-600);
        font-family: var(--font-body);
        background: rgba(255, 255, 255, 0.95);
        padding: 10px 20px;
        border-radius: var(--radius-2xl);
        white-space: nowrap;
        backdrop-filter: blur(10px);
    }

    .hero-dot {
        width: 6px;
        height: 6px;
        background-color: var(--accent-gold);
        border-radius: 50%;
        display: inline-block;
    }

    /* --- FLOATING OFFER BAR --- */
    .floating-offer {
        background: var(--white);
        border: 1.5px solid var(--accent-gold);
        max-width: 550px;
        margin: 0 auto;
        position: relative;
        z-index: 20;
        border-radius: var(--radius-md);
        padding: 18px 25px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        box-shadow: var(--shadow-md);
        transform: translateY(50%);
    }

    .floating-offer-text h4 {
        margin: 0 0 4px 0;
        font-family: var(--font-title);
        font-weight: 600;
        font-size: 1rem;
        color: var(--text-dark);
    }

    .floating-offer-text small {
        color: var(--grey-500);
        font-family: var(--font-body);
        font-size: 0.85rem;
    }

    .btn-outline-gold {
        display: inline-block;
        padding: 10px 24px;
        background-color: transparent;
        color: var(--text-dark);
        border: 1.5px solid var(--accent-gold);
        border-radius: var(--radius-pill);
        text-decoration: none;
        font-family: var(--font-title);
        font-size: 0.9rem;
        font-weight: 600;
        transition: var(--transition-base);
    }

    .btn-outline-gold:hover {
        background-color: var(--accent-gold);
        transform: translateY(-2px);
    }

    /* --- DARK INTRO SECTION --- */
    .dark-intro {
        background-color: transparent;
        color: var(--white);
        text-align: center;
        padding: 80px 20px 120px;
        margin-top: 0;
        margin-bottom: 0;
        position: relative;
    }

    .dark-intro::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1275' height='296' viewBox='0 0 1275 296' preserveAspectRatio='none'%3E%3Cpath d='M0 0 C0.86498395 -0.00189924 1.7299679 -0.00379848 2.62116348 -0.00575527 C5.55748429 -0.01095668 8.49375786 -0.00895682 11.43008208 -0.00706255 C13.5504448 -0.00931675 15.67080709 -0.01200751 17.79116875 -0.01509839 C23.66915322 -0.02236768 29.54712497 -0.02332765 35.42511332 -0.02332116 C41.80051393 -0.02438668 48.17590878 -0.03117235 54.55130625 -0.03722787 C65.74208832 -0.04703196 76.93286743 -0.05305691 88.12365317 -0.0565449 C100.1363722 -0.06029589 112.1490873 -0.06616464 124.16180396 -0.07462275 C124.91941493 -0.07515384 125.67702589 -0.07568494 126.45759477 -0.07623213 C129.54303128 -0.07839877 132.62846779 -0.08057538 135.7139043 -0.08276606 C173.14678423 -0.10928911 210.57966625 -0.12483645 248.01255295 -0.13792895 C260.14844976 -0.14217718 272.28434641 -0.14674478 284.42024302 -0.15151227 C347.96507014 -0.17641779 411.50989769 -0.19848533 475.05472864 -0.21070265 C479.70753744 -0.21160003 484.36034623 -0.21251473 489.01315503 -0.21343038 C490.39763385 -0.2137028 490.39763385 -0.2137028 491.81008194 -0.21398072 C501.16150066 -0.21582344 510.51291938 -0.21768929 519.86433809 -0.21957881 C521.73935046 -0.21995686 523.61436283 -0.22033316 525.4893752 -0.2207077 C585.72292017 -0.23274077 645.95643628 -0.26243411 706.18996765 -0.30412281 C749.46137762 -0.33406277 792.73278168 -0.36169592 836.00420165 -0.37140048 C836.89365173 -0.37160103 837.78310181 -0.37180159 838.69950492 -0.37200822 C858.22293462 -0.37635832 877.74636429 -0.37930438 897.2697944 -0.38093473 C905.12477419 -0.38161112 912.97975396 -0.38246663 920.83473372 -0.3833729 C921.69443361 -0.383467 922.55413349 -0.38356109 923.43988488 -0.38365804 C951.15868301 -0.38677309 978.87744445 -0.40529885 1006.59622935 -0.43172287 C1034.50717393 -0.45824247 1062.41807752 -0.4690273 1090.3290339 -0.45798689 C1094.18245624 -0.45646526 1098.03587862 -0.45511986 1101.88930106 -0.45387995 C1102.64470701 -0.45363022 1103.40011296 -0.45338049 1104.17841 -0.4531232 C1116.15924806 -0.4496227 1128.14000639 -0.46296348 1140.12082529 -0.48325768 C1151.89016301 -0.50284728 1163.65936783 -0.50430845 1175.42871325 -0.4875314 C1181.72943031 -0.47907067 1188.02987338 -0.47870905 1194.33056572 -0.50014286 C1200.05478818 -0.5194603 1205.77851533 -0.51605351 1211.50272375 -0.49398937 C1213.56808248 -0.49010351 1215.63347782 -0.49472275 1217.69879375 -0.50857639 C1220.49157827 -0.52610612 1223.2825903 -0.5130893 1226.07531261 -0.49219131 C1227.28155606 -0.51083069 1227.28155606 -0.51083069 1228.51216805 -0.52984662 C1234.25491995 -0.43841185 1236.77470849 1.00762332 1240.78835464 5.12995183 C1241.98470811 7.52265878 1241.91790619 8.99785887 1241.92536902 11.66968191 C1241.93044357 12.63138099 1241.93551811 13.59308007 1241.94074643 14.58392155 C1241.94149306 16.17989654 1241.94149306 16.17989654 1241.94225478 17.80811346 C1241.94663704 18.93264936 1241.95101929 20.05718527 1241.95553434 21.21579802 C1241.96896204 25.0097754 1241.97511009 28.80372954 1241.98122573 32.59772527 C1241.98859468 35.30746529 1241.99738689 38.01720041 1242.006006 40.7269367 C1242.03054251 48.87747328 1242.04515895 57.02801598 1242.05806607 65.17857814 C1242.06177708 67.47999069 1242.06575039 69.78140263 1242.06981874 72.08281457 C1242.09505423 86.36891553 1242.11711117 100.65501743 1242.12954688 114.94113576 C1242.13247666 118.2511448 1242.13543831 121.56115381 1242.13845229 124.87116277 C1242.13919834 125.69386758 1242.13994439 126.51657239 1242.14071305 127.36420766 C1242.15336897 140.69406988 1242.18659441 154.02379879 1242.22825412 167.35359868 C1242.27065853 181.033622 1242.29424018 194.71357704 1242.29946744 208.39366591 C1242.30288327 216.07674403 1242.31465835 223.75961381 1242.34757018 231.44262731 C1242.37555143 237.9854276 1242.38657862 244.52797686 1242.37537472 251.07083234 C1242.37018279 254.40954772 1242.37582497 257.74731079 1242.39784026 261.08602178 C1242.42041279 264.70574208 1242.41229042 268.32413004 1242.39635634 271.94385564 C1242.41023843 272.99891608 1242.42412052 274.05397653 1242.43842328 275.1410085 C1242.38833713 279.74661915 1242.35097071 283.07151548 1239.37832999 286.74230421 C1234.68479042 291.06918655 1234.68479042 291.06918655 1230.71682143 291.19632757 C1225.43881504 290.5101124 1220.61967032 289.33100109 1215.60085464 287.57526433 C1214.02067361 287.04261858 1212.44034452 286.51041191 1210.85988784 285.97858465 C1210.03526046 285.69777044 1209.21063308 285.41695623 1208.36101699 285.1276325 C1187.54377056 278.06615068 1166.50060854 272.16793912 1145.20467544 266.74591863 C1142.88379248 266.15428078 1140.56421862 265.55775728 1138.2448976 264.96002996 C1053.57883859 243.21030121 966.63499863 229.85668315 730.75922561 209.22789037 C728.8648028 209.13375078 726.97043724 209.03846117 725.07607436 208.94312322 C652.93203375 205.35756564 579.91503166 205.11657708 507.78835464 209.12995183 C506.58237624 209.19547246 505.37639785 209.26099309 504.13387465 209.3284992 C397.80842925 215.12084415 291.92257642 227.42176414 75.78835464 272.12995183 C73.78968133 272.62484291 71.79098366 273.11963559 69.79226089 273.61432683 C46.58518965 279.37118461 46.58518965 279.37118461 23.56179214 285.81354558 C22.83880935 286.02711706 22.11582656 286.24068853 21.3709352 286.46073186 C18.04281289 287.44837094 14.72319714 288.45497242 11.40944839 289.4903034 C-3.56725018 294.05154202 -3.56725018 294.05154202 -10.64914536 290.31745183 C-13.26479863 288.0845771 -15.04991282 286.49701524 -15.4657957 282.98171622 C-15.46774662 282.1416098 -15.46969754 281.30150338 -15.47170758 280.43593919 C-15.48230597 278.97995381 -15.48230597 278.97995381 -15.49311846 277.49455458 C-15.49070338 276.4257022 -15.4882883 275.35684981 -15.48580003 274.25560796 C-15.49103671 273.12205053 -15.49627339 271.98849309 -15.50166875 270.82058543 C-15.51673413 267.00204154 -15.51737534 263.18363088 -15.51804185 259.36505926 C-15.5245754 256.63546388 -15.53403633 253.90588019 -15.54326463 251.17629278 C-15.56613017 243.74655305 -15.57403691 236.31684187 -15.57909107 228.88707173 C-15.58234631 224.24882793 -15.58886774 219.61059244 -15.59609246 214.97235334 C-15.61566047 202.13301616 -15.63206348 189.29368672 -15.634969 176.45433366 C-15.63515657 175.63245247 -15.63534414 174.81057128 -15.63553739 173.96378459 C-15.63590364 172.29759304 -15.63626734 170.63140148 -15.6366285 168.96520992 C-15.63681131 168.1380977 -15.63699412 167.31098548 -15.63718247 166.45880926 C-15.63736302 165.63068872 -15.63754357 164.80256818 -15.63772959 163.94935308 C-15.64127168 150.52901625 -15.66829529 137.10883984 -15.70568036 123.68855866 C-15.74374677 109.91357494 -15.76312635 96.13867084 -15.76342851 82.36363333 C-15.76401346 74.62804302 -15.77252952 66.89264406 -15.80142617 59.15710294 C-15.82591788 52.57039884 -15.83323809 45.98395586 -15.81817865 39.39721855 C-15.81100018 36.03622904 -15.81461677 32.67617586 -15.83458924 29.31517446 C-15.85492482 25.6714111 -15.84456953 22.02899151 -15.8263762 18.38524663 C-15.83957617 17.32308642 -15.85277614 16.2609262 -15.8663761 15.16657931 C-15.81345952 10.53886554 -15.77503685 7.18534885 -12.79822469 3.48899591 C-8.60634223 -0.33413659 -5.44308493 -0.01283103 0 0 Z' fill='%231D1717' transform='translate(25.211645364761353,-0.1299518346786499)'/%3E%3C/svg%3E");
        background-size: 100% 100%;
        background-repeat: no-repeat;
        background-position: bottom;
        pointer-events: none;
        z-index: -1;
    }

    .dark-intro p {
        font-size: 1.1rem;
        max-width: 680px;
        margin: 0 auto;
        font-family: var(--font-body);
        font-weight: 400;
        line-height: 1.7;
        position: relative;
        z-index: 1;
    }

    /* --- MOBILE INTRO (Hidden on desktop) --- */
    .mobile-intro {
        display: none;
    }

    /* --- INSTRUCTOR SECTION --- */
    .instructor-section {
        padding: 60px 0;
    }

    .instructor-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 30px;
        align-items: start;
    }

    .instructor-left p {
        font-family: var(--font-body);
        font-weight: 400;
        font-size: 1rem;
        line-height: 1.7;
        color: var(--text-dark);
        margin-bottom: 20px;
    }

    .instructor-img-bottom {
        margin-top: 30px;
    }

    .instructor-img-bottom img {
        width: 100%;
        border-radius: var(--radius-lg);
        object-fit: cover;
        aspect-ratio: 549 / 263;
    }

    .instructor-right img {
        width: 100%;
        height: 100%;
        border-radius: var(--radius-lg);
        object-fit: cover;
        aspect-ratio: 590 / 488;
    }

    /* --- WHO IS IT FOR (Dark Card) --- */
    .who-section {
        background-color: var(--text-dark);
        color: var(--white);
        border-radius: var(--radius-2xl);
        padding: 4px;
        margin: 60px auto;
        background: linear-gradient(180deg, #4A9CAD 0%, var(--text-dark) 15%, var(--text-dark) 100%);
    }

    .who-content {
        background-color: var(--text-dark);
        border-radius: calc(var(--radius-2xl) - 4px);
        padding: 50px 60px;
    }

    .who-content h2 {
        margin-bottom: 30px;
    }

    .who-grid {
        display: flex;
        flex-direction: column;
        gap: 25px;
    }

    .who-row {
        display: flex;
        justify-content: flex-start;
        gap: 40px;
    }

    .who-row > * {
        flex: 1;
        max-width: 280px;
    }

    .who-list-item {
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: 0.95rem;
    }

    .who-btn-wrapper {
        display: flex;
        justify-content: flex-start;
    }
    
    .dot {
        height: 8px;
        width: 8px;
        background-color: var(--accent-gold);
        border-radius: 50%;
        display: inline-block;
        flex-shrink: 0;
    }

    /* --- KEY TAKEAWAYS (Circles) --- */
    .takeaways-section {
        padding: var(--section-padding) 0;
        text-align: center;
    }

    .takeaways-title {
        font-size: 2.5rem;
        margin-bottom: 60px;
    }

    .snake-grid {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 30px;
        max-width: 1000px;
        margin: 0 auto;
    }

    .snake-row {
        display: flex;
        justify-content: center;
        gap: 40px;
        position: relative;
    }

    .takeaway-bubble {
        width: 180px;
        height: 180px;
        border: 1px solid var(--accent-border);
        background: #FFFBF2;
        border-radius: 50%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        padding: 20px;
        text-align: center;
        font-size: 0.8rem;
        position: relative;
        z-index: 2;
        transition: var(--transition-base);
    }

    .takeaway-bubble:hover {
        transform: translateY(-4px);
        box-shadow: var(--shadow-md);
    }

    .takeaway-bubble h4 {
        margin-bottom: 2px;
        font-size: 0.85rem;
        font-weight: 500;
        line-height: 1.3;
    }

    .takeaway-bubble p {
        font-size: 0.8rem;
        color: var(--grey-600);
        margin: 0;
        line-height: 1.3;
    }

    .takeaway-icon {
        margin-bottom: 12px;
        color: #333;
    }

    .takeaways-cta {
        margin-top: 60px;
    }

    /* Desktop: Connector lines between circles */
    @media (min-width: 768px) {
        /* Horizontal connectors between circles in same row */
        .snake-row .takeaway-bubble:not(:last-child)::after {
            content: '';
            position: absolute;
            width: 40px;
            height: 1px;
            background: var(--accent-border);
            right: -40px;
            top: 50%;
            z-index: 1;
        }

        /* Diagonal connectors from row 1 to row 2 */
        .snake-row:first-child .takeaway-bubble:nth-child(1)::before {
            content: '';
            position: absolute;
            width: 63px;
            height: 1px;
            background: var(--accent-border);
            bottom: -10px;
            right: -10px;
            transform: rotate(50deg);
            z-index: 1;
        }

        .snake-row:first-child .takeaway-bubble:nth-child(4)::before {
            content: '';
            position: absolute;
            width: 63px;
            height: 1px;
            background: var(--accent-border);
            bottom: -10px;
            left: -10px;
            transform: rotate(-50deg);
            z-index: 1;
        }
    }

    /* --- WHAT YOU WILL GET / BENEFITS --- */
    .benefits-section {
        padding: var(--section-padding) 0;
        text-align: center;
    }

    .benefits-title {
        font-size: 2rem;
        margin-bottom: 50px;
    }

    .benefits-layout {
        display: flex;
        justify-content: center;
        align-items: center;
        max-width: 1000px;
        margin: 0 auto;
        position: relative;
    }

    .benefits-left,
    .benefits-right {
        display: flex;
        flex-direction: column;
        gap: 25px;
        position: relative;
        z-index: 1;
    }

    .benefits-left {
        align-items: flex-start;
        margin-right: -60px;
    }

    .benefits-right {
        align-items: flex-end;
        margin-left: -60px;
    }

    .benefit-pill {
        display: flex;
        align-items: center;
        gap: 12px;
        background: var(--white);
        border: 1.5px solid var(--grey-200);
        border-radius: var(--radius-pill);
        padding: 12px 24px;
        font-family: var(--font-body);
        font-size: 0.9rem;
        color: var(--text-dark);
        transition: var(--transition-base);
        width: 320px;
    }

    .benefits-left .benefit-pill {
        justify-content: flex-start;
        padding-right: 80px;
    }

    .benefits-right .benefit-pill {
        justify-content: flex-end;
        padding-left: 80px;
    }

    .benefit-pill:hover {
        border-color: var(--accent-gold);
        box-shadow: var(--shadow-sm);
        transform: translateY(-2px);
    }

    .benefit-pill-right {
        flex-direction: row;
    }

    .benefit-icon {
        width: 40px;
        height: 40px;
        background: #F5EFE0;
        border-radius: var(--radius-sm);
        display: flex;
        align-items: center;
        justify-content: center;
        flex-shrink: 0;
        color: var(--text-dark);
    }

    .benefits-center {
        position: relative;
        z-index: 2;
    }

    .benefits-center img {
        width: 280px;
        height: 340px;
        object-fit: cover;
        border-radius: var(--radius-md);
        box-shadow: var(--shadow-lg);
    }

    .benefits-cta {
        margin-top: 50px;
    }

    /* --- AGENDA --- */
    .agenda-section {
        background-color: var(--text-dark);
        color: var(--white);
        border-radius: var(--radius-2xl);
        padding: 60px;
        margin: 60px auto;
        text-align: center;
    }
    
    .timeline {
        display: flex;
        justify-content: space-between;
        align-items: center;
        max-width: 800px;
        margin: 40px auto 0;
        position: relative;
    }
    
    .timeline-item {
        position: relative;
        z-index: 2;
        text-align: center;
    }
    
    .t-circle {
        width: 50px;
        height: 50px;
        border: 1px solid var(--accent-gold);
        border-radius: 50%;
        line-height: 50px;
        margin: 0 auto 15px;
        font-family: var(--font-sub);
    }
    
    .timeline-line {
        flex-grow: 1;
        height: 1px;
        background: var(--accent-gold);
        margin: 0 20px;
        margin-bottom: 35px; /* Adjust to align with circle center */
        position: relative;
    }
    
    .timeline-line::after {
        content: '';
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-top: 5px solid transparent;
        border-bottom: 5px solid transparent;
        border-left: 8px solid var(--accent-gold);
    }

    /* --- RESERVE YOUR SEAT SECTION --- */
    .reserve-section {
        background-color: var(--text-dark);
        padding: 60px;
        border-radius: var(--radius-2xl);
        margin: 60px auto;
        max-width: 1140px;
        margin-left: auto;
        margin-right: auto;
    }

    .reserve-section .container {
        padding: 0;
        max-width: 100%;
    }

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

    .reserve-left {
        color: var(--white);
    }

    .reserve-title {
        font-family: var(--font-title);
        font-size: 2.2rem;
        font-weight: 600;
        margin-bottom: 20px;
        color: var(--white);
    }

    .reserve-subtitle {
        font-size: 1rem;
        margin-bottom: 5px;
        color: var(--grey-300);
    }

    .reserve-date {
        font-size: 0.9rem;
        color: var(--grey-400);
        margin-bottom: 30px;
    }

    .reserve-right {
        display: flex;
        justify-content: center;
    }

    .price-card {
        background: var(--white);
        border-radius: var(--radius-md);
        padding: 40px 60px;
        text-align: center;
        min-width: 220px;
    }

    .price-amount {
        font-family: var(--font-title);
        font-size: 3.5rem;
        font-weight: 700;
        color: var(--text-dark);
        line-height: 1;
        margin-bottom: 10px;
    }

    .rupee-symbol {
        font-size: 1.5rem;
        vertical-align: super;
        margin-right: 2px;
    }

    .price-label {
        font-size: 0.9rem;
        color: var(--grey-500);
        margin: 0;
    }

    /* --- INSTRUCTOR BIO SECTION --- */
    .instructor-bio-section {
        padding: var(--section-padding) 0;
        background-color: var(--bg-color);
    }

    .bio-content {
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 60px;
        align-items: flex-start;
    }

    .bio-image {
        width: 280px;
        flex-shrink: 0;
    }

    .bio-image img {
        width: 100%;
        height: auto;
        border-radius: var(--radius-lg);
        object-fit: cover;
        aspect-ratio: 3/4;
    }

    .bio-text {
        padding-top: 20px;
    }

    .bio-name {
        font-family: var(--font-title);
        font-size: 2rem;
        font-weight: 600;
        margin-bottom: 20px;
        color: var(--text-dark);
    }

    .bio-intro {
        font-family: var(--font-body);
        font-size: 1rem;
        line-height: 1.7;
        color: var(--text-dark);
        margin-bottom: 20px;
    }

    .bio-details {
        font-family: var(--font-body);
        font-size: 0.95rem;
        line-height: 1.7;
        color: var(--grey-600);
        margin-bottom: 30px;
    }

    .underline-text {
        text-decoration: underline;
        text-decoration-color: var(--accent-gold);
        text-underline-offset: 3px;
    }

    /* --- FOOTER (Scoped to avoid conflicts) --- */
    #site-footer {
        margin-top: 0;
    }

    #site-footer .footer-main {
        background-color: var(--text-dark);
        padding: 60px 0 40px;
    }

    #site-footer .footer-grid {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 40px;
        align-items: start;
    }

    #site-footer .footer-heading {
        color: var(--grey-400);
        font-family: var(--font-system);
        font-size: 0.85rem;
        font-weight: 400;
        margin-bottom: 20px;
        letter-spacing: 0.5px;
    }

    #site-footer .footer-contact {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    #site-footer .footer-link {
        color: var(--grey-300);
        text-decoration: none;
        font-family: var(--font-system);
        font-size: 0.9rem;
        transition: var(--transition-fast);
        display: inline-flex;
        align-items: center;
        gap: 8px;
    }

    #site-footer .footer-link svg {
        flex-shrink: 0;
        vertical-align: middle;
    }

    #site-footer .footer-link:hover {
        color: var(--white);
    }

    #site-footer .footer-social-icons {
        display: flex;
        gap: 12px;
    }

    #site-footer .footer-icon {
        width: 36px;
        height: 36px;
        border: 1px solid var(--grey-600);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--grey-300);
        transition: var(--transition-fast);
    }

    #site-footer .footer-icon:hover {
        border-color: var(--white);
        color: var(--white);
    }

    #site-footer .footer-top-btn {
        display: flex;
        justify-content: flex-end;
    }

    #site-footer .back-to-top {
        width: 50px;
        height: 50px;
        border: 1px solid var(--grey-600);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--grey-300);
        transition: var(--transition-fast);
    }

    #site-footer .back-to-top:hover {
        border-color: var(--white);
        color: var(--white);
    }

    #site-footer .footer-bottom {
        background-color: var(--text-dark);
        padding: 20px 0 30px;
        text-align: center;
    }

    #site-footer .footer-copyright {
        color: var(--grey-400);
        font-family: var(--font-system);
        font-size: 0.85rem;
        margin: 0;
    }

    /* --- RESPONSIVE --- */
    @media (max-width: 768px) {
        /* Header - Mobile */
        #site-header .header-nav {
            padding: 15px 0;
        }
        #site-header .header-nav-link {
            display: none;
        }
        #site-header .header-btn {
            padding: 10px 20px;
            font-size: 0.85rem;
        }

        /* Countdown Bar - Mobile */
        .countdown-bar {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 8px;
            padding: 12px 15px;
            font-size: 0.8rem;
            flex-wrap: wrap;
        }
        .countdown-bar span {
            margin: 0 5px;
            display: inline-flex;
            align-items: center;
            gap: 3px;
        }
        .countdown-bar b {
            font-size: 1rem;
        }

        /* Hero - Mobile: Full-width image with overlay */
        .hero {
            padding: 0;
            position: relative;
        }
        .hero .container {
            padding: 0;
            max-width: 100%;
        }
        .hero-grid {
            display: flex;
            flex-direction: column;
            gap: 0;
        }
        .hero-content {
            position: absolute;
            bottom: 80px;
            left: 0;
            right: 0;
            padding: 0 20px;
            text-align: left;
            z-index: 10;
            order: 1;
        }
        .hero-title {
            font-size: 1.6rem;
            color: var(--white);
            margin-bottom: 12px;
            text-shadow: 0 2px 15px rgba(0,0,0,0.5);
            line-height: 1.3;
        }
        .hero-text {
            display: none;
        }
        .hero-content .btn {
            padding: 12px 28px;
            font-size: 0.9rem;
            background-color: var(--text-dark);
            border: none;
        }
        .hero-image-wrapper {
            position: relative;
            width: 100%;
            order: 0;
        }
        .hero-image-wrapper img {
            width: 100%;
            height: 70vh;
            min-height: 450px;
            object-fit: cover;
            border-radius: 0;
        }
        .hero-image-wrapper::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            right: 0;
            height: 50%;
            background: linear-gradient(to top, rgba(0,0,0,0.6) 0%, transparent 100%);
            pointer-events: none;
        }
        .hero-badges {
            position: absolute;
            bottom: 12px;
            left: 50%;
            transform: translateX(-50%);
            color: var(--grey-600);
            font-size: 0.75rem;
            z-index: 10;
            background: rgba(255, 255, 255, 0.95);
            padding: 8px 16px;
            border-radius: var(--radius-2xl);
            white-space: nowrap;
            gap: 8px;
            backdrop-filter: blur(10px);
        }
        .hero-dot {
            background-color: var(--accent-gold);
        }

        /* Mobile Intro - Only visible on mobile */
        .mobile-intro {
            display: block;
            background-color: #1D1818;
            color: var(--white);
            text-align: center;
            padding: 30px 25px;
        }
        .mobile-intro p {
            font-family: var(--font-body);
            font-size: 0.95rem;
            line-height: 1.6;
            margin: 0;
        }

        /* Floating Offer - Mobile: Clean white card */
        .floating-offer {
            background: var(--white);
            border: 1px solid #eee;
            border-radius: var(--radius-md);
            max-width: calc(100% - 40px);
            margin: 20px auto;
            padding: 16px 20px;
            transform: none;
            box-shadow: var(--shadow-sm);
            flex-direction: row;
            justify-content: space-between;
            align-items: center;
            gap: 15px;
        }
        .floating-offer-text h4 {
            font-size: 1rem;
            color: var(--text-dark);
            margin-bottom: 2px;
        }
        .floating-offer-text small {
            font-size: 0.8rem;
            color: var(--grey-500);
        }
        .btn-outline-gold {
            padding: 10px 18px;
            font-size: 0.85rem;
            white-space: nowrap;
            background-color: var(--text-dark);
            color: var(--white);
            border: none;
            border-radius: var(--radius-sm);
        }

        /* Dark Intro - Mobile: Hidden */
        .dark-intro {
            display: none;
        }

        /* Instructor Section - Mobile */
        .instructor-grid {
            grid-template-columns: 1fr;
            gap: 20px;
        }
        .instructor-left {
            order: 2;
        }
        .instructor-right {
            order: 1;
        }
        .instructor-right img {
            aspect-ratio: 16 / 9;
            border-radius: var(--radius-md);
        }
        .instructor-img-bottom {
            display: none;
        }

        /* Who's It For - Mobile */
        .who-content {
            padding: 40px 30px;
            text-align: center;
        }
        .who-grid {
            gap: 18px;
        }
        .who-row {
            flex-direction: column;
            gap: 18px;
        }
        .who-row > * {
            max-width: 100%;
        }
        .who-list-item {
            justify-content: center;
        }
        .who-btn-wrapper {
            justify-content: center;
            margin-top: 10px;
        }

        /* Key Takeaways - Mobile: Pill-shaped list */
        .takeaways-section {
            padding: var(--section-padding-mobile) 0;
        }
        .takeaways-title {
            font-size: 1.8rem;
            margin-bottom: 40px;
        }
        .snake-grid {
            display: flex;
            flex-direction: column;
            gap: 15px;
            max-width: 350px;
        }
        .snake-row {
            display: flex;
            flex-direction: column;
            gap: 15px;
        }
        .takeaway-bubble {
            width: 100%;
            height: auto;
            border-radius: var(--radius-pill);
            flex-direction: row;
            justify-content: flex-start;
            padding: 15px 25px;
            text-align: left;
            gap: 15px;
        }
        .takeaway-bubble h4 {
            font-size: 0.9rem;
        }
        .takeaway-bubble p {
            display: none;
        }
        .takeaway-icon {
            margin-bottom: 0;
            width: 45px;
            height: 45px;
            background: #F5EFE0;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }
        .takeaway-bubble::after,
        .takeaway-bubble::before {
            display: none !important;
        }
        .takeaways-cta {
            margin-top: 40px;
        }

        .timeline {
            flex-direction: column;
            gap: 30px;
        }
        .timeline-line {
            width: 1px;
            height: 30px;
            margin: 0;
        }
        .timeline-line::after {
            right: auto;
            top: auto;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%);
            border-top: 8px solid var(--accent-gold);
            border-bottom: none;
            border-left: 5px solid transparent;
            border-right: 5px solid transparent;
        }

        /* Benefits Section - Mobile */
        .benefits-section {
            padding: var(--section-padding-mobile) 20px;
        }
        .benefits-title {
            font-size: 1.6rem;
            margin-bottom: 30px;
        }
        .benefits-layout {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 15px;
        }
        .benefits-center {
            display: none;
        }
        .benefits-left,
        .benefits-right {
            align-items: stretch;
            gap: 15px;
            margin: 0;
        }
        .benefit-pill,
        .benefit-pill-right {
            flex-direction: column;
            text-align: center;
            padding: 20px 15px;
            border-radius: var(--radius-md);
            gap: 10px;
            width: 100%;
        }
        .benefits-left .benefit-pill {
            padding: 20px 15px;
        }
        .benefits-right .benefit-pill {
            padding: 20px 15px;
            flex-direction: column-reverse;
        }
        .benefit-pill span {
            font-size: 0.85rem;
            line-height: 1.3;
        }
        .benefits-cta {
            margin-top: 35px;
        }

        /* Reserve Your Seat - Mobile */
        .reserve-section {
            margin: 40px 15px;
            padding: 50px 20px;
            border-radius: var(--radius-xl);
        }
        .reserve-content {
            grid-template-columns: 1fr;
            gap: 40px;
            text-align: center;
        }
        .reserve-left {
            order: 2;
        }
        .reserve-right {
            order: 1;
        }
        .reserve-title {
            font-size: 1.6rem;
        }
        .price-card {
            padding: 30px 50px;
        }
        .price-amount {
            font-size: 2.8rem;
        }

        /* Instructor Bio - Mobile */
        .instructor-bio-section {
            padding: var(--section-padding-mobile) 0;
        }
        .bio-content {
            grid-template-columns: 1fr;
            gap: 30px;
        }
        .bio-image {
            display: flex;
            justify-content: center;
        }
        .bio-image img {
            width: 150px;
            height: 150px;
            border-radius: 50%;
            object-fit: cover;
            aspect-ratio: 1/1;
        }
        .bio-text {
            padding-top: 0;
            text-align: center;
        }
        .bio-name {
            font-size: 1.5rem;
            margin-bottom: 15px;
        }
        .bio-intro {
            font-size: 0.9rem;
        }
        .bio-details {
            font-size: 0.85rem;
            text-align: justify;
        }

        #site-footer .footer-grid {
            grid-template-columns: 1fr;
            text-align: center;
        }
        #site-footer .footer-social-icons {
            justify-content: center;
        }
        #site-footer .footer-top-btn {
            justify-content: center;
        }
    }

    /* --- FAQ SECTION --- */
    .faq-section {
        padding: var(--section-padding) 0;
        background-color: var(--bg-color);
    }

    .faq-title {
        font-family: var(--font-title);
        font-size: 2rem;
        font-weight: 600;
        text-align: center;
        margin-bottom: 50px;
        color: var(--text-dark);
        position: relative;
        display: inline-block;
        width: 100%;
    }

    .faq-title::after {
        content: '';
        position: absolute;
        bottom: -10px;
        left: 50%;
        transform: translateX(-50%);
        width: 80px;
        height: 3px;
        background: var(--accent-gold);
        border-radius: 2px;
    }

    .faq-list {
        max-width: 800px;
        margin: 0 auto;
    }

    .faq-item {
        border-bottom: 1px dashed var(--grey-300);
        overflow: hidden;
    }

    .faq-item:first-child {
        border-top: 1px dashed var(--grey-300);
    }

    .faq-question {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 20px 10px;
        background: transparent;
        border: none;
        cursor: pointer;
        font-family: var(--font-body);
        font-size: 1rem;
        color: var(--text-dark);
        text-align: left;
        transition: var(--transition-fast);
    }

    .faq-question:hover {
        background-color: rgba(0, 0, 0, 0.02);
    }

    .faq-question span {
        flex: 1;
        padding-right: 15px;
    }

    .faq-chevron {
        flex-shrink: 0;
        transition: var(--transition-base);
        color: var(--grey-500);
    }

    .faq-item.active .faq-chevron {
        transform: rotate(180deg);
    }

    .faq-answer {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease, padding 0.3s ease;
    }

    .faq-item.active .faq-answer {
        max-height: 200px;
        padding: 0 10px 20px;
    }

    .faq-answer p {
        font-family: var(--font-body);
        font-size: 0.95rem;
        line-height: 1.7;
        color: var(--grey-600);
        margin: 0;
    }

    /* FAQ Mobile Styles */
    @media (max-width: 768px) {
        .faq-section {
            padding: var(--section-padding-mobile) 0;
        }

        .faq-title {
            font-size: 1.6rem;
            margin-bottom: 40px;
        }

        .faq-question {
            padding: 18px 5px;
            font-size: 0.9rem;
        }

        .faq-answer p {
            font-size: 0.85rem;
        }
    }

    /* ================================
       POLICY PAGES STYLES
    ================================ */
    .policy-page {
        padding: 80px 0;
        min-height: calc(100vh - 200px);
    }

    .policy-content {
        max-width: 800px;
        margin: 0 auto;
        background: var(--white);
        padding: 60px;
        border-radius: var(--radius-lg);
        box-shadow: var(--shadow-sm);
    }

    .policy-title {
        font-family: var(--font-title);
        font-size: 2.5rem;
        font-weight: 700;
        color: var(--text-dark);
        margin-bottom: 10px;
    }

    .policy-date {
        font-family: var(--font-body);
        font-size: 0.9rem;
        color: var(--grey-500);
        margin-bottom: 40px;
        padding-bottom: 30px;
        border-bottom: 1px solid var(--grey-200);
    }

    .policy-section {
        margin-bottom: 35px;
    }

    .policy-section h2 {
        font-family: var(--font-title);
        font-size: 1.4rem;
        font-weight: 600;
        color: var(--text-dark);
        margin-bottom: 15px;
    }

    .policy-section h3 {
        font-family: var(--font-title);
        font-size: 1.1rem;
        font-weight: 600;
        color: var(--text-dark);
        margin: 20px 0 10px;
    }

    .policy-section p {
        font-family: var(--font-body);
        font-size: 1rem;
        line-height: 1.8;
        color: var(--grey-600);
        margin-bottom: 15px;
    }

    .policy-section ul,
    .policy-section ol {
        margin: 15px 0;
        padding-left: 25px;
    }

    .policy-section li {
        font-family: var(--font-body);
        font-size: 1rem;
        line-height: 1.8;
        color: var(--grey-600);
        margin-bottom: 8px;
    }

    .policy-section strong {
        color: var(--text-dark);
        font-weight: 600;
    }

    /* Footer Links Column */
    .footer-links {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }

    /* Policy Pages Mobile Styles */
    @media (max-width: 768px) {
        .policy-page {
            padding: 40px 0;
        }

        .policy-content {
            padding: 30px 20px;
        }

        .policy-title {
            font-size: 1.8rem;
        }

        .policy-section h2 {
            font-size: 1.2rem;
        }

        .policy-section p,
        .policy-section li {
            font-size: 0.95rem;
        }
    }
    .header-logo {
    display: flex;
    align-items: center;
}

.header-logo a {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.site-logo {
    height: 72px;
    width: auto;
    display: block;
}

@media (max-width: 768px) {
    .site-logo {
        height: 52px;
    }
}
.who-section h2 {
  color: #ffffff !important;
}
.agenda-section h2 {
  color: #ffffff !important;
}
/* --- MOBILE FOOTER FIX --- */
@media (max-width: 768px) {

    #site-footer .footer-grid {
        grid-template-columns: 1fr;
        text-align: center;
        gap: 30px;
    }

    #site-footer .footer-contact {
        align-items: center;
    }

    #site-footer .footer-link {
        justify-content: center;
    }

    #site-footer .footer-social-icons {
        justify-content: center;
    }

    #site-footer .footer-top-btn {
        justify-content: center;
        margin-top: 10px;
    }

}
@media (max-width: 768px) {

    .bio-content {
        display: grid;
        grid-template-columns: 1fr;
        justify-items: center;
        text-align: center;
    }

    .bio-image {
        display: flex;
        justify-content: center;
        width: 100%;
    }

}