:root{--ink: #122027;--muted: #4b5f68;--line: #d6e0e4;--canvas: #f3f6f7;--card: #ffffff;--accent: #0d5f83;--accent-strong: #093f57;--warm: #ecf4f8;font-family:Poppins,Trebuchet MS,sans-serif;color:var(--ink);background:linear-gradient(180deg,#f5f8fa,#eef2f4 60%,#f7fafb)}*{box-sizing:border-box}body{margin:0;background:transparent}a{color:inherit}.site{max-width:1180px;margin:0 auto;padding:1.2rem;display:grid;gap:1.25rem}.topbar{display:flex;gap:1rem;justify-content:space-between;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:.7rem 1rem;position:sticky;top:.6rem;z-index:10}.brand{display:inline-flex;align-items:center;gap:.65rem;text-decoration:none;font-weight:700;letter-spacing:.01em}.brand img{width:44px;height:44px;border-radius:10px;object-fit:cover}.menu{display:inline-flex;gap:.35rem;flex-wrap:wrap}.menu a{text-decoration:none;border:1px solid transparent;border-radius:10px;padding:.45rem .7rem;font-size:.92rem;color:var(--muted)}.menu a.active{color:var(--ink);border-color:var(--line);background:var(--canvas)}.menu a.phone{color:#fff;border-color:transparent;background:var(--accent-strong)}.eyebrow{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:1rem;background:linear-gradient(125deg,#0f3f55,#165f7f 52%,#2d7ea2);color:#fff;border-radius:24px;overflow:hidden}.hero-copy{padding:1.3rem}.hero h1{margin:.55rem 0;font-size:clamp(1.5rem,2.3vw,2.3rem);line-height:1.12}.hero p{margin:0;max-width:46ch}.hero img{width:100%;height:100%;object-fit:cover;min-height:270px}.hero-actions{margin-top:1rem;display:flex;gap:.65rem;flex-wrap:wrap}.btn{text-decoration:none;border-radius:11px;padding:.62rem .9rem;font-weight:600;font-size:.9rem}.btn.primary{background:#fff;color:var(--accent-strong)}.btn.secondary{background:#ffffff26;border:1px solid rgba(255,255,255,.35);color:#fff}.service-grid,.gallery,.lead-section,.contact-hero,.contact-cards,.legacy-note,.footer{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:1rem}.section-head h2,.lead-section h2,.contact-hero h1,.legacy-note h1,.footer h2{margin:.4rem 0 .25rem}.cards{margin-top:.75rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.cards article{border:1px solid var(--line);border-radius:12px;padding:.8rem;background:var(--warm)}.cards h3,.gallery-grid h3{margin:0;font-size:1rem}.cards p,.gallery-grid p,.lead-copy,.contact-hero p{margin:.5rem 0 0;color:var(--muted);line-height:1.45}.gallery-grid{margin-top:.75rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.75rem}.gallery-grid article{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.gallery-grid img{width:100%;height:170px;object-fit:cover}.gallery-grid article div{padding:.75rem}.contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem}.contact-cards article{border:1px solid var(--line);border-radius:12px;padding:.85rem;background:var(--canvas)}.contact-cards h2{margin:0;font-size:1.05rem}.contact-cards p{margin:.5rem 0 0}.lead-form{margin-top:.85rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.7rem}.lead-form label{display:grid;gap:.33rem;font-size:.88rem}.lead-form label.span-2,.lead-form button.submit{grid-column:1 / -1}.lead-form input,.lead-form textarea{width:100%;border:1px solid #c7d5db;border-radius:10px;padding:.54rem .62rem;font:inherit;background:#fff}.lead-form textarea{resize:vertical;min-height:104px}.submit{border:0;border-radius:11px;background:var(--accent);color:#fff;font-weight:600;padding:.7rem .9rem;cursor:pointer}.status{margin-top:.75rem;color:var(--accent-strong)}.legacy-note code{background:var(--canvas);padding:.15rem .35rem;border-radius:7px}.footer{text-align:center;background:linear-gradient(180deg,#fff,#f1f6f8)}.footer p{margin:.5rem 0 0}.footer .small{font-size:.8rem;color:var(--muted)}@media (max-width: 920px){.hero{grid-template-columns:1fr}}@media (max-width: 680px){.site{padding:.7rem}.topbar{position:static}.menu{justify-content:flex-end}.menu a.phone{width:100%;text-align:center}}
