/* The public For Families content, inside the ECNM review site's shared shell. */
.teen-replica{--teen-ink:#102b50;--teen-muted:#354d68;--teen-yellow:#ffda3b;--teen-paper:#fffdf6;color:var(--teen-ink)}
.teen-replica .teen-shell{width:min(88%,1224px);margin-inline:auto}
.teen-replica h1,.teen-replica h2,.teen-replica h3{color:var(--teen-ink);letter-spacing:-.035em}
.teen-replica h1{font-size:clamp(38px,6vw,78px);margin:24px 0 12px;line-height:1.02}
.teen-replica h2{font-size:clamp(30px,4.4vw,56px);line-height:1.08;margin:0 0 clamp(17px,3vw,32px)}
.teen-replica h3{font-size:clamp(20px,2vw,27px);margin:19px 0 7px;line-height:1.2}
.teen-replica p,.teen-replica li{font-size:clamp(15px,1.4vw,18px);line-height:1.65;color:var(--teen-muted)}
.teen-replica p{margin:0 0 14px}
.teen-replica :is(ul,ol){padding-inline-start:23px;margin:9px 0 20px}
.teen-replica li+li{margin-top:3px}
.teen-replica img{display:block;width:100%;height:auto;object-fit:contain}
.teen-replica .teen-opening{padding:clamp(22px,4vw,48px) 0 clamp(36px,5vw,65px);text-align:center;background:var(--teen-paper)}
.teen-replica .teen-opening img{aspect-ratio:1224/500;object-fit:cover;border-radius:12px}
.teen-replica .teen-intro{max-width:760px;margin-inline:auto}
.teen-replica .teen-intro h2{font-size:clamp(16px,2vw,23px);letter-spacing:.12em;margin:0 0 14px}
.teen-replica .teen-section{padding:clamp(38px,5.5vw,72px) 0;scroll-margin-top:110px;background:#fff}
.teen-replica .teen-tinted{background:#eef3f8}
.teen-replica .teen-section h2::before{display:block;content:"";width:38px;height:3px;background:var(--teen-yellow);margin:0 0 14px}
.teen-replica .teen-content{max-width:76ch}
.teen-replica .teen-split{max-width:none;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(22px,5vw,75px);align-items:start}
.teen-replica .teen-content>img{border-radius:12px}
.teen-replica .teen-action{display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin:6px 0 0;padding:10px 21px;background:var(--teen-yellow);border-radius:4px;color:var(--teen-ink);font-weight:800;text-decoration:none}
.teen-replica .teen-action:hover{text-decoration:underline;text-underline-offset:4px}
.teen-replica a:focus-visible{outline:2px solid var(--teen-ink);outline-offset:4px}
.teen-replica .teen-video iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:10px;background:var(--teen-ink)}
.teen-replica .teen-video a{display:inline-block;margin-top:8px;color:var(--teen-ink);font-weight:650;text-underline-offset:4px}
.teen-replica .teen-kicker{font-size:12px;letter-spacing:.13em;text-transform:uppercase;font-weight:800}
.teen-replica .teen-testimonials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.teen-replica .teen-testimonial{margin:0;padding:clamp(18px,2.2vw,31px);border-top:3px solid var(--teen-yellow);background:#fff;border-radius:4px}
.teen-replica .teen-testimonial img{width:31px;height:31px;margin-bottom:15px}
.teen-replica .teen-testimonial blockquote{margin:0}
.teen-replica .teen-testimonial blockquote p{font-size:16px}
.teen-replica .teen-testimonial figcaption{display:grid;gap:4px;color:var(--teen-muted);font-size:14px}
.teen-replica .teen-contact-banner{max-width:820px;padding:clamp(24px,4vw,56px) 0}
.teen-replica .teen-contact-banner img{border-radius:9px}
@media(max-width:760px){
  .teen-replica .teen-split,.teen-replica .teen-testimonials{grid-template-columns:minmax(0,1fr)}
  .teen-replica .teen-content>img{grid-row:1}
}

.teen-replica .teen-secondary{display:inline-block;margin:12px 14px;color:var(--teen-ink);font-weight:700;text-underline-offset:4px}
.teen-replica .teen-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}
.teen-replica .teen-topic{background:#fff;padding:14px 17px;border-top:3px solid var(--teen-yellow)}
.teen-replica .teen-topic h3{margin-top:0}
.teen-replica .teen-topic ul{margin-bottom:0}
.teen-replica #parent-family-experiences .teen-video{max-width:640px;margin:0 0 26px}
.teen-replica #parent-faqs details{border-top:1px solid #ccd8e5;padding:13px 0}
.teen-replica #parent-faqs summary{cursor:pointer;font-weight:750}
.teen-replica #parent-faqs details p{margin:9px 0 0}
@media(max-width:520px){.teen-replica .teen-topic-grid{grid-template-columns:minmax(0,1fr)}}

/* ECNM initiative hero and editorial section layouts. */
.teen-replica .teen-opening{
  padding:clamp(33px,4.5vw,68px) 0 clamp(28px,4vw,57px);
  background:radial-gradient(ellipse at 82% 4%,#234a76 0,transparent 61%),var(--teen-ink);
  color:white;
}
.teen-replica .teen-initiative{
  display:inline-flex;align-items:center;gap:10px;margin:0 auto 12px;
  color:var(--teen-yellow);font-size:12px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
}
.teen-replica .teen-initiative img{width:33px;height:33px;border-radius:2px;aspect-ratio:1}
.teen-replica .teen-opening h1{
  color:white;font-size:clamp(47px,7.5vw,105px);letter-spacing:-.062em;line-height:1;margin:0 auto 14px;text-align:center;
}
.teen-replica .teen-opening .teen-intro h2{
  color:#fff;font-size:clamp(19px,2.3vw,30px);line-height:1.2;letter-spacing:-.02em;
}
.teen-replica .teen-opening p{color:#e2ebf5}
.teen-replica .teen-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 18px;margin-top:17px}
.teen-replica .teen-actions :is(a,.teen-secondary){margin:0}
.teen-replica .teen-actions .teen-secondary{color:#fff;display:inline-flex;align-items:center;min-height:46px}
.teen-replica .teen-opening a:focus-visible{outline-color:var(--teen-yellow)}
.teen-replica .teen-opening .teen-hero-photo{
  margin:clamp(22px,3vw,41px) auto 0;
  width:min(100%,1100px);aspect-ratio:3.1;max-height:360px;object-position:center 49%;border-radius:14px;
}
.teen-replica .teen-section{padding-block:clamp(32px,4.7vw,64px)}
.teen-replica .teen-split{align-items:center;gap:clamp(20px,4vw,58px)}
.teen-replica .teen-content>img{
  aspect-ratio:1.53;object-fit:cover;box-shadow:0 12px 26px rgb(16 43 80 / .09)
}
.teen-replica .teen-copy>p:last-child,.teen-replica .teen-copy>ol:last-child{margin-bottom:0}
.teen-replica .teen-support-feature{
  color:white;background:radial-gradient(ellipse at 90% 0,#21446d 0,transparent 55%),var(--teen-ink)
}
.teen-replica .teen-support-feature .teen-copy>h2{color:#fff}
.teen-replica .teen-support-feature .teen-topic{background:var(--teen-paper);border-radius:3px}
.teen-replica .teen-support-feature .teen-topic li{font-size:15px;line-height:1.5}
.teen-replica .teen-support-feature a:focus-visible{outline-color:var(--teen-yellow)}
.teen-replica .teen-parent-role{margin-top:22px;padding:13px 17px;border-left:3px solid var(--teen-yellow);background:#eef3f8}
.teen-replica .teen-parent-role h3{margin-top:0}
.teen-replica .teen-parent-role p{margin-bottom:0}
.teen-replica .teen-proof-head{
  display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);
  gap:clamp(18px,4vw,55px);align-items:center;margin-bottom:clamp(19px,3vw,34px);
}
.teen-replica .teen-proof-head h2{margin-bottom:15px}
.teen-replica #parent-family-experiences .teen-video{max-width:none;margin:0}
.teen-replica #how-to-get-started{background:var(--teen-paper)}
@media(max-width:760px){
  .teen-replica .teen-content>img{grid-row:auto}
  .teen-replica .teen-proof-head{grid-template-columns:minmax(0,1fr)}
  .teen-replica .teen-opening .teen-hero-photo{aspect-ratio:1.85}
}
@media(min-width:761px){
  .teen-replica :is(#mentor-matching,#session-setup) .teen-split{
    grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)
  }
  .teen-replica :is(#mentor-matching,#session-setup) .teen-content>img{grid-area:1/1}
  .teen-replica :is(#mentor-matching,#session-setup) .teen-copy{grid-area:1/2}
}

.teen-replica .teen-initiative{flex-direction:column;gap:12px;margin-bottom:18px}
.teen-replica .teen-logo-frame{
  display:grid;place-items:center;overflow:hidden;width:clamp(116px,12vw,156px);aspect-ratio:1;
  border-radius:10px;background:#fff;box-shadow:0 8px 24px rgb(0 0 0 / .16);
}
.teen-replica .teen-initiative .teen-logo-frame img{
  display:block;width:100%;height:100%;border-radius:0;object-fit:contain;transform:scale(1.2);
}
.teen-replica .teen-opening h1{
  max-width:920px;font-size:clamp(35px,5.6vw,76px);line-height:1.04;text-wrap:balance;
}

.teen-replica .teen-support-lead{
  display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);
  gap:clamp(22px,5vw,66px);align-items:center;margin-bottom:clamp(20px,3vw,37px);
}
.teen-replica .teen-support-lead h2{margin:0 0 15px;color:white;text-wrap:balance}
.teen-replica .teen-support-lead h2::before{display:none}
.teen-replica .teen-support-lead .teen-kicker{font-size:12px;color:var(--teen-yellow)}
.teen-replica .teen-support-lead .teen-support-intro{color:#e2ebf5;max-width:44ch;margin:0}
.teen-replica .teen-support-lead img{
  width:100%;aspect-ratio:1.85;object-fit:cover;object-position:center 48%;border-radius:12px;
}
.teen-replica .teen-support-feature .teen-topic-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(10px,1.3vw,19px);margin:0
}
.teen-replica .teen-support-feature .teen-topic{padding:clamp(16px,2vw,26px)}
.teen-replica .teen-support-feature .teen-topic h3{font-size:clamp(19px,1.85vw,26px);margin:0 0 8px}
.teen-replica .teen-support-feature .teen-topic p{font-size:15px;line-height:1.52;margin:0}
.teen-replica .teen-support-next{display:flex;align-items:center;flex-wrap:wrap;gap:9px 17px;margin-top:18px}
.teen-replica .teen-support-next p{color:#e2ebf5;margin:0}
.teen-replica .teen-support-next a{margin:0}
@media(max-width:920px){.teen-replica .teen-support-feature .teen-topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.teen-replica .teen-support-lead{grid-template-columns:minmax(0,1fr)}}
@media(max-width:480px){.teen-replica .teen-support-feature .teen-topic-grid{grid-template-columns:minmax(0,1fr)}}

/* Frame each parent testimonial and use ECNM's body typography. */
.teen-replica .teen-testimonial{
  border:1px solid #c8d4e1;
  border-top:3px solid var(--teen-yellow);
}
.teen-replica .teen-testimonial :is(blockquote,blockquote p,figcaption){
  font-family:'DM Sans',Arial,sans-serif;
}
.teen-replica .teen-testimonial :is(blockquote,blockquote p){
  font-weight:400;line-height:1.65;letter-spacing:normal;
}
