:root{--navy:#172d36;--copper:#b65d36;--copper-text:#a8532d;--cream:#f5f3ed;--muted:#586871}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;color:var(--navy);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
button{cursor:pointer;border:0;background:none;color:inherit}
a:focus-visible,button:focus-visible,[role=tabpanel]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #d07a47;outline-offset:3px}
.hero a:focus-visible,.hero button:focus-visible,footer a:focus-visible,footer button:focus-visible,.sample a:focus-visible{outline-color:#f3c9a8}
.skip{position:absolute;top:-100px;left:0}
.skip:focus{top:0;z-index:100;background:white;padding:10px}
img{max-width:100%}

.top{background:var(--navy);color:#dce5e7;padding:9px 6%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.4px}
header{position:sticky;top:0;background:white;z-index:10;padding:20px 6%;display:flex;align-items:center;gap:32px;border-bottom:1px solid #eee}
.brand{display:flex;gap:12px;align-items:center;font-size:27px;font-weight:700;letter-spacing:-1px;line-height:1.1}
.brand small{display:block;font-size:9px;letter-spacing:3px;margin-top:7px}
.mark{background:var(--navy);color:white;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:30px;position:relative}
.mark span{font-size:15px;color:#dc936c;position:absolute;right:3px;top:3px}
nav{display:flex;margin-left:auto;gap:30px;align-items:center;font-size:14px}
nav button{padding:10px 0}
nav>a{padding:10px 0}
.primary,.dark{padding:13px 23px;background:#a8532d;color:white;border-radius:3px;font-weight:600;font-size:14px}
.dark{background:var(--navy)}
.mobile{display:none}
.mega{display:none;position:absolute;left:6%;right:6%;top:100%;background:white;padding:35px 50px;box-shadow:0 20px 30px #172d361c;border-top:1px solid #eee;grid-template-columns:1fr 1fr;gap:60px}
.drop.open .mega{display:grid}
.mega a{display:block;margin:12px 0;font-size:19px}
.mega a:hover,nav>a:hover{color:var(--copper-text)}
.mega small,.eyebrow{font-size:11px;letter-spacing:2px;font-weight:bold}
.mega p{max-width:400px;color:var(--muted)}
.text{color:var(--copper-text);font-weight:bold}

.hero{position:relative;min-height:590px;margin:24px 3% 0;overflow:hidden;border-radius:5px;background:#203d41}
.hero>picture,.hero>picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.shade{position:absolute;inset:0;background:linear-gradient(90deg,#112b32ee 0%,#112b32b0 38%,#112b3200 78%)}
.hero-copy{position:relative;color:white;padding:70px 5%;max-width:670px}
.hero .eyebrow{color:#edbd9a}
h1{font-size:62px;line-height:1.08;letter-spacing:-2.5px;margin:22px 0}
h1 em{font-style:normal;color:#ecb18b}
.hero p{max-width:440px;color:#e2e9e7;font-size:18px}
.actions{display:flex;align-items:center;gap:25px;margin-top:30px}
.actions a{font-size:14px}
.hero-note{position:absolute;bottom:32px;right:35px;background:#fffffff0;padding:20px 25px;display:flex;flex-direction:column;gap:8px}
.hero-note span{font-size:11px;letter-spacing:1.5px}
.hero-note b{font-size:18px}

.quick{display:grid;grid-template-columns:repeat(3,1fr);margin:0 8%;border-bottom:1px solid #deded8}
.quick a,.quick button{padding:25px 15px;text-align:left;font-size:14px}
.quick span{color:var(--copper-text);margin-right:18px}

.section{padding:85px 8%;scroll-margin-top:0}
.section-head{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:end;margin-bottom:40px}
h2{font-size:38px;line-height:1.2;letter-spacing:-1.2px;margin:16px 0}
p{color:var(--muted)}
.section-head p{max-width:440px}
.eyebrow{color:var(--copper-text)}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}
.services article{border-top:2px solid var(--navy);padding-top:25px}
.icon{font-size:29px;color:var(--copper-text)}
h3{font-size:23px;line-height:1.3;letter-spacing:-.4px}
.services button{padding:6px 0;color:var(--copper-text);font-weight:bold;font-size:14px}

.industry{background:var(--cream)}
.tabs{display:flex;gap:25px;border-bottom:1px solid #d6d9d3;margin-bottom:35px}
.tabs button{padding:15px 0;color:var(--muted);font-size:14px;border-bottom:3px solid transparent}
.tabs button[aria-selected=true]{color:var(--navy);border-color:var(--copper);font-weight:bold}
.industry-content{display:grid;grid-template-columns:1.15fr 1fr;gap:55px;align-items:center}
.industry-image{height:350px;position:relative}
.industry-image picture,.industry-image img{display:block;width:100%;height:100%;object-fit:cover;border-radius:4px}
.industry-image span{position:absolute;bottom:20px;left:20px;color:white;background:#172d36d9;padding:8px 15px;font-size:11px;letter-spacing:1.7px}
.industry-content small,.sample small{font-size:11px;letter-spacing:1.7px;color:var(--copper-text)}
.industry-content h3{font-size:31px;margin:16px 0}
.industry-content ul{list-style:none;padding:0;font-size:14px}
.industry-content li{padding:7px 0}
.industry-content li:before{content:'✓';color:var(--copper-text);margin-right:12px}
.fine{font-size:13px}

.badge{display:inline-block;background:#f2e5d9;color:#855333;padding:7px 10px;font-size:12px;font-weight:bold}
.workflow{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.workflow>div{background:var(--cream);padding:28px}
.workflow span{font-size:11px;letter-spacing:1.8px;color:var(--copper-text)}
.sample{margin-top:35px;padding:35px;background:var(--navy);display:grid;grid-template-columns:1fr 1.1fr;gap:50px;color:white}
.sample p{color:#bfcdd0}
.sample small{color:#edb48e}
.sample ol{padding-left:25px}
.sample li{padding:10px 0 20px 10px}
.sample li span{display:block;color:#bfcdd0;font-size:13px}

.about{display:grid;grid-template-columns:1fr 1fr;gap:70px;background:var(--cream)}
.large{font-size:23px;color:var(--navy);line-height:1.5}
.principles{display:flex;gap:20px;font-size:12px;border-top:1px solid #d8dbd6;padding-top:20px}
.contact{display:flex;align-items:center;justify-content:space-between;gap:40px}
.contact p{max-width:580px}

footer{padding:45px 8%;background:var(--navy);color:white;display:flex;align-items:center;gap:35px;flex-wrap:wrap}
footer .mark{background:#36505a}
footer p{font-size:12px;color:#c1cccd}
footer>div{margin-left:auto;display:flex;gap:20px;font-size:13px}
footer>small{width:100%;border-top:1px solid #41535a;padding-top:20px;color:#b6c6c9;font-size:11px}

dialog{border:0;border-radius:6px;max-width:650px;width:calc(100% - 32px);padding:35px;color:var(--navy);max-height:90vh;overflow:auto}
dialog::backdrop{background:#10252cb8}
.close{position:absolute;right:12px;top:6px;font-size:30px;width:44px;height:44px;line-height:1}
dialog h2{font-size:30px}
dialog p{font-size:13px}
form{display:grid;grid-template-columns:1fr 1fr;gap:15px}
label{font-size:12px;font-weight:bold}
input,select,textarea{display:block;width:100%;border:1px solid #8a999e;padding:10px;background:white;color:var(--navy);border-radius:3px;margin-top:5px}
.full{grid-column:1/-1}
[hidden]{display:none!important}

@media(max-width:850px){
html{scroll-padding-top:72px}
header{padding:9px 5%;gap:10px}
.brand{font-size:20px;gap:9px}
.brand small{font-size:9px;letter-spacing:2.4px;margin-top:5px}
.mark{width:38px;height:38px;font-size:26px}
header>.primary{margin-left:auto;padding:0 14px;min-height:44px;font-size:13px}
nav{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:12px 5% 16px;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100vh - 64px);overflow:auto;box-shadow:0 20px 30px #172d361c;border-top:1px solid #eee}
header.menu nav{display:flex}
nav button,nav>a{text-align:left;min-height:46px;display:flex;align-items:center;padding:0}
.mobile{display:flex;align-items:center;justify-content:center;font-size:24px;width:44px;height:44px}
.mega{position:static;padding:4px 14px 12px;grid-template-columns:1fr;box-shadow:none;gap:6px;border-top:0}
.mega a{margin:0;padding:10px 0;font-size:17px}
.top{padding:7px 5%}
.top a{display:none}
.hero{min-height:0;margin:10px 3% 0;background:#112b32}
.hero>picture{bottom:auto;height:300px}
.hero>picture img{object-position:82% 0}
.shade{bottom:auto;height:300px;background:linear-gradient(180deg,#112b3200 0%,#112b3200 62%,#112b32 100%)}
.hero-copy{padding:250px 6% 32px;max-width:550px;width:100%}
h1{font-size:40px;margin:12px 0 14px;letter-spacing:-1.8px}
.hero p{font-size:16px;margin:0}
.actions{margin-top:18px;gap:16px;flex-wrap:wrap}
.actions a{padding:12px 0}
.hero-note{display:none}
.section{padding:40px 6%}
.section-head,.industry-content,.about,.sample{grid-template-columns:1fr;gap:16px}
.section-head{margin-bottom:22px}
.services,.workflow{grid-template-columns:1fr}
.services{gap:22px}
.services article{padding-top:16px}
.services h3{margin:8px 0}
.services p{margin:0 0 4px}
.services button{padding:12px 0}
h2{font-size:28px;margin:10px 0}
h3{font-size:21px}
h2 br,h3 br{display:none}
.section-head p,.contact p{margin:0}
.quick{margin:0 5%;grid-template-columns:1fr}
.quick a,.quick button{padding:13px 4px}
.tabs{gap:18px;overflow:auto;margin-bottom:22px}
.tabs button{white-space:nowrap}
.industry-content{gap:22px}
.industry-content h3{font-size:25px;margin:10px 0}
.workflow>div{padding:22px}
.sample{padding:24px;margin-top:24px}
.contact{flex-direction:column;align-items:flex-start;gap:22px}
footer{padding:30px 6%;gap:20px}
footer>div{margin-left:0}
footer>div a,footer>div button{padding:12px 4px}
.industry-image{height:230px}
.large{font-size:20px}
.principles{flex-wrap:wrap;gap:10px 18px}
}
@media(max-width:450px){
header>.primary{font-size:12px;padding:0 12px}
.brand{font-size:19px}
.hero>picture,.shade{height:270px}
.hero-copy{padding-top:222px}
h1{font-size:36px}
.hero p{font-size:15px}
.eyebrow{font-size:10px}
form{grid-template-columns:1fr}
dialog{padding:24px 20px}
.top{font-size:11px}
}
@media(max-width:359px){
.brand{font-size:17px}
.brand small{letter-spacing:2px}
header>.primary{padding:0 10px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
