.lp-hdr .wrap{display:flex;align-items:center;gap:16px}
.lp-tag{font:600 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--clay);border-left:1.5px solid var(--line);padding-left:14px;margin-right:auto}
.lp-hdr .hdr-cta{display:flex;gap:10px}
.lp-hero{padding:56px 0 64px}
.lp-hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center}
.lp-hero h1{font-size:clamp(38px,5.6vw,68px)}
.lp-hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0 22px}
.lp-ticks{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;font:600 14px var(--body);color:var(--ink-2)}
.lp-ticks li::before{content:"✓ ";color:var(--clay);font-weight:800}
.card-box{background:var(--white);border:1px solid var(--line);border-radius:var(--r);padding:24px}
.ai-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
.ai-form{display:grid;gap:22px}
.ai-step{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px}
.ai-step .n{width:30px;height:30px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;font:700 14px var(--mono)}
.ai-q{font-weight:800;margin:3px 0 10px}
.ai-drop{display:block;position:relative;border:2px dashed var(--field);border-radius:var(--r);background:var(--paper);cursor:pointer;min-height:150px;overflow:hidden}
.ai-drop:hover{border-color:var(--clay)}
.ai-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.ai-drop-txt{display:grid;gap:4px;padding:28px 20px;text-align:center;font-size:14px;color:var(--stone)}
.ai-drop-txt b{font-size:17px;color:var(--ink)}
.ai-drop img{width:100%;aspect-ratio:4/3;object-fit:cover}
.ai-drop.has .ai-drop-txt{position:absolute;bottom:0;left:0;right:0;background:rgba(20,16,12,.7);color:#fff;padding:10px}
.ai-drop.has .ai-drop-txt b{color:#fff;font-size:14px}
.ai-drop.has .ai-drop-txt span{display:none}
.ai-styles{display:grid;gap:8px}
.ai-styles label{display:block;cursor:pointer}
.ai-styles input{position:absolute;opacity:0}
.ai-styles span{display:grid;gap:2px;border:1.5px solid var(--line);border-radius:var(--r);padding:10px 14px;font-size:13.5px;color:var(--stone);background:var(--paper)}
.ai-styles span b{font-size:15px;color:var(--ink)}
.ai-styles input:checked+span{border-color:var(--clay);background:var(--white);box-shadow:inset 4px 0 0 var(--clay)}
.ai-styles input:focus-visible+span{outline:3px solid var(--clay);outline-offset:2px}
.ai-form label[for]{display:block;font:600 13px var(--body);margin-bottom:5px}
.ai-form input[type=text],.ai-form input[type=tel],.ai-form input[type=email],.ai-form input:not([type]){width:100%;font:inherit;padding:12px 14px;border:1.5px solid var(--field);border-radius:var(--r);background:var(--paper)}
.ai-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--stone);margin:14px 0}
.ai-consent input{margin-top:3px;width:18px;height:18px;flex:none;accent-color:var(--clay)}
.ai-result{display:grid;gap:6px;position:sticky;top:16px}
.ai-pending{border-left:4px solid var(--clay)}
.ai-busy{display:flex;align-items:center;gap:10px}
.ai-busy::before{content:"";width:18px;height:18px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--clay);animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.ai-err{color:var(--clay-d);font-weight:600}
.lp-vs .vs-row{grid-template-columns:1fr 1.2fr 1.2fr}
@media (max-width:980px){.lp-hero .wrap,.ai-grid{grid-template-columns:1fr}.ai-result{position:static}}
@media (max-width:640px){.lp-tag{display:none}.lp-hdr .hdr-cta .btn-ghost{display:none}}
.uses{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.use{background:var(--white);border:1px solid var(--line);border-top:4px solid var(--clay);border-radius:var(--r);padding:20px}
.use h3{font-size:20px;margin-bottom:10px}
.use ul{margin:0;padding-left:18px;font-size:15px;color:var(--ink-2);display:grid;gap:4px}
@media (max-width:980px){.uses{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.uses{grid-template-columns:1fr}}
.lp-hdr .lp-tag{margin-right:0}
.uses{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.more{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.more-card{display:grid;grid-template-rows:auto 1fr;background:var(--white);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;text-decoration:none;color:inherit;transition:transform .15s,box-shadow .15s}
.more-card:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(28,31,34,.1)}
.more-card img{width:100%;aspect-ratio:16/10;object-fit:cover}
.more-card span{display:grid;gap:2px;padding:14px 16px 16px;font-size:14px;color:var(--stone)}
.more-card b{font:800 18px/1.2 var(--display);font-stretch:90%;color:var(--ink)}
@media (max-width:860px){.more{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.more{grid-template-columns:1fr}}

/* General Contracting dropdown */
.gc-menu{position:relative;margin-right:auto;margin-left:6px}
.gc-menu summary{list-style:none;cursor:pointer;font:700 14px var(--body);padding:9px 14px;border:1.5px solid var(--line);border-radius:var(--r);display:flex;align-items:center;gap:8px;white-space:nowrap;background:var(--white)}
.gc-menu summary::-webkit-details-marker{display:none}
.gc-menu summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .15s}
.gc-menu[open] summary::after{transform:rotate(-135deg) translateY(-1px)}
.gc-menu summary:hover,.gc-menu[open] summary{border-color:var(--ink)}
.gc-list{position:absolute;top:calc(100% + 8px);left:0;min-width:290px;background:var(--white);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 14px 34px rgba(28,31,34,.16);padding:8px;display:grid;z-index:50}
.gc-list a{padding:10px 12px;border-radius:5px;text-decoration:none;font:600 15px var(--body);color:var(--ink)}
.gc-list a:hover,.gc-list a:focus-visible{background:var(--paper)}
.gc-list .gc-all{border-top:1px solid var(--line);margin-top:4px;padding-top:12px;color:var(--clay);border-radius:0 0 5px 5px}
/* How it works — standout */
.lp-how{background:var(--ink);color:var(--od)}
.lp-how .label{color:var(--od-a)}
.lp-how h2{color:#fff}
.lp-how .sec-head{align-items:flex-end}
.lp-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:s}
.lp-steps li{counter-increment:s;position:relative;background:var(--ink-2);border:1px solid var(--od-l);border-radius:var(--r);padding:26px 22px 24px;border-top:4px solid var(--od-a)}
.lp-steps li::before{content:"0" counter(s);display:block;font:900 54px/1 var(--display);font-stretch:80%;color:var(--od-a);margin-bottom:14px}
.lp-steps li:not(:last-child)::after{content:"→";position:absolute;right:-16px;top:44px;width:28px;height:28px;border-radius:50%;background:var(--od-a);color:var(--ink);display:grid;place-items:center;font:800 15px var(--body);z-index:2}
.lp-steps h3{color:#fff;font-size:22px;margin-bottom:8px}
.lp-steps p{color:var(--od-m);font-size:15px;margin:0}
.lp-steps li:first-child{background:var(--od-a);border-color:var(--od-a)}
.lp-steps li:first-child::before{color:var(--ink)}
.lp-steps li:first-child h3{color:var(--ink)}
.lp-steps li:first-child p{color:var(--ink-2)}
@media (max-width:980px){.lp-steps{grid-template-columns:1fr 1fr}.lp-steps li::after{display:none}}
@media (max-width:560px){.lp-steps{grid-template-columns:1fr}.gc-menu summary{padding:8px 10px;font-size:13px}}
@media (max-width:720px){.lp-hdr .wrap{position:relative}.gc-menu{position:static;margin-left:auto;margin-right:0}.gc-list{left:16px;right:16px;min-width:0;top:calc(100% - 4px)}.lp-hdr .hdr-cta{display:none}}
.ai-styles label{position:relative}
.ai-styles input{left:0;top:0;width:1px;height:1px;margin:0}
@media (max-width:440px){.lp-hdr .wrap{gap:10px;padding:0 16px}.lp-hdr .logo svg{height:34px;width:auto}.gc-menu summary{font-size:12.5px;padding:7px 9px;gap:6px}}

/* All Services: text-style menu next to Call, styled like the Garage Makeovers tag */
.lp-hdr .lp-tag{margin-right:auto}
.gc-menu{margin:0 6px 0 0;position:relative}
.gc-menu summary{background:none;border:0;padding:8px 4px;font:600 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--clay);gap:7px}
.gc-menu summary:hover,.gc-menu[open] summary{border:0;color:var(--clay-d);text-decoration:underline;text-underline-offset:4px}
.gc-menu summary::after{width:6px;height:6px;border-width:1.5px}
.gc-list{left:auto;right:0}
@media (max-width:720px){.gc-menu{position:static;margin:0 0 0 auto}.gc-list{left:16px;right:16px}}
@media (max-width:440px){.gc-menu summary{font-size:11.5px;padding:7px 2px}}
