:root{--ink:#0f2a2e;--pine:#1d4a3f;--gold:#f2b51c;--snow:#f6f8f7;--mut:#5a6b6a;--r:14px}
*{box-sizing:border-box}body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--snow)}
img{max-width:100%;height:auto}a{color:var(--pine)}h1,h2,h3{line-height:1.15;letter-spacing:-.01em}h1{font-size:clamp(2.2rem,7vw,4rem);margin:.2em 0}h2{font-size:clamp(1.6rem,4vw,2.4rem)}
.wrap{max-width:1140px;margin:auto;padding:0 20px}.sec{padding:56px 20px}
.top{background:var(--ink);position:sticky;top:0;z-index:9}.bar{display:flex;align-items:center;justify-content:space-between;min-height:68px;flex-wrap:wrap}
.brand{display:flex;gap:10px;align-items:center;color:#fff;text-decoration:none;font-weight:800;letter-spacing:.03em}.brand img{width:56px;height:auto}
.menu{background:none;border:1px solid #ffffff55;color:#fff;border-radius:8px;padding:8px 14px;font:inherit}
nav{display:none;width:100%;flex-direction:column;padding:8px 0 16px}nav.open{display:flex}nav a{color:#e8efed;text-decoration:none;padding:10px 0}nav a[aria-current]{color:var(--gold)}
@media(min-width:900px){.menu{display:none}nav{display:flex;flex-direction:row;width:auto;align-items:center;gap:22px;padding:0}}
.btn{display:inline-block;background:var(--gold);color:var(--ink);font-weight:800;text-decoration:none;padding:14px 26px;border-radius:999px;border:0;font-size:1rem;cursor:pointer}.btn.sm{padding:9px 18px}.btn.ghost{background:transparent;color:#fff;border:2px solid #fff}nav .btn{color:var(--ink)}
.hero{min-height:min(82vh,760px);padding:60px 0;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,#0f2a2ee6,#0f2a2e55),url(/assets/hero.jpg) center/cover}
.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--gold);font-weight:700;font-size:.85rem}.lead{font-size:1.15rem;max-width:640px}.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.phero{background:linear-gradient(#0f2a2ed9,#1d4a3fd9),url(/assets/hero.jpg) center/cover;color:#fff;padding:64px 0 48px}
.grid4,.grid3,.gallery{display:grid;gap:18px;grid-template-columns:1fr}@media(min-width:640px){.grid4,.gallery{grid-template-columns:1fr 1fr}.grid3{grid-template-columns:1fr 1fr}}@media(min-width:1000px){.grid4{grid-template-columns:repeat(4,1fr)}.grid3,.gallery{grid-template-columns:repeat(3,1fr)}}
.card,.area{background:#fff;border-radius:var(--r);padding:24px;box-shadow:0 2px 14px #0f2a2e14;text-decoration:none;color:inherit;border-top:4px solid var(--gold)}.card span{color:var(--pine);font-weight:700}
.band{background:var(--pine);color:#fff}.band h3{color:var(--gold)}
.chips{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px}.chips li{background:#fff;border:1px solid #d7e0de;border-radius:999px;padding:8px 16px;font-weight:600}
.cta{background:var(--ink);color:#fff;text-align:center;padding:64px 0}
.svc{padding:48px 0;border-bottom:1px solid #dfe6e4}.svc:nth-child(odd){background:#fff}.types{padding-left:1.1em}.types li{margin:.4em 0}
.prose{max-width:780px}.ph{background:#fff4d6;border:1px dashed #c99a12;padding:8px 12px;border-radius:8px;color:#6b5200;font-size:.9rem}
.phbox{aspect-ratio:4/3;border-radius:var(--r);display:grid;place-items:center;background:repeating-linear-gradient(45deg,#e3eae8 0 14px,#edf2f1 14px 28px);color:var(--mut);font-weight:700;text-transform:uppercase;letter-spacing:.12em}figure{margin:0}figcaption{padding:8px 2px;font-weight:600}
.cgrid{display:grid;gap:32px}@media(min-width:900px){.cgrid{grid-template-columns:2fr 1fr}}
form label{display:block;font-weight:600;margin-bottom:14px}input,select,textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #c5d1cf;border-radius:10px;font:inherit;background:#fff}.hp{position:absolute;left:-9999px}
footer{background:#0a1d20;color:#cfdad8;padding:48px 0 20px}footer a{color:#e8efed}footer h4{color:var(--gold)}footer nav{display:flex;flex-direction:column;padding:0}.fgrid{display:grid;gap:24px}@media(min-width:800px){.fgrid{grid-template-columns:2fr 1fr 1fr}}
.fgrid>div:last-child a{display:block;padding:3px 0;text-decoration:none}.legal{border-top:1px solid #ffffff22;margin-top:24px;padding-top:16px;font-size:.9rem}.team{opacity:.8}
.gallery img,.strip img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r);display:block}
.strip{display:grid;gap:14px;grid-template-columns:1fr 1fr;margin:20px 0}@media(min-width:800px){.strip{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}
.strip figcaption{font-size:.9rem}.lb{display:block}
#lbx{border:0;padding:0;background:transparent;max-width:96vw;max-height:94vh}#lbx::backdrop{background:#000d}#lbx img{max-width:96vw;max-height:84vh;display:block;border-radius:8px}#lbx p{color:#fff;text-align:center;margin:8px}
#lbx .x{position:fixed;top:12px;right:16px;font-size:2.2rem;background:none;border:0;color:#fff;cursor:pointer}
.faq{max-width:860px}.faq h2{margin-top:1.6em;font-size:1.5rem}.faq details{background:#fff;border-radius:10px;margin:10px 0;box-shadow:0 1px 8px #0f2a2e12;border-left:4px solid var(--gold)}
.faq summary{cursor:pointer;padding:16px 44px 16px 18px;font-weight:700;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:12px;font-size:1.4rem;color:var(--pine)}.faq details[open] summary::after{content:"\2212"}.faq details div{padding:0 18px 12px}
@media(min-width:900px) and (max-width:1100px){nav{gap:14px}}
