:root{--bg:#0B1B2B;--ink:#0f2a47;--primary:#0c4f7d;--primary-2:#1e3a8a;--accent:#28a6d5;--muted:#6b7a90;--paper:#ffffff;--ring: rgba(12,79,125,.25);--radius: 16px;--shadow: 0 12px 30px rgba(10,28,57,.18)}
    *{box-sizing:border-box}
    html,body{margin:0;font-family: system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;color:var(--ink);background:#f6f8fb}
    img{max-width:100%;height:auto}
    a{color:var(--primary);text-decoration:none}
    a:hover{opacity:.9}
    .container{width:min(1120px,calc(100% - 2rem));margin-inline:auto}
    .grid{display:grid;gap:1.25rem}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.15rem;border-radius:999px;font-weight:700;border:1px solid transparent;box-shadow:var(--shadow);background:linear-gradient(180deg,var(--accent),#1b8cbc);color:#fff}
    .btn.secondary{background:#fff;color:var(--primary);border-color:var(--ring);box-shadow:none}
    .btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.35);box-shadow:none}
    .btn:focus{outline:3px solid var(--ring);outline-offset:2px}
    header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.8);backdrop-filter: blur(8px);border-bottom:1px solid #e6eef7}
    .nav{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0}
    .brand{display:flex;gap:.75rem;align-items:center}
    .brand img{width:190px}
    .nav-cta{display:flex;align-items:center;gap:.5rem}
    .nav-cta .phone{display:none}
    .hero{position:relative;background:radial-gradient(1200px 500px at 10% -10%, #123e66, transparent),linear-gradient(180deg,#0e2e4f, #0b1f36);color:#fff;padding:clamp(2rem,6vw,5.5rem) 0}
    .hero .container{display:grid;grid-template-columns: 1.15fr .85fr;gap:3rem;align-items:center}
    .hero h1{font-size:clamp(1.9rem,4vw,3rem);line-height:1.1;margin:0 0 .75rem}
    .hero p.lead{font-size:clamp(1.05rem,2vw,1.25rem);margin:0 0 1.25rem;color:#dbe9f6}
    .badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
    .badge{border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.4rem .75rem;font-weight:600;color:#e8f3ff}
    .hero-card{background:#0d2440;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);padding:1.25rem}
    .hero-card h3{margin:.25rem 0 .5rem;font-size:1.1rem;color:#bfe7ff}
    .hero-card .tel{display:block;font-size:1.9rem;font-weight:800;letter-spacing:.5px;color:#fff}
    section{padding:clamp(2.25rem,5vw,4rem) 0}
    .section-title{font-size:clamp(1.3rem,3vw,2rem);margin:0 0 .35rem}
    .section-sub{color:var(--muted);margin:0 0 1rem}
    .card{background:var(--paper);border:1px solid #e5edf6;border-radius:var(--radius);padding:1.25rem;box-shadow:var(--shadow)}
    .card h3{margin:.25rem 0 .35rem;font-size:1.1rem}
    .card p{margin:0;color:#4b5a70}
    .services{grid-template-columns:repeat(12,1fr)}
    .service{grid-column: span 6}
    .service .title{display:flex;align-items:center;gap:.6rem;font-weight:800;color:var(--primary-2);margin:0 0 .35rem;font-size:1.15rem}
    .service .title svg{flex:0 0 28px}
    .strip{background:linear-gradient(90deg,var(--primary-2),#0b3e65);color:#fff;border-radius:var(--radius);padding:1.1rem 1.25rem;display:flex;flex-wrap:wrap;gap:.8rem;align-items:center;justify-content:space-between}
    .reviews{grid-template-columns:repeat(3,1fr)}
    .review{display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:start}
    .review img{width:36px;height:36px;border-radius:8px}
    .areas{display:flex;flex-wrap:wrap;gap:.5rem}
    .areas a{border:1px dashed #d8e5f4;background:#fff;border-radius:999px;padding:.35rem .7rem;color:#35506e}
    .form{display:grid;gap:.75rem}
    .form input,.form textarea{width:100%;padding:.85rem 1rem;border:1px solid #d9e6f5;border-radius:12px;font:inherit}
    .form input:focus,.form textarea:focus{outline:3px solid var(--ring);border-color:var(--primary)}
    footer{background:#071524;color:#b4c4d6;border-top:1px solid #0e2339}
    footer .top{display:grid;gap:1rem;padding:2rem 0}
    footer .bottom{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-top:1px solid #0e2339;color:#7f9bb6}
    footer a{color:#cfe7ff}
    @media (max-width: 960px){.hero .container{grid-template-columns:1fr}.nav-cta .phone{display:inline}.reviews{grid-template-columns:1fr}.service{grid-column: span 12}.brand img{width:170px}}
.two{display:grid;grid-template-columns:1.2fr .8fr;gap:1.25rem;align-items:start}
.prose p{margin:0 0 1rem;line-height:1.6;color:#33475f}
.prose ul{line-height:1.6;color:#33475f}
.prose.wide{max-width:80ch}
.prose h3{margin:1.25rem 0 .35rem}
.photo{width:100%;border-radius:var(--radius);box-shadow:var(--shadow);display:block}
.service .more{display:inline-block;margin-top:.6rem;font-weight:700}
.visually-hidden{display:block;font-size:.9rem;margin-bottom:.25rem;color:#33475f}
.foot-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1.25rem}
section.tight{padding-top:0}
main>section.hero+section.tight{padding-top:clamp(2.25rem,5vw,4rem)}
.ticks{padding-left:1.1rem}
.faq{background:var(--paper);border:1px solid #e5edf6;border-radius:12px;padding:.8rem 1rem;margin:0 0 .6rem}
.faq summary{cursor:pointer;font-weight:700;color:var(--ink)}
.faq p{margin:.6rem 0 0}
.wpcf7-form{display:grid;gap:.75rem}
.wpcf7-form p{margin:0}
.wpcf7-form input:not([type=submit]),.wpcf7-form textarea{width:100%;padding:.85rem 1rem;border:1px solid #d9e6f5;border-radius:12px;font:inherit}
.wpcf7-form input[type=submit]{padding:.9rem 1.15rem;border-radius:999px;font-weight:700;border:0;color:#fff;background:linear-gradient(180deg,var(--accent),#1b8cbc);cursor:pointer}
@media (max-width:960px){.two,.foot-grid{grid-template-columns:1fr}}
@media (max-width:600px){footer .bottom{flex-direction:column;gap:.6rem;align-items:flex-start}.hero-card .tel{font-size:1.6rem}}
img.emoji{display:inline!important;width:1em!important;height:1em!important;margin:0 .07em!important;vertical-align:-.1em!important;box-shadow:none!important;border:0!important}
