:root{ --bg:#fff; --text:#111; --muted:#444; --accent:#000; --lightbg:#f7f7f7; }
*{box-sizing:border-box}
body{font-family:Arial, sans-serif;margin:0;color:var(--text);background:var(--bg);line-height:1.5}
.wrap{width:min(1100px,94%);margin:0 auto}
.site-header{border-bottom:1px solid #ddd;background:#000;position:sticky;top:0;z-index:50}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.logo{height:50px}
.logo-small{height:36px}
.top-nav{display:flex;gap:18px}
.top-nav a{color:#ccc;text-decoration:none;padding:8px 6px}
.top-nav a:hover,.top-nav a.active{color:#fff}

.hero-media{width:100%;height: clamp(220px, 36vw, 360px);overflow:hidden;border-bottom:1px solid #e5e5e5;background:#fff}
.hero-img{width:100%;height:100%;object-fit:cover;display:block}

.hero{background:var(--lightbg);padding:40px 0 20px}
.hero h1{font-size:32px;margin:0 0 10px}
.lead{color:var(--muted);margin:0 0 20px}
.buttons{display:flex;gap:12px}
.btn{display:inline-block;padding:10px 16px;border-radius:6px;text-decoration:none;font-weight:600;border:2px solid var(--accent)}
.btn.dark{background:var(--accent);color:#fff}
.btn.light{background:#fff;color:var(--accent)}

.services-strip{padding:40px 0;background:#fff}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px}
.services-grid article{background:var(--lightbg);padding:16px;border-radius:8px;text-align:center}
.services-grid img{width:100%;height:180px;object-fit:cover;border-radius:6px;margin-bottom:10px}

.two-col{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.card{background:var(--lightbg);border-radius:8px;padding:16px}

.section{padding:36px 0}
.prose{max-width:72ch}
.kv{display:grid;grid-template-columns:1fr 1fr;gap:16px}

.cta{background:var(--lightbg);padding:30px 0;text-align:center}
.contact-short{padding:14px 0;background:#fff;border-top:1px solid #ddd;text-align:center}

.site-footer{border-top:1px solid #333;background:#000;color:#ccc;padding:20px 0;margin-top:24px}
.site-footer .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}
.foot-nav{display:flex;gap:12px}
.foot-nav a{color:#aaa;text-decoration:none}
@media(max-width:880px){
  .two-col{grid-template-columns:1fr}
  .services-grid{grid-template-columns:1fr}
  .top-nav{display:none}
}

/* === Added by SEO/Mobile optimizer === */
html { -webkit-text-size-adjust: 100%; }
body { font-size: 16px; line-height: 1.6; }
img, video, canvas, iframe { max-width: 100%; height: auto; }
a, button { touch-action: manipulation; }
button, .btn, a.button, .button { min-height: 44px; padding: 12px 16px; }
.container, .wrap, .wrapper { padding-left: 16px; padding-right: 16px; }
@media (max-width: 768px) {
  table { display: block; width: 100%; overflow-x: auto; }
  .row, .columns, .col { width: 100% !important; float: none !important; }
  nav ul { gap: 12px; }
}
/* === End optimizer additions === */