/* TerraMorph V2 — premium outdoor transformation mockup */
:root{
  --black:#070a08;
  --charcoal:#101712;
  --forest:#173b27;
  --pine:#0d2418;
  --moss:#627c45;
  --olive:#8a9b65;
  --gold:#d8aa4d;
  --gold-2:#f1d384;
  --cream:#f7f2e8;
  --sand:#e9dfce;
  --stone:#cfc6b5;
  --white:#fffdf8;
  --ink:#182018;
  --muted:#5d675d;
  --line:rgba(24,32,24,.14);
  --line-dark:rgba(255,255,255,.18);
  --shadow:0 28px 80px rgba(7,10,8,.20);
  --max:1200px;
  --radius:0px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.55;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{outline-offset:4px}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.skip-link{position:absolute;left:12px;top:-80px;z-index:999;background:var(--gold);color:#171007;padding:12px 16px;font-weight:900}.skip-link:focus{top:12px}
.container{width:min(var(--max),calc(100% - 44px));margin-inline:auto}.section{padding:96px 0}.section-heading{max-width:820px;margin-bottom:34px}.section-heading.compact{max-width:760px}.section-heading h2,.intro-grid h2,.transformation-grid h2,.local-grid h2,.cta-proof h2,.problem-card h2{font-family:'Fraunces',Georgia,serif;font-size:clamp(2.25rem,5vw,4.6rem);line-height:.94;letter-spacing:-.045em;margin:8px 0 16px}.section-heading p,.intro-grid p,.transformation-grid p,.local-grid p,.cta-proof p{font-size:1.08rem;color:var(--muted);max-width:760px}.eyebrow{font-size:.78rem;line-height:1.2;text-transform:uppercase;letter-spacing:.16em;font-weight:900;color:var(--moss);margin:0 0 10px}.eyebrow.light{color:var(--gold-2)}.fine-print{font-size:.86rem;color:#bac6b8}.city{font-weight:900;color:var(--moss);margin-top:-8px}.crumb{font-size:.9rem;color:#e7ecdf}.crumb a{text-decoration:underline;text-underline-offset:3px}
.topbar{background:var(--black);color:#edf2e8;font-size:.9rem}.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:9px 0}.topbar-proof{display:flex;gap:18px;flex-wrap:wrap}.topbar-proof span{display:inline-flex;align-items:center;gap:6px}.topbar-phone{font-weight:900;color:var(--gold-2);white-space:nowrap}.site-header{position:sticky;top:0;z-index:80;background:rgba(247,242,232,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;gap:12px;min-width:max-content}.brand img{width:56px;height:56px;object-fit:contain}.brand span{display:grid;line-height:1}.brand strong{text-transform:uppercase;letter-spacing:.08em;font-size:.98rem}.brand small{font-size:.72rem;color:var(--muted);font-weight:800}.links{display:flex;align-items:center;gap:24px;font-size:.94rem;font-weight:900;text-transform:uppercase;letter-spacing:.035em}.links a{position:relative;padding:28px 0}.links a:after{content:"";position:absolute;left:0;right:0;bottom:20px;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:.2s}.links a:hover:after{transform:scaleX(1)}.nav-actions{display:flex;gap:10px;align-items:center}.mobile-menu{display:none;background:var(--pine);color:#fff;border:0;padding:13px 16px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;min-height:48px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:14px 20px;border:1px solid transparent;font-weight:900;letter-spacing:.01em;cursor:pointer;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--forest);color:#fff}.btn-primary:hover{background:#214f35}.btn-gold{background:var(--gold);color:#151007}.btn-gold:hover{background:#e1b85d}.btn-quiet{background:#fff;color:var(--forest);border-color:var(--line)}.btn-quiet:hover{background:var(--sand)}.btn-outline-light,.btn-call{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.42);color:#fff}.btn-outline-light:hover,.btn-call:hover{background:#fff;color:var(--pine)}
.hero-v2{position:relative;min-height:760px;background:#080b09;color:#fff;display:grid;align-items:end;overflow:hidden}.hero-media{position:absolute;inset:0}.hero-media img{width:100%;height:100%;object-fit:cover;filter:saturate(1.05) contrast(1.08)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,8,6,.92) 0%,rgba(5,8,6,.72) 40%,rgba(5,8,6,.35) 72%,rgba(5,8,6,.70) 100%),linear-gradient(180deg,rgba(5,8,6,.10),rgba(5,8,6,.82))}.hero-content{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr);gap:52px;align-items:end;padding:118px 0 60px}.hero-copy{max-width:900px}.hero-copy h1{font-family:'Fraunces',Georgia,serif;font-size:clamp(3.15rem,7.2vw,7.05rem);line-height:.88;letter-spacing:-.06em;margin:14px 0 24px;max-width:980px}.hero-lead{font-size:clamp(1.1rem,1.8vw,1.35rem);max-width:730px;color:#e7ecdf}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.above-fold-trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.above-fold-trust span{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);padding:9px 12px;font-weight:900;font-size:.9rem}.hero-proof-card{background:rgba(255,253,248,.90);color:var(--ink);padding:26px;border-left:4px solid var(--gold);box-shadow:var(--shadow);backdrop-filter:blur(10px)}.hero-proof-card img{height:58px;max-width:180px;object-fit:contain;background:transparent;padding:0;margin:0 14px 16px 0;display:inline-block;vertical-align:middle}.hero-proof-card img:first-child{height:66px;max-width:210px}.hero-proof-card h2{font-family:'Fraunces',Georgia,serif;font-size:2rem;line-height:1;margin:10px 0}.hero-proof-card p{color:var(--muted);margin-bottom:0}.trust-band{background:var(--pine);color:#fff;padding:20px 0}.trust-grid{display:grid;grid-template-columns:1.1fr .8fr .8fr 1.1fr 1fr;gap:12px}.trust-feature,.trust-logo{border:1px solid var(--line-dark);background:rgba(255,255,255,.045);padding:20px;min-height:132px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.trust-feature strong{font-family:'Fraunces',Georgia,serif;font-size:2.4rem;line-height:.9;color:var(--gold-2)}.trust-feature span,.trust-logo span{font-weight:900}.trust-feature small{color:#cbd8c8;margin-top:6px}.trust-logo img{height:66px;max-width:210px;object-fit:contain;background:transparent;padding:0;margin-bottom:12px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.16))}.trust-logo img[src*="google"]{height:74px;max-width:230px}.intro-section{background:var(--white)}.intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.intro-grid p{font-size:1.25rem}.services-section{background:linear-gradient(180deg,var(--cream),#fff)}.service-matrix{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.premium-service{background:var(--white);border:1px solid var(--line);box-shadow:0 18px 46px rgba(7,10,8,.08);display:flex;flex-direction:column;min-height:100%;overflow:hidden}.premium-service img{width:100%;height:220px;object-fit:cover;filter:saturate(.96) contrast(1.04);transition:transform .35s ease}.premium-service:hover img{transform:scale(1.035)}.service-body{padding:24px;display:flex;flex-direction:column;gap:14px;flex:1}.service-body h3{font-family:'Fraunces',Georgia,serif;font-size:2rem;line-height:1;margin:0}.service-body dl{margin:0;display:grid;gap:12px}.service-body dt{font-size:.76rem;text-transform:uppercase;letter-spacing:.14em;font-weight:900;color:var(--moss)}.service-body dd{margin:2px 0 0;color:var(--muted)}.card-cta{margin-top:auto;color:var(--forest);font-weight:900}.transformation-section{background:var(--charcoal);color:#fff;position:relative;overflow:hidden}.transformation-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 18%,rgba(216,170,77,.18),transparent 34%)}.transformation-grid{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center}.transformation-grid p{color:#d8e0d4}.transformation-points{display:grid;gap:12px;margin:24px 0}.transformation-points div{border:1px solid var(--line-dark);background:rgba(255,255,255,.06);padding:18px}.transformation-points b{color:var(--gold-2);display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem}.cinematic-before-after{display:grid;grid-template-columns:.85fr 1.15fr;gap:10px;align-items:stretch}.cinematic-before-after figure{position:relative;margin:0;min-height:520px;overflow:hidden;background:#000}.cinematic-before-after img{width:100%;height:100%;object-fit:cover;opacity:.92}.cinematic-before-after figcaption{position:absolute;left:14px;bottom:14px;background:rgba(0,0,0,.68);color:#fff;padding:9px 11px;font-weight:900}.case-preview{background:var(--cream)}.case-stack{display:grid;gap:24px}.case-card{display:grid;grid-template-columns:.95fr 1.05fr;background:var(--white);border:1px solid var(--line);box-shadow:0 20px 58px rgba(7,10,8,.10)}.case-images{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#000}.case-images figure{position:relative;margin:0;min-height:360px}.case-images img{width:100%;height:100%;object-fit:cover;opacity:.92}.case-images figcaption{position:absolute;left:12px;top:12px;background:rgba(7,10,8,.72);color:#fff;padding:8px 10px;font-weight:900}.case-copy{padding:34px;align-self:center}.case-copy h3{font-family:'Fraunces',Georgia,serif;font-size:clamp(2rem,4vw,3.15rem);line-height:.98;margin:10px 0}.case-tag{display:inline-flex;background:var(--forest);color:#fff;padding:7px 10px;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.11em}.case-copy p{color:var(--muted)}.case-copy b{color:var(--ink)}.clay-section{background:linear-gradient(135deg,#ece1d0,#f9f4ea)}.local-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:48px;align-items:center}.authority-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.authority-list div{background:rgba(255,255,255,.76);border:1px solid var(--line);padding:20px}.authority-list b{display:block;font-size:1.18rem;margin-bottom:6px}.authority-list span{color:var(--muted)}.quote-section{background:var(--white)}.quote-grid{display:grid;grid-template-columns:1fr .85fr;gap:42px;align-items:start}.quote-panel{background:var(--pine);color:#fff;padding:34px;box-shadow:var(--shadow)}.quote-panel h2{font-family:'Fraunces',Georgia,serif;font-size:clamp(2rem,4vw,3.15rem);line-height:.95;margin:8px 0 12px}.quote-panel p{color:#dce6d7}.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.quote-form .full{grid-column:1/-1}.field label{display:block;font-size:.76rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900;color:#e8eddc;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;min-height:48px;border:1px solid rgba(255,255,255,.34);background:rgba(255,255,255,.08);color:#fff;padding:13px 14px}.field input::placeholder,.field textarea::placeholder{color:#c3d1c0}.field textarea{min-height:104px;resize:vertical}.field select option{color:#111}.form-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.success{display:none;width:100%;background:#e9f7df;color:#10210f;padding:12px 14px;font-weight:900;margin-top:8px;border-left:4px solid #78a852}.cta-proof{padding:8px 0}.review-stack{display:grid;gap:12px;margin:20px 0}.review-stack blockquote{margin:0;background:var(--cream);border-left:4px solid var(--gold);padding:20px;color:var(--ink);font-weight:850;font-size:1.02rem;line-height:1.45}.reviews-section{background:var(--white)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review-grid blockquote{margin:0;background:var(--cream);border:1px solid var(--line);padding:24px;box-shadow:0 16px 42px rgba(7,10,8,.07)}.review-grid p{font-size:1.05rem;line-height:1.5;font-weight:850;margin:10px 0 0}.stars{color:var(--gold);font-size:1.15rem;letter-spacing:.08em;font-weight:900}.check-list{display:grid;gap:12px;padding:0;margin:22px 0 0;list-style:none}.check-list li{padding-left:30px;position:relative;color:var(--muted);font-weight:800}.check-list li:before{content:"✓";position:absolute;left:0;top:0;color:var(--forest);font-weight:900}.page-hero{position:relative;min-height:560px;background:#070a08;color:#fff;display:grid;align-items:end;overflow:hidden}.premium-page-hero .page-hero-image{position:absolute;inset:0}.premium-page-hero .page-hero-image img{width:100%;height:100%;object-fit:cover;filter:saturate(1.02) contrast(1.08)}.page-hero-content{position:relative;z-index:2;max-width:900px;padding:130px 0 64px;margin-inline:calc((100% - min(var(--max),calc(100% - 44px))) / 2)}.page-hero h1{font-family:'Fraunces',Georgia,serif;font-size:clamp(3rem,7vw,6.5rem);line-height:.88;letter-spacing:-.06em;margin:12px 0 18px}.page-hero p:not(.eyebrow):not(.crumb){font-size:1.22rem;max-width:760px;color:#e5ecdf}.problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.problem-card{padding:34px;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end}.problem-card.dark{background:var(--pine);color:#fff}.problem-card.light-card{background:var(--white);border:1px solid var(--line)}.problem-card.dark h2{color:#fff}.problem-card.light-card h2{color:var(--ink)}.areas{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.area{background:var(--white);border:1px solid var(--line);padding:20px;font-weight:900}.area span{display:block;color:var(--muted);font-weight:700;margin-top:5px;font-size:.9rem}.process-timeline{display:grid;gap:12px;margin:20px 0}.process-timeline div{display:grid;grid-template-columns:110px 1fr;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}.process-timeline b{color:var(--forest)}.process-timeline span{color:var(--muted)}.review-doc{max-width:900px;background:#fff;padding:46px;border:1px solid var(--line);box-shadow:var(--shadow)}.review-doc h1{font-family:'Fraunces',Georgia,serif;font-size:3.5rem;line-height:.95}.review-doc h2{margin-top:28px}.footer{background:var(--black);color:#dce6d7;padding:64px 0 104px}.footer-grid{display:grid;grid-template-columns:1.25fr .75fr .75fr .9fr;gap:34px}.footer h2{font-size:.92rem;text-transform:uppercase;letter-spacing:.13em;color:#fff}.footer p{color:#bac6b8}.footer a{display:block;color:#dce6d7;margin:8px 0}.footer .brand{display:flex}.footer-brand strong{color:#fff}.footer-brand small{color:#bac6b8}.sticky-mobile{display:none;position:fixed;left:0;right:0;bottom:0;z-index:100;background:rgba(247,242,232,.96);border-top:1px solid var(--line);padding:10px 12px;gap:10px}.sticky-mobile .btn{flex:1}
@media (prefers-reduced-motion: reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:1050px){.links,.nav-actions{display:none}.mobile-menu{display:inline-flex}.hero-content{grid-template-columns:1fr;padding-top:96px}.hero-proof-card{max-width:620px}.trust-grid{grid-template-columns:repeat(2,1fr)}.service-matrix{grid-template-columns:repeat(2,1fr)}.case-card,.quote-grid,.transformation-grid,.local-grid,.intro-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.links.open{display:flex;position:absolute;left:22px;right:22px;top:82px;background:var(--white);border:1px solid var(--line);box-shadow:var(--shadow);padding:16px;flex-direction:column;align-items:stretch;gap:0}.links.open a{padding:14px}.links.open a:after{display:none}}
@media(max-width:760px){.topbar{display:none}.container{width:min(100% - 32px,var(--max))}.section{padding:66px 0}.nav{height:72px}.brand img{width:48px;height:48px}.brand small{display:none}.hero-v2{min-height:700px}.hero-content{padding:70px 0 34px;gap:24px}.hero-copy h1{font-size:clamp(3.1rem,16vw,4.8rem)}.hero-lead{font-size:1.08rem}.hero-proof-card{display:none}.trust-grid,.service-matrix,.authority-list,.problem-grid,.areas,.review-grid{grid-template-columns:1fr}.trust-feature,.trust-logo{min-height:auto}.premium-service img{height:220px}.cinematic-before-after,.case-images{grid-template-columns:1fr}.cinematic-before-after figure{min-height:310px}.case-card{display:block}.case-images figure{min-height:260px}.case-copy{padding:24px}.quote-form{grid-template-columns:1fr}.form-actions .btn{width:100%}.page-hero{min-height:520px}.page-hero-content{padding:84px 0 42px}.page-hero h1{font-size:clamp(2.8rem,15vw,4.5rem)}.process-timeline div{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.sticky-mobile{display:flex}.above-fold-trust span{font-size:.82rem}.cta-row .btn{width:100%}.section-heading h2,.intro-grid h2,.transformation-grid h2,.local-grid h2,.cta-proof h2,.problem-card h2{font-size:clamp(2.2rem,13vw,3.6rem)}}
@media(max-width:430px){.container{width:min(100% - 26px,var(--max))}.quote-panel{padding:24px}.review-doc{padding:24px}.hero-copy h1{letter-spacing:-.075em}.topbar-inner{padding:0}}

/* V2.2 professional typography + cleaner mid-page presentation */
:root{--font-body:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--font-display:'Manrope','Inter',system-ui,sans-serif;--radius:0px;--shadow:0 18px 44px rgba(7,10,8,.10)}
body{font-family:var(--font-body);letter-spacing:-.01em;text-rendering:optimizeLegibility}
.hero-copy h1,.section-heading h2,.intro-grid h2,.transformation-grid h2,.local-grid h2,.cta-proof h2,.problem-card h2,.hero-proof-card h2,.service-body h3,.case-copy h3,.page-hero h1,.quote-panel h2,.review-doc h1{font-family:var(--font-display)!important;letter-spacing:-.028em!important;line-height:1.02!important;font-weight:800!important;font-variation-settings:normal!important;text-wrap:balance}
.hero-copy h1{font-size:clamp(3rem,6.6vw,6.4rem)!important;line-height:.96!important;max-width:1060px}.page-hero h1{line-height:.98!important}.section-heading h2,.intro-grid h2,.transformation-grid h2,.local-grid h2,.cta-proof h2{font-size:clamp(2rem,4.2vw,4.1rem)!important}.section-heading p,.intro-grid p,.transformation-grid p,.local-grid p,.cta-proof p{font-size:1.05rem;line-height:1.62}.eyebrow{letter-spacing:.115em!important;font-size:.74rem!important}.section{padding:82px 0}.intro-grid{grid-template-columns:.95fr 1.05fr;gap:54px}.intro-section{background:#fff}.service-matrix{grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.premium-service{box-shadow:none;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.premium-service img{height:245px}.service-body{padding:26px}.service-body h3{font-size:1.55rem!important;line-height:1.12!important}.service-body dl{gap:10px}.service-body dt{letter-spacing:.105em}.service-body dd{line-height:1.48}.card-cta{padding-top:6px}.service-directory{background:#f7f2e8}.service-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-group{background:#fff;border:1px solid var(--line);padding:24px;box-shadow:none}.service-group h3{font-family:var(--font-display);font-size:1.22rem;line-height:1.15;margin:0 0 14px;font-weight:800}.service-group ul{margin:0;padding:0;list-style:none;display:grid;gap:9px}.service-group li{color:var(--muted);line-height:1.35;padding-left:18px;position:relative}.service-group li:before{content:'•';position:absolute;left:0;color:var(--gold);font-weight:900}.transformation-section{background:#171b16}.transformation-points div{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.045)}.cinematic-before-after{gap:14px}.cinematic-before-after figure{min-height:460px}.cinematic-before-after img,.case-images img,.premium-service img,.page-hero-image img,.hero-media img{filter:saturate(1.02) contrast(1.03)}.case-card{box-shadow:none;border:1px solid var(--line);grid-template-columns:1fr 1fr}.case-copy{padding:40px}.case-copy h3{font-size:clamp(1.8rem,3vw,2.8rem)!important}.case-tag{letter-spacing:.08em}.review-grid blockquote,.review-stack blockquote{font-weight:700}.review-grid p{font-weight:700}.trust-feature strong{font-family:var(--font-display);letter-spacing:-.03em}.authority-list div,.problem-card,.quote-panel,.review-grid blockquote{box-shadow:none}.areas{grid-template-columns:repeat(3,1fr)}
@media(max-width:1050px){.service-matrix{grid-template-columns:repeat(2,1fr)}.service-groups{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.service-matrix,.service-groups,.review-grid{grid-template-columns:1fr}.hero-copy h1{font-size:clamp(2.55rem,13vw,4rem)!important}.section{padding:62px 0}.premium-service img{height:235px}.cinematic-before-after figure{min-height:300px}.case-copy{padding:24px}}

/* V2.3 service focus + clean photo grid */
.focused-services{grid-template-columns:repeat(3,1fr)}
.mini-list{margin:18px 0 0;padding:0;list-style:none;display:grid;gap:8px}
.mini-list li{position:relative;padding-left:18px;color:var(--muted);line-height:1.38;font-size:.94rem}
.mini-list li:before{content:'•';position:absolute;left:0;color:var(--gold);font-weight:900}
.work-section{background:#fffdf8}
.work-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.work-photo{margin:0;background:#fff;border:1px solid var(--line);overflow:hidden;box-shadow:0 16px 34px rgba(7,10,8,.08)}
.work-photo img{width:100%;height:315px;object-fit:cover;filter:saturate(1.02) contrast(1.04)}
.work-photo figcaption{padding:14px 16px;font-weight:900;color:var(--ink);font-size:.95rem;background:#fff}
@media(max-width:1050px){.work-photo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.focused-services,.work-photo-grid{grid-template-columns:1fr}.work-photo img{height:260px}.mini-list{grid-template-columns:1fr}}

/* V2.4 delayed free-quote popup */
body.quote-popup-open{overflow:hidden}
.quote-popup[hidden]{display:none!important}
.quote-popup{position:fixed;inset:0;z-index:999;display:grid;place-items:center;padding:22px}
.quote-popup-backdrop{position:absolute;inset:0;background:rgba(5,8,6,.72);backdrop-filter:blur(8px)}
.quote-popup-card{position:relative;z-index:1;width:min(880px,100%);max-height:min(92vh,820px);overflow:auto;background:#fffdf8;color:var(--ink);border:1px solid rgba(216,170,77,.55);box-shadow:0 36px 120px rgba(0,0,0,.42);display:grid;grid-template-columns:.92fr 1.08fr;gap:0}
.quote-popup-copy{background:linear-gradient(145deg,var(--pine),#122d1e);color:#fff;padding:34px;display:flex;flex-direction:column;justify-content:center}
.quote-popup-copy h2{font-family:var(--font-display);font-size:clamp(2rem,4vw,3.15rem);line-height:1;margin:8px 0 14px;letter-spacing:-.035em}
.quote-popup-copy p{color:#e7ecdf;margin:0 0 18px;line-height:1.55}
.popup-trust{display:grid;gap:9px;margin-top:8px}
.popup-trust span{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);padding:10px 12px;font-weight:900;font-size:.9rem}
.popup-form{padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:14px;background:#fffdf8}
.popup-form .field label{color:var(--ink)}
.popup-form .field input,.popup-form .field textarea{background:#fff;color:var(--ink);border:1px solid #d8cbb7}
.popup-form .field input::placeholder,.popup-form .field textarea::placeholder{color:#6f756c}
.popup-form textarea{min-height:96px}
.quote-popup-close{position:absolute;right:14px;top:14px;z-index:3;width:42px;height:42px;border:0;background:rgba(7,10,8,.88);color:#fff;font-size:28px;line-height:1;cursor:pointer;font-weight:300}
.quote-popup-close:hover{background:var(--gold);color:#151007}
@media(max-width:760px){.quote-popup{padding:12px;place-items:end center}.quote-popup-card{grid-template-columns:1fr;max-height:88vh}.quote-popup-copy{padding:24px}.popup-form{grid-template-columns:1fr;padding:22px}.popup-trust{grid-template-columns:1fr}.quote-popup-copy h2{font-size:2rem}}

/* V3.1 Why Terramorph / about page */
.about-hero .page-hero-image img{object-position:center 58%}
.about-intro-section{background:#fffdf8}
.about-split{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:stretch}
.about-split h2,.process-feature h2{font-family:var(--font-display);font-size:clamp(2.1rem,4.4vw,4.35rem);line-height:1.02;letter-spacing:-.028em;margin:8px 0 18px;font-weight:800;text-wrap:balance}
.about-split p,.process-feature p{font-size:1.05rem;line-height:1.65;color:var(--muted);max-width:780px}
.about-proof-card{background:linear-gradient(145deg,var(--pine),#18281c);color:#fff;border:1px solid rgba(216,170,77,.45);padding:34px;display:flex;flex-direction:column;justify-content:flex-end;min-height:360px;box-shadow:0 24px 54px rgba(7,10,8,.16)}
.about-proof-card span{color:var(--gold-2);font-weight:900;text-transform:uppercase;letter-spacing:.115em;font-size:.74rem;margin-bottom:14px}
.about-proof-card strong{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.05;letter-spacing:-.025em;max-width:540px}
.about-proof-card p{color:#dce5d9;margin:16px 0 0}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.why-grid div{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);padding:24px;min-height:210px;display:flex;flex-direction:column;gap:12px}
.why-grid b{color:#fff;font-size:1.08rem;line-height:1.2}
.why-grid span{color:#d4ddcf;line-height:1.52}
.process-section{background:#fff}
.process-feature{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:start}
.process-timeline.large{background:#f7f2e8;border:1px solid var(--line);padding:18px;box-shadow:0 18px 40px rgba(7,10,8,.08)}
.process-timeline.large div{background:#fffdf8;border-color:var(--line);padding:20px}
@media(max-width:1050px){.about-split,.process-feature{grid-template-columns:1fr}.why-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.why-grid{grid-template-columns:1fr}.about-proof-card{min-height:auto;padding:26px}.about-split,.process-feature{gap:28px}.about-split h2,.process-feature h2{font-size:clamp(2.1rem,12vw,3.45rem)}}

/* V3.2 homepage flow + named reviews */
.homepage-intro{background:#fff;border-bottom:1px solid var(--line)}
.problem-picker{background:#fffdf8;padding-top:92px}.problem-choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.problem-choice{background:#fff;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px;min-height:292px;display:flex;flex-direction:column;align-items:flex-start;transition:background .18s ease,transform .18s ease,color .18s ease}.problem-choice:hover{background:var(--pine);color:#fff;transform:translateY(-2px)}
.problem-choice span{width:42px;height:42px;border:1px solid var(--line);display:grid;place-items:center;font-weight:900;color:var(--gold);margin-bottom:24px}.problem-choice h3{font-family:var(--font-display);font-size:1.45rem;line-height:1.1;margin:0 0 12px;letter-spacing:-.02em}.problem-choice p{color:var(--muted);line-height:1.52;margin:0 0 22px}.problem-choice:hover p{color:#dce5d9}.problem-choice b{margin-top:auto;color:var(--moss)}.problem-choice:hover b{color:var(--gold-2)}
.transformation-home{background:var(--pine);color:#fff}.transformation-home-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:center}.transformation-home h2{font-family:var(--font-display);font-size:clamp(2.2rem,4.8vw,4.6rem);line-height:1;letter-spacing:-.035em;margin:8px 0 18px}.transformation-home p{color:#dce5d9;font-size:1.08rem;line-height:1.65;margin-bottom:26px}.outcome-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.outcome-grid div{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.055);padding:24px;min-height:210px;display:flex;flex-direction:column;gap:10px}.outcome-grid small{text-transform:uppercase;letter-spacing:.11em;color:var(--gold-2);font-weight:900}.outcome-grid b{font-size:1.18rem;line-height:1.18}.outcome-grid span{color:#d4ddcf;line-height:1.5}
.homepage-services{background:#f7f2e8}.homepage-proof{background:#fff}.home-process{background:#f7f2e8}
.review-grid blockquote,.review-stack blockquote{position:relative}.review-grid cite,.review-stack cite{display:block;margin-top:18px;color:var(--moss);font-style:normal;font-weight:900}.reviews-section .section-heading h2{max-width:820px}.compact-review cite{font-size:.92rem;margin-top:12px}.review-stack .compact-review .stars{font-size:.85rem;margin-bottom:8px}
@media(max-width:1050px){.problem-choice-grid,.transformation-home-grid{grid-template-columns:1fr 1fr}.outcome-grid{grid-template-columns:1fr}.problem-choice-grid{border-left:1px solid var(--line)}}
@media(max-width:760px){.problem-choice-grid,.transformation-home-grid{grid-template-columns:1fr}.problem-choice{min-height:auto}.outcome-grid{grid-template-columns:1fr}.transformation-home h2{font-size:clamp(2.25rem,12vw,3.8rem)}}

/* V3.3 capitalization + homepage spacing cleanup */
.homepage-intro{display:none!important}.problem-picker{padding-top:48px!important;padding-bottom:64px!important;background:#fffdf8}.problem-picker .section-heading{margin-bottom:28px!important}.problem-picker .section-heading h2{text-transform:none}.problem-choice-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;border:0!important}.problem-choice{border:1px solid var(--line)!important;border-radius:18px;min-height:218px!important;padding:24px!important;box-shadow:0 16px 42px rgba(29,48,29,.07)}.problem-choice span{border-radius:999px;margin-bottom:18px}.problem-choice h3{text-transform:capitalize}.problem-choice b{text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.transformation-home{padding-top:76px!important;padding-bottom:76px!important}.homepage-services,.homepage-proof,.home-process{padding-top:76px!important}.review-grid cite,.review-stack cite{text-transform:none}
@media(max-width:900px){.problem-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.problem-choice{min-height:190px!important}}
@media(max-width:560px){.problem-picker{padding-top:36px!important;padding-bottom:48px!important}.problem-choice-grid{grid-template-columns:1fr!important}.problem-choice{min-height:auto!important;padding:22px!important}.transformation-home{padding-top:58px!important;padding-bottom:58px!important}}

/* V3.4 compact project selector replaces stacked cards */
.problem-picker,.problem-choice-grid,.problem-choice{display:none!important}.project-selector{background:#fffdf8!important;padding:34px 0!important;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-selector-inner{display:grid!important;grid-template-columns:minmax(280px,.75fr) minmax(0,1.65fr);gap:28px;align-items:center}.selector-copy h2{font-family:var(--font-display);font-size:clamp(2rem,3.2vw,3.5rem);line-height:.98;letter-spacing:-.035em;margin:8px 0 10px;color:var(--ink)}.selector-copy p:not(.eyebrow){margin:0;color:var(--muted);line-height:1.5;max-width:520px}.selector-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.selector-option{display:grid;grid-template-columns:44px 1fr auto;grid-template-areas:'num title action' 'num copy action';gap:3px 14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 18px;box-shadow:0 12px 34px rgba(29,48,29,.06);transition:transform .18s ease,background .18s ease,border-color .18s ease}.selector-option:hover{transform:translateY(-2px);background:var(--pine);border-color:var(--pine);color:#fff}.selector-option span{grid-area:num;width:38px;height:38px;border-radius:999px;display:grid;place-items:center;background:#f2eadc;color:var(--moss);font-weight:900}.selector-option b{grid-area:title;font-size:1.06rem;text-transform:capitalize}.selector-option small{grid-area:copy;color:var(--muted);line-height:1.35;font-size:.86rem}.selector-option em{grid-area:action;font-style:normal;color:var(--moss);font-weight:900;font-size:.8rem;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap}.selector-option:hover small{color:#dce5d9}.selector-option:hover span{background:var(--gold);color:#192619}.selector-option:hover em{color:var(--gold-2)}
@media(max-width:980px){.project-selector-inner{grid-template-columns:1fr;gap:20px}.selector-options{grid-template-columns:repeat(2,minmax(0,1fr))}.project-selector{padding:28px 0!important}}
@media(max-width:560px){.selector-options{grid-template-columns:1fr}.selector-option{grid-template-columns:38px 1fr;grid-template-areas:'num title' 'num copy' 'num action';padding:16px}.selector-option em{margin-top:6px}.project-selector{padding:24px 0!important}.selector-copy h2{font-size:2.35rem}}

/* V3.5 final selector: no stacked card column */
.project-selector{padding:28px 0 30px!important}.project-selector-inner{display:block!important}.selector-copy{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}.selector-copy h2{font-size:clamp(2rem,3vw,3.1rem)!important;margin:6px 0 0!important}.selector-copy p:not(.eyebrow){max-width:520px;font-size:.98rem}.selector-options{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}.selector-option{display:flex!important;flex-direction:column;align-items:flex-start;gap:8px;min-height:148px!important;padding:18px!important}.selector-option span{width:34px;height:34px;font-size:.8rem}.selector-option b{font-size:1.08rem;line-height:1.1}.selector-option small{font-size:.82rem;line-height:1.32}.selector-option em{margin-top:auto;font-size:.76rem}
@media(max-width:900px){.selector-copy{display:block}.selector-options{grid-template-columns:repeat(2,minmax(0,1fr))!important}.selector-option{min-height:132px!important}}
@media(max-width:560px){.selector-options{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.selector-option{padding:14px!important;min-height:126px!important}.selector-option small{display:none}.selector-option em{font-size:.68rem}.selector-copy h2{font-size:2rem!important}.selector-copy p:not(.eyebrow){font-size:.92rem}}

/* V3.8 readability audit fixes: darker green labels + black subheadings on light cards */
:root{--moss:#1f4f2f;--muted:#374239;--readable-green:#174829;--readable-ink:#101713}
.eyebrow:not(.light),.review-grid cite,.review-stack cite,.selector-option em,.mini-list li:before{color:var(--readable-green)!important}.section-heading h2,.intro-grid h2,.local-grid h2,.cta-proof h2,.process-feature h2,.about-split h2,.quote-panel h2,.service-body h3,.case-copy h3,.process-timeline b,.selector-option b{color:var(--readable-ink)!important}.section-heading p,.intro-grid p,.local-grid p,.cta-proof p,.about-split p,.process-feature p,.mini-list li,.service-body p,.case-copy p{color:var(--muted)!important}
/* The About page feature grid was too low-contrast. Make it light, crisp, and readable. */
.why-grid div{background:#fff!important;border:1px solid #d8cbb7!important;box-shadow:0 16px 38px rgba(29,48,29,.08);color:var(--readable-ink)!important}.why-grid b{color:var(--readable-ink)!important;font-weight:900}.why-grid span{color:#263b2d!important}.about-proof-card span{color:#f1d384!important}.about-proof-card p{color:#eef4ea!important}.about-proof-card strong{color:#fff!important}
/* Keep dark panels intentionally light-on-dark while improving body contrast. */
.transformation-home h2,.transformation-home .eyebrow,.transformation-home .outcome-grid b,.transformation-home .outcome-grid small,.quote-popup-copy h2,.quote-popup-copy .eyebrow{color:#fff!important}.transformation-home p,.outcome-grid span,.quote-popup-copy p{color:#eef4ea!important}.trust-feature small,.hero-proof-card p,.hero-proof-card small{color:#e9f0e4!important}
/* Buttons and labels */
.btn-outline-light{color:#fff!important;border-color:rgba(255,255,255,.7)!important;background:rgba(0,0,0,.18)!important}.btn-outline-light:hover{background:#fff!important;color:#101713!important}.field label,.popup-form .field label{color:#101713!important}.quote-popup-form label{color:#101713!important}

/* V3.9 readability follow-up: dark quote sections + clean dark/light scopes */
.quote-section{background:#171b16!important;color:#fff!important}.quote-section .cta-proof h2,.quote-section .cta-proof p,.quote-section .cta-proof li,.quote-section .cta-proof .process-timeline b{color:#fff!important}.quote-section .cta-proof .eyebrow,.quote-section .cta-proof .eyebrow.light{color:#f1d384!important}.quote-section .cta-proof .process-timeline span{color:#e7eee2!important}.quote-panel h2{color:#fff!important}.quote-panel p{color:#dce6d7!important}.quote-panel .eyebrow,.quote-panel .eyebrow.light{color:#f1d384!important}.quote-panel .field label{color:#e8eddc!important}.quote-panel .field input,.quote-panel .field select,.quote-panel .field textarea{color:#fff!important;background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.34)!important}.popup-form .field label,.quote-popup-card .field label{color:#101713!important}.popup-form .field input,.popup-form .field textarea{color:#101713!important;background:#fff!important;border-color:#d8cbb7!important}.trust-band .trust-feature span,.trust-band .trust-logo span{color:#fff!important}.trust-band .trust-feature small{color:#e9f0e4!important}
.about-proof-card span{color:#f1d384!important}.about-proof-card strong{color:#fff!important}.about-proof-card p{color:#eef4ea!important}

/* V3.10 final readability sweep: quote grid side panels + review cards */
.quote-grid > .cta-proof h2{color:#fff!important}.quote-grid > .cta-proof p:not(.eyebrow),.quote-grid > .cta-proof li{color:#e9f0e4!important}.quote-grid > .cta-proof .eyebrow,.quote-grid > .cta-proof .eyebrow.light{color:#f1d384!important}.quote-grid > .cta-proof .check-list li{color:#e9f0e4!important}.quote-grid > .cta-proof .process-timeline b{color:#fff!important}.quote-grid > .cta-proof .process-timeline span{color:#e9f0e4!important}
.review-stack blockquote p,.review-grid blockquote p{color:#101713!important}.review-stack blockquote cite,.review-grid blockquote cite{color:#174829!important}.review-stack .stars,.review-grid .stars{color:#9b6b12!important}.compact-review p{color:#101713!important}
.about-proof-card{background:linear-gradient(145deg,#0d2418,#18281c)!important}.about-proof-card span{color:#f1d384!important}.about-proof-card strong{color:#fff!important}.about-proof-card p{color:#eef4ea!important}.about-proof-card .eyebrow{color:#f1d384!important}
.cinematic-before-after figure,.case-images figure{position:relative}.cinematic-before-after figcaption,.case-images figcaption{color:#fff!important;text-shadow:0 2px 10px rgba(0,0,0,.9)}.cinematic-before-after figure:before,.case-images figure:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.68));z-index:1;pointer-events:none}.cinematic-before-after figcaption,.case-images figcaption{position:relative;z-index:2}

/* V3.11 hard review readability fix: review cards always dark-on-light */
.review-grid blockquote,.review-stack blockquote,.quote-grid > .cta-proof .review-stack blockquote,.quote-section .review-stack blockquote{background:#fffdf8!important;color:#101713!important;border-left:4px solid #c9952d!important;border-color:#e6d8bd!important;box-shadow:0 14px 32px rgba(7,10,8,.12)!important}.review-grid blockquote p,.review-stack blockquote p,.quote-grid > .cta-proof .review-stack blockquote p,.quote-section .review-stack blockquote p,.cta-proof .review-stack blockquote p,.compact-review p{color:#101713!important;text-shadow:none!important}.review-grid blockquote cite,.review-stack blockquote cite,.quote-grid > .cta-proof .review-stack blockquote cite,.quote-section .review-stack blockquote cite,.cta-proof .review-stack blockquote cite{color:#174829!important;text-shadow:none!important;font-weight:900!important}.review-grid .stars,.review-stack .stars,.quote-grid > .cta-proof .review-stack .stars,.quote-section .review-stack .stars,.cta-proof .review-stack .stars{color:#9b6b12!important;text-shadow:none!important}.review-grid blockquote *,.review-stack blockquote *,.quote-grid > .cta-proof .review-stack blockquote *,.quote-section .review-stack blockquote *{text-shadow:none!important}.quote-grid > .cta-proof .review-stack,.quote-section .review-stack{background:transparent!important}

/* V3.12 extra-safe review star contrast */
.review-grid .stars,.review-stack .stars,.quote-grid > .cta-proof .review-stack .stars,.quote-section .review-stack .stars,.cta-proof .review-stack .stars{color:#7a4d00!important;text-shadow:none!important}

/* V3.18 cleaner problem-to-outcome presentation */
.refined-transformation{position:relative;overflow:hidden;background:linear-gradient(135deg,#0d2418 0%,#173721 52%,#0b1711 100%)!important;color:#fff!important;padding:92px 0!important}
.refined-transformation:before{content:"";position:absolute;inset:-40% -10% auto auto;width:640px;height:640px;border-radius:999px;background:radial-gradient(circle,rgba(201,149,45,.24),rgba(201,149,45,0) 64%);pointer-events:none}
.refined-transformation:after{content:"";position:absolute;left:-180px;bottom:-260px;width:520px;height:520px;border-radius:999px;background:radial-gradient(circle,rgba(255,255,255,.10),rgba(255,255,255,0) 66%);pointer-events:none}
.transformation-header{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,.65fr);gap:38px;align-items:end;margin-bottom:34px}.transformation-header h2{font-family:var(--font-display);font-size:clamp(2.35rem,4.7vw,5rem);line-height:.96;letter-spacing:-.045em;margin:8px 0 0;color:#fff!important;text-wrap:balance}.transformation-header p:not(.eyebrow){color:#e8efe4!important;font-size:1.06rem;line-height:1.65;margin:0;max-width:610px}.transformation-header .eyebrow{color:#f1d384!important}
.outcome-board{position:relative;z-index:1;display:grid;gap:14px}.outcome-row{display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);align-items:stretch;gap:0;background:rgba(255,253,248,.96);border:1px solid rgba(241,211,132,.34);box-shadow:0 22px 54px rgba(0,0,0,.22);border-radius:24px;overflow:hidden;color:#101713!important}.outcome-row.featured{border-color:rgba(241,211,132,.74);box-shadow:0 28px 70px rgba(0,0,0,.30)}.outcome-problem,.outcome-result{padding:26px 28px;display:flex;flex-direction:column;gap:9px}.outcome-problem{background:#fffdf8}.outcome-result{background:linear-gradient(135deg,#f4ead8,#fffaf0)}.outcome-row small{width:max-content;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:950;padding:7px 10px;border-radius:999px}.outcome-problem small{background:#eee4d4;color:#2f382f!important}.outcome-result small{background:#173721;color:#f1d384!important}.outcome-row b{display:block;font-family:var(--font-display);font-size:clamp(1.35rem,2.2vw,1.9rem);line-height:1.05;letter-spacing:-.03em;color:#101713!important}.outcome-row span{display:block;color:#344338!important;line-height:1.52;font-size:.98rem}.outcome-arrow{display:grid;place-items:center;background:#173721;color:#f1d384;font-size:2rem;font-weight:950}.outcome-row:hover{transform:translateY(-2px);transition:transform .18s ease,box-shadow .18s ease;box-shadow:0 30px 76px rgba(0,0,0,.32)}
@media(max-width:900px){.transformation-header{grid-template-columns:1fr;gap:18px}.outcome-row{grid-template-columns:1fr}.outcome-arrow{height:44px;transform:rotate(90deg)}.refined-transformation{padding:70px 0!important}}
@media(max-width:560px){.refined-transformation{padding:58px 0!important}.transformation-header{margin-bottom:24px}.outcome-problem,.outcome-result{padding:22px}.outcome-row{border-radius:18px}.outcome-row b{font-size:1.32rem}.outcome-row span{font-size:.94rem}.outcome-board{gap:12px}}


/* V3.19 removed disliked problem-to-outcome homepage block; premium photo-led featured work replacement */
.signature-work-home{background:#fffdf8;color:var(--ink);position:relative;overflow:hidden}
.signature-work-home:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(216,170,77,.10),rgba(13,36,24,.04) 45%,rgba(98,124,69,.10));pointer-events:none}
.signature-work-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);gap:44px;align-items:center}
.signature-copy{background:#f7f2e8;border:1px solid var(--line);padding:38px;box-shadow:0 22px 60px rgba(7,10,8,.10)}
.signature-copy h2{font-family:var(--font-display);font-size:clamp(2.35rem,4.9vw,4.9rem);line-height:.98;letter-spacing:-.045em;margin:8px 0 18px;color:var(--ink);text-wrap:balance}
.signature-copy p{font-size:1.06rem;line-height:1.65;color:var(--muted);margin:0 0 22px}
.signature-points{display:grid;gap:10px;margin:22px 0 26px}
.signature-points span{display:flex;gap:10px;align-items:center;font-weight:900;color:var(--forest)}
.signature-points span:before{content:"";width:9px;height:9px;background:var(--gold);display:inline-block;flex:0 0 auto}
.signature-gallery{display:grid;grid-template-columns:1.05fr .95fr;gap:14px;align-items:stretch}
.signature-card{position:relative;min-height:196px;overflow:hidden;background:#101712;color:#fff;box-shadow:0 22px 55px rgba(7,10,8,.18);isolation:isolate}
.signature-card.large{grid-row:span 3;min-height:620px}
.signature-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.05) contrast(1.05);transform:scale(1.01);transition:transform .24s ease}
.signature-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,8,6,.04),rgba(5,8,6,.78));z-index:1}
.signature-card span{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:22px;background:linear-gradient(180deg,rgba(13,36,24,0),rgba(13,36,24,.92))}
.signature-card b{display:block;font-family:var(--font-display);font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.05;margin-bottom:7px;letter-spacing:-.025em;color:#fff}
.signature-card small{display:block;color:#e8efe4;font-weight:700;line-height:1.4;max-width:420px}
.signature-card:hover img{transform:scale(1.045)}
@media(max-width:980px){.signature-work-layout{grid-template-columns:1fr}.signature-copy{padding:30px}.signature-gallery{grid-template-columns:1fr 1fr}.signature-card{min-height:245px}.signature-card.large{grid-row:auto;grid-column:span 2;min-height:430px}}
@media(max-width:620px){.signature-gallery{grid-template-columns:1fr}.signature-card.large{grid-column:auto;min-height:360px}.signature-card{min-height:280px}.signature-copy{padding:24px}.signature-copy h2{font-size:clamp(2.2rem,12vw,3.5rem)}}

/* V3.21 Outdoor Project Guides SEO/CRO pages */
.guide-index-section{background:#fffdf8}.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.guide-card{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--line);padding:26px;min-height:290px;box-shadow:0 16px 38px rgba(29,48,29,.07);transition:transform .18s ease,background .18s ease,border-color .18s ease}.guide-card:hover{transform:translateY(-2px);background:var(--pine);border-color:var(--pine);color:#fff}.guide-card span{color:var(--readable-green);font-weight:950;text-transform:uppercase;letter-spacing:.11em;font-size:.72rem;margin-bottom:18px}.guide-card:hover span{color:var(--gold-2)!important}.guide-card h3{font-family:var(--font-display);font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.06;letter-spacing:-.025em;margin:0 0 14px;color:#101713}.guide-card p{color:var(--muted);line-height:1.55;margin:0 0 22px}.guide-card b{margin-top:auto;color:var(--readable-green);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}.guide-card:hover h3,.guide-card:hover p{color:#eef4ea!important}.guide-card:hover b{color:var(--gold-2)!important}.guide-detail-section{background:#fff}.guide-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:46px;align-items:start}.guide-article{max-width:820px}.guide-kicker{font-weight:900;color:var(--readable-green);text-transform:uppercase;letter-spacing:.08em;font-size:.86rem;margin:0 0 28px}.guide-content-block{padding:0 0 30px;margin:0 0 30px;border-bottom:1px solid var(--line)}.guide-content-block:last-child{border-bottom:0}.guide-content-block h2{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,3rem);line-height:1.04;letter-spacing:-.03em;margin:0 0 14px;color:#101713}.guide-content-block p{font-size:1.08rem;line-height:1.72;color:#344338;margin:0}.guide-sidebar{position:sticky;top:112px}.guide-cta-card{background:linear-gradient(145deg,#0d2418,#18281c);color:#fff;border:1px solid rgba(216,170,77,.45);padding:28px;box-shadow:0 22px 54px rgba(7,10,8,.16)}.guide-cta-card h2{font-family:var(--font-display);font-size:2rem;line-height:1.04;letter-spacing:-.03em;margin:6px 0 12px;color:#fff!important}.guide-cta-card p:not(.eyebrow){color:#e9f0e4;line-height:1.55}.guide-cta-card .btn{width:100%;margin-top:10px}.related-guides .guide-card{min-height:245px}.guides-hero .page-hero-image img,.guide-detail-hero .page-hero-image img{filter:saturate(1.02) contrast(1.08)}
@media(max-width:1050px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-layout{grid-template-columns:1fr}.guide-sidebar{position:static}.guide-cta-card .btn{width:auto}}
@media(max-width:680px){.guide-grid{grid-template-columns:1fr}.guide-card{min-height:auto;padding:22px}.guide-content-block p{font-size:1rem}.guide-cta-card .btn{width:100%}}

/* V3.22 Jobber CRM quote embed + city/service SEO pages */
.jobber-quote-panel{background:linear-gradient(145deg,#1a2119,#0f1611)!important;border:1px solid rgba(241,211,132,.28)}
.jobber-embed-wrap{background:#fff;border:1px solid rgba(255,255,255,.18);margin-top:22px;min-height:520px;padding:10px;box-shadow:0 22px 60px rgba(0,0,0,.24)}
.jobber-fallback{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}.jobber-fallback p{margin:0;color:#e8efe3!important;flex:1 1 260px}
.quote-popup-simple{grid-template-columns:.95fr 1.05fr}.popup-direct-actions{padding:34px;display:flex;flex-direction:column;justify-content:center;gap:14px;background:#fffdf8}.popup-direct-actions h3{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,2.8rem);line-height:1;margin:0;color:var(--ink)}.popup-direct-actions p{color:#4f5a50;line-height:1.55}.popup-direct-actions .btn{width:max-content}
.city-service-card h3{font-size:1.35rem!important;line-height:1.1!important}.city-service-hero .page-hero-content{max-width:980px}
@media(max-width:760px){.jobber-embed-wrap{min-height:620px;padding:4px}.quote-popup-simple{grid-template-columns:1fr}.popup-direct-actions .btn{width:100%;justify-content:center}}

/* Hide Jobber embed security/error fallback and show direct CRM link instead when needed */
.jobber-embed-unavailable .jobber-embed-wrap{display:none}.jobber-embed-wrap .jobber-flash--error{display:none!important}


/* V3.24 privacy/legal page */
.legal-page{background:#fffdf8}.narrow-copy{max-width:860px;background:#fff;border:1px solid var(--line);box-shadow:0 22px 70px rgba(7,10,8,.08);padding:44px}.narrow-copy h2{font-family:var(--font-display);font-size:clamp(1.45rem,2.4vw,2.2rem);line-height:1.08;letter-spacing:-.025em;margin:30px 0 10px;color:var(--readable-ink,#101713)}.narrow-copy p{font-size:1.02rem;line-height:1.72;color:var(--muted);margin:0 0 16px}.narrow-copy a{color:var(--readable-green,#174829);font-weight:900;text-decoration:underline;text-underline-offset:3px}.footer a[href="privacy.html"]{color:var(--gold-2);font-weight:900}
@media(max-width:760px){.narrow-copy{padding:28px}.narrow-copy p{font-size:.98rem}}
