:root{
  --navy:#071523;
  --navy2:#0d2236;
  --gold:#e7a51d;
  --gold2:#f3b62a;
  --ink:#101820;
  --muted:#66727d;
  --paper:#ffffff;
  --soft:#f4f6f8;
  --line:#dfe5e9;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Open Sans",Arial,sans-serif;color:var(--ink);background:#fff}
.container{width:min(1180px,calc(100% - 36px));margin:auto}
.site-header{position:sticky;top:0;z-index:20;background:rgba(7,21,35,.97);box-shadow:0 4px 16px rgba(0,0,0,.16)}
.nav-wrap{height:82px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;color:#fff;text-decoration:none;min-width:max-content}
.brand-mark{display:grid;place-items:center;width:54px;height:54px;margin-right:10px;color:var(--gold);font-size:46px;line-height:1}
.brand strong{display:block;font:800 26px/1 "Montserrat";letter-spacing:.3px}
.brand em{color:var(--gold);font-style:normal}
.brand small{display:block;font:700 11px/1.4 "Montserrat";letter-spacing:.6px}
.nav{display:flex;gap:28px;margin-left:auto}
.nav a{color:white;text-decoration:none;font:700 13px "Montserrat";text-transform:uppercase}
.nav a:hover{color:var(--gold)}
.header-call{display:flex;align-items:center;gap:10px;color:var(--gold);text-decoration:none;font:700 12px "Montserrat"}
.header-call b{color:#fff;font-size:16px}
.menu-btn{display:none;margin-left:auto;background:none;border:0;color:#fff;font-size:28px}

.hero{position:relative;min-height:590px;display:flex;align-items:center;overflow:hidden;background:
linear-gradient(120deg,rgba(7,21,35,.98) 0%,rgba(7,21,35,.90) 48%,rgba(7,21,35,.55) 70%,rgba(7,21,35,.25) 100%),
radial-gradient(circle at 82% 36%, #baa47e 0 6%, transparent 6.5%),
linear-gradient(135deg,#5e5348 0%,#cfc5b5 48%,#8d7660 49%,#d6c7b0 70%,#706258 100%)}
.hero:after{content:"";position:absolute;right:4%;bottom:-5%;width:43%;height:68%;border-radius:8px 8px 0 0;background:
linear-gradient(#e9e4dc 0 24%,#8f7965 24% 26%,#e8e0d4 26% 100%);
opacity:.26;transform:skewX(-4deg)}
.hero-content{position:relative;z-index:2;color:white;padding:80px 0;max-width:780px;margin-left:max(calc((100% - 1180px)/2),18px)}
.eyebrow{font:700 13px "Montserrat";text-transform:uppercase;letter-spacing:1.5px;color:var(--gold);margin:0 0 18px}
.hero h1{font:800 clamp(40px,6vw,70px)/1.02 "Montserrat";text-transform:uppercase;letter-spacing:-1.6px;margin:0 0 22px}
.hero h1 span{color:var(--gold)}
.hero-copy{max-width:690px;font-size:20px;line-height:1.55;color:#edf1f4}
.trust-row{display:flex;flex-wrap:wrap;gap:18px 28px;margin:28px 0;color:#fff;font:700 12px "Montserrat";text-transform:uppercase}
.trust-row span{white-space:nowrap}
.trust-row span::first-letter{color:var(--gold)}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px}
.btn{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 26px;border-radius:4px;text-decoration:none;border:2px solid transparent;font:800 14px "Montserrat";text-transform:uppercase;cursor:pointer}
.btn.primary{background:linear-gradient(90deg,var(--gold),var(--gold2));color:#101820}
.btn.primary:hover{filter:brightness(1.04)}
.btn.secondary{border-color:var(--gold);color:#fff;background:rgba(7,21,35,.42)}
.btn.full{width:100%}

.section{padding:76px 0}
.section-heading{display:flex;align-items:center;justify-content:center;gap:22px;margin-bottom:36px}
.section-heading h2{font:800 34px "Montserrat";text-transform:uppercase;margin:0}
.section-heading h2 b{color:var(--gold)}
.section-heading span{height:2px;width:72px;background:var(--gold)}
.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.service-grid article{border:1px solid var(--line);background:white;padding:24px 20px;min-height:222px;box-shadow:0 8px 24px rgba(24,42,56,.05);transition:.2s}
.service-grid article:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(24,42,56,.09)}
.icon{width:46px;height:46px;display:grid;place-items:center;border-radius:50%;background:var(--gold);font-size:22px;margin-bottom:18px}
.service-grid h3{font:800 15px/1.25 "Montserrat";text-transform:uppercase;margin:0 0 12px}
.service-grid p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}

.feature-strip{background:var(--navy);color:#fff;padding:32px 0}
.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.feature-grid div{border-left:3px solid var(--gold);padding-left:16px}
.feature-grid b{display:block;font:800 14px "Montserrat";text-transform:uppercase;margin-bottom:5px}
.feature-grid span{color:#cbd4dc;font-size:13px}

.about{background:var(--soft)}
.about-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:52px;align-items:center}
.eyebrow.dark{color:#9f6c00}
.about h2{font:800 clamp(30px,4vw,48px)/1.1 "Montserrat";margin:0 0 20px}
.about p{font-size:16px;line-height:1.75;color:#4f5a64}
.about-card{background:var(--navy);color:#fff;padding:38px;border-radius:8px;box-shadow:0 20px 50px rgba(7,21,35,.18)}
.about-card h3{font:800 24px "Montserrat";color:var(--gold);margin:0 0 20px}
.about-card ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.about-card li{font-weight:700}

.estimate-section{background:#fff;padding:0}
.estimate-grid{display:grid;grid-template-columns:.82fr 1.18fr}
.contact-card{background:var(--navy);color:#fff;padding:54px max(34px,calc((100vw - 1180px)/2))}
.contact-card h2,.estimate-form h2{font:800 32px "Montserrat";margin:0 0 18px}
.contact-card p{color:#c9d2da;line-height:1.65}
.contact-line{display:flex;gap:14px;align-items:center;color:#fff;text-decoration:none;margin:24px 0;font-size:18px}
.contact-line small{display:block;color:var(--gold);font:700 11px "Montserrat";text-transform:uppercase;margin-bottom:3px}
.no-link{cursor:default}
.estimate-form{padding:54px max(34px,calc((100vw - 1180px)/2)) 54px 46px}
.estimate-form h2 span{color:var(--gold)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:grid;gap:7px;font-size:13px;font-weight:700;color:#3a4650}
input,select,textarea{width:100%;border:1px solid #ccd5dc;border-radius:4px;background:white;padding:14px;font:15px "Open Sans";outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(231,165,29,.12)}
.estimate-form>label{margin:16px 0}
.form-note{color:var(--muted);font-size:12px;text-align:center;margin-top:12px}

footer{background:#040c13;color:#aebac4;padding:28px 0 90px}
.footer-wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}
.footer-brand .brand-mark{width:38px;height:38px;font-size:34px}
.footer-brand strong{font-size:18px}
.footer-brand small{font-size:8px}
footer p{font-size:12px}
.mobile-call{display:none}

@media(max-width:980px){
  .header-call{display:none}
  .service-grid{grid-template-columns:repeat(2,1fr)}
  .feature-grid{grid-template-columns:repeat(2,1fr)}
  .about-grid{grid-template-columns:1fr}
  .estimate-grid{grid-template-columns:1fr}
  .contact-card,.estimate-form{padding:48px max(22px,calc((100vw - 760px)/2))}
}
@media(max-width:720px){
  .nav-wrap{height:72px}
  .brand strong{font-size:20px}
  .brand small{font-size:8px}
  .brand-mark{width:42px;height:42px;font-size:36px}
  .menu-btn{display:block}
  .nav{position:absolute;top:72px;left:0;right:0;background:var(--navy);padding:18px;display:none;flex-direction:column;margin:0;gap:16px;border-top:1px solid rgba(255,255,255,.1)}
  .nav.open{display:flex}
  .hero{min-height:610px}
  .hero-content{padding:64px 0}
  .hero h1{font-size:43px}
  .hero-copy{font-size:17px}
  .trust-row{gap:12px 18px}
  .hero-actions{display:grid}
  .service-grid{grid-template-columns:1fr}
  .section{padding:58px 0}
  .section-heading h2{font-size:28px}
  .section-heading span{width:34px}
  .feature-grid{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}
  .estimate-form{padding:44px 22px}
  .contact-card{padding:44px 22px}
  .footer-wrap{flex-direction:column;align-items:flex-start}
  .mobile-call{display:block;position:fixed;z-index:30;bottom:0;left:0;right:0;background:var(--gold);color:#101820;text-decoration:none;text-align:center;padding:16px;font:800 16px "Montserrat";box-shadow:0 -4px 18px rgba(0,0,0,.18)}
}
