
:root{--navy:#071B2E;--blue:#174A73;--charcoal:#252A30;--gold:#B8944E;--white:#fff;--platinum:#E6E8EC;--pale:#F7F9FB;--line:#DCE2E9;--focus:#174A73;font-family:"Segoe UI",Arial,Helvetica,sans-serif;color:var(--charcoal);background:var(--white);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-size:1rem;line-height:1.7}a{color:var(--blue);text-underline-offset:.18em}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.container{width:min(1180px,calc(100% - 64px));margin-inline:auto}.skip-link{position:absolute;left:12px;top:-70px;background:#fff;color:#071B2E;z-index:200;padding:12px}.skip-link:focus{top:12px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:20}.header-inner{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:28px}.wordmark{text-decoration:none;color:var(--navy);font-weight:700;letter-spacing:.11em;font-size:1.1rem;white-space:nowrap}.wordmark span{font-weight:400}.primary-nav{display:flex;align-items:center;gap:clamp(10px,1.4vw,23px)}.primary-nav a{font-size:.78rem;font-weight:600;text-decoration:none;color:var(--navy);line-height:1.4}.primary-nav a:hover,.primary-nav a[aria-current=page]{color:var(--blue);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:8px}.menu-toggle{display:none}.hero{background:linear-gradient(135deg,#F7F9FB 0%,#fff 62%,#F0F4F8 100%);border-bottom:1px solid var(--line)}.hero-inner{min-height:410px;display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:72px}.hero-content{max-width:850px;position:relative;z-index:1}.eyebrow,.item-label,.aside-eyebrow{font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:var(--blue)}h1,h2,h3{font-family:"Segoe UI",Arial,sans-serif;line-height:1.2;color:var(--navy);font-weight:600;overflow-wrap:break-word}h1{font-size:clamp(2.3rem,4.4vw,4.35rem);max-width:880px;letter-spacing:-.038em;margin:.2em 0 .4em}h2{font-size:clamp(1.55rem,2.2vw,2.1rem);letter-spacing:-.025em;margin:0 0 22px}h3{font-size:1.12rem;margin:30px 0 9px}.lead{font-size:clamp(1.08rem,1.6vw,1.25rem);max-width:740px;color:#3D4957}.hero-copy,.hero-descriptor{max-width:730px}.hero-descriptor{font-weight:600;color:var(--blue)}.status-label{display:inline-block;border:1px solid var(--gold);padding:4px 12px;color:var(--navy);font-weight:700;font-size:.76rem;letter-spacing:.08em}.hero-mark{flex:0 0 130px;display:grid;gap:12px;opacity:.75;transform:skew(-10deg)}.hero-mark span{height:18px;background:var(--gold);border-radius:1px}.hero-mark span:nth-child(2){background:var(--blue);width:70%;margin-left:auto}.hero-mark span:nth-child(3){background:var(--navy);width:45%;margin-left:auto}.button{display:inline-flex;align-items:center;justify-content:center;padding:11px 19px;margin:12px 12px 6px 0;border-radius:3px;border:1px solid var(--navy);font-size:.88rem;font-weight:600;line-height:1.4;text-decoration:none;min-height:44px}.button-primary{background:var(--navy);color:white}.button-primary:hover{background:var(--blue);color:white}.button-secondary{background:transparent;color:var(--navy)}.button-secondary:hover{background:#E6E8EC}.button-disabled{color:#5D6570;border-color:#9DA4AD;cursor:not-allowed}.article-layout{display:grid;grid-template-columns:minmax(0,780px) minmax(180px,250px);gap:clamp(36px,7vw,120px);align-items:start;padding-block:56px 90px}.article-body{min-width:0}.content-section{padding:42px 0 50px;border-bottom:1px solid var(--line);scroll-margin-top:30px}.content-section:first-child{padding-top:0}.content-section p{margin:0 0 17px}.content-section p+p{margin-top:6px}.content-section h3{border-left:3px solid var(--gold);padding-left:14px}.copy-list{padding-left:24px}.copy-list li{margin:7px 0}.numbered-item{font-weight:500}.article-aside{position:sticky;top:25px;background:var(--pale);border-top:3px solid var(--gold);padding:26px 22px;display:grid;gap:12px}.article-aside a{text-decoration:none;font-size:.9rem}.article-aside a:hover{text-decoration:underline}.editorial-note,.legal-warning,.form-unavailable{background:#F7F9FB;border-left:4px solid var(--gold);padding:18px 22px;margin:20px 0 32px;color:#27394C}.form-unavailable p{margin:6px 0 0}.contact-form{display:grid;gap:8px;max-width:600px}.contact-form label{font-weight:600;margin-top:13px}.contact-form input,.contact-form textarea{border:1px solid #BBC3CC;background:#F4F6F8;padding:12px;font:inherit;border-radius:3px;width:100%}.contact-form button{background:#E6E8EC;color:#475466;border:0;border-radius:3px;padding:12px 18px;margin-top:12px;font:inherit;cursor:not-allowed}.site-footer{background:var(--navy);color:#DCE3EB}.footer-grid{display:grid;grid-template-columns:1.3fr 1.1fr 1fr;gap:55px;padding-block:65px}.site-footer .wordmark{color:#fff}.footer-brand p{font-size:.88rem;line-height:1.7}.footer-descriptor{color:#fff;font-weight:600}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:7px 17px;align-content:start}.footer-nav a{font-size:.82rem;color:#E6E8EC;text-decoration:none}.footer-nav a:hover{text-decoration:underline}.footer-news h2{font-size:1.32rem;color:#fff}.footer-news p{font-size:.88rem}.footer-unavailable{border-left:2px solid var(--gold);padding-left:12px;color:#E6E8EC}.footer-bottom{border-top:1px solid #405166;padding-block:20px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:#C9D3DF}@media(max-width:1100px){.primary-nav{gap:10px}.primary-nav a{font-size:.73rem}.header-inner{gap:15px}.wordmark{font-size:1rem}.article-layout{grid-template-columns:minmax(0,1fr) 210px;gap:35px}}@media(max-width:850px){.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;background:transparent;border:1px solid var(--line);padding:11px;min-width:46px;min-height:46px;cursor:pointer}.menu-toggle span{width:21px;height:2px;background:var(--navy)}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px max(24px,calc((100% - 1180px)/2));box-shadow:0 14px 22px #071b2e17;flex-direction:column;align-items:stretch;gap:0}.primary-nav.is-open{display:flex}.primary-nav a{font-size:1rem;padding:11px 6px}.article-layout{grid-template-columns:1fr}.article-aside{position:static;grid-template-columns:repeat(2,1fr)}.aside-eyebrow{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-news{grid-column:1/-1}.hero-mark{flex-basis:70px}}@media(max-width:600px){.container{width:calc(100% - 36px)}.header-inner{min-height:70px}.hero-inner{padding-block:52px;min-height:310px}.hero-mark{display:none}.article-layout{padding-block:32px 60px}.content-section{padding-block:32px 38px}.footer-grid{grid-template-columns:1fr;padding-block:42px}.footer-news{grid-column:auto}.footer-bottom{flex-direction:column}.article-aside{grid-template-columns:1fr}.button{display:flex;width:100%;margin:10px 0 0}.primary-nav{padding-inline:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.recovery-links{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:20px}.recovery-links a{font-weight:600}

/* Approved executive photography: distinct homepage and About portraits */
.hero-inner:has(.hero-portrait){gap:clamp(26px,4vw,64px)}
.hero-inner:has(.hero-portrait) .hero-content{flex:1 1 58%;min-width:0}
.hero-portrait{flex:0 1 34%;align-self:stretch;max-width:390px;min-width:230px;margin:0;overflow:hidden;border-radius:5px;box-shadow:0 14px 38px rgba(7,27,46,.12);background:var(--platinum);display:flex;align-items:stretch}
.hero-portrait img{display:block;width:100%;height:100%;min-height:400px;object-fit:cover;object-position:center 24%}
.about-portrait img{object-position:center center}
@media(max-width:850px){.hero-inner:has(.hero-portrait){align-items:center}.hero-portrait{flex-basis:36%;min-width:185px}.hero-portrait img{min-height:320px}}
@media(max-width:650px){.hero-inner:has(.hero-portrait){flex-direction:column;align-items:stretch}.hero-inner:has(.hero-portrait) .hero-content{width:100%}.hero-portrait{width:min(100%,430px);max-width:430px;min-width:0;align-self:center;max-height:470px}.hero-portrait img{min-height:0;height:470px;object-position:center 18%}.about-portrait img{object-position:center center}}

/* About portrait: original, unedited PNG; larger right-side display. Homepage unchanged. */
@media (min-width:851px){
 .hero-inner:has(.about-portrait) .hero-content{flex:1 1 54%}
 .about-portrait{flex:0 1 41%;max-width:480px}
}
.about-portrait img{object-fit:contain;object-position:center center}
@media (max-width:650px){.about-portrait{width:min(100%,460px);max-width:460px}.about-portrait img{height:auto;min-height:0;max-height:none;object-fit:contain}}

/* About hero: original portrait on left at tablet/desktop widths.
   Mobile retains copy first, portrait second for readable linear flow. */
@media (min-width:651px) {
  .hero-inner:has(.about-portrait) .about-portrait { order: -1; }
}

/* Minimal branded email-composer form */
.contact-explainer{max-width:65ch}
.contact-form{max-width:680px}
.contact-form label{display:block;font-weight:600;margin-top:1.1rem;margin-bottom:.35rem}
.contact-form input,.contact-form textarea{display:block;width:100%;box-sizing:border-box;border:1px solid #a7adb8;border-radius:6px;background:#fff;color:#111b2e;font:inherit;padding:.8rem .9rem}
.contact-form input:focus-visible,.contact-form textarea:focus-visible{outline:3px solid #174a73;outline-offset:2px}
.contact-form button{margin-top:1.2rem;min-height:48px;cursor:pointer}
.form-note,.form-feedback{font-size:.91rem;line-height:1.55;max-width:65ch}
.form-note{color:#485261}
.form-feedback{color:#174a73}
@media(max-width:767px){.contact-form input,.contact-form textarea{font-size:16px}.contact-form button{width:100%}}

.resume-download{padding-top:2rem;padding-bottom:3rem}
.resume-download-link{display:inline-block;background:#071b2e;color:#fff;padding:.85rem 1.3rem;border-radius:5px;font-weight:600;text-decoration:none}
.resume-download-link:hover{background:#174a73;color:#fff}
.resume-download-link:focus-visible{outline:3px solid #b8944e;outline-offset:4px}
