
:root{
  --bg: #fff;
  --panel: #fff;
  --panel-2: #241B0E;
  --gold: #c97650;
  --gold-bright: #c97650;
  --ivory: #1C140A;
  --ivory-dim: #1C140A;
  --bronze: #A88B4F;
  --line: #332608;


}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:#1C140A;overflow-x:hidden;}
@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;}}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
::selection{background:var(--gold);color:var(--bg);}
.grain{position:fixed;inset:0;pointer-events:none;z-index:999;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100' height='100'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");}
section{position:relative;}
.section-pad{padding:50px 0;}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:30px;gap:24px;flex-wrap:wrap;}
.section-eyebrow{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:16px;display:flex;align-items:center;gap:12px;}
.section-eyebrow::before{content:'';width:30px;height:1px;background:var(--gold);}
.section-head h2{font-size:clamp(28px,3.6vw,44px);font-weight:400;color:var(--ivory);max-width:560px;}
.section-head h2 em{color:rgb(180, 134, 22);}
.section-sub{color:var(--ivory-dim);font-size:15px;line-height:1.7;max-width:700px;}
.btn-primary{background:var(--gold);color:var(--bg);padding:15px 32px;font-size:14px;letter-spacing:1px;font-weight:500;border-radius:2px;transition:all .35s;display:inline-flex;align-items:center;gap:10px;}
.btn-primary:hover{background:var(--gold-bright);transform:translateY(-2px);}
.btn-outline{border:1px solid var(--gold);color:var(--gold-bright);padding:13px 30px;font-size:13px;letter-spacing:1px;border-radius:2px;transition:all .3s;display:inline-block;}
.btn-outline:hover{background:var(--gold);color:var(--bg);}
.tag{display:inline-block;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;padding:5px 14px;border-radius:2px;}
.tag-paid{background:var(--gold);color:var(--bg);}
.tag-free{background:transparent;border:1px solid var(--gold-bright);color:var(--gold-bright);}
.hscroll{display:flex;gap:22px;overflow-x:auto;padding-bottom:14px;scrollbar-width:none;}
.hscroll::-webkit-scrollbar{display:none;}
.divider-gold{height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);}



/* ---- topbar ---- */
.topbar{background:#F2B00C;font-size:16px;}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;padding:10px 32px;}
.topbar-contact{display:flex;gap:22px;color:var(--ivory-dim);}
.topbar-contact a{color:#fff;transition:color .3s;}
.topbar-contact a:hover{color:#000;}
.topbar-social{display:flex;gap:16px;}
.topbar-social a{color:#fff;font-size:16px;transition:color .3s;}
.topbar-social a:hover{color:#000;}

/* ---- header ---- */
header{position:sticky;top:0;z-index:100;background:#F7F3E8;}
.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 2px;max-width:1280px;margin:0 auto;gap:20px;}
.logo-mark{display:flex;align-items:center;gap:10px;}
.logo-sun{width:36px;height:36px;flex-shrink:0;}
.logo-text{font-size:23px;font-weight:500;color:var(--ivory);white-space:nowrap;}
.logo-text em{color:var(--gold-bright);}
.nav-links{display:flex;gap:15px;list-style:none;font-size:14px;}
.nav-links>li{position:relative;}
.nav-links>li>a{color:var(--ivory-dim);transition:color .3s;display:flex;align-items:center;gap:5px;padding:8px 0;}
.nav-links>li:hover>a{color:var(--gold-bright);}
.nav-links .sub{position:absolute;top:100%;left:0;background:var(--panel);border:1px solid var(--line);min-width:220px;padding:10px 0;opacity:0;visibility:hidden;transform:translateY(6px);transition:all .25s;list-style:none;z-index:50;}
.nav-links>li:hover .sub{opacity:1;visibility:visible;transform:translateY(0);}
.nav-links .sub li a{display:block;padding:9px 20px;font-size:13.5px;color:var(--ivory-dim);}
.nav-links .sub li a:hover{color:var(--gold-bright);background:var(--panel-2);}
.nav-cta{border:1px solid var(--gold);color:var(--gold-bright);padding:10px 22px;font-size:13px;letter-spacing:.5px;border-radius:2px;transition:all .3s;white-space:nowrap;}
.nav-cta:hover{background:var(--gold);color:var(--bg);}
.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;}
.burger span{width:24px;height:1.5px;background:var(--ivory);}

/* ---- hero ---- */
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center;max-width:1280px;margin:0 auto;padding:0 32px;width:100%;}
.eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:26px;font-size:13px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);}
.eyebrow::before{content:'';width:36px;height:1px;background:var(--gold);}
.hero h1{font-size:clamp(38px,5.6vw,64px);font-weight:400;line-height:1.1;color:#fff;margin-bottom:24px;}
.hero h1 em{color:var(--gold-bright);font-weight:300;}
.hero p{font-size:16.5px;line-height:1.75;max-width:480px;margin-bottom:36px; color: #fff;}
.hero-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;}
.play-circle{width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--gold);}
.btn-ghost{color:var(--ivory);font-size:14px;letter-spacing:.5px;display:inline-flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding-bottom:4px;transition:border-color .3s;}
.btn-ghost:hover{border-color:var(--gold);}
.breath-wrap{position:relative;display:flex;align-items:center;justify-content:center;height:480px;}
.breath-svg{width:100%;max-width:430px;}
.breath-ring{transform-origin:250px 250px;animation:breathe 8s ease-in-out infinite;}
.breath-ring.r2{animation-delay:-1s;}
.breath-ring.r3{animation-delay:-2s;}
@keyframes breathe{0%,100%{transform:scale(.94);opacity:.55;}50%{transform:scale(1.04);opacity:1;}}
.breath-label{position:absolute;bottom:10%;left:50%;transform:translateX(-50%);text-align:center;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:var(--ivory-dim);animation:fadeText 8s ease-in-out infinite;}
@keyframes fadeText{0%,100%{opacity:.4;}50%{opacity:1;}}
.hero-stats{display:flex;margin-top:20px;margin-bottom: 20px;}
.hero-stats div{text-align:center;}
.hero-stats .n{font-size:14px;color:var(--gold-bright);}
.hero-stats .l{font-size:12px;color:var(--ivory-dim);letter-spacing:.5px;margin-top:2px;}

@media (max-width:980px){
  .nav-links,.nav-cta{display:none;}
  .burger{display:flex;}
  .hero-grid{grid-template-columns:1fr;text-align:center;}
  .hero p{margin:0 auto 36px;}
  .hero-actions{justify-content:center;}
  .hero-stats{justify-content:center;}
  .breath-wrap{height:320px;order:-1;}
  .topbar-contact{font-size:12px;gap:14px;}
}
.wa-grid{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:20px;
}

.wa-item{
    overflow:hidden;
    border-radius:8px;
}

.wa-item img{
    width:100%;
    display:block;
    transition:.4s;
}

.wa-item:hover img{
    transform:scale(1.05);
}
/* =====================================================
   MULTI LEVEL COURSES MENU
===================================================== */

/* Header / Nav must allow dropdowns */
header,
nav.nav {
    position: relative;
    overflow: visible !important;
    z-index: 99999;
}

.nav-links {
    overflow: visible !important;
}


/* Main menu item */
.nav-links > li {
    position: relative;
}


/* =====================================================
   FIRST LEVEL DROPDOWN
===================================================== */

.nav-links > li > .sub {
    position: absolute !important;

    top: calc(100% + 8px);
    left: 0;

    min-width: 240px;

    margin: 0;
    padding: 7px 0;

    background: #ffffff;

    border: 1px solid rgba(0, 38, 80, 0.12);

    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.14);

    list-style: none;

    opacity: 0;
    visibility: hidden;

    transform: translateY(8px);

    transition:
        opacity 0.25s ease,
        visibility 0.25s ease,
        transform 0.25s ease;

    z-index: 99999;
}


/* Open main dropdown */
.nav-links > li:hover > .sub {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0);
}


/* =====================================================
   FIRST LEVEL ITEMS
===================================================== */

.nav-links > li > .sub > li {
    position: relative;
    width: 100%;
    list-style: none;
}


/* Links */
.nav-links > li > .sub > li > a {
    display: flex;

    align-items: center;
    justify-content: space-between;

    width: 100%;

    padding: 11px 16px;

    color: #002650;

    background: #fff;

    font-size: 15px;

    line-height: 1.4;

    text-decoration: none;

    white-space: nowrap;

    box-sizing: border-box;

    transition: all 0.25s ease;
}


/* Hover */
.nav-links > li > .sub > li:hover > a {
    color: #a78b6b;
    background: #ece3cc47;
}


/* =====================================================
   SECOND LEVEL DROPDOWN
===================================================== */

.nav-links .sub > li > .sub-right {

    position: absolute !important;

    top: -7px !important;
    left: calc(100% + 2px) !important;

    min-width: 245px;

    margin: 0 !important;
    padding: 7px 0 !important;

    background: #ffffff;

    border: 1px solid rgba(0, 38, 80, 0.12);

    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.14);

    list-style: none;

    opacity: 0 !important;
    visibility: hidden !important;

    transform: translateX(8px) !important;

    z-index: 100000;

    transition:
        opacity 0.22s ease,
        visibility 0.22s ease,
        transform 0.22s ease;
}


/* IMPORTANT:
   Open nested submenu on hover */
.nav-links .sub > li:hover > .sub-right {

    opacity: 1 !important;
    visibility: visible !important;

    transform: translateX(0) !important;
}


/* Second level links */
.nav-links .sub .sub-right li {
    width: 100%;
    list-style: none;
}

.nav-links .sub .sub-right li a {

    display: block;

    width: 100%;

    padding: 11px 16px;

    color: #002650;

    background: #fff;

    font-size: 13px;

    line-height: 1.4;

    text-decoration: none;

    white-space: nowrap;

    box-sizing: border-box;

    transition: all 0.25s ease;
}


.nav-links .sub .sub-right li a:hover {

    color: #a78b6b;

    background: #ece3cc47;
}


/* =====================================================
   ARROWS
===================================================== */

.main-arrow {
    font-size: 10px;
    margin-left: 4px;
}

.side-arrow {
    font-size: 18px;
    line-height: 1;
    color: #a78b6b;
    margin-left: 15px;
}


/* =====================================================
   COURSES SPECIFIC
===================================================== */

.courses-menu > .courses-dropdown {
    min-width: 255px;
}

.courses-menu .sub-right {
    min-width: 255px;
}


/* =====================================================
   PREVENT OTHER CSS FROM HIDING NESTED MENU
===================================================== */

.courses-menu .nested-menu {
    display: block !important;
}

.courses-menu .nested-menu > .sub-right {
    display: block !important;
}


/* =====================================================
   MOBILE
===================================================== */

@media (max-width: 1100px) {

    .nav-links {
        overflow-y: auto !important;
    }

    /* Desktop hover dropdowns are disabled on mobile */
    .courses-menu > .sub,
    .courses-menu .sub-right {
        position: static !important;
        transform: none !important;
    }

}



.about{background:var(--panel);}
.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center;}
.about-img-stack{position:relative;}
.about-img-stack img{border-radius:2px;filter:grayscale(.15) contrast(1.05);}
.about-img-frame{position:absolute;inset:-16px;border:1px solid var(--line);z-index:-1;border-radius:2px;}
.about-stat{position:absolute;bottom:-30px;right:-30px;background:var(--gold);color:var(--bg);padding:22px 26px;border-radius:2px;box-shadow:0 20px 50px rgba(0,0,0,.5);}
.about-stat .num{font-size:34px;font-weight:500;line-height:1;}
.about-stat .lbl{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;margin-top:4px;}
.about-copy p{color:var(--ivory-dim);line-height:1.85;font-size:16px;margin-bottom:24px;}
.about-quote{font-style:italic;font-size:21px;color:var(--gold-bright);border-left:2px solid var(--gold);padding-left:24px;margin:30px 0;line-height:1.5;}
.about-quote cite{display:block;font-style:normal;font-size:13px;color:var(--ivory-dim);margin-top:10px;letter-spacing:.5px;}

.quote-band{background:#fff;text-align:center;padding:50px 0;/*border-top:1px solid var(--line);border-bottom:1px solid var(--line);*/}
.quote-mark{font-size:70px;color:var(--gold);line-height:.5;opacity:.5;}
.quote-band blockquote{font-size:clamp(20px,2.6vw,28px);font-style:italic;line-height:1.5;color:var(--ivory);max-width:760px;margin:18px auto 22px;font-weight:300;}
.quote-band cite{font-size:13px;letter-spacing:1px;color:var(--gold-bright);}

.founder-strip{background:var(--panel-2);/*border-bottom:1px solid var(--line);*/}
.founder-grid{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;}
.founder-grid img{width:100%;/*height:380px;object-fit:cover;*/}
.founder-grid .brand-mark{display:flex;align-items:center;justify-content:center;padding:20px;}
.founder-grid .brand-mark img{height:200px;width:auto;object-fit:contain;}

@media (max-width:980px){
  .about-grid{grid-template-columns:1fr;}
  .about-stat{position:static;display:inline-block;margin-top:20px;}
  .founder-grid{grid-template-columns:1fr;}
  .founder-grid img{height:200px;}
}



/* =========================================================
   FIND YOUR PATH — PREMIUM JOURNEY DESIGN
========================================================= */

.path-selector-sec {
    position: relative;
    overflow: hidden;
    padding: 75px 0 !important;
    background: #faf6ed;
}


/* =========================================================
   INTRO
========================================================= */

.path-selector-intro {
    max-width: 780px;
    margin: 0 auto 55px;
    text-align: center;
}

.path-selector-intro .section-eyebrow {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 12px;
}

.path-selector-intro h2 {
    margin: 0 0 15px;
    color: #172d2a;
    font-size: 40px;
    line-height: 1.15;
    font-weight: 400;
}

.path-selector-intro h2 em {
    color: #b48616;
}

.path-selector-intro p {
    max-width: 650px;
    margin: 0 auto;
    color: #665f53;
    font-size: 15px;
    line-height: 1.7;
}


/* =========================================================
   PATH GRID
========================================================= */

.path-selector-grid {
    position: relative;

    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;

    gap: 18px;

    width: 100%;
}


/* Connecting journey line */

.path-selector-grid::before {
    content: "";

    position: absolute;

    left: 8%;
    right: 8%;
    top: 0;

    height: 1px;

    background: #d9bd72;

    z-index: 0;
}


/* =========================================================
   CARD
========================================================= */

.path-card {
    position: relative;

    z-index: 1;

    display: flex !important;
    flex-direction: column;

    min-width: 0;
    min-height: 250px;

    padding: 0 22px 25px;

    background: #fffdf8;

    border: 1px solid #e5d8bd;

    border-radius: 4px;

    text-decoration: none !important;

    color: #172d2a;

    box-shadow:
        0 8px 25px rgba(75,58,20,.055);

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease,
        background .35s ease;
}


/* =========================================================
   NUMBER CIRCLE
========================================================= */

.path-number {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: center;

    width: 46px;
    height: 46px;

    margin: -23px auto 25px;

    border: 4px solid #faf6ed;

    border-radius: 50%;

    background: #d7a51b;

    color: #fff;

    

    font-size: 13px;

    font-weight: 600;

    letter-spacing: .5px;

    box-shadow:
        0 0 0 1px #d7a51b;
}


/* =========================================================
   CHECK ICON
========================================================= */

.path-check {
    width: 42px;
    height: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin: 0 auto 20px;

    border: 1px solid #d9c28a;

    border-radius: 50%;

    background: #f9f3e5;

    color: #a97c0d;

    font-size: 18px;

    line-height: 1;

    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease;
}


/* =========================================================
   CONTENT
========================================================= */

.path-content {
    flex: 1;

    text-align: center;
}

.path-content h3 {
    margin: 0 0 10px;

    color: #17332f;

    

    font-size: 20px;

    line-height: 1.3;

    font-weight: 500;
}

.path-content p {
    margin: 0;

    color: #6b6254;

    font-size: 14px;

    line-height: 1.6;
}


/* =========================================================
   ARROW
========================================================= */

.path-arrow {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    margin: 20px auto 0;

    border: 1px solid #d8c18a;

    border-radius: 50%;

    color: #a77b0e;

    font-size: 17px;

    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease;
}


/* =========================================================
   HOVER
========================================================= */

.path-card:hover {
    transform: translateY(-8px);

    background: #fff;

    border-color: #c9a653;

    box-shadow:
        0 18px 40px rgba(75,58,20,.13);
}

.path-card:hover .path-check {
    background: #b48616;

    color: #fff;

    transform: scale(1.06);
}

.path-card:hover .path-arrow {
    background: #b48616;

    color: #fff;

    transform: translateX(4px);
}


/* =========================================================
   REMOVE WIDE CARD
========================================================= */

.path-card-wide {
    grid-column: auto !important;
}


/* =========================================================
   BOTTOM BUTTON
========================================================= */

.path-selector-bottom {
    display: flex;

    justify-content: center;

    margin-top: 42px;
}

.path-selector-bottom .btn-outline {
    padding: 13px 26px;

    border-color: #b48616;

    color: #80600e;

    font-size: 13px;

    transition: .3s ease;
}

.path-selector-bottom .btn-outline:hover {
    background: #b48616;

    color: #fff;
}


/* =========================================================
   1200px
========================================================= */

@media (max-width: 1200px) {

    .path-selector-grid {
        gap: 12px;
    }

    .path-card {
        padding-left: 16px;
        padding-right: 16px;
    }

    .path-content h3 {
        font-size: 19px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .path-selector-sec {
        padding: 60px 0 !important;
    }

    .path-selector-intro h2 {
        font-size: 40px;
    }

    .path-selector-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr)) !important;

        gap: 16px;
    }

    .path-selector-grid::before {
        display: none;
    }

    .path-card {
        min-height: 240px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .path-selector-sec {
        padding: 50px 0 !important;
    }

    .path-selector-intro {
        padding: 0 18px;

        margin-bottom: 38px;
    }

    .path-selector-intro h2 {
        font-size: 32px;
    }

    .path-selector-intro p {
        font-size: 14px;
    }

    .path-selector-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;

        gap: 12px;

        padding: 0 15px;
    }

    .path-card {
        min-height: 235px;

        padding-left: 15px;
        padding-right: 15px;
    }

    .path-number {
        width: 42px;
        height: 42px;

        margin-top: -21px;
    }

    .path-check {
        width: 38px;
        height: 38px;
    }

    .path-content h3 {
        font-size: 19px;
    }

    .path-content p {
        font-size: 13px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .path-selector-intro h2 {
        font-size: 28px;
    }

    .path-selector-grid {
        grid-template-columns: 1fr !important;
    }

    .path-card {
        min-height: auto;

        padding: 20px;
    }

    .path-number {
        margin-top: -41px;
        margin-bottom: 20px;
    }

}

/* =========================================
   IMPACT STATS
========================================= */

.impact-stats-sec {
    position: relative;
    background: #fff;
    padding: 55px 0;
}

.impact-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.impact-stat {
    position: relative;
    text-align: center;
    padding: 5px 35px;
}

.impact-stat:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 10px;
    width: 1px;
    height: 65px;
    background: var(--line);
}

.impact-number {
    display: block;

    
    font-size: clamp(32px, 4vw, 48px);
    font-weight: 400;

    line-height: 1;
    color: var(--gold-bright);

    margin-bottom: 10px;
}

.impact-label {
    display: block;

    
    font-size: 13px;
    font-weight: 400;

    letter-spacing: 1.2px;
    text-transform: uppercase;

    color: var(--ivory-dim);

    line-height: 1.5;
}


/* Hover */

.impact-stat {
    transition: transform .35s ease;
}

.impact-stat:hover {
    transform: translateY(-4px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 980px) {

    .impact-stats-sec {
        padding: 45px 0;
    }

    .impact-stats-grid {
        grid-template-columns: repeat(2, 1fr);
        row-gap: 35px;
    }

    .impact-stat:nth-child(2)::after {
        display: none;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 560px) {

    .impact-stats-sec {
        padding: 40px 0;
    }

    .impact-stats-grid {
        grid-template-columns: repeat(2, 1fr);
        row-gap: 28px;
    }

    .impact-stat {
        padding: 5px 15px;
    }

    .impact-stat:not(:last-child)::after {
        height: 55px;
    }

    .impact-stat:nth-child(2)::after {
        display: none;
    }

    .impact-stat:nth-child(1)::after,
    .impact-stat:nth-child(3)::after {
        display: block;
    }

    .impact-number {
        font-size: 32px;
    }

    .impact-label {
        font-size: 10px;
        letter-spacing: .8px;
    }

}



    /* =========================================================
   WHAT WE OFFER — PREMIUM COMPACT
========================================================= */

.offer-sec {
    position: relative;

    padding: 70px 0 !important;

    background: #f5efe3;

    overflow: hidden;
}


/* =========================================================
   HEADER
========================================================= */

.offer-header {
    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 50px;

    margin-bottom: 35px;
}

.offer-heading {
    flex: 1;
}

.offer-heading .section-eyebrow {
    display: flex;

    align-items: center;

    margin-bottom: 12px;

    color: var(--gold-bright);

    font-size: 12px;

    line-height: 1.4;

    letter-spacing: 3px;

    text-transform: uppercase;
}

.offer-heading h2 {
    max-width: 700px;

    margin: 0;

    color: #18302c;

    font-size: 44px;

    line-height: 1.13;

    font-weight: 400;
}

.offer-heading h2 em {
    color: #b48616;
}

.offer-intro {
    flex: 0 0 360px;

    max-width: 360px;

    margin: 0;

    color: #665f53;

    font-size: 14px;

    line-height: 1.65;
}


/* =========================================================
   SERVICE LIST
========================================================= */

.offer-list {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 14px;
}


/* =========================================================
   CARD
========================================================= */

.offer-card {
    position: relative;

    min-height: 190px;

    display: flex;

    flex-direction: column;

    padding: 22px 23px 19px;

    box-sizing: border-box;

    background: #fffdf8;

    border: 1px solid #e3d7be;

    border-radius: 8px;

    text-decoration: none !important;

    overflow: hidden;

    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease,
        background .3s ease;
}


/* =========================================================
   TOP
========================================================= */

.offer-top {
    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 17px;
}


/* ICON */

.offer-icon {
    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid #d6bd7b;

    border-radius: 50%;

    background: #faf4e6;

    color: #a77c12;

    font-size: 17px;

    line-height: 1;
}


/* NUMBER */

.offer-number {
    color: rgba(164,124,22,.28);

    

    font-size: 12px;

    letter-spacing: 1px;
}


/* =========================================================
   CONTENT
========================================================= */

.offer-content {
    flex: 1;
}

.offer-content h3 {
    margin: 0 0 7px;

    color: #18302c;

    

    font-size: 20px;

    line-height: 1.25;

    font-weight: 500;
}

.offer-content p {
    max-width: 330px;

    margin: 0;

    color: #6b6459;

    font-size: 13px;

    line-height: 1.5;
}


/* =========================================================
   ARROW
========================================================= */

.offer-arrow {
    position: absolute;

    right: 20px;

    bottom: 18px;

    width: 29px;

    height: 29px;

    display: flex;

    align-items: center;

    justify-content: center;

    border: 1px solid #d8c18a;

    border-radius: 50%;

    color: #a77c12;

    font-size: 15px;

    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease;
}


/* =========================================================
   HOVER
========================================================= */

.offer-card:hover {
    transform: translateY(-5px);

    background: #fffaf0;

    border-color: #c7a552;

    box-shadow:
        0 14px 30px rgba(63,49,19,.10);
}

.offer-card:hover .offer-icon {
    background: #b48616;

    color: #fff!important;
}

.offer-card:hover .offer-arrow {
    background: #b48616;

    color: #fff !important;

    transform: translate(2px,-2px);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .offer-sec {
        padding: 60px 0 !important;
    }

    .offer-header {
        display: block;

        margin-bottom: 30px;
    }

    .offer-heading h2 {
        font-size: 40px;
    }

    .offer-intro {
        max-width: 600px;

        margin-top: 14px;
    }

    .offer-list {
        grid-template-columns: repeat(2, 1fr);
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .offer-sec {
        padding: 48px 0 !important;
    }

    .offer-header {
        margin-bottom: 25px;
    }

    .offer-heading .section-eyebrow {
        font-size: 11px;

        letter-spacing: 2.5px;
    }

    .offer-heading h2 {
        font-size: 32px;

        line-height: 1.2;
    }

    .offer-intro {
        font-size: 14px;

        line-height: 1.55;
    }

    .offer-list {
        grid-template-columns: 1fr;

        gap: 10px;
    }

    .offer-card {
        min-height: 175px;

        padding: 20px;
    }

    .offer-content h3 {
        font-size: 19px;
    }

    .offer-content p {
        font-size: 13px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .offer-heading h2 {
        font-size: 29px;
    }

    .offer-card {
        min-height: 165px;
    }

}



/* =========================================================
   DISEASE MANAGEMENT — COMPACT PREMIUM
========================================================= */

.disease-sec {
    position: relative;
    overflow: hidden;
    padding: 65px 0 !important;
    background: #fff !important;
}


/* =========================================================
   HEADER
========================================================= */

.disease-sec .section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;

    margin-bottom: 32px;
}

.disease-sec .section-head > div {
    flex: 1;
}

.disease-sec .section-eyebrow {
    display: flex;
    align-items: center;

    margin-bottom: 11px;

    color: var(--gold-bright);

    font-size: 12px;
    letter-spacing: 3px;
    line-height: 1.4;
}

.disease-sec .section-head h2 {
    max-width: 650px;

    margin: 0;

    color: #18302c;

    font-size: 42px;
    line-height: 1.13;
    font-weight: 400;
}

.disease-sec .section-head h2 em {
    color:rgb(180, 134, 22);
}

.disease-sec .section-sub {
    flex: 0 0 330px;

    max-width: 330px;

    margin: 0;

    color: #665f54;

    font-size: 14px;
    line-height: 1.6;
}


/* =========================================================
   DISEASE GRID
========================================================= */

.disease-sec .disease-grid {
    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 10px;
}


/* =========================================================
   CARD
========================================================= */

.disease-sec .disease-card {
    position: relative;

    min-height: 145px;

    display: flex;
    flex-direction: column;

    padding: 20px 20px 18px;

    box-sizing: border-box;

    background: #fffdf8;

    border: 1px solid #e1d5bb;

    border-radius: 7px;

    transition:
        transform .3s ease,
        background .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}


/* =========================================================
   NUMBER
========================================================= */

.disease-sec .disease-card .num {
    display: block;

    margin-bottom: 14px;

    color: #b48616;

    

    font-size: 12px;

    line-height: 1;

    letter-spacing: 1px;
}


/* =========================================================
   TITLE
========================================================= */

.disease-sec .disease-card h4 {
    margin: 0 0 7px;

    color: #18302c;

    

    font-size: 19px;

    line-height: 1.25;

    font-weight: 500;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.disease-sec .disease-card p {
    margin: 0;

    color: #6c655a;

    font-size: 13px;

    line-height: 1.5;
}


/* =========================================================
   HOVER
========================================================= */

.disease-sec .disease-card:not(:last-child):hover {
    transform: translateY(-4px);

    background: #fffaf0;

    border-color: #c8a653;

    box-shadow:
        0 12px 28px rgba(67,50,18,.09);
}


/* =========================================================
   VIEW ALL CARD
========================================================= */

.disease-sec .disease-card:last-child {
    min-height: 145px;

    background: transparent !important;

    border: 1px dashed #cdbb91 !important;

    box-shadow: none !important;
}

.disease-sec .disease-card:last-child .btn-outline {
    padding: 11px 20px;

    border-color: #b48616;

    color: #80600e;

    font-size: 13px;

    transition: .3s ease;
}

.disease-sec .disease-card:last-child .btn-outline:hover {
    background: #b48616;

    color: #fff;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .disease-sec {
        padding: 55px 0 !important;
    }

    .disease-sec .section-head {
        display: block;
        margin-bottom: 28px;
    }

    .disease-sec .section-head h2 {
        font-size: 38px;
        margin-bottom: 12px;
    }

    .disease-sec .section-sub {
        max-width: 600px;
    }

    .disease-sec .disease-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .disease-sec {
        padding: 48px 0 !important;
    }

    .disease-sec .section-head h2 {
        font-size: 32px;
    }

    .disease-sec .section-sub {
        font-size: 14px;
    }

    .disease-sec .disease-grid {
        grid-template-columns: 1fr;

        gap: 9px;
    }

    .disease-sec .disease-card {
        min-height: 125px;

        padding: 17px 18px;
    }

    .disease-sec .disease-card .num {
        margin-bottom: 9px;
    }

    .disease-sec .disease-card h4 {
        font-size: 18px;
    }

    .disease-sec .disease-card p {
        font-size: 13px;
    }

    .disease-sec .disease-card:last-child {
        min-height: 90px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .disease-sec .section-head h2 {
        font-size: 29px;
    }

}



.sessions-sec{background:var(--panel);}
.session-card{min-width:270px;flex:1;background:var(--bg);border:1px solid rgba(190,150,73,.32) !important;border-radius:2px;overflow:hidden;transition:all .4s;}
.session-card:hover{transform:translateY(-6px);border-color:var(--gold);}
.session-img{overflow:hidden;position:relative;}
.session-img img{width:100%;height:100%;}
.session-body{padding:22px;}
.session-body h4{font-size:16.5px;color:var(--ivory);margin:14px 0 16px;line-height:1.3;}
.session-meta{display:flex;justify-content:space-between;align-items:center;}
.session-meta a{font-size:13px;color:var(--gold-bright);}
/* =========================================
   OUR JOURNEY TEASER
========================================= */

.journey-teaser-sec {
    background: linear-gradient(
            115deg,
            #fffdf8 0%,
            #faf3e2 52%,
            #fffdf8 100%
        );
    overflow: hidden;
}

.journey-teaser {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 80px;
    align-items: center;

    padding: 75px 70px;

    border: 1px solid rgba(242,176,12,.25);

    background:
        radial-gradient(
            circle at 80% 50%,
            rgba(242,176,12,.08),
            transparent 45%
        );
}


/* =========================================
   LEFT CONTENT
========================================= */

.journey-content .section-eyebrow {
    color: var(--gold);
}

.journey-content h2 {
    font-size: clamp(34px,4vw,50px);
    font-weight: 400;
    line-height: 1.15;
    max-width: 500px;

    margin-bottom: 22px;
}

.journey-content h2 em {
    display: block;

    color: var(--gold-bright);
}

.journey-intro {
    font-size: 16px;
    line-height: 1.7;

    max-width: 420px;

    margin-bottom: 32px;
}

.journey-content .btn-primary {
    margin-top: 4px;
}

.journey-content .btn-primary span {
    transition: transform .3s ease;
}

.journey-content .btn-primary:hover span {
    transform: translateX(5px);
}


/* =========================================
   JOURNEY STAGES
========================================= */

.journey-stages {
    position: relative;

    display: grid;
    grid-template-columns: repeat(4,1fr);

    gap: 42px 20px;

    padding: 15px 0;
}


/* Connecting Line */

.journey-line {
    position: absolute;

    left: 10%;
    right: 10%;

    top: 38px;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(242,176,12,.7),
            transparent
        );
}


/* Stage */

.journey-stage {
    position: relative;

    text-align: center;

    z-index: 2;
}

.journey-stage span {
    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin: 0 auto 15px;

    border: 1px solid var(--gold);

    border-radius: 50%;

    background: #241b0e;

    color: #fff;

    

    font-size: 14px;

    transition: all .35s ease;
}

.journey-stage p {
   
    font-size: 14px;
    line-height: 1.45;

    margin: 0 auto;

    max-width: 120px;

    transition: color .35s ease;
}


/* Hover */

.journey-stage:hover span {
    background: var(--gold);
    color: #241b0e;

    transform: scale(1.1);
}

/* =========================================================
   JOURNEY — TWO ROW CONNECTING LINES FIX
========================================================= */

.journey-stages {
    position: relative !important;
}


/* FIRST ROW LINE */
.journey-stages > .journey-line:first-child {
    position: absolute !important;

    left: 10% !important;
    right: 10% !important;

    top: 38px !important;

    width: auto !important;
    height: 1px !important;

    display: block !important;

    background: linear-gradient(
        90deg,
        transparent,
        rgba(242,176,12,.7),
        transparent
    ) !important;

    z-index: 1 !important;
}


/* SECOND ROW LINE
   Your second .journey-line comes after stage 04
*/
.journey-stages > .journey-line:nth-child(6) {
    position: absolute !important;

    left: 10% !important;
    right: 10% !important;

    top: 166px !important;

    width: auto !important;
    height: 1px !important;

    display: block !important;

    background: linear-gradient(
        90deg,
        transparent,
        rgba(242,176,12,.7),
        transparent
    ) !important;

    z-index: 1 !important;
}


/* Keep circles above the connecting lines */
.journey-stage {
    position: relative !important;
    z-index: 3 !important;
}


/* Circle */
.journey-stage span {
    position: relative !important;
    z-index: 4 !important;
}


/* =========================================================
   DESKTOP — BETTER SECOND ROW POSITION
========================================================= */

@media (min-width: 981px) {

    .journey-stages > .journey-line:first-child {
        top: 38px !important;
    }

    .journey-stages > .journey-line:nth-child(6) {
        top: 182px !important;
    }

}


/* =========================================================
   TABLET / MOBILE
   Mobile already has 2 columns and no connecting line
========================================================= */

@media (max-width: 600px) {

    .journey-stages > .journey-line {
        display: none !important;
    }

}

/* =========================================
   TABLET
========================================= */

@media (max-width: 980px) {

    .journey-teaser {
        grid-template-columns: 1fr;

        gap: 55px;

        padding: 60px 45px;
    }

    .journey-content {
        text-align: center;
    }

    .journey-content .section-eyebrow {
        justify-content: center;
    }

    .journey-content h2 {
        margin-left: auto;
        margin-right: auto;
    }

    .journey-intro {
        margin-left: auto;
        margin-right: auto;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .journey-teaser {
        padding: 50px 25px;
        gap: 45px;
    }

    .journey-content h2 {
        font-size: 34px;
    }

    .journey-intro {
        font-size: 14px;
    }

    .journey-stages {
        grid-template-columns: repeat(2,1fr);

        gap: 30px 15px;
    }

    .journey-line {
        display: none;
    }

    .journey-stage span {
        width: 40px;
        height: 40px;

        font-size: 12px;

        margin-bottom: 10px;
    }

    .journey-stage p {
        font-size: 11px;
    }

}



.ttc-sec{background:radial-gradient(circle at 80% 50%, rgba(242, 176, 12, 0.08), transparent 45%);}
.ttc-card{min-width:260px;flex:1;background:var(--panel);border-radius:2px;overflow:hidden;border:1px solid rgba(190,150,73,.32) !important;transition:all .4s;}
.ttc-card:hover{border-color:var(--gold);transform:translateY(-6px);}
.ttc-img{overflow:hidden;}
.ttc-img img{width:100%;height:100%;object-fit:cover;}
.ttc-body{padding:20px;}
.ttc-body h4{font-size:16px;color:var(--ivory);margin:12px 0 16px;line-height:1.35; font-family:var(--ab-body)!important;}

/* CERTIFICATION */
.cert-sec{background:#fff;/*border-top:1px solid var(--line);border-bottom:1px solid var(--line);*/}
.cert-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:center;}
.cert-img{border-radius:2px;overflow:hidden;border:1px solid rgba(190,150,73,.32) !important;}
.cert-center{text-align:center;}
.cert-center h4{font-size:20px;color:var(--gold-bright);margin-bottom:10px;}
.cert-center p{color:var(--ivory-dim);font-size:14px;margin-bottom:20px;}
.cert-center h6{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--bronze);margin-top:18px;}
.cert-badges{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;}
.cert-badges div{background:var(--panel);display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--gold);text-align:center;padding:8px;}
.ttc-courses-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    width: 100%;
}

.ttc-courses-row .ttc-card {
    width: 100%;
    min-width: 0;
}


/* Tablet */
@media (max-width: 1199px) {
    .ttc-courses-row {
        grid-template-columns: repeat(3, 1fr);
    }
}


/* Mobile */
@media (max-width: 767px) {
    .ttc-courses-row {
        grid-template-columns: repeat(2, 1fr);
        gap: 14px;
    }
}


/* Small Mobile */
@media (max-width: 480px) {
    .ttc-courses-row {
        grid-template-columns: 1fr;
    }
}
@media (max-width:980px){.cert-grid{grid-template-columns:1fr;}}

.cert-badges {
    display: flex;
    align-items: center;
    gap: 18px;
    flex-wrap: wrap;
}

.cert-badge {
    display: flex;
    align-items: center;
    justify-content: center;
}

.cert-badge img {
    width: auto;
    max-width: 100%;
    object-fit: contain;
    display: block;
}

.cert-ayush {
    padding: 12px 18px;
    border: 1px solid rgba(0, 38, 80, 0.15);
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    color: #002650;
    background: #fff;
    white-space: nowrap;
}


/* Mobile */
@media (max-width: 767px) {

    .cert-badges {
        gap: 12px;
    }

    .cert-badge {
        height: 58px;
    }

    .cert-badge img {
        height: 58px;
        max-width: 125px;
    }

    .cert-ayush {
        padding: 10px 13px;
        font-size: 11px;
    }
}



.workshop-sec{background:#ece3cc47;}
.workshop-card{min-width:240px;flex:1;text-align:center;background:var(--bg);border:1px solid rgba(190,150,73,.32) !important;border-radius:2px;overflow:hidden;transition:all .4s;}
.workshop-card:hover{border-color:var(--gold);transform:translateY(-6px);}
.workshop-img{overflow:hidden;}
.workshop-img img{width:100%;height:100%;}
.workshop-card .wbody{padding:20px;}
.workshop-card h4{font-size:16px;color:var(--ivory);margin:12px 0 16px;}

/* DIGITAL BANNER */
.digital-banner{position:relative;background:var(--bg);overflow:hidden;}
.digital-banner-inner{position:relative;min-height:340px;display:flex;align-items:center;justify-content:center;text-align:center;background:radial-gradient(ellipse 700px 400px at 50% 0%, rgba(242,176,12,.15), transparent 70%);}
.digital-banner h2{font-size:clamp(28px,4vw,44px);margin-bottom:16px;}
.digital-banner h2 em{color:var(--gold-bright);}
.digital-banner p{color:var(--ivory-dim);max-width:480px;margin:0 auto 30px;}

/* YOGA SESSIONS GALLERY STRIP */
.yogasess-sec{background:#ece3cc47;}
.yogasess-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;}
.yogasess-item{position:relative;border-radius:2px;overflow:hidden;aspect-ratio:3/4;}
.yogasess-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.yogasess-item:hover img{transform:scale(1.08);}
.yogasess-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(15,10,2,.85));display:flex;align-items:flex-end;justify-content:center;padding-bottom:16px;opacity:0;transition:opacity .35s;}
.yogasess-item:hover .yogasess-overlay{opacity:1;}
.yogasess-overlay a{font-size:11px;letter-spacing:1px;color:var(--gold-bright);border:1px solid var(--gold-bright);padding:6px 14px;border-radius:2px;}

@media (max-width:980px){.yogasess-grid{grid-template-columns:repeat(3,1fr);}}
@media (max-width:560px){.yogasess-grid{grid-template-columns:repeat(2,1fr);}}
/* =========================================
   RETREATS SECTION
========================================= */

.retreats-sec {
    background: #fff;
}


/* =========================================
   RETREAT GRID
========================================= */

.retreats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 22px;
}


/* =========================================
   RETREAT CARD
========================================= */

.retreat-card {
    background: var(--bg);

    border: 1px solid rgba(190,150,73,.32) !important;

    overflow: hidden;

    transition:
        transform .4s ease,
        border-color .4s ease,
        box-shadow .4s ease;
}

.retreat-card:hover {
    transform: translateY(-6px);

    border-color: var(--gold);

    box-shadow: 0 20px 50px rgba(36,27,14,.10);
}


/* =========================================
   IMAGE
========================================= */

.retreat-image {
    position: relative;

    height: 310px;

    overflow: hidden;
}

.retreat-image::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 45%,
            rgba(28,20,10,.55)
        );
}

.retreat-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform .7s ease;
}

.retreat-card:hover .retreat-image img {
    transform: scale(1.06);
}


/* =========================================
   NUMBER
========================================= */

.retreat-number {
    position: absolute;

    top: 18px;
    right: 20px;

    z-index: 2;

    

    font-size: 13px;

    color: #fff;

    letter-spacing: 1px;

    padding: 6px 11px;

    border: 1px solid rgba(255,255,255,.5);

    background: rgba(28,20,10,.25);
}


/* =========================================
   CONTENT
========================================= */

.retreat-content {
    position: relative;

    display: flex;

    gap: 18px;

    padding: 30px 32px 34px;
}

.retreat-check {
    flex: 0 0 40px;

    width: 40px;
    height: 40px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid var(--gold);

    border-radius: 50%;

    color: var(--gold);

    font-size: 15px;

    transition: all .35s ease;
}

.retreat-card:hover .retreat-check {
    background: var(--gold);

    color: var(--bg);
}

.retreat-content h3 {
    

    font-size: 24px;

    font-weight: 500;

    color: var(--ivory);

    margin: 2px 0 10px;

    line-height: 1.3;
}

.retreat-content p {
    color: var(--ivory-dim);

    font-size: 14px;

    line-height: 1.7;

    margin: 0 0 20px;

    max-width: 430px;
}


/* =========================================
   LINK
========================================= */

.retreat-link {
    display: inline-flex;

    align-items: center;

    gap: 9px;

    color: var(--gold-bright);

    font-size: 13px;

    letter-spacing: .4px;

    transition: all .3s ease;
}

.retreat-link span {
    transition: transform .3s ease;
}

.retreat-link:hover {
    color: var(--gold);
}

.retreat-link:hover span {
    transform: translateX(5px);
}


/* =========================================
   CTA
========================================= */

.retreats-cta {
    text-align: center;

    margin-top: 42px;
}

.retreats-cta .btn-primary {
    display: inline-flex;

    align-items: center;

    gap: 10px;
}

.retreats-cta .btn-primary span {
    transition: transform .3s ease;
}

.retreats-cta .btn-primary:hover span {
    transform: translateX(5px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 980px) {

    .retreats-grid {
        grid-template-columns: 1fr;
    }

    .retreat-image {
        height: 340px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 560px) {

    .retreats-grid {
        gap: 16px;
    }

    .retreat-image {
        height: 250px;
    }

    .retreat-content {
        gap: 13px;

        padding: 24px 20px 28px;
    }

    .retreat-check {
        flex-basis: 34px;

        width: 34px;
        height: 34px;

        font-size: 13px;
    }

    .retreat-content h3 {
        font-size: 20px;
    }

    .retreat-content p {
        font-size: 13px;
    }

    .retreats-cta {
        margin-top: 30px;
    }

}
/* =========================================
   WHAT WE BELIEVE
========================================= */

.belief-sec {
    background: #241b0e;
    overflow: hidden;
}

.belief-inner {
    position: relative;

    max-width: 1000px;

    margin: 0 auto;

    text-align: center;

    padding: 0px 40px;
}


/* Decorative glow */

.belief-inner::before {
    content: "";

    position: absolute;

    width: 500px;
    height: 500px;

    left: 50%;
    top: 50%;

    transform: translate(-50%, -50%);

    background: radial-gradient(
        circle,
        rgba(242,176,12,.08),
        transparent 70%
    );

    pointer-events: none;
}


/* Eyebrow */

.belief-inner .section-eyebrow {
    position: relative;

    justify-content: center;

    color: var(--gold);
}


/* Quote mark */

.belief-quote-mark {
    position: relative;

    

    font-size: 90px;

    line-height: .6;

    color: var(--gold);

    opacity: .45;

    margin: 25px 0 20px;
}


/* Quote */

.belief-inner blockquote {
    position: relative;

    max-width: 900px;

    margin: 0 auto 28px;

    

    font-size: clamp(28px, 4vw, 48px);

    font-weight: 300;

    line-height: 1.35;

    color: #fff;
}

.belief-inner blockquote em {
    color: var(--gold-bright);

}


/* Author */

.belief-author {
    position: relative;

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    color: rgba(255,255,255,.65);

    font-size: 13px;

    letter-spacing: .7px;

    margin-bottom: 35px;
}

.belief-author span {
    width: 28px;

    height: 1px;

    background: var(--gold);
}


/* Button */

.belief-btn {
    position: relative;

    display: inline-flex;

    align-items: center;

    gap: 12px;

    border-color: var(--gold);

    color: var(--gold-bright);
}

.belief-btn b {
    font-size: 15px;

    font-weight: 400;

    transition: transform .3s ease;
}

.belief-btn:hover b {
    transform: translateX(5px);
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .belief-inner {
        padding: 60px 20px;
    }

    .belief-quote-mark {
        font-size: 70px;

        margin-top: 20px;
    }

    .belief-inner blockquote {
        font-size: 28px;

        line-height: 1.35;
    }

    .belief-author {
        font-size: 11px;
    }

    .belief-btn {
        font-size: 11px;

        padding: 12px 18px;
    }

}
/* ================================
   PROGRAM CATEGORY
================================ */

.program-category {
    margin-top: 45px;
}

.program-category:first-of-type {
    margin-top: 30px;
}

.program-category-head {
    margin-bottom: 25px;
}

.program-label {
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--gold-bright);
    margin-bottom: 8px;
}

.program-category-head h3 {
    margin: 0;
    font-size: 26px;
    line-height: 1.3;
    font-weight: 600;
    color: #000;
}

.program-category-head h3 em {
    font-style: normal;
    color: var(--gold-bright);
}


/* ================================
   CATEGORY SEPARATOR
================================ */

.specialized-category {
    padding-top: 45px;
    margin-top: 50px;
    border-top: 1px solid rgba(0, 38, 80, 0.12);
}


/* ================================
   MORE BUTTON
================================ */

.program-more {
    text-align: center;
    margin-top: 30px;
}


/* ================================
   SPECIALIZED TAG
================================ */

.tag-special {
    background: var(--gold-bright);
    color: #fff;
}


/* ================================
   MOBILE RESPONSIVE
================================ */

@media (max-width: 767px) {

    .program-category {
        margin-top: 35px;
    }

    .program-category-head {
        margin-bottom: 20px;
    }

    .program-label {
        font-size: 11px;
        letter-spacing: 1.2px;
    }

    .program-category-head h3 {
        font-size: 21px;
    }

    .specialized-category {
        padding-top: 35px;
        margin-top: 40px;
    }

    .program-more {
        margin-top: 25px;
    }

}



/* =========================================
   BALANCED GALLERY - 10 IMAGES
========================================= */

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    grid-template-rows: repeat(2, 220px);
    gap: 14px;
    width: 100%;
}

.gallery-item,
.gallery-item.big {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 0;

    /* IMPORTANT: sab same size */
    grid-column: auto !important;
    grid-row: auto !important;

    overflow: hidden;
    border-radius: 3px;
    background: #eee;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .5s ease;
}

.gallery-item:hover img {
    transform: scale(1.05);
}

.gallery-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(0,0,0,.20),
        transparent 60%
    );
    opacity: 0;
    transition: opacity .3s ease;
    pointer-events: none;
}

.gallery-item:hover .gallery-overlay {
    opacity: 1;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .gallery-grid {
        grid-template-columns: repeat(4, 1fr);
        grid-template-rows: repeat(3, 200px);
        gap: 12px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .gallery-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(5, 170px);
        gap: 10px;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .gallery-grid {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(5, 145px);
        gap: 8px;
    }

}

/* EBOOKS */
.ebook-sec{background:radial-gradient(circle at 80% 50%, rgba(242, 176, 12, 0.08), transparent 45%);}
.ebook-card{min-width:220px;flex:1;background:var(--bg);border:1px solid rgba(190,150,73,.32) !important;border-radius:2px;overflow:hidden;transition:all .35s;}
.ebook-card:hover{border-color:var(--gold);transform:translateY(-5px);}
.ebook-img{position:relative;}
.ebook-img img{width:100%;height:100%;object-fit:cover;}
.ebook-buy{position:absolute;bottom:0;left:0;right:0;background:var(--gold);color:var(--bg);text-align:center;padding:10px;font-size:12px;letter-spacing:1px;opacity:0;transition:opacity .3s;}
.ebook-card:hover .ebook-buy{opacity:1;}
.ebook-body{padding:16px;}
.ebook-body h4{font-size:13.5px;color:var(--ivory);line-height:1.4;margin-bottom:10px;min-height:38px;}
.ebook-price{color:var(--gold-bright);font-size:15px;font-weight:600;}

@media (max-width:980px){.gallery-grid{grid-template-columns:repeat(2,1fr);}.gallery-item.big{grid-column:span 2;}}




/* =========================================================
   TESTIMONIAL SLIDER
========================================================= */

.testi-sec {
    width: 100%;
    overflow: hidden;
    background: radial-gradient(circle at 80% 50%, rgba(242, 176, 12, 0.08), transparent 45%);
}

.testi-sec .wrap {
    width: 100%;
}


/* =========================================================
   SLIDER
========================================================= */

.testi-slider {
    position: relative;
    width: 100%;
    padding: 0 48px;
    margin-top: 50px;
}


/* VIEWPORT */

.testi-viewport {
    width: 100%;
    overflow: hidden;
}


/* TRACK */

.testi-track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;

    gap: 20px;

    width: max-content !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: translate3d(0,0,0);

    transition:
        transform .65s cubic-bezier(.4,0,.2,1);

    will-change: transform;
}


/* =========================================================
   TESTIMONIAL CARD
========================================================= */

.testi-card {
    flex: 0 0 auto !important;

    width: auto;

    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;

    padding: 30px 28px 26px;

    box-sizing: border-box;

    background: #fff;

    border: 1px solid rgba(154,122,30,.18);

    border-radius: 16px;

    box-shadow:
        0 8px 25px rgba(36,27,14,.06);

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.testi-card:hover {
    transform: translateY(-5px);

    border-color:
        rgba(154,122,30,.42);

    box-shadow:
        0 16px 35px rgba(36,27,14,.11);
}


/* =========================================================
   QUOTE MARK
========================================================= */

.testi-mark {
    color: #9a7a1e;

    font-size: 54px;

    line-height: .7;

  /*  height: 35px;*/

    margin-bottom: 10px;
}


/* =========================================================
   TEXT
========================================================= */

.testi-card > p {
    margin: 0;

    color: #5f594f;

    font-size: 14px;

    line-height: 1.75;
}


/* =========================================================
   FOOTER
========================================================= */

.testi-foot {
    display: flex;

    align-items: center;

    gap: 13px;

    margin-top: 25px;

    padding-top: 19px;

    border-top:
        1px solid rgba(154,122,30,.15);
}


/* PERSON IMAGE */

.testi-foot img {
    width: 52px !important;
    height: 52px !important;

    flex: 0 0 52px;

    display: block;

    margin: 0 !important;
    padding: 0 !important;

    border-radius: 50%;

    object-fit: cover;

    object-position: center;
}


/* NAME */

.testi-foot h4 {
    margin: 0 0 4px;

    color: #241b0e;

    font-size: 15px;

    font-weight: 700;

    line-height: 1.3;
}


/* DESIGNATION */

.testi-foot span {
    color: #8a8277;

    font-size: 11px;

    line-height: 1.4;
}


/* =========================================================
   ARROWS
========================================================= */

.testi-arrow {
    position: absolute;

    top: 50%;

    z-index: 20;

    width: 42px;
    height: 42px;

    padding: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #9a7a1e;

    border-radius: 50%;

    background: #fff;

    color: #9a7a1e;

    

    font-size: 18px;

    line-height: 1;

    cursor: pointer;

    transform: translateY(-50%);

    box-shadow:
        0 6px 18px rgba(0,0,0,.10);

    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}

.testi-arrow:hover {
    background: #9a7a1e;

    color: #fff;

    transform:
        translateY(-50%) scale(1.08);

    box-shadow:
        0 10px 24px rgba(154,122,30,.22);
}

.testi-prev {
    left: 0;
}

.testi-next {
    right: 0;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width:1100px) {

    .testi-slider {
        padding: 0 45px;
    }

    .testi-track {
        gap: 18px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width:767px) {

    .testi-slider {
        padding: 0 38px;

        margin-top: 35px;
    }

    .testi-track {
        gap: 14px;
    }

    .testi-card {
        padding:
            25px
            20px
            22px;
    }

    .testi-card > p {
        font-size: 13px;

        line-height: 1.7;
    }

    .testi-arrow {
        width: 34px;
        height: 34px;

        font-size: 15px;
    }

    .testi-prev {
        left: 0;
    }

    .testi-next {
        right: 0;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion:reduce) {

    .testi-track {
        transition: none;
    }

    .testi-card {
        transition: none;
    }

}

/* WHATSAPP FEEDBACK */
.wa-sec{background:#fff;}
.wa-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
.wa-item{border-radius:2px;overflow:hidden;border:2px solid #dfc895;aspect-ratio:3/4;}
.wa-item img{width:100%;height:100%;object-fit:cover;}

@media (max-width:980px){.wa-grid{grid-template-columns:repeat(3,1fr);}}
@media (max-width:560px){.wa-grid{grid-template-columns:repeat(2,1fr);}}



.vt-sec{background:var(--panel);}
.vt-grid{display:grid;grid-template-columns:.6fr 1.4fr;gap:50px;align-items:center;}
.vt-frame{border-radius:2px;overflow:hidden;border:1px solid #dfc895;}
.vt-frame iframe{width:100%;height:230px;display:block;}
@media (max-width:980px){.vt-grid{grid-template-columns:1fr;}}



.media-sec{background:#fff;}
.media-card{min-width:300px;flex:1;border-radius:2px;overflow:hidden;border:1px solid #dfc895;}
.media-card iframe{width:100%;height:200px;display:block;}
.media-card h4{font-size:15px;color:var(--ivory);padding:16px;background:var(--panel);text-align: center;}

/* YOGA ASANAS */
.asana-sec{background:linear-gradient(
            115deg,
            #fffdf8 0%,
            #faf3e2 52%,
            #fffdf8 100%
        );}
.asana-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
.asana-item{border-radius:2px;overflow:hidden;aspect-ratio:1/1;border:1px solid #dfc895;}
.asana-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s;}
.asana-item:hover img{transform:scale(1.1);}

@media (max-width:980px){.asana-grid{grid-template-columns:repeat(3,1fr);}}
@media (max-width:560px){.asana-grid{grid-template-columns:repeat(2,1fr);}}



.clients-sec {
    background: #fff;
}

.clients-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
    background: #ece3cc47;
}

.client-logo {
    background: #ece3cc47;
    height: 90px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 20px;
    border: 1px solid #dfc895;

    /* IMPORTANT */
    filter: none;
    opacity: 1;

    transition: all .35s ease;
    overflow: hidden;
}

.client-logo img {
    display: block;
    width: auto;
    height: auto;

    /* logo ko box ke andar rakhega */
    max-width: 85%;
    max-height: 62px;

    object-fit: contain;
}

.client-logo:hover {
    filter: none;
    opacity: 1;
    background: #fff;
}

.client-logo span {
    
    font-size: 13px;
    color: var(--ivory-dim);
    text-align: center;
}


/* =========================
   TABLET
========================= */

@media (max-width: 1100px) {

    .clients-grid {
        grid-template-columns: repeat(4, 1fr);
    }

    .client-logo {
        height: 85px;
    }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 767px) {

    .clients-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
    }

    .client-logo {
        height: 75px;
        padding: 8px 12px;
    }

    .client-logo img {
        max-width: 90%;
        max-height: 48px;
    }

}


/* =========================
   SMALL MOBILE
========================= */

@media (max-width: 480px) {

    .clients-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .client-logo {
        height: 75px;
    }

    .client-logo img {
        max-width: 88%;
        max-height: 50px;
    }

}
@media (max-width:980px){.clients-grid{grid-template-columns:repeat(3,1fr);}}



    /* ================================
   CLIENT SLIDER
================================ */

.clients-slider {
    position: relative;
    width: 100%;
    margin-top: 42px;
    padding: 0 48px;
    box-sizing: border-box;
}

.clients-viewport {
    width: 100%;
    overflow: hidden;
}

.clients-track {
    display: flex;
    gap: 22px;
    transition: transform .6s cubic-bezier(.4,0,.2,1);
    will-change: transform;
}


/* ================================
   LOGO CARD
================================ */

.client-logo {
    flex: 0 0 calc(
        (100% - 110px) / 6
    );

    height: 115px;

    background: #fff;

    border: 1px solid #dfc895;

    border-radius: 15px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 18px;

    box-sizing: border-box;

    box-shadow: 0 7px 24px rgba(0,0,0,.05);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.client-logo:hover {
    transform: translateY(-4px);

    box-shadow:
        0 12px 30px rgba(0,0,0,.10);
}


.client-logo img {
    width: 100%;
    height: 72px;

    object-fit: contain;

    display: block;
}


/* ================================
   ARROWS
================================ */

.clients-arrow {
    position: absolute;

    top: 50%;
    transform: translateY(-50%);

    width: 38px;
    height: 38px;

    border-radius: 50%;

    border: 1px solid #e5a900;

    background: #fff;

    color: #c88b00;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 20px;
    line-height: 1;

    cursor: pointer;

    z-index: 10;

    padding: 0;

    box-shadow:
        0 5px 15px rgba(0,0,0,.08);

    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease;
}

.clients-arrow:hover {
    background: #e5a900;
    color: #fff;

    transform:
        translateY(-50%) scale(1.08);
}


.clients-prev {
    left: 0;
}

.clients-next {
    right: 0;
}


/* ================================
   TABLET
================================ */

@media (max-width: 1100px) {

    .clients-slider {
        padding: 0 44px;
    }

    .client-logo {
        flex: 0 0 calc(
            (100% - 66px) / 4
        );

        height: 110px;
    }

}


/* ================================
   MOBILE
================================ */

@media (max-width: 767px) {

    .clients-slider {
        padding: 0 38px;
        margin-top: 30px;
    }

    .clients-track {
        gap: 14px;
    }

    .client-logo {
        flex: 0 0 calc(
            (100% - 14px) / 2
        );

        height: 100px;

        padding: 13px;

        border-radius: 12px;
    }

    .client-logo img {
        height: 60px;
    }

    .clients-arrow {
        width: 32px;
        height: 32px;

        font-size: 16px;
    }

}



/* =========================================================
   COURSE CERTIFIED BY SECTION
========================================================= */

.certby-sec {
    background: #fff;
    overflow: hidden;
}

.certby-sec .section-head {
    display: block;
    text-align: center;
}

.certby-sec .section-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--gold-bright);
}

.certby-sec .section-head h2 {
    margin: 0 auto;
    color: #241B0E;
}

.certby-sec .section-head h2 em {
    color: rgb(180, 134, 22);
}


/* =========================================================
   CERTIFICATION MARQUEE
========================================================= */

.certby-marquee {
    width: 100%;

    position: relative;

    overflow: hidden;
    padding: 10px 0 25px;

    box-sizing: border-box;
}


/* =========================================================
   FADE ON BOTH SIDES
========================================================= */

.certby-marquee::before,
.certby-marquee::after {
    content: "";

    position: absolute;

    top: 0;
    bottom: 0;

    width: 90px;

    z-index: 5;

    pointer-events: none;
}

.certby-marquee::before {
    left: 0;

    background: linear-gradient(
        to right,
        #f5f1e8 0%,
        rgba(245,241,232,0) 100%
    );
}

.certby-marquee::after {
    right: 0;

    background: linear-gradient(
        to left,
        #f5f1e8 0%,
        rgba(245,241,232,0) 100%
    );
}


/* =========================================================
   MOVING TRACK
========================================================= */

.certby-marquee-track {
    display: flex;

    align-items: stretch;

    width: max-content;

    gap: 18px;

    animation: certMarquee 32s linear infinite;

    will-change: transform;
}


/* =========================================================
   CERTIFICATE CARD
========================================================= */

/*
   Desktop:
   8 cards comfortably visible
*/

.certby-card {
    flex: 0 0 165px;

    width: 165px;

    height: 125px;

    box-sizing: border-box;
}


/* =========================================================
   CARD INNER
========================================================= */

.certby-badge {
    width: 100%;
    height: 100%;

    background: #ffffff;

    border: 1px solid #dfc895;

    border-radius: 15px;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 15px;

    box-sizing: border-box;

    box-shadow:
        0 7px 22px rgba(36, 27, 14, 0.06);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;
}


/* =========================================================
   HOVER
========================================================= */

.certby-badge:hover {
    transform: translateY(-5px);

    border-color: rgba(154, 122, 30, 0.55);

    box-shadow:
        0 14px 32px rgba(36, 27, 14, 0.12);
}


/* =========================================================
   CERTIFICATE IMAGE
========================================================= */

.certby-badge img {
    width: 100%;
    height: 100%;

    max-width: 100%;
    max-height: 100%;

    object-fit: contain;

    display: block;

    transition: transform 0.3s ease;
}

.certby-badge:hover img {
    transform: scale(1.05);
}


/* =========================================================
   INFINITE MARQUEE
========================================================= */

@keyframes certMarquee {

    0% {
        transform: translate3d(0, 0, 0);
    }

    100% {
        transform: translate3d(
            calc(-50% - 9px),
            0,
            0
        );
    }

}


/* =========================================================
   PAUSE ON HOVER
========================================================= */

.certby-marquee:hover .certby-marquee-track {
    animation-play-state: paused;
}


/* =========================================================
   VIEW CERTIFICATIONS BUTTON
========================================================= */

.certby-button {
    text-align: center;

    margin-top: 30px;
}

.certby-button .btn-outline {
    border-color: #9A7A1E;

    color: #7A5E14;

    transition:
        background 0.3s ease,
        color 0.3s ease,
        border-color 0.3s ease;
}

.certby-button .btn-outline:hover {
    background: #9A7A1E;

    border-color: #9A7A1E;

    color: #ffffff;
}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1400px) {

    .certby-card {
        flex-basis: 175px;

        width: 175px;

        height: 130px;
    }

    .certby-marquee-track {
        gap: 20px;
    }

}


/* =========================================================
   DESKTOP
========================================================= */

@media (max-width: 1399px) and (min-width: 992px) {

    .certby-card {
        flex-basis: 160px;

        width: 160px;

        height: 120px;
    }

    .certby-marquee-track {
        gap: 18px;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .certby-marquee {
        margin-top: 40px;

        padding-bottom: 20px;
    }

    .certby-marquee-track {
        gap: 16px;

        animation-duration: 28s;
    }

    .certby-card {
        flex: 0 0 175px;

        width: 175px;

        height: 115px;
    }

    .certby-badge {
        padding: 13px;

        border-radius: 13px;
    }

    .certby-marquee::before,
    .certby-marquee::after {
        width: 60px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .certby-marquee {
        margin-top: 32px;

        padding: 8px 0 18px;
    }

    .certby-marquee-track {
        gap: 14px;

        animation-duration: 24s;
    }

    .certby-card {
        flex: 0 0 155px;

        width: 155px;

        height: 105px;
    }

    .certby-badge {
        padding: 11px;

        border-radius: 12px;

        box-shadow:
            0 5px 18px rgba(36, 27, 14, 0.05);
    }

    .certby-badge img {
        width: 100%;
        height: 100%;
    }

    .certby-marquee::before,
    .certby-marquee::after {
        width: 45px;
    }

    .certby-button {
        margin-top: 25px;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .certby-marquee {
        margin-top: 28px;
    }

    .certby-marquee-track {
        gap: 12px;

        animation-duration: 22s;
    }

    .certby-card {
        flex: 0 0 140px;

        width: 140px;

        height: 95px;
    }

    .certby-badge {
        padding: 9px;

        border-radius: 11px;
    }

    .certby-marquee::before,
    .certby-marquee::after {
        width: 35px;
    }

}


/* =========================================================
   ACCESSIBILITY - REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    .certby-marquee-track {
        animation: none;
    }

    .certby-badge,
    .certby-badge img {
        transition: none;
    }

}




/* =========================================================
   DISTINGUISHED STUDENTS
========================================================= */

.ds-sec {
    width: 100%;
    overflow: hidden;
    background: linear-gradient(
            115deg,
            #fffdf8 0%,
            #faf3e2 52%,
            #fffdf8 100%
        )!important;
}

.ds-sec .wrap {
    width: 100%;
}


/* =========================================================
   HEADING
========================================================= */

.ds-sec .section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 30px;
    margin-bottom: 42px;
}

.ds-sec .section-head h2 {
    margin: 8px 0 0;
}

.ds-sec .section-sub {
    max-width: 380px;
    margin: 0 0 5px;
}


/* =========================================================
   SLIDER
========================================================= */

.ds-slider {
    position: relative;
    width: 100%;
    padding: 0 48px;
}


/* =========================================================
   VIEWPORT
========================================================= */

.ds-viewport {
    position: relative;
    width: 100%;
    overflow: hidden;
}


/* =========================================================
   TRACK
========================================================= */

.ds-track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;

    gap: 18px;

    width: max-content !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: translate3d(0,0,0);

    transition:
        transform .65s cubic-bezier(.4,0,.2,1);

    will-change: transform;
}


/* =========================================================
   CARD
========================================================= */

.ds-card {
    position: relative;

    flex: 0 0 auto !important;

    width: auto;

    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #fff;

    border: 1px solid #dfc895;

    border-radius: 15px;

    overflow: hidden;

    box-sizing: border-box;

    box-shadow:
        0 7px 22px rgba(36,27,14,.06);

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.ds-card:hover {
    transform: translateY(-5px);

    border-color:
        rgba(154,122,30,.45);

    box-shadow:
        0 16px 34px rgba(36,27,14,.12);
}


/* =========================================================
   IMAGE CONTAINER
========================================================= */

.ds-image {
    position: relative;

    width: 100%;

    height: 180px;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden;

    background: #f4f0e8;

    display: flex;
    align-items: center;
    justify-content: center;
}


/* =========================================================
   IMAGE
========================================================= */

.ds-image img {
    display: block !important;

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: cover !important;

    /*
       Center both horizontally and vertically
    */
    object-position: center center !important;

    transition:
        transform .5s ease;
}

.ds-card:hover .ds-image img {
    transform: scale(1.035);
}


/* =========================================================
   SPECIAL IMAGE POSITIONING
   Keep faces visible for portrait images
========================================================= */

.ds-card:nth-child(6) .ds-image img {
    object-position: center 25% !important;
}


/* =========================================================
   INFO
========================================================= */

.ds-info {
    min-height: 135px;

    padding: 19px 13px 21px;

    text-align: center;

    background: #fff;
}


/* GOLD LINE */

.ds-line {
    display: block;

    width: 30px;
    height: 2px;

    margin: 0 auto 12px;

    background: #9a7a1e;
}


/* NAME */

.ds-info h4 {
    margin: 0 0 8px;

    color: #241b0e;

    font-size: 16px;
    font-weight: 700;

    line-height: 1.35;
}


/* DESCRIPTION */

.ds-info p {
    margin: 0;

    color: #756f66;

    font-size: 12px;

    line-height: 1.55;
}


/* =========================================================
   ARROWS
========================================================= */

.ds-arrow {
    position: absolute;

    top: 50%;

    z-index: 50;

    width: 42px;
    height: 42px;

    padding: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #9a7a1e;

    border-radius: 50%;

    background: #fff;

    color: #9a7a1e;

    

    font-size: 18px;
    line-height: 1;

    cursor: pointer;

    transform: translateY(-50%);

    box-shadow:
        0 6px 18px rgba(0,0,0,.10);

    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}

.ds-arrow:hover {
    background: #9a7a1e;

    color: #fff;

    transform:
        translateY(-50%) scale(1.08);

    box-shadow:
        0 10px 24px rgba(154,122,30,.22);
}


/* LEFT */

.ds-prev {
    left: 0;
}


/* RIGHT */

.ds-next {
    right: 0;
}


/* =========================================================
   KNOW MORE
========================================================= */

.ds-button {
    margin-top: 38px;

    text-align: center;
}

.ds-button .btn-outline {
    border-color: #9a7a1e;

    color: #7a5e14;
}

.ds-button .btn-outline:hover {
    background: #9a7a1e;

    color: #fff;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width:1100px) {

    .ds-slider {
        padding: 0 45px;
    }

    .ds-track {
        gap: 18px;
    }

    .ds-image {
        height: 245px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width:767px) {

    .ds-sec .section-head {
        display: block;

        text-align: center;

        margin-bottom: 30px;
    }

    .ds-sec .section-eyebrow {
        justify-content: center;
    }

    .ds-sec .section-sub {
        max-width: 100%;

        margin: 12px auto 0;

        font-size: 13px;
    }


    .ds-slider {
        padding: 0 38px;
    }


    .ds-track {
        gap: 14px;
    }


    .ds-image {
        height: 260px;
    }


    .ds-info {
        min-height: 125px;

        padding:
            18px
            12px
            20px;
    }


    .ds-info h4 {
        font-size: 17px;
    }


    .ds-info p {
        font-size: 12px;
    }


    .ds-arrow {
        width: 34px;
        height: 34px;

        font-size: 15px;
    }


    .ds-prev {
        left: 0;
    }


    .ds-next {
        right: 0;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width:480px) {

    .ds-slider {
        padding: 0 33px;
    }


    .ds-image {
        height: 245px;
    }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion:reduce) {

    .ds-track {
        transition: none;
    }

    .ds-card,
    .ds-image img {
        transition: none;
    }

}




/* =========================================
   COMPACT ONE-ROW CTA
========================================= */

.cta-band {
    padding: 20px 0;
    background: #f4ead5;
    border-top: 1px solid rgba(154,122,30,.18);
    border-bottom: 1px solid rgba(154,122,30,.18);
}

.cta-band .wrap {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 30px;
    box-sizing: border-box;
}

.cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    flex-wrap: nowrap;
}

.cta-content {
    display: flex;
    align-items: center;
    gap: 25px;
    flex: 1;
    min-width: 0;
}

.cta-content h2 {
    margin: 0;
    font-size: 24px;
    line-height: 1.2;
    white-space: nowrap;
    color: #241b0e;
}

.cta-content h2 em {
    color: var(--gold-bright);
}

.cta-content p {
    margin: 0;
    font-size: 13px;
    line-height: 1.4;
    white-space: nowrap;
    color: #625844;
}

.cta-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-shrink: 0;
    white-space: nowrap;
}

.cta-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    height: 40px;
    padding: 0 18px;

    font-size: 12px;
    font-weight: 600;
    line-height: 1;

    white-space: nowrap;
    text-decoration: none;

    box-sizing: border-box;
}


/* Primary button */

.cta-actions .btn-primary {
    background: #e5a900;
    color: #fff !important;
    border: 1px solid #e5a900;
}

.cta-actions .btn-primary:hover {
    background: #c98f00;
    border-color: #c98f00;
    color: #fff !important;
}


/* Outline button */

.cta-actions .btn-outline {
    background: #fff !important;
    color: #7a5e14 !important;
    border: 1px solid #9a7a1e !important;
}

.cta-actions .btn-outline:hover {
    background: #9a7a1e !important;
    color: #fff !important;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .cta-band .wrap {
        padding: 0 20px;
    }

    .cta-inner {
        gap: 18px;
    }

    .cta-content {
        gap: 15px;
    }

    .cta-content h2 {
        font-size: 21px;
    }

    .cta-content p {
        font-size: 12px;
    }

    .cta-actions a {
        padding: 0 14px;
        font-size: 11px;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .cta-band {
        padding: 24px 0;
    }

    .cta-inner {
        flex-direction: column;
        gap: 16px;
        text-align: center;
    }

    .cta-content {
        flex-direction: column;
        gap: 6px;
        width: 100%;
    }

    .cta-content h2 {
        font-size: 22px;
        white-space: normal;
    }

    .cta-content p {
        white-space: normal;
    }

    .cta-actions {
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
    }

}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .cta-actions {
        flex-direction: column;
        width: 100%;
    }

    .cta-actions a {
        width: 100%;
    }

}

/* FOOTER */
footer{background:var(--panel);padding:50px 0 0;}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.1fr;gap:50px;margin-bottom:50px;}
.footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:18px;}
.footer-logo span{font-size:24px;}
.footer-logo em{color:var(--gold-bright);}
footer p{color:var(--ivory-dim);font-size:14px;line-height:1.7;}
footer h5{font-size:12.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);margin-bottom:22px;}
footer ul{list-style:none;display:flex;flex-direction:column;gap:12px;}
footer ul a{color:var(--ivory-dim);font-size:14px;transition:color .3s;}
footer ul a:hover{color:var(--gold-bright);}
.footer-addr{margin-top:20px;display:flex;flex-direction:column;gap:10px;font-size:13.5px;color:var(--ivory-dim);}
.footer-social{display:flex;gap:14px;margin-top:20px;}
.footer-social a{width:34px;height:34px;border:1px solid #dfc895;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--bronze);transition:all .3s;}
.footer-social a:hover{border-color:var(--gold);color:var(--gold-bright);}
.footer-bottom{display:flex;justify-content:space-between;padding:26px 0;border-top:1px solid #dfc895;font-size:13px;color:var(--ivory-dim);flex-wrap:wrap;gap:12px;}
.footer-bottom a{color:var(--gold-bright);}

@media (max-width:980px){.footer-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr;}}



    /* =========================================================
   ANANDABODH - NEWS & EVENTS SLIDER
========================================================= */

.ab-news-section {
    width: 100%;
    padding: 75px 0;
    background: #fff!important;
    overflow: hidden;
    box-sizing: border-box;
}

.ab-news-section *,
.ab-news-section *::before,
.ab-news-section *::after {
    box-sizing: border-box;
}


/* =========================================================
   SECTION HEADING
========================================================= */

.ab-news-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
    margin-bottom: 42px;
}

.ab-news-heading h2 {
    margin: 8px 0 0;
    color: #241b0e;
    
    font-size: clamp(32px, 3.5vw, 46px);
    font-weight: 400;
    line-height: 1.15;
}

.ab-news-heading h2 em {
    color:rgb(180, 134, 22);
}

.ab-news-heading > p {
    width: 100%;
    max-width: 380px;
    margin: 0 0 5px;
    color: #6d675d;
    font-size: 14px;
    line-height: 1.7;
}


/* =========================================================
   SLIDER OUTER
========================================================= */

.ab-news-slider {
    position: relative;
    width: 100%;
    padding: 0 50px;
    margin: 0;
}


/* =========================================================
   VIEWPORT
========================================================= */

.ab-news-window {
    position: relative;
    width: 100%;
    overflow: hidden;
}


/* =========================================================
   TRACK
========================================================= */

.ab-news-track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;

    gap: 20px;

    width: max-content !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    transform: translate3d(0, 0, 0);

    transition:
        transform 0.65s cubic-bezier(.4, 0, .2, 1);

    will-change: transform;
}


/* =========================================================
   CARD
   IMPORTANT:
   WIDTH JS SE SET HOGI
========================================================= */

.ab-news-card {
    display: block !important;

    flex: 0 0 auto !important;

    width: auto;
    min-width: 0 !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #fff;

    border:1px solid #dfc895;

    border-radius: 17px;

    overflow: hidden;

    box-shadow:
        0 8px 28px rgba(36, 27, 14, .07);

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;
}

.ab-news-card:hover {
    transform: translateY(-6px);

    border-color: rgba(154, 122, 30, .42);

    box-shadow:
        0 18px 40px rgba(36, 27, 14, .12);
}


/* =========================================================
   IMAGE
========================================================= */

.ab-news-img {
    position: relative;

    width: 100%;
    height: 225px;

    overflow: hidden;

    background: #f3efe7;
}

.ab-news-img img {
    display: block;

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: cover !important;
    object-position: center !important;

    transition:
        transform .55s ease;
}

.ab-news-card:hover .ab-news-img img {
    transform: scale(1.05);
}


/* =========================================================
   DATE
========================================================= */

.ab-news-img span {
    position: absolute;

    left: 15px;
    bottom: 15px;

    z-index: 2;

    display: inline-flex;
    align-items: center;

    padding: 7px 12px;

    background: #fff;

    color: #7a5e14;

    border: 1px solid #dfc895;

    border-radius: 5px;

    font-size: 11px;
    font-weight: 600;

    line-height: 1;

    box-shadow:
        0 5px 15px rgba(0, 0, 0, .10);
}


/* =========================================================
   CARD CONTENT
========================================================= */

.ab-news-body {
    display: flex;
    flex-direction: column;
    padding: 22px 21px 22px;
}


/* CATEGORY */

.ab-news-body small {
    display: block;

    margin: 0 0 9px;

    color: #9a7a1e;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.8px;

    line-height: 1.3;

    text-transform: uppercase;
}


/* TITLE */

.ab-news-body h3 {
    margin: 0 0 11px;
    color: #241b0e;
    font-size: 18px;
    font-weight: 500;

    line-height: 1.35;
}


/* DESCRIPTION */

.ab-news-body p {
    margin: 0 0 14px;

    color: #6d675d;

    font-size: 13px;

    line-height: 1.65;
}


/* VENUE */

.ab-news-venue {
    margin-top: auto;

    padding-top: 13px;

    border-top: 1px solid rgba(154, 122, 30, .15);

    color: #756d61;

    font-size: 12px;

    line-height: 1.55;
}

.ab-news-venue b {
    color: #241b0e;
}


/* =========================================================
   READ MORE
========================================================= */

.ab-news-body > a {
    display: inline-flex;
    align-items: center;

    width: max-content;

    margin-top: 15px;

    color: #9a7a1e;

    font-size: 12px;
    font-weight: 600;

    text-decoration: none;

    transition:
        transform .25s ease,
        color .25s ease;
}

.ab-news-body > a:hover {
    color: #6e5311;

    transform: translateX(4px);
}


/* =========================================================
   ARROWS
========================================================= */

.ab-news-arrow {
    position: absolute;

    top: 50%;

    width: 42px;
    height: 42px;

    padding: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #9a7a1e;
    border-radius: 50%;

    background: #fff;

    color: #9a7a1e;

    

    font-size: 19px;
    line-height: 1;

    cursor: pointer;

    z-index: 30;

    box-shadow:
        0 6px 18px rgba(0, 0, 0, .10);

    transform: translateY(-50%);

    transition:
        background .3s ease,
        color .3s ease,
        transform .3s ease,
        box-shadow .3s ease;
}

.ab-news-arrow:hover {
    background: #9a7a1e;

    color: #fff;

    transform:
        translateY(-50%) scale(1.08);

    box-shadow:
        0 10px 25px rgba(154, 122, 30, .22);
}

.ab-news-prev {
    left: 0;
}

.ab-news-next {
    right: 0;
}


/* =========================================================
   VIEW ALL
========================================================= */

.ab-news-more {
    margin-top: 40px;

    text-align: center;
}

.ab-news-more .btn-outline {
    border-color: #9a7a1e;

    color: #7a5e14;
}

.ab-news-more .btn-outline:hover {
    background: #9a7a1e;

    color: #fff;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {

    .ab-news-section {
        padding: 65px 0;
    }

    .ab-news-heading {
        gap: 25px;
    }

    .ab-news-slider {
        padding: 0 46px;
    }

    .ab-news-track {
        gap: 20px;
    }

    .ab-news-img {
        height: 220px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .ab-news-section {
        padding: 55px 0;
    }

    .ab-news-section .wrap {
        padding-left: 18px;
        padding-right: 18px;
    }

    .ab-news-heading {
        display: block;

        margin-bottom: 30px;

        text-align: center;
    }

    .ab-news-heading .section-eyebrow {
        justify-content: center;
    }

    .ab-news-heading h2 {
        font-size: 31px;
    }

    .ab-news-heading > p {
        max-width: 100%;

        margin: 13px auto 0;

        font-size: 13px;
    }

    .ab-news-slider {
        padding: 0 38px;
    }

    .ab-news-track {
        gap: 14px;
    }

    .ab-news-img {
        height: 215px;
    }

    .ab-news-body {
        min-height: 240px;

        padding: 19px 17px 21px;
    }

    .ab-news-body h3 {
        font-size: 18px;
    }

    .ab-news-body p {
        font-size: 12px;
    }

    .ab-news-arrow {
        width: 34px;
        height: 34px;

        font-size: 15px;
    }

    .ab-news-prev {
        left: 0;
    }

    .ab-news-next {
        right: 0;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .ab-news-slider {
        padding: 0 34px;
    }

    .ab-news-track {
        gap: 13px;
    }

    .ab-news-img {
        height: 200px;
    }

}

/* ---------- LEGACY INLINE STYLE CLASSES ---------- */
.legacy-inline-1{font-size:clamp(28px,3.6vw,40px);font-weight:400;margin-bottom:24px;}
.legacy-inline-2{color:rgb(180, 134, 22);}
.legacy-inline-3{background: radial-gradient(circle at 80% 50%, rgba(242, 176, 12, 0.08), transparent 45%);}
.legacy-inline-4{display:flex;align-items:center;justify-content:center;background:transparent;border-style:dashed;}
.legacy-inline-5{font-size:13px;color:var(--ivory-dim);}
.legacy-inline-6{text-align:center;margin-top:40px;}
.legacy-inline-7{background:radial-gradient(circle at 80% 50%, rgba(242, 176, 12, 0.08), transparent 45%);}
.legacy-inline-8{display:block;text-align:center;margin-bottom:50px;}
.legacy-inline-9{justify-content:center;}
.legacy-inline-10{margin:0 auto;}
.legacy-inline-11{margin:18px auto 0;}
.legacy-inline-12{width:100%; margin-bottom: 30px;}
.legacy-inline-13{margin-bottom:40px;}
.legacy-inline-14{text-align:center;margin-top:36px;}
.legacy-inline-15{display:block;text-align:center;}
.legacy-inline-16{font-size:clamp(26px,3.4vw,36px);font-weight:400;margin-bottom:20px;}
.legacy-inline-17{color:var(--ivory-dim);font-size:15px;line-height:1.7;margin-bottom:26px;}
.legacy-inline-18{min-width:300px;}
.legacy-inline-19{margin-top:50px;}
.legacy-inline-20{color:var(--ivory-dim);}

/* =========================================================
   ANANDABODH — FINAL EDITORIAL TYPOGRAPHY
   Reference-style serif heading + clean sans UI
   Single source of truth — place at end of CSS
========================================================= */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=DM+Sans:wght@400;500;600;700&display=swap');

:root{
  --ab-heading:'Cormorant Garamond', Georgia, serif;
  --ab-body:'DM Sans', Arial, sans-serif;
}

/* Base */
html,body{
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

body{
  font-family:var(--ab-body)!important;
}

/* Headings — editorial serif like the reference */
h1,h2,h3,h4,h5,h6,
.hero h1,
.section-head h2,
.about-copy h2,
.offer-heading h2,
.disease-sec .section-head h2,
.path-selector-intro h2,
.journey-content h2,
.ab-news-heading h2,
.ab-news-body h3,
.path-content h3,
.offer-content h3,
.disease-sec .disease-card h4,
.session-body h4,
.workshop-card h4,
.retreat-content h3,
.ebook-body h4,
.about-quote,
.quote-band blockquote,
.belief-inner blockquote{
 /* font-family:var(--ab-heading)!important;*/
}

/* Keep italic available only where the design intentionally uses it */
.hero h1 em,
.section-head h2 em,
.about-copy h2 em,
.offer-heading h2 em,
.disease-sec .section-head h2 em,
.path-selector-intro h2 em,
.ab-news-heading h2 em{
  font-family:var(--ab-heading)!important;
}

.hero h1{
  font-family:var(--ab-heading)!important;
  font-size:clamp(62px,5.6vw,84px)!important;
  font-weight:500!important;
  line-height:.93!important;
  letter-spacing:-1.8px!important;
  word-spacing:0!important;
  max-width:720px!important;
  margin-bottom:28px!important;
  color:#f8f1e7!important;
}

.hero h1 em{
  color:#c97650!important;
  font-weight:500!important;
 
}

.hero p{
  font-family:var(--ab-heading)!important;
  font-size:18px!important;
  font-weight:400!important;
  line-height:1.45!important;
  letter-spacing:0!important;
  max-width:600px!important;
  color:rgba(248,241,231,.84)!important;
}

.hero .eyebrow{
  font-family:var(--ab-body)!important;
  font-size:10px!important;
  font-weight:600!important;
  letter-spacing:2.5px!important;
  text-transform:uppercase!important;
  color:#c9a25a!important;
}

/* Hero buttons */
.hero .btn,
.hero a[class*="btn"]{
  font-family:var(--ab-body)!important;
}

/* Hero stats */
.hero-stats,
.hero .hero-stats{
  font-family:var(--ab-body)!important;
}

.hero-stats strong,
.hero-stats .stat-number{
  font-family:var(--ab-heading)!important;
}

/* ---------- OTHER SECTION HEADINGS ---------- */
.section-head h2,
.about-copy h2,
.offer-heading h2,
.disease-sec .section-head h2,
.path-selector-intro h2,
.journey-content h2,
.ab-news-heading h2{
  font-weight:500!important;
  line-height: 50px!important;
  font-size: 40px !important;
  text-transform: capitalize;
}



/* UI/navigation remains clean sans */
.topbar,
.nav-links,
.nav-links>li>a,
.nav-links .sub li a,
.section-eyebrow,
.section-sub,
.offer-intro,
.about-copy p,
.path-content p,
.offer-content p,
.disease-sec .disease-card p,
.retreat-content p,
.testi-card>p,
.journey-intro,
.impact-label,
.ab-news-body p,
.ab-news-body small,
.ab-news-venue{
  font-family:var(--ab-body)!important;
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:991px){
  .hero h1{
    font-size:clamp(52px,7.2vw,70px)!important;
    line-height:.96!important;
  }
}

@media(max-width:767px){
  .hero h1{
    font-size:clamp(44px,11vw,58px)!important;
    line-height:.98!important;
    letter-spacing:-1px!important;
  }
  .hero p{
    font-size:16px!important;
    line-height:1.5!important;
  }
}

@media(max-width:480px){
  .hero h1{
    font-size:43px!important;
    line-height:1!important;
  }
}
/* =========================================================
   ANANDABODH HERO — BUTTONS + STATS VISIBILITY FIX
========================================================= */

/* HERO CONTENT ABOVE EVERYTHING */
.hero {
    position: relative !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    align-items: center !important;

    overflow: hidden !important;

    background-image: url("https://www.anandabodh.com/front/images/shiv-ch.png") !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
}
.hero,
.hero-grid,
.hero-content,
.hero-copy,
.hero-actions,
.hero-stats,
.hero-stat {
    position: relative;
    z-index: 5;
}

/* ---------- BUTTONS ---------- */

.hero-actions {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin-top: 30px !important;
    margin-bottom: 34px !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.hero-actions a,
.hero-actions .btn,
.hero .hero-btn,
.hero a.btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 52px !important;
    padding: 0 27px !important;

    font-family: 'DM Sans', Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: .2px !important;
    text-decoration: none !important;

    border-radius: 2px !important;

    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

/* Primary button */
.hero-actions a:first-child,
.hero-actions .btn-primary,
.hero .btn-primary {
    color: #fff8ef !important;
    background: #c96843 !important;
    border: 1px solid #c96843 !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.18) !important;
}

.hero-actions a:first-child:hover,
.hero-actions .btn-primary:hover,
.hero .btn-primary:hover {
    background: #d97951 !important;
    border-color: #d97951 !important;
    color: #fff !important;
}

/* Secondary button */
.hero-actions a:nth-child(2),
.hero-actions .btn-outline,
.hero .btn-outline {
    color: #d8a34d !important;
    background: transparent !important;
    border: 1px solid rgba(216,163,77,.75) !important;
}

.hero-actions a:nth-child(2):hover,
.hero-actions .btn-outline:hover,
.hero .btn-outline:hover {
    color: #fff5e5 !important;
    background: rgba(201,104,67,.12) !important;
    border-color: #d8a34d !important;
}

/* =========================================================
   ANANDABODH — PREMIUM HERO STATS
========================================================= */

.hero-stats {
    width: 100% !important;
    max-width: 660px !important;

    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;

    margin: 24px 0 !important;
    padding: 0 !important;

    align-items: stretch !important;

    border: 0 !important;
    background: transparent !important;

    opacity: 1 !important;
    visibility: visible !important;
}


/* EACH STAT */
.hero-stats > *,
.hero-stat {
    min-width: 0 !important;
    min-height: 92px !important;

    padding: 0 18px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;

    position: relative !important;

    border: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;
}


/* VERTICAL DIVIDER */
.hero-stats > * + *,
.hero-stat + .hero-stat {
    border-left: 1px solid rgba(211, 166, 78, 0.38) !important;
}


/* =========================================================
   ICON
========================================================= */

.hero-stats i,
.hero-stats svg,
.hero-stats img,
.hero-stats .stat-icon,
.hero-stat i,
.hero-stat svg,
.hero-stat img,
.hero-stat .stat-icon {
    width: 27px !important;
    height: 27px !important;

    min-width: 27px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin: 0 auto 9px !important;

    color: #d8a44d !important;
    fill: none !important;
    stroke: #d8a44d !important;

    font-size: 23px !important;

    opacity: 1 !important;
}


/* =========================================================
   NUMBER / MAIN VALUE
========================================================= */

.hero-stats strong,
.hero-stats .stat-number,
.hero-stat strong,
.hero-stat .stat-number {

    display: block !important;

    margin: 0 !important;

    font-family: 'Cormorant Garamond', Georgia, serif !important;

    font-size: 24px !important;
    font-weight: 600 !important;

    line-height: 1 !important;

    letter-spacing: .2px !important;

    color: #f5eadc !important;

    white-space: nowrap !important;

    opacity: 1 !important;
}


/* =========================================================
   LABEL
========================================================= */

.hero-stats span,
.hero-stats .stat-label,
.hero-stat span,
.hero-stat .stat-label {

    display: block !important;

    width: 100% !important;

    margin: 6px 0 0 !important;

    font-family: 'DM Sans', Arial, sans-serif !important;

    font-size: 9px !important;
    font-weight: 500 !important;

    line-height: 1.25 !important;

    letter-spacing: .65px !important;

    text-transform: uppercase !important;

    color: rgba(245, 234, 220, .68) !important;

    white-space: normal !important;

    opacity: 1 !important;
}


/* P / SMALL LABEL SUPPORT */
.hero-stats p,
.hero-stat p,
.hero-stats small,
.hero-stat small {

    margin: 6px 0 0 !important;

    font-family: 'DM Sans', Arial, sans-serif !important;

    font-size: 9px !important;
    line-height: 1.25 !important;

    letter-spacing: .6px !important;

    text-transform: uppercase !important;

    color: rgba(245, 234, 220, .68) !important;
}


/* =========================================================
   SPECIAL FIX — AYUSH / YCB
========================================================= */

.hero-stats > *:nth-child(3) strong,
.hero-stats > *:nth-child(3) .stat-number,
.hero-stat:nth-child(3) strong,
.hero-stat:nth-child(3) .stat-number {

    font-size: 14px !important;
    line-height: 1.05 !important;

    white-space: normal !important;

    max-width: 105px !important;
}


/* =========================================================
   SPECIAL FIX — TRADITIONAL YOGA LINEAGE
========================================================= */

.hero-stats > *:nth-child(2) strong,
.hero-stats > *:nth-child(2) .stat-number,
.hero-stat:nth-child(2) strong,
.hero-stat:nth-child(2) .stat-number {

    font-size: 14px !important;

    white-space: normal !important;

    max-width: 120px !important;

    line-height: 1.05 !important;
}


/* =========================================================
   ESTABLISHED 2003
========================================================= */

.hero-stats > *:first-child strong,
.hero-stats > *:first-child .stat-number,
.hero-stat:first-child strong,
.hero-stat:first-child .stat-number {

    font-size: 14px !important;
}


/* =========================================================
   30+ COUNTRIES
========================================================= */

.hero-stats > *:last-child strong,
.hero-stats > *:last-child .stat-number,
.hero-stat:last-child strong,
.hero-stat:last-child .stat-number {

    font-size: 14px !important;
}


/* =========================================================
   ICON + CONTENT CONSISTENCY
========================================================= */

.hero-stats > *::before,
.hero-stat::before {
    content: none !important;
}


/* =========================================================
   DESKTOP ALIGNMENT
========================================================= */

@media (min-width: 992px) {

    .hero-stats {
        grid-template-columns: 1fr 1.12fr 1.12fr 1fr !important;
    }

    .hero-stats > *,
    .hero-stat {
        min-height: 100px !important;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .hero-stats {
        max-width: 620px !important;
        margin-top: 28px !important;
    }

    .hero-stats > *,
    .hero-stat {
        padding: 0 12px !important;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .hero-stats {
        grid-template-columns: repeat(2, 1fr) !important;
        max-width: 440px !important;
        margin-top: 28px !important;
    }

    .hero-stats > *,
    .hero-stat {
        min-height: 82px !important;
        padding: 12px 10px !important;
    }

    /* second column divider */
    .hero-stats > *:nth-child(2),
    .hero-stat:nth-child(2) {
        border-left: 1px solid rgba(211,166,78,.38) !important;
    }

    /* third row */
    .hero-stats > *:nth-child(3),
    .hero-stat:nth-child(3) {
        border-left: 0 !important;
        border-top: 1px solid rgba(211,166,78,.25) !important;
    }

    .hero-stats > *:nth-child(4),
    .hero-stat:nth-child(4) {
        border-top: 1px solid rgba(211,166,78,.25) !important;
    }

    .hero-stats strong,
    .hero-stat strong {
        font-size: 21px !important;
    }

    .hero-stats span,
    .hero-stat span {
        font-size: 8px !important;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .hero-stats {
        width: 100% !important;
    }

    .hero-stats > *,
    .hero-stat {
        padding-left: 7px !important;
        padding-right: 7px !important;
    }

    .hero-stats strong,
    .hero-stat strong {
        font-size: 19px !important;
    }

    .hero-stats .stat-label,
    .hero-stat .stat-label {
        font-size: 7.5px !important;
        letter-spacing: .4px !important;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .hero-actions {
        flex-wrap: wrap !important;
        gap: 10px !important;
    }

    .hero-actions a,
    .hero-actions .btn {
        min-height: 48px !important;
        padding: 0 21px !important;
    }
}

@media (max-width: 480px) {

    .hero-actions {
        width: 100% !important;
    }

    .hero-actions a,
    .hero-actions .btn {
        width: 100% !important;
    }

}
/* =========================================================
   HERO EYEBROW — PREMIUM STYLE
========================================================= */

.hero-eyebrow {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;

    margin: 0 0 24px !important;
    padding: 0 !important;

    font-family: 'DM Sans', Arial, sans-serif !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;

    letter-spacing: 2.4px !important;
    text-transform: uppercase !important;

    color: #d6a34a !important;

    opacity: 1 !important;
    visibility: visible !important;
}


/* Gold decorative line */
.hero-eyebrow > span {
    display: block !important;

    width: 34px !important;
    height: 1px !important;

    flex: 0 0 34px !important;

    background: #d6a34a !important;

    opacity: .9 !important;
}


/* Prevent old pseudo-elements from adding another line */
.hero-eyebrow::before,
.hero-eyebrow::after {
    content: none !important;
}


/* Hover / animation should not change visibility */
.hero-eyebrow.reveal,
.hero-eyebrow.reveal-item,
.hero-eyebrow.is-visible {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}


/* Tablet */
@media (max-width: 991px) {

    .hero-eyebrow {
        margin-bottom: 20px !important;
        font-size: 9px !important;
        letter-spacing: 2px !important;
    }

    .hero-eyebrow > span {
        width: 28px !important;
        flex-basis: 28px !important;
    }
}


/* Mobile */
@media (max-width: 767px) {

    .hero-eyebrow {
        gap: 10px !important;
        margin-bottom: 18px !important;

        font-size: 8px !important;
        letter-spacing: 1.5px !important;

        line-height: 1.4 !important;
    }

    .hero-eyebrow > span {
        width: 24px !important;
        flex-basis: 24px !important;
    }
}
/* =========================================================
   ANANDABODH — GLOBAL SECTION CONTAINER FIX
   Applies consistent left/right spacing to ALL sections
========================================================= */

/* Main content container */
.wrap {
    width: min(1280px, calc(100% - 120px)) !important;
    max-width: 1280px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    box-sizing: border-box !important;
}


/* =========================================================
   IMPORTANT:
   Some sections were forcing .wrap to 100%.
   Override those rules globally.
========================================================= */

.sessions-sec .wrap,
.testi-sec .wrap,
.ds-sec .wrap,
.wa-sec .wrap,
.vt-sec .wrap,
.media-sec .wrap,
.gallery-sec .wrap,
.ebook-sec .wrap,
.videos-sec .wrap,
.workshop-sec .wrap,
.ttc-sec .wrap,
.cert-sec .wrap,
.retreats-sec .wrap,
.journey-teaser-sec .wrap,
.path-selector-sec .wrap,
.offer-sec .wrap,
.disease-sec .wrap,
.about .wrap,
.quote-band .wrap,
.digital-banner .wrap {
    width: min(1280px, calc(100% - 120px)) !important;
    max-width: 1280px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    box-sizing: border-box !important;
}


/* =========================================================
   SLIDERS
   Keep slider itself inside the container
========================================================= */

.sessions-sec .hscroll,
.workshop-sec .hscroll,
.ebook-sec .hscroll,
.ttc-sec .hscroll,
.wa-grid {
    width: 100% !important;
    box-sizing: border-box !important;
}


/* Testimonial / special sliders */
.testi-slider,
.ds-slider {
    width: 100% !important;
    box-sizing: border-box !important;
}


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1400px) {

    .wrap,
    .sessions-sec .wrap,
    .testi-sec .wrap,
    .ds-sec .wrap,
    .wa-sec .wrap,
    .vt-sec .wrap,
    .media-sec .wrap,
    .gallery-sec .wrap,
    .ebook-sec .wrap,
    .videos-sec .wrap,
    .workshop-sec .wrap,
    .ttc-sec .wrap,
    .cert-sec .wrap,
    .retreats-sec .wrap,
    .journey-teaser-sec .wrap,
    .path-selector-sec .wrap,
    .offer-sec .wrap,
    .disease-sec .wrap,
    .about .wrap,
    .quote-band .wrap,
    .digital-banner .wrap {
        width: min(1280px, calc(100% - 160px)) !important;
    }

}


/* =========================================================
   LAPTOP
========================================================= */

@media (max-width: 1199px) {

    .wrap,
    .sessions-sec .wrap,
    .testi-sec .wrap,
    .ds-sec .wrap,
    .wa-sec .wrap,
    .vt-sec .wrap,
    .media-sec .wrap,
    .gallery-sec .wrap,
    .ebook-sec .wrap,
    .videos-sec .wrap,
    .workshop-sec .wrap,
    .ttc-sec .wrap,
    .cert-sec .wrap,
    .retreats-sec .wrap,
    .journey-teaser-sec .wrap,
    .path-selector-sec .wrap,
    .offer-sec .wrap,
    .disease-sec .wrap,
    .about .wrap,
    .quote-band .wrap,
    .digital-banner .wrap {
        width: calc(100% - 80px) !important;
    }

}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 767px) {

    .wrap,
    .sessions-sec .wrap,
    .testi-sec .wrap,
    .ds-sec .wrap,
    .wa-sec .wrap,
    .vt-sec .wrap,
    .media-sec .wrap,
    .gallery-sec .wrap,
    .ebook-sec .wrap,
    .videos-sec .wrap,
    .workshop-sec .wrap,
    .ttc-sec .wrap,
    .cert-sec .wrap,
    .retreats-sec .wrap,
    .journey-teaser-sec .wrap,
    .path-selector-sec .wrap,
    .offer-sec .wrap,
    .disease-sec .wrap,
    .about .wrap,
    .quote-band .wrap,
    .digital-banner .wrap {
        width: calc(100% - 40px) !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 480px) {

    .wrap,
    .sessions-sec .wrap,
    .testi-sec .wrap,
    .ds-sec .wrap,
    .wa-sec .wrap,
    .vt-sec .wrap,
    .media-sec .wrap,
    .gallery-sec .wrap,
    .ebook-sec .wrap,
    .videos-sec .wrap,
    .workshop-sec .wrap,
    .ttc-sec .wrap,
    .cert-sec .wrap,
    .retreats-sec .wrap,
    .journey-teaser-sec .wrap,
    .path-selector-sec .wrap,
    .offer-sec .wrap,
    .disease-sec .wrap,
    .about .wrap,
    .quote-band .wrap,
    .digital-banner .wrap {
        width: calc(100% - 30px) !important;
    }

}
/* =========================================================
   OFFER SLIDER — FINAL FIX
========================================================= */

.offer-slider-wrap {
    position: relative !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}


/* ===============================
   VIEWPORT
================================ */

.offer-slider-viewport {
    width: calc(100% - 96px) !important;
    margin: 0 auto !important;

    overflow: hidden !important;

    box-sizing: border-box !important;
}


/* ===============================
   TRACK
================================ */

.offer-list {
    display: flex !important;
    flex-wrap: nowrap !important;

    align-items: stretch !important;

    gap: 22px !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 5px 0 18px !important;

    overflow: visible !important;

    box-sizing: border-box !important;

    transform: translate3d(0,0,0);

    transition:
        transform .7s cubic-bezier(.22,.61,.36,1) !important;
}


/* ===============================
   CARD
   4 EXACT CARDS
================================ */

.offer-list .offer-card {
    position: relative !important;

    display: flex !important;
    flex-direction: column !important;

    flex: 0 0 calc((100% - 66px) / 4) !important;

    width: calc((100% - 66px) / 4) !important;

    min-width: calc((100% - 66px) / 4) !important;

    max-width: calc((100% - 66px) / 4) !important;

    min-height: 270px !important;

    margin: 0 !important;

    padding: 25px 24px 22px !important;

    box-sizing: border-box !important;

    overflow: hidden !important;

    border: 1px solid rgba(190,150,73,.32) !important;

    border-radius: 7px !important;

    background: #fffdf8 !important;

    text-decoration: none !important;

    flex-shrink: 0 !important;
}


/* ===============================
   TOP
================================ */

.offer-top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;

    width: 100% !important;

    margin-bottom: 27px !important;
}


.offer-icon {
    width: 40px !important;
    height: 40px !important;

    min-width: 40px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border: 1px solid rgba(205,159,59,.7) !important;

    border-radius: 50% !important;

    background: #fffaf0 !important;

    font-size: 20px !important;

    color: #bd8611 !important;
}


.offer-number {
    font-size: 10px !important;
    letter-spacing: 1px !important;

    color: rgba(190,150,73,.55) !important;
}


/* ===============================
   CONTENT
================================ */

.offer-content {
    flex: 1 !important;
    min-width: 0 !important;
}


.offer-content h3 {
    margin: 0 0 12px !important;

    font-family:
        'Cormorant Garamond',
        Georgia,
        serif !important;

    font-size: 18px !important;

    font-weight: 500 !important;

    line-height: 1.05 !important;

    color: #173c3b !important;
}


.offer-content p {
    margin: 0 !important;

    font-size: 15px !important;

    line-height: 1.55 !important;

    color: rgba(36,27,14,.66) !important;
}


/* ===============================
   ARROW INSIDE CARD
================================ */

.offer-arrow {
    width: 32px !important;
    height: 32px !important;

    min-width: 32px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin-top: 18px !important;
    margin-left: auto !important;

    border: 1px solid rgba(198,104,67,.38) !important;

    border-radius: 50% !important;

    color: #c66843 !important;
}

.offer-arrow:hover {
    color: #fff;
}

/* ===============================
   SLIDER ARROWS
================================ */

.offer-slider-btn {
    position: absolute !important;

    top: 50% !important;

    z-index: 100 !important;

    width: 40px !important;
    height: 40px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 0 !important;

    transform: translateY(-50%) !important;

    border: 1px solid rgba(198,104,67,.5) !important;

    border-radius: 50% !important;

    background: #fffdf8 !important;

    color: #c66843 !important;

    font-size: 17px !important;

    cursor: pointer !important;
}


.offer-prev {
    left: 4px !important;
}


.offer-next {
    right: 4px !important;
}


/* ===============================
   TABLET — 3 CARDS
================================ */

@media (max-width:1199px) {

    .offer-slider-viewport {
        width: calc(100% - 88px) !important;
    }


    .offer-list .offer-card {
        flex: 0 0 calc((100% - 44px) / 3) !important;

        width: calc((100% - 44px) / 3) !important;

        min-width: calc((100% - 44px) / 3) !important;

        max-width: calc((100% - 44px) / 3) !important;
    }

}


/* ===============================
   MOBILE — 1 CARD
================================ */

@media (max-width:767px) {

    .offer-slider-viewport {
        width: calc(100% - 68px) !important;
    }


    .offer-list {
        gap: 16px !important;
    }


    .offer-list .offer-card {
        flex: 0 0 100% !important;

        width: 100% !important;

        min-width: 100% !important;

        max-width: 100% !important;
    }


    .offer-slider-btn {
        width: 34px !important;
        height: 34px !important;
    }


    .offer-prev {
        left: 1px !important;
    }


    .offer-next {
        right: 1px !important;
    }

}

/* Main dropdown arrow */

.nav-links .main-arrow {
    display: inline-block;

    margin-left: 5px;

    font-size: 11px;

    line-height: 1;

    vertical-align: middle;

    transition:
        transform .25s ease;
}


/* Rotate main arrow */

.nav-links > li.has-submenu:hover > a .main-arrow {
    transform: rotate(180deg);
}


/* Nested/right arrow */

.nav-links .side-arrow {
    display: inline-block;

    margin-left: auto;

    flex-shrink: 0;

    font-size: 12px;

    line-height: 1;

    transition:
        transform .25s ease;
}


/* Move right arrow slightly */

.nav-links .has-submenu:hover > a .side-arrow {
    transform: translateX(3px);
}


/* Submenu links */

.nav-links .sub li > a {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 12px;
}


/* Keep submenu text aligned */

.nav-links .sub li > a span:first-child {
    flex: 1;
}


/* Home icon */

.nav-links .fa-home {
    font-size: 16px;
}
/* =========================================================
   VIDEO TESTIMONIALS
========================================================= */

.video-testimonials {
    position: relative;
    padding: 100px 0 80px;
    background: #f7f3eb;
    overflow: hidden;
}

.vt-container {
    width: min(1380px, 92%);
    margin: auto;
    position: relative;
    z-index: 2;
}


/* HEADING */

.vt-heading-row {
    display: grid;
    grid-template-columns: 1fr 430px;
    align-items: end;
    gap: 70px;
    margin-bottom: 50px;
}

.vt-eyebrow {
    display: flex;
    align-items: center;
    gap: 14px;

    color: #b27a17;
    font-family: Arial, sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.vt-eyebrow span {
    width: 38px;
    height: 1px;
    background: #d36f4b;
}

.vt-heading h2 {
    margin: 18px 0 0;

    color: #173d3a;

    font-family: 'Cormorant Garamond', serif;
    font-size: clamp(54px, 5.8vw, 44px);
    font-weight: 500;
    line-height: .9;
    letter-spacing: -2px;
}

.vt-heading h2 em {
    color: rgb(180, 134, 22);
}

.vt-intro p {
    margin: 0 0 22px;

    color: #59605d;
    font-family: Arial, sans-serif;
    font-size: 15px;
    line-height: 1.7;
}

.vt-more {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    color: #b47716;

    font-family: Arial, sans-serif;
    font-size: 13px;
    font-weight: 600;

    text-decoration: none;

    border-bottom: 1px solid rgba(180,119,22,.5);
    padding-bottom: 7px;

    transition: .3s ease;
}

.vt-more span {
    font-size: 18px;
    transition: .3s ease;
}

.vt-more:hover {
    color: #c86f4e;
}

.vt-more:hover span {
    transform: translate(3px,-3px);
}


/* =========================================================
   3 VIDEO CARDS — NO SLIDER
========================================================= */

.vt-videos {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
}


/* CARD */

.vt-card {
    background: #fff;

    border: 1px solid rgba(183,132,38,.22);

    box-shadow: 0 15px 45px rgba(39,30,17,.08);

    overflow: hidden;

    transition: .4s ease;
}

.vt-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 25px 60px rgba(39,30,17,.14);
}


/* VIDEO */

.vt-video {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #111;
    overflow: hidden;
}

.vt-video iframe {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    border: 0;
}


/* CARD CONTENT */

.vt-card-content {
    min-height: 125px;

    padding: 22px;

    display: flex;
    justify-content: space-between;
    align-items: flex-start;

    gap: 15px;
}

.vt-small {
    display: block;

    margin-bottom: 8px;

    color: #b98529;

    font-family: Arial, sans-serif;
    font-size: 9px;
    font-weight: 600;
    letter-spacing: 2px;
}

.vt-card-content h3 {
    margin: 0;

    max-width: 320px;

    color: #183c39;

    font-family: 'Cormorant Garamond', serif;
    font-size: 22px;
    font-weight: 500;
    line-height: 25px;
}

.vt-card-content h3 em {
    color:  var(--gold-bright);
}
em {
    font-style: normal !important;
}
.vt-number {
    color: rgba(183,132,38,.35);

    font-family: 'Cormorant Garamond', serif;
    font-size: 35px;
    line-height: 1;
}


/* BOTTOM */

.vt-bottom {
    margin-top: 35px;
    padding-top: 22px;

    border-top: 1px solid rgba(183,132,38,.22);
}

.vt-bottom span {
    color: #69706c;

    font-family: 'Cormorant Garamond', serif;
    font-size: 18px;
}

.vt-bottom i {
    color: #c86f4e;
    margin-right: 8px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1000px) {

    .vt-heading-row {
        grid-template-columns: 1fr 330px;
        gap: 40px;
    }

    .vt-videos {
        grid-template-columns: repeat(2, 1fr);
    }

    .vt-card:last-child {
        grid-column: 1 / -1;
        max-width: calc(50% - 14px);
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .video-testimonials {
        padding: 70px 0 60px;
    }

    .vt-heading-row {
        grid-template-columns: 1fr;
        gap: 25px;
        margin-bottom: 35px;
    }

    .vt-heading h2 {
        font-size: 52px;
    }

    .vt-videos {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .vt-card:last-child {
        grid-column: auto;
        max-width: none;
    }

    .vt-card-content h3 {
        font-size: 23px;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    .vt-heading h2 {
        font-size: 45px;
    }

    .vt-card-content {
        padding: 18px;
    }

    .vt-card-content h3 {
        font-size: 21px;
    }
}
/* =========================
   VIDEO GRID
========================= */

.video-grid {
    width: 100%;
    max-width: 1200px;
    margin: 40px auto;
    padding: 0 15px;

    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

/* Video Card */
.video-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e8e8e8;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

/* Hover Effect */
.video-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.14);
}

/* Video Area */
.video-frame {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #000;
}

/* YouTube iframe */
.video-frame iframe {
    position: absolute;
    top: 0;
    left: 0;

    width: 100% !important;
    height: 100% !important;

    border: 0;
    display: block;
}

/* Video Title */
.video-card h4 {
    margin: 0;
    padding: 15px 18px;
    text-align: center;
    font-size: 18px;
    line-height: 1.4;
    font-weight: 600;
    color: #222;

    background: #fff;
}

/* =========================
   TABLET
========================= */

@media (max-width: 991px) {

    .video-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .video-card h4 {
        font-size: 17px;
        padding: 14px 16px;
    }
}

/* =========================
   MOBILE
========================= */

@media (max-width: 575px) {

    .video-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 0 12px;
        margin: 30px auto;
    }

    .video-card h4 {
        font-size: 16px;
        padding: 13px 15px;
    }
}

    .hero {
    width: 100%;
    padding: 0;
    margin: 0;
    overflow: hidden;
}

.hero-banner {
    width: 100%;
    line-height: 0;
}

.hero-banner img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    object-fit: cover;
}

    /* =========================================================
   BELIEF SECTION
   PREMIUM ANANDABODH STYLE
========================================================= */

.belief-sec {
    position: relative;

    padding: 55px 0;

    overflow: hidden;

    background:
        linear-gradient(
            180deg,
            #faf6ed 0%,
            #f7f0e3 100%
        );
}


/* =========================================================
   BACKGROUND DECORATION
========================================================= */

.belief-sec::before {
    content: "";

    position: absolute;

    width: 620px;
    height: 620px;

    left: -310px;
    top: 50%;

    transform: translateY(-50%);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(194, 145, 45, .10),
            transparent 68%
        );

    pointer-events: none;
}


.belief-sec::after {
    content: "";

    position: absolute;

    width: 520px;
    height: 520px;

    right: -300px;
    bottom: -300px;

    border-radius: 50%;

    border:
        1px solid
        rgba(190, 142, 43, .14);

    box-shadow:
        0 0 0 35px
        rgba(190, 142, 43, .025),
        0 0 0 70px
        rgba(190, 142, 43, .02);

    pointer-events: none;
}


/* =========================================================
   INNER CARD
========================================================= */

.belief-inner {

    position: relative;

    z-index: 2;

    width: 100%;

    padding: 28px 65px;

    box-sizing: border-box;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.88),
            rgba(255,251,243,.72)
        );

    border:
        1px solid
        #dfc99b;

    box-shadow:
        0 20px 60px
        rgba(73, 52, 22, .07);

    overflow: hidden;

    opacity: 1;

    visibility: visible;

    transform: none;
}


/* inner gold border */

.belief-inner::before {

    content: "";

    position: absolute;

    inset: 9px;

    border:
        1px solid
        rgba(190, 142, 43, .13);

    pointer-events: none;
}


/* =========================================================
   TOP ROW
========================================================= */

.belief-top {

    position: relative;

    z-index: 3;

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding-bottom: 30px;

    border-bottom:
        1px solid
        rgba(190, 142, 43, .18);
}


/* =========================================================
   EYEBROW
========================================================= */

.belief-top .section-eyebrow {

    display: inline-flex;

    align-items: center;

    gap: 13px;

    color: #a67520;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 11px;

    font-weight: 700;

    line-height: 1;

    letter-spacing: 2.8px;

    text-transform: uppercase;
}


.belief-top .section-eyebrow::before {

    content: "";

    width: 40px;

    height: 1px;

    background: #bd8925;
}


/* =========================================================
   NUMBER
========================================================= */

.belief-number {

    color: #bd8925;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 12px;

    font-weight: 600;

    letter-spacing: 2px;

    opacity: .8;
}


/* =========================================================
   MAIN QUOTE AREA
========================================================= */

.belief-main {

    position: relative;

    max-width: 1060px;

    margin: 0 auto;

    padding:
        32px 45px
        30px;

    text-align: center;
}


/* =========================================================
   LARGE QUOTE MARK
========================================================= */

.belief-quote-mark {

    position: absolute;

    left: 0;
    top: 32px;

    color: #bd8925;

    font-family:
        Georgia,
        serif;

    font-size: 105px;

    font-weight: 400;

    line-height: .7;

    opacity: .15;

    user-select: none;
}


/* =========================================================
   BLOCKQUOTE
========================================================= */

.belief-main blockquote {

    position: relative;

    z-index: 2;

    max-width: 1000px;

    margin: 0 auto;

    color: #2a2119;

    font-family:
        "Sora",
        sans-serif;

    font-size:
        clamp(
            34px,
            4vw,
            33px
        );

    font-weight: 500;

    line-height: 1.2;

    letter-spacing: -.045em;
}


/* GOLD HIGHLIGHT */

.belief-main blockquote span {

    color: #bd8925;

    font-weight: 600;

    font-style: normal;
}


/* =========================================================
   BOTTOM
========================================================= */

.belief-bottom {

    position: relative;

    z-index: 3;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 40px;

    padding-top: 30px;

    border-top:
        1px solid
        rgba(190, 142, 43, .18);
}


/* =========================================================
   AUTHOR
========================================================= */

.belief-author {

    display: flex;

    align-items: center;

    gap: 16px;
}


.belief-author-line {

    width: 42px;

    height: 1px;

    background: #bd8925;
}


.belief-author div {

    display: flex;

    flex-direction: column;

    gap: 5px;
}


.belief-author small {

    color: #a67520;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.8px;

    text-transform: uppercase;
}


.belief-author strong {

    color: #5d554c;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 14px;

    font-weight: 500;
}


/* =========================================================
   BUTTON
========================================================= */

.belief-btn {

    position: relative;

    display: inline-flex;

    align-items: center;

    justify-content: space-between;

    gap: 35px;

    min-width: 250px;

    min-height: 54px;

    padding: 0 20px 0 24px;

    box-sizing: border-box;

    color: #986e1d !important;

    background:
        rgba(255,255,255,.75);

    border:
        1px solid
        #c6a05b;

    border-radius: 2px;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: .8px;

    text-decoration: none;

    transition:
        transform .3s ease,
        background .3s ease,
        color .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}


.belief-btn b {

    display: flex;

    align-items: center;
    justify-content: center;

    width: 27px;
    height: 27px;

    color: #bd8925;

    font-size: 20px;

    font-weight: 400;

    transition:
        transform .3s ease;
}


.belief-btn:hover {

    color: #ffffff !important;

    background:
        linear-gradient(
            135deg,
            #c59431,
            #b77e1d
        );

    border-color: #b77e1d;

    transform: translateY(-3px);

    box-shadow:
        0 12px 28px
        rgba(174, 124, 29, .20);
}


.belief-btn:hover b {

    color: #ffffff;

    transform:
        translateX(5px);
}


/* =========================================================
   SUBTLE SHINE
========================================================= */

.belief-btn::after {

    content: "";

    position: absolute;

    left: -100%;

    top: 0;

    width: 60%;
    height: 100%;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(255,255,255,.20),
            transparent
        );

    transform: skewX(-20deg);

    transition:
        left .6s ease;

    pointer-events: none;
}


.belief-btn:hover::after {

    left: 130%;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1000px) {

    .belief-sec {

        padding: 75px 0;
    }


    .belief-inner {

        padding: 48px 40px;
    }


    .belief-main {

        padding:
            52px 25px
            45px;
    }


    .belief-main blockquote {

        font-size: 38px;
    }


    .belief-bottom {

        gap: 25px;
    }

}


/* =========================================================
   TABLET / SMALL
========================================================= */

@media (max-width: 760px) {

    .belief-sec {

        padding: 55px 0;
    }


    .belief-inner {

        padding: 38px 25px;
    }


    .belief-inner::before {

        inset: 6px;
    }


    .belief-top {

        padding-bottom: 22px;
    }


    .belief-main {

        padding:
            45px 8px
            38px;
    }


    .belief-quote-mark {

        left: -5px;

        top: 20px;

        font-size: 80px;
    }


    .belief-main blockquote {

        font-size:
            clamp(
                28px,
                7vw,
                37px
            );

        line-height: 1.18;
    }


    .belief-bottom {

        display: flex;

        flex-direction: column;

        align-items: stretch;

        gap: 25px;

        padding-top: 25px;
    }


    .belief-author {

        justify-content: center;
    }


    .belief-btn {

        width: 100%;

        min-width: 0;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 480px) {

    .belief-sec {

        padding: 42px 0;
    }


    .belief-inner {

        padding:
            30px 18px;
    }


    .belief-top {

        align-items: flex-start;
    }


    .belief-top .section-eyebrow {

        font-size: 9px;

        letter-spacing: 2px;

        gap: 9px;
    }


    .belief-top .section-eyebrow::before {

        width: 28px;
    }


    .belief-number {

        font-size: 10px;
    }


    .belief-main {

        padding:
            42px 2px
            32px;
    }


    .belief-quote-mark {

        left: 0;

        top: 16px;

        font-size: 68px;
    }


    .belief-main blockquote {

        font-size: 27px;

        line-height: 1.2;

        letter-spacing: -.035em;
    }


    .belief-author {

        justify-content: flex-start;

        gap: 12px;
    }


    .belief-author-line {

        width: 28px;
    }


    .belief-author strong {

        font-size: 12px;
    }


    .belief-author small {

        font-size: 8px;

        letter-spacing: 1.4px;
    }


    .belief-btn {

        min-height: 52px;

        padding:
            0 16px;

        font-size: 11px;

        letter-spacing: .5px;
    }

}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 360px) {

    .belief-inner {

        padding:
            27px 15px;
    }


    .belief-main blockquote {

        font-size: 25px;
    }


    .belief-btn {

        font-size: 10px;
    }

}
