
:root{--paper:#EEEDE9;--ink:#33373B;--deep:#24272A;--mut:#61666B;--acc:#B5482A;--acc-d:#93381F;--line:rgba(51,55,59,.16);--card:#F6F5F2;--ease:cubic-bezier(0.22,1,0.36,1)}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Karla',system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.62;font-size:17.5px}
h1,h2,h3{font-family:'Oswald',sans-serif;font-weight:600;line-height:1.05;text-transform:uppercase;letter-spacing:.01em}
a{color:var(--acc-d)} img{max-width:100%;display:block}
.wrap{max-width:1150px;margin:0 auto;padding:0 22px}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--acc-d);display:block;margin-bottom:12px}
.btn{display:inline-block;font-family:'Oswald',sans-serif;font-weight:600;font-size:16px;text-transform:uppercase;letter-spacing:.05em;padding:15px 28px;background:var(--acc);color:#fff;text-decoration:none;transition:background .18s var(--ease)}
.btn:hover{background:var(--acc-d)} .btn.dark{background:var(--deep)}
header{background:var(--deep);position:sticky;top:0;z-index:50}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:14px}
.brand{font-family:'Oswald',sans-serif;font-weight:600;font-size:18px;text-transform:uppercase;color:#F0EFEA;text-decoration:none;letter-spacing:.04em}
.brand b{color:#E07A5A}
.nav-links{display:flex;gap:20px;align-items:center;font-weight:700;font-size:14.5px}
.nav-links a{text-decoration:none;color:#C9CCCF}
.nav-links a:hover{color:#fff}
.hero{padding:78px 0 64px;border-bottom:4px solid var(--deep)}
.hero h1{font-size:clamp(40px,6.6vw,84px);max-width:14ch}
.hero h1 em{font-style:normal;color:var(--acc)}
.hero .lead{font-size:19.5px;color:var(--mut);margin:22px 0 30px;max-width:56ch;font-weight:500}
.sec{padding:76px 0}
.sec h2{font-size:clamp(26px,4vw,44px);max-width:26ch;margin-bottom:16px}
.projects{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.proj{background:var(--card);border-top:5px solid var(--acc);padding:24px;box-shadow:0 1px 0 var(--line)}
.proj h3{font-size:19px;margin-bottom:8px}
.proj p{color:var(--mut);font-size:15.5px}
.band{background:var(--deep);color:#D9DBDD;padding:60px 0}
.band h2{color:#fff}
.faq details{border-bottom:2px solid var(--line);padding:14px 2px}
.faq summary{cursor:pointer;font-weight:700;font-size:17px}
.faq .ans{padding:10px 0 6px;color:var(--mut);max-width:75ch}
.areas{display:flex;flex-wrap:wrap;gap:10px}
.areas span{background:var(--card);border:2px solid var(--deep);padding:7px 15px;font-weight:700;font-size:14.5px}
footer{background:var(--deep);color:#A8ABAF;padding:44px 0;font-size:14.5px;margin-top:26px}
footer a{color:#DDDFE1} footer .cols{display:flex;flex-wrap:wrap;gap:36px;justify-content:space-between}
.prose p{margin:0 0 18px;max-width:72ch}.prose h2{margin-top:42px}.prose h3{font-size:20px;margin:28px 0 10px}
.prose ul{margin:0 0 18px 22px;max-width:70ch}.prose li{margin-bottom:8px}
form.qf{display:grid;gap:16px;max-width:640px}
form.qf label{font-weight:700;font-size:15px;display:grid;gap:6px}
form.qf input,form.qf select,form.qf textarea{font:inherit;padding:12px;border:2px solid var(--deep);background:#fff}
.note{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--mut)}
@media(max-width:860px){.nav-links{display:none}}
