/*
Theme Name: Chestnut Paving & Landscaping Apple Style
Theme URI: https://digitalbusinesssolutions.co.uk/
Author: Digital Business Solutions
Description: Premium Apple-inspired WordPress theme for Chestnut Paving & Landscaping, based on the approved homepage concept.
Version: 2.2.0
Text Domain: chestnut-apple
*/
:root{--navy:#060d31;--navy2:#0b173d;--ink:#0b1538;--muted:#667085;--line:#e4e6ea;--soft:#f7f8fa;--white:#fff;--accent:#c9b89d;--silver:#d9d9d5;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.55;-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 44px));margin:auto}.eyebrow{font-size:12px;font-weight:650;letter-spacing:.17em;text-transform:uppercase}.section{padding:82px 0}.section-title{font-size:clamp(2.1rem,4vw,3.9rem);font-weight:400;letter-spacing:-.045em;line-height:1.03;margin:0}.muted{color:var(--muted)}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(6,13,49,.97);backdrop-filter:saturate(160%) blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}.header-inner{height:78px;display:flex;align-items:center;gap:30px}.brand img{width:275px;height:60px;object-fit:contain;object-position:left center}.nav{margin-left:auto}.nav ul{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0}.nav a{color:#fff;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.nav .menu-item-has-children{position:relative}.nav .sub-menu{display:none;position:absolute;top:100%;left:-18px;background:#fff;color:var(--ink);min-width:220px;padding:12px;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.18)}.nav .sub-menu a{display:block;color:var(--ink);padding:10px 12px;border-radius:9px}.nav .sub-menu a:hover{background:var(--soft)}.nav .menu-item-has-children:hover>.sub-menu{display:block}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid rgba(255,255,255,.65);padding:13px 22px;color:#fff;text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700;transition:.22s}.button.dark{background:var(--navy);border-color:var(--navy)}.button.light{background:#fff;color:var(--navy);border-color:#fff}.button:hover,.header-cta:hover{transform:translateY(-2px)}.menu-toggle{display:none;background:transparent;border:0;color:#fff;font-size:28px;margin-left:auto}
.hero{min-height:655px;background-image:linear-gradient(90deg,rgba(6,13,49,.83) 0%,rgba(6,13,49,.50) 40%,rgba(6,13,49,.10) 72%),url('assets/images/hero.jpg');background-size:cover;background-position:center;display:flex;align-items:center;color:#fff}.hero-inner{padding:78px 0 54px;max-width:720px}.hero .eyebrow{margin-bottom:18px}.hero h1{font-size:clamp(3.4rem,6.6vw,6.5rem);font-weight:300;letter-spacing:-.055em;line-height:.96;margin:0 0 24px}.hero p{font-size:1.16rem;color:rgba(255,255,255,.84);max-width:560px}.hero-actions{display:flex;gap:20px;align-items:center;margin-top:30px}.text-link{font-size:11px;text-transform:uppercase;letter-spacing:.06em;font-weight:700}.trust-strip{border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:28px 26px;border-right:1px solid var(--line);display:flex;gap:16px;align-items:flex-start}.trust-item:last-child{border-right:0}.trust-icon{width:42px;height:42px;border:1px solid #cad2df;border-radius:50%;display:grid;place-items:center;font-size:19px;flex:0 0 auto}.trust-item b{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}.trust-item span{font-size:12px;color:var(--muted)}
.services-intro{display:grid;grid-template-columns:1fr .82fr;gap:90px;align-items:end;margin-bottom:36px}.services-intro p{max-width:420px;color:var(--muted)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{border:1px solid var(--line);background:#fff;overflow:hidden;transition:.25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(14,26,52,.12)}.service-media{height:255px;overflow:hidden}.service-media img{width:100%;height:100%;object-fit:cover;transition:.5s}.service-card:hover img{transform:scale(1.035)}.service-body{padding:24px}.service-body h3{font-size:1.55rem;font-weight:400;letter-spacing:-.02em;margin:0 0 8px}.service-body p{font-size:13px;color:var(--muted);min-height:42px}.learn{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.work-band{background:linear-gradient(110deg,#060d31,#0c1a45);color:#fff}.work-grid{display:grid;grid-template-columns:.8fr 1.2fr .55fr;gap:34px;align-items:center}.work-copy h2{font-size:2.3rem;font-weight:350;line-height:1.05;margin:10px 0 18px}.work-copy p{color:rgba(255,255,255,.72);font-size:14px}.project-mosaic{display:grid;grid-template-columns:1fr 1.1fr;grid-template-rows:1fr 1fr;gap:2px;height:330px}.project-mosaic img{width:100%;height:100%;object-fit:cover}.project-mosaic img:nth-child(2){grid-row:1/3;grid-column:2}.stats{display:grid;gap:18px}.stat{padding:0 0 18px;border-bottom:1px solid rgba(255,255,255,.35)}.stat strong{font-size:2rem;font-weight:300}.stat span{display:block;font-size:12px;color:rgba(255,255,255,.75)}
.testimonial{text-align:center;padding:65px 0}.testimonial blockquote{font-size:1.7rem;font-weight:350;line-height:1.35;max-width:830px;margin:14px auto;color:#172039}.testimonial cite{font-style:normal;font-size:13px;color:var(--muted)}
.page-hero{background:linear-gradient(110deg,rgba(6,13,49,.95),rgba(11,23,61,.80)),url('assets/images/hero.jpg') center/cover;color:#fff;padding:105px 0}.page-hero h1{font-size:clamp(3rem,6vw,5.6rem);font-weight:300;letter-spacing:-.05em;margin:8px 0 18px;line-height:.98}.page-hero p{max-width:660px;color:rgba(255,255,255,.78);font-size:1.12rem}.content-grid{display:grid;grid-template-columns:1.15fr .65fr;gap:80px}.content-grid h2{font-size:2.5rem;font-weight:350;letter-spacing:-.03em}.checklist{padding:0;list-style:none}.checklist li{padding:13px 0;border-bottom:1px solid var(--line)}.checklist li:before{content:'✓';margin-right:12px}.side-card{background:var(--soft);padding:32px;position:sticky;top:110px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-grid img{width:100%;height:260px;object-fit:cover}.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid textarea,.form-grid select{width:100%;padding:15px;border:1px solid #d9dee7;font:inherit}.form-grid textarea{min-height:150px}
.site-footer{background:#060d31;color:#fff;padding:58px 0 22px}.footer-grid{display:grid;grid-template-columns:1.25fr .7fr .7fr .9fr;gap:55px}.footer-logo{width:260px;height:74px;object-fit:contain;object-position:left center}.site-footer h4{font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin:0 0 16px}.site-footer p,.site-footer li,.site-footer a{font-size:12px;color:rgba(255,255,255,.72)}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin:8px 0}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:42px;padding-top:18px;text-align:center;color:rgba(255,255,255,.48);font-size:11px}
@media(max-width:920px){.header-cta{display:none}.menu-toggle{display:block}.nav{display:none;position:absolute;top:78px;left:0;right:0;background:#060d31;padding:16px 24px}.nav.open{display:block}.nav ul{display:block}.nav li{border-bottom:1px solid rgba(255,255,255,.1)}.nav a{display:block;padding:14px 0}.nav .sub-menu{display:block;position:static;background:transparent;box-shadow:none;padding:0 0 10px 15px}.nav .sub-menu a{color:#fff}.trust-grid{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}.services-intro,.work-grid,.content-grid,.contact-grid{grid-template-columns:1fr;gap:38px}.services-grid{grid-template-columns:1fr 1fr}.stats{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.wrap{width:min(var(--max),calc(100% - 28px))}.brand img{width:220px}.hero{min-height:560px}.hero h1{font-size:3.45rem}.hero-actions{align-items:flex-start;flex-direction:column}.trust-grid,.services-grid,.stats,.footer-grid,.form-grid,.gallery-grid{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid var(--line)}.services-intro{gap:24px}.project-mosaic{height:300px}.section{padding:62px 0}.form-grid .full{grid-column:auto}}

/* v2.2 Chestnut identity refinement */
.site-header{background:rgba(6,13,49,.97);border-bottom:1px solid rgba(217,217,213,.12)}
.header-inner{height:92px;gap:34px}
.brand{display:flex;align-items:center;flex:0 0 330px}
.brand img,.brand .custom-logo{width:330px;height:auto;max-height:58px;object-fit:contain;object-position:left center}
.nav a{color:#f6f6f3;font-size:11px;letter-spacing:.035em}
.header-cta{border-color:rgba(217,217,213,.78);color:#fff;padding:14px 24px}
.header-cta:hover{background:rgba(217,217,213,.10)}
.hero{min-height:670px;background-position:center 50%}
.hero-inner{padding:84px 0 64px;max-width:760px}
.hero .eyebrow{color:var(--silver)}
.hero h1{font-weight:300;max-width:760px}
.hero p{color:rgba(255,255,255,.88)}
.hero .button{background:var(--accent);border-color:var(--accent);color:#fff}
.hero .button:hover{background:#bfae93;border-color:#bfae93}
.trust-strip{background:var(--navy);border-bottom:1px solid rgba(217,217,213,.10);color:#fff}
.trust-item{border-right:1px solid rgba(217,217,213,.13)}
.trust-icon{border-color:rgba(201,184,157,.70);color:var(--accent)}
.trust-item span{color:rgba(255,255,255,.70)}
.trust-item b{color:#fff}
.button.dark{background:var(--navy);border-color:var(--navy);color:#fff}
.work-band{background:linear-gradient(110deg,#060d31,#0b173d)}
.site-footer{background:#060d31}
.footer-logo{width:290px;height:auto;max-height:68px}
@media(max-width:920px){.header-inner{height:78px}.brand{flex-basis:auto}.brand img,.brand .custom-logo{width:245px;max-height:48px}.nav{top:78px;background:#060d31}}
@media(max-width:620px){.brand img,.brand .custom-logo{width:210px}.hero{min-height:585px;background-position:62% center}}
