:root{--ink:#102b4e;
--ink-2:#173a64;
--gold:#c9a15b;
--paper:#f7f8f9;
--mist:#e7ebf0;
--text:#1e2935;
--muted:#596575;
--white:#fff;
--max:1170px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;
background:var(--paper);
color:var(--text);
font-family:Georgia,'Times New Roman',serif;
font-size:16px;
line-height:1.58}a{color:inherit}button{font:inherit}.top{background:var(--ink);
color:#fff;
border-bottom:1px solid #37516f}.bar,.nav,.wrap{width:min(var(--max),calc(100% - 40px));
margin:auto}.bar{display:flex;
justify-content:space-between;
gap:16px;
padding:9px 0;
font-size:.78rem;
font-family:Arial,sans-serif}.bar a{text-decoration:none}.nav{display:flex;
align-items:center;
justify-content:space-between;
min-height:88px;
gap:24px}.brand{font-weight:bold;
font-size:1.1rem;
letter-spacing:.04em;
text-decoration:none}.brand span{display:block;
color:var(--gold);
font:600 .68rem Arial,sans-serif;
letter-spacing:.18em;
text-transform:uppercase;
margin-top:2px}.nav-links{display:flex;
align-items:center;
gap:23px;
font:600 .78rem Arial,sans-serif;
letter-spacing:.06em;
text-transform:uppercase}.nav-links a{text-decoration:none}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--gold)}.menu{display:none;
background:transparent;
color:#fff;
border:1px solid #7890ab;
border-radius:4px;
padding:8px 11px}.hero{background:linear-gradient(120deg,#0b2340 0%,#173a64 63%,#204a75 100%);
color:#fff;
padding:84px 0 72px;
overflow:hidden}.hero-grid{width:min(var(--max),calc(100% - 40px));
margin:auto;
display:grid;
grid-template-columns:1.12fr .88fr;
gap:55px;
align-items:center}.eyebrow{color:#e2c17f;
text-transform:uppercase;
font:700 .72rem Arial,sans-serif;
letter-spacing:.18em}.hero h1,.page-hero h1{font-size:clamp(2.25rem,5vw,4.45rem);
line-height:1.04;
margin:14px 0 21px;
font-weight:500}.hero p{font-size:1.12rem;
max-width:570px;
color:#e5ebf2}.actions{display:flex;
flex-wrap:wrap;
gap:14px;
margin-top:28px}.button{display:inline-flex;
align-items:center;
justify-content:center;
min-height:47px;
padding:10px 18px;
border:1px solid var(--gold);
background:var(--gold);
color:#17293c;
text-decoration:none;
font:700 .78rem Arial,sans-serif;
letter-spacing:.06em;
text-transform:uppercase}.button.outline{background:transparent;
color:#fff}.is-disabled{cursor:not-allowed;
opacity:.58;
border-color:#aebdcd;
color:#dce4ed}.footer-disabled{display:block;
color:#aebdcd;
margin:6px 0;
font-size:.88rem;
cursor:not-allowed}.portrait{background:rgba(255,255,255,.06);
border:1px solid rgba(225,190,120,.38);
min-height:390px;
display:flex;
justify-content:center;
align-items:end;
overflow:hidden}.portrait img{width:100%;
max-width:390px;
height:390px;
object-fit:cover;
object-position:50% 19%;
filter:contrast(1.02)}.section{padding:72px 0}.section.white{background:#fff}.section.dark{background:var(--ink);
color:#fff}.kicker{color:#a67627;
font:700 .72rem Arial,sans-serif;
letter-spacing:.17em;
text-transform:uppercase}.section h2{font-size:clamp(1.8rem,3vw,2.7rem);
line-height:1.15;
font-weight:500;
margin:8px 0 12px}.lead{max-width:700px;
color:var(--muted);
font-size:1.08rem}.grid{display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
margin-top:35px}.card{background:#fff;
border:1px solid #dbe1e8;
padding:28px;
display:flex;
flex-direction:column;
align-items:flex-start}.card h3{font-size:1.33rem;
margin:0 0 10px;
font-weight:500;
color:var(--ink)}.card p{margin:0 0 17px;
color:var(--muted)}.text-link{font:700 .75rem Arial,sans-serif;
text-transform:uppercase;
letter-spacing:.08em;
color:#8c641d;
text-decoration:none;
border-bottom:1px solid #c9a15b;
padding-bottom:3px}.notice{padding:25px 29px;
border-left:4px solid var(--gold);
background:#fffdf8;
max-width:850px}.split{display:grid;
grid-template-columns:1fr 1fr;
gap:42px;
align-items:center}.staff{display:grid;
grid-template-columns:1fr 1fr;
gap:25px}.person{background:#fff;
border:1px solid #dbe1e8}.person img{display:block;
width:100%;
height:365px;
object-fit:cover;
object-position:50% 20%;
background:#e8e4e1}.person-body{padding:22px}.person h3{color:var(--ink);
font-size:1.4rem;
margin:0}.person p{margin:3px 0 0;
color:var(--muted)}.page-hero{background:var(--ink);
color:#fff;
padding:64px 0 58px}.page-hero .wrap{max-width:var(--max)}.page-hero p{max-width:700px;
color:#e3eaf0;
font-size:1.08rem}.breadcrumbs{font:600 .72rem Arial,sans-serif;
color:#d8bd83;
letter-spacing:.09em;
text-transform:uppercase}.service-list{columns:2;
gap:28px;
margin:25px 0 0;
padding:0;
list-style:none}.service-list li{break-inside:avoid;
border-top:1px solid #d9e0e7;
padding:14px 0}.service-list a{color:var(--ink);
text-decoration:none;
font-size:1.1rem}.service-list a:hover{color:#967029}.detail{max-width:800px}.detail h2{margin-top:0}.detail h3{color:var(--ink);
font-size:1.28rem;
margin:33px 0 7px}.related{display:flex;
flex-wrap:wrap;
gap:10px}.pill{border:1px solid #c9a15b;
padding:7px 10px;
text-decoration:none;
font:600 .75rem Arial,sans-serif;
color:#755521}.tech-list{display:grid;
grid-template-columns:repeat(2,1fr);
gap:14px;
margin-top:24px}.tech-item{padding:20px;
background:#fff;
border:1px solid #dbe1e8}.tech-item strong{display:block;
color:var(--ink)}.map{width:100%;
min-height:390px;
border:0;
filter:grayscale(.35);
background:#dce3ea}.address{font-style:normal;
font-size:1.12rem}.footer{background:#091d34;
color:#dce4ed;
padding:45px 0 23px;
font-family:Arial,sans-serif}.footer-grid{display:grid;
grid-template-columns:1.4fr 1fr 1fr;
gap:25px}.footer h3{color:#e1bf7a;
font:700 .75rem Arial,sans-serif;
letter-spacing:.12em;
text-transform:uppercase}.footer a{display:block;
color:#dce4ed;
text-decoration:none;
margin:6px 0;
font-size:.88rem}.small{border-top:1px solid #28425e;
margin-top:28px;
padding-top:18px;
font-size:.75rem;
color:#aebdcd}.wa{position:fixed;
right:19px;
bottom:19px;
background:#1e7a4e;
color:#fff;
text-decoration:none;
border-radius:50%;
width:57px;
height:57px;
display:grid;
place-items:center;
box-shadow:0 5px 18px #0004;
font:700 1.1rem Arial;
z-index:3}.modal{position:fixed;
inset:0;
background:#061426b8;
display:grid;
place-items:center;
padding:20px;
z-index:10}.modal[hidden]{display:none}.modal-box{background:#fff;
width:min(480px,100%);
padding:32px;
color:var(--text);
box-shadow:0 12px 45px #0007}.modal-box h2{color:var(--ink);
font-size:1.8rem;
margin-top:0}.modal-actions{display:flex;
gap:10px;
flex-wrap:wrap}@media(max-width:760px){.bar{font-size:.7rem}.bar span{display:none}.nav{min-height:73px}.menu{display:block}.nav-links{position:absolute;
top:73px;
left:20px;
right:20px;
display:none;
flex-direction:column;
align-items:stretch;
padding:17px;
background:#102b4e;
border:1px solid #36506c;
z-index:5}.nav-links.open{display:flex}.hero{padding:60px 0}.hero-grid,.split{grid-template-columns:1fr;
gap:30px}.portrait{min-height:300px}.portrait img{height:325px}.grid{grid-template-columns:1fr}.staff{grid-template-columns:1fr}.person img{height:390px}.service-list{columns:1}.tech-list{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.section{padding:52px 0}.page-hero{padding:50px 0}.nav-links a{padding:7px}.hero h1,.page-hero h1{font-size:2.35rem}}
