
:root{--navy:#0b223b;--ink:#233749;--teal:#0d7c80;--green:#21754e;--gold:#e3aa38;--red:#c3313d;--mist:#f3f7f8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.65 system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--ink)}.wrap{width:min(1160px,91%);margin:auto}a{color:#0b707d}a:focus-visible{outline:3px solid #e3aa38;outline-offset:3px}.site-header{background:var(--navy);position:sticky;top:0;z-index:5;box-shadow:0 2px 12px #0002}.site-header .wrap{min-height:77px;display:flex;align-items:center;justify-content:space-between;gap:20px}.logo{font:700 1.25rem Georgia,serif;color:white;text-decoration:none;letter-spacing:.035em}.logo small{font:600 .62rem system-ui;display:block;letter-spacing:.22em}.site-header nav{display:flex;gap:17px;flex-wrap:wrap}.site-header nav a{color:#f0f7f9;text-decoration:none;font-size:.88rem}.site-header nav a[aria-current=page]{color:#ffcb64;border-bottom:2px solid #ffcb64}.hero{min-height:450px;display:flex;align-items:center;color:white;background:linear-gradient(95deg,#071b32ed 0%,#0c2a48de 42%,#08223b60 100%),var(--hero-img),linear-gradient(130deg,#0b223b,#27606b);background-size:cover;background-position:center}.hero .wrap{padding:82px 0}.hero h1{font:700 clamp(2.7rem,5.7vw,4.7rem)/1.09 Georgia,serif;max-width:760px;margin:10px 0 18px}.hero p{max-width:660px;font-size:1.14rem;color:#e8f2f4}.kicker{text-transform:uppercase;font-size:.77rem;letter-spacing:.18em;font-weight:800;color:#a5e2d5}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:23px}.btn{display:inline-block;background:var(--gold);color:#14283b;text-decoration:none;font-weight:800;padding:12px 21px;border-radius:7px}.btn.alt{background:white;color:var(--navy)}.btn.red{background:var(--red);color:white}.btn.green{background:var(--green);color:white}section{padding:70px 0}h2{font:700 clamp(1.9rem,3.6vw,2.8rem)/1.17 Georgia,serif;color:var(--navy);margin:9px 0 17px}h3{font:700 1.35rem Georgia,serif;color:var(--navy);margin:0 0 10px}.lede{font-size:1.1rem;color:#526779;max-width:810px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.card{background:white;border:1px solid #dae4e7;border-radius:12px;overflow:hidden;box-shadow:0 10px 25px #102c4210}.card img{display:block;width:100%;height:205px;object-fit:cover}.card-body{padding:23px}.card p{margin:0 0 18px}.card a{font-weight:800}.pale{background:var(--mist)}.split{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}.split img{width:100%;height:350px;object-fit:cover;border-radius:13px}.bullets{padding-left:21px}.bullets li{margin:8px 0}.info{background:white;border-left:5px solid var(--teal);padding:22px 26px;border-radius:8px;box-shadow:0 4px 18px #0001}.info a{overflow-wrap:anywhere}.team{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.person{padding:25px;background:white;border:1px solid #dfe7eb;border-radius:12px}.person:first-child{grid-column:1/-1}.role{font-weight:800;color:#1b706b;text-transform:uppercase;letter-spacing:.05em;font-size:.82rem}.person p{margin:8px 0}.disclaimer{font-size:.9rem;color:#556b79}.footer{background:var(--navy);color:white;padding:38px 0}.footer a{color:white}.footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer small{color:#c7d8e0}@media(max-width:820px){.site-header{position:static}.site-header .wrap{padding:16px 0;align-items:start;flex-direction:column}.grid,.split,.team{grid-template-columns:1fr}.person:first-child{grid-column:auto}.hero{min-height:360px}.hero .wrap{padding:65px 0}.split img{height:270px}}
/* Image framing corrections — preserve complete artwork at all screen sizes. */
.hero{background-image:linear-gradient(95deg,#071b32f5 0%,#0c2a48dc 48%,#08223b9a 100%),var(--hero-img),linear-gradient(130deg,#0b223b,#27606b);background-size:cover,contain,cover;background-position:center,center right,center;background-repeat:no-repeat}
.card img{height:auto;aspect-ratio:16/10;object-fit:contain;object-position:center;background:#eaf1f3}
.split img{height:auto;aspect-ratio:4/3;object-fit:contain;object-position:center;background:#eaf1f3}
@media(max-width:820px){.hero{background-size:cover,contain,cover;background-position:center,center center,center}.split img{height:auto;aspect-ratio:4/3}}

/* Haven Shield: distinct text-free photos, no clipping of subjects */
.card img{object-fit:contain;object-position:center;background:#eaf1f4;}
.split > img{object-fit:contain;object-position:center;background:#eaf1f4;}

/* Final clean photo card treatment */
.card img{width:100%;height:220px;aspect-ratio:auto;object-fit:cover;object-position:center}
.split img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain}
@media(max-width:820px){.card img{height:auto;aspect-ratio:16/9;object-fit:cover}}

/* Heroes Haven logo placement */
.brand-with-emblem{display:flex!important;align-items:center;gap:10px;text-decoration:none;line-height:1.08}
.brand-with-emblem img{display:block;width:58px;height:58px;object-fit:contain;flex:none;border-radius:4px}
.brand-with-emblem span{display:block}
.brand-with-emblem small{display:block}
.footer-brand{display:flex;align-items:center;gap:14px}
.footer-brand img{width:84px;height:84px;object-fit:contain;background:#fff;border-radius:6px;flex:none}
@media(max-width:600px){.brand-with-emblem img{width:44px;height:44px}.footer-brand img{width:64px;height:64px}}

/* REVIEW PREVIEW: cohesive division identities; original page structure retained */
body.redesign{--page-accent:#007f8a}
body.redesign.shield{--page-accent:#b52632}
body.redesign.whole{--page-accent:#168254}
body.redesign.bridge{--page-accent:#c28a16}
body.redesign .site-header{box-shadow:0 4px 22px rgba(3,23,44,.15)}
body.redesign .hero{min-height:420px;display:flex;align-items:center}
body.redesign .hero .wrap{padding-top:42px;padding-bottom:46px}
body.redesign .hero h1{max-width:760px;text-wrap:balance}
body.redesign .kicker{letter-spacing:.13em;text-transform:uppercase;font-weight:800}
body.redesign main section h2{position:relative;padding-bottom:12px}
body.redesign main section h2:after{content:"";display:block;width:60px;height:4px;background:var(--page-accent);border-radius:5px;margin-top:14px}
body.redesign .card{border-top:4px solid var(--page-accent);transition:transform .2s ease,box-shadow .2s ease}
body.redesign .card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(3,23,44,.13)}
body.redesign .card-body a{color:var(--page-accent)}
body.redesign.home .grid{grid-template-columns:repeat(4,minmax(0,1fr))}
body.redesign.home .card img{height:180px}
body.redesign.home .card-body{padding:20px}
body.redesign.home .card h3{font-size:1.25rem}
body.redesign .card-art{height:180px;background:linear-gradient(135deg,#092e50,#116782);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
body.redesign .card-symbol{font-size:72px;line-height:1;font-weight:700}
body.redesign .card-eyebrow{font-size:.85rem;text-transform:uppercase;letter-spacing:.12em}
body.redesign .advancement-card{--page-accent:#2473ad}
body.redesign .advancement-card .card-body a{color:#176396}
@media(max-width:1050px){body.redesign.home .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){body.redesign.home .grid{grid-template-columns:1fr}body.redesign .hero{min-height:340px}body.redesign.home .card img,body.redesign .card-art{height:220px}}


/* Graphic-rich review concept: intentionally isolated under graphic-preview */
body{background:#f7f9fc}
.site-header{background:#091d36;border-bottom:3px solid #bc3544}
.site-header .wrap{min-height:84px}
.graphic-hero{min-height:515px;position:relative;overflow:hidden;isolation:isolate;background-position:center 43%}
.graphic-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#081b35 0%,#081b35ee 34%,#0b2946a8 63%,#071c3040 100%);z-index:-1}
.graphic-hero .wrap{position:relative;z-index:2;padding:76px 0 90px}
.hero-stamp{font-size:.71rem;letter-spacing:.22em;font-weight:800;color:#ffd28c;margin-bottom:20px}
.graphic-hero h1{max-width:710px;font-size:clamp(2.7rem,5.3vw,4.5rem);text-shadow:0 2px 22px #0006}
.graphic-hero p{max-width:590px}
.hero-graphic{position:absolute;right:-125px;top:50%;transform:translateY(-50%);width:520px;height:520px;opacity:.43;pointer-events:none;z-index:1}
.graphic-ring{position:absolute;inset:35px;border:2px solid #fff7;border-radius:50%;box-shadow:0 0 0 26px #ffffff12,0 0 0 55px #ffffff0b}
.graphic-cross{position:absolute;top:32px;left:165px;color:#fff;font-size:235px;font-family:Georgia,serif;text-shadow:0 0 50px #e4a949}
.graphic-label{position:absolute;bottom:92px;left:181px;color:#fff;font-size:28px;letter-spacing:.5em;font-weight:800}
.mission-ribbon{background:#102e4b;color:#f5fbff;border-bottom:5px solid #b83242}
.ribbon-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.ribbon-inner>span{padding:22px 15px;border-right:1px solid #ffffff2b;font-weight:650;font-size:.91rem}
.ribbon-inner b{display:block;color:#f3b955;font-size:1.4rem;font-family:Georgia,serif;line-height:1.1}
.ribbon-inner small{display:block;color:#a5d9e4;font-size:.69rem;text-transform:uppercase;letter-spacing:.08em}
.home section .grid{gap:23px}
.division-card{border-radius:12px;overflow:hidden;border:1px solid #dce4ec;box-shadow:0 13px 28px #0b234013;transition:transform .2s,box-shadow .2s}
.division-card:hover{transform:translateY(-4px);box-shadow:0 18px 35px #0b234025}
.division-visual{position:relative;background:#102b49;overflow:hidden}
.division-visual img{height:205px;width:100%;object-fit:cover;display:block;filter:saturate(.85)}
.division-banner{min-height:116px;display:grid;grid-template-columns:45px 1fr;grid-template-rows:1fr auto;align-items:center;column-gap:10px;padding:16px 18px;color:#fff;background:#133c5a}
.division-number{font-size:1.6rem;font-family:Georgia,serif;opacity:.75}
.division-icon{font-size:3.2rem;line-height:1;text-align:right}
.division-mini{grid-column:1/3;font-size:.65rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;opacity:.95;margin-top:9px}
.division-card.shield .division-banner{background:linear-gradient(120deg,#9d2537,#152f4f)}
.division-card.whole .division-banner{background:linear-gradient(120deg,#116b68,#1c7651)}
.division-card.bridge .division-banner{background:linear-gradient(120deg,#194d78,#527b91)}
.division-card.advance .division-banner{background:linear-gradient(120deg,#6c4d85,#2d496c)}
.division-card .card-body{padding:22px 21px 25px}
.division-card .card-body h3{color:#102e4b;margin-top:0;font-size:1.2rem}
.division-card .card-body a{font-weight:800}
.page-shield .graphic-hero{border-bottom:8px solid #c03645}
.page-whole .graphic-hero{border-bottom:8px solid #17816d}
.page-bridge .graphic-hero{border-bottom:8px solid #4c8ba9}
.page-about .graphic-hero,.page-contact .graphic-hero{border-bottom:8px solid #d1a24d}
.program-stripe{display:flex;align-items:center;justify-content:center;gap:17px;background:#102e4b;color:white;padding:16px;font-size:.71rem;letter-spacing:.17em;font-weight:800;flex-wrap:wrap}
.stripe-mark{font-size:1.3rem;color:#f1b34e}.stripe-sep{height:20px;width:1px;background:#ffffff60}
@media(max-width:900px){.ribbon-inner{grid-template-columns:repeat(2,1fr)}.hero-graphic{right:-275px;opacity:.22}.graphic-hero{min-height:460px}}
@media(max-width:600px){.ribbon-inner{grid-template-columns:repeat(2,1fr)}.ribbon-inner>span{padding:14px 10px;font-size:.75rem}.graphic-hero .wrap{padding:57px 0 67px}.hero-stamp{font-size:.58rem}.graphic-hero h1{font-size:2.6rem}.division-visual img{height:190px}.hero-graphic{display:none}.program-stripe{font-size:.6rem;gap:10px}}

/* Minimal additions; existing layout and styling retained */
.hhs-coming-soon{display:inline-block;margin:.4rem 0 1rem;padding:.25rem .65rem;border:1px solid currentColor;border-radius:999px;font-size:.82rem;font-weight:700;letter-spacing:.02em}
.hhs-added-about{padding:2rem 0}
.hhs-added-about .wrap{max-width:1100px;margin:auto;padding:0 1.5rem}
.hhs-contact{padding:.75rem 1rem;text-align:center;font-size:.95rem}

/* Leadership portraits: scoped to About Us only; other layouts unchanged */
.page-about .person .leadership-photo{display:block;width:100%;height:260px;object-fit:contain;object-position:center center;background:#f2f4f7;border-radius:12px;margin:0 0 14px;}
