/* Homepage sections. Values come from "SHCC Website v2". */

/* Opportunity. */
.opportunity{background:#fff}
.opportunity__inner{max-width:1320px;margin:0 auto;padding-left:var(--shcc-gutter);padding-right:var(--shcc-gutter);display:flex;flex-wrap:wrap;gap:var(--shcc-column-gap)}
.opportunity__media{flex:1 1 400px;min-width:0;max-width:600px}
.opportunity .section-title{text-wrap:balance}
.opportunity__figure{margin:clamp(40px,4.5vw,64px) 0 0}
.opportunity__graphic{width:100%;height:auto}
.opportunity__text{flex:1.15 1 440px;min-width:0;max-width:720px;display:flex;flex-direction:column;gap:28px}
.opportunity__lead{margin:0;font-size:clamp(21px,1.9vw,25px);line-height:1.5;font-weight:600;color:var(--shcc-navy);text-wrap:pretty}
.prose-block p{margin:0;font-size:18px;line-height:1.75;text-wrap:pretty}
.prose-block p+p{margin-top:28px}
.opportunity__icons{margin-top:clamp(16px,2vw,28px);padding-top:clamp(28px,3vw,40px);border-top:1px solid var(--shcc-rule)}
.opportunity__icons-img{width:min(100%,380px);height:auto}

/* MapleH²Next. */
.maple{background:var(--shcc-pale)}
.maple__inner{max-width:1320px;margin:0 auto;padding-left:var(--shcc-gutter);padding-right:var(--shcc-gutter)}
.maple__columns{display:flex;flex-wrap:wrap;gap:var(--shcc-column-gap)}
.maple__heading{flex:1 1 320px}
.maple__sub{margin:14px 0 0;max-width:420px;font-size:clamp(19px,1.7vw,23px);line-height:1.35;font-weight:600;color:var(--shcc-navy);text-wrap:balance}
.maple__body{flex:1.6 1 480px;min-width:0;max-width:720px;font-size:18px;line-height:1.75;color:#2a2e3d}
.maple__body p{margin:0;text-wrap:pretty}
.maple__body p+p{margin-top:28px}
.maple__body strong{font-weight:700;color:var(--shcc-navy)}
.maple__callout{margin:clamp(64px,7vw,104px) auto 0;max-width:860px;display:flex;flex-direction:column;align-items:center;gap:32px}
.maple__rule{width:64px;height:3px;background:var(--shcc-navy)}
.maple__callout-text{margin:0;text-align:center;font-size:clamp(22px,2.2vw,30px);line-height:1.4;font-weight:600;color:var(--shcc-navy);text-wrap:balance}

/* Who We Are. */
.who{background:#fff}
.who__inner{max-width:1320px;margin:0 auto;padding-left:var(--shcc-gutter);padding-right:var(--shcc-gutter);display:flex;flex-wrap:wrap;gap:var(--shcc-column-gap)}
.who__title{flex:1 1 320px}
.who__text{flex:1.6 1 480px;min-width:0;max-width:720px;display:flex;flex-direction:column;gap:28px}
.who__lead{margin:0;font-size:clamp(19px,1.6vw,21px);line-height:1.65;font-weight:500;color:var(--shcc-navy);text-wrap:pretty}
.who__para{margin:16px 0 0;font-size:18px;line-height:1.75;text-wrap:pretty}
.who__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--shcc-rule)}
.who__list li{display:flex;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid var(--shcc-rule);font-size:19px;font-weight:600;color:var(--shcc-navy)}
.who__icon{flex:none;display:block;color:var(--shcc-sky)}

/* Our Mission. */
.mission{position:relative;overflow:hidden;background:var(--shcc-navy);color:#fff}
.section-bg--mission{filter:blur(4px);opacity:0.16}
.mission__inner{position:relative;max-width:1320px;margin:0 auto;padding-left:var(--shcc-gutter);padding-right:var(--shcc-gutter)}
.mission__title{color:#fff}
.mission__lead{margin:clamp(40px,4.5vw,64px) 0 0;max-width:960px;font-size:clamp(22px,2.2vw,30px);line-height:1.42;font-weight:600;color:#fff;text-wrap:pretty}
.mission__columns{margin-top:clamp(64px,7vw,104px);padding-top:clamp(48px,5vw,72px);border-top:1px solid rgba(255,255,255,0.28);display:flex;flex-wrap:wrap;gap:clamp(48px,6vw,104px)}
.mission__column{flex:1 1 380px;min-width:0;max-width:600px}
.mission__para{margin:0;font-size:18px;line-height:1.8;color:#e6ecf8;text-wrap:pretty}
.mission__stack{display:flex;flex-direction:column;gap:40px}
.mission__highlight{margin:0;font-size:clamp(20px,1.8vw,23px);line-height:1.5;font-weight:600;color:var(--shcc-green);text-wrap:pretty}

/* Statement banner. */
.statement{position:relative;overflow:hidden;background:#2e3c86;color:#fff}
.section-bg--statement{filter:blur(3px);opacity:0.9}
.statement__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(46,60,134,0.9) 0%,rgba(58,122,158,0.86) 52%,rgba(72,160,170,0.84) 100%);pointer-events:none}
.statement__pattern{position:absolute;right:max(-40px,calc((100vw - 1320px) / 2 - 40px));top:50%;transform:translateY(-42%);width:clamp(260px,30vw,440px);height:auto;opacity:0.5;pointer-events:none}
.statement__inner{position:relative;max-width:1320px;margin:0 auto;padding:clamp(88px,10vw,144px) var(--shcc-gutter)}
.statement__text{margin:0;max-width:min(100%,820px);font-size:clamp(30px,3.8vw,52px);line-height:1.15;font-weight:700;letter-spacing:-0.01em;color:#fff;text-wrap:balance}

/* Contact. */
.contact{background:#fff}
.contact__inner{max-width:1320px;margin:0 auto;padding-left:var(--shcc-gutter);padding-right:var(--shcc-gutter)}
.contact__columns{margin-top:clamp(48px,5vw,72px);display:flex;flex-wrap:wrap;align-items:flex-start;gap:clamp(48px,6vw,104px)}
.contact__audience{flex:1.4 1 460px;min-width:0;max-width:720px}
.contact__intro{margin:0 0 20px;font-size:19px;line-height:1.5;font-weight:600;color:var(--shcc-navy)}
.contact__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--shcc-rule)}
.contact__list li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid var(--shcc-rule);font-size:18px;line-height:1.55}
.contact__icon{flex:none;display:block;color:var(--shcc-contact)}
.contact-panel{position:relative;overflow:hidden;flex:1 1 360px;min-width:0;background:var(--shcc-contact);color:#fff;padding:clamp(36px,4vw,56px);display:flex;flex-direction:column;gap:32px}
.contact-panel__pattern{position:absolute;right:-70px;bottom:-110px;width:300px;height:auto;opacity:0.22;pointer-events:none}
.contact-panel__lead{position:relative;margin:0;font-size:clamp(22px,2vw,27px);line-height:1.35;font-weight:600;color:#fff;text-wrap:pretty}
.contact-panel__cta{position:relative;margin:0;padding-top:28px;border-top:1px solid rgba(255,255,255,0.35);font-size:18px;line-height:1.5;font-weight:600;color:#fff}
.contact-panel__email{position:relative;margin:0;font-size:17px;line-height:1.5;color:#fff}
.contact-panel__email-link{display:inline-block;margin-top:6px;font-size:clamp(19px,1.7vw,22px);font-weight:700;color:#fff;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:6px;overflow-wrap:anywhere}
.contact-panel__email-link:hover{color:var(--shcc-pale)}
.contact-panel__address{position:relative;font-style:normal;font-size:17px;line-height:1.5}
.contact-panel__form{position:relative;background:#fff;color:var(--shcc-ink);padding:24px}
