@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');
:root {
  --ink: #10201b;
  --ink-2: #19322a;
  --cream: #f7f4ed;
  --paper: #fffdf8;
  --gold: #dca64e;
  --gold2: #f9bf56 ;
  --sage: #a9c5a9;
  --muted: #6d7771;
  --line: rgba(16, 32, 27, 0.12);
  --shadow: 0 24px 70px rgba(16, 32, 27, 0.11);
  --serif: "Playfair Display", serif;;
  --sans: "Poppins", sans-serif;;
}
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
html {
  scroll-behavior: smooth;
}
body {
  font-family: var(--sans);

  color: var(--ink);
  line-height: 1.6;
  overflow-x: hidden;
}
a {
  text-decoration: none;
  color: inherit;
}
button {
  font: inherit;
}
.container {
  width: min(1240px, calc(100% - 56px));
  margin: auto;
}
.progress {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: transparent;
  z-index: 100;
}
.progress span {
  display: block;
  width: 0;
  height: 100%;
  background: var(--gold2);
}
.cursor-glow {
  position: fixed;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    rgba(240, 196, 109, 0.12),
    transparent 68%
  );
  pointer-events: none;
  z-index: 2;
  transform: translate(-50%, -50%);
  display: none;
}
.site-header {
    position: sticky !important;
    top: 0;
    z-index: 1000;

    width: 100%;

    background: #fff !important;

    border-bottom: 1px solid rgba(23, 59, 46, 0.08);

    transition: all .3s ease;
}

.site-header.scrolled {
    background: #ffffff !important;

    box-shadow: 0 5px 25px rgba(23, 59, 46, 0.08);
}

.site-header .nav-wrap {
    min-height: 90px;
}
.site-header.scrolled {
  background: rgba(16, 32, 27, 0.92);
  backdrop-filter: blur(18px);

  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}
.nav-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.brand {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #fff;
}
.brand img{
	width: 90px;
}
.brand-logo {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
  background: #fff;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  transition: 0.3s;
}
.brand-logo:hover {
  transform: scale(1.04);
}
.footer-logo {
  width: 72px;
  height: 72px;
}
.brand {
  min-width: 58px;
}
.brand-logo + span {
  display: none;
}
.brand-mark {
  width: 37px;
  height: 37px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-family: var(--serif);
  font-size: 20px;
}
.brand strong {
  display: block;
  font: 600 18px var(--serif);
  letter-spacing: 0.04em;
}
.brand small {
  display: block;
  font-size: 7px;
  letter-spacing: 2.4px;
  color: var(--gold2);
}
.main-nav {
  display: flex;
  align-items: center;
  gap: 24px;
  color: #f7f5ef;
  font-size: 12px;
}
.main-nav a {
 transition: 0.25s;
    font-size: 18px;
    color: #000;
}
.main-nav a:hover,
.main-nav a.active {
  opacity: 1;
  color: #023510;
}
.nav-cta {
    padding: 7px 10px;
    border: 1px solid rgba(240, 196, 109, 0.5);
    border-radius: 5px !important;
    background: var(--gold2) !important;
    color: #000 !important;
    text-transform: uppercase;
    font-size: 16px !important;
    font-weight: 500;
}
.nav-cta span {
  margin-left: 5px;
}
.menu-toggle {
  display: none;
  background: none;
  border: 0;
}





@media (max-width: 800px) {

    .main-nav {
        position: fixed;
        top: 0;
        left: 0;

        width: min(82vw, 360px);
        height: 100dvh;

        padding: 110px 28px 35px;

        background: #10201b;

        z-index: 10001;

        display: flex;
        flex-direction: column;

        /* CLOSED — screen च्या LEFT बाहेर */
        transform: translateX(-100%);

        visibility: hidden;
        opacity: 1;

        transition:
            transform 0.55s cubic-bezier(0.22, 1, 0.36, 1),
            visibility 0s linear 0.55s;
    }


    /* OPEN — LEFT → RIGHT */
    .main-nav.open {
        transform: translateX(0);

        visibility: visible;

        transition:
            transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
    }


    /* Dark overlay */
    .mobile-menu-backdrop {
        position: fixed;
        inset: 0;

        background: rgba(5, 12, 9, 0.58);
        backdrop-filter: blur(3px);
        -webkit-backdrop-filter: blur(3px);

        z-index: 10000;

        opacity: 0;
        visibility: hidden;

        transition:
            opacity 0.35s ease,
            visibility 0.35s ease;
    }


    .mobile-menu-backdrop.show {
        opacity: 1;
        visibility: visible;
    }


    body.menu-open {
        overflow: hidden;
    }
}




















/* =========================================
   FINAL OMLAM HERO
========================================= */

.hero {
    position: relative;
    min-height: calc(100vh - 90px);
    overflow: hidden;

    background: #f8f6ef;
    color: #173b2e;
}

.hero-grid {
    width: 100%;
    max-width: 1320px;
    min-height: calc(100vh - 90px);

    margin: 0 auto;

    display: grid;
    grid-template-columns: 56% 44%;
    align-items: center;

    padding: 0 25px;
}


/* =========================================
   LEFT SIDE
========================================= */

.hero-copy {
 position: relative;
    z-index: 5;
    width: 100%;
    
    padding: 0px;
    text-align: left;
}

.hero .kicker {
    display: inline-flex;
    align-items: center;

    width: fit-content;

    margin: 0 0 22px;

    padding: 7px 18px;

    border-radius: 50px;

    background: #e9eee4;

    color: #b67e29;

    font-size: 12px;
    font-weight: 600;
    letter-spacing: 2px;
}

.hero .kicker span {
    width: 6px;
    height: 6px;

    margin-right: 8px;

    border-radius: 50%;

    background: #dca64e;
}


/* HEADING */

.hero-title {
margin: 0 0 18px;
    color: #000;
    font-family: "Playfair Display", serif;
    font-size: 75px;
    line-height: 0.98;
    font-weight: 600;
    letter-spacing: -2.5px;
}

.hero-title em {
    color: #dca64e;
    font-style: italic;
}


/* SUB HEADING */

.hero-lead {
    margin: 0 0 12px;

    color: #173b2e;

    font-size: 20px;
    font-weight: 600;
}


/* DESCRIPTION */

.hero-desc {
margin: 0 0 17px;
    color: #000;
    font-size: 17px;
    line-height: 1.7;
}


/* NOTE */

.hero-note {
 margin-bottom: 22px;
    color: #2a3631;
    font-size: 17px;
}

.hero-note span {
    color: #dca64e;
}


/* =========================================
   FORM
========================================= */

/* =========================================
   COMPACT HERO ENQUIRY FORM
========================================= */

.hero-form {
    width: 100%;
    max-width: 650px;

    padding: 20px 20px 18px;

    background: #ffffff;

    border: 1px solid rgba(23, 59, 46, 0.08);
    border-radius: 16px;

    box-shadow: 0 15px 40px rgba(23, 59, 46, 0.07);
}


/* HEADING */

.hero-form-heading {
    margin-bottom: 14px;
}

.hero-form-heading h3 {
 margin-bottom: 10px;
    color: #000;
    font-size: 22px;
    line-height: 1.2;
    font-weight: 500;
}

.hero-form-heading p {
 margin: 4px 0 0;
    color: #000;
    font-size: 16px;
}


/* FORM */

.hero-enquiry-form {
    display: grid;

    grid-template-columns: 1fr 1fr 170px;

    gap: 9px;

    align-items: center;
}


/* INPUT */

.hero-input {
    height: 46px;

    display: flex;
    align-items: center;

    background: #f7f8f4;

    border: 1px solid #e1e6df;

    border-radius: 9px;

    transition: .25s;
}

.hero-input:focus-within {
    background: #fff;

    border-color: #dca64e;

    box-shadow: 0 0 0 3px rgba(220, 166, 78, 0.08);
}

.hero-input i {
    width: 38px;

    flex-shrink: 0;

    text-align: center;

    color: #c18a32;

    font-size: 12px;
}

.hero-input input {
width: 100%;
    height: 100%;
    padding: 0 10px 0 0;
    border: 0;
    outline: 0;
    background: transparent;
    color: #000;
    font-family: 'Poppins';
    font-size: 16px;
}

.hero-input input::placeholder {
    color: #000;
}


/* BUTTON */

.hero-form-btn {
 width: 100%;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 0 15px;
    border: 0;
    border-radius: 9px;
    background: #173b2e;
    color: #ffffff;
    font-family: inherit;
    font-size: 15px;
    font-weight: 400;
    white-space: nowrap;
    cursor: pointer;
    transition: .3s;
}

.hero-form-btn span {
    color: #e4ad36;
}

.hero-form-btn:hover {
    background: #dca64e;

    color: #173b2e;

    transform: translateY(-2px);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .hero-enquiry-form {
        grid-template-columns: 1fr 1fr;
    }

    .hero-form-btn {
        grid-column: 1 / -1;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 575px) {

    .hero-form {
        padding: 18px 15px;
    }

    .hero-form-heading {
        text-align: center;
    }

    .hero-enquiry-form {
        grid-template-columns: 1fr;

        gap: 9px;
    }

    .hero-form-btn {
        grid-column: auto;
    }
}

/* =========================================
   RIGHT COACH
========================================= */

.hero-side {
    position: relative;

    height: calc(100vh - 90px);

    min-height: 650px;

    display: flex;

    align-items: flex-end;

    justify-content: center;
}

.coach-image-wrap {
    position: relative;

    width: 100%;
    height: 100%;

    display: flex;

    align-items: flex-end;

    justify-content: center;
}


/* SOFT BACKGROUND */

.coach-image-bg {
    position: absolute;

    width: 540px;
    height: 540px;

    bottom: 45px;

    border-radius: 50%;

    background: #edf1e8;
}


/* COACH IMAGE */

.coach-image-wrap img {
    position: relative;

    z-index: 2;

    width: auto;
    max-width: 100%;

    height: min(790px, 88vh);

    object-fit: contain;

    object-position: bottom center;

    filter: drop-shadow(
        0 20px 30px rgba(23, 59, 46, .12)
    );
}


/* =========================================
   EXPERIENCE BADGE
========================================= */

.coach-badge {
    position: absolute;

    z-index: 6;

    right: 1%;

    bottom: 85px;

    width: 105px;
    height: 105px;

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #173b2e;

    box-shadow: 0 15px 35px rgba(23, 59, 46, .18);

    transform: rotate(5deg);
}

.coach-badge strong {
    color: #e4ad36;

    font-family: "Playfair Display", serif;

    font-size: 29px;

    line-height: 1;
}

.coach-badge span {
    max-width: 65px;

    margin-top: 6px;

    color: #fff;

    text-align: center;

    font-size: 8px;

    line-height: 1.35;
}


/* =========================================
   SCROLL
========================================= */

.scroll-cue {
    position: absolute;

    z-index: 10;

    left: 50%;
    bottom: 18px;

    transform: translateX(-50%);

    color: #7b847e;

    font-size: 8px;

    letter-spacing: 2.5px;
}

.scroll-cue i {
    display: none;
}


/* =========================================
   1200px
========================================= */

@media (max-width: 1200px) {

    .hero-grid {
        grid-template-columns: 55% 45%;
    }

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

    .hero-title {
        font-size: 68px;
    }

    .coach-image-wrap img {
        height: 720px;
    }
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .hero {
        min-height: auto;
    }

    .hero-grid {
        min-height: auto;

        grid-template-columns: 1fr;

        padding: 0 20px;
    }

    .hero-copy {
        max-width: 750px;

        margin: auto;

        padding: 120px 0 45px;

        text-align: center;
    }

    .hero .kicker {
        margin-left: auto;
        margin-right: auto;
    }

    .hero-title {
        font-size: clamp(52px, 10vw, 72px);
    }

    .hero-desc {
        margin-left: auto;
        margin-right: auto;
    }

    .hero-note {
        margin-bottom: 20px;
    }

    .hero-form {
        margin: auto;
        text-align: left;
    }

    .hero-side {
        height: 580px;
        min-height: 580px;
    }

    .coach-image-wrap img {
        height: 560px;
        max-width: 90%;
    }

    .coach-image-bg {
        width: 430px;
        height: 430px;
    }

    .coach-badge {
        right: 8%;
        bottom: 70px;
    }

    .scroll-cue {
        display: none;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 575px) {

    .hero-grid {
        padding: 0 15px;
    }

    .hero-copy {
              padding: 30px 0 0;
    }

    .hero-title {
        font-size: 40px;

        letter-spacing: -1.5px;
    }

    .hero-lead {
        font-size: 17px;
    }

    .hero-desc {
        font-size: 13px;
    }

    .hero-note {
        font-size: 12px;
    }

    .hero-form {
        padding: 15px;
    }

    .hero-form-heading {
        display: block;

        text-align: center;
    }

    .hero-form-heading p {
        margin-top: 4px;
    }

    .hero-form-row {
        grid-template-columns: 1fr;
    }

    .hero-side {
        height: 470px;
        min-height: 470px;
    }

    .coach-image-wrap img {
        height: 450px;
        max-width: 100%;
    }

    .coach-image-bg {
        width: 350px;
        height: 350px;
    }

    .coach-badge {
        right: 3%;
        bottom: 55px;

        width: 88px;
        height: 88px;
    }

    .coach-badge strong {
        font-size: 25px;
    }

    .coach-badge span {
        font-size: 7px;
    }
}


.marquee {
    overflow: hidden;
    width: 100%;

    background: var(--gold2);
    color: var(--ink);

    padding: 13px 0;
}

.marquee-track {
    display: flex;
    width: max-content;
    flex-shrink: 0;

    animation:
        marquee 25s linear infinite;

    will-change: transform;
}

.marquee-content {
    display: flex;
    align-items: center;

    flex-shrink: 0;

    gap: 22px;

    padding-right: 22px;

    white-space: nowrap;

    font-size: 15px;

    letter-spacing: 2px;

    font-weight: 500;
}


/* FONT AWESOME ICON */

.marquee-content i {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    font-size: 9px;

    color: var(--ink);

    opacity: .8;

    transform: rotate(-15deg);
}


/* CONTINUOUS LOOP */

@keyframes marquee {

    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }

}


/* PAUSE ON HOVER */

.marquee:hover .marquee-track {
    animation-play-state: paused;
}


/* MOBILE */

@media (max-width: 600px) {

    .marquee {
        padding: 11px 0;
    }

    .marquee-content {
        gap: 16px;
        padding-right: 16px;

        font-size: 12px;

        letter-spacing: 1.5px;
    }

    .marquee-content i {
        font-size: 7px;
    }

}
.section {
  position: relative;
  padding: 120px 0;
}



















.trial {
 position: relative;
    display: grid;
    place-items: center;
    text-align: center;
    color: #fff;
    overflow: hidden;
    padding: 60px 0 50px 0;
}
.trial-bg {
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(10, 23, 18, 0.68), rgba(10, 23, 18, 0.82)),
    url("https://images.unsplash.com/photo-1524863479829-916d8e77f114?w=2000&q=85")
      center/cover;
}
.trial-inner {
  position: relative;
  z-index: 2;
}
.trial h3 {
  font: 500 clamp(48px, 6vw, 78px) / 1 var(--serif);
  margin-bottom: 15px;
}
.trial p {
  font-size: 13px;
  color: #d9dfd9;
  margin-bottom: 28px;
}











.reveal {
  opacity: 0;
  transform: translateY(25px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}
.reveal.in {
  opacity: 1;
  transform: none;
}
.delay-1 {
  transition-delay: 0.12s;
}
.delay-2 {
  transition-delay: 0.22s;
}
@keyframes marquee {
  to {
    transform: translateX(-50%);
  }
}
@keyframes fade {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
@media (max-width: 1050px) {
  .main-nav {
    gap: 14px;
  }
  .method-grid {
    grid-template-columns: 1fr;
  }
  .method-intro {
    justify-content: center;
  }
  .week-grid {
    grid-template-columns: repeat(4, 1fr);
  }
  .timeline {
    grid-template-columns: repeat(4, 1fr);
  }
  .time-card {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .coach-grid {
    grid-template-columns: 0.7fr 1.3fr;
  }
  .expertise {
    grid-column: 1/-1;
  }
  .steps {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 800px) {
  .container {
    width: min(100% - 36px, 650px);
  }
  .menu-toggle {
    display: block;
    color: #fff;
  }
  .menu-toggle span {
    display: block;
    width: 24px;
    height: 1px;
    background: #fff;
    margin: 6px;
  }
  .main-nav {
    position: absolute;
    top: 75px;
    left: 18px;
    right: 18px;
    background: rgba(16, 32, 27, 0.98);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 18px;
    padding: 15px;
    display: none;
    flex-direction: column;
    align-items: stretch;
  }
  .main-nav.open {
    display: flex;
  }
  .main-nav a {
    padding: 10px;
  }
  .hero {
    min-height: 610px;
  }
  .hero-grid {
    grid-template-columns: 1fr;
    padding-top: 90px;
  }
  .hero-side {
    display: none;
  }
  .hero h1 {
    font-size: 60px;
  }
  .section {
    padding: 85px 0;
  }
  .method-cards {
    grid-template-columns: 1fr 1fr;
  }
  .split-heading,
  .row-head {
    display: block;
  }
  .split-heading p,
  .row-head > p {
    margin-top: 20px;
  }
  .week-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .benefit-grid,
  .stories-grid {
    grid-template-columns: 1fr;
    gap: 55px;
  }
  .benefit-photo {
    height: 430px;
  }
  .stat-card {
    right: 10px;
  }
  .coach-grid {
    grid-template-columns: 1fr;
  }
  .coach-photo {
    height: 420px;
  }
  .steps {
    grid-template-columns: 1fr 1fr;
  }
  .timeline {
    grid-template-columns: repeat(2, 1fr);
  }
  .trust-row {
    gap: 14px;
  }
  .footer-top {
    align-items: flex-start;
  }
  .footer-bottom {
    display: block;
  }
  .footer-bottom span {
    display: block;
    margin-bottom: 6px;
  }
}
@media (max-width: 500px) {
  .hero h1 {
    font-size: 51px;
  }
  .hero-lead {
    font-size: 17px;
  }
  .method-cards {
    grid-template-columns: 1fr;
  }
  .week-grid {
    grid-template-columns: 1fr;
  }
  .day {
    min-height: 170px;
  }
  .day-icon {
    margin: 20px 0;
  }
  .benefit-list {
    grid-template-columns: 1fr;
  }
  .steps {
    grid-template-columns: 1fr;
  }
  .timeline {
    grid-template-columns: 1fr;
  }
  .time-card {
    min-height: auto;
  }
  .main-nav {
    top: 67px;
  }
  .section-heading h2,
  .split-heading h2,
  .benefit-copy h2,
  .coach-copy h2,
  .stories h2,
  .how h2 {
    font-size: 44px;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *:before,
  *:after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
  .reveal {
    opacity: 1;
    transform: none;
  }
}



@media (max-width: 800px) {
  .hero-video {
    object-position: 58% center;
  }
}

/* =========================================================
   OMLAM PREMIUM OVERLAY MOTION EFFECTS
   CSS ONLY — HTML STRUCTURE UNCHANGED
   ========================================================= */

/* Soft cinematic light movement over the hero */
.hero-overlay {
  overflow: hidden;
  isolation: isolate;
  animation: heroOverlayBreath 10s ease-in-out infinite alternate;
}

.hero-overlay::before {
  content: "";
  position: absolute;
  inset: -25%;
  pointer-events: none;
  background: radial-gradient(
      circle at 72% 42%,
      rgba(240, 196, 109, 0.16) 0,
      rgba(240, 196, 109, 0.07) 12%,
      transparent 32%
    ),
    radial-gradient(
      circle at 24% 68%,
      rgba(169, 197, 169, 0.08) 0,
      transparent 30%
    );
  filter: blur(8px);
  animation: heroLightDrift 14s ease-in-out infinite alternate;
  z-index: -1;
}

/* Moving golden light sweep */
.hero-overlay::after {
  content: "";
  position: absolute;
  top: -20%;
  left: -45%;
  width: 34%;
  height: 150%;
  pointer-events: none;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.035) 30%,
    rgba(240, 196, 109, 0.13) 50%,
    rgba(255, 255, 255, 0.035) 70%,
    transparent
  );
  filter: blur(8px);
  transform: rotate(12deg);
  animation: heroLightSweep 11s ease-in-out infinite;
  z-index: 1;
}

/* Slow breathing zoom on video without touching the HTML */
.hero-video {
  animation: heroVideoBreath 18s ease-in-out infinite alternate;
  will-change: transform;
}

/* Cinematic vignette */
.hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(
    circle at 62% 45%,
    transparent 0 27%,
    rgba(0, 0, 0, 0.08) 58%,
    rgba(0, 0, 0, 0.28) 100%
  );
  mix-blend-mode: multiply;
  opacity: 0.65;
  animation: vignettePulse 9s ease-in-out infinite alternate;
}

/* Floating hero card animation */
.main-float {
  animation: floatCard 6s ease-in-out infinite;
  transform-origin: center center;
}

.floating-mini {
  animation: miniFloat 5s ease-in-out infinite;
}

.mini-b {
  animation-delay: -2.2s;
}

/* Animated 45-minute ring */
.float-ring {
  position: relative;
  animation: ringBreath 4s ease-in-out infinite;
}

.float-ring::before,
.float-ring::after {
  content: "";
  position: absolute;
  inset: -10px;
  border: 1px solid rgba(240, 196, 109, 0.16);
  border-radius: 50%;
  animation: ringPulse 3.5s ease-out infinite;
  pointer-events: none;
}

.float-ring::after {
  inset: -20px;
  animation-delay: 1.5s;
  opacity: 0.65;
}

/* Orbit motion */
.hero-orbit {
  transform-origin: center;
  animation: orbitDrift 18s linear infinite;
}

.orbit-two {
  animation-duration: 25s;
  animation-direction: reverse;
}

/* Marquee gets a subtle glow */
.marquee {
  position: relative;
  box-shadow: 0 -8px 30px rgba(220, 166, 78, 0.05),
    0 8px 30px rgba(16, 32, 27, 0.08);
}

.marquee::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -25%;
  width: 20%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.28),
    transparent
  );
  transform: skewX(-18deg);
  animation: marqueeShine 8s ease-in-out infinite;
  pointer-events: none;
}

/* Buttons: soft shine on hover */
.btn,
.nav-cta {
  position: relative;
  overflow: hidden;
}

.btn::after,
.nav-cta::after {
  content: "";
  position: absolute;
  top: -80%;
  left: -45%;
  width: 25%;
  height: 260%;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.35),
    transparent
  );
  transform: rotate(18deg) translateX(-160%);
  transition: transform 0.7s ease;
  pointer-events: none;
}

.btn:hover::after,
.nav-cta:hover::after {
  transform: rotate(18deg) translateX(600%);
}

.btn-primary {
  animation: buttonGlow 4s ease-in-out infinite;
}

/* Why section: animated ambient glows without changing markup */
.why-wheel {
  overflow: hidden;
}

.why-wheel::before,
.why-wheel::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(2px);
}

.why-wheel::before {
  width: 520px;
  height: 520px;
  right: -120px;
  top: 10%;
  background: radial-gradient(
    circle,
    rgba(169, 197, 169, 0.16),
    transparent 68%
  );
  animation: ambientFloat 12s ease-in-out infinite alternate;
}

.why-wheel::after {
  width: 380px;
  height: 380px;
  left: -160px;
  bottom: -80px;
  background: radial-gradient(
    circle,
    rgba(240, 196, 109, 0.1),
    transparent 68%
  );
  animation: ambientFloat 10s ease-in-out infinite alternate-reverse;
}

/* Wheel rings gently breathe */
.wellness-wheel .wheel-ring {
  animation: wheelRing 8s ease-in-out infinite alternate;
}

.wellness-wheel .wheel-ring-two {
  animation-delay: -3s;
}

.wheel-center {
  animation: centerBreath 5s ease-in-out infinite;
}

.wheel-item {
  transition: transform 0.45s cubic-bezier(0.2, 0.75, 0.25, 1),
    filter 0.35s ease;
}

.wheel-item:hover {
  transform: translateY(-7px) scale(1.035);
  filter: drop-shadow(0 12px 18px rgba(16, 32, 27, 0.1));
}

/* Cards lift slightly with a delayed breathing motion */
.method-cards article,
.day,
.time-card,
.steps > div,
.faq-box,
.stat-card {
  will-change: transform;
}

.method-cards article:hover,
.day:hover {
  transition-duration: 0.5s;
}

/* Section reveal gets a little more cinematic */
.reveal {
  transition: opacity 0.9s cubic-bezier(0.2, 0.7, 0.2, 1),
    transform 0.9s cubic-bezier(0.2, 0.7, 0.2, 1), filter 0.9s ease;
  filter: blur(2px);
}

.reveal.in {
  filter: blur(0);
}

/* Animated top progress line */
.progress span {
  box-shadow: 0 0 12px rgba(242, 207, 138, 0.55);
}

/* Header logo glow */
.brand img {
  transition: transform 0.4s ease, filter 0.4s ease;
}

.brand:hover img {
  transform: scale(1.04);
  filter: drop-shadow(0 0 10px rgba(242, 207, 138, 0.22));
}

/* FAQ plus icon */
.faq-item button span {
  transition: transform 0.35s cubic-bezier(0.2, 0.8, 0.2, 1), color 0.25s ease;
}

.faq-item:hover button span {
  color: var(--gold);
}

/* Final CTA has a slow light bloom */
.trial {
  isolation: isolate;
}

.trial::after {
 
}

/* Keyframes */
@keyframes heroOverlayBreath {
  0% {
    opacity: 0.94;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0.91;
  }
}

@keyframes heroLightDrift {
  0% {
    transform: translate3d(-2%, -1%, 0) scale(1);
  }
  100% {
    transform: translate3d(5%, 3%, 0) scale(1.08);
  }
}

@keyframes heroLightSweep {
  0%,
  55% {
    left: -45%;
    opacity: 0;
  }
  65% {
    opacity: 1;
  }
  90%,
  100% {
    left: 125%;
    opacity: 0;
  }
}

@keyframes heroVideoBreath {
  0% {
    transform: scale(1.035);
  }
  100% {
    transform: scale(1.075);
  }
}

@keyframes vignettePulse {
  0% {
    opacity: 0.52;
  }
  100% {
    opacity: 0.78;
  }
}

@keyframes floatCard {
  0%,
  100% {
    transform: translateY(0) rotate(3deg);
  }
  50% {
    transform: translateY(-12px) rotate(2deg);
  }
}

@keyframes miniFloat {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
}

@keyframes ringBreath {
  0%,
  100% {
    transform: scale(1);
    box-shadow: inset 0 0 0 14px rgba(240, 196, 109, 0.06),
      0 0 0 10px rgba(240, 196, 109, 0.04);
  }
  50% {
    transform: scale(1.035);
    box-shadow: inset 0 0 0 14px rgba(240, 196, 109, 0.09),
      0 0 0 14px rgba(240, 196, 109, 0.055);
  }
}

@keyframes ringPulse {
  0% {
    transform: scale(0.86);
    opacity: 0.7;
  }
  75%,
  100% {
    transform: scale(1.18);
    opacity: 0;
  }
}

@keyframes orbitDrift {
  from {
    transform: rotate(0deg) scale(1);
  }
  to {
    transform: rotate(360deg) scale(1.025);
  }
}

@keyframes marqueeShine {
  0%,
  55% {
    left: -25%;
    opacity: 0;
  }
  65% {
    opacity: 0.8;
  }
  100% {
    left: 125%;
    opacity: 0;
  }
}

@keyframes buttonGlow {
  0%,
  100% {
    box-shadow: 0 14px 30px rgba(220, 166, 78, 0.2);
  }
  50% {
    box-shadow: 0 16px 38px rgba(220, 166, 78, 0.34);
  }
}

@keyframes ambientFloat {
  0% {
    transform: translate3d(0, 0, 0) scale(1);
  }
  100% {
    transform: translate3d(18px, -16px, 0) scale(1.08);
  }
}

@keyframes wheelRing {
  0% {
    transform: scale(1) rotate(0deg);
    opacity: 0.55;
  }
  100% {
    transform: scale(1.035) rotate(3deg);
    opacity: 0.9;
  }
}

@keyframes centerBreath {
  0%,
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 0 rgba(16, 32, 27, 0.05);
  }
  50% {
    transform: scale(1.025);
    box-shadow: 0 0 0 18px rgba(16, 32, 27, 0.035);
  }
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}








/* =========================================================
   WHY OMLAM
   CENTER YOGA + RIGHT CONTENT
========================================================= */

.why-premium {
    position: relative;
    overflow: hidden;

    min-height: 720px;

    padding: 70px 0;

    background:
        radial-gradient(
            circle at 42% 50%,
            rgba(220,239,202,.75),
            transparent 34%
        ),
        linear-gradient(
            105deg,
            #fffefa 0%,
            #fbfcf5 52%,
            #eef6e8 100%
        );
}


/* =========================================================
   CONTAINER
========================================================= */

.why-premium-container {

    width:
        min(1450px, calc(100% - 50px));

    min-height: 580px;

    margin: auto;

    position: relative;

    display: grid;

    grid-template-columns:
        48% 52%;

    align-items: center;

    z-index: 5;
}


/* =========================================================
   YOGA AREA
========================================================= */

.why-yoga-area {

    position: relative;

    width: 100%;

    height: 610px;

    display: flex;

    align-items: center;

    justify-content: center;

    z-index: 2;
}


/* =========================================================
   YOGA IMAGE
========================================================= */

.yoga-image-wrap {

    position: relative;

  
    z-index: 4;
}


.yoga-image-wrap img {

    width: 100%;

    height: 100%;

    object-fit: contain;

    object-position:
        center bottom;

    filter:
        drop-shadow(
            0 25px 35px
            rgba(45,75,50,.14)
        );

    animation:
        yogaFloat 6s
        ease-in-out
        infinite;
}


@keyframes yogaFloat {

    0%,
    100% {
        transform:
            translateY(0);
    }

    50% {
        transform:
            translateY(-8px);
    }
}


/* =========================================================
   GLOW BEHIND YOGA
========================================================= */

.yoga-glow {

    position: absolute;

    width: 520px;
    height: 520px;

    left: 50%;
    top: 50%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(221,239,202,.8),
            rgba(235,245,222,.35) 45%,
            transparent 72%
        );

    filter: blur(12px);

    z-index: 1;
}


/* =========================================================
   RIGHT CONTENT AREA
========================================================= */

.why-content-area {

    position: relative;

    z-index: 10;

    padding-left: 15px;
}


/* =========================================================
   HEADING
========================================================= */

.why-premium-content {

    margin-bottom: 30px;
}


.why-kicker {
display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 10px;
    color: #c68c28;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 3px;
}


.why-kicker span {

    width: 30px;

    height: 1px;

    background: #c68c28;
}


.why-premium-content h2 {

  margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #000;
}


.why-premium-content h2 em {

    color: #044f21;

    font-style: italic;
}


.why-premium-content > p {

   margin: 0 0 22px;
    font-size: 16px;
    line-height: 1.65;
    color: #000;
}


/* =========================================================
   BUTTON
========================================================= */

.why-premium-btn {

    display: inline-flex;

    align-items: center;

    gap: 18px;

    padding: 13px 22px;

    border-radius: 50px;

    border: 1px solid #d7b76e;

    background:
        rgba(255,255,255,.72);

    color: #18342c;

    font-size: 11px;

    font-weight: 700;

    text-decoration: none;

    transition:
        .35s ease;
}


.why-premium-btn span {

    font-size: 18px;

    transition:
        .3s ease;
}


.why-premium-btn:hover {

    background: #fff;

    transform:
        translateY(-3px);

    box-shadow:
        0 14px 30px
        rgba(40,70,50,.12);
}


.why-premium-btn:hover span {

    transform:
        translateX(5px);
}


/* =========================================================
   WELLNESS GRID
========================================================= */

.wellness-grid {

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 13px;

    max-width: 690px;
}


/* =========================================================
   CARDS
========================================================= */

.wellness-card {

    display: flex;

    align-items: center;

    gap: 13px;

    min-height: 95px;

    padding: 12px 15px;

    border-radius: 5px;

    border:
        1px solid
        rgba(255,255,255,.95);

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.90),
            rgba(248,252,244,.76)
        );

    backdrop-filter:
        blur(15px);

    -webkit-backdrop-filter:
        blur(15px);

  box-shadow: rgba(50, 50, 93, 0.25) 0px 30px 60px -12px, rgba(0, 0, 0, 0.3) 0px 18px 36px -18px;

    transition:
        transform .35s ease,
        box-shadow .35s ease;
}


.wellness-card:hover {

    transform:
        translateY(-6px);

    box-shadow:
        0 20px 40px
        rgba(46,74,54,.14);
}


/* =========================================================
   CARD ICON
========================================================= */

.card-icon {

    width: 48px;

    height: 48px;

    min-width: 48px;

    display: grid;

    place-items: center;

    border-radius: 50%;

    font-size: 20px;

    border:
        1px solid
        rgba(255,255,255,.8);

    box-shadow:
        0 7px 18px
        rgba(50,80,60,.08);
}


/* =========================================================
   CARD CONTENT
========================================================= */

.card-content {

    flex: 1;
}


.wellness-card h3 {

 margin: 0 0 7px;
    font-size: 18px;
    line-height: 1.2;
    color: #000;
    font-weight: 500;
}


.wellness-card p {

  margin: 0;
    font-size: 15px;
    line-height: 1.45;
    color: #000;
}


/* =========================================================
   ICON COLORS
========================================================= */

.green {
    background: #e4f5d5;
    color: #3b813e;
}

.orange {
    background: #ffe4dc;
    color: #ee5a3c;
}

.purple {
    background: #eee2fa;
    color: #8052a5;
}

.teal {
    background: #dff2e8;
    color: #3e8061;
}

.cyan {
    background: #d9f4f1;
    color: #26958b;
}

.blue {
    background: #deecfa;
    color: #3278b8;
}

.violet {
    background: #e9def9;
    color: #7752a3;
}


/* =========================================================
   FLOATING LEAVES
========================================================= */

.floating-leaf {

    position: absolute;

    width: 70px;

    height: 35px;

    border-radius:
        100% 0 100% 0;

    background:
        linear-gradient(
            135deg,
            #91bd72,
            #d8e9c8
        );

    opacity: .65;

    z-index: 3;

    filter:
        blur(.2px);
}


.leaf-a {

    top: 90px;

    left: 12%;

    transform:
        rotate(-25deg);

    animation:
        leafFloat 6s
        ease-in-out
        infinite;
}


.leaf-b {

    top: 170px;

    right: 12%;

    transform:
        rotate(35deg);

    animation:
        leafFloat 7s
        1s
        ease-in-out
        infinite;
}


.leaf-c {

    bottom: 80px;

    left: 20%;

    transform:
        rotate(20deg);

    animation:
        leafFloat 6.5s
        .5s
        ease-in-out
        infinite;
}


@keyframes leafFloat {

    0%,
    100% {
        transform:
            translateY(0)
            rotate(-25deg);
    }

    50% {
        transform:
            translateY(-10px)
            rotate(-18deg);
    }
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1200px) {

    .why-premium-container {

        width:
            calc(100% - 35px);

        grid-template-columns:
            44% 56%;
    }

    .yoga-image-wrap {

        width: 520px;

        height: 570px;
    }

    .yoga-glow {

        width: 450px;

        height: 450px;
    }

    .why-premium-content h2 {

        font-size: 46px;
    }

    .wellness-card {

        min-height: 90px;
    }

    .wellness-card h3 {

        font-size: 13px;
    }

    .wellness-card p {

        font-size: 9px;
    }
}


@media (max-width: 900px) {

    .why-premium {

        padding:
            60px 0;
    }

    .why-premium-container {

        display: flex;

        flex-direction:
            column;
    }

    .why-yoga-area {

        order: 2;

        height: 580px;

        margin-top: 30px;
    }

    .why-content-area {

        order: 1;

        width: 100%;

        padding: 0;

        text-align: center;
    }

    .why-kicker {

        justify-content:
            center;
    }

    .why-premium-content h2 {

        margin-left: auto;

        margin-right: auto;
    }

    .why-premium-content > p {

        margin-left: auto;

        margin-right: auto;
    }

    .wellness-grid {

        max-width: 700px;

        margin:
            25px auto 0;

        text-align: left;
    }

    .yoga-image-wrap {

        width: 500px;

        height: 570px;
    }
}


@media (max-width: 600px) {

    .why-premium {

        padding:
            50px 0 20px;
    }

    .why-premium-container {

        width:
            calc(100% - 24px);
    }

    .why-premium-content h2 {

        font-size: 36px;

        letter-spacing:
            -1.3px;
    }

    .why-premium-content > p {

        font-size: 13px;
    }

    .wellness-grid {

        grid-template-columns:
            1fr;

        gap: 10px;
    }

    .wellness-card {

        min-height: 82px;
    }

    .why-yoga-area {

        height: 480px;
    }

    .yoga-image-wrap {

        width: 420px;

        height: 490px;
    }

    .yoga-glow {

        width: 380px;

        height: 380px;
    }

    .floating-leaf {

        display: none;
    }
}
.stress {
    background: #f9e4d8;
    color: #c87955;
}









/* =========================================================
   OMLAM COMPLETE WELLNESS
   DARK CINEMATIC SECTION
========================================================= */

.live-wellness-section {
position: relative;
    overflow: hidden;
    background: #061c17;
    color: #fff;
    isolation: isolate;
    padding: 50px 20px 60px 20px;
}


/* =========================================================
   BACKGROUND IMAGE
========================================================= */

.live-bg {

    position: absolute;

    inset: 0;

    z-index: -3;

    background-image:
        url("../img/online-wellness-bg.jpg");

    background-size: cover;

  
}


/* =========================================================
   DARK OVERLAY
========================================================= */

.live-overlay {

    position: absolute;

    inset: 0;

    z-index: -2;

    background:

        linear-gradient(
            90deg,
            rgba(3,19,15,.15) 0%,
            rgba(3,24,19,.45) 42%,
            rgba(3,22,17,.90) 78%,
            rgba(3,20,16,.96) 100%
        ),

        linear-gradient(
            180deg,
            rgba(1,14,11,.25) 0%,
            rgba(1,20,15,.15) 45%,
            rgba(2,19,15,.92) 100%
        );
}


/* =========================================================
   CONTAINER
========================================================= */

.live-container {

 position: relative;
    margin: auto;
    padding: 0;
}


/* =========================================================
   TOP AREA
========================================================= */

.live-top {

    display: grid;

    grid-template-columns:
        43% 57%;



    align-items: center;
}


/* =========================================================
   LEFT VISUAL
========================================================= */

.live-visual-space {

    position: relative;

  
}


/* golden sunlight */

.sun-glow {

    position: absolute;

    width: 330px;
    height: 330px;

    left: 42%;
    top: 45%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(230,171,65,.32),
            rgba(218,157,52,.08) 42%,
            transparent 70%
        );

    filter:
        blur(12px);
}


/* optional PNG */

.live-yoga-img {

    position: absolute;

    width: 440px;

    max-width: 100%;

    left: 50%;
    bottom: -20px;

    transform:
        translateX(-50%);

    object-fit: contain;

    filter:
        drop-shadow(
            0 20px 35px
            rgba(0,0,0,.35)
        );
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.live-content {

    position: relative;

    padding:
        15px 0 0 35px;
}


/* kicker */

.live-kicker {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-bottom: 18px;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 3px;

    color: #e9bd61;
}


.live-kicker span {

    width: 38px;

    height: 1px;

    background: #e9bd61;
}


/* heading */
.sitehead {

  margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #fff;
}
.sitehead em {

    color: #e7b94f;

    font-style: italic;
}

.live-content .sitehead {

  margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #fff;
}


.live-content h2 em {

    color: #e7b94f;

    font-style: italic;
}


/* subtitle */

.live-content h3 {
margin: 0;
    font-size: 20px;
    font-weight: 400;
    color: rgba(255, 255, 255, .88);
}


/* =========================================================
   INFO ROW
========================================================= */

.live-info {

    display: flex;

    align-items: center;

    gap: 15px;

    margin-top: 25px;
}


.live-schedule {
display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 10px 17px;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 5px;
    background: rgba(255, 255, 255, .05);
    backdrop-filter: blur(10px);
    font-size: 15px;
    color: #fff;
    font-weight: 300;
}


.schedule-icon {

    color: #e7b94f;

    font-size: 13px;
}


/* =========================================================
   BUTTON
========================================================= */

.live-btn {

   display: inline-flex;
    align-items: center;
    gap: 13px;
    padding: 11px 18px;
    border-radius: 3px;
    background: linear-gradient(135deg, #ffe38b, #e7ad39);
    color: #000;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    box-shadow: 0 8px 25px rgba(231, 174, 60, .20);
    transition: .35s ease;
}


.live-btn span {

    font-size: 17px;

    transition:
        transform .3s ease;
}


.live-btn:hover {

    transform:
        translateY(-3px);

    box-shadow:
        0 13px 32px
        rgba(231,174,60,.35);
}


.live-btn:hover span {

    transform:
        translateX(5px);
}


/* =========================================================
   DESCRIPTION
========================================================= */

.live-description {
margin-top: 20px;
    color: #fff;
    font-size: 16px;
    line-height: 1.4;
    font-weight: 300;
}


/* =========================================================
   TIMELINE
========================================================= */

.wellness-timeline {

  position: relative;
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    margin-top: 30px;
    padding-top: 35px;
}


/* connecting line */

.wellness-timeline::before {

    content: "";

    position: absolute;

    left: 2%;

    right: 2%;

    top: 82px;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(228,181,70,.75),
            rgba(255,255,255,.35),
            rgba(228,181,70,.75),
            transparent
        );

    z-index: 0;
}


/* =========================================================
   TIMELINE ITEM
========================================================= */

.timeline-item {

    position: relative;

    min-height: 205px;

    padding:
        0 13px;

    text-align: center;

    z-index: 2;
}


/* number */

.timeline-number {

    position: absolute;

    top: -5px;

    left: 50%;

    transform:
        translateX(-50%);

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1px;

    color: #f0ca65;

    z-index: 4;
}


/* icon */

.timeline-icon {

    width: 68px;

    height: 68px;

    margin:
        15px auto 14px;

    display: grid;

    place-items: center;

    border-radius: 50%;

    font-size: 24px;

    border:
        1px solid
        rgba(255,255,255,.35);

    box-shadow:
        0 0 0 6px
        rgba(255,255,255,.035),

        0 10px 30px
        rgba(0,0,0,.25);

    backdrop-filter:
        blur(10px);

    transition:
        transform .4s ease,
        box-shadow .4s ease;
}


.timeline-item:hover
.timeline-icon {

    transform:
        translateY(-7px)
        scale(1.07);

    box-shadow:
        0 0 0 8px
        rgba(255,255,255,.06),

        0 15px 40px
        rgba(0,0,0,.35);
}


/* =========================================================
   ICON COLORS
========================================================= */

.icon-yellow {

    background:
        rgba(235,190,70,.18);

    color: #f2ca5d;

    border-color:
        rgba(242,202,93,.65);
}


.icon-green {

    background:
        rgba(80,184,75,.18);

    color: #8ce879;

    border-color:
        rgba(120,225,101,.55);
}


.icon-blue {

    background:
        rgba(58,139,224,.20);

    color: #70b8ff;

    border-color:
        rgba(100,170,240,.55);
}


.icon-cyan {

    background:
        rgba(59,205,204,.18);

    color: #67e1dc;

    border-color:
        rgba(100,220,215,.55);
}


.icon-purple {

    background:
        rgba(157,88,230,.20);

    color: #ca91ff;

    border-color:
        rgba(186,126,245,.55);
}


.icon-pink {

    background:
        rgba(230,103,139,.20);

    color: #ff9ab5;

    border-color:
        rgba(250,143,171,.55);
}


.icon-sky {

    background:
        rgba(75,173,232,.20);

    color: #83d1ff;

    border-color:
        rgba(120,205,250,.55);
}


/* =========================================================
   TIME
========================================================= */

.timeline-time {

  font-size: 19px;
    font-weight: 400;
    color: #fff;
    margin-bottom: 3px;
}


/* title */

.timeline-item h4 {
margin: 0 0 7px;
    font-size: 18px;
    font-weight: 400;
    color: #e8c15d;

}


/* description */

.timeline-item p {

  margin: 0;
    color: #fff;
    font-size: 15px;
    line-height: 1.45;
    font-weight: 300;
}


/* =========================================================
   AMBIENT ANIMATION
========================================================= */

.live-wellness-section::after {

    content: "";

    position: absolute;

    width: 500px;

    height: 500px;

    right: -150px;

    top: -150px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(226,176,62,.12),
            transparent 70%
        );

    filter: blur(20px);

    animation:
        ambientGlow 7s
        ease-in-out
        infinite;

    pointer-events: none;
}


@keyframes ambientGlow {

    0%,
    100% {
        opacity: .45;
        transform: scale(1);
    }

    50% {
        opacity: .8;
        transform: scale(1.12);
    }
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {

    .live-container {

        width:
            calc(100% - 40px);
    }

    .live-top {

        grid-template-columns:
            35% 65%;
    }

    .live-content h2 {

        font-size: 45px;
    }

    .timeline-icon {

        width: 55px;
        height: 55px;

        font-size: 19px;
    }

    .timeline-time {

        font-size: 19px;
    }
}


@media (max-width: 850px) {

    .live-wellness-section {

        min-height: auto;
    }

    .live-container {

        padding:
            60px 0;
    }

    .live-top {

        display: block;

        min-height: auto;
    }

    .live-visual-space {

        display: none;
    }

    .live-content {

        padding: 0;

        text-align: center;
    }

    .live-kicker {

        justify-content: center;
    }

    .live-info {

        justify-content: center;

        flex-wrap: wrap;
    }

    .live-description {

        margin:
            20px auto 0;

        text-align: left;
    }

    .wellness-timeline {

        grid-template-columns:
            repeat(2, 1fr);

        gap: 20px;

        margin-top: 45px;

        padding-top: 0;
    }

    .wellness-timeline::before {

        display: none;
    }

    .timeline-item {

        background:
            rgba(255,255,255,.035);

        border:
            1px solid
            rgba(255,255,255,.10);

        border-radius: 18px;

        padding:
            20px 10px;
    }

    .timeline-number {

        position: relative;

        top: auto;

        left: auto;

        transform: none;

        margin-bottom: 5px;
    }

    .timeline-icon {

        margin-top: 8px;
    }
}


@media (max-width: 520px) {

    .live-container {

        width:
            calc(100% - 25px);
    }

    .live-content h2 {

        font-size: 38px;

        letter-spacing:
            -1px;
    }

    .live-content h3 {

        font-size: 16px;
    }

    .live-info {

        flex-direction:
            column;
    }

    .wellness-timeline {

        grid-template-columns:
            1fr;
    }
}






/* =========================================================
   OMLAM - WEEKLY FOCUS
   WHITE + LIGHT GREEN + YELLOW
========================================================= */

.weekly-focus-section1 {
 position: relative;
    overflow: hidden;
    padding: 50px 0 60px;
    background: #ffffff;
}


/* subtle background glow */

.weekly-focus-section1::before {
    content: "";

    position: absolute;

    width: 500px;
    height: 500px;

    left: -250px;
    top: 80px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(208, 232, 194, .22),
            transparent 70%
        );

    pointer-events: none;
}


/* right soft glow */

.weekly-focus-section1::after {
    content: "";

    position: absolute;

    width: 450px;
    height: 450px;

    right: -220px;
    bottom: -180px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(255, 220, 110, .13),
            transparent 70%
        );

    pointer-events: none;
}


/* =========================================================
   CONTAINER
========================================================= */

.weekly-focus-container {
    width: min(1450px, calc(100% - 60px));

    margin: auto;

    position: relative;

    z-index: 2;
}


/* =========================================================
   HEADER
========================================================= */

.weekly-focus-header {
display: block;
    margin-bottom: 50px;
}


/* label */

.weekly-label {

    display: flex;

    align-items: center;

    gap: 13px;

    margin-bottom: 16px;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 3px;

    color: #4f8b48;
}


.weekly-label span {

    width: 42px;

    height: 2px;

    background: #e5b842;

    border-radius: 10px;
}


/* heading */

.weekly-heading h2 {

   margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #000;
}


.weekly-heading h2 em {

  
    margin-top: 4px;

    color: #e4b43d;

    font-style: italic;
}


/* =========================================================
   INTRO TEXT
========================================================= */

.weekly-intro {

}


.weekly-focus-section1 .weekly-intro > span {

    width: 1px;

    min-width: 1px;

    height: 75px;

    background:
        #e2b743;
}


.weekly-focus-section1 .weekly-intro p {

 margin: 0;
    font-size: 16px;
    line-height: 1.65;
    color: #000;
}


/* =========================================================
   CONNECTING LINE
========================================================= */

.weekly-line {

}


/* =========================================================
   GRID
========================================================= */

.weekly-focus-section1 .weekly-grid {

    display: grid;

    grid-template-columns:
        repeat(7, 1fr);

    gap: 12px;

    position: relative;

    z-index: 3;
}


/* =========================================================
   CARD
========================================================= */

.weekly-focus-section1 .weekly-card {

   position: relative;
    padding: 30px 10px 10px;
    border-radius: 4px;
    border: 1px solid;
    text-align: center;
    transition: transform .4s ease, box-shadow .4s ease;
}


.weekly-focus-section1 .weekly-card:hover {

    transform:
        translateY(-8px);

    box-shadow:
        0 20px 45px
        rgba(43,72,50,.10);
}


/* =========================================================
   GREEN CARD
========================================================= */

.weekly-focus-section1 .green-card {

    background:
        linear-gradient(
            145deg,
            #fbfff8,
            #f2f9ec
        );

    border-color:
        #cfe5c3;
}


/* =========================================================
   YELLOW CARD
========================================================= */

.weekly-focus-section1 .yellow-card {

    background:
        linear-gradient(
            145deg,
            #fffefa,
            #fff9e9
        );

    border-color:
        #f0dca2;
}


/* =========================================================
   DOT
========================================================= */

.weekly-focus-section1 .weekly-dot {

    position: absolute;

    top: -20px;

    left: 50%;

    transform:
        translateX(-50%);

    width: 42px;
    height: 42px;

    border-radius: 50%;

    background: #ffffff;

    border: 1px solid;

    display: grid;

    place-items: center;

    z-index: 5;
}


.weekly-focus-section1 .weekly-dot::after {

    content: "";

    width: 15px;
    height: 15px;

    border-radius: 50%;
}


/* green dot */

.weekly-focus-section1 .green-card .weekly-dot {

    border-color:
        #b9d9aa;

    box-shadow:
        0 0 0 7px
        rgba(198,226,185,.18);
}


.weekly-focus-section1 .green-card .weekly-dot::after {

    background:
        #86bd70;
}


/* yellow dot */

.weekly-focus-section1 .yellow-card .weekly-dot {

    border-color:
        #f0d17c;

    box-shadow:
        0 0 0 7px
        rgba(244,216,133,.17);
}


.weekly-focus-section1 .yellow-card .weekly-dot::after {

    background:
        #f0bd32;
}


/* =========================================================
   DAY
========================================================= */

.weekly-focus-section1 .weekly-day {

 
    margin-bottom: 10px;
}


.weekly-focus-section1 .green-card .weekly-day {

  color: #000;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 1px;
}


.weekly-focus-section1 .yellow-card .weekly-day {

  color: #000;
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 1px;
}


/* =========================================================
   MINI LINE
========================================================= */

.weekly-focus-section1 .weekly-mini-line {

    width: 38px;

    height: 2px;

    margin:
        0 auto 18px;

    border-radius: 20px;
}


.weekly-focus-section1 .green-card .weekly-mini-line {

    background:
        #8dbf78;
}


.weekly-focus-section1 .yellow-card .weekly-mini-line {

    background:
        #e5b93e;
}


/* =========================================================
   TITLE
========================================================= */

.weekly-focus-section1 .weekly-card h3 {
margin: 0 0 10px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
    color: #000;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.weekly-focus-section1 .weekly-card p {

    margin: 0;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 12px;

    line-height: 1.6;

    color: #68766f;
}


/* =========================================================
   DAILY CLOSING
========================================================= */

 .weekly-focus-section1 .closing-card h3 {

    font-size: 17px;

    line-height: 1.35;
}


/* =========================================================
   SUBTLE CARD ANIMATION
========================================================= */

.weekly-card:nth-child(1) {
    animation: weeklyReveal .7s ease both;
}

.weekly-card:nth-child(2) {
    animation: weeklyReveal .7s .08s ease both;
}

.weekly-card:nth-child(3) {
    animation: weeklyReveal .7s .16s ease both;
}

.weekly-card:nth-child(4) {
    animation: weeklyReveal .7s .24s ease both;
}

.weekly-card:nth-child(5) {
    animation: weeklyReveal .7s .32s ease both;
}

.weekly-card:nth-child(6) {
    animation: weeklyReveal .7s .40s ease both;
}

.weekly-card:nth-child(7) {
    animation: weeklyReveal .7s .48s ease both;
}


@keyframes weeklyReveal {

    from {
        opacity: 0;

        transform:
            translateY(25px);
    }

    to {
        opacity: 1;

        transform:
            translateY(0);
    }
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1200px) {

    .weekly-focus-container {

        width:
            calc(100% - 35px);
    }

    .weekly-card {

        padding:
            52px 14px 25px;
    }

    .weekly-card h3 {

        font-size: 16px;
    }

    .weekly-card p {

        font-size: 10px;
    }

    .weekly-line {

        top: 310px;
    }
}


@media (max-width: 950px) {

    .weekly-focus-header {

        align-items:
            flex-start;

        flex-direction:
            column;

        margin-bottom: 45px;
    }

    .weekly-intro {

        width: 100%;

        max-width: 500px;
    }

    .weekly-grid {

        grid-template-columns:
            repeat(2, 1fr);

        gap: 18px;
    }

    .weekly-line {

        display: none;
    }

    .weekly-card {

        min-height: 260px;
    }
}


@media (max-width: 600px) {

    .weekly-focus-section {

        padding:
            65px 0;
    }

    .weekly-focus-container {

        width:
            calc(100% - 25px);
    }

    .weekly-heading h2 {

        font-size: 43px;

        letter-spacing:
            -1.5px;
    }

    .weekly-grid {

        grid-template-columns:
            1fr;

        gap: 15px;
    }

    .weekly-card {

        min-height: auto;

        padding:
            45px 25px 30px;
    }

    .weekly-card h3 {

        min-height: auto;

        font-size: 21px;
    }

    .weekly-card p {

        font-size: 12px;
    }

    .weekly-intro {

        font-size: 13px;
    }
}









/* =========================================================
   OMLAM - WELLNESS BENEFITS
   WHITE + LIGHT GREEN + YELLOW
========================================================= */

.wellness-benefits {
   position: relative;
    overflow: hidden;
    padding: 0;
    background: #ffffff;
}


/* =========================================================
   MAIN WRAPPER
========================================================= */

.wellness-wrap {
 margin: auto;
    display: grid;
    grid-template-columns: 40% 60%;
    align-items: center;
    position: relative;
    z-index: 2;
    padding-bottom: 25px;
}


/* =========================================================
   LEFT IMAGE AREA
========================================================= */

.wellness-image-area {
  
}


/* =========================================================
   IMAGE FRAME
========================================================= */

.wellness-image-frame {
   
}


.wellness-image-frame::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(255,255,255,.02),
            rgba(45,83,47,.12)
        );

    pointer-events: none;
}


.wellness-image-frame img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform .8s ease;
}


.wellness-image-area:hover
.wellness-image-frame img {
    transform:
        scale(1.035);
}


/* =========================================================
   GREEN ORGANIC SHAPE
========================================================= */

.wellness-green-shape {
    position: absolute;

    width: 470px;
    height: 500px;

    left: 15px;
    top: 55px;

    border-radius:
        48% 52% 35% 65% /
        45% 38% 62% 55%;

    background:
        #e5f1df;

    transform:
        rotate(-8deg);

    z-index: 1;
}


/* =========================================================
   YELLOW ORGANIC SHAPE
========================================================= */

.wellness-yellow-shape {
    position: absolute;

    width: 390px;
    height: 120px;

    left: 50px;
    bottom: 5px;

    border-radius:
        50%;

    background:
        #f9df7b;

    opacity: .75;

    transform:
        rotate(-7deg);

    z-index: 2;

    filter:
        blur(.3px);
}


/* =========================================================
   360 BADGE
========================================================= */

.wellness-360 {
    position: absolute;

    width: 150px;
    height: 150px;

    top: 40px;
    right: 10px;

    border-radius: 50%;

    background:
        rgba(255,255,255,.95);

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    text-align: center;

    box-shadow:
        0 15px 40px
        rgba(39,67,45,.12);

    z-index: 8;
}


.wellness-360 strong {
    display: block;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size: 43px;

    line-height: 1;

    font-weight: 500;

    color: #477b4d;
}


.wellness-360 sup {
    font-size: 16px;
}


.wellness-360 span {
    margin-top: 8px;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 9px;

    line-height: 1.5;

    letter-spacing: 1.5px;

    color: #52625a;
}


/* =========================================================
   IMAGE LABEL
========================================================= */

.wellness-image-label {
    position: absolute;

    left: 35px;
    bottom: 5px;

    padding:
        14px 23px;

    border-radius: 40px;

    background:
        #244c39;

    color: #ffffff;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;

    box-shadow:
        0 10px 25px
        rgba(25,58,41,.18);

    z-index: 10;
}


/* =========================================================
   DECORATIVE LEAVES
========================================================= */

.wellness-leaf {
    position: absolute;

    width: 70px;
    height: 125px;

    border-radius:
        100% 0 100% 0;

    background:
        linear-gradient(
            145deg,
            #9bc982,
            #dbeacc
        );

    opacity: .8;

    z-index: 7;
}


.leaf-left {
    left: -8px;
    top: 90px;

    transform:
        rotate(-25deg);
}


.leaf-bottom {
    right: 5px;
    bottom: 20px;

    transform:
        rotate(65deg);
}


/* =========================================================
   RIGHT CONTENT
========================================================= */

.wellness-content {
    padding:
        20px 20px 20px 55px;
}


/* =========================================================
   LABEL
========================================================= */

.wellness-label {


    color: #c68c28;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 3px;


    display: inline-flex;

    align-items: center;

    gap: 15px;

    padding:
        9px 20px;

    border-radius: 30px;

    background:
        #f3f5ee;

  
    margin-bottom: 17px;
}


.wellness-label span {
    display: block;

    width: 22px;

    height: 1px;

    background:
        #dfb43d;
}


/* =========================================================
   HEADING
========================================================= */

.wellness-content h2 {
 margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #000;
}


.wellness-content h2 em {
    color:
        #e5b23c;

    font-style:
        italic;
}


/* =========================================================
   INTRO
========================================================= */

.wellness-intro {
  margin: 0 0 30px;
    font-size: 16px;
    line-height: 1.7;
    color: #000;
}


/* =========================================================
   BENEFITS GRID
========================================================= */

.benefits-grid {
    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    column-gap: 14px;

    row-gap: 0;

    max-width: 700px;
}


/* =========================================================
   BENEFIT ITEM
========================================================= */

.benefit-item {
 display: flex;
    align-items: center;
    gap: 10px;
    border-bottom: 1px solid #dce4d9;
    font-size: 16px;
    color: #000;
    transition: padding .3s ease, background .3s ease;
    font-weight: 400;
    padding: 7px 0 7px 0;
}


.benefit-item:hover {
    padding-left: 7px;

    background:
        rgba(225,239,216,.28);
}


/* =========================================================
   DOT
========================================================= */

.benefit-dot {
    position: relative;

    width: 25px;
    height: 25px;

    min-width: 25px;

    border-radius: 50%;

    background:
        #dcefd2;

    border:
        1px solid
        #bddaa9;
}


.benefit-dot::after {
    content: "";

    position: absolute;

    width: 7px;
    height: 7px;

    left: 50%;
    top: 50%;

    transform:
        translate(-50%, -50%);

    border-radius: 50%;

    background:
        #7eb465;
}


/* yellow dots */

.benefit-item.yellow
.benefit-dot {
    background:
        #fff4c9;

    border-color:
        #f0d477;
}


.benefit-item.yellow
.benefit-dot::after {
    background:
        #e8b52e;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1100px) {

    .wellness-wrap {
        width:
            calc(100% - 40px);

        grid-template-columns:
            45% 55%;
    }

    .wellness-image-frame {
        width: 92%;
        height: 520px;
    }

    .wellness-content {
        padding-left: 35px;
    }

    .wellness-content h2 {
        font-size: 48px;
    }

    .wellness-360 {
        width: 125px;
        height: 125px;

        right: 0;
    }

    .wellness-360 strong {
        font-size: 36px;
    }
}


@media (max-width: 850px) {

    .wellness-benefits {
        padding:
            70px 0;
    }

    .wellness-wrap {
        grid-template-columns:
            1fr;

        gap: 50px;
    }

    .wellness-image-area {
        height: 520px;
    }

    .wellness-image-frame {
        width: 75%;
        height: 500px;
    }

    .wellness-content {
        padding:
            0 10px;

        text-align: center;
    }

    .wellness-label {
        margin-left: auto;
        margin-right: auto;
    }

    .wellness-intro {
        margin-left: auto;
        margin-right: auto;
    }

    .benefits-grid {
        margin:
            0 auto;

        text-align: left;
    }
}


@media (max-width: 600px) {

    .wellness-benefits {
        padding:
            55px 0;
    }

    .wellness-wrap {
        width:
            calc(100% - 25px);
    }

    .wellness-image-area {
        height: 430px;
    }

    .wellness-image-frame {
        width: 88%;
        height: 410px;

        border-radius:
            40% 40% 18% 18%;
    }

    .wellness-green-shape {
        width: 340px;
        height: 370px;
    }

    .wellness-yellow-shape {
        width: 290px;
        height: 80px;
    }

    .wellness-360 {
        width: 105px;
        height: 105px;

        top: 15px;
        right: -2px;
    }

    .wellness-360 strong {
        font-size: 30px;
    }

    .wellness-360 span {
        font-size: 7px;
    }

    .wellness-image-label {
        left: 15px;
        bottom: 0;

        padding:
            11px 15px;

        font-size: 7px;
    }

    .wellness-content h2 {
        font-size: 40px;

        letter-spacing:
            -1px;
    }

    .wellness-intro {
        font-size: 13px;
    }

    .benefits-grid {
        grid-template-columns:
            1fr;
    }

    .benefit-item {
        min-height: 48px;
    }

    .wellness-leaf {
        display: none;
    }
}








/* =========================================================
   OMLAM - COACH SECTION
   CLEAN / PREMIUM / MINIMAL
========================================================= */

.coach-section {
 position: relative;
    overflow: hidden;
    padding: 40px 0;
    background: linear-gradient(135deg, #ffffff 0%, #fbfcf8 55%, #f2f7ed 100%);
}


/* soft background shape */

.coach-section::before {
    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    left: -230px;
    top: 80px;

    border-radius: 50%;

    background:
        #edf4e8;

    opacity: .55;

    pointer-events: none;
}


/* =========================================================
   CONTAINER
========================================================= */

.coach-container {
  width: min(1400px, calc(100% - 70px));
    margin: auto;
    display: grid;
    grid-template-columns: 30% 70%;
    gap: 30px;
    position: relative;
    z-index: 2;
}


/* =========================================================
   LEFT PHOTO
========================================================= */

.coach-photo-area {
    position: relative;

    min-height: 560px;

    display: flex;

    align-items: center;

    justify-content: center;
}


/* background organic shape */

.coach-photo-bg {
    position: absolute;

    width: 300px;
    height: 500px;

    left: 50%;

    top: 50%;

    transform:
        translate(-50%, -50%);

    border-radius:
        48% 48% 28% 28%;

    background:
        #e6f0df;

    z-index: 1;
}


/* photo */

.coach-photo-frame {
    position: relative;

    width: 330px;
    height: 510px;

    overflow: hidden;

    border-radius:
        25px 25px 65px 65px;

    z-index: 3;

    box-shadow:
        0 25px 55px
        rgba(42,70,49,.13);
}


.coach-photo-frame::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            transparent 65%,
            rgba(22,53,39,.12)
        );

    pointer-events: none;
}


.coach-photo-frame img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform .7s ease;
}


.coach-photo-area:hover
.coach-photo-frame img {
    transform:
        scale(1.035);
}


/* =========================================================
   EXPERIENCE BADGE
========================================================= */

.experience-badge {
    position: absolute;

    right: -8px;

    bottom: 25px;

    width: 120px;
    height: 120px;

    border-radius: 50%;

    background:
        linear-gradient(
            145deg,
            #ffd76b,
            #f0b83b
        );

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    text-align: center;

    color: #17362c;

    box-shadow:
        0 15px 35px
        rgba(211,160,43,.22);

    z-index: 7;
}


.experience-badge strong {
  

    font-size: 38px;

    font-weight: 500;

    line-height: 1;
}


.experience-badge span {
  margin-top: 7px;
    font-size: 11px;
    line-height: 1.45;
    font-weight: 500;
    letter-spacing: 1px;
    color: #000;
}


/* =========================================================
   CENTER CONTENT
========================================================= */

.coach-content {
    padding:
        10px 0;
}


/* label */

.coach-label {
   color: #c68c28;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 3px;
    display: inline-flex;
    align-items: center;
    gap: 15px;
    padding: 9px 20px;
    border-radius: 30px;
    background: #f3f5ee;
    margin-bottom: 17px;
}


/* heading */

.coach-content h2 {
  margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #000;
}


.coach-content h2 em {
    color:
        #e6b43f;

    font-style:
        italic;
}


/* role */

.coach-role {
  font-size: 17px;
    color: #000;
    margin-bottom: 10px;
}


/* small line */

.coach-line {
    width: 42px;

    height: 2px;

    background:
        #e4b53f;

    margin-bottom: 22px;
}


/* paragraph */

.coach-content p {
 margin: 0 0 5px;
    font-size: 15px;
    line-height: 1.7;
    color: #000;
}


/* =========================================================
   KNOW MORE BUTTON
========================================================= */

.coach-btn {
    display: inline-flex;

    align-items: center;

    gap: 25px;

    margin-top: 7px;

    padding:
        12px 20px;

    border:
        1px solid
        #658b70;

    border-radius: 40px;

    color:
        #17372e;

    text-decoration: none;

    font-family:
        "DM Sans",
        sans-serif;

    font-size: 12px;

    font-weight: 700;

    transition:
        .35s ease;
}


.coach-btn span {
    font-size: 18px;

    transition:
        transform .3s ease;
}


.coach-btn:hover {
    color: #17372e;

    background:
        #eef5e9;

    transform:
        translateY(-3px);
}


.coach-btn:hover span {
    transform:
        translateX(5px);
}


/* =========================================================
   EXPERTISE PANEL
========================================================= */
.expertise-list{
	grid-template-columns: repeat(3, 1fr);
    display: grid;
}
.coach-expertise {
  
 
}


/* heading */

.expertise-heading {
  display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 5px;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 2px;
    color: #000;
    margin-top: 25px;
}




/* =========================================================
   EXPERTISE ITEM
========================================================= */

.expertise-item {
display: flex;
    align-items: center;
    gap: 5px;
    color: #000;
    font-size: 16px;
    transition: padding .3s ease, background .3s ease;
    padding: 7px 0 7px 0;
}


.expertise-item:hover {
    padding-left: 6px;

    background:
        rgba(255,255,255,.55);
}


/* icon */

.expertise-icon {
  width: 28px;
    height: 28px;
    min-width: 28px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #edf5e7;
    color: #000;
    font-size: 15px;
    border: 1px solid #d3e4ca;
}


/* alternate yellow */

.expertise-item:nth-child(2n)
.expertise-icon {
    background:
        #fff4cf;

    color:
        #000;

    border-color:
        #f0db9d;
}


/* =========================================================
   QUOTE
========================================================= */

.coach-quote {
  position: relative;
    margin-top: 10px;
    display: flex;
    align-items: center;
    padding: 20px 25px;
    border-left: 3px solid #e8b63d;
    border-radius: 0 12px 12px 0;
    background: #eef4e9;
    overflow: hidden;
    margin-bottom: 15px;
}


.quote-mark {
    position: absolute;

    left: 12px;
    top: 5px;

    font-family:
        Georgia,
        serif;

    font-size: 45px;

    color:
        rgba(229,180,61,.25);
}


.coach-quote p {
   position: relative;
    z-index: 2;
    margin: 0;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 19px;
    font-style: italic;
    color: #000;
}


.quote-leaf {
    position: absolute;

    right: 20px;

    bottom: -10px;

    font-size: 65px;

    color:
        rgba(121,164,103,.12);

    transform:
        rotate(-25deg);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1150px) {

    .coach-container {
        width:
            calc(100% - 40px);

        grid-template-columns:
            29% 39% 32%;

        gap: 25px;
    }

    .coach-photo-frame {
        width: 290px;
        height: 480px;
    }

    .coach-photo-bg {
        width: 270px;
        height: 470px;
    }

    .experience-badge {
        width: 105px;
        height: 105px;
    }

    .coach-content h2 {
        font-size: 48px;
    }

    .coach-expertise {
        padding: 25px 20px;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

    .coach-section {
        padding:
            70px 0;
    }

    .coach-container {
        grid-template-columns:
            1fr 1fr;

        gap: 40px;
    }

    .coach-photo-area {
        grid-row:
            span 2;
    }

    .coach-content {
        padding: 0;
    }

    .coach-expertise {
        padding:
            25px;
    }

    .coach-content h2 {
        font-size: 45px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 650px) {

    .coach-section {
        padding:
            60px 0;
    }

    .coach-container {
        width:
            calc(100% - 25px);

        grid-template-columns:
            1fr;

        gap: 45px;
    }

    .coach-photo-area {
        min-height:
            500px;
    }

    .coach-photo-frame {
        width:
            82%;

        height:
            470px;
    }

    .coach-photo-bg {
        width:
            75%;

        height:
            450px;
    }

    .experience-badge {
        right:
            5%;

        bottom:
            15px;
    }

    .coach-content {
        text-align:
            center;
    }

    .coach-label {
        font-size: 10px;
    }

    .coach-content h2 {
        font-size: 43px;
    }

    .coach-line {
        margin:
            0 auto 20px;
    }

    .coach-content p {
        font-size: 13px;
    }

    .coach-expertise {
        text-align:
            left;
    }

   

}








/* =========================================================
   OMLAM - HOW IT WORKS
   DARK MINIMAL VERSION
========================================================= */

.how-it-works {
  position: relative;
    overflow: hidden;
    padding: 50px 0 50px;
    background: linear-gradient(135deg, #0d251e 0%, #102d24 55%, #0b211b 100%);
    color: #ffffff;
}


/* subtle background glow */

.how-it-works::before {
    content: "";

    position: absolute;

    width: 500px;
    height: 500px;

    left: -280px;
    top: -180px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(113, 153, 92, .14),
            transparent 70%
        );

    pointer-events: none;
}


.how-it-works::after {
    content: "";

    position: absolute;

    width: 450px;
    height: 450px;

    right: -250px;
    bottom: -250px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(226, 178, 61, .10),
            transparent 70%
        );

    pointer-events: none;
}


/* =========================================================
   CONTAINER
========================================================= */

.how-container {

    width:
        min(1350px, calc(100% - 70px));

    margin: auto;

    position: relative;

    z-index: 2;
}


/* =========================================================
   HEADER
========================================================= */

.how-header {

    text-align: center;

    margin-bottom: 75px;
}


/* label */

.how-label {
color: #c68c28;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 3px;
    display: inline-flex;
    align-items: center;
    gap: 15px;
    padding: 9px 20px;
    border-radius: 30px;
  
    margin-bottom: 1px;
}


/* heading */

.how-header h2 {

   margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #fff;
}


.how-header h2 em {

    color:
        #e9b844;

    font-style:
        italic;
}


.how-header p {
margin: 15px auto 0;
    font-size: 18px;
    line-height: 1.6;
    color: #fff;
    font-weight: 300;
}


/* =========================================================
   STEPS
========================================================= */

.how-steps {

    display: grid;

    grid-template-columns:
        repeat(5, 1fr);

    position: relative;
}


/* connecting line */

.how-steps::before {

    content: "";

    position: absolute;

    left: 9%;

    right: 9%;

    top: 62px;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            rgba(231,183,65,.15),
            rgba(231,183,65,.75),
            rgba(231,183,65,.15)
        );

    z-index: 0;
}


/* =========================================================
   STEP
========================================================= */

.how-step {

    position: relative;

    text-align: center;

    padding:
        0 20px;

    z-index: 2;
}


/* =========================================================
   ICON
========================================================= */

.step-icon {

  position: relative;
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e7eee1;
    color: #12352a;
    border: 1px solid rgba(255, 255, 255, .15);
    box-shadow: 0 0 0 10px rgba(223, 235, 216, .04), 0 15px 35px rgba(0, 0, 0, .18);
    font-size: 30px;
    transition: transform .4s ease, box-shadow .4s ease;
}


.step-icon i {

    position: relative;

    z-index: 2;
}


.yellow-icon {

    background:
        #f1c354;

    color:
        #17352a;

    box-shadow:
        0 0 0 10px
        rgba(240,193,79,.05),

        0 15px 35px
        rgba(0,0,0,.18);
}


.how-step:hover .step-icon {

    transform:
        translateY(-7px);

    box-shadow:
        0 0 0 12px
        rgba(227,181,67,.06),

        0 20px 40px
        rgba(0,0,0,.25);
}


/* =========================================================
   NUMBER
========================================================= */

.step-number {

    margin:
        0 auto 17px;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size: 26px;

    font-weight: 500;

    line-height: 1;

    color:
        #e6b642;
}


/* =========================================================
   TITLE
========================================================= */

.how-step h3 {

  margin: 0 0 11px;
    font-size: 20px;
    font-weight: 400;
    line-height: 1.35;
    color: #f5f5ef;
}




/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1050px) {

    .how-container {

        width:
            calc(100% - 40px);
    }

    .how-steps {

        grid-template-columns:
            repeat(5, 1fr);
    }

    .how-step {

        padding:
            0 10px;
    }

    .step-icon {

        width: 85px;
        height: 85px;

        font-size: 25px;
    }

    .how-step h3 {

        font-size: 14px;
    }

    .how-step p {

        font-size: 11px;
    }

    .how-steps::before {

        top: 52px;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 800px) {

    .how-it-works {

        padding:
            75px 0;
    }

    .how-header {

        margin-bottom:
            55px;
    }

    .how-steps {

        grid-template-columns:
            repeat(2, 1fr);

        gap:
            50px 25px;
    }

    .how-steps::before {

        display: none;
    }

    .how-step {

        padding:
            0 15px;
    }

    .step-icon {

        width: 90px;
        height: 90px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 520px) {

    .how-it-works {

        padding:
            65px 0;
    }

    .how-container {

        width:
            calc(100% - 30px);
    }

    .how-header {

        margin-bottom:
            45px;
    }

    .how-label {

        font-size: 9px;

        letter-spacing:
            3px;
    }

    .how-header h2 {

        font-size:
            42px;

        letter-spacing:
            -1px;
    }

    .how-header p {

        font-size:
            13px;
    }

    .how-steps {

        grid-template-columns:
            1fr;

        gap:
            42px;
    }

    .how-step {

        padding:
            0 20px;
    }

    .step-icon {

        width: 82px;
        height: 82px;

        font-size: 24px;
    }

    .step-number {

        font-size:
            23px;
    }

    .how-step h3 {

        font-size:
            17px;
    }

    .how-step p {

        font-size:
            12px;
    }
}




/* =========================================================
   OMLAM - ABOUT SECTION
========================================================= */

.about-omlam {

position: relative;
    overflow: hidden;
    padding: 50px 0 50px;
    background: linear-gradient(135deg, #fffefa 0%, #fdfcf7 55%, #f5f8f0 100%);
}


/* =========================================================
   DECORATIVE BACKGROUND
========================================================= */

.about-omlam::before {

    content: "";

    position: absolute;

    width: 360px;
    height: 360px;

    left: -210px;
    top: -150px;

    border-radius: 50%;

    border:
        1px solid
        rgba(221, 174, 57, .25);
}


.about-omlam::after {

    content: "";

    position: absolute;

    width: 500px;
    height: 500px;

    right: -350px;
    bottom: -320px;

    border-radius: 50%;

    border:
        1px solid
        rgba(221, 174, 57, .22);
}


/* =========================================================
   INNER
========================================================= */

.about-inner {

    width:
        min(1120px, calc(100% - 50px));

    margin: auto;

    position: relative;

    z-index: 2;
}


/* =========================================================
   LABEL
========================================================= */

.about-label {

    color: #c68c28;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 3px;
    display: inline-flex;
    align-items: center;
    gap: 15px;
    padding: 9px 20px;
    border-radius: 30px;
    background: #f3f5ee;
    margin-bottom: 17px;
}


/* =========================================================
   MAIN HEADING
========================================================= */

.about-title {

 margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #000;
}


.about-title em {

    color:
        #e8ad32;

    font-style:
        italic;

    font-weight: 500;
}


/* =========================================================
   GOLD LINE
========================================================= */

.about-line {

    width: 55px;

    height: 4px;

    margin:
        25px 0 22px;

    border-radius: 5px;

    background:
        #eab33d;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.about-description {

   margin: 0;
    font-size: 16px;
    line-height: 1.6;
    color: #000;
}


/* =========================================================
   STATS
========================================================= */

.about-stats {

 display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-top: 15px;
}


/* =========================================================
   STAT CARD
========================================================= */

.about-stat {

   display: flex;
    align-items: center;
    gap: 18px;
    padding: 20px;
    border: 1px solid #e6e9df;
    border-radius: 4px;
    background: rgba(255, 255, 255, .58);
    box-shadow: 0 12px 30px rgba(33, 55, 43, .035);
    transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
    margin-bottom: 20px;
}


.about-stat:hover {

    transform:
        translateY(-5px);

    border-color:
        #d6dfce;

    box-shadow:
        0 18px 35px
        rgba(33,55,43,.08);
}


/* =========================================================
   ICON
========================================================= */

.stat-icon {

    width:
        64px;

    height:
        64px;

    min-width:
        64px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    border-radius:
        50%;

    background:
        #173b2e;

    color:
        #ffffff;

    font-size:
        23px;
}


.stat-icon.yellow {

    background:
        #f5c34f;

    color:
        #173b2e;
}


/* =========================================================
   STAT CONTENT
========================================================= */

.stat-content {

    display:
        flex;

    flex-direction:
        column;

    gap:
        5px;
}


.stat-content strong {
font-size: 25px;
    font-weight: 500;
    line-height: 1;
    color: #000;
}


.stat-content span {

 font-size: 15px;
    line-height: 1.45;
    color: #000;
}


/* =========================================================
   BUTTON
========================================================= */

.about-btn {

    display:
        inline-flex;

    align-items:
        center;

    justify-content:
        center;

    gap:
        28px;

    min-width:
        220px;

    margin-top:
        30px;

    padding:
        15px 22px;

    border-radius:
        40px;

    background:
        #173b2e;

    color:
        #f4c44f;

    border-bottom:
        3px solid
        #e4ad32;

    text-decoration:
        none;

    font-family:
        "DM Sans",
        sans-serif;

    font-size:
        13px;

    font-weight:
        700;

    transition:
        transform .3s ease,
        background .3s ease,
        gap .3s ease;
}


.about-btn i {

    font-size:
        14px;

    transition:
        transform .3s ease;
}


.about-btn:hover {

    color:
        #ffffff;

    background:
        #214d3d;

    transform:
        translateY(-3px);

    gap:
        34px;
}


.about-btn:hover i {

    transform:
        translateX(4px);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 900px) {

    .about-omlam {

        padding:
            80px 0;
    }

    .about-title {

        font-size:
            clamp(44px, 7vw, 65px);
    }

    .about-description {

        font-size:
            15px;
    }

    .about-stats {

        max-width:
            100%;
    }

    .about-stat {

        padding:
            16px;

        gap:
            12px;
    }

    .stat-icon {

        width:
            55px;

        height:
            55px;

        min-width:
            55px;

        font-size:
            20px;
    }

    .stat-content strong {

        font-size:
            25px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 650px) {

    .about-omlam {

        padding:
            65px 0 70px;
    }

    .about-inner {

        width:
            calc(100% - 30px);
    }

    .about-label {

        font-size:
            9px;

        letter-spacing:
            2.5px;
    }

    .about-title {

        font-size:
            43px;

        line-height:
            1;

        letter-spacing:
            -1.5px;
    }

    .about-description {

        font-size:
            14px;

        line-height:
            1.65;
    }

    .about-stats {

        grid-template-columns:
            1fr;

        gap:
            12px;

        margin-top:
            30px;
    }

    .about-stat {

        min-height:
            95px;
    }

    .about-btn {

        width:
            210px;

        margin-top:
            25px;
    }
}










/* ================================
   NAV SOCIAL
================================ */

.nav-social {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-left: 8px;
}


.nav-social a {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 50%;
    color: #000;
    text-decoration: none;
    font-size: 17px;
    transition: background .3s ease, color .3s ease, border-color .3s ease, transform .3s ease;
    background: #f9bf56;
}


.nav-social a:hover {
    background: #e8b43b;
    border-color: #e8b43b;
    color: #17372d;

    transform: translateY(-2px);
}


/* =========================================================
   OMLAM FOOTER
   WHITE / PREMIUM / 3 COLUMN
========================================================= */

.omlam-footer {

 position: relative;
    overflow: hidden;
    background-image: url(../img/bg1.jpg);
    color: #17372d;
    border-top: 1px solid #e8ece4;
    background-size: cover;
    background-position: center;
}


/* =========================================================
   CONTAINER
========================================================= */

.footer-container {
width: min(1250px, calc(100% - 60px));
    margin: auto;
    padding: 50px 0 30px;
    display: grid;
    grid-template-columns: 2fr 1fr 2fr;
    gap: 30px;
    position: relative;
    z-index: 2;
}


/* =========================================================
   COLUMN DIVIDERS
========================================================= */

.footer-menu,
.footer-contact {

    padding-left: 25px;

    border-left:
        1px solid #e1e7de;
}


/* =========================================================
   LOGO
========================================================= */

.footer-logo {

    display: inline-block;

    margin-bottom: 22px;
}


.footer-logo img {
width: 100px;
    height: auto;
    display: block;
    margin-bottom: 10px;
}


/* =========================================================
   ABOUT
========================================================= */

.footer-about {

 margin: 0;
    font-size: 15px;
    line-height: 1.7;
    color: #000;
}


/* =========================================================
   SOCIAL
========================================================= */

.footer-social {
display: flex;
    align-items: center;
    gap: 15px;
    margin-top: 15px;
}


.footer-social a {

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 50%;

    background: #173b2e;

    color: #ffffff;

    text-decoration: none;

    font-size: 17px;

    transition:
        transform .3s ease,
        background .3s ease,
        color .3s ease;
}


.footer-social a:hover {

    transform:
        translateY(-5px);

    background:
        #e9b63d;

    color:
        #173b2e;
}


/* youtube */

.footer-social a.youtube {

    background:
        #e9b63d;

    color:
        #173b2e;
}


.footer-social a.youtube:hover {

    background:
        #173b2e;

    color:
        #ffffff;
}


/* =========================================================
   COLUMN TITLES
========================================================= */

.footer-col h3 {

  margin: 0 0 14px;
    font-size: 22px;
    font-weight: 400;
    line-height: 1;
    color: #000;
}


/* gold line */

.footer-title-line {

    width:
        48px;

    height:
        3px;

    border-radius:
        10px;

    background:
        #eab63b;

    margin-bottom:
        24px;
}


/* =========================================================
   QUICK LINKS
========================================================= */

.footer-menu ul {

    margin:
        0;

    padding:
        0;

    list-style:
        none;
}


.footer-menu li {

    margin-bottom:
        5px;
}


.footer-menu a {

   display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #000;
    text-decoration: none;
    font-size: 15px;
    transition: color .3s ease, padding .3s ease;
}


.footer-menu a i {

    color:
        #e4ae35;

    font-size:
        10px;

    transition:
        transform .3s ease;
}


.footer-menu a:hover {

    color:
        #173b2e;

    padding-left:
        5px;
}


.footer-menu a:hover i {

    transform:
        translateX(3px);
}


/* =========================================================
   CONTACT
========================================================= */

.contact-item {

display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 10px;
}


.contact-icon {

   width: 35px;
    height: 35px;
    min-width: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #edf4e8;
    color: #000;
    font-size: 15px;
}


.contact-icon.yellow {

    background:
        #fff2ca;

    color:
        #dba52d;
}


/* =========================================================
   CONTACT CONTENT
========================================================= */

.contact-content {

    display:
        flex;

    flex-direction:
        column;

    gap:
        5px;

   
}


.contact-content a {
color: #000;
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
    transition: color .3s ease;
}


.contact-content a:hover {

    color:
        #d9a42c;
}


.contact-content span {

  

    font-size:
        11px;

    line-height:
        1.5;

    color:
        #7a847f;
}


.contact-content .location {
color: #000;
    font-size: 15px;
    line-height: 1.65;
}


/* =========================================================
   FOOTER BOTTOM
========================================================= */

.footer-bottom {

    border-top:
        1px solid #e3e8df;

    position:
        relative;

    z-index:
        2;
}


.footer-bottom-inner {
width: min(1250px, calc(100% - 60px));
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 10px 0 10px 0;
}


.footer-bottom p {

 margin: 0;
    font-size: 15px;
    color: #000;
}


/* =========================================================
   BOTTOM LINKS
========================================================= */

.footer-bottom-links {

    display:
        flex;

    align-items:
        center;

    gap:
        18px;
}


.footer-bottom-links a {

color: #0e2921;
    text-decoration: none;
    font-size: 15px;
    transition: color .3s ease;
}


.footer-bottom-links a:hover {

    color:
        #dca62e;
}


.footer-bottom-links span {

    width:
        1px;

    height:
        17px;

    background:
        #cfd6cf;
}


/* =========================================================
   SUBTLE DECORATION
========================================================= */

.omlam-footer::before {

    content:
        "";

    position:
        absolute;

    width:
        220px;

    height:
        220px;

    left:
        -150px;

    bottom:
        -140px;

    border-radius:
        50%;

    border:
        1px solid
        rgba(224,174,53,.35);

    pointer-events:
        none;
}


.omlam-footer::after {

    content:
        "";

    position:
        absolute;

    width:
        260px;

    height:
        260px;

    right:
        -190px;

    bottom:
        -170px;

    border-radius:
        50%;

    background:
        #f3f7ef;

    opacity:
        .65;

    pointer-events:
        none;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 950px) {

    .footer-container {

        grid-template-columns:
            1fr 1fr;

        gap:
            45px;
    }


    .footer-brand {

        grid-column:
            1 / -1;

        padding-bottom:
            25px;

        border-bottom:
            1px solid #e1e7de;
    }


    .footer-menu,
    .footer-contact {

        padding-left:
            0;

        border-left:
            none;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .footer-container {

        width:
            calc(100% - 35px);

        padding:
            55px 0 45px;

        grid-template-columns:
            1fr;

        gap:
            42px;
    }


    .footer-brand {

        grid-column:
            auto;

        padding-bottom:
            0;

        border-bottom:
            none;
    }


    .footer-menu,
    .footer-contact {

        padding-left:
            0;

        border-left:
            none;
    }


    .footer-logo img {

        width:
            180px;
    }


    .footer-about {

        font-size:
            12px;
    }


    .footer-col h3 {

        font-size:
            27px;
    }


    .footer-bottom-inner {

        width:
            calc(100% - 35px);

        padding:
            22px 0;

        flex-direction:
            column;

        text-align:
            center;
    }


    .footer-bottom-links {

        flex-wrap:
            wrap;

        justify-content:
            center;

        gap:
            12px;
    }

}







/* =========================================================
   OMLAM ABOUT PAGE
   PREMIUM / CLEAN / RESPONSIVE
========================================================= */

.about-page {
    overflow: hidden;

    background:
        #fffdf8;

    color:
        #17372d;
}


.about-page-container {
    width:
        min(1250px, calc(100% - 60px));

    margin:
        0 auto;
}


/* =========================================================
   01. INNER HERO
========================================================= */

.about-inner-hero {

    position:
        relative;

    min-height:
        570px;

    display:
        flex;

    align-items:
        center;

    overflow:
        hidden;


}

.about-inner-hero {
   background-image: linear-gradient(179deg, rgb(8 24 20), rgba(18, 55, 45, 0.45), rgba(18, 55, 45, 0.15)), url(../img/about-hero.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.about-hero-content {
    max-width:
        850px;

    position:
        relative;

    z-index:
        3;
}





.about-eyebrow span {

    width:
        35px;

    height:
        2px;

    background:
        #dca72d;
}


.about-hero-content h1 {

   margin: 0;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 65px;
    font-weight: 500;
    line-height: .95;
    letter-spacing: -3px;
    color: #fff;
}


.about-hero-content h1 em {

    color:
        #e4ad36;

    font-style:
        italic;
}


.about-hero-text {

   margin: 25px 0 12px;
    font-size: 20px;
    font-weight: 400;
    color: #fff;
}


.about-hero-description {

  margin: 0 0 30px;
    font-size: 16px;
    line-height: 1.75;
    color: #fff;
    font-weight: 300;
}


.about-hero-btn {

display: inline-flex;
    align-items: center;
    gap: 20px;
    padding: 14px 22px;
    border-radius: 40px;
    background: #f9bf56;
    color: #000;
    text-decoration: none;
    font-size: 15px;
    font-weight: 500;
    transition: .3s ease;
}


.about-hero-btn:hover {

    background:
        #e5b33d;

    color:
        #17372d;

    transform:
        translateY(-3px);
}


/* hero circles */

.about-hero-decoration {

    position:
        absolute;

    border-radius:
        50%;

    pointer-events:
        none;
}


.hero-circle-1 {

    width:
        520px;

    height:
        520px;

    right:
        -180px;

    top:
        -190px;

    border:
        1px solid
        rgba(220,167,45,.25);
}





/* =========================================================
   SECTION INTRO
========================================================= */

.section-intro {

    margin-bottom:
        35px;
}


.section-kicker {

  margin-bottom: 15px;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 3px;
    color: #d5a12c;
}


.section-intro h2 {

}


.section-intro h2 em {

    color:
        #e3ad38;

    font-style:
        italic;
}


.section-intro p {

  margin: 0;
    font-size: 16px;
    line-height: 1.7;
    color: #000;
}


.center-intro {

    text-align:
        center;
}


.center-intro p {

    margin:
        auto;
}


/* =========================================================
   02. VISION MISSION
========================================================= */

.vision-mission-section {

padding: 50px 0;
    background: #ffffff;
}


.vision-mission-grid {

    display:
        grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap:
        25px;
}


.vision-card {

   position: relative;
    padding: 20px;
    overflow: hidden;
    border: 1px solid #dce5d8;
    border-radius: 5px;
    background: #f5f9f1;
    transition: transform .35s ease, box-shadow .35s ease;
}


.vision-card:hover {

    transform:
        translateY(-7px);

    box-shadow:
        0 20px 45px
        rgba(35,68,48,.08);
}


.mission-card {

    background:
        #fffaf0;

    border-color:
        #f0dfae;
}


.vision-icon {

    width:
        58px;

    height:
        58px;

    display:
        grid;

    place-items:
        center;

    margin-bottom:
        20px;

    border-radius:
        50%;

    background:
        #dcebd5;

    color:
        #3e7148;

    font-size:
        21px;
}


.mission-card .vision-icon {

    background:
        #ffedbd;

    color:
        #d49d22;
}


.vision-card-number {

    position:
        absolute;

    top:
        28px;

    right:
        35px;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size:
        45px;

    color:
        rgba(39,80,53,.08);
}


.vision-card h3 {

margin: 0 0 12px;
    font-family: 'Playfair Display';
    font-size: 30px;
    font-weight: 500;
    color: #000;
}


.card-line {

    width:
        40px;

    height:
        2px;

    margin-bottom:
        18px;

    background:
        #e3b23d;
}


.vision-card p {

   margin: 0;
    font-size: 16px;
    line-height: 1.75;
    color: #000;
}


/* =========================================================
   03. PHILOSOPHY
========================================================= */

.philosophy-section {

  position: relative;
    overflow: hidden;
    padding: 50px 0;
    background: #12372d;
    color: #ffffff;
}


.philosophy-bg-shape {

    position:
        absolute;

    width:
        500px;

    height:
        500px;

    right:
        -250px;

    top:
        -250px;

    border-radius:
        50%;

    border:
        1px solid
        rgba(231,180,61,.25);
}


.philosophy-content {

    position:
        relative;

    z-index:
        2;
}


.light-kicker {

    color:
        #e7b53d;
}


.philosophy-content h2 {

    margin: 0 0 20px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -2px;
    color: #ffffff;
}


.philosophy-content h2 em {

    color:
        #e6b43c;

    font-style:
        italic;
}


.philosophy-content > p {

    margin: 0 0 25px;
    font-size: 16px;
    line-height: 1.75;
    color: #fff;
    font-weight: 300;
}


/* philosophy grid */

.philosophy-grid {

 display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 5px;
}


.philosophy-item {

   padding: 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 3px;
    background: rgba(255, 255, 255, .035);
    transition: .3s ease;
}


.philosophy-item:hover {

    background:
        rgba(255,255,255,.08);

    border-color:
        rgba(229,181,61,.4);

    transform:
        translateY(-5px);
}


.philosophy-item > div {

    width:
        38px;

    height:
        38px;

    display:
        grid;

    place-items:
        center;

    border-radius:
        50%;

    background:
        rgba(231,181,61,.12);

    color:
        #e7b53d;

    font-size:
        16px;
}


.philosophy-item span {

  font-size: 16px;
    color: #fff;
    font-weight: 400;
}


/* statement */

.philosophy-statement {

    display:
        flex;

    align-items:
        center;

    gap:
        30px;

    margin-top:
        55px;

    padding-top:
        30px;

    border-top:
        1px solid
        rgba(255,255,255,.12);

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size:
        25px;
}


.philosophy-statement span {

   color: #fff;
}


.philosophy-statement strong {

    color:
        #e7b53d;

    font-weight:
        500;

    font-style:
        italic;
}


/* =========================================================
   04. WHO CAN JOIN
========================================================= */

.who-section {

 padding: 40px 0;
    background: #fffdf8;
}


.who-grid {

  display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 5px;
}


.who-card {

    padding: 15px 5px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    border: 1px solid #e1e7dc;
    border-radius: 4px;
    background: #ffffff;
    transition: .35s ease;
}


.who-card:hover {

    transform:
        translateY(-6px);

    border-color:
        #c9ddbf;

    box-shadow:
        0 18px 35px
        rgba(39,70,49,.07);
}


.who-icon {

    width:
        52px;

    height:
        52px;

    display:
        grid;

    place-items:
        center;

    margin-bottom:
        15px;

    border-radius:
        50%;

    background:
        #eaf3e5;

    color:
        #52804f;

    font-size:
        20px;
}


.who-icon.yellow {

    background:
        #fff2c9;

    color:
        #dba72d;
}


.who-card h3 {

  margin: 0;
    font-size: 16px;
    font-weight: 400;
    color: #000;
}


/* =========================================================
   05. SAFETY
========================================================= */

.safety-section {

 padding: 50px 0;
    background: #f4f7ef;
}


.safety-box {

  padding: 30px;
    border: 1px solid #dce5d6;
    border-radius: 5px;
    background: #ffffff;
    box-shadow: 0 20px 50px rgba(36, 68, 46, .05);
}


.safety-top {

    display:
        flex;

    align-items:
        center;

    gap:
        25px;

    padding-bottom:
        30px;

    margin-bottom:
        30px;

    border-bottom:
        1px solid
        #e1e7de;
}


.safety-icon {

    width:
        70px;

    height:
        70px;

    min-width:
        70px;

    display:
        grid;

    place-items:
        center;

    border-radius:
        50%;

    background:
        #fff1c7;

    color:
        #d69f25;

    font-size:
        27px;
}


.safety-top h2 {

  margin: 0;
    font-family: 'Playfair Display';
    font-size: 50px;
    line-height: 1;
    font-weight: 500;
    color: #000;
}


.safety-top h2 em {

    color:
        #dfa934;

    font-style:
        italic;
}


.safety-content > p {
margin: 0 0 5px;
    font-size: 16px;
    line-height: 1.8;
    color: #000;
}


/* responsibility */

.responsibility-box {

    margin-top:
        30px;

    padding:
        28px;

    border-left:
        3px solid
        #e4b43d;

    border-radius:
        0 15px 15px 0;

    background:
        #fafbf7;
}


.responsibility-box h3 {

margin: 0 0 15px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 30px;
    font-weight: 500;
    color: #000;
}


.responsibility-box p {

   margin: 0 0 5px;
    font-size: 16px;
    line-height: 1.75;
    color: #000;
}


.responsibility-box p:last-child {

    margin-bottom:
        0;
}


/* safety note */

.safety-note {

  display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 20px;
    padding: 16px 20px;
    border-radius: 5px;
    background: #edf5e8;
    color: #000;
    font-size: 15px;
    font-weight: 500;
}


.safety-note i {

    color:
        #dba62d;

    font-size:
        18px;
}


.safety-brand {

    margin-top:
        28px;

    text-align:
        right;

    font-family:
        "Playfair Display",
        Georgia,
        serif;

    font-size:
        18px;

    font-style:
        italic;

    color:
        #315443;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1000px) {

    .about-page-container {

        width:
            calc(100% - 40px);
    }


    .philosophy-grid {

        grid-template-columns:
            repeat(3, 1fr);
    }


    .who-grid {

        grid-template-columns:
            repeat(3, 1fr);
    }

}


@media (max-width: 750px) {

    .about-inner-hero {

        min-height:
            500px;
    }


    .vision-mission-section,
    .who-section {

        padding:
            75px 0;
    }


    .philosophy-section {

        padding:
            75px 0;
    }


    .vision-mission-grid {

        grid-template-columns:
            1fr;
    }


    .philosophy-grid {

        grid-template-columns:
            repeat(2, 1fr);
    }


    .philosophy-statement {

        flex-wrap:
            wrap;

        gap:
            12px 20px;

        font-size:
            21px;
    }


    .who-grid {

        grid-template-columns:
            repeat(2, 1fr);
    }


    .safety-box {

        padding:
            30px;
    }

}


@media (max-width: 550px) {

    .about-page-container {

        width:
            calc(100% - 30px);
    }


    .about-inner-hero {

        min-height:
            500px;
    }


    .about-hero-content h1 {

        font-size:
            52px;

        letter-spacing:
            -2px;
    }


    .about-hero-text {

        font-size:
            16px;
    }


    .about-hero-description {

        font-size:
            13px;
    }


    .section-intro h2 {

        font-size:
            42px;
    }


    .vision-card {

        padding:
            30px;
    }


    .philosophy-grid {

        grid-template-columns:
            1fr 1fr;
    }


    .philosophy-item {

        min-height:
            110px;

        padding:
            16px;
    }


    .philosophy-item span {

        font-size:
            10px;
    }


    .philosophy-statement {

        display:
            flex;

        flex-direction:
            row;

        align-items:
            flex-start;
    }


    .who-grid {

        grid-template-columns:
            1fr 1fr;

        gap:
            10px;
    }


    .who-card {

        min-height:
            130px;

        padding:
            18px 10px;
    }


    .who-card h3 {

        font-size:
            11px;
    }


    .safety-section {

        padding:
            60px 0;
    }


    .safety-box {

        padding:
            25px 20px;

        border-radius:
            18px;
    }


    .safety-top {

        align-items:
            flex-start;

        gap:
            15px;
    }


    .safety-icon {

        width:
            52px;

        height:
            52px;

        min-width:
            52px;

        font-size:
            20px;
    }


    .safety-top h2 {

        font-size:
            30px;
    }


    .responsibility-box {

        padding:
            20px;
    }


    .safety-note {

        align-items:
            flex-start;

        font-size:
            12px;
    }


    .safety-brand {

        font-size:
            15px;
    }

}





/* =========================================================
   OMLAM CLASSES PAGE
========================================================= */

.classes-page {
    --green: #12372d;
    --green-dark: #0d2b22;
    --green-light: #edf4e8;
    --gold: #e4ad36;
    --gold-light: #f6e6b5;
    --cream: #fffdf8;
    --text: #26352f;
    --muted: #68736e;

    font-family: "DM Sans", sans-serif;
    color: var(--text);
    background: var(--cream);
}

.classes-page * {
    box-sizing: border-box;
}

.classes-container {
    width: min(1180px, 92%);
    margin: 0 auto;
}


/* =========================================================
   HERO
========================================================= */

.classes-inner-hero {
    min-height: 540px;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;

    background:
        linear-gradient(
            90deg,
            rgba(13, 43, 34, .95),
            rgba(18, 55, 45, .78),
            rgba(18, 55, 45, .25)
        ),
        url("../img/online-yoga-fitness-classes.jpg");

    background-size: cover;
    background-position: center;
}

.classes-hero-content {
    max-width: 700px;
    position: relative;
    z-index: 2;
    padding: 80px 0;
}

.classes-eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;

    color: var(--gold);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 3px;
    margin-bottom: 22px;
}

.classes-eyebrow span {
    width: 34px;
    height: 1px;
    background: var(--gold);
}

.classes-hero-content h1 {
 margin: 0;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 65px;
    font-weight: 500;
    line-height: .95;
    letter-spacing: -3px;
    color: #fff;
}

.classes-hero-content h1 em {
    color: var(--gold);
    font-style: italic;
}

.classes-hero-content > p {
    margin: 28px 0 25px;

    color: rgba(255,255,255,.9);
    font-size: 19px;
    font-weight: 500;
}

.classes-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.classes-hero-meta span {
  display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 11px 15px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 50px;
    color: #fff;
    background: rgba(255, 255, 255, .08);
    backdrop-filter: blur(8px);
    font-size: 15px;
    font-family: 'Poppins';
}

.classes-hero-meta i {
    color: var(--gold);
}


/* =========================================================
   INTRO
========================================================= */

.classes-intro-section {
  padding: 40px 0 40px;
    background: var(--cream);
}

.classes-intro {
   
}

.classes-section-kicker {
 color: #000;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 2.5px;
    margin-bottom: 0px;
    font-family: 'Poppins';
}

.classes-section-kicker.light {
    color: var(--gold);
}

.classes-intro h2,
.classes-section-heading h2 {
  margin: 0 0 20px;
    font-family: "Playfair Display", serif;
    font-size: 50px;
    line-height: 1.08;
    font-weight: 500;
    color: #000;
}

.classes-intro h2 em,
.classes-section-heading h2 em {
    color: var(--gold);
    font-style: italic;
}

.classes-intro p {
 margin: 0;
    color: #000;
    font-size: 16px;
   
    font-family: 'Poppins';
}


/* =========================================================
   CLASS CATEGORIES
========================================================= */

.class-categories-section {
    padding: 60px 0;
    background: var(--green-light);
}

.classes-section-heading {
  
    margin-bottom: 30px;
}

.classes-section-heading p {
margin: 0;
    color: #000;
    font-size: 17px;
    line-height: 1.7;
    font-family: 'Poppins';
}

.class-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.class-card {
  position: relative;
    padding: 20px;
    background: #fff;
    border: 1px solid rgba(18, 55, 45, .08);
    border-radius: 4px;
    transition: transform .3s ease, box-shadow .3s ease;
}

.class-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 18px 45px rgba(18,55,45,.11);
}

.class-card.featured-class {
    background: var(--green);
    color: #fff;
}

.class-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 28px;
}

.class-icon {
    width: 54px;
    height: 54px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 15px;

    color: #fff;
    background: var(--green);

    font-size: 22px;
}

.class-icon.yellow {
    color: var(--green);
    background: var(--gold);
}

.featured-class .class-icon {
    color: var(--green);
    background: var(--gold);
}

.class-number {
    color: #b8c1bc;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 2px;
}

.featured-class .class-number {
    color: rgba(255,255,255,.4);
}

.class-card h3 {
margin: 0 0 10px;
    color: #000;
    font-family: 'Poppins';
    font-size: 22px;
    font-weight: 500;
}

.featured-class h3 {
    color: #fff;
}

.class-card p {
   margin: 0;
    color:#000;
    font-size: 15px;
    line-height: 1.75;
    font-family: 'Poppins';
}

.featured-class p {
    color: #fff;
}

.class-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;

    margin-top: 24px;
}

.class-card-tags span {
 font-family: 'Poppins';
    padding: 6px 10px;
    border-radius: 30px;
    color: #000;
    background: var(--green-light);
    font-size: 13px;
    font-weight: 500;
}

.featured-class .class-card-tags span {
    color: #fff;
    background: rgba(255,255,255,.1);
}


/* =========================================================
   CLASS FORMAT
========================================================= */

.class-format-section {
padding: 50px 0;
    background: var(--green);
    color: #fff;
}

.class-format-wrapper {
  
}

.class-format-content h2 {
  margin: 0 0 22px;
    color: #fff;
    font-family: "Playfair Display", serif;
    font-size: 50px;
    line-height: 1.05;
    font-weight: 500;
}

.class-format-content h2 em {
    color: var(--gold);
    font-style: italic;
}

.class-format-content > p {
 color: #fff;
    font-size: 16px;
    line-height: 1.8;
    font-family: 'Poppins';
}

.format-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;

    margin-top: 35px;
}

.format-item {
    display: flex;
    align-items: center;
    gap: 13px;

    padding: 15px;

    border: 1px solid rgba(255,255,255,.1);
    border-radius: 12px;
}

.format-item > div {
    width: 38px;
    height: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    border-radius: 10px;
    background: var(--gold);
    color: var(--green);
}

.format-item span {
 color: #fff;
    font-size: 16px;
    font-weight: 500;
    font-family: 'Poppins';
}

.format-visual {
    min-height: 430px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    position: relative;

    border-radius: 30px;
    background:
        radial-gradient(
            circle,
            rgba(228,173,54,.15),
            transparent 60%
        );
}

.format-circle {
    width: 180px;
    height: 180px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid rgba(228,173,54,.45);
    border-radius: 50%;

    color: var(--gold);
    font-size: 65px;
}

.format-word {
    margin-top: 28px;

    color: var(--gold);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 4px;
}

.format-visual strong {
    margin-top: 8px;

    color: #fff;
    font-family: "Playfair Display", serif;
    font-size: 34px;
    font-weight: 500;
}

.format-small {
    margin-top: 5px;

    color: rgba(255,255,255,.55);
    font-size: 13px;
}


/* =========================================================
   EXPECT
========================================================= */

.expect-section {
    padding: 100px 0;
    background: var(--cream);
}

.expect-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.expect-item {
  position: relative;
    padding: 30px 25px;
    border-top: 2px solid #f9bf56;
    background: #fff;
    box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
}

.expect-item > span {
    display: block;
    margin-bottom: 25px;

    color: #c9cfca;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}

.expect-item > i {
    color: var(--gold);
    font-size: 28px;
}

.expect-item h3 {
margin: 5px 0 5px;
    color: #000;
    font-family: 'Poppins';
    font-size: 22px;
    font-weight: 400;
}

.expect-item p {
  margin: 0;
    color: #000;
    font-size: 15px;
    line-height: 1.7;
    font-family: 'Poppins';
}


/* =========================================================
   CTA
========================================================= */

.classes-cta {
    position: relative;
    overflow: hidden;

    padding: 100px 0;

    background: var(--green-dark);
    text-align: center;
}

.classes-cta-decoration {
    position: absolute;

    width: 400px;
    height: 400px;

    right: -180px;
    top: -200px;

    border: 1px solid rgba(228,173,54,.15);
    border-radius: 50%;
}

.classes-cta-content {
    position: relative;
    z-index: 2;

    max-width: 720px;
    margin: auto;
}

.classes-cta h2 {
    margin: 0 0 20px;

    color: #fff;
    font-family: "Playfair Display", serif;
    font-size: clamp(40px, 5vw, 62px);
    font-weight: 500;
    line-height: 1.1;
}

.classes-cta h2 em {
    color: var(--gold);
    font-style: italic;
}

.classes-cta p {
    max-width: 620px;
    margin: 0 auto 30px;

    color: rgba(255,255,255,.7);
    line-height: 1.8;
}

.classes-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    padding: 15px 24px;

    border-radius: 50px;

    background: var(--gold);
    color: var(--green);

    font-size: 13px;
    font-weight: 800;
    text-decoration: none;

    transition: .3s ease;
}

.classes-cta-btn:hover {
    transform: translateY(-3px);
    background: #fff;
    color: var(--green);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1000px) {

    .class-cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .class-format-wrapper {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .format-visual {
        min-height: 300px;
    }

    .expect-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}


@media (max-width: 750px) {

    .classes-inner-hero {
        min-height: 500px;
    }

    .classes-intro-section,
    .class-categories-section,
    .class-format-section,
    .expect-section,
    .classes-cta {
        padding: 35px 0;
    }

    .class-cards-grid {
        grid-template-columns: 1fr;
    }

    .class-card p {
        min-height: auto;
    }

    .format-list {
        grid-template-columns: 1fr;
    }

}


@media (max-width: 550px) {

    .classes-container {
        width: 90%;
    }

    .classes-hero-content h1 {
        font-size: 48px;
    }

    .classes-hero-meta {
        flex-direction: column;
        align-items: flex-start;
    }

    .classes-hero-meta span {
        width: max-content;
    }

    .class-card {
        padding: 25px;
    }

    .expect-grid {
        grid-template-columns: 1fr;
    }

    .format-circle {
        width: 140px;
        height: 140px;
        font-size: 48px;
    }

}




























/* =====================================================
   BACK TO TOP BUTTON
===================================================== */

.back-to-top {
    position: fixed;

    right: 10px;
    bottom: 25px;

    width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #17372d;
    color: #ffffff;

    border: 1px solid rgba(234, 182, 59, 0.5);
    border-radius: 50%;

    text-decoration: none;

    font-size: 15px;

    z-index: 9999;

    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);

    transition:
        opacity .35s ease,
        visibility .35s ease,
        transform .35s ease,
        background .3s ease,
        color .3s ease;
}


/* SHOW */

.back-to-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}


/* HOVER */

.back-to-top:hover {
    background: #eab63b;
    color: #17372d;

    transform:
        translateY(-5px);
}


/* ICON */

.back-to-top i {
    transition:
        transform .3s ease;
}

.back-to-top:hover i {
    transform:
        translateY(-2px);
}


/* MOBILE */

@media (max-width: 600px) {

    .back-to-top {

        right: 16px;
        bottom: 18px;

        width: 43px;
        height: 43px;

        font-size: 13px;
    }

}

.aboutlines{
margin-bottom: 30px;
}
.aboutlines p{
  color: #000;
    font-family: 'Poppins';
    font-size: 16px;
    max-width: 100%;
}








/* =========================================================
   OMLAM WEEKLY FOCUS PAGE
   ISOLATED / SCOPED CSS
========================================================= */

.omlam-weekly-page {
    --green: #12372d;
    --green-dark: #0d2b22;
    --green-light: #edf4e8;
    --gold: #e4ad36;
    --cream: #fffdf8;
    --text: #26352f;
    --muted: #68736e;

    font-family: "DM Sans", sans-serif;
    color: var(--text);
    background: var(--cream);

    width: 100%;
    overflow: hidden;
}

.omlam-weekly-page *,
.omlam-weekly-page *::before,
.omlam-weekly-page *::after {
    box-sizing: border-box;
}


/* =========================================================
   CONTAINER
========================================================= */

.omlam-weekly-page .weekly-container {
    width: min(1180px, 92%);
    margin: 0 auto;
}


/* =========================================================
   HERO
========================================================= */

.omlam-weekly-page .weekly-hero {
    min-height: 540px;

    display: flex;
    align-items: center;

    position: relative;
    overflow: hidden;

    background:
        linear-gradient(
            90deg,
            rgba(13,43,34,.96),
            rgba(18,55,45,.78),
            rgba(18,55,45,.22)
        ),
        url("../img/weekly-hero.jpg");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.omlam-weekly-page .weekly-hero-overlay {
    position: absolute;
    inset: 0;

    pointer-events: none;
}

.omlam-weekly-page .weekly-hero-content {
    max-width: 700px;
    padding: 85px 0;

    position: relative;
    z-index: 2;
}

.omlam-weekly-page .weekly-eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;

    color: var(--gold);

    font-size: 12px;
    font-weight: 800;
    letter-spacing: 3px;

    margin-bottom: 22px;
}

.omlam-weekly-page .weekly-eyebrow span {
    width: 34px;
    height: 1px;

    display: block;

    background: var(--gold);
}

.omlam-weekly-page .weekly-hero h1 {
    margin: 0;

    font-family: "Playfair Display", Georgia, serif;

    font-size: 65px;
    font-weight: 500;
    line-height: .95;
    letter-spacing: -3px;

    color: #fff;
}

.omlam-weekly-page .weekly-hero h1 em {
    color: var(--gold);
    font-style: italic;
}

.omlam-weekly-page .weekly-hero-content > p {
margin: 28px 0;
    color: #fff;
    font-size: 18px;
    line-height: 1.7;
    font-family: 'Poppins';
    font-weight: 300;
}

.omlam-weekly-page .weekly-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.omlam-weekly-page .weekly-meta span {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    padding: 11px 15px;

    border: 1px solid rgba(255,255,255,.18);
    border-radius: 50px;

    color: #fff;
    background: rgba(255,255,255,.08);

    backdrop-filter: blur(8px);

    font-size: 15px;
    font-family: "Poppins", sans-serif;
}

.omlam-weekly-page .weekly-meta i {
    color: var(--gold);
}


/* =========================================================
   INTRO
========================================================= */

.omlam-weekly-page .weekly-intro {
    padding: 40px 0 30px;

    background: var(--cream);
}

.omlam-weekly-page .weekly-intro-content {
    width: 100%;
}

.omlam-weekly-page .weekly-kicker {
    color: #000;

    font-size: 15px;
    font-weight: 500;
    letter-spacing: 2.5px;

    margin-bottom: 15px;
}

.omlam-weekly-page .weekly-kicker.light {
    color: var(--gold);
}

.omlam-weekly-page .weekly-intro h2,
.omlam-weekly-page .weekly-heading h2,
.omlam-weekly-page .weekly-routine-heading h2 {
    margin: 0 0 22px;

    color: #000;

    font-family: "Playfair Display", serif;

    font-size: 50px;
    line-height: 1.08;
    font-weight: 500;
}

.omlam-weekly-page .weekly-intro h2 em,
.omlam-weekly-page .weekly-heading h2 em,
.omlam-weekly-page .weekly-routine-heading h2 em {
    color: var(--gold);
    font-style: italic;
}

.omlam-weekly-page .weekly-intro p {
    margin: 0 0 13px;

    color: #000;

    font-size: 16px;
    font-family: "Poppins", sans-serif;
    line-height: 1.7;
}


/* =========================================================
   WEEKLY FOCUS
========================================================= */

.omlam-weekly-page .weekly-focus-section {
    padding: 50px 0;

    background: var(--green-light);
}

.omlam-weekly-page .weekly-focus-section .weekly-heading {
 
    margin-bottom: 30px;
}

.omlam-weekly-page .weekly-focus-section .weekly-heading p {
  margin: 0;
    color: #000;
    font-size: 16px;
    line-height: 1.7;
    font-family: 'Poppins';
}

.omlam-weekly-page .weekly-focus-section .weekly-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 22px;
}

.omlam-weekly-page .weekly-focus-section .weekly-card {
  position: relative;
    padding: 30px;
    background: #fff;
    border: 1px solid rgba(18, 55, 45, .08);
    border-radius: 4px;
    transition: .3s ease;
  }

.omlam-weekly-page .weekly-focus-section .weekly-card:hover {
    transform: translateY(-7px);

    box-shadow:
        0 18px 45px rgba(18,55,45,.11);
}

.omlam-weekly-page .weekly-focus-section .weekly-card.featured-weekly {
    background: var(--green);
}

.omlam-weekly-page .weekly-focus-section .weekly-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-bottom: 28px;
}

.omlam-weekly-page .weekly-focus-section .weekly-day {
   color: #000;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 2px;
    font-family: 'Poppins';
}

.omlam-weekly-page .weekly-focus-section .featured-weekly .weekly-day {
    color: var(--gold);
}

.omlam-weekly-page .weekly-focus-section .weekly-number {
    color: #c7cec9;

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}

.omlam-weekly-page .weekly-focus-section .featured-weekly .weekly-number {
    color: rgba(255,255,255,.4);
}

.omlam-weekly-page .weekly-icon {
    width: 55px;
    height: 55px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 25px;

    border-radius: 15px;

    color: #fff;
    background: var(--green);

    font-size: 22px;
}

.omlam-weekly-page .weekly-icon.yellow {
    color: var(--green);
    background: var(--gold);
}

.omlam-weekly-page .weekly-card h3 {
 margin: 0 0 13px;
    color: #000;
    font-family: 'Poppins';
    font-size: 21px;
    font-weight: 500;
}

.omlam-weekly-page .weekly-focus-section .featured-weekly h3 {
    color: #fff;
}

.omlam-weekly-page .weekly-focus-section .weekly-card p {
 margin: 0;
    color: #000;
    font-size: 15px;
    line-height: 1.75;
    font-family: 'Poppins';
}

.omlam-weekly-page .weekly-focus-section .featured-weekly p {
    color: rgba(255,255,255,.72);
}

.omlam-weekly-page .weekly-tag {
 display: inline-block;
    margin-top: 22px;
    padding: 6px 11px;
    color: var(--green);
    background: var(--green-light);
    border-radius: 30px;
    font-size: 13px;
    font-weight: 600;
    font-family: 'Poppins';
}

.omlam-weekly-page .featured-weekly .weekly-tag {
    color: var(--green);
    background: var(--gold);
}


/* =========================================================
   BALANCE
========================================================= */

.omlam-weekly-page .weekly-balance-section {
  padding: 50px 0;
    background: var(--green);
}

.omlam-weekly-page .weekly-balance {
font-family: 'Poppins';
}

.omlam-weekly-page .weekly-balance-content h2 {
    margin: 0 0 22px;

    color: #fff;

    font-family: "Playfair Display", serif;

    font-size: clamp(42px, 5vw, 64px);
    line-height: 1.05;
    font-weight: 500;
}

.omlam-weekly-page .weekly-balance-content h2 em {
    color: var(--gold);
    font-style: italic;
}

.omlam-weekly-page .weekly-balance-content > p {
  color: #fff;
    font-size: 17px;
    line-height: 1.8;
    font-weight: 400;
}

.omlam-weekly-page .balance-points {
    display: flex;
    flex-wrap: wrap;

    gap: 12px;

    margin-top: 35px;
}

.omlam-weekly-page .balance-points div {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 10px 14px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50px;
    color: #fff;
    font-size: 15px;
    font-weight: 400;
}

.omlam-weekly-page .balance-points i {
    color: var(--gold);
}





/* =========================================================
   ROUTINE
========================================================= */

.omlam-weekly-page .weekly-routine {
 padding: 50px 0;
    background: var(--cream);
    font-family: 'Poppins';
}

.omlam-weekly-page .weekly-routine-heading {
   margin-bottom: 30px;
}

.omlam-weekly-page .weekly-routine-heading p {
  color: #000;
    font-size: 16px;
    line-height: 1.7;
}

.omlam-weekly-page .routine-steps {
    display: grid;

    grid-template-columns:
        1fr 70px 1fr 70px 1fr;

    align-items: center;
}

.omlam-weekly-page .routine-step {
  text-align: center;
    background: #edf4e8;
    padding: 30px 20px 30px 20px;
}
.omlam-weekly-page .routine-step > span {
    display: block;

    margin-bottom: 20px;

    color: #c7cec9;

    font-size: 11px;
    font-weight: 800;
    letter-spacing: 2px;
}

.omlam-weekly-page .routine-step > i {
    color: var(--gold);

    font-size: 30px;
}

.omlam-weekly-page .routine-step h3 {
 margin: 4px 0 4px;
    color: #000;
    font-family: 'Poppins';
    font-size: 23px;
    font-weight: 400;
}

.omlam-weekly-page .routine-step p {
margin: auto;
    color: #000;
    font-size: 15px;
    line-height: 1.7;
}

.omlam-weekly-page .routine-line {
    height: 1px;

    background: #dce2dc;
}


/* =========================================================
   RESPONSIVE — 1000px
========================================================= */

@media (max-width: 1000px) {

    .omlam-weekly-page .weekly-focus-section .weekly-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .omlam-weekly-page .weekly-balance {
        grid-template-columns: 1fr;

        gap: 50px;
    }

    .omlam-weekly-page .weekly-balance-visual {
        min-height: 300px;
    }

    .omlam-weekly-page .routine-steps {
        grid-template-columns: 1fr;

        gap: 35px;
    }

    .omlam-weekly-page .routine-line {
        display: none;
    }

}


/* =========================================================
   RESPONSIVE — 750px
========================================================= */

@media (max-width: 750px) {

    .omlam-weekly-page .weekly-hero {
        min-height: 500px;
    }

    .omlam-weekly-page .weekly-intro,
    .omlam-weekly-page .weekly-focus-section,
    .omlam-weekly-page .weekly-balance-section,
    .omlam-weekly-page .weekly-routine {
        padding: 75px 0;
    }

    .omlam-weekly-page .weekly-focus-section .weekly-grid {
        grid-template-columns: 1fr;
    }

    .omlam-weekly-page .weekly-focus-section .weekly-card p {
        min-height: auto;
    }

}


/* =========================================================
   RESPONSIVE — 550px
========================================================= */

@media (max-width: 550px) {

    .omlam-weekly-page .weekly-container {
        width: 90%;
    }

    .omlam-weekly-page .weekly-hero h1 {
        font-size: 48px;
        letter-spacing: -2px;
    }

    .omlam-weekly-page .weekly-meta {
        flex-direction: column;
        align-items: flex-start;
    }

    .omlam-weekly-page .weekly-meta span {
        width: max-content;
    }

    .omlam-weekly-page .weekly-card {
        padding: 25px;
    }

    .omlam-weekly-page .balance-circle {
        width: 240px;
        height: 240px;
    }

    .omlam-weekly-page .balance-circle strong {
        font-size: 30px;
    }

}




/* =========================================================
   OMLAM COACH PAGE
   COMPLETELY UNIQUE CLASS NAMES
========================================================= */
/* =========================================================
   OMLAM COACH HERO
   UNIQUE CLASSES ONLY
========================================================= */

.omlam-cpage .omlam-cpage-hero {

 background-image: linear-gradient(179deg, rgb(8 24 20), rgba(18, 55, 45, 0.45), rgba(18, 55, 45, 0.15)), url(../img/coach-hero.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.omlam-cpage-hero {
    position: relative;
    min-height: 570px;
    display: flex;
    align-items: center;
    overflow: hidden;
}


/* subtle background */

.omlam-cpage .omlam-cpage-hero-bg {

    position: absolute;

    width: 650px;
    height: 650px;

    right: -180px;
    top: -180px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(228,173,54,.28) 0%,
            rgba(228,173,54,.08) 38%,
            transparent 70%
        );

    z-index: -1;
}


/* second decorative circle */

.omlam-cpage .omlam-cpage-hero::after {

    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    left: -220px;
    bottom: -220px;

    border: 1px solid rgba(255,255,255,.12);

    border-radius: 50%;

    z-index: -1;
}


/* content */

.omlam-cpage .omlam-cpage-hero-content {

  max-width: 760px;
    padding: 150px 0 50px 0;
}


/* label */

.omlam-cpage .omlam-cpage-hero-label {

    display: flex;

    align-items: center;

    justify-content: flex-start;

    gap: 12px;

    margin-bottom: 22px;

    color: #e4ad36;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 3px;
}

.omlam-cpage .omlam-cpage-hero-label span {

    width: 32px;
    height: 1px;

    background: #e4ad36;
}


/* heading */

.omlam-cpage .omlam-cpage-hero h1 {

  margin: 0;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 65px;
    font-weight: 500;
    line-height: .95;
    letter-spacing: -3px;
    color: #fff;
}

.omlam-cpage .omlam-cpage-hero h1 em {

    color: #e4ad36;

    font-style: italic;

    font-weight: 500;
}


/* description */

.omlam-cpage .omlam-cpage-hero-content > p {
margin: 20px 0 20px;
    color: #fff;
    font-size: 17px;
    line-height: 1.7;
    font-family: 'Poppins';
}


/* stats */

.omlam-cpage .omlam-cpage-hero-meta {

    display: flex;

    align-items: center;

    gap: 28px;
}

.omlam-cpage .omlam-cpage-hero-meta > div:not(
    .omlam-cpage-hero-divider
) {

    display: flex;

    flex-direction: column;

    gap: 4px;
}

.omlam-cpage .omlam-cpage-hero-meta strong {

    color: #fffdf8;

    font-family: "Playfair Display", serif;

    font-size: 28px;

    font-weight: 500;
}

.omlam-cpage .omlam-cpage-hero-meta span {
color: #fff;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 1.3px;
    text-transform: uppercase;
    font-family: 'Poppins';
}


/* divider */

.omlam-cpage .omlam-cpage-hero-divider {

    width: 1px;
    height: 42px;

    background: rgba(255,255,255,.18);
}


/* scroll */

.omlam-cpage .omlam-cpage-hero-scroll {

    position: absolute;

    right: 5%;

    bottom: 35px;

    display: flex;

    align-items: center;

    gap: 12px;

    color: rgba(255,255,255,.55);

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 2px;
}

.omlam-cpage .omlam-cpage-hero-scroll i {

    color: #e4ad36;

    font-size: 13px;

    animation: omlamCoachHeroArrow 1.8s ease-in-out infinite;
}


@keyframes omlamCoachHeroArrow {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(6px);
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 750px) {

    .omlam-cpage .omlam-cpage-hero {

        min-height: 570px;
    }

    .omlam-cpage .omlam-cpage-hero-content {

        padding: 80px 0;
    }

    .omlam-cpage .omlam-cpage-hero h1 {

        font-size: clamp(58px, 15vw, 85px);

        letter-spacing: -3px;
    }

    .omlam-cpage .omlam-cpage-hero-meta {

        gap: 18px;
    }

    .omlam-cpage .omlam-cpage-hero-scroll {

        display: none;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 550px) {

    .omlam-cpage .omlam-cpage-hero {

        min-height: 540px;
    }

    .omlam-cpage .omlam-cpage-hero-content {

        padding: 70px 0;
    }

    .omlam-cpage .omlam-cpage-hero h1 {

        font-size: 58px;

        line-height: .95;

        letter-spacing: -2px;
    }

    .omlam-cpage .omlam-cpage-hero-content > p {

        margin: 25px 0 30px;

        font-size: 15px;
    }

    .omlam-cpage .omlam-cpage-hero-meta {

        flex-wrap: wrap;

        gap: 15px;
    }

    .omlam-cpage .omlam-cpage-hero-divider {

        display: none;
    }

    .omlam-cpage .omlam-cpage-hero-meta strong {

        font-size: 23px;
    }
}
.omlam-cpage {
    --oc-green: #12372d;
    --oc-green-dark: #0d2b22;
    --oc-green-light: #edf4e8;
    --oc-gold: #e4ad36;
    --oc-cream: #fffdf8;
    --oc-text: #26352f;
    --oc-muted: #68736e;

    width: 100%;
    margin: 0;
    padding: 0;

    color: var(--oc-text);
    background: var(--oc-cream);

    font-family: "DM Sans", sans-serif;

    overflow: hidden;
}

.omlam-cpage *,
.omlam-cpage *::before,
.omlam-cpage *::after {
    box-sizing: border-box;
}


/* =========================================================
   COMMON WRAPPER
========================================================= */

.omlam-cpage .omlam-cpage-wrap {
    width: min(1180px, 92%);
    margin: 0 auto;
}


/* =========================================================
   SECTION 01
========================================================= */

.omlam-cpage .omlam-cpage-intro {
   padding: 60px 0;
    background: var(--oc-cream);
}

.omlam-cpage .omlam-cpage-intro-grid {

    display: grid;

    grid-template-columns: .85fr 1.15fr;

    gap: 80px;

    align-items: center;
}


/* =========================================================
   PHOTO
========================================================= */

.omlam-cpage .omlam-cpage-photo-area {
    position: relative;

    width: 100%;
}

.omlam-cpage .omlam-cpage-photo {

    width: 100%;
    height: 620px;

    overflow: hidden;

    border-radius: 24px;

    background: var(--oc-green-light);
}

.omlam-cpage .omlam-cpage-photo img {

    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform .6s ease;
}

.omlam-cpage .omlam-cpage-photo:hover img {
    transform: scale(1.04);
}


/* =========================================================
   EXPERIENCE BADGE
========================================================= */

.omlam-cpage .omlam-cpage-exp {

    width: 135px;
    height: 135px;

    position: absolute;

    right: -25px;
    bottom: 30px;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: var(--oc-green);

    background: var(--oc-gold);

    text-align: center;

    box-shadow:
        0 15px 35px rgba(18,55,45,.18);
}

.omlam-cpage .omlam-cpage-exp strong {

    font-family: "Playfair Display", serif;

    font-size: 38px;

    line-height: 1;
}

.omlam-cpage .omlam-cpage-exp span {

    margin-top: 6px;

    font-size: 10px;

    line-height: 1.35;

    font-weight: 800;

    letter-spacing: .5px;
}


/* =========================================================
   LABEL
========================================================= */

.omlam-cpage .omlam-cpage-label {

  display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 17px;
    color: #000;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 2.5px;
    font-family: 'Poppins';
}

.omlam-cpage .omlam-cpage-label span {

    width: 30px;
    height: 1px;

    display: block;

    background: var(--oc-gold);
}


/* =========================================================
   INTRO CONTENT
========================================================= */

.omlam-cpage .omlam-cpage-intro-content h1 {

  margin: 0 0 18px;
    color: #000;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: .98;
    letter-spacing: -2px;
}

.omlam-cpage .omlam-cpage-intro-content h1 em {

    color: var(--oc-gold);

    font-style: italic;

    font-size: .78em;

    line-height: 1.02;
}

.omlam-cpage .omlam-cpage-intro-content h3 {

  margin: 0 0 15px;
    color: #000;
    font-size: 19px;
    line-height: 1.6;
    font-weight: 400;
    font-family: 'Poppins';
}

.omlam-cpage .omlam-cpage-intro-content > p {

 color: #000;
    font-size: 16px;
    line-height: 1.8;
    font-family: 'Poppins';
}


/* =========================================================
   QUOTE
========================================================= */

.omlam-cpage .omlam-cpage-quote {

    display: flex;

    gap: 18px;

    margin-top: 30px;

    padding: 23px 25px;

    border-left: 3px solid var(--oc-gold);

    background: var(--oc-green-light);
}

.omlam-cpage .omlam-cpage-quote-mark {

    flex-shrink: 0;

    color: var(--oc-gold);

    font-family: "Playfair Display", serif;

    font-size: 58px;

    line-height: .65;
}

.omlam-cpage .omlam-cpage-quote p {

  margin: 0 0 8px;
    color: #000;
    font-family: 'Poppins';
    font-size: 18px;
    line-height: 1.5;
}

.omlam-cpage .omlam-cpage-quote span {

 color: #000;
    font-size: 16px;
    font-weight: 700;
    font-family: 'Playfair Display';
}


/* =========================================================
   SECTION 02
========================================================= */

.omlam-cpage .omlam-cpage-expertise {

    padding: 45px 0;

    background: var(--oc-green-light);
    font-family: 'Poppins';
}


/* =========================================================
   EXPERTISE HEADING
========================================================= */

.omlam-cpage .omlam-cpage-expertise-heading {

 margin-bottom: 30px;
}

.omlam-cpage .omlam-cpage-expertise-heading h2 {

  margin: 0 0 18px;
    color: #000;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: .98;
    letter-spacing: -2px;
}

.omlam-cpage .omlam-cpage-expertise-heading h2 em {

    color: var(--oc-gold);

    font-style: italic;
}

.omlam-cpage .omlam-cpage-expertise-heading p {
margin: 0;
    color: #000;
    font-size: 17px;
    line-height: 1.7;
}


/* =========================================================
   EXPERTISE GRID
========================================================= */

.omlam-cpage .omlam-cpage-expertise-grid {

 display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}


/* =========================================================
   EXPERTISE ITEM
========================================================= */

.omlam-cpage .omlam-cpage-expertise-item {

   padding: 25px;
    background: #fff;
    border: 1px solid rgba(18, 55, 45, .08);
    border-radius: 5px;
    transition: transform .3s ease, box-shadow .3s ease;
}

.omlam-cpage .omlam-cpage-expertise-item:hover {

    transform: translateY(-5px);

    box-shadow:
        0 15px 35px rgba(18,55,45,.08);
}


/* =========================================================
   EXPERTISE ICON
========================================================= */

.omlam-cpage .omlam-cpage-expertise-icon {

    width: 55px;
    height: 55px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 14px;

    color: #fff;

    background: var(--oc-green);

    font-size: 21px;
}

.omlam-cpage .omlam-cpage-expertise-icon.gold {

    color: var(--oc-green);

    background: var(--oc-gold);
}


/* =========================================================
   EXPERTISE TEXT
========================================================= */

.omlam-cpage .omlam-cpage-expertise-item span {

    color: #b4bdb7;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 2px;
}

.omlam-cpage .omlam-cpage-expertise-item h3 {

   margin: 5px 0 7px;
    color: #000;
    font-family: 'Poppins';
    font-size: 21px;
    line-height: 1.25;
    font-weight: 500;
    margin-bottom: 12px;
}

.omlam-cpage .omlam-cpage-expertise-item p {
margin: 0;
    color: #000;
    font-size: 15px;
    line-height: 1.65;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1000px) {

    .omlam-cpage .omlam-cpage-intro-grid {

        grid-template-columns: 1fr;

        gap: 55px;
    }

    .omlam-cpage .omlam-cpage-photo {

        height: 600px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 750px) {

    .omlam-cpage .omlam-cpage-intro,
    .omlam-cpage .omlam-cpage-expertise {

        padding: 75px 0;
    }

    .omlam-cpage .omlam-cpage-photo {

        height: 500px;
    }

    .omlam-cpage .omlam-cpage-exp {

        right: 15px;
        bottom: 20px;
    }

    .omlam-cpage .omlam-cpage-expertise-grid {

        grid-template-columns: 1fr;
    }

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 550px) {

    .omlam-cpage .omlam-cpage-wrap {

        width: 90%;
    }

    .omlam-cpage .omlam-cpage-photo {

        height: 430px;
    }

    .omlam-cpage .omlam-cpage-exp {

        width: 110px;
        height: 110px;
    }

    .omlam-cpage .omlam-cpage-exp strong {

        font-size: 30px;
    }

    .omlam-cpage .omlam-cpage-intro-content h1 {

        font-size: 47px;
    }

    .omlam-cpage .omlam-cpage-quote {

        padding: 20px;
    }

    .omlam-cpage .omlam-cpage-expertise-item {

        grid-template-columns: 50px 1fr;

        padding: 20px;
    }

}






/* =========================================================
   OMLAM FAQ PAGE
   UNIQUE NAMES - NO GLOBAL CONFLICT
========================================================= */

.omlam-faq-page {

    --faq-green: #12372d;
    --faq-green-dark: #0d2b22;
    --faq-light: #edf4e8;
    --faq-gold: #e4ad36;
    --faq-cream: #fffdf8;
    --faq-text: #26352f;
    --faq-muted: #68736e;

    width: 100%;
    margin: 0;
    padding: 0;

    background: var(--faq-cream);

    color: var(--faq-text);

    font-family: "DM Sans", sans-serif;

    overflow: hidden;
}

.omlam-faq-page *,
.omlam-faq-page *::before,
.omlam-faq-page *::after {
    box-sizing: border-box;
}


/* =========================================================
   CONTAINER
========================================================= */

.omlam-faq-page .omlam-faq-container {

    width: min(1180px, 92%);

    margin: 0 auto;
}


/* =========================================================
   HERO
========================================================= */

.omlam-faq-page .omlam-faq-hero {

   background-image: linear-gradient(179deg, rgb(8 24 20), rgba(18, 55, 45, 0.45), rgba(18, 55, 45, 0.15)), url(../img/omlam-online-yoga-faq-hero.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.omlam-faq-hero {
  position: relative;
    min-height: 570px;
    display: flex;
    align-items: center;
    overflow: hidden;
  }
.omlam-faq-page .omlam-faq-hero::before {

    content: "";

    position: absolute;

    width: 520px;
    height: 520px;

    right: -160px;
    top: -190px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(228,173,54,.30) 0%,
            rgba(228,173,54,.08) 42%,
            transparent 70%
        );
}

.omlam-faq-page .omlam-faq-hero::after {

    content: "";

    position: absolute;

    width: 360px;
    height: 360px;

    left: -210px;
    bottom: -210px;

    border: 1px solid rgba(255,255,255,.12);

    border-radius: 50%;
}


/* hero content */

.omlam-faq-page .omlam-faq-hero-content {

position: relative;
    z-index: 2;
    padding: 170px 0;
}


/* label */

.omlam-faq-page .omlam-faq-label {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-bottom: 20px;

    color: var(--faq-gold);

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2.8px;
}

.omlam-faq-page .omlam-faq-label span {

    width: 30px;
    height: 1px;

    background: var(--faq-gold);
}


/* heading */

.omlam-faq-page .omlam-faq-hero h1 {

   margin: 0;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 65px;
    font-weight: 500;
    line-height: .95;
    letter-spacing: -3px;
    color: #fff;
}

.omlam-faq-page .omlam-faq-hero h1 em {

    color: var(--faq-gold);

    font-style: italic;
}


/* hero paragraph */

.omlam-faq-page .omlam-faq-hero p {

  margin: 28px 0 0;
    color: #fff;
    font-size: 17px;
    line-height: 1.75;
    font-family: 'Poppins';
}


/* =========================================================
   FAQ SECTION
========================================================= */

.omlam-faq-page .omlam-faq-section {

  padding: 65px 0;
    background: var(--faq-cream);
    font-family: 'Poppins';
}


/* layout */

.omlam-faq-page .omlam-faq-layout {

    display: grid;

    grid-template-columns: .75fr 1.25fr;

    gap: 90px;

    align-items: start;
}


/* =========================================================
   LEFT INTRO
========================================================= */

.omlam-faq-page .omlam-faq-intro {

    position: sticky;

    top: 110px;
}

.omlam-faq-page .omlam-faq-small-label {

      margin-bottom: 10px;
    color: #000;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: 2.5px;
}

.omlam-faq-page .omlam-faq-small-label::before {

    content: "";

    display: inline-block;

    width: 28px;
    height: 1px;

    margin-right: 10px;

    vertical-align: middle;

    background: var(--faq-gold);
}


.omlam-faq-page .omlam-faq-intro h2 {

margin: 0 0 20px;
    color: #000;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.05;
    letter-spacing: -1.5px;
}

.omlam-faq-page .omlam-faq-intro h2 em {

    color: var(--faq-gold);

    font-style: italic;
}


.omlam-faq-page .omlam-faq-intro > p {

   margin: 0;
    color: #000;
    font-size: 16px;
    line-height: 1.8;
}


/* intro note */

.omlam-faq-page .omlam-faq-intro-note {

    display: flex;

    gap: 13px;

    align-items: flex-start;

    max-width: 400px;

    margin-top: 35px;

    padding: 18px;

    border-left: 3px solid var(--faq-gold);

    background: var(--faq-light);

    color: var(--faq-green);

    font-size: 13px;

    line-height: 1.6;
}

.omlam-faq-page .omlam-faq-intro-note i {

    margin-top: 3px;

    color: var(--faq-gold);

    font-size: 17px;
}


/* =========================================================
   ACCORDION
========================================================= */

.omlam-faq-page .omlam-faq-accordion {

    width: 100%;
}


.omlam-faq-page .omlam-faq-item {

    margin-bottom: 12px;

    border: 1px solid rgba(18,55,45,.12);

    border-radius: 4px;

    background: #fff;

    overflow: hidden;

    transition:
        border-color .3s ease,
        box-shadow .3s ease;
}


.omlam-faq-page .omlam-faq-item.active {

    border-color: rgba(228,173,54,.55);

    box-shadow:
        0 12px 30px rgba(18,55,45,.07);
}


/* question */

.omlam-faq-page .omlam-faq-question {

   width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 25px;
    padding: 15px 25px;
    border: 0;
    outline: 0;
    background: transparent;
    color: #000;
    font-family: 'Poppins';
    font-size: 17px;
    text-align: left;
    cursor: pointer;
    font-weight: 500;
}


.omlam-faq-page .omlam-faq-question span {

    flex: 1;
}


.omlam-faq-page .omlam-faq-question i {

    width: 34px;
    height: 34px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    color: var(--faq-green);

    background: var(--faq-light);

    font-size: 12px;

    transition:
        transform .3s ease,
        background .3s ease,
        color .3s ease;
}


/* active plus becomes X */

.omlam-faq-page .omlam-faq-item.active
.omlam-faq-question i {

    color: var(--faq-green);

    background: var(--faq-gold);

    transform: rotate(45deg);
}


/* answer */

.omlam-faq-page .omlam-faq-answer {

    display: grid;

    grid-template-rows: 0fr;

    transition:
        grid-template-rows .35s ease;
}

.omlam-faq-page .omlam-faq-answer p {

   min-height: 0;
    overflow: hidden;
    margin: 0;
    padding: 0 25px;
    color: #000;
    font-size: 16px;
    line-height: 1.8;
    transition: padding .35s ease;
}


/* active answer */

.omlam-faq-page .omlam-faq-item.active
.omlam-faq-answer {

    grid-template-rows: 1fr;
}

.omlam-faq-page .omlam-faq-item.active
.omlam-faq-answer p {

    padding: 0 25px 24px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

    .omlam-faq-page .omlam-faq-layout {

        grid-template-columns: 1fr;

        gap: 55px;
    }

    .omlam-faq-page .omlam-faq-intro {

        position: static;

        max-width: 700px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .omlam-faq-page .omlam-faq-container {

        width: 90%;
    }

    .omlam-faq-page .omlam-faq-hero {

        min-height: 390px;
    }

    .omlam-faq-page .omlam-faq-hero-content {

        padding: 70px 0;
    }

    .omlam-faq-page .omlam-faq-hero h1 {

        font-size: 58px;

        letter-spacing: -2px;
    }

    .omlam-faq-page .omlam-faq-section {

        padding: 70px 0;
    }

    .omlam-faq-page .omlam-faq-intro h2 {

        font-size: 44px;
    }

    .omlam-faq-page .omlam-faq-question {

        min-height: 70px;

        padding: 18px;

        font-size: 14px;
    }

    .omlam-faq-page .omlam-faq-question i {

        width: 30px;
        height: 30px;
    }

    .omlam-faq-page .omlam-faq-item.active
    .omlam-faq-answer p {

        padding-left: 18px;
        padding-right: 18px;
    }

}










    /* =========================================================
       OMLAM CONTACT PAGE
       ========================================================= */

    .omlam-contact-page {
      --oc-green: #12372d;
      --oc-green-dark: #0b2921;
      --oc-green-soft: #edf4e8;
      --oc-gold: #e4ad36;
      --oc-cream: #fffdf8;
      --oc-text: #25322d;
      --oc-muted: #69736e;

      font-family: "DM Sans", sans-serif;
      color: var(--oc-text);
      background: var(--oc-cream);
    }

    .omlam-contact-page *,
    .omlam-contact-page *::before,
    .omlam-contact-page *::after {
      box-sizing: border-box;
    }

    .omlam-contact-container {
      width: min(1180px, calc(100% - 40px));
      margin: 0 auto;
    }


    /* =========================================================
       HERO
       ========================================================= */

    .omlam-contact-hero {
        background-image: linear-gradient(179deg, rgb(8 24 20), rgba(18, 55, 45, 0.45), rgba(18, 55, 45, 0.15)), url(../img/contact-hero.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    }
    .omlam-contact-hero{
position: relative;
    min-height: 570px;
    display: flex;
    align-items: center;
    overflow: hidden;
    }

    .omlam-contact-hero::before {
      content: "";
      position: absolute;
      width: 520px;
      height: 520px;
      right: -170px;
      top: -190px;
      border: 1px solid rgba(228,173,54,.32);
      border-radius: 50%;
    }

    .omlam-contact-hero::after {
      content: "";
      position: absolute;
      width: 700px;
      height: 700px;
      right: -300px;
      bottom: -430px;
      border: 1px solid rgba(255,255,255,.09);
      border-radius: 50%;
    }

    .omlam-contact-hero-content {
      position: relative;
      z-index: 2;
      max-width: 720px;
      padding: 100px 0;
    }

    .omlam-contact-eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 10px;

      margin-bottom: 20px;

      color: var(--oc-gold);

      font-size: 12px;
      font-weight: 700;
      letter-spacing: .18em;
      text-transform: uppercase;
    }

    .omlam-contact-eyebrow::before {
      content: "";
      width: 34px;
      height: 1px;
      background: var(--oc-gold);
    }

    .omlam-contact-hero h1 {
     margin: 0;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 65px;
    font-weight: 500;
    line-height: .95;
    letter-spacing: -3px;
    color: #fff;
    }

    .omlam-contact-hero h1 em {
      color: var(--oc-gold);
      font-style: italic;
    }

    .omlam-contact-hero p {
   margin: 26px 0 0;
    color: #fff;
    font-size: 17px;
    line-height: 1.8;
    font-family: 'Poppins';
    }


    /* =========================================================
       CONTACT DETAILS
       ========================================================= */

    .omlam-contact-details {
   padding: 50px 0;
    background: var(--oc-cream);
    font-family: 'Poppins';
    }

    .omlam-contact-details-head {
     margin-bottom: 25px;
    }

    .omlam-contact-details-label {
      display: block;

      margin-bottom: 13px;

      color: var(--oc-green);

      font-size: 12px;
      font-weight: 800;
      letter-spacing: .16em;
      text-transform: uppercase;
    }

    .omlam-contact-details-head h2 {
    margin: 0 0 18px;
    color: #000;
    font-family: "Playfair Display", serif;
    font-size: 50px;
    line-height: 1.05;
    font-weight: 500;
    letter-spacing: -.035em;
    }

    .omlam-contact-details-head h2 em {
      color: var(--oc-gold);
      font-style: italic;
    }

    .omlam-contact-details-head p {
     margin: 0;
    color: #000;
    font-size: 16px;
    line-height: 1.8;
    }

    .omlam-contact-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 22px;
    }

    .omlam-contact-card {
   position: relative;
    padding: 20px 25px;
    background: #fff;
    border: 1px solid rgba(18, 55, 45, .09);
    border-radius: 5px;
    transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
    }

    .omlam-contact-card:hover {
      transform: translateY(-6px);

      border-color: rgba(228,173,54,.45);

      box-shadow: 0 20px 50px rgba(18,55,45,.09);
    }

    .omlam-contact-card-icon {
     width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5px;
    color: var(--oc-green);
    background: var(--oc-green-soft);
    border-radius: 50%;
    font-size: 21px;
    }

    .omlam-contact-card:nth-child(2) .omlam-contact-card-icon {
      color: #9a7117;
      background: rgba(228,173,54,.13);
    }

    .omlam-contact-card h3 {
 margin: 0 0 5px;
    color: #000;
    font-family: 'Poppins';
    font-size: 20px;
    font-weight: 500;
    }

    .omlam-contact-card p {
  margin: 0;
    color: #000;
    font-size: 15px;
    line-height: 1.75;
    }

    .omlam-contact-card a {
     display: inline-block;
    margin-top: 12px;
    color: #000;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    word-break: break-word;
    }

    .omlam-contact-card a:hover {
      color: var(--oc-gold);
    }

    .omlam-contact-note {
      margin-top: 30px;
      padding: 20px 24px;

      background: var(--oc-green-soft);

      border-left: 3px solid var(--oc-gold);
      border-radius: 8px;

      color: var(--oc-green);

      font-size: 14px;
      line-height: 1.7;
    }


    /* =========================================================
       SOCIAL LINKS
       ========================================================= */

    .omlam-contact-social {
      margin-top: 55px;

      display: flex;
      align-items: center;
      gap: 18px;
    }

    .omlam-contact-social-title {
      color: var(--oc-green);

      font-size: 13px;
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .omlam-contact-social-links {
      display: flex;
      gap: 10px;
    }

    .omlam-contact-social-links a {
      width: 42px;
      height: 42px;

      display: flex;
      align-items: center;
      justify-content: center;

      color: var(--oc-green);

      background: #fff;

      border: 1px solid rgba(18,55,45,.12);
      border-radius: 50%;

      text-decoration: none;

      transition: .25s ease;
    }

    .omlam-contact-social-links a:hover {
      color: #fff;
      background: var(--oc-green);
      border-color: var(--oc-green);
      transform: translateY(-3px);
    }


    /* =========================================================
       MAP
       ========================================================= */

    .omlam-contact-map-section {
    padding: 0 0 50px;
    background: var(--oc-cream);
    }

    .omlam-contact-map-heading {
      margin-bottom: 30px;
    }

    .omlam-contact-map-heading span {
      display: block;

      margin-bottom: 10px;

      color: var(--oc-green);

      font-size: 12px;
      font-weight: 800;
      letter-spacing: .16em;
      text-transform: uppercase;
    }

    .omlam-contact-map-heading h2 {
      margin: 0;

      color: var(--oc-green);

      font-family: "Playfair Display", serif;
      font-size: clamp(36px, 4vw, 52px);
      font-weight: 500;
    }

    .omlam-contact-map {
      position: relative;

      width: 100%;
      height: 460px;

      overflow: hidden;

      background: #e8ece6;

      border-radius: 22px;
      box-shadow: 0 18px 55px rgba(18,55,45,.08);
    }

    .omlam-contact-map iframe {
      width: 100%;
      height: 100%;

      display: block;

      border: 0;
    }


    /* =========================================================
       RESPONSIVE
       ========================================================= */

    @media (max-width: 900px) {

      .omlam-contact-grid {
        grid-template-columns: 1fr 1fr;
      }

      .omlam-contact-card:last-child {
        grid-column: 1 / -1;
      }

    }


    @media (max-width: 650px) {

      .omlam-contact-container {
        width: min(100% - 28px, 1180px);
      }

      .omlam-contact-hero {
        min-height: 400px;
      }

      .omlam-contact-hero-content {
        padding: 80px 0;
      }

      .omlam-contact-hero h1 {
        font-size: 54px;
      }

      .omlam-contact-hero p {
        font-size: 15px;
      }

      .omlam-contact-details {
        padding: 75px 0;
      }

      .omlam-contact-grid {
        grid-template-columns: 1fr;
      }

      .omlam-contact-card:last-child {
        grid-column: auto;
      }

      .omlam-contact-social {
        align-items: flex-start;
        flex-direction: column;
      }

      .omlam-contact-map-section {
        padding-bottom: 70px;
      }

      .omlam-contact-map {
        height: 350px;
        border-radius: 15px;
      }

    }




/* =========================================================
   HERO SHLOK MARQUEE
========================================================= */

.hero {
    position: relative;
    overflow: hidden;
}


/* marquee wrapper */
.hero-shlok-marquee {
    position: absolute;
    left: 0;
    bottom: 0;

    width: 100%;
    height: 64px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background: rgba(5, 20, 15, 0.82);

    border-top: 1px solid rgba(228, 173, 54, 0.35);

    backdrop-filter: blur(8px);

    z-index: 10;
}


/* subtle gold glow */
.hero-shlok-marquee::before {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(5, 20, 15, 0.95),
            transparent 12%,
            transparent 88%,
            rgba(5, 20, 15, 0.95)
        );

    z-index: 2;

    pointer-events: none;
}


/* moving track */
.hero-shlok-track {
    display: flex;
    width: max-content;

    animation: heroShlokMove 32s linear infinite;

    will-change: transform;
}


/* individual text */
.hero-shlok-track span {
    display: block;

    white-space: nowrap;

    padding-right: 100px;

    font-family:
        "Noto Serif Devanagari",
        "Nirmala UI",
        serif;

    font-size: 21px;

    line-height: 1;

    font-weight: 500;

    letter-spacing: 0.3px;

    color: #f3ead5;

    text-shadow:
        0 2px 10px rgba(0, 0, 0, 0.45);
}


/* highlighted Sanskrit feel */
.hero-shlok-track span::first-letter {
    color: #e4ad36;
}


/* marquee animation */
@keyframes heroShlokMove {

    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }

}


/* pause on hover */
.hero-shlok-marquee:hover .hero-shlok-track {
    animation-play-state: paused;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 991px) {

    .hero-shlok-marquee {
        height: 58px;
    }

    .hero-shlok-track span {
        font-size: 18px;
        padding-right: 80px;
    }

}


@media (max-width: 576px) {

    .hero-shlok-marquee {
        height: 52px;
    }

    .hero-shlok-track span {
        font-size: 16px;
        padding-right: 60px;
    }

}




.sitehead {

  margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 50px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #000;
}
.sitehead em {

    color: #e7b94f;

    font-style: italic;
}
.h2line{
  color: #000;
    font-family: 'Poppins' !important;
    font-size: 16px !important;
    max-width: 100%;
    letter-spacing: normal !important;
}





@media screen and (max-width: 768px) {
  .whatsapp {
    position: fixed!important;
    right: 70px!important;
    top: 25px!important;
    z-index: 100 !important;
}
.site-header.scrolled .whatsapp{
    position: fixed!important;
    right: 70px!important;
    top: 25px!important;
    z-index: 100 !important;
}
	.brand img {
    width: 60px;
}
.kicker, .eyebrow {
    font-size: 10px;
    font-weight: 400;
    letter-spacing: 3px;
    color: var(--gold);
    margin-bottom: 0;
    background: #cccccc33;
    width: fit-content;
    margin: auto;
    border-radius: 30px;
    padding: 5px 20px 5px 20px;
}
.hero h1 {
        font-size: 22px;
        font-weight: 400;
        line-height: 1.2;
        margin-bottom: 15px;
    }
        .hero-grid {
        grid-template-columns: 1fr;
        padding-top: 0;
    }
    .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 7px 5px;
    border-radius: 99px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.2px;
    transition: 0.25s;
    cursor: pointer;
}
.main-nav a {
        padding: 5px;
    }
        .main-nav {
        gap: 5px;
    }
        .wellness-card p {
        font-size: 15px;
    }
        .wellness-card h3 {
        font-size: 17px;
    }
        .yoga-image-wrap {
        width: 420px;
        height: auto;
    }
        .why-yoga-area {
        height: auto;
    }
        .live-container {
        padding: 0 0;
    }
    .wellness-timeline {
        grid-template-columns: 1fr 1fr;
    }
    .wellness-timeline {
        grid-template-columns: repeat(2, 1fr);
        gap: 0;
        margin-top: 15px;
        padding-top: 0;
    }
    .live-wellness-section {
    position: relative;
    overflow: hidden;
    background: #061c17;
    color: #fff;
    isolation: isolate;
    padding: 50px 0 60px 0;
}
.timeline-item h4 {
    margin: 0;
    font-size: 18px;
    font-weight: 400;
    color: #e8c15d;
}
.weekly-mini-line {
    width: 38px;
    height: 2px;
    margin: 0 auto 5px;
    border-radius: 20px;
}
.weekly-card h3 {
        min-height: auto;
        font-size: 17px;
    }
    .weekly-card {
        min-height: auto;
        padding: 30px 15px 10px;
    }
        .weekly-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 5px;
    }
    .weekly-focus-section {
        padding: 30px 0;
    }
    .wellness-image-frame img {
    width: 100%;
    height: auto;
    display: block;
    object-position: center;
    transition: transform .8s ease;
}
    .wellness-benefits {
        padding: 0 0;
    }
        .wellness-image-area {
        height: auto;
    }
        .wellness-image-frame {
        width: 100%;
        height: auto;
        border-radius: 40% 40% 18% 18%;
    }
        .coach-photo-area {
        min-height: auto;
    }
        .coach-photo-frame {
        width: 100%;
        height: auto;
    }
        .coach-content {
        text-align: left;
    }
        .coach-line {
        margin: 0;
    }
    .coach-photo-frame img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .7s ease;
}
    .coach-photo-bg {
        width: 100%;
        height: auto;
    }
        .experience-badge {
     display: none;
    }
    .expertise-list {
    grid-template-columns: repeat(1, 1fr);
    display: grid;
}
    .coach-expertise {
        padding: 0;
    }
    .how-steps {
     grid-template-columns: 1fr 1fr 1fr;
        gap: 20px;
    }
        .how-step h3 {
        font-size: 14px;
    }
    .how-step {
        padding: 0 5px;
    }
    .step-icon {
        width: 50px;
        height: 50px;
        margin: 0 auto 8px;
        font-size: 17px;
    }
    .step-number {
    margin: 0 auto 6px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 19px;
    font-weight: 500;
    line-height: 1;
    color: #e6b642;
}
    .about-stats {
        grid-template-columns: 1fr 1fr 1fr;
        margin-top: 0;
    }
    .stat-icon{
    	display: none;
    }
    .stat-content strong {
        font-size: 17px;
    }
    .about-stat {
        padding: 8px;
        gap: 5px;
    }
    .about-omlam {
        padding: 25px 0 35px;
    }
    .footer-logo img {
        width: 80px;
    }
        .footer-container {
     width: calc(100% - 35px);
        padding: 25px 0 0;
        grid-template-columns: 1fr;
        gap: 25px;
    }
    .footer-logo {
    display: inline-block;
    margin-bottom: 22px;
    float: left;
    margin-right: 25px;
}
.footer-about {
        font-size: 14px;
    }
    .footer-menu ul {
    margin: 0;
    padding: 0;
    list-style: none;
    column-count: 2;
}
    .footer-bottom-inner {
        width: calc(100% - 35px);
        padding: 10px 0;
        flex-direction: column;
        text-align: center;
        gap: 0;
    }
    .footer-bottom p {
    margin: 0;
    font-size: 10px;
    color: #000;
}
.nav-cta {
    padding: 7px 10px;
    border: 1px solid rgba(240, 196, 109, 0.5);
    border-radius: 5px !important;
    background: var(--gold2) !important;
    color: #000 !important;
    text-transform: uppercase;
    font-size: 16px !important;
    font-weight: 500;
    text-align: center;
    width: fit-content;
    margin-top: 15px;
}

.hero .slidetitle {
 font-size: 45px;
        letter-spacing: -0.9px;
        font-family: 'Playfair Display';
        font-weight: 500;
        text-align: center;
        line-height: 1;
        margin-bottom: 20px;
}
.live-content .sitehead {
    margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 35px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #fff;
}
.about-hero-content h1 ,.classes-hero-content h1,.omlam-weekly-page .weekly-hero h1,.omlam-cpage .omlam-cpage-hero h1,.omlam-faq-page .omlam-faq-hero h1,.omlam-contact-hero h1{
        font-size: 35px;
        letter-spacing: -2px;
    }
        .vision-mission-section, .who-section {
        padding: 30px 0;
    }
    .sitehead {
    margin: 0 0 18px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 35px;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -2px;
    color: #000;
}
.philosophy-statement {
        flex-wrap: wrap;
        gap: 12px 12px;
        font-size: 18px;
    }
    .philosophy-section {
        padding: 40px 0;
    }
   
    .classes-hero-meta {
        flex-direction: row;
        align-items: flex-start;
    }
    .class-card h3 {
    margin: 0 0 10px;
  
    font-family: 'Poppins';
    font-size: 20px;
    font-weight: 400;
}
    .class-card {
        padding: 15px;
    }
    .class-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 5px;
}
.omlam-weekly-page .weekly-meta {
        flex-direction: row;
        align-items: flex-start;
    }
    .omlam-weekly-page .weekly-intro h2, .omlam-weekly-page .weekly-heading h2, .omlam-weekly-page .weekly-routine-heading h2 {
    margin: 0 0 22px;
    color: #000;
    font-family: "Playfair Display", serif;
    font-size: 35px;
    line-height: 1.08;
    font-weight: 500;
}
    .omlam-weekly-page .weekly-intro, .omlam-weekly-page .weekly-focus-section, .omlam-weekly-page .weekly-balance-section, .omlam-weekly-page .weekly-routine {
        padding: 30px 0;
    }
    .omlam-weekly-page .weekly-focus-section .weekly-grid {
        grid-template-columns: 1fr !important;
    }
    .omlam-weekly-page .weekly-focus-section .weekly-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 5px;
}
.omlam-weekly-page .weekly-icon {
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5px;
    border-radius: 15px;
    color: #fff;
    background: var(--green);
    font-size: 22px;
}
.omlam-weekly-page .weekly-card h3 {
    margin: 0 0 1px;
    color: #000;
    font-family: 'Poppins';
    font-size: 21px;
    font-weight: 500;
}
.omlam-weekly-page .weekly-focus-section .weekly-card {
    position: relative;
    padding: 15px;
    background: #fff;
    border: 1px solid rgba(18, 55, 45, .08);
    border-radius: 4px;
    transition: .3s ease;
}
.omlam-cpage .omlam-cpage-expertise {
        padding: 45px 0;
    }
    .omlam-faq-page .omlam-faq-section {
        padding: 25px 0;
    }
    .omlam-contact-details-head h2 {
    margin: 0 0 18px;
    color: #000;
    font-family: "Playfair Display", serif;
    font-size: 35px;
    line-height: 1.05;
    font-weight: 500;
    letter-spacing: -.035em;
}
.omlam-contact-details {
        padding: 30px 0;
    }
    .classes-hero-content {
    max-width: 700px;
    position: relative;
    z-index: 2;
    padding: 0;
}
.omlam-weekly-page .weekly-hero-content {
    max-width: 700px;
    padding: 0;
    position: relative;
    z-index: 2;
}
.omlam-cpage .omlam-cpage-hero-content {
        padding: 0;
    }
    .omlam-faq-page .omlam-faq-hero-content {
        padding: 0;
    }
    .about-inner-hero,.classes-inner-hero,.omlam-weekly-page .weekly-hero,.omlam-cpage .omlam-cpage-hero,.omlam-faq-hero {
        min-height: fit-content;
        padding: 115px 0 30px 0;
    }
}



/* Mobile Enquiry Button */
.mobile-enquiry {
    display: none;
}

@media (max-width: 991px) {

    .nav-wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
    }

    .mobile-enquiry {
        display: block;
       
        margin-right: 10px;
    }

    .mobile-enquiry a {
        display: inline-flex;
        align-items: center;
        gap: 5px;
        padding: 9px 16px;
        background: #e4ad36;
        color: #12372d;
        font-size: 13px;
        font-weight: 700;
        text-decoration: none;
        border-radius: 30px;
        white-space: nowrap;
        transition: all .3s ease;
    }

    .mobile-enquiry a span {
        font-size: 15px;
        line-height: 1;
    }

    .mobile-enquiry a:hover {
        background: #fff;
        color: #12372d;
    }

    .menu-toggle {
        flex-shrink: 0;
    }

    /* Hide desktop enquiry */
    .main-nav .nav-cta {
        display: none;
    }
}






/* =========================================================
   OMLAM MOBILE MENU - SMOOTH LEFT TO RIGHT
========================================================= */

@media (max-width: 991px) {

    /* HAMBURGER */
     .menu-toggle {
      
        position: relative;
        z-index: 10002;
        width: 44px;
        height: 44px;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 6px;
        border: 0;
        background: #17372d;
        cursor: pointer;
        border-radius: 10px;
        color: #fff;
    }

    .menu-toggle span {
        width: 26px;
        height: 2px;
        display: block;

        background: #fff;

        transition:
            transform 0.35s ease,
            opacity 0.25s ease;
    }


    /* HAMBURGER → X */

    .menu-toggle.active span:first-child {
       
    }

    .menu-toggle.active span:last-child {
   
    }


    /* MOBILE NAV */

    .main-nav {
      position: fixed !important;
        top: 0;
        left: 0;
        width: min(85vw, 360px);
        height: 100vh;
        padding: 15px 28px 10px;
        background: #12372d;
        display: flex !important;
        flex-direction: column;
        align-items: flex-start;
        z-index: 10000;
        overflow-y: auto;
        transform: translateX(-100%);
        opacity: 0;
        visibility: hidden;
        transition: transform 0.55s cubic-bezier(0.77, 0, 0.18, 1), opacity 0.3s ease, visibility 0s linear 0.55s;
    }


    /* OPEN - IMPORTANT: JS uses .open */

    .main-nav.open {
        transform: translateX(0);
        opacity: 1;
        visibility: visible;

        transition:
            transform 0.55s cubic-bezier(0.77, 0, 0.18, 1),
            opacity 0.3s ease;
    }


    /* MENU LINKS */

    .main-nav > a {
       width: 100%;
        padding: 5px 0;
        color: #fff !important;
        font-size: 17px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.10);
        transform: translateX(-25px);
        opacity: 0;
        transition: transform 0.4s ease, opacity 0.4s ease;
    }


    /* LINKS WHEN OPEN */

    .main-nav.open > a {
        transform: translateX(0);
        opacity: 1;
    }


    .main-nav.open > a:nth-child(1) {
        transition-delay: .08s;
    }

    .main-nav.open > a:nth-child(2) {
        transition-delay: .13s;
    }

    .main-nav.open > a:nth-child(3) {
        transition-delay: .18s;
    }

    .main-nav.open > a:nth-child(4) {
        transition-delay: .23s;
    }

    .main-nav.open > a:nth-child(5) {
        transition-delay: .28s;
    }

    .main-nav.open > a:nth-child(6) {
        transition-delay: .33s;
    }

    .main-nav.open > a:nth-child(7) {
        transition-delay: .38s;
    }


    /* SOCIAL ICONS */

    .main-nav .nav-social {
        margin-top: 25px;

        transform: translateX(-20px);
        opacity: 0;

        transition:
            transform 0.4s ease 0.4s,
            opacity 0.4s ease 0.4s;
    }

    .main-nav.open .nav-social {
        transform: translateX(0);
        opacity: 1;
    }


    .main-nav .nav-social a {
        width: auto;
        display: inline-flex;

        border: 0;

        margin-right: 18px;
    }


    /* ENQUIRY INSIDE MOBILE MENU */

    .main-nav .nav-cta {
        display: block !important;

        width: auto;

        margin-top: 25px;

        padding: 11px 20px;

        border: 1px solid rgba(240,196,109,0.6);

        border-radius: 30px !important;

        color: #000 !important;
    }


    /* BACKDROP
       JS uses .show
    */

    .mobile-menu-backdrop {
        position: fixed;

        inset: 0;

        background: rgba(0,0,0,0.58);

        backdrop-filter: blur(4px);

        z-index: 9999;

        opacity: 0;
        visibility: hidden;

        transition:
            opacity 0.4s ease,
            visibility 0s linear 0.4s;
    }


    .mobile-menu-backdrop.show {
        opacity: 1;
        visibility: visible;

        transition:
            opacity 0.4s ease;
    }


    /* STOP PAGE SCROLL WHEN MENU OPEN */

    body.menu-open {
        overflow: hidden;
    }

}




.whatsapp {
    position: fixed;
    right: 10px;
    bottom: 70px;
    z-index: 15;
}










/* =========================================
   OMLAM POPUP
========================================= */

.omlam-popup-overlay {
    position: fixed;
    inset: 0;

    z-index: 99999;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 20px;

    background: rgba(10, 28, 21, 0.58);

    backdrop-filter: blur(8px);

    opacity: 0;
    visibility: hidden;

    transition: .35s ease;
}

.omlam-popup-overlay.show {
    opacity: 1;
    visibility: visible;
}


/* POPUP */

.omlam-popup {
    position: relative;

    width: 100%;
    max-width: 460px;

    overflow: hidden;

    border-radius: 24px;

    background: #fffdf8;

    box-shadow:
        0 30px 80px rgba(0, 0, 0, .22);

    transform: translateY(25px) scale(.96);

    transition: .4s ease;
}

.omlam-popup-overlay.show .omlam-popup {
    transform: translateY(0) scale(1);
}


/* TOP DECORATION */

.omlam-popup::before {
    content: "";

    position: absolute;

    top: -100px;
    right: -100px;

    width: 230px;
    height: 230px;

    border-radius: 50%;

    background: #edf3e8;
}


/* CONTENT */

.omlam-popup-content {
    position: relative;

    padding: 38px 38px 32px;

    text-align: center;
}


/* CLOSE */

.omlam-popup-close {
    position: absolute;

    top: 15px;
    right: 15px;

    z-index: 5;

    width: 34px;
    height: 34px;

    display: grid;
    place-items: center;

    border: 0;
    border-radius: 50%;

    background: #f0f2ed;

    color: #173b2e;

    cursor: pointer;

    transition: .25s;
}

.omlam-popup-close:hover {
    background: #173b2e;
    color: #fff;
}


/* ICON */

.omlam-popup-icon {
   

    margin: 0 auto 15px;

    display: grid;
    place-items: center;

    border-radius: 50%;

  
}
.omlam-popup-icon img{
    width: 50px;
}


/* LABEL */

.omlam-popup-label {
    display: block;

    margin-bottom: 10px;

    color: #b67e29;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2px;
}


/* HEADING */

.omlam-popup h3 {
   margin: 0 0 10px;
  color: #000;
  font-family: "Playfair Display", serif;
  font-size: 30px;
  line-height: 1.1;
  font-weight: 500;
}

.omlam-popup h3 em {
    color: #dca64e;
    font-style: italic;
}


/* DESCRIPTION */

.omlam-popup-content > p {
  max-width: 350px;
  margin: 0 auto 22px;
  color: #000;
  font-size: 15px;
  line-height: 1.65;
}


/* INPUT */

.popup-input {
    height: 47px;

    display: flex;
    align-items: center;

    margin-bottom: 9px;

    border: 1px solid #e2e7df;

    border-radius: 10px;

    background: #f7f8f4;

    text-align: left;

    transition: .25s;
}

.popup-input:focus-within {
    border-color: #dca64e;
    background: #fff;
}

.popup-input i {
    width: 42px;

    text-align: center;

    color: #b67e29;

    font-size: 12px;
}

.popup-input input {
 width: 100%;
  height: 100%;
  padding-right: 12px;
  border: 0;
  outline: 0;
  background: transparent;
  color: #000;
  font-family: inherit;
  font-size: 15px;
}

.popup-input input::placeholder {
    color: #9aa29d;
}


/* BUTTON */

.popup-btn {
    width: 100%;
    height: 48px;

    margin-top: 4px;

    border: 0;
    border-radius: 10px;

    background: #173b2e;

    color: #fff;

    font-family: inherit;

    font-size: 13px;
    font-weight: 600;

    cursor: pointer;

    transition: .3s;
}

.popup-btn span {
    margin-left: 8px;

    color: #e4ad36;
}

.popup-btn:hover {
    background: #dca64e;
    color: #173b2e;
}


/* NOTE */

.omlam-popup-content small {
 display: block;
  margin-top: 15px;
  color: #000;
  font-size: 12px;
}


/* MOBILE */

@media (max-width: 575px) {

    .omlam-popup {
        max-width: 360px;

        border-radius: 20px;
    }

    .omlam-popup-content {
        padding: 32px 22px 25px;
    }

    .omlam-popup h2 {
        font-size: 29px;
    }

    .omlam-popup-content > p {
        font-size: 12px;
    }
}