@font-face{font-family:'Newsreader';src:url(fonts/newsreader-latin-300-normal.woff2);font-weight:300}
@font-face{font-family:'Newsreader';src:url(fonts/newsreader-latin-400-normal.woff2);font-weight:400}
@font-face{font-family:'Newsreader';src:url(fonts/newsreader-latin-300-italic.woff2);font-weight:300;font-style:italic}
@font-face{font-family:'Archivo';src:url(fonts/archivo-latin-400-normal.woff2);font-weight:400}
@font-face{font-family:'Archivo';src:url(fonts/archivo-latin-500-normal.woff2);font-weight:500}
@font-face{font-family:'Archivo';src:url(fonts/archivo-latin-600-normal.woff2);font-weight:600}
:root{--paper:#ECEDE8;--ink:#10161C;--prussian:#1E3A5C;--oxblood:#7B2C2C;--brass:#A98432;--grey:#5E656B;--rule:#C6C8C1;
--display:'Newsreader',Georgia,serif;--body:'Archivo',system-ui,sans-serif;--gut:4.5rem;--max:84rem}
*{box-sizing:border-box;margin:0}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gut)}
header.site{border-bottom:1px solid var(--rule)}
header.site .wrap{display:flex;justify-content:space-between;align-items:baseline;padding-top:1.6rem;padding-bottom:1.3rem}
.brand{font-family:var(--display);font-size:1.55rem;font-weight:400;text-decoration:none;letter-spacing:-.01em}
.brand span{color:var(--brass)}
nav a{margin-left:2.1rem;text-decoration:none;font-size:.93rem;color:var(--grey)}
nav a.on{color:var(--ink);border-bottom:2px solid var(--prussian);padding-bottom:.3rem}
h1,h2,h3{font-family:var(--display);font-weight:300;letter-spacing:-.015em;line-height:1.08}
h1{font-size:4.6rem;max-width:15ch}
h2{font-size:2.7rem;max-width:22ch}
h3{font-size:1.6rem;font-weight:400;line-height:1.2}
.lede{font-size:1.25rem;line-height:1.55;max-width:38rem;color:#2A3239}
p{max-width:40rem}
section{padding:5.5rem 0;border-bottom:1px solid var(--rule)}
.hero{padding:5rem 0 0;border-bottom:none}
.hero .grid{display:grid;grid-template-columns:1.25fr .9fr;gap:4rem;align-items:end}
.hero .who{margin:2rem 0 2.2rem;line-height:1.7}
.hero .who strong{font-weight:600}
.hero figure img{width:100%;display:block;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}
.facts div{padding:1.4rem 1.4rem 1.6rem 0;border-right:1px solid var(--rule);margin-right:1.4rem}
.facts div:last-child{border-right:none;margin-right:0}
.facts b{display:block;font-family:var(--display);font-weight:400;font-size:1.7rem;line-height:1.1;margin-bottom:.45rem;color:var(--prussian)}
.facts span{font-size:.92rem;color:var(--grey);display:block;max-width:18rem}
.btns{display:flex;gap:1rem;flex-wrap:wrap}
.btn{display:inline-block;padding:.85rem 1.4rem;text-decoration:none;font-weight:500;font-size:.95rem;border:1px solid var(--prussian);color:var(--prussian)}
.btn.primary{background:var(--prussian);color:#fff}
.two{display:grid;grid-template-columns:.8fr 1.2fr;gap:4.5rem}
.boards .board{padding:2.2rem 0;border-top:1px solid var(--rule);display:grid;grid-template-columns:1fr 1.3fr;gap:3rem}
.boards .board:first-child{border-top:1px solid var(--ink);padding-top:1.6rem}
.board .since{color:var(--grey);font-size:.95rem;margin-top:.5rem}
.roles{font-weight:500;margin-bottom:.9rem}
ul.plain{list-style:none;padding:0}
ul.plain li{padding:.65rem 0;border-bottom:1px solid var(--rule);max-width:42rem}
ul.plain li:last-child{border-bottom:none}
dl.comp{display:grid;grid-template-columns:15rem 1fr;border-top:1px solid var(--ink)}
dl.comp dt,dl.comp dd{padding:1rem 0;border-bottom:1px solid var(--rule)}
dl.comp dt{font-weight:600;font-size:.97rem;padding-right:2rem}
dl.comp dd{color:#2A3239}
.band{background:var(--prussian);color:#E9ECEF;border-bottom:none}
.band h2{color:#fff}
.band p{color:#D4DAE0}
.band .sectors li{color:#fff;border-bottom:1px solid rgba(255,255,255,.2);font-family:var(--display);font-size:1.35rem;font-weight:300}
.photo-wide img{width:100%;display:block;aspect-ratio:21/8;object-fit:cover;object-position:50% 45%}
figcaption{font-size:.85rem;color:var(--grey);margin-top:.7rem}
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;margin-top:3rem}
.cols3 h3{margin-bottom:.8rem}
.cols3 p{font-size:.98rem}
.cols3 .k{border-top:2px solid var(--brass);padding-top:1.2rem}
.areas .area{display:grid;grid-template-columns:1fr 1.4fr;gap:3rem;padding:1.8rem 0;border-top:1px solid var(--rule)}
.areas .area:first-child{border-top:1px solid var(--ink)}
.area ul{padding-left:1.1rem}
.area li{margin:.35rem 0}
.sub{font-size:.95rem;color:var(--grey)}
.tl .row{display:grid;grid-template-columns:9.5rem 1fr;gap:2.5rem;padding:1.7rem 0;border-top:1px solid var(--rule)}
.tl .row:first-child{border-top:1px solid var(--ink)}
.tl .yr{font-family:var(--display);font-size:1.2rem;color:var(--prussian);line-height:1.3}
.tl h3{margin-bottom:.5rem}
.tl p{font-size:.98rem}
.inset{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.inset img{width:100%;display:block;aspect-ratio:3/2;object-fit:cover}
.portrait-sm img{width:100%;display:block;height:auto}
footer{padding:3.5rem 0 4rem;background:var(--ink);color:#C9CED3}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:3rem}
footer .brand{color:#fff}
footer h4{font-family:var(--body);font-size:.9rem;font-weight:600;color:#fff;margin-bottom:.6rem}
footer p{font-size:.93rem}
.hero .portrait-sm img{aspect-ratio:auto;object-fit:contain;height:auto}
nav a{margin-left:1.6rem}
.svc{display:grid;grid-template-columns:1fr 1.5fr;gap:3.5rem;padding:2.6rem 0;border-top:1px solid var(--rule)}
.svc:first-child{border-top:1px solid var(--ink)}
.svc h3{font-size:1.9rem;margin-bottom:.7rem}
.svc .for{color:var(--grey);font-size:.95rem}
.svc h4{font-family:var(--body);font-size:.88rem;font-weight:600;color:var(--prussian);margin:1.1rem 0 .35rem}
.svc h4:first-child{margin-top:0}
.svc ul{padding-left:1.1rem}.svc li{margin:.3rem 0;max-width:42rem}
.svc .basis{font-size:.93rem;color:#2A3239;border-left:2px solid var(--brass);padding-left:1rem;margin-top:1rem}
.stages{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--ink);margin-top:2.5rem}
.stages.four{grid-template-columns:repeat(4,1fr)}
.stage{padding:1.4rem 1.3rem 1.6rem 0;border-right:1px solid var(--rule);margin-right:1.3rem}
.stage:last-child{border-right:none;margin-right:0}
.stage .n{font-family:var(--display);font-size:2.2rem;color:var(--brass);line-height:1}
.stage h3{font-size:1.35rem;margin:.6rem 0 .5rem}
.stage p{font-size:.9rem;color:#2A3239}
.stage .doc{display:block;margin-top:.9rem;font-size:.82rem;font-weight:600;color:var(--prussian)}
table.t{border-collapse:collapse;width:100%;margin-top:2rem;font-size:.95rem}
table.t th{text-align:left;font-weight:600;padding:.8rem 1.5rem .8rem 0;border-bottom:1px solid var(--ink)}
table.t td{padding:.9rem 1.5rem .9rem 0;border-bottom:1px solid var(--rule);vertical-align:top}
.mods{display:grid;grid-template-columns:repeat(3,1fr);gap:0 3rem;margin-top:2rem}
.mods div{padding:1.2rem 0;border-top:1px solid var(--rule)}
.mods b{display:block;font-weight:600;margin-bottom:.3rem}
.mods span{font-size:.93rem;color:#2A3239}
.prin{counter-reset:p;margin-top:2rem}
.prin div{display:grid;grid-template-columns:3rem 1fr 1.6fr;gap:2rem;padding:1.4rem 0;border-top:1px solid var(--rule)}
.prin .n{font-family:var(--display);font-size:1.5rem;color:var(--brass)}
.prin h3{font-size:1.3rem}
.prin p{font-size:.96rem}
.case{padding:3rem 0;border-top:1px solid var(--ink)}
.case .meta{color:var(--grey);font-size:.93rem;margin:.6rem 0 1.8rem}
.case .grid4{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem 4rem}
.case h4{font-family:var(--body);font-size:.88rem;font-weight:600;color:var(--prussian);margin-bottom:.35rem}
.case p{font-size:.98rem}
a:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
footer a{color:#fff}
@media (max-width:1000px){
:root{--gut:1.5rem}
body{font-size:16px}
header.site .wrap{flex-direction:column;align-items:flex-start;gap:.8rem}
nav{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem}
nav a,nav a.on{margin-left:0}
h1{font-size:2.8rem!important}
h2{font-size:2rem}
section{padding:3.5rem 0}
.hero{padding-top:2.5rem}
.hero .grid,.two,.inset,.boards .board,.areas .area,.svc,.cols3,.mods,.case .grid4,.tl .row,footer .wrap,.prin div{grid-template-columns:1fr!important;gap:1.2rem}
.facts{grid-template-columns:1fr 1fr}
.facts div{border-right:none;margin-right:0}
.stages,.stages.four{grid-template-columns:1fr}
.stage{border-right:none;margin-right:0;border-bottom:1px solid var(--rule)}
dl.comp{grid-template-columns:1fr}
dl.comp dt{border-bottom:none;padding-bottom:.2rem}
.portrait-sm{justify-self:start!important}
table.t{font-size:.88rem}
.photo-wide img{aspect-ratio:16/9}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
