/* More restrained, readable type scale */
body{font-size:16px}
.hero{min-height:660px;padding-top:64px;padding-bottom:64px;align-items:start}
.hero-copy{padding-top:0}
.hero-visual{align-self:start}
.hero h1{font-size:clamp(48px,5vw,76px);line-height:.94}
.hero-lede{font-size:19px;max-width:600px;margin:28px 0}
.eyebrow,.section-label{font-size:12px;margin-bottom:18px}
.trust-line{margin-top:34px}
.intro h2,.section-heading h2,.topics h2{font-size:clamp(38px,3.7vw,54px);line-height:1}
.large-copy{font-size:20px;line-height:1.5}
.program-card h3{font-size:30px}
.topic-list h3{font-size:24px}
.testimonials h2{font-size:clamp(38px,3.7vw,54px)}
.testimonial-slide blockquote{font-size:clamp(27px,2.8vw,40px)}
.contact h2{font-size:clamp(38px,3.7vw,54px)}

/* Temporary hero image until an Andi portrait is available */
.hero-butterfly{position:relative;z-index:2;width:min(470px,94%);aspect-ratio:.82;display:block;object-fit:cover;object-position:38% center;border-radius:38px;box-shadow:0 28px 80px rgba(2,75,115,.15)}

/* Deep-blue navigation */
.site-header{background:rgba(2,75,115,.97);border-bottom-color:rgba(255,255,255,.14)}
.site-header nav{gap:30px}
.site-header nav a{color:white;font-size:16px;letter-spacing:.025em;font-weight:600}
.site-header .nav-cta{background:var(--mint);color:var(--deep)!important}
.menu-button{border-color:var(--mint);color:var(--mint)}

/* Smaller, softer audience strip */
.audiences{background:#dff3e4;color:var(--deep);padding-top:22px;padding-bottom:22px;gap:28px}
.audiences p{color:var(--blue);font-size:10px;margin:0}
.audiences div{font-size:14px;gap:22px}

/* Stronger butterfly-flight curves */
.hero-visual .orbit{border-width:4px;opacity:.95}
.hero-visual .orbit-one{border-color:#68c982}
.hero-visual .orbit-two{border-width:3px;border-color:#9b9ed8;opacity:.85}

/* More compact homepage content */
.program-grid{gap:18px}
.program-card{min-height:300px;padding:26px 28px;border-radius:18px}
.program-card.featured{transform:none}
.program-card .number{display:none}
.card-icon{font-size:28px;margin:4px 0 24px}
.program-card h3{font-size:26px}
.program-card p{font-size:14px;line-height:1.55}
.topic-list div{grid-template-columns:24px 1fr;padding:17px 6px}
.topic-list span{font-size:13px;color:#68b97c}
.topic-list h3{font-size:19px;line-height:1.25}
.testimonials{padding-top:82px;padding-bottom:82px}
.testimonial-carousel{max-width:880px;min-height:300px;padding:44px 58px 26px;border-radius:22px}
.testimonial-carousel .quote-mark{top:24px;left:30px;font-size:88px}
.testimonial-slide blockquote{font-size:clamp(21px,2.1vw,30px);line-height:1.32;margin:18px auto 20px}
.testimonial-slide figcaption{font-size:13px}
.carousel-controls{margin-top:12px}
footer{grid-template-columns:1fr 1fr;align-items:start}
footer .footer-links,footer .social-links{display:flex;flex-wrap:wrap;gap:12px 22px}
footer .social-links{justify-content:flex-end}

@media(max-width:900px){.site-header nav{background:var(--deep)}.audiences{gap:12px}.audiences div{gap:14px}footer .social-links{justify-content:flex-start}}
@media(max-width:560px){body{font-size:15.5px}.hero h1{font-size:43px}.hero-lede{font-size:17px}.intro h2,.section-heading h2,.topics h2{font-size:36px}.large-copy{font-size:18px}.program-card h3{font-size:27px}.testimonials h2,.contact h2{font-size:36px}.testimonial-slide blockquote{font-size:23px}.hero-butterfly{width:84%;border-radius:26px}.audiences{padding-top:16px;padding-bottom:16px}.audiences div{flex-direction:row;flex-wrap:wrap;gap:6px 16px}.audiences div span{font-size:13px}}
