/*
Theme Name: Lee's Lawn Modern
Theme URI: https://leeslawnmaintsvc.com
Author: Lee's Lawn Maintenance Service
Description: Custom, editable WordPress theme for Lee's Lawn Maintenance Service.
Version: 2.3.0
Text Domain: lees-lawn-modern
*/

:root { --ink:#080b08; --green:#82e600; --green-deep:#4daa00; --cream:#f3f1e9; --paper:#fbfaf5; --muted:#666b62; --line:#d9dbd1; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
body.admin-bar .site-header { top:32px; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
img { max-width:100%; }
.container { width:min(1180px,calc(100% - 48px)); margin-inline:auto; }
.site-header { position:sticky; top:0; z-index:50; height:86px; background:rgba(5,7,5,.96); color:#fff; border-bottom:1px solid #252925; backdrop-filter:blur(12px); }
.header-inner { width:min(1280px,calc(100% - 36px)); height:100%; margin:auto; display:flex; align-items:center; gap:42px; }
.logo-link { align-self:stretch; width:210px; display:grid; place-items:center; overflow:hidden; }
.logo-link img { width:190px; height:84px; object-fit:cover; object-position:center; }
.site-header nav { display:flex; align-items:center; gap:32px; margin-left:auto; }
.site-header nav a { padding:10px 0; font-size:.77rem; text-transform:uppercase; letter-spacing:.14em; font-weight:700; color:#dfe3dd; transition:.2s; }
.site-header nav a:hover { color:var(--green); }
.header-cta { display:inline-flex; gap:14px; align-items:center; padding:14px 18px; background:var(--green); color:var(--ink); font-weight:800; font-size:.75rem; text-transform:uppercase; letter-spacing:.08em; }
.arrow { display:inline-block; font-size:1.2em; transition:transform .2s; }
a:hover .arrow,button:hover .arrow { transform:translate(2px,-2px); }
.nav-toggle,.nav-button { display:none; }
.hero { min-height:690px; position:relative; overflow:hidden; color:#fff; background:radial-gradient(circle at 74% 30%,#1f4016 0,#0c190b 22%,#050705 55%); }
.hero:before { content:""; position:absolute; inset:0; opacity:.2; background:repeating-linear-gradient(116deg,transparent 0 42px,rgba(114,219,41,.25) 43px 45px); clip-path:polygon(48% 52%,100% 5%,100% 100%,33% 100%); }
.hero-grain { position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.66),transparent 65%); }
.hero-grid { min-height:690px; position:relative; display:grid; grid-template-columns:1.08fr .92fr; align-items:center; }
.hero-copy { padding:78px 0 64px; max-width:670px; z-index:2; }
.eyebrow,.kicker { display:flex; align-items:center; gap:10px; color:var(--green); font-size:.72rem; font-weight:800; letter-spacing:.2em; text-transform:uppercase; }
.eyebrow span { width:30px; height:2px; background:var(--green); }
.hero h1,.page-hero h1 { margin:20px 0 24px; font-size:clamp(4rem,7.2vw,7.4rem); line-height:.82; letter-spacing:-.065em; text-transform:uppercase; font-weight:900; }
.hero h1 em,.promise-section h2 em { color:var(--green); font-style:normal; }
.hero-lede { max-width:590px; color:#cbd1c8; font-size:1.16rem; line-height:1.65; }
.button-row { display:flex; align-items:center; gap:34px; margin:34px 0 45px; }
.button { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:20px; border:0; padding:15px 22px; font-size:.75rem; text-transform:uppercase; letter-spacing:.09em; font-weight:900; cursor:pointer; }
.button-primary { background:var(--green); color:var(--ink); }
.button-dark { background:var(--ink); color:#fff; }
.text-link { display:inline-flex; gap:12px; align-items:center; font-size:.74rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; border-bottom:1px solid currentColor; padding-bottom:5px; }
.trust-row { display:flex; gap:24px; flex-wrap:wrap; color:#aeb5ab; font-size:.72rem; text-transform:uppercase; letter-spacing:.08em; }
.check { width:18px; height:18px; display:inline-grid; place-items:center; border-radius:50%; background:var(--green); color:var(--ink); font-size:.7rem; font-weight:900; margin-right:5px; }
.hero-work { position:relative; width:min(520px,100%); height:480px; justify-self:end; padding:10px; border:2px solid var(--green); background:#0b100a; box-shadow:28px 28px 0 rgba(130,230,0,.09),0 30px 90px rgba(0,0,0,.35); transform:rotate(1deg); }
.hero-work img { display:block; width:100%; height:100%; object-fit:cover; object-position:58% center; filter:saturate(.95) contrast(1.04); }
.hero-work:after { content:""; position:absolute; inset:10px; background:linear-gradient(180deg,transparent 45%,rgba(2,7,2,.78)); pointer-events:none; }
.hero-work-caption { position:absolute; z-index:2; left:34px; right:30px; bottom:30px; color:#fff; }
.hero-work-caption span { display:block; margin-bottom:9px; color:var(--green); font-size:.68rem; font-weight:900; letter-spacing:.17em; text-transform:uppercase; }
.hero-work-caption strong { display:block; max-width:390px; font-size:1.65rem; line-height:1; letter-spacing:-.025em; text-transform:uppercase; }
.ticker { overflow:hidden; background:var(--green); padding:17px 0; white-space:nowrap; color:#111; font-size:.78rem; letter-spacing:.16em; font-weight:900; }
.ticker div { width:max-content; min-width:100%; text-align:center; }.ticker i { margin:0 24px; font-style:normal; }
.home-areas { padding:22px 0; background:#fff; border-bottom:1px solid var(--line); }.home-areas .container { display:flex; justify-content:space-between; align-items:center; gap:25px; }.home-areas p { margin:0; color:var(--muted); font-size:.83rem; }.home-areas strong { color:var(--ink); text-transform:uppercase; letter-spacing:.08em; margin-right:8px; }.home-areas a { flex:none; display:inline-flex; gap:10px; align-items:center; color:#3e7504; font-size:.72rem; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.section { padding:110px 0; }
.section-heading h2,.proof-copy h2,.story-copy h2,.values-section h2,.promise-section h2,.process-section h2,.cta-inner h2,.contact-grid h2 { font-size:clamp(2.5rem,4.4vw,4.8rem); line-height:.98; letter-spacing:-.05em; text-transform:uppercase; margin:15px 0; }
.kicker { color:#4e780d; }.split-heading { display:grid; grid-template-columns:1.2fr .8fr; align-items:end; gap:80px; margin-bottom:55px; }.split-heading>p { max-width:450px; color:var(--muted); line-height:1.7; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.service-card { position:relative; min-height:380px; padding:32px; background:#fff; border:1px solid var(--line); transition:.25s; }.service-card:hover { background:var(--green); transform:translateY(-4px); border-color:var(--green); }
.service-number { position:absolute; right:25px; top:25px; color:#90968c; font-size:.75rem; font-weight:800; }.service-icon { width:74px; height:74px; display:grid; place-items:center; margin:30px 0 55px; border-radius:50%; background:#edf6e4; color:#4c9207; font-weight:900; font-size:1.45rem; }.service-card h3 { font-size:1.4rem; text-transform:uppercase; margin:0 0 14px; }.service-card p { color:var(--muted); line-height:1.6; margin-right:30px; }.service-card>a { position:absolute; right:28px; bottom:25px; font-size:1.4rem; }.center-action { display:flex; justify-content:center; margin-top:45px; }
.proof-section { display:grid; grid-template-columns:1fr 1fr; min-height:700px; background:var(--ink); color:#fff; }.proof-image { background-image:linear-gradient(90deg,transparent 60%,var(--ink)),var(--proof-image); background-size:cover; background-position:center; filter:saturate(.85); }.proof-copy { padding:85px clamp(40px,7vw,110px); }.light { color:var(--green); }.proof-copy>p:not(.kicker) { color:#aeb5ab; line-height:1.7; max-width:580px; }.proof-list { margin:35px 0; border-top:1px solid #323632; }.proof-list span { display:grid; grid-template-columns:45px 1fr; gap:4px; padding:18px 0; border-bottom:1px solid #323632; }.proof-list b { grid-row:span 2; color:var(--green); font-size:.72rem; }.proof-list strong { text-transform:uppercase; }.proof-list small { color:#939a90; }.light-link { color:#fff; }
.cta-band { background:var(--green); padding:62px 0; }.cta-inner { display:flex; justify-content:space-between; align-items:center; gap:40px; }.cta-inner h2 { margin:8px 0 0; }.cta-inner .kicker { color:#294003; }
.site-footer { background:#050705; color:#fff; padding:72px 0 25px; }.footer-grid { display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:60px; padding-bottom:60px; }.footer-grid h3 { color:var(--green); font-size:.7rem; text-transform:uppercase; letter-spacing:.16em; }.footer-grid>div:not(.footer-brand) a { display:block; color:#aeb4ab; margin:14px 0; font-size:.88rem; }.footer-brand img { width:220px; height:128px; object-fit:cover; }.footer-brand p { color:#959c92; line-height:1.6; max-width:300px; }.footer-link { color:#fff!important; border-bottom:1px solid var(--green); width:max-content; padding-bottom:5px; text-transform:uppercase; font-weight:800; letter-spacing:.08em; font-size:.72rem!important; }.footer-contact>a:not(.footer-link) { overflow-wrap:anywhere; }.service-area { display:flex; justify-content:space-between; gap:25px; padding:22px 0; border-top:1px solid #242824; color:#858c82; font-size:.7rem; text-transform:uppercase; letter-spacing:.08em; }.service-area strong { color:var(--green); }.footer-bottom { border-top:1px solid #242824; padding-top:22px; display:flex; justify-content:space-between; color:#697068; font-size:.68rem; text-transform:uppercase; letter-spacing:.08em; }
.page-hero { padding:115px 0 100px; color:#fff; background:radial-gradient(circle at 80% 15%,#27451c,#080b08 44%); position:relative; overflow:hidden; }.page-hero:after { content:""; position:absolute; width:580px; height:580px; right:-150px; top:-270px; border:50px solid var(--green); border-radius:50%; opacity:.17; }.page-hero h1 { max-width:1000px; font-size:clamp(3.4rem,6vw,6.4rem); line-height:.9; }.page-hero .container>p:last-child { max-width:680px; color:#b9c0b6; font-size:1.08rem; line-height:1.7; }
.story-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:90px; align-items:center; }.story-art { min-height:530px; background:linear-gradient(135deg,rgba(5,8,5,.08),transparent),var(--story-image) center/cover; position:relative; }.story-badge { position:absolute; right:-30px; bottom:35px; width:170px; height:170px; border-radius:50%; background:var(--green); display:flex; flex-direction:column; align-items:center; justify-content:center; text-transform:uppercase; transform:rotate(-8deg); }.story-badge strong { font-size:2rem; }.story-badge span { letter-spacing:.12em; font-size:.7rem; }.story-copy p:not(.kicker) { color:var(--muted); line-height:1.8; }.story-copy .text-link { margin-top:20px; }
.values-section,.process-section { background:var(--ink); color:#fff; padding:105px 0; }.values-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:55px; border-top:1px solid #303430; }.values-grid article { padding:35px 30px; border-right:1px solid #303430; }.values-grid article:first-child { border-left:1px solid #303430; }.values-grid span,.process-grid b { color:var(--green); font-size:.72rem; }.values-grid h3,.process-grid h3 { text-transform:uppercase; margin-top:55px; }.values-grid p,.process-grid p { color:#969d94; line-height:1.6; }.promise-grid { display:grid; grid-template-columns:1fr 1fr; gap:100px; align-items:center; }.promise-list p { display:flex; gap:20px; padding:24px 0; border-bottom:1px solid var(--line); }.promise-list .check { flex:none; }.promise-list span { color:var(--muted); line-height:1.6; }.promise-list strong { display:block; color:var(--ink); text-transform:uppercase; margin-bottom:5px; }
.full-service-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }.full-service-card { padding:38px; border:1px solid var(--line); background:#fff; }.card-top { display:flex; justify-content:space-between; align-items:flex-start; }.card-top .service-icon { margin:0 0 35px; }.card-top>span { color:#959a92; font-size:.72rem; }.full-service-card h2 { text-transform:uppercase; font-size:1.7rem; }.full-service-card>p { color:var(--muted); line-height:1.7; }.full-service-card ul { list-style:none; display:grid; grid-template-columns:1fr 1fr; padding:20px 0; margin:25px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.full-service-card li { padding:8px 0; font-size:.82rem; }.full-service-card li:before { content:"+"; color:#58a400; font-weight:900; margin-right:8px; }.full-service-card>a { display:inline-flex; align-items:center; gap:12px; text-transform:uppercase; font-size:.72rem; font-weight:900; border-bottom:1px solid; padding-bottom:5px; }.process-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:50px; border-top:1px solid #303430; }.process-grid article { padding:35px; border-right:1px solid #303430; }.process-grid article:first-child { border-left:1px solid #303430; }.process-grid h3 { margin-top:45px; }
.gallery-note { display:flex; justify-content:space-between; gap:40px; align-items:center; margin-bottom:35px; }.gallery-note span { font-size:.72rem; text-transform:uppercase; letter-spacing:.15em; font-weight:800; color:#4e780d; }.gallery-note p { color:var(--muted); max-width:500px; line-height:1.6; }.gallery-grid { display:grid; grid-template-columns:repeat(2,1fr); grid-auto-rows:390px; gap:18px; }.gallery-card { position:relative; overflow:hidden; background:#172016; }.gallery-card:before { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(0deg,rgba(0,0,0,.8),transparent 58%); }.gallery-card img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }.gallery-card:hover img { transform:scale(1.035); }.gallery-card>div { position:absolute; left:28px; bottom:24px; color:#fff; z-index:2; }.gallery-card p { color:var(--green); text-transform:uppercase; font-size:.68rem; letter-spacing:.14em; }.gallery-card h2 { text-transform:uppercase; font-size:1.45rem; margin:7px 0; }.portfolio-heading { display:grid; grid-template-columns:1fr 1fr; gap:20px 70px; align-items:end; margin:100px 0 38px; }.portfolio-heading .kicker { grid-column:1/-1; margin:0; }.portfolio-heading h2,.archive-heading h2 { margin:0; font-size:clamp(2.2rem,4vw,4rem); line-height:1; letter-spacing:-.045em; text-transform:uppercase; }.portfolio-heading>p:last-child { margin:0; color:var(--muted); line-height:1.7; }.portfolio-wall { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }.portfolio-wall figure { position:relative; aspect-ratio:4/3; margin:0; overflow:hidden; background:#182017; }.portfolio-wall figure:nth-child(3n+2) { aspect-ratio:3/4; }.portfolio-wall img,.archive-strip img { width:100%; height:100%; object-fit:cover; transition:transform .4s; }.portfolio-wall figure:hover img { transform:scale(1.04); }.portfolio-wall figcaption,.archive-strip figcaption { position:absolute; z-index:2; inset:auto 10px 10px; padding:8px 10px; background:rgba(4,7,4,.84); color:#fff; font-size:.63rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }.archive-heading { margin:100px 0 30px; }.archive-strip { display:grid; grid-template-columns:repeat(5,1fr); gap:9px; }.archive-strip figure { position:relative; margin:0; aspect-ratio:1/1; overflow:hidden; background:#172016; }.archive-strip figure:nth-child(7n+1),.archive-strip figure:nth-child(7n+5) { grid-column:span 2; }
.contact-section { background:var(--cream); }.contact-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:80px; align-items:start; }.contact-grid aside>p:not(.kicker) { color:var(--muted); line-height:1.7; }.contact-detail { display:flex; gap:18px; padding:20px 0; border-bottom:1px solid #ced1c7; }.contact-detail>span { color:#559b0d; font-size:.7rem; font-weight:800; }.contact-detail strong,.contact-detail small { display:block; }.contact-detail strong { text-transform:uppercase; font-size:.84rem; margin-bottom:6px; }.contact-detail small { color:var(--muted); }.direct-contact { margin:26px 0; border-top:1px solid #ced1c7; }.direct-contact a { display:block; padding:14px 0; border-bottom:1px solid #ced1c7; }.direct-contact small,.direct-contact strong { display:block; }.direct-contact small,.areas-card small { color:#559b0d; text-transform:uppercase; letter-spacing:.12em; font-weight:800; font-size:.65rem; margin-bottom:5px; }.direct-contact strong { font-size:.92rem; overflow-wrap:anywhere; }.areas-card { margin-top:24px; padding:20px; background:#e8eddf; }.areas-card p { margin:8px 0 0!important; font-size:.82rem; line-height:1.7!important; }.contact-form { background:#fff; padding:42px; display:grid; gap:22px; box-shadow:0 18px 55px rgba(12,18,8,.08); }.contact-form label { display:grid; gap:8px; text-transform:uppercase; letter-spacing:.09em; font-weight:800; font-size:.67rem; }.field-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.contact-form input,.contact-form select,.contact-form textarea { width:100%; background:#f7f7f2; border:1px solid #d9dbd3; border-radius:0; padding:14px 15px; outline:none; text-transform:none; letter-spacing:0; font-weight:400; }.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus { border-color:#5e9f14; box-shadow:0 0 0 2px rgba(130,230,0,.18); }.contact-form textarea { resize:vertical; }.contact-form .button { justify-self:start; }.form-note,.form-status { margin:0; font-size:.68rem; color:#7b8178; line-height:1.5; }.form-status.success { padding:12px; background:#e8f6d7; color:#2a4a09; }.form-status.error { padding:12px; background:#fff0ec; color:#7b2518; }
@media (max-width:980px) { .site-header nav{gap:17px}.header-cta{display:none}.hero-grid{grid-template-columns:1fr}.hero-work{position:absolute;right:-170px;width:450px;height:480px;opacity:.34}.hero-copy{max-width:720px}.service-grid{grid-template-columns:1fr 1fr}.service-card:last-child{grid-column:span 2}.proof-section{grid-template-columns:1fr}.proof-image{min-height:450px}.footer-grid{grid-template-columns:1.3fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}.values-grid{grid-template-columns:1fr 1fr}.story-grid,.contact-grid{gap:50px}.full-service-grid{grid-template-columns:1fr} }
@media (max-width:782px) { body.admin-bar .site-header{top:46px} }
@media (max-width:760px) { .container{width:min(100% - 30px,1180px)}.site-header{height:72px}.header-inner{width:calc(100% - 24px)}.logo-link{width:150px}.logo-link img{width:150px;height:68px}.nav-button{display:grid;gap:5px;margin-left:auto;width:42px;height:42px;place-content:center;background:#171b17;cursor:pointer}.nav-button span{display:block;width:20px;height:2px;background:#fff}.site-header nav{position:fixed;top:72px;left:0;right:0;margin:0;padding:28px 24px;display:none;flex-direction:column;align-items:flex-start;background:#080b08;border-top:1px solid #242824}.nav-toggle:checked~nav{display:flex}.site-header nav a{font-size:.9rem}.hero,.hero-grid{min-height:auto}.hero-grid{padding:58px 0 48px}.hero-copy{padding:0}.hero h1{font-size:3.8rem}.hero-lede{font-size:1rem}.hero-work{position:relative;right:auto;width:100%;height:330px;margin-top:42px;opacity:1;transform:none;box-shadow:14px 14px 0 rgba(130,230,0,.09)}.hero-work-caption{left:25px;bottom:24px}.hero-work-caption strong{font-size:1.25rem}.trust-row{gap:12px;flex-direction:column}.button-row{align-items:flex-start;flex-direction:column;gap:24px}.home-areas .container,.service-area{align-items:flex-start;flex-direction:column}.section{padding:75px 0}.split-heading{grid-template-columns:1fr;gap:15px}.service-grid{grid-template-columns:1fr}.service-card:last-child{grid-column:auto}.proof-copy{padding:65px 25px}.proof-image{min-height:330px}.cta-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr;gap:40px 25px}.footer-brand{grid-column:span 2}.footer-grid>div:last-child{grid-column:1/3}.footer-bottom{flex-direction:column;gap:10px}.page-hero{padding:80px 0 75px}.page-hero h1{font-size:3.35rem}.story-grid,.promise-grid,.contact-grid{grid-template-columns:1fr;gap:55px}.story-art{min-height:400px}.story-badge{right:-5px}.values-grid{grid-template-columns:1fr}.values-grid article,.values-grid article:first-child{border-left:1px solid #303430;border-bottom:1px solid #303430}.process-grid{grid-template-columns:1fr}.process-grid article,.process-grid article:first-child{border-left:1px solid #303430;border-bottom:1px solid #303430}.full-service-card{padding:28px 22px}.full-service-card ul{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:300px}.gallery-note{align-items:flex-start;flex-direction:column}.portfolio-heading{grid-template-columns:1fr;margin-top:70px}.portfolio-heading .kicker{grid-column:auto}.portfolio-wall{grid-template-columns:1fr 1fr}.archive-strip{grid-template-columns:1fr 1fr}.archive-strip figure:nth-child(7n+1),.archive-strip figure:nth-child(7n+5){grid-column:auto}.contact-form{padding:25px 20px}.field-row{grid-template-columns:1fr} }
@media (prefers-reduced-motion:reduce) { *{scroll-behavior:auto!important;transition:none!important} }
