:root{--ink:#152333;--navy:#142b3e;--navy2:#0e2131;--cream:#f8f6f2;--muted:#5f7080;--gold:#ae8b59;--line:#e3e5e6;--white:#fff;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #c9a46e;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.17;letter-spacing:-.035em}h1{font-size:clamp(2.8rem,6vw,5.35rem);font-weight:550}h2{font-size:clamp(2.1rem,4vw,3.35rem);font-weight:550}h3{font-size:1.22rem;font-weight:650}p{color:#526273}img{max-width:100%}.wrap{max-width:var(--max);margin:auto;padding-left:30px;padding-right:30px}.topbar{background:var(--navy2);color:#fff;font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:9px}.header{background:#fff;border-bottom:1px solid #e9e9e9;position:sticky;top:0;z-index:25}.nav{height:80px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{font-size:1.2rem;font-weight:750;letter-spacing:.105em;color:var(--navy)}.logo small{display:block;color:#7c8790;font-size:.61rem;letter-spacing:.18em;font-weight:650;margin-top:-4px}.links{display:flex;align-items:center;gap:27px}.links a{font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#475666;white-space:nowrap}.links a:hover,.links a.active{color:#a47e48}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 24px;border-radius:3px;border:1px solid var(--navy);background:var(--navy);color:#fff!important;text-transform:uppercase;letter-spacing:.095em;font-weight:730;font-size:.75rem;transition:.2s;cursor:pointer}.btn:hover{background:#254459;transform:translateY(-1px)}.btn.light{background:#fff;border-color:#fff;color:var(--navy)!important}.btn.outline{background:transparent;border-color:rgba(255,255,255,.55);color:white!important}.btn.neutral{background:transparent;border-color:#b4c0c7;color:var(--navy)!important}.mobile-toggle{display:none;background:transparent;border:0;font-size:1.8rem;cursor:pointer}.eyebrow{font-size:.7rem;letter-spacing:.21em;text-transform:uppercase;color:var(--gold);font-weight:750;margin-bottom:17px}.hero{background:var(--navy2);color:white;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.1fr .9fr;min-height:630px;align-items:center;gap:30px}.hero h1{color:white;margin-bottom:24px}.hero .sub{font-size:1.1rem;max-width:610px;color:#ccdae1;margin-bottom:30px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-art{position:relative;height:520px;display:flex;align-items:center;justify-content:center}.ring{position:absolute;border:1px solid rgba(255,255,255,.14);border-radius:50%;width:470px;height:470px}.ring.two{width:340px;height:340px;border-color:rgba(255,255,255,.2)}.ring.three{width:205px;height:205px;border-color:#ab8959;opacity:.75}.art-card{position:relative;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.21);backdrop-filter:blur(12px);padding:36px 34px;max-width:310px;box-shadow:0 20px 60px rgba(0,0,0,.15)}.art-card strong{display:block;font-size:4.4rem;font-weight:400;line-height:1;color:#fff}.art-card span{font-size:.72rem;letter-spacing:.17em;text-transform:uppercase;color:#bfcfd5}.art-rule{height:1px;background:#ae8b59;margin:24px 0}.art-card p{color:#dae1e4;font-size:.9rem;margin-bottom:0}.stats{border-bottom:1px solid var(--line);background:var(--cream)}.statgrid{display:grid;grid-template-columns:repeat(3,1fr);padding-top:36px;padding-bottom:36px}.stat{padding:6px 35px;border-right:1px solid #dadddf}.stat:first-child{padding-left:0}.stat:last-child{border:0}.stat strong{display:block;color:var(--navy);font-size:2rem;font-weight:570}.stat span{color:#697683;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.section{padding-top:96px;padding-bottom:96px}.section.tint{background:var(--cream)}.section.navy{background:var(--navy);color:white}.section.navy p{color:#c5d0d7}.intro{max-width:720px;margin-bottom:44px}.intro p{font-size:1.08rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.split .lead{font-size:1.2rem;line-height:1.7}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature{background:white;padding:32px;min-height:260px;border:1px solid #e6e7e8}.feature .num{display:block;font-size:.7rem;color:var(--gold);letter-spacing:.18em;font-weight:750;margin-bottom:38px}.feature p{font-size:.92rem}.feature a{font-size:.78rem;font-weight:760;letter-spacing:.08em;text-transform:uppercase;color:#976d37}.career-card{background:#fff;border:1px solid var(--line);padding:28px;margin-bottom:14px}.career-top{display:flex;justify-content:space-between;gap:16px;align-items:baseline}.career-top h3{margin-bottom:3px}.career-top .dates{color:#8e754f;font-size:.77rem;letter-spacing:.04em;white-space:nowrap}.career-card .employer{color:#687682;font-size:.85rem;margin-bottom:12px}.career-card p{margin:0;font-size:.91rem}.timeline-small{padding:20px 0;border-bottom:1px solid var(--line)}.timeline-small:last-child{border:0}.timeline-small strong{color:var(--navy)}.timeline-small span{display:block;color:#71808b;font-size:.8rem}.tech-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.tech-logo{height:108px;background:#fff;border:1px solid #e8ebec;display:flex;align-items:center;justify-content:center;padding:17px}.tech-logo img{width:100%;height:75px;object-fit:contain}.cta{background:#e9e2d7;padding:64px 0}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{font-size:clamp(1.8rem,3vw,2.65rem);max-width:690px;margin:0}.footer{background:#0d1d2c;color:#c7d1d8;padding:54px 0 24px}.footgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px}.footer strong{color:#fff}.footer p,.footer a{color:#b4c0c9;font-size:.88rem}.footer a:hover{color:#fff}.footer .footlinks{display:flex;flex-direction:column;gap:7px}.footbottom{border-top:1px solid #30404e;margin-top:44px;padding-top:22px;color:#94a4af;font-size:.75rem}.page-hero{padding:100px 0 90px;background:var(--navy2);color:white}.page-hero h1{font-size:clamp(2.65rem,5vw,4.6rem);max-width:880px}.page-hero p{max-width:780px;color:#ccdae0;font-size:1.1rem}.list-block{border-top:1px solid var(--line);padding:28px 0}.list-block ul{padding-left:19px;color:#526273}.list-block li{margin-bottom:8px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:35px}.contact-panel{background:var(--cream);padding:40px}.contact-panel a{color:var(--navy);font-weight:650;text-decoration:underline;text-decoration-color:#b89a6c;text-underline-offset:5px}.mini-label{color:#8a7453;text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:760}.form-field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.form-field label{font-size:.8rem;letter-spacing:.05em;font-weight:720}.form-field input,.form-field textarea{font:inherit;border:1px solid #cfd5d9;padding:13px;background:#fff;border-radius:2px;width:100%}.form-field textarea{min-height:135px;resize:vertical}.small-note{font-size:.78rem;color:#788590}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.value{border-top:2px solid #ae8b59;padding-top:22px}.value p{font-size:.92rem}@media(max-width:980px){.links{gap:14px}.links a{font-size:.72rem}.nav{gap:12px}.hero-inner{grid-template-columns:1fr .75fr}.hero-art{height:430px}.ring{width:350px;height:350px}.ring.two{width:250px;height:250px}.ring.three{width:150px;height:150px}.split{gap:35px}.tech-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:760px){.wrap{padding-left:22px;padding-right:22px}.topbar{font-size:.62rem}.nav{height:69px}.mobile-toggle{display:block}.links{display:none;position:absolute;top:69px;left:0;right:0;background:#fff;padding:21px;box-shadow:0 12px 20px rgba(0,0,0,.08);flex-direction:column;align-items:stretch;gap:18px}.links.open{display:flex}.links a{font-size:.86rem}.links .btn{width:100%}.hero-inner,.split,.two-col{grid-template-columns:1fr}.hero-inner{padding-top:72px;padding-bottom:65px;min-height:auto}.hero-art{display:none}.section{padding-top:65px;padding-bottom:65px}.statgrid{grid-template-columns:1fr 1fr;gap:20px}.stat{padding:10px 12px!important}.stat:nth-child(2){border:0}.stat:last-child{grid-column:1/-1;border-top:1px solid #dadddf;padding-top:18px!important}.feature-grid,.values{grid-template-columns:1fr}.feature{min-height:auto}.feature .num{margin-bottom:20px}.tech-grid{grid-template-columns:repeat(2,1fr)}.cta .wrap{align-items:start;flex-direction:column}.footgrid{grid-template-columns:1fr 1fr;gap:25px}.footgrid>div:first-child{grid-column:1/-1}.career-top{flex-direction:column;gap:5px}.page-hero{padding:68px 0}.contact-panel{padding:25px}}

/* Professional portrait */
.hero-portrait{position:relative;align-self:stretch;display:flex;align-items:center;justify-content:center;padding:48px 2px 50px 12px}
.portrait-frame{position:relative;width:min(100%,415px);height:540px;overflow:hidden;border-radius:210px 210px 7px 7px;background:#e7dfd2;box-shadow:0 24px 65px rgba(0,0,0,.25)}
.portrait-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 29%}
.portrait-accent{position:absolute;bottom:57px;left:0;background:#f6f2eb;color:#243748;padding:14px 20px;border-left:4px solid var(--gold);font-size:.72rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 28px rgba(0,0,0,.16)}
.about-photo{max-width:390px;margin-top:32px;border-radius:8px;overflow:hidden;box-shadow:0 16px 32px rgba(21,35,51,.11)}
.about-photo img{display:block;width:100%;aspect-ratio:4/4.25;object-fit:cover;object-position:center 30%}
@media(max-width:980px){.portrait-frame{height:455px}.portrait-accent{bottom:50px;left:-6px;font-size:.65rem;padding:12px}}
@media(max-width:760px){.hero-portrait{display:flex;margin:30px auto 0;padding:0;width:min(100%,360px)}.portrait-frame{height:405px;width:100%;border-radius:170px 170px 7px 7px}.portrait-accent{bottom:12px;left:-6px}.about-photo{max-width:330px;margin-top:26px}}

/* Compact portrait sizing — 2026-11-09 */
.hero-portrait{padding:26px 8px 28px;align-self:center}
.portrait-frame{width:min(100%,275px);height:355px;border-radius:145px 145px 7px 7px}
.portrait-accent{bottom:32px;left:15px;padding:10px 13px;font-size:.64rem}
.about-photo{max-width:250px;margin-top:26px}
@media(max-width:980px){.portrait-frame{height:320px;width:min(100%,245px)}.portrait-accent{bottom:22px;left:8px}}
@media(max-width:760px){.hero-portrait{width:min(100%,245px);margin:24px auto 0;padding:0}.portrait-frame{width:100%;height:300px;border-radius:130px 130px 7px 7px}.portrait-accent{bottom:8px;left:-8px}.about-photo{max-width:225px;margin-top:24px}}
