/* Shared editorial type hierarchy. Content and font choices remain editable. */
:root {
 --wels-h1:clamp(2.15rem,4.5vw,3.35rem);
 --wels-h2:clamp(1.75rem,3.15vw,2.5rem);
 --wels-h3:clamp(1.12rem,1.75vw,1.35rem);
 --wels-h4:1rem;
}
body { line-height:1.75; text-rendering:optimizeLegibility; }
.gadps-about-recognitions{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 36px;list-style:none;margin:30px 0 0;padding:22px 20px;background:#f0f5e4;border:1px solid #dce6c7;border-radius:8px}
.gadps-about-recognitions li{display:flex;align-items:center;justify-content:center;gap:10px;flex:1 1 220px;font-size:14px;font-weight:600;color:#193454;text-align:center;line-height:1.5}
.gadps-recognition-icon{display:inline-flex;align-items:center;justify-content:center;color:#718c35;font-size:24px;width:30px;flex-shrink:0}
.wels-home .wels-about:has(.gadps-about-recognitions){padding-bottom:24px}
.wels-home .wels-about:has(.gadps-about-recognitions)+.wels-academics{padding-top:30px}
@media(max-width:600px){.gadps-about-recognitions{gap:8px;padding:18px 8px}.gadps-about-recognitions li{flex:1 1 95px;flex-direction:column;gap:5px;font-size:12px}.gadps-recognition-icon{font-size:22px}}
h1,h2 { font-family:var(--wels-heading-font); font-weight:700; line-height:1.16; letter-spacing:-.025em; text-wrap:balance; }
h3,h4,h5,h6 { font-family:var(--wels-body-font); line-height:1.35; letter-spacing:-.012em; text-wrap:balance; }
.wels-page-title { font-size:var(--wels-h1); line-height:1.12; }
.wels-section-title,.wels-welcome-title { font-size:var(--wels-h2); }
.wels-section-title::after { width:48px; height:3px; margin-top:16px; }
.wels-page-body h2 { line-height:1.22; }
.wels-section-head { margin-bottom:clamp(24px,3vw,38px); }
.wels-page-body>p { max-width:72ch; font-size:1.04rem; line-height:1.85; margin-bottom:1.25rem; }
.wels-about p,.wels-leader-full p,.wels-contact p { line-height:1.8; }
.wels-card-title,.wels-ach-album-copy h3,.wels-homework-list h3 { font-family:var(--wels-body-font); font-size:1.15rem; font-weight:700; line-height:1.4; letter-spacing:-.015em; }
.wels-card-text,.wels-ach-album-copy p { font-size:.98rem; line-height:1.8; }
.wels-card-tagline,.wels-ach-album-year { font-size:.73rem; font-weight:700; letter-spacing:.085em; line-height:1.5; }
.wels-menu>li>a { font-size:.94rem; font-weight:600; letter-spacing:.005em; }
.wels-menu .sub-menu a { line-height:1.5; }
.wels-btn { font-weight:650; letter-spacing:.015em; line-height:1.45; }
.wels-breadcrumb { font-size:.79rem; letter-spacing:.02em; }
.wels-footer h3 { font-size:1rem; font-weight:700; letter-spacing:.015em; }
.wels-ach-intro h2 { font-family:var(--wels-heading-font); font-size:var(--wels-h2); margin:.55rem 0 .65rem; }
.wels-ach-intro>span { font-size:.7rem; letter-spacing:.12em; }
.wels-ach-album-group>h2,.wels-homework-class>h2 { font-family:var(--wels-heading-font); font-size:1.85rem; text-transform:none; letter-spacing:-.02em; }
.wels-stage p { line-height:1.75; }
.wels-stage-rule p,.wels-stage-point p,.wels-stage-stream-body>p { font-size:.94rem; line-height:1.75; }
.wels-stage-subjects li { font-size:.86rem; line-height:1.6; }
.wels-stage-rule h3,.wels-stage-point h3 { font-size:1.04rem; line-height:1.4; }
.wels-page-body :is(p,li,td,th) { overflow-wrap:break-word; }
@media(max-width:600px) {
 .wels-page-body>p { font-size:1rem; line-height:1.8; }
 .wels-card-title,.wels-homework-list h3 { font-size:1.08rem; }
 .wels-ach-album-group>h2,.wels-homework-class>h2 { font-size:1.65rem; }
 .wels-section-title::after { margin-top:12px; }
}
