/* School profile refresh. Scoped overrides, loaded after legacy styles. */
.public-body .profile-section{padding:clamp(28px,4vw,64px) 0 64px}
.public-body .profile-overview{display:block!important;max-width:1160px}
.profile-introduction{display:flow-root!important;max-width:none!important;margin:0!important;overflow-wrap:anywhere}
.public-body .profile-introduction .profile-visual{float:left;position:relative;width:43%;height:auto;max-width:490px;margin:0 clamp(24px,3.5vw,48px) 18px 0;overflow:hidden;border-radius:16px;background:#eaf0f6;box-shadow:0 12px 32px #18375612}
.public-body .profile-introduction .profile-visual>img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:0}
.profile-introduction .profile-visual .photo-note{left:0;bottom:0;max-width:90%;padding:18px 24px;background:#193f70ed;border-left:4px solid #c4a16a;border-radius:0 12px 0 0;box-shadow:none}
.profile-introduction .photo-note strong{font-size:clamp(15px,1.5vw,20px);line-height:1.45;color:#fff}
.profile-introduction .photo-note small{display:block;margin-top:8px;color:#dbe6f3}
.profile-introduction .eyebrow{margin:2px 0 10px;color:#3d6083;letter-spacing:.13em}
.profile-introduction .eyebrow:before{display:none}
.profile-introduction h2.profile-section-title{margin:0 0 20px;font-size:clamp(25px,3vw,36px);line-height:1.2;color:#182c42}
.profile-story{font-size:16px;line-height:1.85;color:#506071}
.profile-story p{margin:0 0 16px}
.profile-story p:last-child{margin-bottom:0}
.profile-purpose{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:24px;margin:28px 0}
.profile-purpose-card{max-width:none!important;border:1px solid #e0e8f0;border-radius:16px;padding:28px!important;background:#f5f8fc;overflow-wrap:anywhere}
.profile-purpose-card:last-child{background:#fff}
.profile-card-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#e4edf8;color:#285584;margin-bottom:16px;font-size:21px}
.profile-purpose-card h2{margin:0 0 14px;font-size:25px;color:#183552}
.profile-purpose-card p,.profile-purpose-card li{color:#506071;font-size:16px;line-height:1.8}
.profile-purpose-card>:last-child{margin-bottom:0}
.profile-purpose-card ul,.profile-purpose-card ol{padding-left:22px}
.profile-identity{padding:28px;border:1px solid #e0e8f0;border-radius:16px;background:#fff}
.profile-identity h2{margin:0 0 24px;font-size:25px;color:#183552;display:flex;align-items:center;gap:12px}
.profile-identity h2>.icon{color:#346799}
.profile-identity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px;margin:0}
.profile-identity-item{min-width:0;padding:17px 0;border-top:1px solid #e7edf3}
.profile-identity-item dt{font-size:13px;letter-spacing:.02em;color:#6a7989;margin:0 0 7px}
.profile-identity-item dd{font-size:16px;color:#24394e;line-height:1.6;margin:0!important;overflow-wrap:anywhere;white-space:normal}
.profile-detail{display:block!important}
.profile-detail>.article-width{max-width:900px;margin:0 auto;width:100%}
/* Font Awesome icons keep their native font metrics, not the old SVG stroke styles. */
i.icon{display:inline-block;width:1.1em;height:auto;font-size:1em;line-height:1;text-align:center;vertical-align:-.05em;flex-shrink:0}
.admin-sidebar i.icon{font-size:18px;width:22px}
.icon-btn i.icon{font-size:20px}
.btn i.icon{margin-right:.15em}
.password-toggle i{font-size:18px;width:20px;text-align:center}
.btn.danger{background:#fff1f1!important;border:1px solid #efb9b9!important;color:#a52424!important;box-shadow:none}
.btn.danger:hover{background:#fee1e1!important;border-color:#d98282!important}
.btn.danger:focus-visible{outline:3px solid #d98282;outline-offset:3px}
.btn.archive-action:disabled{background:#edf3f0!important;border-color:#d8e5dd!important;color:#48715b!important;opacity:1;cursor:default;pointer-events:none}
.record-actions{margin-top:16px;padding-top:16px;border-top:1px solid #e5eaf0}
.admin-main .actions form{margin:0;display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}
@media(max-width:900px){
 .profile-identity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .profile-purpose{gap:18px;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}
 .profile-purpose-card{padding:22px!important}
 .profile-story{font-size:15px}
}
@media(max-width:640px){
 .public-body .profile-introduction .profile-visual{float:none;width:100%;max-width:none;margin:0 0 26px}
 .public-body .profile-introduction .profile-visual>img{aspect-ratio:16/10}
 .profile-purpose{grid-template-columns:1fr;margin:24px 0;gap:16px}
 .profile-purpose-card,.profile-identity{padding:22px!important;border-radius:13px}
 .profile-identity-grid{grid-template-columns:1fr;gap:0}
 .profile-identity h2{font-size:23px}
 .profile-purpose-card p,.profile-purpose-card li,.profile-story{font-size:15px;line-height:1.8}
 .profile-introduction .eyebrow{font-size:11px}
 .admin-main .actions{gap:8px}
}
@media(prefers-reduced-motion:reduce){.profile-section *{scroll-behavior:auto!important}}

.custom-select-option[aria-selected="true"]:after{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900}
.nav-drop>summary:after{content:"\f078";font-family:"Font Awesome 6 Free";font-weight:900;font-size:10px;width:auto;height:auto;border:0;transform:none;margin-left:8px}
.nav-drop[open]>summary:after{transform:rotate(180deg)}

.profile-introduction>.notice{display:flow-root;min-width:0}
