*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#18212b;background:#fff}a{text-decoration:none;color:inherit}.topbar{position:sticky;top:0;z-index:20;height:88px;padding:10px 5vw;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);box-shadow:0 1px 14px rgba(0,0,0,.08)}.brand img{height:68px;width:auto}.topbar nav{display:flex;gap:24px;font-weight:700}.topbar nav a:hover{color:#0a4f95}.lang{border:1px solid #0a4f95;background:#fff;color:#0a4f95;border-radius:8px;padding:10px 13px;font-weight:800}.hero{min-height:78vh;position:relative;background:url('assets/hero.jpg') center/cover no-repeat;display:flex;align-items:center}.overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,25,49,.84),rgba(3,25,49,.38),rgba(3,25,49,.08))}.hero-content{position:relative;max-width:760px;padding:70px 7vw;color:#fff}.eyebrow{font-weight:800;text-transform:uppercase;letter-spacing:.12em;font-size:.84rem}.eyebrow.dark{color:#0a4f95}.hero h1,.section h2{font-size:clamp(2.2rem,5vw,4.8rem);line-height:1.02;margin:.4em 0}.hero p{font-size:1.2rem;line-height:1.6;max-width:650px}.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-block;padding:14px 20px;border-radius:8px;font-weight:800;border:0;cursor:pointer}.primary{background:#0a4f95;color:#fff}.ghost{border:1px solid rgba(255,255,255,.65);color:#fff;background:rgba(255,255,255,.08)}.trust{display:grid;grid-template-columns:repeat(4,1fr);background:#0a3766;color:#fff;padding:22px 5vw}.trust div{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.trust strong{font-size:1.5rem}.trust span{opacity:.86}.section{padding:80px 7vw}.section-head{max-width:820px;margin-bottom:38px}.section-head>span,.estimate-copy>span{color:#0a4f95;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.section h2{font-size:clamp(2rem,4vw,3.6rem)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards article{padding:26px;border:1px solid #dfe5eb;border-radius:14px;background:#fff}.cards h3{color:#0a4f95;font-size:1.3rem}.cards p{line-height:1.6;color:#526170}.alt{background:#f3f6f9}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery figure{margin:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 25px rgba(0,0,0,.08)}.gallery img{width:100%;height:290px;object-fit:cover;display:block}.gallery figcaption{padding:14px 16px;font-weight:800}.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.split p{font-size:1.08rem;line-height:1.8;color:#4b5b69}.hours{padding:18px;border-left:4px solid #0a4f95;background:#f3f6f9}.estimate{display:grid;grid-template-columns:1fr 1.2fr;gap:42px;background:#0b2138;color:#fff}.estimate h2{margin-top:.25em}.estimate p{line-height:1.7;color:#d3dce6}.contact-box{display:grid;gap:8px;margin-top:24px}.contact-box a{font-weight:800}.estimate form{background:#fff;color:#17212b;padding:28px;border-radius:14px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.estimate label{display:grid;gap:8px;font-weight:700}.estimate input,.estimate select,.estimate textarea{width:100%;border:1px solid #cfd7df;border-radius:8px;padding:12px;font:inherit}.full{grid-column:1/-1}footer{display:grid;grid-template-columns:auto 1fr auto auto;gap:30px;align-items:center;padding:28px 7vw;background:#071726;color:#dfe7ef}footer img{height:70px;background:#fff;border-radius:8px}footer a{color:#fff}@media(max-width:900px){.topbar nav{display:none}.trust{grid-template-columns:repeat(2,1fr);gap:20px}.cards,.gallery{grid-template-columns:1fr 1fr}.split,.estimate{grid-template-columns:1fr}.gallery img{height:240px}footer{grid-template-columns:1fr 1fr}footer img{grid-column:1/-1}}@media(max-width:600px){.topbar{height:76px}.brand img{height:56px}.hero{min-height:72vh}.hero-content{padding:60px 6vw}.trust{grid-template-columns:1fr 1fr}.section{padding:60px 6vw}.cards,.gallery{grid-template-columns:1fr}.estimate form{grid-template-columns:1fr}.estimate label,.full{grid-column:1}.gallery img{height:260px}footer{grid-template-columns:1fr}}