:root{
  --bg:#f3f8fb;
  --surface:#ffffff;
  --ink:#2f3d46;
  --muted:#62727b;
  --line:#cfdde6;
  --primary:#5f9fcb;
  --primary-dark:#4d8db8;
  --secondary:#97c9ac;
  --secondary-dark:#82b998;
  --accent:#e9b99c;
  --lavender:#d9d6f3;
  --lavender-dark:#c5c1ea;
  --sand:#e2eef7;
  --danger:#b3261e;
  --success:#2e7d32;
  --shadow:0 10px 30px rgba(70,96,116,.08);
  --radius:24px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:linear-gradient(180deg,#eef6fb 0%, #f9fcfe 22%, #ffffff 48%, #f8fbfd 74%, #f3f8fb 100%);line-height:1.55}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.container{max-width:var(--max);margin:0 auto;padding:0 20px}
.topbar{background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:40;backdrop-filter:blur(8px)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:88px;padding:12px 0}
.brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;text-decoration:none;min-width:220px}
.brand img{width:188px;height:auto}
.tagline{font-size:.88rem;color:#4f5f67;font-weight:600;letter-spacing:.01em;line-height:1.2}
.nav-links{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:flex-end}
.nav-links a{text-decoration:none;padding: 8px 10px;border-radius: 995px;color:var(--ink)}
.nav-links a:hover{background:var(--sand);color:#27506a}
.hero{padding:42px 0 34px}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:28px;align-items:stretch}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.hero-copy.card{padding:34px}
.hero h1{font-size:clamp(2.2rem,4.1vw,3.6rem);line-height:1.03;margin:.25em 0 .4em}
.kicker{display:inline-block;padding: 6px 10px;border-radius: 995px;background:#e8f3fb;color:#2e5a78;font-size:.92rem;font-weight:700}
.lead{font-size:1.08rem;color:var(--muted)}
.hero-photo{overflow:hidden;min-height:460px;position:relative}
.hero-photo img{width:100%;height:100%;object-fit:cover}
.hero-overlay{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius: 16px;padding:16px}
.quick-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:18px 0 10px}
.fact{padding:18px}
.fact strong{font-size:1.1rem;display:block;margin-bottom:4px}
.fact span{color:var(--muted)}
.section{padding:34px 0}
.section-soft{background:linear-gradient(180deg,#f6fbfe 0%,#eaf4fa 100%)}
.section h2{font-size:clamp(1.6rem,2.8vw,2.4rem);margin:0 0 8px}
.section p.section-intro{color:var(--muted);margin:0 0 18px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.panel{padding:24px}
.panel h3{margin:0 0 10px}
.badge-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.badge{padding: 6px 8px;border-radius: 995px;background:#eef7fc;color:#3d5f73;font-size:.92rem}
.cta-strip{margin:24px 0 4px;padding:24px;background:linear-gradient(90deg,#eef7fc 0%,#f6fbf8 55%,#fff8f3 100%);border:1px solid var(--line);border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:16px}
.button-row{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:none;cursor:pointer;padding: 11px 14px;border-radius: 995px;font-weight:700}
.btn-primary{background:var(--primary);color:#fff}
.btn-primary:hover{background:var(--primary-dark)}
.btn-secondary{background:var(--secondary);color:#24483a}
.btn-secondary:hover{background:var(--secondary-dark)}
.btn-upload{background:var(--lavender);color:#231833}
.btn-upload:hover{background:var(--lavender-dark)}
.btn-ghost{background:#fff;border:1px solid var(--line)}
.btn-block{width:100%}
.help{color:var(--muted);font-size:.95rem}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.feature-card{overflow:hidden}
.feature-card img{width:100%;aspect-ratio:16/10;object-fit:cover}
.feature-copy{padding: 16px 16px 22px}
.feature-copy h3{margin:0 0 8px}
.forms-wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
.form-card{padding:24px}
.field,.group{margin:0 0 14px}
.inline{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
label{display:block;font-weight:700;margin:0 0 8px}
input,select,textarea{width:100%;padding: 11px 10px;border:1px solid #d4c4b5;border-radius: 12px;background:#fff;font:inherit;color:var(--ink);outline:none}
textarea{min-height:130px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(111,174,217,.16)}
.error{color:var(--danger);font-size:.88rem;min-height:1.1em;margin-top:6px}
.invalid input,.invalid select,.invalid textarea{border-color:var(--danger)}
.valid input,.valid select,.valid textarea{border-color:#8bbf8e}
.required-note{display:block;color:var(--muted);margin:-2px 0 14px}
.success-box{display:none;margin-top:14px;padding: 10px 10px;border-radius: 12px;background:#ebf7ec;color:#1f5a23;border:1px solid #b8dfbb}
.notice{padding: 12px 12px;background:#fff8f1;border:1px solid #f1d9c8;border-radius: 12px}
.doc-list{display:grid;gap:12px}
.doc-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding: 12px 12px;border:1px solid var(--line);border-radius: 14px;text-decoration:none;background:#fff}
.doc-item span{color:var(--muted);text-align:right}
.compact-docs .doc-item strong{max-width:70%}
.location-card{display:grid;grid-template-columns:.95fr 1.05fr;gap:18px}
.location-card img{width:100%;height:100%;min-height:100%;object-fit:cover}
.trust-logos{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:18px}
.trust-logos img{height:74px;width:auto;object-fit:contain}
.trust-copy{max-width:360px}
.trust-logos-home img{height:64px}
.trust-logos-contact img{height:56px}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.gallery-item{border:1px solid var(--line);border-radius: 18px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}
.gallery-image img{width:100%;aspect-ratio:4/3;object-fit:cover}
.gallery-caption{padding: 12px 12px}

.gallery-story{display:grid;gap:34px;margin-top:28px}
.gallery-section-block{display:grid;gap:14px}
.gallery-section-copy{max-width:760px;color:var(--muted);margin:0}
.gallery-grid-story{grid-template-columns:repeat(3,1fr)}
.gallery-grid-story .gallery-item{height:100%}
.schedule{width:100%;border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--line);border-radius: 20px;background:#fff;box-shadow:var(--shadow)}
.schedule th,.schedule td{padding:16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.schedule th{background:#eef7fc;color:#2d5874}
.schedule tr:last-child td{border-bottom:none}
.quote{font-size:1.04rem}
.quote small{display:block;color:var(--muted);margin-top:14px}
.faq-item{padding:14px 0;border-bottom:1px solid var(--line)}
.faq-item h3{margin:0 0 8px}
.simple-list{margin:0;padding-left:18px}
.simple-list li{margin:0 0 12px}
.footer{padding:28px 0 36px;border-top:1px solid var(--line);margin-top:28px;background:linear-gradient(180deg,#f6fbfe 0%,#edf6fb 100%)}
.utility{display:flex;align-items:center;justify-content:space-between;gap:20px}
.footer-brand{display:flex;flex-direction:column;gap:8px}
.footer-logo{width:150px}
.footer-tagline{font-size:.84rem;color:var(--muted);font-weight:600}
.footer-contact{color:var(--muted)}
@media (max-width:1024px){
  .hero-grid,.forms-wrap,.location-card,.feature-grid,.gallery-grid,.quick-facts,.grid-3,.grid-2{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:760px){
  .nav{align-items:flex-start;flex-direction:column}
  .brand{align-items:center;text-align:center;width:100%;min-width:0}
  .nav-links{justify-content:flex-start}
  .hero-grid,.forms-wrap,.location-card,.gallery-grid,.feature-grid,.quick-facts,.grid-3,.grid-2,.inline{grid-template-columns:1fr}
  .hero-photo{min-height:320px}
  .cta-strip,.utility{flex-direction:column;align-items:flex-start}
  .trust-logos img,.trust-logos-home img,.trust-logos-contact img{height:48px}
  .brand img{width:170px}
}

.more-card{display:block;text-decoration:none;transition:transform .22s ease, box-shadow .22s ease, filter .22s ease}
.more-card:hover,.more-card:focus-visible{transform:translateY(-6px);box-shadow:0 18px 40px rgba(65,72,81,.18);filter:saturate(1.05)}
.more-card h3{margin:12px 0 8px;transition:color .22s ease,text-decoration-color .22s ease}
.more-card:hover h3,.more-card:focus-visible h3{color:#0c4f86;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.more-card p,.more-card .kicker{transition:color .22s ease}
.more-card:hover p,.more-card:focus-visible p{color:#23485f}
.more-card:hover .kicker,.more-card:focus-visible .kicker{color:#0c4f86}


.footer-social a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.footer-copy{margin-top:16px;padding-top:12px;font-size: 13px;color:var(--muted);border-top:1px solid var(--line)}


.hero-copy.card,
.fact,
.feature-card,
.gallery-item,
.doc-item,
.schedule,
.form-card,
.location-card,
.notice{
  box-shadow:0 10px 28px rgba(70,96,116,.06);
}

.more-card .panel,
.panel{
  background:linear-gradient(180deg,#ffffff 0%, #fbfdff 100%);
  border-radius: 18px;
}

.more-card .kicker{
  background:#edf7fd;
}

.btn-primary,
.btn-secondary,
.btn-upload{
  box-shadow:0 8px 18px rgba(70,96,116,.12);
}

.btn-primary:hover,
.btn-secondary:hover,
.btn-upload:hover{
  transform:translateY(-1px);
}

.footer-social a{
  color:#3d6178;
  transition:transform .18s ease, color .18s ease;
}

.footer-social a:hover{
  color:var(--primary-dark);
  transform:translateY(-2px);
}


.nav{
  background:linear-gradient(90deg,#ffffff 0%, #f3f9fd 55%, #eef7fc 100%);
  border-radius: 14px;
  padding: 12px 14px;
  margin:10px auto;
  box-shadow:0 8px 22px rgba(70,96,116,.08);
}

.topbar{
  background:linear-gradient(180deg,rgba(255,255,255,.98) 0%, rgba(243,249,253,.96) 100%);
}

.nav-links a{
  background:rgba(111,174,217,.08);
  border:1px solid transparent;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}

.nav-links a:hover{
  background:#dfeefa;
  border-color:#c8dfef;
  color:#244f69;
  transform:translateY(-1px);
}

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

.nav-social a{
  width:34px;
  height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius: 995px;
  background:#eaf4fb;
  color:#477392;
  border:1px solid #d4e5f0;
  text-decoration:none;
  transition:transform .18s ease, background .18s ease, color .18s ease, border-color .18s ease;
}

.nav-social a:hover{
  transform:translateY(-1px);
  background:#dceef9;
  color:#2b5875;
  border-color:#bfd8e8;
}

@media (max-width:760px){
  .nav{
    padding:14px;
  }
  .nav-social{
    margin-left:0;
    margin-top:6px;
  }
}


/* colorful nav pills */
.nav-links a:nth-child(1){background:#cfe6f7;}
.nav-links a:nth-child(2){background:#d8eddc;}
.nav-links a:nth-child(3){background:#fbe7cc;}
.nav-links a:nth-child(4){background:#e8d8ee;}
.nav-links a:nth-child(5){background:#cfeef3;}
.nav-links a:nth-child(6){background:#f5d3e0;}

.nav-links a:nth-child(1):hover{background:#bddcf3;}
.nav-links a:nth-child(2):hover{background:#c4e5cb;}
.nav-links a:nth-child(3):hover{background:#f6d9ae;}
.nav-links a:nth-child(4):hover{background:#dcc8e7;}
.nav-links a:nth-child(5):hover{background:#bee4ea;}
.nav-links a:nth-child(6):hover{background:#edc1d5;}


/* colorful form packets */
.doc-list .doc-item:nth-child(1){background:#cfe6f7;}
.doc-list .doc-item:nth-child(2){background:#d8eddc;}
.doc-list .doc-item:nth-child(3){background:#fbe7cc;}
.doc-list .doc-item:nth-child(4){background:#e8d8ee;}
.doc-list .doc-item:nth-child(5){background:#cfeef3;}
.doc-list .doc-item:nth-child(6){background:#f5d3e0;}
.doc-list .doc-item:nth-child(7){background:#e4f0d8;}
.doc-list .doc-item:nth-child(8){background:#dfd7ef;}
.doc-list .doc-item:nth-child(9){background:#f6f1c9;}
.doc-list .doc-item:nth-child(10){background:#cfe8e5;}

.doc-list .doc-item:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 22px rgba(70,96,116,.12);
}


/* Open Enrollment highlight */
a[href="enrollment.html"].btn-ghost{
  background:linear-gradient(90deg,#cfe6f7,#d8eddc,#fbe7cc);
  border:1px solid #d9e6ef;
  color:#2f4f63;
}

a[href="enrollment.html"].btn-ghost:hover{
  background:linear-gradient(90deg,#bddcf3,#c4e5cb,#f6d9ae);
  transform:translateY(-1px);
}

/* optional section emphasis */
.cta-strip .btn-ghost{
  box-shadow:0 8px 18px rgba(70,96,116,.12);
}


/* Gallery visit section highlight */
.gallery-visit,
.gallery-cta,
.cta-visit{
  background:linear-gradient(90deg,#cfe6f7,#d8eddc,#fbe7cc);
  border:1px solid #d9e6ef;
  border-radius: 20px;
  padding:22px;
  box-shadow:0 10px 22px rgba(70,96,116,.08);
}

.gallery-visit .btn,
.gallery-cta .btn,
.cta-visit .btn{
  box-shadow:0 8px 18px rgba(70,96,116,.12);
}

.gallery-visit .btn:hover,
.gallery-cta .btn:hover,
.cta-visit .btn:hover{
  transform:translateY(-1px);
}


/* gallery page bottom visit details highlight */
.gallery-bottom-cta{
  background:linear-gradient(90deg,#eef7fc 0%, #f4fbf6 50%, #fff8f1 100%);
  border:1px solid #d9e6ef;
  box-shadow:0 12px 24px rgba(70,96,116,.08);
}

.gallery-bottom-cta .gallery-visit-btn{
  background:linear-gradient(90deg,#cfe6f7,#d8eddc,#fbe7cc);
  border:1px solid #d9e6ef;
  color:#2f4f63;
  box-shadow:0 8px 18px rgba(70,96,116,.12);
}

.gallery-bottom-cta .gallery-visit-btn:hover{
  background:linear-gradient(90deg,#bddcf3,#c4e5cb,#f6d9ae);
  transform:translateY(-1px);
}


/* more page cards color treatment */
.more-card:nth-child(1).panel{
  background:linear-gradient(180deg,#cfe6f7 0%,#ffffff 100%);
}

.more-card:nth-child(2).panel{
  background:linear-gradient(180deg,#d8eddc 0%,#ffffff 100%);
}

.more-card:nth-child(3).panel{
  background:linear-gradient(180deg,#fbe7cc 0%,#ffffff 100%);
}

.more-card:nth-child(4).panel{
  background:linear-gradient(180deg,#e8d8ee 0%,#ffffff 100%);
}

.more-card:nth-child(5).panel{
  background:linear-gradient(180deg,#d8eefb 0%,#ffffff 100%);
}

.more-card:nth-child(6).panel{
  background:linear-gradient(180deg,#f2e4c9 0%,#ffffff 100%);
}

.more-card:nth-child(7).panel{
  background:linear-gradient(180deg,#e0f2e4 0%,#ffffff 100%);
}

.more-card:nth-child(8).panel{
  background:linear-gradient(180deg,#f7dfe4 0%,#ffffff 100%);
}

.more-card:hover.panel,
.more-card:focus-visible.panel{
  background:linear-gradient(180deg,#f1faff 0%,#ffffff 100%);
  border-color:#9bc9ea;
  box-shadow:0 18px 34px rgba(70,96,116,.16),0 0 0 4px rgba(185,223,247,.45);
}

.more-card:nth-child(2):hover.panel,
.more-card:nth-child(2):focus-visible.panel{background:linear-gradient(180deg,#f2fcf4 0%,#ffffff 100%)}
.more-card:nth-child(3):hover.panel,
.more-card:nth-child(3):focus-visible.panel{background:linear-gradient(180deg,#fff7ea 0%,#ffffff 100%)}
.more-card:nth-child(4):hover.panel,
.more-card:nth-child(4):focus-visible.panel{background:linear-gradient(180deg,#faf2ff 0%,#ffffff 100%)}
.more-card:nth-child(5):hover.panel,
.more-card:nth-child(5):focus-visible.panel{background:linear-gradient(180deg,#f0fbff 0%,#ffffff 100%)}
.more-card:nth-child(6):hover.panel,
.more-card:nth-child(6):focus-visible.panel{background:linear-gradient(180deg,#fff9ef 0%,#ffffff 100%)}
.more-card:nth-child(7):hover.panel,
.more-card:nth-child(7):focus-visible.panel{background:linear-gradient(180deg,#f3fcf5 0%,#ffffff 100%)}
.more-card:nth-child(8):hover.panel,
.more-card:nth-child(8):focus-visible.panel{background:linear-gradient(180deg,#fff2f5 0%,#ffffff 100%)}


/* page color matching from More cards */
body.choose-us-page .section:first-of-type{
  background:linear-gradient(180deg,#cfe6f7 0%, #ffffff 78%);
}

body.testimonials-page .section:first-of-type{
  background:linear-gradient(180deg,#d8eddc 0%, #ffffff 78%);
}

body.faq-page .section:first-of-type{
  background:linear-gradient(180deg,#fbe7cc 0%, #ffffff 78%);
}

body.schedule-page .section:first-of-type{
  background:linear-gradient(180deg,#e8d8ee 0%, #ffffff 78%);
}

body.choose-us-page .kicker{background:#bddcf3;color:#274a63;}
body.testimonials-page .kicker{background:#c4e5cb;color:#2d5540;}
body.faq-page .kicker{background:#f6d9ae;color:#6b4f21;}
body.schedule-page .kicker{background:#dcc8e7;color:#5a3d69;}


/* soft page background polish */
main{
  background:transparent;
}

.section:nth-of-type(even){
  background:linear-gradient(180deg, rgba(234,244,250,.42) 0%, rgba(255,255,255,.78) 100%);
}

.card,
.gallery-item,
.doc-item,
.schedule,
.form-card{
  background:rgba(255,255,255,.96);
}

.topbar{
  box-shadow:0 2px 0 rgba(207,221,230,.35);
}


/* FORCE background override */
body{
  background: linear-gradient(
    180deg,
    #eef6fb 0%,
    #f9fcfe 25%,
    #ffffff 50%,
    #f8fbfd 75%,
    #f3f8fb 100%
  ) !important;
}


/* STRONGER visible background */
body{
  background: linear-gradient(
    180deg,
    #dbeef9 0%,     /* stronger blue */
    #f2f9fd 25%,
    #ffffff 50%,
    #f3f8fb 75%,
    #e8f2f8 100%   /* more visible bottom tint */
  ) !important;
}

/* make sections slightly lift so contrast shows */
.section{
  background: transparent;
}

.container{
  position: relative;
  z-index: 1;
}


/* FINAL balanced background with yellow-green warmth */
body{
  background: linear-gradient(
    180deg,
    #dbeef9 0%,      /* visible blue */
    #f4fbfe 30%,
    #ffffff 55%,
    #f4fbe9 80%,     /* soft yellow-green mix */
    #edf7e3 100%     /* slightly stronger bottom tint */
  ) !important;
}


/* FINAL TUNED background (stronger bottom warmth across all pages) */
body{
  background: linear-gradient(
    180deg,
    #dbeef9 0%,
    #f4fbfe 28%,
    #ffffff 50%,
    #eef8e0 70%,   /* more visible transition */
    #e3f2cf 100%   /* stronger yellow-green base */
  ) !important;
}


/* NEW balanced background: blue → warm → blue */
body{
  background: linear-gradient(
    180deg,
    #dbeef9 0%,      /* top blue */
    #eaf6fb 20%,
    #eef8e0 45%,     /* visible warm yellow-green */
    #e3f2cf 60%,     /* strongest warmth */
    #f0f7fb 80%,
    #dbeef9 100%     /* bottom blue */
  ) !important;
}


/* ADJUSTED middle (less faint, slightly stronger warmth) */
body{
  background: linear-gradient(
    180deg,
    #dbeef9 0%,
    #e6f4fa 18%,
    #e8f4d6 40%,   /* stronger entry into warmth */
    #dceec2 55%,   /* clearer yellow-green */
    #eef6fa 78%,
    #dbeef9 100%
  ) !important;
}



/* FINAL CONSISTENT SITE BACKGROUND: soft blue -> blended warm -> soft blue */
body{
  background: linear-gradient(
    180deg,
    #dbeef9 0%,
    #eaf6fb 20%,
    #eef6e6 45%,
    #f3f8ec 60%,
    #eef6fb 80%,
    #dbeef9 100%
  ) !important;
}

.section{
  background: transparent;
}

.section:nth-of-type(even){
  background: linear-gradient(
    180deg,
    rgba(234,246,251,.28) 0%,
    rgba(243,248,236,.22) 50%,
    rgba(234,246,251,.18) 100%
  );
}

.card,
.gallery-item,
.doc-item,
.schedule,
.form-card,
.more-card .panel{
  background: rgba(255,255,255,.96);
}


/* secure upload form */
.secure-upload-form input[type="file"]{
  padding:12px;
  border:1px dashed var(--line);
  background:#fbfdff;
}

.upload-help{
  margin-top:8px;
}

.file-list{
  display:grid;
  gap:8px;
  margin-top:12px;
}

.file-chip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding: 10px 10px;
  border:1px solid var(--line);
  border-radius: 12px;
  background:#fff;
}

.file-chip span{
  color:var(--muted);
  white-space:nowrap;
}

.honeypot-field{
  position:absolute !important;
  left:-9999px !important;
  width:1px;
  height:1px;
  overflow:hidden;
}

.checkbox-group{
  margin-top:16px;
}

.checkline{
  display:flex;
  align-items:flex-start;
  gap:8px;
  font-weight:600;
}

.checkline input{
  width:auto;
  margin-top:4px;
}

.captcha-wrap{
  margin-top:18px;
}

.turnstile-slot{
  min-height:70px;
  display:flex;
  align-items:center;
}

.turnstile-placeholder{
  width:100%;
  padding: 12px 12px;
  border:1px dashed var(--line);
  border-radius: 12px;
  background:#f9fcfe;
  color:var(--muted);
}

.captcha-error{
  outline:2px solid rgba(179,38,30,.2);
  border-radius: 12px;
}

.secure-upload-form .btn[disabled]{
  opacity:.7;
  cursor:wait;
}


/* about page image sections */
.about-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
  align-items:stretch;
  margin:0 0 22px;
}

.about-split.reverse .about-image-card{
  order:2;
}

.about-split.reverse .form-card{
  order:1;
}

.about-image-card{
  overflow:hidden;
  padding:0;
  min-height:320px;
}

.about-image-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

@media (max-width:760px){
  .about-split,
  .about-split.reverse{
    grid-template-columns:1fr;
  }
  .about-split.reverse .about-image-card,
  .about-split.reverse .form-card{
    order:initial;
  }
  .about-image-card{
    min-height:240px;
  }
}


/* dropdown nav */
.nav-toggle{
  display:none;
  font-size: 21px;
  background:#eaf4fb;
  border:1px solid #d4e5f0;
  border-radius: 6px;
  padding: 6px 8px;
  cursor:pointer;
}

@media (max-width:760px){
  .nav-toggle{
    display:block;
  }

  .nav-links{
    display:none !important;
    flex-direction:column;
    width:100%;
    margin-top:10px;
  }

  .nav-links.active{
    display:flex !important;
  }
}


/* tagline highlight */
.tagline{
  background:linear-gradient(90deg,#5f9fcb,#97c9ac,#e9b99c);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  font-weight:700;
}



/* footer nav clean text centered */
.footer-links{
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:14px;
  margin-top:14px;
  text-align:center;
}

.footer-links a{
  text-decoration:none;
  color:var(--ink);
  font-weight:600;
  padding:0;
  border:none;
  background:none;
}

.footer-links a:hover{
  text-decoration:underline;
  color:#244f69;
}


.back-to-top{
  position:fixed;
  right:18px;
  bottom:18px;
  width:46px;
  height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius: 995px;
  background:linear-gradient(180deg,#5f9fcb 0%, #97c9ac 55%, #e9b99c 100%);
  color:#fff;
  text-decoration:none;
  font-size: 21px;
  font-weight:700;
  box-shadow:0 10px 24px rgba(70,96,116,.18);
  z-index:60;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}

.back-to-top:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(70,96,116,.22);
}

@media (max-width:760px){
  .footer-links{
    width:100%;
  }

  .footer-links a{
    text-align:center;
  }

  .back-to-top{
    right:12px;
    bottom:12px;
    width:42px;
    height:42px;
    font-size: 19px;
  }
}


/* footer structure upgrade */
.footer .utility{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:20px;
}

.footer-left{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:8px;
  width:100%;
}

.footer-links{
  display:flex;
  flex-direction:column;
  gap:6px;
  align-items:center;
}

.footer-copy{
  margin-top:6px;
  font-size: 12px;
}

.footer-right{
  text-align:right;
  font-weight:600;
}

@media (max-width:760px){
  .footer .utility{
    flex-direction:column;
    align-items:center;
    text-align:center;
  }

  .footer-right{
    text-align:center;
  }
}


/* FINAL FOOTER LAYOUT */
.footer-grid{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:start;
  gap:20px;
}

.footer-left{
  text-align:left;
}

.footer-center{
  text-align:center;
}

.footer-links{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:14px;
  margin-bottom:10px;
}

.footer-links a{
  text-decoration:none;
  color:var(--ink);
  font-weight:600;
}

.footer-links a:hover{
  text-decoration:underline;
  color:#244f69;
}

.footer-copy{
  font-size: 12px;
}

.footer-right{
  text-align:right;
  font-weight:600;
}

@media (max-width:760px){
  .footer-grid{
    grid-template-columns:1fr;
    text-align:center;
  }

  .footer-left,
  .footer-right{
    text-align:center;
  }
}


/* 2026 polish pass */
.nav-toggle{
  display:none;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius: 10px;
  border:1px solid #d4e5f0;
  background:#ffffff;
  color:#2d5874;
  font-size:1.35rem;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(70,96,116,.08);
}

.nav-toggle:hover{
  background:#eef7fc;
}

.section-proof{
  padding-top:12px;
}

.proof-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:18px;
}

.proof-card{
  padding:26px;
}

.proof-list li{
  margin-bottom:10px;
}

.proof-quote{
  background:linear-gradient(180deg,#f8fcff 0%, #f4fbf6 100%);
}

.footer-shell{
  background:rgba(255,255,255,.82);
  border:1px solid var(--line);
  border-radius: 24px;
  padding: 26px 20px;
  box-shadow:0 12px 28px rgba(70,96,116,.08);
}

.footer-grid{
  display:grid;
  grid-template-columns:1.1fr .8fr 1fr;
  gap:28px;
  align-items:start;
}

.footer-heading{
  font-size:.88rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#567082;
  margin-bottom:12px;
}

.footer-blurb{
  max-width:320px;
  margin:10px 0 0;
  color:var(--muted);
}

.footer-links{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
}

.footer-contact-block{
  color:var(--ink);
  line-height:1.65;
}

.footer-visit-link{
  display:inline-flex;
  margin-top:14px;
  text-decoration:none;
  font-weight:700;
  color:#27506a;
}

.footer-visit-link:hover{
  text-decoration:underline;
}

@media (max-width:900px){
  .proof-grid,
  .footer-grid{
    grid-template-columns:1fr;
  }

  .footer-left,
  .footer-center,
  .footer-right{
    text-align:center;
  }

  .footer-blurb{
    max-width:none;
  }
}

@media (max-width:760px){
  .nav{
    align-items:center;
  }

  .nav-toggle{
    display:inline-flex;
    align-self:flex-end;
    margin-top:-54px;
  }

  .nav-links{
    display:none;
    width:100%;
    flex-direction:column;
    align-items:stretch;
    gap:10px;
    padding-top:8px;
  }

  .nav-links.active{
    display:flex;
  }

  .nav-links a{
    width:100%;
    text-align:center;
    border-radius: 12px;
  }

  .nav-social{
    width:100%;
    justify-content:center;
  }
}


/* footer social upgrade */
.footer-blurb{margin:10px 0 0;max-width:460px}
.footer-social{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:16px;
  align-items:center;
}
.footer-social a{
  width:48px;
  height:48px;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  background:#6faed9;
  box-shadow:0 10px 22px rgba(58,88,112,.16);
  transition:transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.footer-social a svg{width:20px;height:20px;display:block}
.footer-social a:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 28px rgba(58,88,112,.24);
  filter:saturate(1.08);
}
.footer-social .social-facebook{background:#1877f2}
.footer-social .social-instagram{background:linear-gradient(135deg,#f58529 0%,#dd2a7b 45%,#8134af 75%,#515bd4 100%)}
.footer-social .social-youtube{background:#ff0000}
.footer-social .social-yelp{background:#d32323}
@media (max-width:760px){
  .footer-social a{width:46px;height:46px}
}


.page-hero-simple{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.eyebrow{display:inline-block;margin-bottom:10px;padding:6px 10px;border-radius:999px;background:#edf7fd;color:#2f607d;font-size:.82rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}
.hero-upgraded{padding-top:18px}
.hero-grid-upgraded{align-items:center}
.hero-grid-upgraded h1{font-size:clamp(2rem,4vw,3.25rem);line-height:1.05;margin:0 0 14px}
.hero-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.hero-points span{padding:8px 12px;border-radius:999px;background:#f2f8fc;border:1px solid #d9e9f5;font-weight:600;color:#355a73}
.hero-photo-stack{position:relative;overflow:visible}
.floating-proof{position:absolute;right:18px;bottom:18px;max-width:240px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;box-shadow:0 18px 40px rgba(70,96,116,.14)}
.steps-grid{grid-template-columns:repeat(3,1fr)}
.step-card{position:relative;padding-top:54px}
.step-number{position:absolute;top:16px;left:18px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--primary);color:#fff;font-weight:800}
.story-panel{padding:26px}
.faq-stack{display:grid;gap:14px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px 22px;box-shadow:0 10px 28px rgba(70,96,116,.06)}
.footer-contact-block{line-height:1.7}
.footer-visit-link{display:inline-block;margin-top:10px;font-weight:700}
@media (max-width:760px){.page-hero-simple{flex-direction:column;align-items:flex-start}.floating-proof{position:static;max-width:none;margin-top:14px}}


/* FAQ dropdown refresh */
.faq-stack{display:grid;gap:14px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 28px rgba(70,96,116,.06);overflow:hidden}
.faq-item summary{list-style:none;cursor:pointer;padding:20px 56px 20px 22px;font-weight:700;position:relative}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:1.6rem;line-height:1;color:var(--ink-muted)}
.faq-item[open] summary::after{content:"−"}
.faq-item .faq-answer{padding:0 22px 20px;border-top:1px solid var(--line)}
.faq-item .faq-answer p{margin:16px 0 0;color:var(--ink-muted)}
@media (max-width: 640px){.faq-item summary{padding:18px 48px 18px 18px}.faq-item .faq-answer{padding:0 18px 18px}}

.full-hero { width: 100%; height: 75vh; border-radius: 24px; overflow: hidden; }
.full-hero img { width: 100%; height: 100%; object-fit: cover; }

.faq-page, .faq-page body, body.faq-page { background-color: #f7fbff !important; }

.faq-page,
body.faq-page,
main,
.section,
.container {
  background-color: #f7fbff !important;
}




/* ================================
   SITEWIDE CONSISTENCY OVERRIDE
   Makes navbar, footer, colors, and backgrounds match across all pages
   ================================ */

:root{
  --bg:#f7fbff;
  --surface:#ffffff;
  --ink:#2f3d46;
  --muted:#62727b;
  --line:#d7e4ec;
  --primary:#6aa9d2;
  --primary-dark:#4d8db8;
  --secondary:#9dcdb2;
  --secondary-dark:#82b998;
  --accent:#dcecf8;
  --sand:#edf6fc;
  --shadow:0 10px 28px rgba(70,96,116,.08);
  --radius:24px;
}

html, body{
  background:#f7fbff !important;
}

body{
  color:var(--ink);
  background:linear-gradient(180deg,#f7fbff 0%, #fbfdff 28%, #ffffff 56%, #fbfdff 78%, #f7fbff 100%) !important;
}

main,
.section,
.section-soft,
.section:nth-of-type(even),
body.choose-us-page .section:first-of-type,
body.testimonials-page .section:first-of-type,
body.faq-page .section:first-of-type,
body.schedule-page .section:first-of-type{
  background:transparent !important;
}

.topbar{
  background:rgba(255,255,255,.97) !important;
  border-bottom:1px solid var(--line) !important;
  box-shadow:0 2px 0 rgba(207,221,230,.28) !important;
}

.footer{
  background:linear-gradient(180deg,#fbfdff 0%, #f3f9fd 100%) !important;
  border-top:1px solid var(--line) !important;
}

.card,
.panel,
.gallery-item,
.doc-item,
.schedule,
.form-card,
.faq-item,
.hero-overlay,
.floating-proof{
  background:rgba(255,255,255,.98) !important;
  border-color:var(--line) !important;
}

.kicker,
.eyebrow{
  background:#eaf4fb !important;
  color:#2e5a78 !important;
}

.nav-links a{
  color:var(--ink) !important;
  border:1px solid #dbe7ef !important;
}

/* consistent navbar pill colors across every page */
.nav-links a:nth-child(1),
.nav-links a:nth-child(4){
  background:#eaf4fb !important;
}
.nav-links a:nth-child(2),
.nav-links a:nth-child(5){
  background:#eef8f2 !important;
}
.nav-links a:nth-child(3),
.nav-links a:nth-child(6){
  background:#f2f8fc !important;
}

.nav-links a:hover{
  background:#dfeef8 !important;
  color:#27506a !important;
  border-color:#cfe1ec !important;
}

.hero,
.section{
  position:relative;
}

.container{
  position:relative;
  z-index:1;
}

/* remove page-specific warm/pink FAQ and schedule accents */
body.choose-us-page .kicker,
body.testimonials-page .kicker,
body.faq-page .kicker,
body.schedule-page .kicker{
  background:#eaf4fb !important;
  color:#2e5a78 !important;
}

/* keep doc packets and utility blocks softer so they match the rest */
.doc-list .doc-item:nth-child(1),
.doc-list .doc-item:nth-child(2),
.doc-list .doc-item:nth-child(3),
.doc-list .doc-item:nth-child(4),
.doc-list .doc-item:nth-child(5),
.doc-list .doc-item:nth-child(6),
.doc-list .doc-item:nth-child(7),
.doc-list .doc-item:nth-child(8),
.doc-list .doc-item:nth-child(9),
.doc-list .doc-item:nth-child(10),
.gallery-visit,
.gallery-cta,
.cta-visit,
a[href="enrollment.html"].btn-ghost{
  background:linear-gradient(180deg,#f3f9fd 0%, #ffffff 100%) !important;
  border:1px solid var(--line) !important;
  color:#2f4f63 !important;
}

/* ensure faq page no longer keeps a different color */
.faq-page,
body.faq-page,
body.faq-page main,
body.faq-page .section,
body.faq-page .container{
  background:transparent !important;
}




/* ================================
   BUTTON COLOR VARIETY
   Gives buttons distinct colors across the site
   ================================ */

.btn{
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease, background .18s ease, border-color .18s ease;
}

.button-row .btn:nth-child(1),
.cta-strip .btn:nth-child(1),
.hero-actions .btn:nth-child(1),
.actions .btn:nth-child(1){
  background:linear-gradient(180deg,#6fb5df 0%, #5f9fcb 100%) !important;
  border-color:#5f9fcb !important;
  color:#ffffff !important;
}

.button-row .btn:nth-child(2),
.cta-strip .btn:nth-child(2),
.hero-actions .btn:nth-child(2),
.actions .btn:nth-child(2){
  background:linear-gradient(180deg,#a8d4b8 0%, #82b998 100%) !important;
  border-color:#82b998 !important;
  color:#24483a !important;
}

.button-row .btn:nth-child(3),
.cta-strip .btn:nth-child(3),
.hero-actions .btn:nth-child(3),
.actions .btn:nth-child(3){
  background:linear-gradient(180deg,#eac6ef 0%, #d9d6f3 100%) !important;
  border-color:#c5c1ea !important;
  color:#4c3b67 !important;
}

.button-row .btn:nth-child(4),
.cta-strip .btn:nth-child(4),
.hero-actions .btn:nth-child(4),
.actions .btn:nth-child(4){
  background:linear-gradient(180deg,#fde3ba 0%, #f5d39e 100%) !important;
  border-color:#efc985 !important;
  color:#6b4f21 !important;
}

/* standalone primary/secondary buttons still get color variety */
.btn-primary,
a.btn-primary,
button.btn-primary{
  background:linear-gradient(180deg,#6fb5df 0%, #5f9fcb 100%) !important;
  border-color:#5f9fcb !important;
  color:#fff !important;
}

.btn-secondary,
a.btn-secondary,
button.btn-secondary{
  background:linear-gradient(180deg,#a8d4b8 0%, #82b998 100%) !important;
  border-color:#82b998 !important;
  color:#24483a !important;
}

.btn-ghost,
a.btn-ghost,
button.btn-ghost{
  background:linear-gradient(180deg,#f0f6fb 0%, #e3eef7 100%) !important;
  border-color:#cfdde6 !important;
  color:#2f4f63 !important;
}

/* common CTA-specific links */
a[href*="tour"].btn,
a[href*="tour"].button,
button[data-action*="tour"]{
  background:linear-gradient(180deg,#6fb5df 0%, #5f9fcb 100%) !important;
  border-color:#5f9fcb !important;
  color:#fff !important;
}

a[href*="enroll"].btn,
a[href*="enrollment"].btn,
button[data-action*="enroll"]{
  background:linear-gradient(180deg,#a8d4b8 0%, #82b998 100%) !important;
  border-color:#82b998 !important;
  color:#24483a !important;
}

a[href*="contact"].btn,
button[type="submit"].btn,
button[type="submit"]{
  background:linear-gradient(180deg,#eac6ef 0%, #d9d6f3 100%) !important;
  border-color:#c5c1ea !important;
  color:#4c3b67 !important;
}

.btn:hover,
button:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(70,96,116,.14);
  filter:saturate(1.03);
}




/* ================================
   NAVBAR COLOR VARIETY (MATCH BUTTON STYLE)
   ================================ */

.nav-links a{
  border:1px solid #dbe7ef !important;
  font-weight:600;
}

/* assign distinct colors */
.nav-links a:nth-child(1){
  background:linear-gradient(180deg,#6fb5df,#5f9fcb) !important;
  color:#fff !important;
}
.nav-links a:nth-child(2){
  background:linear-gradient(180deg,#a8d4b8,#82b998) !important;
  color:#24483a !important;
}
.nav-links a:nth-child(3){
  background:linear-gradient(180deg,#eac6ef,#d9d6f3) !important;
  color:#4c3b67 !important;
}
.nav-links a:nth-child(4){
  background:linear-gradient(180deg,#fde3ba,#f5d39e) !important;
  color:#6b4f21 !important;
}
.nav-links a:nth-child(5){
  background:linear-gradient(180deg,#dcecf8,#cfe1ec) !important;
  color:#2f4f63 !important;
}
.nav-links a:nth-child(6){
  background:linear-gradient(180deg,#eef8f2,#d8eddc) !important;
  color:#2d5540 !important;
}

/* hover consistency */
.nav-links a:hover{
  filter:saturate(1.1);
  transform:translateY(-1px);
}


/* launch polish */
.utility-bar{background:#21465f;color:#fff;font-size:.92rem}
.utility-bar a{color:#fff;text-decoration:none}
.utility-bar-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 20px}
.utility-items{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.utility-actions{display:flex;gap:10px;align-items:center}
.utility-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:#fff;color:#21465f;font-weight:700}
.utility-btn-secondary{background:#cfe8d6;color:#224234}
.nav-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:1.1rem;cursor:pointer}
.hero-actions .btn,.cta-strip .btn,.footer-buttons .btn{min-height:48px;padding:12px 18px}
.trust-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.trust-list span{background:#eef7fc;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-weight:700;color:#335a72}
.floating-proof{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:var(--shadow);display:grid;gap:6px}
.cta-strip-strong{background:linear-gradient(90deg,#e8f4fc 0%,#eef8f2 60%,#fff6ea 100%)}
.contact-direct-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.footer-grid{display:grid;grid-template-columns:1.1fr .8fr 1fr;gap:24px;align-items:start}
.footer-links{display:grid;gap:8px}
.footer-blurb{color:var(--muted)}
.footer-contact-block a{text-decoration:none;font-weight:700}
.footer-buttons{margin-top:14px}
.mobile-cta-bar{display:none}
body{padding-bottom:0}
@media (max-width:960px){
  .utility-bar-inner,.footer-grid,.contact-direct-grid{grid-template-columns:1fr;display:grid}
  .utility-actions{justify-content:flex-start}
}
@media (max-width:760px){
  body{padding-bottom:74px}
  .utility-items{gap:10px}
  .utility-bar-inner{padding:10px 16px}
  .nav{align-items:center;flex-direction:row;flex-wrap:wrap}
  .nav-toggle{display:inline-flex;margin-left:auto}
  .nav-links{display:none;width:100%;flex-direction:column;align-items:stretch}
  .nav-links.open{display:flex}
  .nav-links a{width:100%;text-align:center}
  .nav-social{width:100%;justify-content:center}
  .button-row .btn,.hero-actions .btn,.cta-strip .btn,.footer-buttons .btn{width:100%}
  .mobile-cta-bar{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);background:#21465f;z-index:60;border-top:1px solid rgba(255,255,255,.18)}
  .mobile-cta-bar a{color:#fff;text-decoration:none;text-align:center;padding:14px 8px;font-weight:700;border-right:1px solid rgba(255,255,255,.16)}
  .mobile-cta-bar a:last-child{border-right:none}
}


/* Stronger enroll button */
.enroll-btn, .btn-enroll { background:#c99700 !important; color:#fff !important; }
.enroll-btn:hover, .btn-enroll:hover { background:#a67c00 !important; }

/* FORCE NAV ENROLL BUTTON STYLE */
.enroll-btn-nav {
  background-color: #b8860b !important;
  color: #ffffff !important;
  padding: 10px 16px !important;
  border-radius: 6px !important;
  font-weight: 600 !important;
}
.enroll-btn-nav:hover {
  background-color: #8c6a09 !important;
}


/* Launch hardening */
:root{
  --pdc-blue:#0b3b66;
  --pdc-gold:#b8860b;
  --pdc-gold-dark:#8c6a09;
}
a:focus, button:focus, input:focus, textarea:focus, select:focus{
  outline:3px solid rgba(184,134,11,.45);
  outline-offset:2px;
}
.noscript-banner{
  background:#fff3cd;
  color:#3b2f00;
  padding:10px 14px;
  text-align:center;
  font-weight:600;
  font-size:14px;
}
.enroll-btn-nav, .btn-enroll, .enroll-btn{
  background:var(--pdc-gold) !important;
  color:#fff !important;
}
.enroll-btn-nav:hover, .btn-enroll:hover, .enroll-btn:hover{
  background:var(--pdc-gold-dark) !important;
}
.launch-note, .form-fallback-note{
  background:#eef6ff;
  border:1px solid #c5def7;
  color:#123;
  padding:12px 14px;
  border-radius:10px;
  margin:14px 0;
}
.mobile-quick-actions a, .quick-actions a, .cta-row a{
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
@media (max-width: 768px){
  .mobile-quick-actions{
    position:sticky;
    bottom:0;
    z-index:99;
  }
}


/* Step 3 precision fixes */
.skip-link{
  position:absolute;
  left:-9999px;
  top:auto;
  width:1px;
  height:1px;
  overflow:hidden;
}
.skip-link:focus{
  left:12px;
  top:12px;
  width:auto;
  height:auto;
  padding:10px 14px;
  background:#0b3b66;
  color:#fff;
  z-index:1000;
  border-radius:8px;
  text-decoration:none;
  font-weight:700;
}
.social-icons a, .social-links a{
  min-width:44px;
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}


/* Step 4 final go-live */
.direct-help-bar{
  background:#0b3b66;
  color:#fff;
  text-align:center;
  padding:10px 14px;
  font-weight:600;
  font-size:14px;
}
.direct-help-bar a{
  color:#fff;
  text-decoration:underline;
}


.eyebrow{display:inline-block;padding:6px 10px;border-radius:995px;background:#e8f3fb;color:#2e5a78;font-size:.92rem;font-weight:700}
.page-hero-simple{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:24px}
.page-hero-hard h1{font-size:clamp(2rem,3.6vw,3rem);line-height:1.05;margin:.2em 0 .35em}
.hero-copy-hard h1{font-size:clamp(2.4rem,4.4vw,4.1rem)}
.hero-convert{padding-top:48px}
.trust-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.trust-list span{background:#eef7fc;border:1px solid #d5e7f1;padding:8px 10px;border-radius:999px;font-weight:700;font-size:.95rem}
.trust-list-strong span{background:#fff5e9;border-color:#f1d7b5;color:#7a4b0f}
.urgency-banner{margin-top:18px;padding:14px 16px;border-radius:16px;background:linear-gradient(90deg,#fff4e8 0%,#fffaf4 100%);border:1px solid #f0d2aa;font-weight:600}
.floating-proof-strong{background:rgba(255,248,240,.96);border-color:#f0d5b5}
.proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.proof-card-strong{background:linear-gradient(180deg,#ffffff 0%,#fffaf4 100%)}
.cta-strip-hard{background:linear-gradient(90deg,#edf7ff 0%,#fffaf2 100%)}
.forms-wrap-priority{grid-template-columns:1.1fr .9fr}
.form-card-priority{border:2px solid #d8ebf7}
.section-tight{padding-top:10px}
.container-tight{padding:0}
.registration-hero{align-items:stretch}
.qr-callout{max-width:320px;padding:18px;text-align:center}
.qr-callout img{width:220px;margin:0 auto 12px}
.utility-bar{background:#16354d;color:#fff;font-size:.92rem}
.utility-bar a{color:#fff;text-decoration:none}
.utility-bar-inner{display:flex;justify-content:space-between;gap:18px;align-items:center;min-height:44px;padding:8px 0}
.utility-items,.utility-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.utility-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:999px;background:#f0b86b;color:#1d2b36;font-weight:700;text-decoration:none}
.utility-btn-secondary{background:#fff;color:#16354d}
.footer-shell{padding-top:12px}
.footer-grid{display:grid;grid-template-columns:1.05fr .8fr .95fr;gap:24px;align-items:flex-start}
.footer-heading{font-weight:800;margin-bottom:12px}
.footer-links{display:grid;gap:8px}
.footer-links a{text-decoration:none}
.footer-buttons{margin-top:14px}
.footer-blurb{color:var(--muted);max-width:38ch}
.footer-contact-block{color:var(--muted);line-height:1.7}
.mobile-cta-bar,.nav-toggle,.back-to-top{display:none}
.checkline{display:flex;gap:10px;align-items:flex-start}
.checkline input{width:auto;margin-top:4px}
@media (max-width:1024px){.footer-grid,.page-hero-simple,.proof-grid{grid-template-columns:1fr 1fr}.utility-bar-inner{align-items:flex-start;flex-direction:column}}
@media (max-width:760px){.page-hero-simple,.proof-grid,.footer-grid,.utility-bar-inner{grid-template-columns:1fr;display:grid}.utility-items,.utility-actions{justify-content:flex-start}.qr-callout{max-width:none}.hero-copy.card{padding:24px}}


/* Conversion and trust upgrades */
.hero-home-locked .hero-copy{border:2px solid #d9ecf7}
.hero-actions-locked .btn-primary{padding-inline:18px}
.hero-actions-locked .btn-secondary{padding-inline:18px}
.urgency-banner-locked{font-size:1rem}
.steps-grid-strong{grid-template-columns:repeat(3,1fr)}
.section-button-row{margin-top:18px}
.section-heading-split{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}
.trust-gallery-grid{grid-template-columns:repeat(2,1fr)}
.proof-grid-home{grid-template-columns:1fr 1fr}
.proof-quote-strong{background:linear-gradient(180deg,#ffffff 0%,#eef7ff 100%)}
.cta-strip-home-final{margin-top:4px}
.enrollment-hero-locked,.registration-hero-locked{align-items:flex-start}
.enrollment-steps-locked .step-card,.registration-steps .step-card,.steps-grid-strong .step-card{border:2px solid #d7e9f4}
.notice-hot{background:#fff3e4;border-color:#efcc9f}
.form-side-proof{display:flex;flex-direction:column;gap:18px}
.mini-proof-card{overflow:hidden;padding:0}
.mini-proof-card img{width:100%;aspect-ratio:16/10;object-fit:cover}
.mini-proof-copy{padding:16px;display:grid;gap:6px}
.hero-photo-home img{object-position:center}
@media (max-width:1024px){.steps-grid-strong,.trust-gallery-grid,.proof-grid-home{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.section-heading-split{display:grid}.steps-grid-strong,.trust-gallery-grid,.proof-grid-home{grid-template-columns:1fr}}


.hero-copy-hard h1{max-width:14ch}
.trust-list{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0}
.trust-list span{padding:8px 12px;border-radius:999px;background:#eef7fc;border:1px solid #d4e5f0;font-size:.92rem;font-weight:700;color:#2b5875}
.urgency-banner{margin-top:18px;padding:14px 16px;border-radius:16px;background:#fff5e8;border:1px solid #f0d3ae;color:#774f1b}
.steps-grid{grid-template-columns:repeat(3,1fr)}
.step-card{position:relative;padding-top:28px}
.step-number{position:absolute;top:12px;right:14px;font-weight:800;color:#5f89a5}
.section-heading-split{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:18px}
.proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cta-strip-strong h2{margin:0 0 8px}
.page-hero-simple{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;align-items:stretch;margin-bottom:20px}
.qr-callout{padding:24px}
.registration-grid-locked{align-items:start}
.checkbox-stack{padding:14px;border:1px solid var(--line);border-radius:16px;background:#fbfdff}
.checkline{display:flex;gap:10px;align-items:flex-start;font-weight:500;margin:10px 0}
.checkline input{width:auto;margin-top:4px}
.legal-form-card{border:1px solid #cfe0ec;box-shadow:0 14px 36px rgba(49,84,108,.08)}
.process-list .doc-item{cursor:default}
.notice-hot{background:#fff4e7;border-color:#efcfab}
.container-tight{padding:0}
.section-tight{padding-top:24px}
.mobile-cta-bar a:last-child{background:#1f4f8c;color:#fff}
@media (max-width:1024px){.page-hero-simple,.proof-grid,.section-heading-split{grid-template-columns:1fr}.section-heading-split{display:block}}
@media (max-width:760px){.steps-grid{grid-template-columns:1fr}.trust-list{flex-direction:column;align-items:flex-start}}
.faq-answer .faq-item {
  margin-top: 12px;
}

.faq-answer > .faq-item:first-child {
  margin-top: 0;
}

.faq-answer .faq-answer {
  margin-top: 10px;
}

/* FIX: smaller buttons in page hero sections */
.page-hero-simple .button-row{
  align-items:flex-start;
}

.page-hero-simple .button-row .btn{
  min-height:auto;
  padding:9px 14px;
  font-size:.95rem;
  box-shadow:none;
}

/* OPTIONAL: prevent full-width buttons in hero on mobile */
@media(max-width:768px){
  .page-hero-simple .button-row .btn{
    width:auto;
  }
}


/* Conversion funnel reinforcement */
.journey-strip{background:linear-gradient(180deg,#f7fbff 0%,#eef5fb 100%);border-top:1px solid rgba(31,79,140,.12);border-bottom:1px solid rgba(31,79,140,.12)}
.journey-strip-inner{display:flex;gap:18px;align-items:center;justify-content:space-between;padding:16px 0;flex-wrap:wrap}
.journey-copy{font-size:.98rem;color:#16324a;font-weight:600}
.journey-actions{display:flex;gap:12px;flex-wrap:wrap}
.journey-actions .btn{margin:0}
.hero-home-locked .hero-copy-hard{box-shadow:0 16px 40px rgba(20,46,72,.08)}
.steps-grid-strong .step-card,.registration-steps .step-card{border:2px solid rgba(31,79,140,.08)}
@media (max-width: 720px){.journey-strip-inner{align-items:flex-start}.journey-copy{font-size:.94rem}.journey-actions{width:100%}.journey-actions .btn{flex:1 1 180px;text-align:center}}

/* Homepage balanced conversion pass */
.hero-grid-balanced{align-items:center}
.hero-copy-balanced{background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)}
.hero-trust-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.hero-trust-points span{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;background:#eef7fc;color:#2e5a78;font-weight:700;font-size:.92rem}
.hero-photo-balanced{min-height:520px}
.hero-overlay-balanced p{margin:6px 0 0;color:var(--muted)}
.homepage-guidance-banner{margin-top:20px}
.homepage-trust-grid{grid-template-columns:repeat(3,1fr)}
.homepage-trust-card{height:100%}
.homepage-path-section .section-intro{max-width:780px}
.step-card-primary{border:2px solid #c7dff0;background:linear-gradient(180deg,#ffffff 0%,#f5fbff 100%)}
.btn-step-inline{margin-top:12px}
.homepage-steps-grid .step-card{display:flex;flex-direction:column;justify-content:space-between;gap:10px;position:relative}
.homepage-visual-grid .feature-card{height:100%}
.homepage-learning-card p{color:var(--muted)}
.homepage-proof-card{background:linear-gradient(180deg,#ffffff 0%,#f8fcff 100%)}
.homepage-final-cta{padding-top:8px}
.homepage-cta-strip{align-items:center}
.homepage-cta-strip h2{margin:0 0 8px}

@media (max-width:1024px){
  .homepage-trust-grid{grid-template-columns:repeat(2,1fr)}
}

@media (max-width:760px){
  .hero-trust-points{flex-direction:column;align-items:flex-start}
  .homepage-trust-grid{grid-template-columns:1fr}
  .hero-photo-balanced{min-height:340px}
}


/* FAQ light + bright color system */
body.faq-page .faq-stack{
  gap:18px;
}
body.faq-page .faq-stack > .faq-item{
  border-radius:24px;
  border-width:1px;
  box-shadow:0 14px 34px rgba(74, 112, 138, 0.10);
  overflow:hidden;
}
body.faq-page .faq-stack > .faq-item > summary{
  font-size:1.06rem;
  letter-spacing:.01em;
  padding:22px 60px 22px 24px;
}
body.faq-page .faq-stack > .faq-item > .faq-answer{
  padding:14px 18px 18px;
}

/* section title colors */
body.faq-page .faq-stack > .faq-item:nth-child(1){background:linear-gradient(180deg,#fff9ef 0%,#fffdf8 100%);border-color:#f3dfb4;}
body.faq-page .faq-stack > .faq-item:nth-child(1) > summary{background:#fff3d8;color:#7a5418;}
body.faq-page .faq-stack > .faq-item:nth-child(1) > .faq-answer{background:#fffdf8;}

body.faq-page .faq-stack > .faq-item:nth-child(2){background:linear-gradient(180deg,#eefaf4 0%,#fbfffd 100%);border-color:#cde9d8;}
body.faq-page .faq-stack > .faq-item:nth-child(2) > summary{background:#dcf4e7;color:#215c43;}
body.faq-page .faq-stack > .faq-item:nth-child(2) > .faq-answer{background:#fbfffd;}

body.faq-page .faq-stack > .faq-item:nth-child(3){background:linear-gradient(180deg,#eff7ff 0%,#fbfdff 100%);border-color:#d1e3f6;}
body.faq-page .faq-stack > .faq-item:nth-child(3) > summary{background:#dfeeff;color:#295b86;}
body.faq-page .faq-stack > .faq-item:nth-child(3) > .faq-answer{background:#fbfdff;}

body.faq-page .faq-stack > .faq-item:nth-child(4){background:linear-gradient(180deg,#f7f1ff 0%,#fdfbff 100%);border-color:#ddd0f6;}
body.faq-page .faq-stack > .faq-item:nth-child(4) > summary{background:#ebe1ff;color:#5a3f8a;}
body.faq-page .faq-stack > .faq-item:nth-child(4) > .faq-answer{background:#fdfbff;}

body.faq-page .faq-stack > .faq-item:nth-child(5){background:linear-gradient(180deg,#fff2f7 0%,#fffdfd 100%);border-color:#f2d0df;}
body.faq-page .faq-stack > .faq-item:nth-child(5) > summary{background:#ffe2ee;color:#8d3d61;}
body.faq-page .faq-stack > .faq-item:nth-child(5) > .faq-answer{background:#fffdfd;}

/* question cards inside each section */
body.faq-page .faq-answer > .faq-item{
  border-radius:18px;
  border:1px solid #dde9f1;
  box-shadow:0 8px 20px rgba(74, 112, 138, 0.07);
  background:#ffffff;
}
body.faq-page .faq-answer > .faq-item > summary{
  font-size:1rem;
  font-weight:700;
  padding:18px 54px 18px 18px;
}
body.faq-page .faq-answer > .faq-item > .faq-answer{
  border-top:1px solid rgba(58, 88, 110, 0.10);
  padding:0 18px 18px;
  background:rgba(255,255,255,.78);
}
body.faq-page .faq-answer > .faq-item > .faq-answer p,
body.faq-page .faq-answer > .faq-item > .faq-answer li,
body.faq-page .faq-answer > .faq-item > .faq-answer a{
  color:#4a6478;
}
body.faq-page .faq-answer > .faq-item > .faq-answer p{
  margin-top:14px;
  line-height:1.7;
}

/* question color pairings by section */
body.faq-page .faq-stack > .faq-item:nth-child(1) .faq-answer > .faq-item{background:linear-gradient(180deg,#fffef8 0%,#fff8ea 100%);border-color:#f0dfbb;}
body.faq-page .faq-stack > .faq-item:nth-child(1) .faq-answer > .faq-item > summary{color:#76521d;background:#fff8e8;}
body.faq-page .faq-stack > .faq-item:nth-child(1) .faq-answer > .faq-item > .faq-answer{background:#fffdf6;}

body.faq-page .faq-stack > .faq-item:nth-child(2) .faq-answer > .faq-item{background:linear-gradient(180deg,#fbfffd 0%,#f0fbf5 100%);border-color:#cfe8d9;}
body.faq-page .faq-stack > .faq-item:nth-child(2) .faq-answer > .faq-item > summary{color:#245941;background:#ecf8f0;}
body.faq-page .faq-stack > .faq-item:nth-child(2) .faq-answer > .faq-item > .faq-answer{background:#fbfffd;}

body.faq-page .faq-stack > .faq-item:nth-child(3) .faq-answer > .faq-item{background:linear-gradient(180deg,#fbfdff 0%,#f0f7ff 100%);border-color:#d4e3f4;}
body.faq-page .faq-stack > .faq-item:nth-child(3) .faq-answer > .faq-item > summary{color:#2d5a84;background:#edf5ff;}
body.faq-page .faq-stack > .faq-item:nth-child(3) .faq-answer > .faq-item > .faq-answer{background:#fbfdff;}

body.faq-page .faq-stack > .faq-item:nth-child(4) .faq-answer > .faq-item{background:linear-gradient(180deg,#fdfbff 0%,#f6f0ff 100%);border-color:#ded3f4;}
body.faq-page .faq-stack > .faq-item:nth-child(4) .faq-answer > .faq-item > summary{color:#5d4387;background:#f4eeff;}
body.faq-page .faq-stack > .faq-item:nth-child(4) .faq-answer > .faq-item > .faq-answer{background:#fdfbff;}

body.faq-page .faq-stack > .faq-item:nth-child(5) .faq-answer > .faq-item{background:linear-gradient(180deg,#fffdfd 0%,#fff3f8 100%);border-color:#f3d7e2;}
body.faq-page .faq-stack > .faq-item:nth-child(5) .faq-answer > .faq-item > summary{color:#8a4567;background:#fff0f6;}
body.faq-page .faq-stack > .faq-item:nth-child(5) .faq-answer > .faq-item > .faq-answer{background:#fffdfd;}

/* icon color tuning */
body.faq-page .faq-item summary::after{
  color:currentColor;
  opacity:.72;
}

/* brighter link treatment inside answers */
body.faq-page .faq-answer a{
  color:#1f6fb2;
  font-weight:700;
  text-underline-offset:2px;
}

@media (max-width: 760px){
  body.faq-page .faq-stack > .faq-item > summary{padding:18px 50px 18px 18px;}
  body.faq-page .faq-stack > .faq-item > .faq-answer{padding:12px 12px 14px;}
  body.faq-page .faq-answer > .faq-item > summary{padding:16px 46px 16px 16px;}
}


/* FAQ action-guiding upgrade */
body.faq-page .page-hero-simple{margin-bottom:28px;}
body.faq-page .page-hero-simple .button-row{gap:12px; align-items:center;}
body.faq-page .faq-stack{gap:22px;}
body.faq-page .faq-stack > .faq-item{transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
body.faq-page .faq-stack > .faq-item:hover{transform:translateY(-1px);box-shadow:0 18px 38px rgba(74,112,138,.12);}
body.faq-page .faq-stack > .faq-item > summary{padding:24px 62px 24px 24px;}
body.faq-page .faq-stack > .faq-item > .faq-answer{padding:16px 18px 18px;display:grid;gap:14px;}
body.faq-page .faq-answer > .faq-item{margin:0;}
body.faq-page .faq-answer > .faq-item > summary{padding:19px 54px 19px 18px;}
body.faq-page .faq-answer > .faq-item > .faq-answer{padding:0 18px 20px;}
body.faq-page .faq-answer > .faq-item > .faq-answer p{max-width:72ch;}
body.faq-page .faq-inline-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px;border-radius:18px;border:1px solid rgba(61,95,117,.12);background:linear-gradient(180deg,rgba(255,255,255,.92) 0%,rgba(250,252,255,.98) 100%);box-shadow:0 10px 24px rgba(74,112,138,.08);margin-top:4px;}
body.faq-page .faq-inline-cta-copy strong{display:block;font-size:1rem;line-height:1.35;color:#24455d;margin-bottom:4px;}
body.faq-page .faq-inline-cta .help{color:#527086;max-width:62ch;}
body.faq-page .faq-inline-cta .button-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
body.faq-page .faq-inline-cta .btn{white-space:nowrap;}
body.faq-page .faq-stack > .faq-item:nth-child(1) .faq-inline-cta{background:linear-gradient(180deg,#fffdf7 0%,#fff8ea 100%);border-color:#eedcae;}
body.faq-page .faq-stack > .faq-item:nth-child(2) .faq-inline-cta{background:linear-gradient(180deg,#fbfffd 0%,#eef8f3 100%);border-color:#cfe5d7;}
body.faq-page .faq-stack > .faq-item:nth-child(3) .faq-inline-cta{background:linear-gradient(180deg,#fbfdff 0%,#eef5fd 100%);border-color:#d2e1f2;}
body.faq-page .faq-stack > .faq-item:nth-child(4) .faq-inline-cta{background:linear-gradient(180deg,#fdfbff 0%,#f2ecff 100%);border-color:#ddd1f1;}
body.faq-page .faq-stack > .faq-item:nth-child(5) .faq-inline-cta{background:linear-gradient(180deg,#fffdfd 0%,#fff0f5 100%);border-color:#f0d5e0;}
body.faq-page .faq-item[open] > summary{box-shadow:inset 0 -1px 0 rgba(61,95,117,.08);}
body.faq-page .cta-strip-strong{margin-top:10px;}
@media (max-width: 760px){
  body.faq-page .page-hero-simple{gap:18px;}
  body.faq-page .faq-stack{gap:18px;}
  body.faq-page .faq-stack > .faq-item > summary{padding:20px 50px 20px 18px;}
  body.faq-page .faq-stack > .faq-item > .faq-answer{padding:12px 12px 14px;gap:12px;}
  body.faq-page .faq-answer > .faq-item > summary{padding:16px 46px 16px 16px;}
  body.faq-page .faq-inline-cta{grid-template-columns:1fr;padding:16px;}
  body.faq-page .faq-inline-cta .button-row{justify-content:flex-start;}
}


.doc-section-note{margin:10px 0 18px;color:#35556c}
.enrollment-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.enrollment-doc-card{display:grid;gap:4px;padding:8px 12px;border-radius:18px;text-decoration:none;border:1px solid rgba(31,79,140,.12);box-shadow:0 10px 24px rgba(45,79,108,.08);transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;align-content:start;min-height:0}
.enrollment-doc-card strong{font-size:.78rem;line-height:1.14}
.enrollment-doc-card span:last-child{font-size:.68rem;line-height:1.18}
.enrollment-doc-card:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(45,79,108,.14);filter:saturate(1.03)}
.registration-steps .step-card{padding:14px 14px 11px}
.registration-steps .step-card h3{font-size:.92rem;line-height:1.1;margin-bottom:4px}
.registration-steps .step-card p{font-size:.76rem;line-height:1.22;margin-bottom:0}
.registration-grid-locked .form-card h2{font-size:1.12rem;line-height:1.1}
.registration-grid-locked .form-card .help,.registration-grid-locked .form-card .doc-section-note,.registration-grid-locked .process-list .doc-item span{font-size:.78rem;line-height:1.22}
.registration-grid-locked .process-list .doc-item strong{font-size:.84rem;line-height:1.2}
.doc-chip{font-size:.62rem;padding:3px 7px}
.doc-chip{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:3px 7px;border-radius:999px;font-size:.62rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;background:rgba(255,255,255,.72)}
.card-tone-1{background:linear-gradient(180deg,#eef7ff 0%,#d9ecff 100%);color:#18486f}
.card-tone-1 .doc-chip{color:#18486f}
.card-tone-2{background:linear-gradient(180deg,#eefbf1 0%,#daf3df 100%);color:#205b35}
.card-tone-2 .doc-chip{color:#205b35}
.card-tone-3{background:linear-gradient(180deg,#fff7ea 0%,#ffe7bf 100%);color:#845011}
.card-tone-3 .doc-chip{color:#845011}
.card-tone-4{background:linear-gradient(180deg,#f7f0ff 0%,#e8d8ff 100%);color:#5f3c86}
.card-tone-4 .doc-chip{color:#5f3c86}
.card-tone-5{background:linear-gradient(180deg,#fff0f5 0%,#ffd7e8 100%);color:#8c3658}
.card-tone-5 .doc-chip{color:#8c3658}
.card-tone-6{background:linear-gradient(180deg,#effcfb 0%,#d4f2ef 100%);color:#1c5c59}
.card-tone-6 .doc-chip{color:#1c5c59}
@media (max-width:760px){.enrollment-doc-grid{grid-template-columns:1fr}}


.enrollment-doc-accordion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.enrollment-doc-accordion{border:1px solid rgba(31,79,140,.12);border-radius:18px;box-shadow:0 10px 24px rgba(45,79,108,.08);overflow:hidden;transition:transform .18s ease, box-shadow .18s ease, filter .18s ease}
.enrollment-doc-accordion:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(45,79,108,.14);filter:saturate(1.03)}
.enrollment-doc-accordion summary{list-style:none;cursor:pointer;padding:10px 46px 10px 12px;position:relative;display:grid;gap:4px}
.enrollment-doc-accordion summary::-webkit-details-marker{display:none}
.enrollment-doc-accordion summary::after{content:"+";position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:1.3rem;line-height:1;color:currentColor;opacity:.8}
.enrollment-doc-accordion[open] summary::after{content:"−"}
.enrollment-doc-accordion summary strong{font-size:.78rem;line-height:1.14}
.enrollment-doc-summary{font-size:.68rem;line-height:1.18;display:block}
.enrollment-doc-body{padding:0 12px 12px;border-top:1px solid rgba(31,79,140,.12);background:rgba(255,255,255,.42)}
.enrollment-doc-body p{font-size:.72rem;line-height:1.24;margin:10px 0 0;color:inherit}
.enrollment-doc-actions{margin-top:10px}
.btn-small{padding:8px 12px;font-size:.74rem;border-radius:12px}
@media (max-width:760px){.enrollment-doc-accordion-grid{grid-template-columns:1fr}.enrollment-doc-accordion summary{padding:10px 42px 10px 12px}}


/* Testimonials inline expansion without changing page layout */
.testimonials-grid-enhanced{align-items:stretch}
.quote-review{display:flex;flex-direction:column;gap:10px}
.quote-stars{font-size:.8rem;letter-spacing:.14em;color:#c99700;line-height:1}
.quote-title{display:block;font-size:1.02rem;line-height:1.45}
.quote-copy{margin:0;line-height:1.68}
.review-more[hidden]{display:none !important}
.review-toggle{margin-top:auto;font-weight:700;color:var(--primary);text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.review-toggle:hover{text-decoration:underline}
.contact-quick-choices{margin-top:0}
@media (max-width:760px){.contact-quick-choices .button-row,.cta-strip .button-row{width:100%}}


/* Schedule page redesign */
body.schedule-page .section:first-of-type{
  background:linear-gradient(180deg,#efe4f8 0%, #ffffff 78%);
}

.schedule-main .container{
  display:block;
}

.schedule-hero-card{
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:22px;
  padding:28px;
  background:linear-gradient(135deg,#ffffff 0%,#faf5ff 52%,#eef7fc 100%);
  border:1px solid #e1d4f3;
  border-radius:28px;
  box-shadow:0 18px 40px rgba(83,84,115,.10);
  margin:24px 0 28px;
}

.schedule-badge{
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border-radius:999px;
  background:#e9dcf6;
  color:#5f3f7d;
  font-size:.88rem;
  font-weight:700;
  letter-spacing:.02em;
  text-transform:uppercase;
}

.schedule-hero-copy h2{
  margin:14px 0 10px;
  font-size:clamp(1.6rem,2.7vw,2.4rem);
  line-height:1.08;
}

.schedule-hero-copy p{
  margin:0;
  color:var(--muted);
  max-width:62ch;
}

.schedule-stats{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px;
  align-content:start;
}

.schedule-stat{
  padding:18px;
  border-radius:20px;
  background:rgba(255,255,255,.85);
  border:1px solid #dfebf3;
  box-shadow:0 10px 26px rgba(70,96,116,.07);
}

.schedule-stat strong{
  display:block;
  font-size:1rem;
  margin-bottom:6px;
  color:#244f69;
}

.schedule-stat span{
  color:var(--muted);
  font-size:.94rem;
}

.schedule-timeline{
  position:relative;
  display:grid;
  gap:16px;
  margin-top:8px;
}

.schedule-block{
  position:relative;
  display:grid;
  grid-template-columns:220px 1fr;
  gap:18px;
  align-items:start;
}

.schedule-block::before{
  content:"";
  position:absolute;
  left:106px;
  top:0;
  bottom:-16px;
  width:2px;
  background:linear-gradient(180deg,#d8c7ec 0%,#dfeaf4 100%);
}

.schedule-block:last-child::before{
  bottom:28px;
}

.schedule-time,
.schedule-content{
  position:relative;
  z-index:1;
}

.schedule-time{
  padding:18px 18px 18px 20px;
  border-radius:20px;
  background:linear-gradient(180deg,#fff7ff 0%,#f7f1ff 100%);
  border:1px solid #e2d6f0;
  font-weight:700;
  color:#533a72;
  box-shadow:0 10px 24px rgba(93,77,125,.08);
}

.schedule-time span{
  display:block;
  margin-top:6px;
  font-size:.9rem;
  color:#7a6a8f;
  font-weight:600;
}

.schedule-content{
  padding:22px;
  border-radius:24px;
  background:rgba(255,255,255,.96);
  border:1px solid #dfe7ef;
  box-shadow:0 12px 28px rgba(70,96,116,.08);
}

.schedule-tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  margin-bottom:12px;
  border-radius:999px;
  background:linear-gradient(90deg,#dbeef9 0%,#e9dcf6 52%,#fbe7cc 100%);
  color:#34556c;
  font-size:.9rem;
  font-weight:700;
}

.schedule-content h3{
  margin:0 0 8px;
  font-size:1.25rem;
}

.schedule-content p{
  margin:0;
  color:var(--muted);
}

.schedule-cta{
  margin-top:28px;
}

@media (max-width:1024px){
  .schedule-hero-card,
  .schedule-block{
    grid-template-columns:1fr;
  }
  .schedule-block::before{
    display:none;
  }
}

@media (max-width:760px){
  .schedule-hero-card{
    padding:22px;
  }
  .schedule-stats{
    grid-template-columns:1fr 1fr;
  }
  .schedule-time,
  .schedule-content{
    padding:18px;
  }
}

@media (max-width:560px){
  .schedule-stats{
    grid-template-columns:1fr;
  }
  .schedule-tag{
    font-size:.85rem;
  }
}


body.home-page{background-color:#f7fbff !important;}
body.home-page .section:first-of-type{padding-top:26px;}
body.home-page .kicker{background:#f6d9ae;color:#6b4f21;}
.home-page .homepage-trust-card span,.home-page .step-card p{max-width:56ch;}
.turnstile-placeholder strong{display:block;margin-bottom:4px;}
