/*
Theme Name: ASD Homes
Theme URI: https://asdhomes.com
Author: ASD Homes
Description: Custom lightweight theme for ASD Homes - Home, Services and Contact pages.
Version: 1.1
Requires at least: 5.8
Requires PHP: 7.4
License: GPLv2 or later
Text Domain: asd-homes
*/
:root{--ink:#16232b;--steel:#56666f;--paper:#f4f6f5;--line:#d5dcdf;--yellow:#e88a0c;--white:#fff}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:'Barlow',system-ui,Segoe UI,Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;font-size:17px}
h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif;line-height:1.08;letter-spacing:.2px}
h1{font-size:clamp(2.6rem,6vw,4.6rem);font-weight:700}
h2{font-size:clamp(1.9rem,3.5vw,2.6rem);font-weight:700;margin-bottom:.6rem}
h3{font-size:1.45rem;font-weight:600;margin-bottom:.3rem}
a{color:inherit}
:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}
.wrap{max-width:1080px;margin:0 auto;padding:0 1.25rem}
header{background:var(--white);color:var(--ink);border-bottom:4px solid var(--yellow)}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:.9rem;padding-bottom:.9rem;flex-wrap:wrap}
.logo{display:block;line-height:0}
.logo img{height:62px;width:auto;display:block}
nav a{text-decoration:none;font-weight:600;margin-left:1.6rem;padding:.3rem 0;border-bottom:3px solid transparent}
nav a:hover,nav a[aria-current]{border-color:var(--yellow)}
.btn{display:inline-block;background:var(--yellow);color:var(--ink);font-weight:600;padding:.8rem 1.6rem;text-decoration:none;border:0;cursor:pointer;font:inherit;font-weight:600}
.btn:hover{background:#f59a1f}
.btn.alt{background:transparent;color:var(--white);box-shadow:inset 0 0 0 2px var(--white);margin-left:.6rem}
.btn.alt:hover{background:rgba(255,255,255,.12)}
.hero{background:var(--ink);color:var(--white);padding:4.5rem 0 5rem;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:40px 40px}
.hero .wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:2rem;align-items:center}
.hero p{max-width:34rem;margin:1.2rem 0 1.8rem;color:#cfd8dc;font-size:1.15rem}
.hero svg{width:100%;height:auto}
section{padding:4rem 0}
.intro{max-width:44rem}
.intro p{color:var(--steel)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-top:2rem}
.item{border-top:4px solid var(--yellow);background:var(--white);padding:1.3rem 1.2rem}
.item p{color:var(--steel);font-size:.97rem}
.band{background:var(--white);border-block:1px solid var(--line)}
.why{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.2rem;margin-top:1.5rem}
.why li{padding-left:1rem;border-left:4px solid var(--yellow)}
.why strong{display:block;font-size:1.1rem}
.cta{background:var(--yellow);text-align:center;padding:3rem 0}
.cta .btn{background:var(--ink);color:var(--white)}
.page-head{background:var(--ink);color:var(--white);padding:3rem 0}
.page-head p{color:#cfd8dc;max-width:38rem;margin-top:.6rem}
.steps{counter-reset:s;list-style:none;padding:0;margin-top:1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem}
.steps li{counter-increment:s;background:var(--white);padding:1.1rem;border:1px solid var(--line)}
.steps li::before{content:counter(s);font-family:'Barlow Condensed',Arial,sans-serif;font-size:2rem;font-weight:700;color:var(--yellow);-webkit-text-stroke:1px var(--ink);display:block}
.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem}
.details p{margin-bottom:1rem}.details small{display:block;color:var(--steel)}
form label{display:block;font-weight:600;margin:1rem 0 .3rem}
form input,form select,form textarea{width:100%;padding:.75rem;border:1px solid #9aa7ad;background:var(--white);font:inherit;color:var(--ink)}
form textarea{min-height:140px;resize:vertical}
.hp{position:absolute;left:-9999px}
.msg{padding:1rem;margin-bottom:1rem;background:#e3f4e6;border-left:4px solid #2e7d32}
.msg.err{background:#fdeaea;border-color:#c62828}
footer{background:var(--ink);color:#b8c4ca;padding:2rem 0;font-size:.95rem}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem}
@media(max-width:780px){.hero .wrap,.contact{grid-template-columns:1fr}.hero svg{max-width:300px}nav a{margin:0 1rem 0 0}.btn.alt{margin:.6rem 0 0}}

body.admin-bar header{position:relative}
.entry{padding:3rem 0}.entry h1{margin-bottom:1rem}.entry p{margin-bottom:1rem}

/* Projects */
.pjump{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.4rem}
.pjump a{text-decoration:none;font-weight:600;padding:.5rem 1.1rem;background:var(--white);color:var(--ink);border-bottom:3px solid var(--yellow)}
.pjump a:hover{background:var(--yellow)}
.psec{padding:3rem 0;scroll-margin-top:1rem}
.psec + .psec{border-top:1px solid var(--line)}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.5rem;margin-top:1.5rem}
.pcard{background:var(--white);border-top:4px solid var(--yellow)}
.pcard .ph{aspect-ratio:4/3;background:#e3e8ea;display:flex;align-items:center;justify-content:center;overflow:hidden}
.pcard .ph img{width:100%;height:100%;object-fit:cover;display:block}
.pcard .ph svg{width:90px;opacity:.5}
.pcard .pb{padding:1.1rem 1.2rem 1.3rem}
.pcard .addr{color:var(--steel);font-size:.95rem;margin-bottom:.4rem}
.pcard p{font-size:.97rem;color:var(--steel)}
.pcard.empty{border-top-color:var(--line)}
.pcard.empty h3{color:var(--steel)}
