/* Dart Landscaping — sign-painter palette drawn from the actual yard sign */
:root{
  --green:#1B3A2A; --green-dark:#12241B; --grass:#4E9A3F;
  --cedar:#7E6030; --gold:#AB8740; --paper:#F6F4EC; --paper-dim:#EEEADD;
  --ink:#23281F; --ink-soft:#4A5244; --red:#C03A26; --white:#FFFFFF;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto} *{transition:none!important}}
body{font-family:'Archivo',system-ui,sans-serif;color:var(--ink);background:var(--paper);line-height:1.6;font-size:1.0625rem}
img{max-width:100%;display:block}
a{color:var(--green)}
a:focus-visible,button:focus-visible{outline:3px solid var(--grass);outline-offset:2px}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}

/* Type */
h1,h2,h3,.display{font-family:'Anton',Impact,sans-serif;font-weight:400;letter-spacing:.02em;text-transform:uppercase;line-height:1.08}
h1{font-size:clamp(2.2rem,5.5vw,3.9rem)}
h2{font-size:clamp(1.6rem,3.4vw,2.4rem);color:var(--green)}
h3{font-size:1.25rem}
.eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--cedar);margin-bottom:.5rem}
p{margin-bottom:1rem}
.lead{font-size:1.15rem}

/* Header */
header{background:var(--paper);border-bottom:4px solid var(--green);position:sticky;top:0;z-index:50}
.nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:.7rem 20px;max-width:1080px;margin:0 auto}
.logo{font-family:'Anton',Impact,sans-serif;font-size:1.35rem;letter-spacing:.03em;color:var(--green);text-decoration:none;text-transform:uppercase}
.logo span{color:var(--cedar)}
.nav ul{display:flex;gap:1.1rem;list-style:none;flex-wrap:wrap;margin-left:auto}
.nav ul a{text-decoration:none;font-weight:600;color:var(--ink);font-size:.95rem}
.nav ul a:hover,.nav ul a[aria-current]{color:var(--green);text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:3px;text-decoration-color:var(--grass)}
.nav .btn{margin-left:.4rem}

/* Buttons */
.btn{display:inline-block;background:var(--green);color:#fff;text-decoration:none;font-family:'Anton',Impact,sans-serif;text-transform:uppercase;letter-spacing:.05em;padding:.7rem 1.3rem;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .15s}
.btn:hover{background:var(--green-dark)}
.btn.ghost{background:transparent;color:#fff;border:2px solid #fff}
.btn.ghost:hover{background:rgba(255,255,255,.15)}
.btn.cedar{background:var(--cedar)}
.btn.cedar:hover{background:#8f5d32}

/* Hero */
.hero{position:relative;color:#fff;background:var(--green-dark)}
.hero .bg{position:absolute;top:0;left:0;right:0;bottom:0;background-size:cover;background-position:center;opacity:.55}
.hero .inner{position:relative;padding:5.5rem 20px 6.5rem;max-width:1080px;margin:0 auto}
.hero h1{max-width:16ch;text-shadow:0 2px 10px rgba(0,0,0,.45)}
.hero p{max-width:52ch;margin:1rem 0 1.6rem;font-size:1.15rem;text-shadow:0 1px 6px rgba(0,0,0,.5)}
.hero .actions{display:flex;gap:.8rem;flex-wrap:wrap}
.grass-paper{height:38px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%201200%2048%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22%23F6F4EC%22%20d%3D%22M0%2C48%20L0%2C30%20L14%2C8%20L20%2C34%20L29%2C6%20L32%2C34%20L46%2C22%20L49%2C34%20L61%2C5%20L64%2C34%20L79%2C17%20L82%2C34%20L94%2C6%20L100%2C34%20L109%2C22%20L112%2C34%20L124%2C24%20L127%2C34%20L142%2C5%20L146%2C34%20L155%2C21%20L159%2C34%20L172%2C17%20L176%2C34%20L186%2C22%20L191%2C34%20L202%2C7%20L206%2C34%20L220%2C7%20L223%2C34%20L232%2C23%20L236%2C34%20L252%2C25%20L258%2C34%20L272%2C18%20L278%2C34%20L292%2C13%20L296%2C34%20L307%2C26%20L311%2C34%20L321%2C22%20L326%2C34%20L342%2C14%20L348%2C34%20L361%2C23%20L364%2C34%20L374%2C20%20L380%2C34%20L391%2C14%20L395%2C34%20L411%2C17%20L414%2C34%20L424%2C21%20L429%2C34%20L443%2C26%20L448%2C34%20L464%2C22%20L470%2C34%20L480%2C6%20L485%2C34%20L501%2C26%20L504%2C34%20L513%2C26%20L518%2C34%20L534%2C13%20L540%2C34%20L554%2C4%20L560%2C34%20L574%2C9%20L577%2C34%20L593%2C5%20L597%2C34%20L610%2C8%20L614%2C34%20L629%2C16%20L635%2C34%20L645%2C9%20L651%2C34%20L666%2C21%20L671%2C34%20L682%2C17%20L687%2C34%20L702%2C15%20L708%2C34%20L720%2C8%20L723%2C34%20L734%2C8%20L738%2C34%20L750%2C4%20L756%2C34%20L767%2C12%20L772%2C34%20L781%2C8%20L787%2C34%20L801%2C23%20L806%2C34%20L817%2C26%20L820%2C34%20L836%2C25%20L842%2C34%20L857%2C16%20L863%2C34%20L873%2C19%20L879%2C34%20L888%2C10%20L891%2C34%20L903%2C18%20L907%2C34%20L917%2C14%20L920%2C34%20L930%2C4%20L934%2C34%20L944%2C15%20L947%2C34%20L957%2C10%20L963%2C34%20L974%2C24%20L979%2C34%20L993%2C23%20L998%2C34%20L1014%2C7%20L1017%2C34%20L1033%2C18%20L1039%2C34%20L1055%2C13%20L1058%2C34%20L1069%2C7%20L1074%2C34%20L1087%2C19%20L1091%2C34%20L1100%2C10%20L1105%2C34%20L1116%2C26%20L1119%2C34%20L1132%2C24%20L1135%2C34%20L1148%2C20%20L1153%2C34%20L1164%2C15%20L1168%2C34%20L1182%2C24%20L1186%2C34%20L1198%2C11%20L1200%2C34%20L1200%2C30%20L1200%2C48%20Z%22/%3E%3C/svg%3E") bottom/100% 100% no-repeat}
.grass-green{height:38px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%201200%2048%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22%2312241B%22%20d%3D%22M0%2C48%20L0%2C30%20L14%2C8%20L20%2C34%20L29%2C6%20L32%2C34%20L46%2C22%20L49%2C34%20L61%2C5%20L64%2C34%20L79%2C17%20L82%2C34%20L94%2C6%20L100%2C34%20L109%2C22%20L112%2C34%20L124%2C24%20L127%2C34%20L142%2C5%20L146%2C34%20L155%2C21%20L159%2C34%20L172%2C17%20L176%2C34%20L186%2C22%20L191%2C34%20L202%2C7%20L206%2C34%20L220%2C7%20L223%2C34%20L232%2C23%20L236%2C34%20L252%2C25%20L258%2C34%20L272%2C18%20L278%2C34%20L292%2C13%20L296%2C34%20L307%2C26%20L311%2C34%20L321%2C22%20L326%2C34%20L342%2C14%20L348%2C34%20L361%2C23%20L364%2C34%20L374%2C20%20L380%2C34%20L391%2C14%20L395%2C34%20L411%2C17%20L414%2C34%20L424%2C21%20L429%2C34%20L443%2C26%20L448%2C34%20L464%2C22%20L470%2C34%20L480%2C6%20L485%2C34%20L501%2C26%20L504%2C34%20L513%2C26%20L518%2C34%20L534%2C13%20L540%2C34%20L554%2C4%20L560%2C34%20L574%2C9%20L577%2C34%20L593%2C5%20L597%2C34%20L610%2C8%20L614%2C34%20L629%2C16%20L635%2C34%20L645%2C9%20L651%2C34%20L666%2C21%20L671%2C34%20L682%2C17%20L687%2C34%20L702%2C15%20L708%2C34%20L720%2C8%20L723%2C34%20L734%2C8%20L738%2C34%20L750%2C4%20L756%2C34%20L767%2C12%20L772%2C34%20L781%2C8%20L787%2C34%20L801%2C23%20L806%2C34%20L817%2C26%20L820%2C34%20L836%2C25%20L842%2C34%20L857%2C16%20L863%2C34%20L873%2C19%20L879%2C34%20L888%2C10%20L891%2C34%20L903%2C18%20L907%2C34%20L917%2C14%20L920%2C34%20L930%2C4%20L934%2C34%20L944%2C15%20L947%2C34%20L957%2C10%20L963%2C34%20L974%2C24%20L979%2C34%20L993%2C23%20L998%2C34%20L1014%2C7%20L1017%2C34%20L1033%2C18%20L1039%2C34%20L1055%2C13%20L1058%2C34%20L1069%2C7%20L1074%2C34%20L1087%2C19%20L1091%2C34%20L1100%2C10%20L1105%2C34%20L1116%2C26%20L1119%2C34%20L1132%2C24%20L1135%2C34%20L1148%2C20%20L1153%2C34%20L1164%2C15%20L1168%2C34%20L1182%2C24%20L1186%2C34%20L1198%2C11%20L1200%2C34%20L1200%2C30%20L1200%2C48%20Z%22/%3E%3C/svg%3E") bottom/100% 100% no-repeat}

/* Trust bar */
.trust{background:var(--green);color:#fff;text-align:center;padding:.6rem 20px;font-weight:600;font-size:.92rem;letter-spacing:.04em}

/* Sections */
section{padding:3.2rem 0}
.section-dim{background:var(--paper-dim)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:1.6rem}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}
@media(max-width:820px){.grid3,.grid2{grid-template-columns:1fr}}
.card{background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 2px 10px rgba(35,40,31,.08);display:flex;flex-direction:column}
.card img{height:220px;object-fit:cover;width:100%}
.card .pad{padding:1.2rem 1.2rem 1.4rem}
.card h3{color:var(--green);margin-bottom:.4rem}
.card p{margin:0;color:var(--ink-soft)}

/* Sign CTA — the signature element, styled after Jasper's real yard sign */
.sign{background:var(--green);color:#fff;border-radius:8px;position:relative;padding:2.6rem 2rem 3.4rem;text-align:center;overflow:hidden;box-shadow:0 6px 24px rgba(21,63,37,.35)}
.sign:after{content:"";position:absolute;left:0;right:0;bottom:0;height:34px;background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%201200%2048%22%20preserveAspectRatio%3D%22none%22%3E%3Cpath%20fill%3D%22%23F6F4EC%22%20d%3D%22M0%2C48%20L0%2C30%20L14%2C8%20L20%2C34%20L29%2C6%20L32%2C34%20L46%2C22%20L49%2C34%20L61%2C5%20L64%2C34%20L79%2C17%20L82%2C34%20L94%2C6%20L100%2C34%20L109%2C22%20L112%2C34%20L124%2C24%20L127%2C34%20L142%2C5%20L146%2C34%20L155%2C21%20L159%2C34%20L172%2C17%20L176%2C34%20L186%2C22%20L191%2C34%20L202%2C7%20L206%2C34%20L220%2C7%20L223%2C34%20L232%2C23%20L236%2C34%20L252%2C25%20L258%2C34%20L272%2C18%20L278%2C34%20L292%2C13%20L296%2C34%20L307%2C26%20L311%2C34%20L321%2C22%20L326%2C34%20L342%2C14%20L348%2C34%20L361%2C23%20L364%2C34%20L374%2C20%20L380%2C34%20L391%2C14%20L395%2C34%20L411%2C17%20L414%2C34%20L424%2C21%20L429%2C34%20L443%2C26%20L448%2C34%20L464%2C22%20L470%2C34%20L480%2C6%20L485%2C34%20L501%2C26%20L504%2C34%20L513%2C26%20L518%2C34%20L534%2C13%20L540%2C34%20L554%2C4%20L560%2C34%20L574%2C9%20L577%2C34%20L593%2C5%20L597%2C34%20L610%2C8%20L614%2C34%20L629%2C16%20L635%2C34%20L645%2C9%20L651%2C34%20L666%2C21%20L671%2C34%20L682%2C17%20L687%2C34%20L702%2C15%20L708%2C34%20L720%2C8%20L723%2C34%20L734%2C8%20L738%2C34%20L750%2C4%20L756%2C34%20L767%2C12%20L772%2C34%20L781%2C8%20L787%2C34%20L801%2C23%20L806%2C34%20L817%2C26%20L820%2C34%20L836%2C25%20L842%2C34%20L857%2C16%20L863%2C34%20L873%2C19%20L879%2C34%20L888%2C10%20L891%2C34%20L903%2C18%20L907%2C34%20L917%2C14%20L920%2C34%20L930%2C4%20L934%2C34%20L944%2C15%20L947%2C34%20L957%2C10%20L963%2C34%20L974%2C24%20L979%2C34%20L993%2C23%20L998%2C34%20L1014%2C7%20L1017%2C34%20L1033%2C18%20L1039%2C34%20L1055%2C13%20L1058%2C34%20L1069%2C7%20L1074%2C34%20L1087%2C19%20L1091%2C34%20L1100%2C10%20L1105%2C34%20L1116%2C26%20L1119%2C34%20L1132%2C24%20L1135%2C34%20L1148%2C20%20L1153%2C34%20L1164%2C15%20L1168%2C34%20L1182%2C24%20L1186%2C34%20L1198%2C11%20L1200%2C34%20L1200%2C30%20L1200%2C48%20Z%22/%3E%3C/svg%3E") bottom/100% 100% no-repeat;opacity:.16}
.sign .tab{position:absolute;top:0;left:0;background:var(--gold);color:#fff;font-family:'Anton',Impact,sans-serif;font-size:.85rem;letter-spacing:.08em;padding:.35rem .9rem;border-radius:8px 0 8px 0;text-transform:uppercase}
.sign h2{color:#fff}
.sign .phone{font-family:'Anton',Impact,sans-serif;font-size:clamp(2.4rem,7vw,4.6rem);letter-spacing:.04em;color:#fff;text-decoration:none;display:inline-block;margin:.4rem 0 .6rem}
.sign .phone:hover{color:#DFF2D8}
.sign p{margin:0 auto;max-width:56ch}
.sign .small{font-size:.95rem;opacity:.9;margin-top:.6rem}

/* Repair strip */
.strip{background:var(--cedar);color:#fff;padding:2.6rem 0}
.strip h2{color:#fff}
.strip p{max-width:64ch}

/* Quotes */
blockquote{background:#fff;border-left:6px solid var(--grass);border-radius:0 6px 6px 0;padding:1.2rem 1.4rem;margin:0 0 1.2rem;box-shadow:0 2px 8px rgba(35,40,31,.07)}
blockquote p{font-style:italic;margin-bottom:.5rem}
cite{font-style:normal;font-weight:700;color:var(--green);font-size:.95rem}

/* Service lists */
.svc{display:grid;grid-template-columns:340px 1fr;gap:2rem;align-items:start;margin:2.2rem 0}
.svc img{border-radius:6px;box-shadow:0 3px 12px rgba(35,40,31,.15)}
.svc ul{list-style:none;margin-top:.8rem}
.svc li{padding:.45rem 0 .45rem 1.6rem;position:relative}
.svc li:before{content:"";position:absolute;left:0;top:.95rem;width:12px;height:12px;background:var(--grass);clip-path:polygon(50% 0,100% 100%,0 100%)}
.svc li strong{color:var(--green)}
@media(max-width:820px){.svc{grid-template-columns:1fr}}

/* Gallery */
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin-top:1.4rem}
.gallery img{height:210px;width:100%;object-fit:cover;border-radius:5px}

/* Forms */
form{max-width:560px}
label{display:block;font-weight:700;margin:1rem 0 .3rem;font-size:.95rem}
input,select,textarea{width:100%;padding:.7rem .8rem;border:2px solid #C9C4B2;border-radius:4px;font:inherit;background:#fff}
input:focus,select:focus,textarea:focus{outline:3px solid var(--grass);outline-offset:1px;border-color:var(--green)}
.hidden{display:none}

/* Footer */
footer{background:var(--green-dark);color:#D8E4D5;padding:2.4rem 0;margin-top:0}
footer .wrap{display:flex;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
footer a{color:#fff}
footer .logo{color:#fff}
footer .logo span{color:#DFC49A}
footer p{margin:0;font-size:.92rem}

/* Logo badge in header */
.logo-link{display:inline-flex;align-items:center}
.logo-img{height:58px;width:auto}
@media(max-width:560px){.logo-img{height:46px}}

/* Before & After */
.ba-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:1.4rem 0 .6rem}
@media(max-width:560px){.ba-pair{grid-template-columns:1fr}}
.ba-shot{position:relative}
.ba-shot img{width:100%;height:100%;object-fit:cover;border-radius:6px;display:block}
.ba-tag{position:absolute;top:10px;left:10px;font-family:'Anton',Impact,sans-serif;letter-spacing:.08em;font-size:.85rem;text-transform:uppercase;color:#fff;background:var(--ink);padding:.25rem .7rem;border-radius:4px;opacity:.92}
.ba-shot.after .ba-tag{background:var(--green)}
.ba-caption{color:var(--ink-soft);font-size:.98rem;margin-bottom:2rem}
