/*
Theme Name: ASPIRA of Illinois
Theme URI: https://aspirail.org/
Author: ASPIRA website redevelopment
Description: Accessible responsive ASPIRA of Illinois theme with original branding, school navigation, video, and imported content support.
Version: 6.0
Requires PHP: 7.4
Text Domain: aspira-of-illinois
*/
:root{--navy:#10264b;--blue:#184c90;--royal:#245db3;--red:#c52f43;--cream:#f7f9fc;--ink:#18273b;--muted:#526176;--line:#e3e9f0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:white;color:var(--ink);font:16px/1.72 system-ui,-apple-system,"Segoe UI",Arial,sans-serif}a{color:var(--blue)}a:hover{text-decoration:underline}img{max-width:100%;height:auto}.container{width:min(1180px,calc(100% - 40px));margin:auto}.skip-link{position:absolute;top:-100px;left:10px;background:white;padding:12px;z-index:100}.skip-link:focus{top:10px}.topbar{background:var(--navy);color:#e8eef8;font-size:12px;letter-spacing:.055em}.topbar .container{padding:8px 0;display:flex;justify-content:space-between;gap:12px}.topbar a{color:white}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:20}.head-inner{display:flex;align-items:center;gap:22px;min-height:94px}.logo img{width:198px;max-height:80px;object-fit:contain}.primary-nav{margin-left:auto}.nav-list{display:flex;align-items:center;list-style:none;padding:0;margin:0;gap:2px}.nav-list li{position:relative}.nav-list a{display:block;text-decoration:none;color:var(--navy);font-size:13px;font-weight:700;padding:14px 11px}.nav-list a:hover,.nav-list a:focus{color:var(--royal)}.nav-list .sub-menu{display:none;position:absolute;left:0;top:100%;background:white;box-shadow:0 14px 40px #10264b26;min-width:245px;list-style:none;padding:8px;margin:0;border-top:3px solid var(--red)}.nav-list li:hover>.sub-menu,.nav-list li:focus-within>.sub-menu{display:block}.nav-list .sub-menu a{padding:9px 14px;font-weight:500}.nav-list .sub-menu li{display:block}.btn{display:inline-block;border:0;border-radius:5px;padding:13px 22px;background:var(--red);color:#fff!important;text-decoration:none;font-weight:750;line-height:1.3}.btn:hover{background:#9f2335;text-decoration:none}.btn-outline{background:transparent;border:1px solid #fff}.nav-toggle{display:none;border:1px solid var(--line);background:#fff;padding:9px 12px;border-radius:5px;font-weight:700}.hero{background:linear-gradient(110deg,#10264be9,#123a6de6),url('assets/students.jpg') center/cover;color:#fff;padding:92px 0 96px}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:52px}.eyebrow{font-size:12px;letter-spacing:.17em;text-transform:uppercase;font-weight:800;color:#d6e7ff}.hero h1{font-size:clamp(40px,5vw,68px);line-height:1.1;letter-spacing:-.045em;margin:12px 0 20px;color:white}.hero p{max-width:600px;font-size:18px;color:#e1eaf7}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.video-frame{aspect-ratio:16/9;overflow:hidden;border-radius:12px;box-shadow:0 22px 60px #0005;background:#081a34}.video-frame iframe{border:0;width:100%;height:100%}.section{padding:75px 0}.section.alt{background:var(--cream)}.section-heading{max-width:700px;margin-bottom:30px}.kicker{color:var(--red);text-transform:uppercase;letter-spacing:.13em;font-size:12px;font-weight:800}.section h2,.page-title{font-size:clamp(28px,3.4vw,42px);line-height:1.2;letter-spacing:-.025em;color:var(--navy);margin:9px 0 15px}.lead{font-size:18px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:white;box-shadow:0 9px 28px #10264b0a}.card img{width:100%;height:175px;object-fit:cover;background:#e7edf6}.card-body{padding:22px}.card h3{font-size:20px;line-height:1.3;margin:0 0 10px;color:var(--navy)}.card p{font-size:14px;color:var(--muted);margin:0 0 18px}.card a{font-weight:700}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.feature-grid img{border-radius:10px;width:100%;max-height:420px;object-fit:cover}.link-row{display:flex;gap:12px;flex-wrap:wrap}.pill-link{display:inline-block;padding:9px 14px;border:1px solid #cfdbea;border-radius:30px;text-decoration:none;font-size:13px;font-weight:700}.page-banner{background:var(--cream);padding:55px 0;border-bottom:1px solid var(--line)}.page-banner .page-title{margin:0}.page-body{padding:55px 0 85px;min-height:300px}.content{max-width:960px}.content h2,.content h3{color:var(--navy);line-height:1.3}.content iframe{max-width:100%}.content img{max-width:100%;height:auto}.content p{margin:0 0 1.2em}.content ul{padding-left:25px}.content a{overflow-wrap:anywhere}.home-imported{padding:55px 0;border-top:1px solid var(--line)}.home-imported .content{max-width:100%}.home-imported h2{font-size:26px}.home-imported img{border-radius:8px}.footer{background:var(--navy);color:#e2e9f5;padding:54px 0 20px}.footer a{color:#e2e9f5}.footer-grid{display:grid;grid-template-columns:minmax(250px,1.6fr) minmax(130px,.75fr) minmax(130px,.75fr) minmax(220px,1.3fr);gap:30px}.footer h3{color:white;font-size:18px}.footer p{font-size:14px}.footer ul{list-style:none;padding:0}.footer li{margin-bottom:9px}.copyright{border-top:1px solid #ffffff24;padding-top:18px;margin-top:40px;font-size:12px}.notice{background:#fff8e8;border-left:4px solid #d9a63d;padding:18px 20px;margin:20px 0}.cta-strip{background:var(--blue);color:#fff;padding:35px 0}.cta-strip .container{display:flex;justify-content:space-between;align-items:center;gap:25px}.cta-strip h2{color:#fff;margin:0}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-card{border:1px solid var(--line);padding:23px;border-radius:8px}.news-card h3{font-size:18px;margin:0 0 10px}.news-card time{font-size:12px;color:var(--muted)}@media(max-width:1080px){.head-inner{flex-wrap:wrap}.nav-toggle{display:block;margin-left:auto}.primary-nav{display:none;flex-basis:100%;margin:0}.primary-nav.is-open{display:block}.nav-list{display:block;padding-bottom:15px}.nav-list .sub-menu{display:block;position:static;box-shadow:none;border:0;padding-left:18px}.nav-list a{padding:9px}.hero-grid{grid-template-columns:1fr}.hero{padding:70px 0}.cards,.news-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.container{width:min(100% - 28px,1180px)}.hero{padding:55px 0}.cards,.news-grid,.feature-grid,.footer-grid{grid-template-columns:1fr}.section{padding:48px 0}.cta-strip .container{display:block}.hero h1{font-size:42px}.topbar .container{display:block}.logo img{width:175px}}
/* Imported HTTrack content normalization */
.home-imported .content ul, .content ul {padding-left:1.3rem; margin:1rem 0 1.5rem;}
.home-imported .content li, .content li {margin:.35rem 0; padding:0; min-height:0;}
.home-imported .content li p, .content li p {margin:.25rem 0;}
.home-imported .content li:empty, .content li:empty {display:none;}
.home-imported .content a {text-underline-offset:3px;}
.home-imported .content img {max-width:100%;height:auto;}
.news-grid .news-card {height:100%;}

/* V3: clean editorial rhythm and responsive resource cards */
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;line-height:1.65}
.home-resources{background:#f5f8fc}.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.resource-card{display:flex;flex-direction:column;gap:10px;min-height:156px;padding:24px;border:1px solid #dfe7f2;border-radius:12px;background:white;text-decoration:none;color:#10264b;box-shadow:0 7px 22px #10264b08;transition:transform .18s,box-shadow .18s}.resource-card:hover,.resource-card:focus-visible{transform:translateY(-3px);box-shadow:0 14px 32px #10264b18;text-decoration:none}.resource-card strong{font-size:17px;line-height:1.35}.resource-card span{font-size:13px;color:#54677f}.resource-card .resource-arrow{margin-top:auto;color:#245db3;font-weight:750}.resource-intro{max-width:760px;color:#4b5d74;margin-bottom:26px}.section-heading h2{font-weight:780}.page-body .content{max-width:100%}.page-body .content>div.aspira-source{margin:0 0 1.2rem}.page-body .content h2{margin:0 0 12px}.contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:25px 0 36px}.contact-school{border:1px solid #dfe7f2;border-radius:12px;padding:25px;background:#fff}.contact-school h2{font-size:20px;margin:0 0 12px}.contact-panel{padding:30px;border-radius:12px;background:#f5f8fc;border:1px solid #dfe7f2;margin-top:25px}.contact-panel h2{margin-top:0}.site-status{font-size:14px;color:#55657b}.news-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.news-list article{padding:25px;border:1px solid #dfe7f2;border-radius:12px;background:#fff}.news-list h2{font-size:21px;margin:0 0 12px}.news-list a{text-decoration:none}.news-list a:hover{text-decoration:underline}.news-list p{color:#526176;font-size:15px}.section{padding:68px 0}.home-imported{display:none}.news-grid .news-card{padding:24px}.news-card a{text-decoration:none}.news-card a:hover{text-decoration:underline}.content .elementor-icon-list-items{margin:0;padding:0;list-style:none}.content .elementor-icon-list-item{margin:0;padding:0}.content .elementor-icon-list-item:before{display:none}.content .elementor-icon-list-text{display:inline}.setup-warning{padding:18px 22px;border:1px solid #d9e4f1;border-left:4px solid #c52f43;border-radius:8px;background:#f7f9fc}.site-header .logo{display:inline-flex;align-items:center}.site-header .logo img{object-fit:contain}@media(max-width:850px){.resource-grid,.contact-grid,.news-list{grid-template-columns:1fr 1fr}}@media(max-width:600px){.resource-grid,.contact-grid,.news-list{grid-template-columns:1fr}.contact-panel{padding:22px}}

/* v3.2 — restored verified social profiles */
.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:24px;flex-wrap:wrap}
.aspira-social{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.aspira-social a{display:inline-flex;align-items:center;min-height:34px;padding:5px 10px;border:1px solid #ffffff45;border-radius:6px;color:#fff;text-decoration:none;font-size:12px;font-weight:650;line-height:1.3}
.aspira-social a:hover,.aspira-social a:focus-visible{background:#ffffff20;color:#fff;text-decoration:underline;outline-offset:2px}
.social-heading{font-size:14px;color:#fff;margin:20px 0 9px}
.aspira-social-top a{min-height:25px;padding:3px 6px;font-size:11px;border-color:#ffffff30}
@media(max-width:850px){.topbar-actions{gap:9px;justify-content:flex-start}.aspira-social-top{gap:4px}}
@media(max-width:600px){.aspira-social-top{margin:7px 0}.aspira-social-top a{font-size:10px}}

/* V3.3: Normalized original Elementor icon lists across ALL imported pages. */
.page-body .content .aspira-source.icon-list,.page-body .content .elementor-widget-icon-list{margin:12px 0 28px!important;padding:0!important}
.page-body .content ul.elementor-icon-list-items,.page-body .content .aspira-source.icon-list ul{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px!important;list-style:none!important;margin:12px 0 24px!important;padding:0!important}
.page-body .content li.elementor-icon-list-item,.page-body .content .aspira-source.icon-list li{display:block!important;position:static!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;line-height:1.45!important;list-style:none!important}
.page-body .content li.elementor-icon-list-item a,.page-body .content .aspira-source.icon-list li a{display:flex!important;align-items:center;gap:10px;min-height:54px;padding:14px 17px!important;border:1px solid #dfe7f2;border-radius:9px;background:#fff;color:#184c90;text-decoration:none;font-weight:600;box-shadow:0 4px 12px #10264b08}
.page-body .content li.elementor-icon-list-item a:hover,.page-body .content .aspira-source.icon-list li a:hover{background:#f4f8fd;border-color:#b5cce8;text-decoration:underline}
.page-body .content .elementor-icon-list-icon{flex:0 0 auto;color:#c52f43}.page-body .content .elementor-icon-list-icon i{font-size:15px}
.page-body .content .elementor-icon-list-text{display:block;white-space:normal;line-height:1.4}
.page-body .content .aspira-source.heading{margin:26px 0 10px!important}.page-body .content .aspira-source.heading h2,.page-body .content .aspira-source.heading h3{margin:0!important}
.page-body .content .aspira-source.button{margin:16px 0 24px!important}.page-body .content .elementor-button{display:inline-flex;align-items:center;min-height:46px;padding:10px 20px;background:#184c90;color:white!important;border-radius:6px;text-decoration:none;font-weight:700}
.page-body .content .elementor-button:hover{background:#10264b}.page-body .content .aspira-source:empty{display:none}
.page-body .content .aspira-source p:empty{display:none}.page-body .content .aspira-source ul:not(.elementor-icon-list-items) li{margin:.4rem 0}
.page-body .content .aspira-source img{max-width:100%;height:auto}.page-body .content .aspira-source a{overflow-wrap:anywhere}
@media(max-width:600px){.page-body .content ul.elementor-icon-list-items,.page-body .content .aspira-source.icon-list ul{grid-template-columns:1fr}}

/* v3.4: touch-friendly social buttons and robust small-screen layout */
html{overflow-x:clip}body{overflow-wrap:break-word}iframe,video,embed,object{max-width:100%}table{display:block;max-width:100%;overflow-x:auto}pre{max-width:100%;overflow-x:auto}
.aspira-social{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.aspira-social a.aspira-social-button{display:inline-flex;gap:9px;align-items:center;justify-content:center;min-height:46px;padding:10px 15px;border:1px solid #ffffff55;border-radius:999px;background:#ffffff12;color:#fff;text-decoration:none;font-size:13px;font-weight:750;letter-spacing:0;transition:background .15s,transform .15s,box-shadow .15s}
.aspira-social a.aspira-social-button:hover,.aspira-social a.aspira-social-button:focus-visible{background:#fff;color:#10264b;box-shadow:0 5px 18px #0002;text-decoration:none;transform:translateY(-1px)}
.aspira-social-dot{display:inline-grid;place-items:center;width:24px;height:24px;flex:none;border-radius:50%;background:#fff;color:#10264b;font-size:12px;font-weight:850}
.aspira-social-button:hover .aspira-social-dot,.aspira-social-button:focus-visible .aspira-social-dot{background:#10264b;color:#fff}
.topbar .container{align-items:center}.topbar-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.aspira-social-top a.aspira-social-button{min-height:36px;padding:5px 10px;font-size:11px}.aspira-social-top .aspira-social-dot{width:20px;height:20px;font-size:10px}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid #e6a01b;outline-offset:3px}
:where(.content,.page-body) :where(input:not([type=checkbox]):not([type=radio]),textarea,select){max-width:100%;min-height:44px}
@media(max-width:1080px){.head-inner{gap:12px;padding:10px 0}.site-header .logo{margin-right:auto}.nav-toggle{min-height:44px;min-width:80px;cursor:pointer}.primary-nav{order:5;width:100%;flex-basis:100%}.nav-list{max-height:70vh;overflow-y:auto}.nav-list a{min-height:44px;display:flex;align-items:center}.head-inner>.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.topbar .container{flex-direction:column;align-items:flex-start}.topbar-actions{width:100%}}
@media(max-width:680px){.container{width:calc(100% - 32px)}.head-inner{min-height:72px}.logo img{width:min(145px,38vw);max-height:62px}.head-inner>.btn{padding:11px 13px;font-size:13px}.nav-toggle{padding:9px 10px}.topbar .container{padding:10px 0;gap:6px}.topbar-actions{gap:8px}.aspira-social-top{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;gap:8px}.aspira-social-top a.aspira-social-button{justify-content:flex-start;min-width:0;font-size:12px;padding:8px 10px;min-height:44px}.aspira-social:not(.aspira-social-top){display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.aspira-social:not(.aspira-social-top) a{min-width:0}.hero h1{font-size:clamp(32px,9vw,42px)}.hero p{font-size:16px}.hero-actions .btn{width:100%;text-align:center}.page-banner{padding:35px 0}.page-body{padding:35px 0 60px}.resource-card{min-height:0}.content{min-width:0}.content a{overflow-wrap:anywhere}}
@media(max-width:360px){.aspira-social{grid-template-columns:1fr!important}.head-inner{gap:7px}.logo img{width:115px}.nav-toggle{min-width:65px}.head-inner>.btn{padding:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* v3.5: recognizable social brand colors, including accessible focus/hover states */
.aspira-social a.aspira-social-button{color:#fff;border:1px solid transparent;box-shadow:0 3px 10px #00000020;background:#334155}
.aspira-social a.aspira-social-facebook{background:#1877f2;border-color:#1877f2}
.aspira-social a.aspira-social-instagram{background:linear-gradient(115deg,#833ab4 0%,#c13584 45%,#e1306c 70%,#f77737 100%);border-color:#c13584}
.aspira-social a.aspira-social-linkedin{background:#0a66c2;border-color:#0a66c2}
.aspira-social a.aspira-social-twitter-x{background:#111111;border-color:#444}
.aspira-social a.aspira-social-button:hover,.aspira-social a.aspira-social-button:focus-visible{color:#fff;filter:brightness(1.13);background-color:inherit;box-shadow:0 7px 18px #00000035;transform:translateY(-2px)}
.aspira-social a.aspira-social-facebook:hover,.aspira-social a.aspira-social-facebook:focus-visible{background:#1465d2}
.aspira-social a.aspira-social-instagram:hover,.aspira-social a.aspira-social-instagram:focus-visible{background:linear-gradient(115deg,#70329d,#a72c71 45%,#cb275d 70%,#df692e)}
.aspira-social a.aspira-social-linkedin:hover,.aspira-social a.aspira-social-linkedin:focus-visible{background:#084f98}
.aspira-social a.aspira-social-twitter-x:hover,.aspira-social a.aspira-social-twitter-x:focus-visible{background:#282828}
.aspira-social a.aspira-social-button .aspira-social-dot{background:#ffffffeb;color:#17243c}
.aspira-social a.aspira-social-button:hover .aspira-social-dot,.aspira-social a.aspira-social-button:focus-visible .aspira-social-dot{background:#fff;color:#17243c}

/* v3.6 — compact branded social buttons: labels only, one horizontal row */
.aspira-social,.aspira-social-top,.aspira-social:not(.aspira-social-top){display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;grid-template-columns:none!important;gap:8px;align-items:center;width:max-content;max-width:100%;}
.aspira-social a.aspira-social-button,.aspira-social-top a.aspira-social-button{display:inline-flex;flex:0 0 auto;white-space:nowrap;min-width:0;min-height:36px;padding:8px 13px;font-size:12px;line-height:1.2;gap:0;justify-content:center;border-radius:999px;}
.aspira-social-dot{display:none!important;}
.topbar-actions{min-width:0;}
.topbar .container{min-width:0;}
/* On narrow screens keep a single line and allow horizontal swiping instead of wrapping. */
@media(max-width:680px){.aspira-social,.aspira-social-top,.aspira-social:not(.aspira-social-top){width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding:2px 0 7px;}.aspira-social a.aspira-social-button,.aspira-social-top a.aspira-social-button{min-height:42px;padding:10px 13px;font-size:12px;}.topbar-actions{width:100%;max-width:100%;}.topbar .container{overflow:visible;}}
@media(max-width:360px){.aspira-social,.aspira-social-top{grid-template-columns:none!important;}}

/* v3.7 — site-wide usability and readable announcements */
:root{--aspira-line:#e3eaf3;--aspira-ink:#10264b}
.content{max-width:100%;overflow-wrap:anywhere}
.page-body .content>p,.page-body .content>.aspira-source.text-editor{max-width:850px;line-height:1.78}
.page-body .content h2{line-height:1.22;letter-spacing:-.02em}
.page-body .content a:not(.pill-link):hover{text-decoration-thickness:2px;text-underline-offset:3px}
.page-body .content img{max-width:100%;height:auto;object-fit:contain}
.page-body .content .aspira-source.icon-list{margin-block:10px 20px!important}
.news-list{display:grid;grid-template-columns:1fr;gap:18px;max-width:930px}
.news-list article,.news-card{border:1px solid var(--aspira-line);border-radius:16px;padding:clamp(20px,3vw,32px);background:#fff;box-shadow:0 8px 28px #10264b08;transition:box-shadow .2s,transform .2s}
.news-list article:hover,.news-card:hover{box-shadow:0 12px 35px #10264b14;transform:translateY(-2px)}
.news-list article h2{font-size:clamp(20px,2.6vw,25px);margin:0 0 10px;line-height:1.3}
.news-list article p{line-height:1.7;margin:0 0 14px}
.news-list article>a:last-child{font-weight:700}
.article-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:#50627b;font-size:14px;margin-bottom:30px}
.article-crumbs a{font-weight:700}.article-actions{border-top:1px solid var(--aspira-line);margin-top:42px;padding-top:25px;display:flex;flex-wrap:wrap;gap:12px}
.header-search{display:flex;align-items:center;flex:0 1 175px;min-width:105px;border:1px solid #d7e1ed;border-radius:999px;overflow:hidden;background:#fff}
.header-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;padding:10px 4px 10px 14px;font-size:13px;color:#10264b}
.header-search button{background:transparent;border:0;cursor:pointer;padding:5px 12px;font-size:24px;color:#184c90;line-height:1}
.header-search:focus-within{outline:2px solid #e6a01b;outline-offset:2px}
@media(max-width:1120px){.header-search{order:4;flex:1 1 100%;max-width:100%;margin:4px 0 8px}.header-search input{font-size:16px}}
@media(max-width:680px){.news-list article,.news-card{padding:20px}.page-body .content{font-size:16px}.article-actions .pill-link{flex:1 1 100%;text-align:center}.page-banner .page-title{overflow-wrap:anywhere}.header-search{margin:2px 0 6px}}

/* v3.8: coherent reading layout for imported announcement pages */
.page-body{min-height:40vh}.page-body .content{width:100%;max-width:960px;margin-inline:auto}
.aspira-article-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:16px 0 25px;color:#526176;font-size:13px}
.aspira-category{display:inline-flex;align-items:center;background:#edf3fa;border:1px solid #d9e7f5;border-radius:999px;color:#184c90;font-weight:700;padding:5px 12px}
.aspira-article-content{font-size:16px;line-height:1.8;max-width:860px}
.aspira-article-content :is(h2,h3,h4){margin-top:1.65em;margin-bottom:.55em;line-height:1.3}
.aspira-article-content :is(p,ul,ol){margin-block:0 1.05em}
.aspira-article-content :is(ul,ol){padding-left:1.5em}
.aspira-article-content li{margin:.3em 0}
.aspira-article-content :is(a,img){max-width:100%}
.aspira-article-content :is(a,button){touch-action:manipulation}
.aspira-article-content :is(table,iframe){max-width:100%}
.article-actions{border-top:1px solid #e3eaf3;margin-top:38px;padding-top:22px;display:flex;gap:12px;flex-wrap:wrap}
.news-list article a,.news-card a{text-underline-offset:3px}
@media(max-width:600px){.aspira-article-content{font-size:15.5px;line-height:1.7}.page-body .content{padding-inline:0}.article-actions .pill-link{width:100%;text-align:center}}

/* v3.9: responsive navigation that never squeezes labels into two lines. */
@media (min-width:1351px){
 .head-inner{gap:14px;flex-wrap:nowrap}
 .site-header .logo{flex:0 0 auto}
 .site-header .logo img{width:170px}
 .primary-nav{min-width:0;margin-left:auto}
 .nav-list{display:flex;flex-wrap:nowrap;gap:0}
 .nav-list>li{flex:0 0 auto}
 .nav-list>li>a{white-space:nowrap;overflow-wrap:normal;word-break:normal;padding:12px 8px;font-size:12.5px}
 .header-search{flex:0 0 155px;min-width:125px;order:initial;max-width:none;margin:0}
 .head-inner>.btn{white-space:nowrap;flex:0 0 auto;padding:12px 18px}
 .nav-toggle{display:none}
}
@media (min-width:1351px) and (max-width:1480px){
 .head-inner{gap:10px}
 .site-header .logo img{width:155px}
 .nav-list>li>a{padding:11px 6px;font-size:12px}
 .header-search{flex-basis:130px;min-width:115px}
 .head-inner>.btn{padding:11px 14px}
}
@media (max-width:1350px){
 .head-inner{display:flex;flex-wrap:wrap;gap:12px;padding:12px 0;min-height:76px}
 .site-header .logo{margin-right:auto;flex:0 1 auto}
 .site-header .logo img{width:165px;max-height:66px}
 .nav-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:86px;cursor:pointer;order:2}
 .head-inner>.btn{order:3;min-height:44px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
 .header-search{order:4;flex:1 1 100%;min-width:0;max-width:100%;margin:0 0 4px}
 .primary-nav{display:none;order:5;flex:1 1 100%;width:100%;margin:0}
 .primary-nav.is-open{display:block}
 .nav-list{display:block;padding:8px 0 12px;max-height:65vh;overflow-y:auto;border-top:1px solid #e3e9f0}
 .nav-list>li>a{display:flex;align-items:center;min-height:44px;padding:10px 12px;white-space:normal;font-size:15px}
 .nav-list .sub-menu{display:block;position:static;box-shadow:none;border:0;padding:0 0 8px 18px;min-width:0}
 .nav-list .sub-menu a{font-size:14px;padding:9px 12px;min-height:40px}
}
@media (max-width:480px){
 .site-header .logo img{width:min(140px,35vw)}
 .head-inner{gap:8px}
 .nav-toggle{min-width:74px;padding:9px}
 .head-inner>.btn{padding:11px 13px;font-size:13px}
}

/* v4.2 — larger, readable desktop navigation with breathing room. */
@media (min-width:1351px){
 .site-header .container{width:min(1440px,calc(100% - 48px))}
 .head-inner{gap:12px;min-height:104px}
 .site-header .logo img{width:185px;max-height:83px}
 .nav-list>li>a{font-size:15px;line-height:1.35;font-weight:700;padding:14px 9px;letter-spacing:-.015em}
 .nav-list .sub-menu a{font-size:14px;line-height:1.45}
 .header-search{flex:0 0 148px;min-width:120px}
 .head-inner>.btn{padding:14px 19px;font-size:15px}
}
@media (min-width:1351px) and (max-width:1500px){
 .site-header .container{width:calc(100% - 36px)}
 .head-inner{gap:9px}
 .site-header .logo img{width:165px}
 .nav-list>li>a{font-size:14px;padding:13px 7px}
 .header-search{flex-basis:125px;min-width:110px}
 .head-inner>.btn{padding:13px 15px}
}
@media (max-width:1350px){
 .nav-list>li>a{font-size:17px;font-weight:700;min-height:48px}
 .nav-list .sub-menu a{font-size:15px}
}


/* v4.3 — balanced, high-contrast header and more legible desktop navigation.
   Keep the existing mobile menu behavior below 1351px. */
@media (min-width:1351px) {
  .site-header {border-bottom:1px solid #dce5f0;box-shadow:0 3px 14px rgba(16,38,75,.055)}
  .site-header .container {width:min(1370px,calc(100% - 44px))}
  .head-inner {display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:102px;flex-wrap:nowrap}
  .site-header .logo {flex:0 0 185px;margin:0;min-width:0}
  .site-header .logo img {width:185px;max-height:83px}
  .primary-nav {flex:1 1 auto;min-width:0;margin:0 0 0 20px}
  .nav-list {display:flex;align-items:center;justify-content:center;gap:2px;flex-wrap:nowrap}
  .nav-list>li>a {font-size:15px;font-weight:750;line-height:1.4;letter-spacing:0;white-space:nowrap;padding:15px 9px;color:#10264b;border-radius:7px;transition:background-color .16s,color .16s}
  .nav-list>li>a:hover,.nav-list>li>a:focus-visible {color:#164d93;background:#edf4fc;text-decoration:none}
  .nav-list .current-menu-item>a,.nav-list .current_page_item>a {color:#164d93;background:#f0f5fb}
  .header-search {flex:0 0 145px;min-width:125px;max-width:145px;margin:0;order:initial}
  .head-inner>.btn {flex:0 0 auto;padding:14px 19px;font-size:15px;border-radius:7px;box-shadow:0 2px 6px rgba(157,35,53,.1)}
}
@media (min-width:1351px) and (max-width:1500px) {
  .site-header .container {width:calc(100% - 36px)}
  .head-inner {gap:10px}
  .site-header .logo {flex-basis:155px}
  .site-header .logo img {width:155px}
  .primary-nav {margin-left:8px}
  .nav-list {gap:0}
  .nav-list>li>a {font-size:14px;padding:13px 7px}
  .header-search {flex-basis:125px;min-width:110px;max-width:125px}
  .head-inner>.btn {padding:13px 15px}
}
@media (max-width:1350px) {
  .nav-toggle {color:#10264b;border-color:#c8d8ea;background:#f7faff}
  .nav-toggle:hover,.nav-toggle:focus-visible {background:#eaf2fc}
  .primary-nav.is-open {background:#fff}
  .nav-list>li>a:hover,.nav-list>li>a:focus-visible {background:#edf4fc;color:#164d93;text-decoration:none}
}

/* v4.4 monthly calendar */
.aspira-calendar{margin:28px 0 10px;border:1px solid #dbe5f2;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 30px #10264b0a}
.aspira-calendar-head{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;padding:22px 24px;background:#f5f8fd;border-bottom:1px solid #dbe5f2}
.aspira-calendar-head h2{margin:0!important;font-size:26px;color:#10264b}
.aspira-calendar-controls{display:flex;gap:8px;flex-wrap:wrap}.aspira-calendar-controls a{padding:8px 13px;border:1px solid #bdcee5;border-radius:7px;background:white;color:#10264b;font-size:13px;font-weight:700;text-decoration:none}.aspira-calendar-controls a:hover{background:#e8f0fc}
.aspira-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.aspira-calendar-weekday{text-align:center;background:#eaf1fa;color:#10264b;font-size:13px;font-weight:750;padding:12px 3px}.aspira-calendar-day,.aspira-calendar-empty{min-width:0;min-height:106px;padding:9px;border-top:1px solid #e2eaf4;border-right:1px solid #e2eaf4}.aspira-calendar-day:nth-child(7n){border-right:0}.aspira-calendar-date{display:inline-grid;place-items:center;width:30px;height:30px;font-weight:700;font-size:13px;color:#10264b}.aspira-calendar-day.is-today .aspira-calendar-date{border-radius:50%;background:#c52f43;color:#fff}.aspira-calendar-event{display:block;margin:5px 0;padding:5px 7px;border-radius:5px;background:#eaf2ff;color:#123d75;text-decoration:none;font-size:12px;line-height:1.35;font-weight:650;overflow-wrap:anywhere}.aspira-calendar-event span{font-weight:400}.aspira-calendar-event:hover{text-decoration:underline;background:#d9e9ff}.aspira-calendar-note{padding:18px 24px;margin:0!important;color:#53677f}
@media(max-width:700px){.aspira-calendar-head{padding:16px}.aspira-calendar-head h2{font-size:22px}.aspira-calendar-grid{overflow-x:auto}.aspira-calendar-day,.aspira-calendar-empty{padding:4px;min-height:74px}.aspira-calendar-weekday{font-size:11px}.aspira-calendar-date{width:24px;height:24px;font-size:12px}.aspira-calendar-event{font-size:10px;padding:4px 3px}}

/* v4.6 footer */
.footer-grid ul{list-style:none;margin:0;padding:0}.footer-grid li{margin:0 0 9px}.footer-grid a{overflow-wrap:anywhere}.footer-grid h3{margin-bottom:18px}@media(max-width:1050px) and (min-width:701px){.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}}@media(max-width:700px){.footer-grid{grid-template-columns:1fr;gap:25px}}

/* Board of Directors — v4.8 */
.aspira-board-page .board-hero{background:linear-gradient(115deg,#102a52,#234c86);color:#fff;padding:58px 0 64px}
.aspira-board-page .board-hero .page-title{color:#fff}
.aspira-board-page .board-hero .kicker{color:#ffd0d4}
.aspira-board-page .board-hero p{color:#e4ecf8;font-size:1.08rem;max-width:700px;margin:15px 0 0}
.board-wrap{max-width:1160px;padding-top:32px;padding-bottom:85px}
.board-jump{display:flex;flex-wrap:wrap;gap:12px;padding:16px 0 20px;border-bottom:1px solid #dfe7f2}
.board-jump a{color:#163b70;text-decoration:none;font-size:14px;font-weight:700;background:#f2f6fb;padding:10px 15px;border-radius:24px}
.board-jump a:hover,.board-jump a:focus{background:#dce9f9}
.board-section{padding:58px 0 20px;scroll-margin-top:100px}
.board-section-heading{max-width:780px;margin-bottom:26px}
.board-section-heading h2{font-size:clamp(27px,3vw,38px);line-height:1.2;color:#102b50;margin:8px 0 12px}
.board-section-heading p{color:#51627a;line-height:1.7;font-size:16px}
.board-eyebrow{text-transform:uppercase;color:#be2e42;letter-spacing:.13em;font-size:12px;font-weight:800}
.board-member-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.board-member-card{border:1px solid #dce5f0;border-radius:14px;padding:23px;background:#fff;min-width:0;box-shadow:0 5px 20px rgba(14,42,79,.035)}
.board-member-featured{border-top:4px solid #c72d45;background:#f7faff}
.board-card-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.board-avatar{display:inline-flex;align-items:center;justify-content:center;background:#e7effb;color:#1d4d90;width:42px;height:42px;border-radius:50%;font-weight:800;font-size:13px}
.board-role{font-size:12px;font-weight:750;color:#b3263b;line-height:1.5}
.board-member-card h3{font-size:20px;color:#102b50;margin:18px 0 8px;line-height:1.25}
.board-affiliation{font-size:14px;line-height:1.55;color:#52657c;min-height:20px;margin:0 0 14px}
.board-email{display:inline-block;font-size:13px;overflow-wrap:anywhere;color:#164b91}
.board-contact-note{background:#f2f6fb;border-radius:10px;padding:18px 20px;margin-top:23px;color:#324861;line-height:1.65}
.board-meeting-section{border-top:1px solid #e5ebf3;margin-top:35px}
.board-meeting-info{display:grid;grid-template-columns:.7fr 1.4fr 1.5fr;gap:14px}
.board-meeting-info>div{border-radius:12px;background:#f3f7fc;padding:20px;display:flex;flex-direction:column;gap:9px;color:#324b68;line-height:1.6}
.board-meeting-info strong{color:#102b50;font-size:14px}
.board-dates{display:flex;gap:10px;flex-wrap:wrap;margin-top:19px}
.board-dates span{padding:10px 14px;background:#fff;border:1px solid #dbe5f2;border-radius:8px;color:#203f68;font-weight:650;font-size:14px}
.board-document-groups{display:grid;gap:16px}
.board-document-group{border:1px solid #dbe5f2;border-radius:12px;overflow:hidden;background:#fff}
.board-document-group summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;padding:19px 23px;font-size:19px;font-weight:800;color:#102b50;background:#f4f7fb}
.board-doc-count{font-size:12px;font-weight:650;color:#566d8a;white-space:nowrap}
.board-document-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 25px;padding:10px 23px 18px}
.board-document-list a{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #e8edf5;text-decoration:none;color:#183e72;font-size:14px;line-height:1.4}
.board-document-list a:hover{text-decoration:underline}
.board-doc-action{font-size:12px;color:#ac2940;white-space:nowrap;font-weight:700}
.board-comments-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:18px}
.board-comments-card,.board-policy-card{padding:26px;border:1px solid #dce5f0;border-radius:14px;background:#f6f9fd}
.board-comments-layout h3{color:#102b50;font-size:20px;margin:0 0 12px}
.board-comments-layout p{color:#405570;line-height:1.7}
.board-policy-link{display:inline-block;margin-top:8px;background:#c42d43;color:#fff!important;padding:12px 18px;border-radius:8px;text-decoration:none;font-weight:700}
@media(max-width:960px){.board-member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.board-meeting-info{grid-template-columns:1fr 1fr}.board-meeting-info>div:last-child{grid-column:1/-1}}
@media(max-width:640px){.aspira-board-page .board-hero{padding:42px 0}.board-member-grid,.board-document-list,.board-comments-layout,.board-meeting-info{grid-template-columns:1fr}.board-meeting-info>div:last-child{grid-column:auto}.board-section{padding-top:42px}.board-document-list{padding:5px 18px 15px}.board-document-group summary{padding:16px;font-size:16px}.board-doc-count{font-size:11px}.board-wrap{padding-top:18px}.board-jump{gap:8px}.board-jump a{font-size:12px;padding:8px 11px}}

/* v4.9: safer imported-content defaults */
.page-body .content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}
.page-body .content iframe,.page-body .content video{max-width:100%}
.page-body .content a{overflow-wrap:anywhere}
.page-body .content :is(h2,h3,h4){scroll-margin-top:120px}
@media(max-width:700px){.page-body .content table{font-size:14px}.page-body .content img{height:auto}}

/* Leadership directory v5.0 */
.as p{} .aspira-leadership .leadership-wrap{padding-top:36px;padding-bottom:64px}.leadership-intro{font-size:1.13rem;line-height:1.65;color:#46566b;max-width:760px;margin:0 0 32px}.leadership-section{margin:0 0 42px}.leadership-section>h2{font-size:clamp(1.35rem,2vw,1.8rem);color:#153b6b;margin:0 0 18px;padding-bottom:12px;border-bottom:2px solid #dce7f2}.leadership-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,245px),1fr));gap:18px}.leadership-card{background:#fff;border:1px solid #e1e8f0;border-radius:14px;overflow:hidden;box-shadow:0 3px 14px rgba(13,39,70,.06);display:flex;flex-direction:column}.leadership-card img{width:100%;height:225px;object-fit:cover;object-position:center 20%;background:#eef2f7;display:block}.leadership-info{padding:19px 18px 22px;min-width:0}.leadership-info h3{font-size:1.12rem;line-height:1.35;color:#18385d;margin:0 0 8px}.leadership-info p{margin:0 0 11px;color:#526276;line-height:1.5;font-size:.95rem}.leadership-info a{font-size:.91rem;color:#07569a;text-decoration:underline;overflow-wrap:anywhere}.leadership-info a:hover{color:#b12736}.leadership-note{font-size:.87rem;color:#64748b;border-top:1px solid #e3e9f0;padding-top:18px}@media(max-width:600px){.aspira-leadership .leadership-wrap{padding-top:22px}.leadership-card img{height:230px}}

/* v5.1: Leadership portraits are square source photographs. Preserve the
   complete image instead of cropping faces in a fixed-height container. */
.aspira-leadership .leadership-card img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  object-position: center;
  background: #eef2f7;
}
@media (max-width: 600px) {
  .aspira-leadership .leadership-card img {
    height: auto;
    aspect-ratio: 1 / 1;
  }
}

/* v5.2: Compact, uncropped leadership portraits and balanced profile cards. */
.aspira-leadership .leadership-grid {
  grid-template-columns: repeat(auto-fill, minmax(210px, 235px));
  gap: 20px;
  justify-content: start;
}
.aspira-leadership .leadership-card {
  width: 100%;
  max-width: 235px;
}
.aspira-leadership .leadership-card img {
  display: block;
  width: 100%;
  height: 195px;
  aspect-ratio: auto;
  object-fit: contain;
  object-position: center;
  background: #f0f4f8;
}
.aspira-leadership .leadership-info {padding: 15px 15px 18px;}
@media (max-width: 520px) {
  .aspira-leadership .leadership-grid {grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px;}
  .aspira-leadership .leadership-card {max-width: none;}
  .aspira-leadership .leadership-card img {height: 145px; aspect-ratio: auto;}
  .aspira-leadership .leadership-info {padding: 12px;}
  .aspira-leadership .leadership-info h3 {font-size: 1rem;}
  .aspira-leadership .leadership-info p,.aspira-leadership .leadership-info a {font-size: .82rem;}
}
@media (max-width: 350px) {
  .aspira-leadership .leadership-grid {grid-template-columns: 1fr;}
  .aspira-leadership .leadership-card {max-width: 235px;}
}

/* v5.3 Android and iOS mobile refinements */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{overflow-x:clip}
:where(.container,.head-inner,.page-body,.content,.section,.footer-grid,.hero-grid,.feature-grid,.card,.contact-panel){min-width:0}
:where(.content,.home-imported,.page-body) :where(img,svg,video,canvas,embed,object){max-width:100%;height:auto}
:where(.content,.home-imported,.page-body) iframe{max-width:100%}
:where(.content,.home-imported,.page-body) :where(table,.wp-block-table,pre){max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
:where(.content,.home-imported,.page-body) :where(h1,h2,h3,h4,p,a){overflow-wrap:break-word}
:where(input,select,textarea,button){font:inherit}
:where(input:not([type=checkbox]):not([type=radio]),select,textarea){max-width:100%}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #d48a19;outline-offset:3px}
@media(max-width:1350px){.primary-nav.is-open{width:100%}.primary-nav .nav-list{max-height:min(65vh,550px);max-height:min(65dvh,550px);overscroll-behavior:contain}.primary-nav .nav-list .sub-menu a{min-height:44px}}
@media(max-width:767px){
.container{width:calc(100% - 32px)}.topbar .container{gap:8px}.topbar-actions{max-width:100%}
.head-inner{column-gap:9px;row-gap:10px}.head-inner .logo{min-width:0}.head-inner .logo img{max-width:100%;height:auto}
.head-inner .nav-toggle,.head-inner>.btn{min-height:44px}.header-search input{font-size:16px;min-height:44px}
.page-banner{padding:30px 0}.page-title{font-size:clamp(27px,7vw,36px)}.page-body{padding:30px 0 55px}.section{padding:42px 0}
.hero{padding:45px 0}.hero-grid,.feature-grid{gap:25px}.hero h1{font-size:clamp(31px,8vw,43px)}.hero-actions .btn{min-height:44px}
.cards,.resource-grid,.news-grid,.news-list,.contact-grid{grid-template-columns:1fr}.card-body,.news-list article,.contact-panel{padding:20px}
.footer{padding-top:38px}.footer-grid{grid-template-columns:1fr;gap:24px}.footer-grid a{display:inline-block;padding-block:3px}
.cta-strip .container{display:flex;flex-direction:column;align-items:flex-start;gap:15px}.cta-strip .btn{min-height:44px}
.board-jump{gap:8px}.board-jump a{min-height:44px;display:inline-flex;align-items:center}.board-document-group summary{min-height:48px}
.aspira-calendar{border-radius:10px}.aspira-calendar-head{flex-direction:column;align-items:stretch}
.aspira-calendar-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.aspira-calendar-controls a{text-align:center;min-height:44px;display:flex;align-items:center;justify-content:center;padding:8px 4px;font-size:12px}
.aspira-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));width:100%}.aspira-calendar-weekday{font-size:10px;padding:9px 0}
.aspira-calendar-day,.aspira-calendar-empty{min-height:63px;padding:3px 2px}.aspira-calendar-date{width:24px;height:24px;font-size:11px}
.aspira-calendar-event{font-size:10px;padding:3px 2px;overflow-wrap:anywhere}
.aspira-leadership .leadership-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.aspira-leadership .leadership-card{max-width:none}.aspira-leadership .leadership-card img{height:145px;object-fit:contain}
}
@media(max-width:380px){.container{width:calc(100% - 24px)}.head-inner .logo img{width:min(115px,31vw)}.head-inner .nav-toggle{min-width:60px;padding:8px;font-size:12px}.head-inner>.btn{padding:10px;font-size:12px}.aspira-leadership .leadership-grid{grid-template-columns:1fr}.aspira-leadership .leadership-card{max-width:245px}.aspira-calendar-event{font-size:9px}}
@media(hover:none){.nav-list a,.board-document-list a{-webkit-tap-highlight-color:rgba(24,76,144,.15)}}
@supports(padding:env(safe-area-inset-left)){.site-header,.footer,.topbar{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}

/* v5.4 – ASPIRA Process editorial layout */
.aspira-process .process-banner-sub{color:#e2ecf8;max-width:660px;font-size:1.06rem;margin:12px 0 0}
.process-page{padding-top:28px;padding-bottom:80px}
.process-breadcrumb{font-size:13px;color:#58667b;margin-bottom:36px}
.process-breadcrumb a{color:#20598e}
.process-intro{display:grid;grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);gap:clamp(25px,5vw,70px);align-items:center;margin-bottom:65px}
.process-photo{background:#f3f6fa;border:1px solid #e2e8f0;border-radius:20px;padding:18px;box-shadow:0 12px 35px rgba(19,43,76,.08)}
.process-photo img{display:block;width:100%;height:auto;max-height:520px;object-fit:contain}
.process-copy h2,.process-section-head h2,.process-closing h2{color:#142e50;line-height:1.16}
.process-copy h2{font-size:clamp(29px,3.4vw,43px);margin:8px 0 18px}
.process-copy p{line-height:1.75;color:#354458}
.process-eyebrow{text-transform:uppercase;letter-spacing:.13em;font-weight:800;font-size:12px;color:#b12c36}
.process-lead{font-weight:700}
.process-section-head{text-align:center;max-width:740px;margin:0 auto 30px}
.process-section-head h2{font-size:clamp(27px,3vw,38px);margin:8px 0}
.process-step-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.process-step{padding:clamp(20px,2.5vw,34px);border:1px solid #dfe6ee;border-radius:16px;background:#fff;box-shadow:0 6px 23px rgba(19,43,76,.05)}
.process-step-number{font-size:13px;font-weight:800;color:#b12c36}
.process-step h3{font-size:25px;color:#173e6a;margin:15px 0 4px}
.process-question{font-weight:800;color:#b12c36;margin:0 0 14px}
.process-step p:last-child{line-height:1.65;color:#39495e}
.process-closing{margin-top:45px;padding:clamp(24px,4vw,45px);border-radius:18px;background:#f1f5fa}
.process-closing h2{font-size:clamp(25px,3vw,34px);margin-top:0}
.process-closing p{line-height:1.75;max-width:930px}
.process-closing .btn{display:inline-flex;margin-top:15px;min-height:44px;align-items:center}
@media(max-width:800px){.process-intro{grid-template-columns:1fr;gap:25px;margin-bottom:42px}.process-photo{max-width:580px;margin:auto}.process-step-grid{grid-template-columns:1fr}.process-step{padding:23px}.process-page{padding-bottom:45px}}

/* v5.5 Our Partners — accessible, responsive, content-preserving redesign */
.aspira-partners .partners-subtitle{max-width:750px;color:#e5effb;font-size:1.06rem;margin:12px 0 0}
.partners-content{padding-top:25px;padding-bottom:75px}
.partners-breadcrumb{color:#58667b;font-size:13px;margin-bottom:35px}
.partners-breadcrumb a{color:#1e578e}
.partners-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(22px,5vw,65px);align-items:center;margin-bottom:65px}
.partners-intro-copy h2{font-size:clamp(29px,3.6vw,44px);line-height:1.18;color:#173554;margin:10px 0 17px}
.partners-intro-copy p{font-size:1.08rem;line-height:1.75;color:#3b4a5e}
.partners-eyebrow{color:#a82935;font-size:12px;letter-spacing:.13em;text-transform:uppercase;font-weight:800}
.partners-hero-image{border-radius:18px;overflow:hidden;box-shadow:0 14px 38px rgba(15,41,70,.12)}
.partners-hero-image img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.partners-section{margin:0 0 60px}
.partners-section-title{margin-bottom:22px}
.partners-section-title h2{font-size:clamp(27px,3vw,37px);color:#173554;margin:7px 0 5px}
.partners-section-title p{color:#596a7f;margin:0}
.partners-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.partners-card{background:#fff;border:1px solid #dfe6ef;border-radius:14px;padding:23px 20px;box-shadow:0 5px 20px rgba(19,43,76,.045);min-width:0}
.partners-card-icon{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#edf3f9;color:#205382;width:35px;height:35px;font-size:12px;font-weight:800;margin-bottom:17px}
.partners-card h3{font-size:17px;line-height:1.4;color:#183b62;margin:0;overflow-wrap:break-word}
.partners-community{background:#f3f6fa;padding:clamp(22px,3vw,40px);border-radius:18px}
.partners-cta{display:flex;justify-content:space-between;align-items:center;gap:25px;background:#173554;color:white;border-radius:16px;padding:clamp(24px,3vw,38px)}
.partners-cta h2{color:white;margin:0 0 7px;font-size:27px}
.partners-cta p{margin:0;color:#e4edf7}
.partners-cta .btn{min-height:44px;display:inline-flex;align-items:center;flex-shrink:0}
@media(max-width:1050px){.partners-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.partners-intro{grid-template-columns:1fr;gap:25px;margin-bottom:45px}.partners-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.partners-cta{flex-direction:column;align-items:flex-start}}
@media(max-width:480px){.partners-card-grid{grid-template-columns:1fr}.partners-card{padding:19px}.partners-community{padding:20px}.partners-content{padding-bottom:45px}}

/* School microsites, shared ASPIRA design system */
.aspira-school-page{--school-accent:#b22938;color:#24354a}.aspira-school-page .school-hero{background:linear-gradient(115deg,#11385c,#1d5677);color:#fff;padding:clamp(40px,7vw,90px) 0}.aspira-school-page .school-hero h1{color:#fff;font-size:clamp(2rem,4.4vw,3.35rem);line-height:1.12;margin:.4em 0}.aspira-school-page .school-hero p{color:#e3edf7;max-width:65ch}.aspira-school-page .school-shell{max-width:1180px;margin:auto;padding:0 22px}.aspira-school-page .school-breadcrumb{font-size:.88rem;color:#e5edf7}.aspira-school-page .school-breadcrumb a{color:#fff;text-decoration:underline}.aspira-school-page .school-layout{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:clamp(26px,4vw,55px);padding:46px 0 85px;align-items:start}.aspira-school-page .school-body{min-width:0;line-height:1.8;font-size:1.05rem}.aspira-school-page .school-body h2,.aspira-school-page .school-body h3{color:#123a60;margin:1.35em 0 .5em;line-height:1.25}.aspira-school-page .school-body p{margin:.65em 0 1.2em}.aspira-school-page .school-body img{max-width:100%;height:auto;border-radius:10px}.aspira-school-page .school-body a{color:#0b5480;text-decoration:underline;text-underline-offset:3px}.aspira-school-page .school-body table{display:block;overflow-x:auto;max-width:100%;border-collapse:collapse}.aspira-school-page .school-body td,.aspira-school-page .school-body th{border:1px solid #dce4eb;padding:9px 12px}.aspira-school-page .school-body iframe{max-width:100%}.aspira-school-page .school-sidebar{background:#f4f7fa;border:1px solid #dde6ed;border-radius:15px;padding:24px;position:sticky;top:105px}.aspira-school-page .school-sidebar h2{font-size:1.13rem;margin:0 0 14px}.aspira-school-page .school-sidebar ul{list-style:none;padding:0;margin:0}.aspira-school-page .school-sidebar li{border-top:1px solid #dce5ed}.aspira-school-page .school-sidebar a{display:block;padding:10px 0;color:#17476c;font-weight:600;font-size:.93rem;text-decoration:none}.aspira-school-page .school-sidebar a:hover{text-decoration:underline}.aspira-school-page .school-source-note{background:#fff8e8;border-left:4px solid #c18a28;padding:15px 19px;margin:0 0 24px;border-radius:6px;font-size:.92rem}.aspira-school-page .school-source-note p{margin:0}.aspira-school-page .school-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:30px 0}.aspira-school-page .school-overview-grid a{display:block;padding:24px;background:#f3f7fa;border:1px solid #dce5ed;border-radius:12px;text-decoration:none;color:#143d61;font-weight:700}.aspira-school-page .school-overview-grid a:hover{border-color:#b22938;transform:translateY(-2px)}@media(max-width:850px){.aspira-school-page .school-layout{grid-template-columns:1fr;padding:28px 0 55px}.aspira-school-page .school-sidebar{position:static}.aspira-school-page .school-overview-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.aspira-school-page .school-overview-grid{grid-template-columns:1fr}.aspira-school-page .school-hero{padding:35px 0}.aspira-school-page .school-shell{padding:0 17px}}
