.header nav a{font-size:14px;letter-spacing:.015em}.header nav{gap:20px}.header .brand-name{font-size:35px}.header nav .nav-contact{font-size:13px}.portal-hero{padding-block:32px 50px}.portal-title{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-bottom:28px}.portal-title h1{font-size:30px;margin-top:10px;line-height:1.5;letter-spacing:.015em}.portal-title>p{font-size:15px;color:var(--sub)}.portal-title .eyebrow{font-size:11px}.portal-hero .hero-card{min-height:440px}.portal-hero .hero-card-text h3{font-size:43px}.portal .section{padding-block:70px}.portal .section-heading h2{font-size:30px}.portal .section-heading>p{font-size:14px}.portal .section-heading{margin-bottom:32px}.portal .section-label{margin-bottom:13px}.contents-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.content-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;transition:box-shadow .2s,transform .2s}.content-card:hover{transform:translateY(-4px);box-shadow:0 10px 26px #00000010}.content-image{aspect-ratio:16/10;position:relative;overflow:hidden}.content-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.content-card:hover img{transform:scale(1.035)}.content-status{position:absolute;left:16px;top:16px;background:#fff;border-radius:30px;padding:6px 12px;font-size:12px;font-weight:700}.content-copy{padding:25px;display:flex;flex-direction:column;flex:1}.content-copy .kicker{font-size:11px}.content-copy h3{font-size:24px;margin-block:13px 15px}.content-copy>p:not(.kicker){font-size:15px;color:var(--sub)}.content-more{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:700;padding-top:24px;margin-top:auto;color:var(--red)}.content-more>span{font-size:24px}.coming-heading{margin-block:44px 22px;display:flex;align-items:center;gap:25px}.coming-heading h3{font-size:22px}.coming-heading p{font-size:14px;color:var(--sub)}.coming-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.coming-card{padding:28px;background:var(--paper);border-radius:16px;border:1px solid var(--line);transition:background .2s}.coming-card:last-child{background:#f1f3fc}.coming-card:hover{background:#e8eddd}.coming-top{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:22px}.coming-card h3{font-size:25px;margin-bottom:12px}.coming-card>p{font-size:15px;color:var(--sub)}.portal-feature{padding-block:65px}.portal-feature .feature-heading h2{font-size:32px}.portal-feature .feature-grid{margin-top:35px}.portal .community-section{padding-block:55px}.portal .community-photo img{aspect-ratio:1.5}.portal .community-copy h2{font-size:31px}.portal-about{padding-block:25px 60px;display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}.portal-about>img{aspect-ratio:1.65;object-fit:cover;border-radius:16px}.portal-about h2{font-size:30px;margin-bottom:18px}.portal-about p:not(.section-label){font-size:15px;color:var(--sub);margin-bottom:23px}.portal .contact-section{padding-block:55px;border-top:1px solid var(--line)}.portal .contact-layout h2{font-size:36px}.footer-links{display:flex;flex-wrap:wrap;gap:20px;font-size:14px}.footer-links a:hover{color:var(--red)}.breadcrumb{display:flex;align-items:center;gap:14px;font-size:13px;color:var(--sub);padding-block:25px}.breadcrumb a{color:var(--ink)}.breadcrumb a:hover{text-decoration:underline}.detail-hero{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center;padding-block:20px 55px}.detail-hero h1{font-size:48px;margin:0 0 18px;line-height:1.45}.detail-hero .section-label{margin-bottom:14px}.detail-hero>img{width:100%;aspect-ratio:1.2;object-fit:cover;border-radius:20px}.detail-catch{font-size:26px;font-weight:700;line-height:1.65;margin-bottom:20px}.detail-lead{font-size:16px;line-height:1.95;color:var(--sub);margin-bottom:25px}.detail-status{margin-bottom:20px}.detail-jump{display:flex;justify-content:center;gap:36px;border-block:1px solid var(--line);padding-block:18px;font-size:14px;font-weight:700;flex-wrap:wrap}.detail-jump a:hover{color:var(--red)}.detail-section{padding-block:75px;scroll-margin-top:105px}.detail-section h2,.detail-band h2,.person-strip h2,.join-section h2{font-size:34px;line-height:1.6;margin-bottom:22px}.detail-split{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:center}.detail-split>img{width:100%;aspect-ratio:1.3;object-fit:cover;border-radius:18px}.detail-split.flip>img{order:2}.detail-split p:not(.section-label){font-size:16px;color:var(--sub);margin-bottom:17px}.detail-band{padding-block:70px;background:var(--paper);scroll-margin-top:95px}.section-lead{font-size:16px;color:var(--sub);max-width:900px;margin-bottom:35px}.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:35px}.activity-grid article{border-top:2px solid var(--red);padding-top:20px}.activity-grid article>span{font:700 13px Arial,sans-serif;color:var(--red)}.activity-grid h3{font-size:23px;margin-block:15px}.activity-grid p{font-size:16px;color:var(--sub)}.person-strip{display:grid;grid-template-columns:180px 1fr;gap:35px;align-items:center;margin-block:20px 65px;border-top:1px solid var(--line);padding-top:35px}.person-strip img{aspect-ratio:1;object-fit:cover;object-position:50% 25%;border-radius:50%}.person-strip h2{margin-block:8px 12px;font-size:28px}.person-strip h2 span{font-size:17px;font-weight:500}.person-strip p:not(.kicker){font-size:16px;color:var(--sub);max-width:700px}.join-section{background:var(--lime);padding-block:65px;text-align:center;scroll-margin-top:95px}.join-section .section-label{color:var(--ink)}.join-section p:not(.section-label):not(.note){font-size:16px;margin-bottom:25px}.join-section .note{color:#414834}.learning-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:30px}.learning-grid article{padding:25px;background:var(--paper);border-radius:14px}.learning-grid article>span{font:700 13px Arial,sans-serif;color:var(--red)}.learning-grid h3{font-size:22px;margin-block:15px}.learning-grid p{font-size:16px;color:var(--sub)}.result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.result-grid article{background:#fff;padding:30px;border-radius:16px}.result-grid article>p{font-size:14px;color:var(--sub)}.result-grid strong{font:700 65px Arial,sans-serif;color:var(--green);display:block;margin-block:24px;line-height:1.2}.result-grid strong>span{font-size:20px;margin-left:7px}.result-grid strong.result-words{font-family:inherit;font-size:29px;line-height:1.5;margin-block:20px}.result-grid h3{font-size:20px;margin-bottom:14px}.teacher-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}.teacher-grid article{display:grid;grid-template-columns:190px 1fr;gap:25px;align-items:center;background:var(--paper);border-radius:18px;overflow:hidden}.teacher-grid img{width:100%;height:290px;object-fit:cover;object-position:50% 20%}.teacher-grid article>div{padding:22px 25px 22px 0}.teacher-grid h3{font-size:26px;margin-block:12px}.teacher-grid p:not(.kicker){font-size:15px;color:var(--sub)}.upcoming-hero{padding-block:35px 65px;max-width:1000px}.upcoming-hero h1{font-size:46px;margin-block:22px}.upcoming-hero .detail-lead{max-width:850px}.availability-panel{max-width:1000px}.availability-panel>p:not(.section-label){font-size:16px;color:var(--sub);margin-bottom:20px}.availability-panel a{text-decoration:underline;color:var(--ink);text-underline-offset:5px}.company-page .about-section{padding-top:30px}.company-page .about-section h1{font-size:42px;margin-top:0;line-height:1.55}.company-page .contact-section{padding-block:65px}
@media(max-width:1200px){.header nav{gap:15px}.header nav a{font-size:12px}.portal-hero .hero-card{min-height:390px}.portal-hero .hero-card-text h3{font-size:37px}.content-copy{padding:22px}.content-copy h3{font-size:22px}.detail-hero h1{font-size:42px}.detail-catch{font-size:23px}.teacher-grid article{grid-template-columns:150px 1fr;gap:20px}.teacher-grid article>div{padding-right:20px}.learning-grid{grid-template-columns:1fr 1fr}.result-grid article{padding:25px}.detail-section h2,.detail-band h2{font-size:31px}}
@media(max-width:1000px){.header nav a,.header nav .nav-contact{font-size:14px}.header .brand-name{font-size:31px}.contents-grid{gap:18px}.content-copy h3{font-size:20px}.content-copy{padding:20px}.coming-heading{align-items:flex-start;flex-direction:column;gap:7px}.detail-hero{gap:4%}.detail-catch{font-size:21px}.detail-jump{gap:20px}.teacher-grid article{grid-template-columns:1fr;gap:0}.teacher-grid img{height:330px;object-position:50% 25%}.teacher-grid article>div{padding:25px}.detail-split{gap:4%}.result-grid{gap:16px}.result-grid article{padding:22px}.result-grid strong{font-size:54px}}
@media(max-width:800px){.portal-title{align-items:flex-start;flex-direction:column;gap:13px}.portal-title>p br{display:none}.portal-hero .hero-card{min-height:340px}.contents-grid{grid-template-columns:1fr 1fr}.contents-grid .content-card:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.contents-grid .content-card:last-child .content-image{height:100%;aspect-ratio:auto}.content-copy h3{font-size:23px}.portal-about{grid-template-columns:1fr;gap:28px}.detail-hero{grid-template-columns:1fr;gap:28px}.detail-hero>img{aspect-ratio:1.7}.detail-hero h1{font-size:40px}.detail-catch{font-size:24px}.detail-split{grid-template-columns:1fr;gap:28px}.detail-split.flip>img{order:0}.detail-split>img{aspect-ratio:1.6}.activity-grid{gap:20px}.activity-grid h3{font-size:20px}.result-grid{grid-template-columns:1fr}.result-grid article{padding:30px}.result-grid strong.result-words br{display:none}.result-grid strong.result-words{margin-block:20px}.person-strip{grid-template-columns:140px 1fr;gap:25px}.upcoming-hero h1{font-size:39px}}
@media(max-width:600px){.header .brand-name{font-size:28px}.portal-hero{padding-block:25px 35px}.portal-title{gap:12px;margin-bottom:24px}.portal-title h1{font-size:25px;line-height:1.55;margin-top:12px}.portal-title>p{font-size:14px}.portal-title .eyebrow{font-size:10px}.portal-hero .hero-card{min-height:300px}.portal-hero .hero-card-text h3{font-size:34px}.portal-hero .hero-grid{gap:16px}.portal .section{padding-block:45px}.portal .section-heading h2{font-size:26px}.portal .section-heading{gap:15px;margin-bottom:25px}.portal .section-heading>p{font-size:14px}.contents-grid{grid-template-columns:1fr;gap:23px}.contents-grid .content-card:last-child{display:flex;grid-column:auto}.contents-grid .content-card:last-child .content-image{height:auto;aspect-ratio:16/10}.content-copy{padding:23px}.content-copy h3{font-size:25px}.coming-heading{margin-top:30px}.coming-heading h3{font-size:23px}.coming-grid{grid-template-columns:1fr;gap:18px}.coming-card{padding:24px}.coming-card h3{font-size:23px}.portal-feature{padding-block:45px}.portal-feature .feature-heading h2{font-size:27px}.portal .community-section{padding-block:45px}.portal .community-copy h2{font-size:28px}.portal-about{padding-bottom:45px}.portal-about h2{font-size:26px}.portal .contact-section{padding-block:45px}.portal .contact-layout h2{font-size:31px}.footer-links{font-size:13px;gap:10px 18px}.breadcrumb{font-size:12px;gap:10px;padding-block:20px;flex-wrap:wrap}.detail-hero{padding-block:10px 35px;gap:25px}.detail-hero h1{font-size:36px}.detail-hero>img{aspect-ratio:1.3}.detail-catch{font-size:23px}.detail-lead{font-size:16px}.detail-jump{justify-content:flex-start;gap:13px 23px;padding-block:17px;font-size:13px}.detail-section{padding-block:45px}.detail-section h2,.detail-band h2,.join-section h2{font-size:26px}.detail-band{padding-block:45px}.detail-split>img{aspect-ratio:1.3}.activity-grid{grid-template-columns:1fr;gap:30px;margin-top:27px}.activity-grid h3{font-size:23px;margin-block:12px}.person-strip{grid-template-columns:1fr;margin-block:0 45px;gap:24px}.person-strip img{width:140px}.person-strip h2{font-size:27px}.person-strip h2 span{font-size:16px}.join-section{padding-block:45px}.learning-grid{grid-template-columns:1fr;gap:18px}.learning-grid article{padding:25px}.learning-grid h3{font-size:23px}.result-grid strong{font-size:56px}.result-grid h3{font-size:22px}.teacher-grid{grid-template-columns:1fr;gap:25px}.teacher-grid img{height:350px;object-position:50% 23%}.teacher-grid article>div{padding:26px}.upcoming-hero{padding-block:20px 40px}.upcoming-hero h1{font-size:32px;margin-block:20px}.upcoming-hero .detail-catch{font-size:23px}.availability-panel{padding-block:40px}.company-page .about-section h1{font-size:31px}.company-page .about-section{padding-top:15px}.company-page .contact-section{padding-block:45px}}
@media(max-width:900px){.portal-hero .hero-grid{grid-template-columns:1fr}.portal-hero .hero-card{min-height:360px}.portal-hero .hero-card-text h3{font-size:36px}}
@media(max-width:600px){.portal-hero .hero-card{min-height:310px}.portal-hero .hero-card-text h3{font-size:clamp(1.7rem,8vw,2.1rem)}}

.contact-layout.contact-directory {
  grid-template-columns: minmax(0, 1fr);
  align-items: start;
  gap: 22px;
}
.contact-directory h2 { margin-bottom: 0; }
.contact-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.contact-option {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 24px;
}
.contact-option h3 { font-size: 19px; line-height: 1.5; }
.contact-option p { font-size: 15px; color: var(--sub); }
.contact-option .contact-meta { font-size: 13px; }
.contact-detail, .contact-shared .email-copy a {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.contact-detail { font-size: 14px; }
.contact-option .contact-mail {
  gap: 8px;
  margin-top: auto;
  padding-block: 10px;
  font-size: 15px;
}
.contact-option .contact-mail span { font-size: 20px; }
.contact-shared { max-width: 640px; }
.contact-shared .email-copy { margin-top: 0; }

@media (max-width: 900px) {
  .contact-options { grid-template-columns: minmax(0, 1fr); }
}
