.elementor-543 .elementor-element.elementor-element-93dce42 > .elementor-container{min-height:480px;}.elementor-543 .elementor-element.elementor-element-93dce42 > .elementor-background-overlay{background-color:#A7A7A7;opacity:0.4;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-543 .elementor-element.elementor-element-93dce42{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:-2%;margin-bottom:0%;}.elementor-543 .elementor-element.elementor-element-93dce42 > .elementor-shape-bottom .elementor-shape-fill{fill:#F4EFF7;}.elementor-543 .elementor-element.elementor-element-93dce42 > .elementor-shape-bottom svg{width:calc(100% + 1.3px);height:44px;transform:translateX(-50%) rotateY(180deg);}.elementor-543 .elementor-element.elementor-element-6b4f4bc.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-543 .elementor-element.elementor-element-0544774{text-align:center;}.elementor-543 .elementor-element.elementor-element-0544774 .elementor-heading-title{color:#4A2C68;font-family:"Roboto", Sans-serif;font-size:64px;font-weight:600;}.elementor-543 .elementor-element.elementor-element-6d4f99f{font-family:"Roboto", Sans-serif;font-size:18px;font-weight:400;}.elementor-543 .elementor-element.elementor-element-6d4f99f > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-543 .elementor-element.elementor-element-b2f0d7f > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-543 .elementor-element.elementor-element-a26da2a.elementor-column > .elementor-widget-wrap{justify-content:flex-end;}.elementor-543 .elementor-element.elementor-element-a26da2a > .elementor-element-populated{padding:0px 20px 0px 0px;}.elementor-543 .elementor-element.elementor-element-b2b7fa2 .elementor-button{fill:var( --e-global-color-7ee93b2 );color:var( --e-global-color-7ee93b2 );background-color:var( --e-global-color-primary );}.elementor-543 .elementor-element.elementor-element-b2b7fa2{width:auto;max-width:auto;}.elementor-543 .elementor-element.elementor-element-e738096.elementor-column > .elementor-widget-wrap{justify-content:flex-start;}.elementor-543 .elementor-element.elementor-element-e738096 > .elementor-element-populated{padding:0px 0px 0px 20px;}.elementor-543 .elementor-element.elementor-element-144f041 .elementor-button{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );background-color:#61CE7000;}.elementor-543 .elementor-element.elementor-element-144f041{width:auto;max-width:auto;}.elementor-543 .elementor-element.elementor-element-a8dbb2d:not(.elementor-motion-effects-element-type-background), .elementor-543 .elementor-element.elementor-element-a8dbb2d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F4EFF7;}.elementor-543 .elementor-element.elementor-element-a8dbb2d{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-543 .elementor-element.elementor-element-a8dbb2d > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-543 .elementor-element.elementor-element-149f3ca .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:42px;font-weight:600;}.elementor-543 .elementor-element.elementor-element-8166383{font-family:"Roboto", Sans-serif;font-weight:400;}.elementor-543 .elementor-element.elementor-element-c5fa69c > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-bottom:0px;}.elementor-543 .elementor-element.elementor-element-c5fa69c > .elementor-element-populated{padding:28px 28px 28px 28px;}.elementor-543 .elementor-element.elementor-element-c05beaa{text-align:left;}.elementor-543 .elementor-element.elementor-element-c05beaa .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:24px;font-weight:600;}.elementor-543 .elementor-element.elementor-element-7196ffb{font-family:"Roboto", Sans-serif;font-weight:400;}.elementor-543 .elementor-element.elementor-element-e1550a4 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-bottom:0px;}.elementor-543 .elementor-element.elementor-element-e1550a4 > .elementor-element-populated{padding:28px 28px 28px 28px;}.elementor-543 .elementor-element.elementor-element-62809d8{text-align:left;}.elementor-543 .elementor-element.elementor-element-62809d8 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:24px;font-weight:600;}.elementor-543 .elementor-element.elementor-element-076cc64{font-family:"Roboto", Sans-serif;font-weight:400;}.elementor-543 .elementor-element.elementor-element-2aab1e6 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-bottom:0px;}.elementor-543 .elementor-element.elementor-element-2aab1e6 > .elementor-element-populated{padding:28px 28px 28px 28px;}.elementor-543 .elementor-element.elementor-element-4add821{text-align:left;}.elementor-543 .elementor-element.elementor-element-4add821 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:24px;font-weight:600;}.elementor-543 .elementor-element.elementor-element-fff765b{font-family:"Roboto", Sans-serif;font-weight:400;}.elementor-543 .elementor-element.elementor-element-d6ad98e .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:600;}@media(max-width:767px){.elementor-543 .elementor-element.elementor-element-0544774 .elementor-heading-title{font-size:36px;}.elementor-543 .elementor-element.elementor-element-6d4f99f{font-size:16px;}.elementor-543 .elementor-element.elementor-element-a26da2a > .elementor-element-populated{margin:0px 0px 10px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-543 .elementor-element.elementor-element-e738096 > .elementor-element-populated{margin:10px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-543 .elementor-element.elementor-element-1869e48 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-bottom:20px;}.elementor-543 .elementor-element.elementor-element-149f3ca .elementor-heading-title{font-size:36px;}.elementor-543 .elementor-element.elementor-element-8166383{font-size:16px;}.elementor-543 .elementor-element.elementor-element-7196ffb{font-size:16px;}.elementor-543 .elementor-element.elementor-element-076cc64{font-size:16px;}.elementor-543 .elementor-element.elementor-element-fff765b{font-size:16px;}.elementor-543 .elementor-element.elementor-element-d6ad98e .elementor-heading-title{font-size:34px;}}@media(min-width:768px){.elementor-543 .elementor-element.elementor-element-a26da2a{width:50%;}.elementor-543 .elementor-element.elementor-element-e738096{width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-543 .elementor-element.elementor-element-c5fa69c{width:32%;}.elementor-543 .elementor-element.elementor-element-e1550a4{width:30%;}.elementor-543 .elementor-element.elementor-element-2aab1e6{width:29%;}}/* Start custom CSS for section, class: .elementor-element-93dce42 *//* =========================================================
   BAPO – Frosted Glass Hero (Video BG)
   ========================================================= */

/* --- Tokens --- */
:root{
  --bapo-ink: #2b2340;
  --bapo-ink-2: rgba(43, 35, 64, 0.78);
  --bapo-white: #ffffff;

  --bapo-primary: #4A2C68;
  --bapo-primary-2: #9D7ABC;

  --bapo-glass: rgba(255, 255, 255, 0.18);
  --bapo-glass-2: rgba(255, 255, 255, 0.10);
  --bapo-stroke: rgba(255, 255, 255, 0.28);

  --bapo-shadow: 0 20px 60px rgba(21, 10, 35, 0.18);
  --bapo-shadow-soft: 0 12px 30px rgba(21, 10, 35, 0.12);

  --bapo-radius: 26px;
  --bapo-radius-sm: 18px;

  --bapo-maxw: 1280px;
}

/* --- HERO SECTION --- */
.bapo-hero2 {
  position: relative;
  /* Use svh to handle mobile browser bars better */
  min-height: clamp(520px, 70vh, 760px); 
  display: flex;
  align-items: center;
  justify-content: center; /* Center content horizontally */
  overflow: hidden;
  /* Ensure video bg stays behind (assuming you have a video element) */
  z-index: 1; 
}

/* Helps with safe spacing inside the section */
.bapo-hero__overlay {
  position: relative;
  width: 100%;
  padding: clamp(36px, 6vw, 80px) 20px; /* Added side padding for safety */
  display: flex;
  justify-content: center;
  z-index: 2;
}

/* Content column */
.bapo-hero__col {
  position: relative;
  max-width: var(--bapo-maxw);
  width: 100%;
}

/* --- GLASS PANEL --- */
.bapo-hero__glass {
  position: relative;
  padding: clamp(24px, 4vw, 48px); /* Increased padding slightly for looks */
  border-radius: var(--bapo-radius);
  background: linear-gradient(135deg, var(--bapo-glass), var(--bapo-glass-2));
  border: 1px solid var(--bapo-stroke);
  box-shadow: var(--bapo-shadow);
  backdrop-filter: blur(16px) saturate(140%);
  -webkit-backdrop-filter: blur(16px) saturate(140%);
  
  /* Layout for content inside glass */
  display: flex;
  flex-direction: column;
  gap: 24px; 
}

/* Soft highlight edge */
.bapo-hero__glass::after {
  content:"";
  position:absolute;
  inset:0;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255,255,255,0.30), transparent 55%);
  pointer-events:none;
  mix-blend-mode: overlay;
  opacity: 0.55;
}

/* --- TYPOGRAPHY --- */
.bapo-hero__title {
  color: rgba(255,255,255,0.96);
  letter-spacing: -0.02em;
  line-height: 1.1;
  font-weight: 800;
  font-size: clamp(32px, 5vw, 64px); /* Adjusted min size for very small phones */
  margin: 0;
  text-shadow: 0 8px 24px rgba(0,0,0,0.22);
}

.bapo-hero__lead {
  color: rgba(255,255,255,0.88);
  line-height: 1.6;
  font-size: clamp(16px, 1.25vw, 18px);
  max-width: 88%;
  margin: 0;
}

/* --- ACTIONS CONTAINER (New) --- */
/* This controls the layout of the buttons group */
.bapo-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 8px;
}

/* --- BUTTONS --- */
/* Normalize Elementor buttons inside */
.bapo-btn2 .elementor-button {
  border-radius: 14px;
  padding: 14px 48px; /* Slightly larger touch target */
  font-weight: 700;
  letter-spacing: -0.01em;
  transition: all .2s ease;
  box-shadow: var(--bapo-shadow-soft);
  font-size: 16px;
}

/* PRIMARY */
.bapo-btn--primary .elementor-button {
  background: linear-gradient(135deg, rgba(74,44,104,0.95), rgba(157,122,188,0.75));
  color: #fff;
  border: 1px solid rgba(255,255,255,0.14);
}

.bapo-btn--primary .elementor-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 38px rgba(21,10,35,0.22);
}

/* GHOST / SECONDARY */
.bapo-btn--ghost .elementor-button {
  background: rgba(255,255,255,0.10);
  color: rgba(255,255,255,0.92);
  border: 1px solid rgba(255,255,255,0.22);
  box-shadow: none;
  white-space: nowrap;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
 
}

.bapo-btn--ghost .elementor-button:hover {
  background: rgba(255,255,255,0.16);
  transform: translateY(-2px);
}

/* --- MOBILE TUNING --- */
@media (max-width: 767px) {
  
  
  .bapo-hero2 {
    min-height: 100svh;
    align-items: center;
    max-width: 100%;
  }

  
  .bapo-hero__overlay {
    padding: 20px; 
  }

  
  .bapo-hero__glass {
    padding: 24px;
    border-radius: var(--bapo-radius-sm);
    gap: 20px;
  }

  .bapo-hero__title {
    font-size: 32px; 
  }

  
  .bapo-hero__actions {
    flex-direction: column;
    width: 100%;
    gap: 12px;
  }


  .bapo-btn2, 
  .bapo-btn2 .elementor-button {
      
    width: 100% !important;
    display: flex;
    justify-content: center !important;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-a8dbb2d */:root {
    --primary-dark: #4A2c68;
    --primary-light: #9d7abc;
    --accent: #d8b4e2;
    --bg-body: #fdfbfc;
    --bg-soft: #f4eff7;      /* section background */
    --bg-surface: #fbf8ff;   /* card background */
    --text-main: #2d2d2d;
    --text-light: #666666;
    --shadow-soft: 0 10px 30px -10px rgba(74, 44, 104, 0.1);
    --transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
/* ---------------------------------------------------
   3-BOX INFO SECTION (BAPO)
   Section has class: features
   Header inner section: section-header
   Cards inner section: feature-grid
   Card columns: feature-card
--------------------------------------------------- */

/* Section background + container width */
.features {
    padding: 6rem 0;
    background: var(--bg-soft);
}

.features > .elementor-container {
    max-width: 1140px;
    margin: 0 auto;
}

/* Centered header */

.section-header .elementor-heading-title {
    margin-bottom: 1rem;
    color: var(--primary-dark);
}

.section-header .elementor-widget-text-editor {
    max-width: 640px;
    margin: 0 auto;
    color: var(--text-light);
}

/* Grid for the 3 cards */
/* Header text in the main column */
.features .elementor-widget-heading,
.features .elementor-widget-text-editor {
    text-align: center;
}

.features .elementor-widget-text-editor {
    max-width: 640px;
    margin: 0 auto 3.5rem auto;
    color: var(--text-light);
}


/* Inner section that holds the 3 columns (it has class section-header) */
.section-header > .elementor-container {
    
    gap: 2rem;
}


/* Card styling – apply to the COLUMN with class feature-card */
.feature-card > .elementor-widget-wrap {
    background: var(--bg-surface);
    padding: 2.5rem;
    border-radius: 22px;
    box-shadow: var(--shadow-soft);
    border: 1px solid transparent;
    transition: var(--transition);
    height: 100%;
}

.feature-card:hover > .elementor-widget-wrap {
    border-color: var(--accent);
    transform: translateY(-10px);
}

/* Icon at the top (HTML widget with <div class="icon-box">🧠</div>) */
.icon-box {
    width: 60px;
    height: 60px;
    background: rgba(0, 0, 0, 0.06);

    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
}

/* Titles & text inside cards */
.feature-card h3.elementor-heading-title {
    margin-bottom: 1rem;
    font-size: 1.4rem;
    color: var(--primary-dark);
}

.feature-card .elementor-widget-text-editor {
    color: var(--text-light);
    font-size: 0.95rem;
    margin: 0;
}

/* Responsive tweaks */
@media (max-width: 1024px) {
    .feature-grid > .elementor-container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .features {
        padding: 4rem 0;
    }

    .feature-grid > .elementor-container {
        grid-template-columns: 1fr;
    }

    .section-header {
        margin-bottom: 2.5rem;
    }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-0fbcff6 *//* ---------------------------------------------------
   CTA SECTION (Membership)
--------------------------------------------------- */

.membership {
    padding: 6rem 0 ;
    text-align: center;
}

.membership > .elementor-container {
    max-width: 900px;
    margin: 0 auto;
}

/* Gradient card */
.cta-column > .elementor-widget-wrap {
    background: linear-gradient(135deg, var(--primary-dark), #6a4c8c) !important;
    color: #ffffff !important;
    padding: 3.5rem 3rem !important;
    border-radius: 30px !important;
    position: relative !important;
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.18) !important;
}

/* Soft light circle in the corner */
.cta-column > .elementor-widget-wrap::before {
    content: '';
    position: absolute;
    width: 280px;
    height: 280px;
    background: rgba(255, 255, 255, 0.12);
    border-radius: 50%;
    top: -80px;
    left: -80px;
}

/* Heading & text inside CTA */
.cta-column .elementor-heading-title {
    color: #ffffff !important;
    margin-bottom: 1rem !important;
    font-size: 2.1rem !important;
}

.cta-column .elementor-widget-text-editor {
    color: rgba(255, 255, 255, 0.85) !important;
    max-width: 520px !important;
    margin: 0 auto 2rem auto !important;
}

/* CTA button (uses existing .btn styles) */
.btn-cta .elementor-button {
    background: #ffffff !important;
    color: var(--primary-dark) !important;
    border-radius: 50px !important;
    padding: 12px 32px !important;
    border: none !important;
}

.btn-cta .elementor-button:hover {
    background: rgba(255, 255, 255, 0.9) !important;
    color: var(--primary-dark) !important;
    transform: translateY(-3px) !important;
}

/* Responsive */
@media (max-width: 768px) {
    .cta-column > .elementor-widget-wrap {
        padding: 2.5rem 2rem;
    }

    .cta-column .elementor-heading-title {
        font-size: 30px !important;
    }
}/* End custom CSS */