:root { color-scheme: light; --ink:#080808; --paper:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font-family:Georgia,'Times New Roman',serif; }
.brand-header {
  min-height:330px; display:flex; align-items:flex-start; justify-content:center;
  padding:22px 20px 100px; background:linear-gradient(to bottom,#000 0%,#000 56%,#222 72%,#888 90%,#fff 100%);
}
.brand-logo { display:block; width:min(620px,88vw); height:auto; object-fit:contain; }
.hero { max-width:1050px; margin:-4px auto 0; padding:0 24px; text-align:center; }
h1 { margin:0; font-size:clamp(2.7rem,6.6vw,5.4rem); line-height:1.04; font-weight:500; letter-spacing:-.035em; }
.subtitle { margin:14px 0 0; font-size:clamp(1.2rem,2.6vw,2.05rem); }
.rule { width:220px; max-width:45%; height:1px; background:#111; margin:25px auto 34px; }
.lead-form { width:min(760px,100%); min-height:68px; margin:0 auto; border:2px solid #111; border-radius:999px; display:flex; align-items:center; overflow:hidden; background:#fff; }
.phone-icon { font-family:Arial,sans-serif; font-size:30px; padding:0 18px 0 25px; line-height:1; }
.lead-form input { flex:1; min-width:0; height:64px; border:0; outline:0; font:20px Arial,sans-serif; text-align:center; color:#111; background:transparent; }
.lead-form input::placeholder { color:#222; opacity:1; }
.lead-form button { align-self:stretch; min-width:225px; padding:0 28px; border:0; background:#050505; color:#fff; font: bold 27px Georgia,serif; cursor:pointer; transition:background .2s; }
.lead-form button:hover { background:#333; }
.lead-form button:disabled { opacity:.65; cursor:wait; }
.consent { display:flex; align-items:flex-start; gap:9px; width:min(760px,100%); margin:12px auto 0; text-align:left; font:12px/1.45 Arial,sans-serif; color:#444; }
.consent input { margin-top:2px; accent-color:#111; }
.form-message { min-height:24px; margin:8px 0 0; font:14px Arial,sans-serif; }
.houses { max-width:1160px; margin:26px auto 20px; padding:0 18px; display:grid; grid-template-columns:1fr 1fr; gap:22px; align-items:center; }
.houses figure { margin:0; }
.houses img { display:block; width:100%; height:auto; }
.benefits { max-width:1120px; margin:28px auto 0; padding:0 20px; display:grid; grid-template-columns:repeat(3,1fr); }
.benefit { text-align:center; padding:4px 18px 12px; }
.benefit + .benefit { border-left:1px solid #111; }
.benefit svg { width:55px; height:55px; fill:none; stroke:#050505; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.benefit h2 { margin:8px 0 2px; font-size:clamp(1.35rem,2.5vw,2rem); font-weight:500; }
.benefit p { margin:0; font-size:clamp(.95rem,1.8vw,1.25rem); }
.site-footer { max-width:1160px; margin:55px auto 0; padding:0 22px 34px; text-align:center; }
.footer-brand { display:flex; align-items:center; gap:18px; justify-content:center; letter-spacing:.3em; font-size:clamp(.9rem,2vw,1.3rem); }
.footer-brand span { height:1px; background:#111; flex:1; }
.site-footer p { margin:18px 0 0; letter-spacing:.24em; font-size:clamp(.72rem,1.5vw,1rem); }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:650px) {
 .brand-header { min-height:235px; padding:20px 12px 76px; }
 .hero { padding:0 17px; }
 .lead-form { min-height:58px; }
 .phone-icon { font-size:23px; padding:0 10px 0 15px; }
 .lead-form input { height:54px; font-size:15px; }
 .lead-form button { min-width:112px; padding:0 13px; font-size:19px; }
 .houses { grid-template-columns:1fr; gap:2px; margin-top:18px; padding:0 12px; }
 .houses figure { max-width:520px; margin:0 auto; }
 .benefits { padding:0 8px; }
 .benefit { padding:4px 8px 10px; }
 .benefit svg { width:42px; height:42px; }
 .benefit h2 { font-size:1.05rem; }
 .benefit p { font-size:.78rem; }
 .site-footer { margin-top:36px; }
 .footer-brand { gap:8px; letter-spacing:.17em; }
 .site-footer p { letter-spacing:.12em; }
}
