.elementor-kit-5{--e-global-color-primary:#014C52;--e-global-color-secondary:#40B188;--e-global-color-text:#676767;--e-global-color-accent:#F5A147;--e-global-color-f8b0373:#014C52A6;--e-global-color-ef6dd15:#014C52;--e-global-color-5941474:#EBFCF7;--e-global-color-73b7eb2:#B3DFDC;--e-global-color-03e94f5:#5AB6B1;--e-global-color-c0b3295:#40B188;--e-global-color-9290efd:#F5A147;--e-global-color-037bbd5:#FCFBEF;--e-global-color-7d3cb5c:#F9D232;--e-global-color-d4b4d94:#754D24;--e-global-color-416b0c7:#FFFFFF;--e-global-typography-primary-font-family:"Bricolage Grotesque";--e-global-typography-primary-font-weight:800;--e-global-typography-secondary-font-family:"Bricolage Grotesque";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Open Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Bricolage Grotesque";--e-global-typography-accent-font-weight:600;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 h1{font-weight:700;}.elementor-kit-5 h2{font-family:"Bricolage Grotesque", Sans-serif;font-weight:800;}.elementor-kit-5 h3{font-family:"Bricolage Grotesque", Sans-serif;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-primary-font-size:25px;--e-global-typography-primary-line-height:1.3em;--e-global-typography-secondary-font-size:20px;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-text-font-size:17px;--e-global-typography-text-line-height:1.4em;--e-global-typography-accent-font-size:18px;--e-global-typography-accent-line-height:1.2em;}.elementor-kit-5 h2{font-size:25px;line-height:1.3em;}.elementor-kit-5 h3{font-size:20px;line-height:1.3em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}:root { --azul:#4e8dff; }
/* Start custom CSS *//* ============================================================
   EVERGREEN — Global CSS for Elementor Pro
   Paste into: Site Settings → Custom CSS
   Replicates utilities from the Next.js build (globals.css)
   ============================================================ */

:root {
  --eg-teal-deep:   #014C52;
  --eg-teal-medium: #5AB6B1;
  --eg-teal-light:  #B3DFDC;
  --eg-green:       #40B188;
  --eg-orange:      #F5A147;
  --eg-yellow:      #F9D232;
  --eg-brown:       #754D24;
  --eg-cream:       #FCFBEF;
}

/* ---- Gradient clipped text (Hero "Blooms") ---------------- */
.eg-grad-text,
.eg-grad-text .elementor-heading-title {
  background-image: linear-gradient(135deg, #40B188 0%, #F9D232 60%, #F5A147 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  display: inline-block;
}

/* underline accent under the gradient word */
.eg-grad-underline:after {
  content: "";
  display: block;
  height: 4px;
  width: 100%;
  margin-top: 6px;
  border-radius: 999px;
  background: linear-gradient(90deg, #40B188, #F9D232);
}

/* ---- Buttons (match .btn-primary / secondary / outline) --- */
.eg-btn-primary .elementor-button,
.elementor-button.eg-btn-primary {
  background: var(--eg-orange);
  color: #fff;
  border-radius: 999px;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 700;
  letter-spacing: .02em;
  transition: all .3s ease;
  box-shadow: 0 8px 32px rgba(245,161,71,.35);
}
.eg-btn-primary .elementor-button:hover {
  transform: translateY(-2px);
  background: #f0933a;
}

.eg-btn-secondary .elementor-button {
  background: transparent;
  color: #fff;
  border: 2px solid #fff;
  border-radius: 999px;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 600;
  transition: all .3s ease;
}
.eg-btn-secondary .elementor-button:hover {
  background: #fff;
  color: var(--eg-teal-deep);
  transform: translateY(-2px);
}

.eg-btn-outline .elementor-button {
  background: transparent;
  color: var(--eg-teal-deep);
  border: 2px solid var(--eg-teal-deep);
  border-radius: 999px;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 600;
  transition: all .3s ease;
}
.eg-btn-outline .elementor-button:hover {
  background: var(--eg-teal-deep);
  color: #fff;
  transform: translateY(-2px);
}

/* ---- Card hover (services / blog / philosophy) ------------ */
.eg-card {
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 10px 40px rgba(1,76,82,.08);
  transition: transform .3s ease, box-shadow .3s ease;
}
.eg-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 60px rgba(1,76,82,.15);
}

/* eyebrow / section-label */
.eg-eyebrow {
  font-family: "Plus Jakarta Sans", sans-serif;
  font-weight: 600;
  letter-spacing: .15em;
  text-transform: uppercase;
  font-size: 11px;
}

/* ---- Selection + scrollbar (cosmetic parity) -------------- */
::selection { background: var(--eg-teal-medium); color: #fff; }

/* ---- Layout helpers ---------------------------------------- */
.eg-boxed { max-width: 1280px; width: 100%; margin-inline: auto; }

.eg-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.eg-grid-2 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 56px; align-items: center; }
.eg-grid-5 { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.eg-grid-feat { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
@media (max-width: 1024px) {
  .eg-grid-2 { grid-template-columns: 1fr; gap: 40px; }
}
@media (max-width: 767px) {
  .eg-grid-3, .eg-grid-5, .eg-grid-feat { grid-template-columns: 1fr; }
}

/* ---- Typography scale (matches Tailwind text-display-*) ----- */
.eg-eyebrow-row { display:flex; align-items:center; gap:8px; }
.eg-eyebrow-row.center { justify-content:center; }
.eg-rule { width:32px; height:1px; background:currentColor; opacity:.6; display:inline-block; }

.eg-h1 { font-family:"Plus Jakarta Sans",sans-serif; font-weight:800; font-size:clamp(40px,7vw,76px); line-height:1.05; letter-spacing:-.02em; color:#fff; margin:0; }
.eg-h2 { font-family:"Plus Jakarta Sans",sans-serif; font-weight:700; font-size:clamp(28px,4.2vw,46px); line-height:1.12; letter-spacing:-.015em; color:#014C52; margin:0; }
.eg-h2.light { color:#fff; }
.eg-h3 { font-family:"Plus Jakarta Sans",sans-serif; font-weight:700; font-size:20px; color:#014C52; margin:0; }
.eg-lead { font-family:"Open Sans",sans-serif; font-size:clamp(16px,1.4vw,19px); line-height:1.7; color:rgba(1,76,82,.62); }
.eg-lead.light { color:rgba(255,255,255,.65); }
.eg-body { font-family:"Open Sans",sans-serif; font-size:14px; line-height:1.7; color:rgba(1,76,82,.65); }
.eg-body.light { color:rgba(255,255,255,.6); }

/* card paddings */
.eg-card { padding: 32px; }
.eg-pillar { border-radius:24px; padding:34px; border:1px solid rgba(64,177,136,.2);
  background:linear-gradient(135deg, rgba(64,177,136,.10), rgba(90,182,177,.10)); }

/* hero/cta sections must clip the FX layer */
.eg-hero, .eg-cta { position:relative; overflow:hidden; }
/* makes the HTML-widget that hosts the animated layer fill its section */
.elementor-widget.eg-fx-host { position:absolute !important; inset:0; z-index:0; pointer-events:none; }
.elementor-widget.eg-fx-host .elementor-widget-container { height:100%; }

/* ---- Header / nav ------------------------------------------ */
.eg-header { position:sticky; top:0; z-index:50; background:rgba(255,255,255,.95);
  backdrop-filter:blur(10px); box-shadow:0 1px 0 rgba(1,76,82,.06); }
.eg-nav-link { font-family:"Plus Jakarta Sans",sans-serif; font-weight:500; font-size:14px;
  color:rgba(1,76,82,.7); text-decoration:none; padding:8px 12px; border-radius:8px; transition:.2s; }
.eg-nav-link:hover { color:#014C52; background:rgba(1,76,82,.05); }

/* ---- Admissions steps -------------------------------------- */
.eg-step-circle { width:64px; height:64px; border-radius:50%; display:flex;
  align-items:center; justify-content:center; margin:0 auto 18px; color:#fff;
  font-family:"Plus Jakarta Sans",sans-serif; font-weight:700; font-size:18px;
  box-shadow:0 6px 18px rgba(1,76,82,.12); }

/* ---- Badges / featured card -------------------------------- */
.eg-badge { display:inline-flex; align-items:center; gap:6px; background:#F5A147; color:#fff;
  font-family:"Plus Jakarta Sans",sans-serif; font-weight:700; font-size:10px;
  letter-spacing:.08em; text-transform:uppercase; padding:6px 14px; border-radius:999px;
  box-shadow:0 4px 12px rgba(245,161,71,.35); }
.eg-featured { background:#014C52 !important; color:#fff; box-shadow:0 16px 48px rgba(1,76,82,.25); }
.eg-featured .eg-h3, .eg-featured .eg-body { color:#fff !important; }

/* ---- Blog thumbnails / category ---------------------------- */
.eg-thumb { height:176px; border-radius:24px 24px 0 0; display:flex; align-items:center;
  justify-content:center; }
.eg-thumb-1 { background:linear-gradient(135deg, rgba(64,177,136,.25), rgba(90,182,177,.12)); }
.eg-thumb-2 { background:linear-gradient(135deg, rgba(90,182,177,.25), rgba(1,76,82,.12)); }
.eg-thumb-3 { background:linear-gradient(135deg, rgba(245,161,71,.18), rgba(249,210,50,.12)); }
.eg-cat { font-family:"Plus Jakarta Sans",sans-serif; font-weight:700; font-size:10px;
  letter-spacing:.12em; text-transform:uppercase; padding:5px 12px; border-radius:999px;
  background:rgba(64,177,136,.12); color:#40B188; }

/* ---- Quote card (director) --------------------------------- */
.eg-quote-card { background:#fff; border-radius:18px; padding:20px; max-width:220px;
  box-shadow:0 10px 40px rgba(1,76,82,.12); font-family:"Plus Jakarta Sans",sans-serif;
  font-weight:500; font-size:13px; color:#014C52; }

/* ---- Footer ------------------------------------------------- */
.eg-footer { background:#014C52; color:#fff; }
.eg-footer a { color:rgba(255,255,255,.45); text-decoration:none; transition:.2s; font-size:14px; }
.eg-footer a:hover { color:#fff; }
.eg-footer-h { font-family:"Plus Jakarta Sans",sans-serif; font-weight:600; font-size:12px;
  letter-spacing:.14em; text-transform:uppercase; color:rgba(255,255,255,.7); }

/* ---- Misc widget overrides --------------------------------- */
.eg-role .elementor-heading-title { color:#40B188; font-size:14px; font-weight:600;
  letter-spacing:.02em; margin-top:4px; }

/* CTA dark pill button */
.eg-btn-cta-dark .elementor-button {
  background:#014C52; color:#fff; border-radius:999px;
  font-family:"Plus Jakarta Sans",sans-serif; font-weight:700;
  box-shadow:0 4px 20px rgba(1,76,82,.3); transition:all .3s ease;
}
.eg-btn-cta-dark .elementor-button:hover { background:#013A40; transform:translateY(-2px); }

/* why icon-list */
.eg-why-list .elementor-icon-list-item { margin-bottom:18px; align-items:flex-start; }
.eg-why-list .elementor-icon-list-text { color:rgba(255,255,255,.62); font-family:"Open Sans",sans-serif;
  font-size:14px; line-height:1.6; }
.eg-why-list .elementor-icon-list-text b { color:#fff; }

/* ---- Reduced motion ---------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}/* End custom CSS */