@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--green:#103f2b;--green2:#18553b;--leaf:#7a9d6d;--gold:#e9b53d;--cream:#f9f7f0;--sand:#f2f0e7;--ink:#203027;--muted:#606c62;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #d5a21e;outline-offset:3px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{letter-spacing:-.035em;line-height:1.13}h1{font-size:clamp(3rem,6.2vw,5.7rem);font-weight:700}h2{font-size:clamp(2.3rem,4vw,3.8rem)}h3{font-size:1.3rem}h1 em,h2 em{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:500;letter-spacing:-.045em}p{font-size:1.04rem}.container{width:min(1160px,calc(100% - 48px));margin-inline:auto}.skip{position:absolute;left:-999px;top:0;padding:14px;background:#fff;z-index:99}.skip:focus{left:0}.site-header{background:#fff;position:sticky;top:0;z-index:40;box-shadow:0 2px 18px rgba(0,0,0,.08)}.header-in{height:84px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:8px;color:var(--green);font-size:1.08rem;font-weight:800;letter-spacing:.11em;line-height:1.05;white-space:nowrap}.brand small{display:block;letter-spacing:.2em;font-size:.71em;margin-top:4px}.brand-sun{font-size:2.2rem;line-height:1;color:#dca221}.site-nav{display:flex;align-items:center;gap:27px;margin-left:auto}.site-nav a{font-size:.9rem;font-weight:700;white-space:nowrap}.site-nav a:hover,.site-nav a[aria-current=page]{color:#996d0f}.header-call{font-size:.83rem;background:var(--green);padding:11px 17px;border-radius:4px;color:#fff;font-weight:700;white-space:nowrap}.header-call:hover,.btn.dark:hover{background:#246c49}.menu-toggle{display:none}.hero{min-height:650px;position:relative;background:var(--green);color:#fff;display:flex;align-items:center;overflow:hidden}.hero-visual,.hero-shade{position:absolute;inset:0}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 56%}.hero-shade{background:linear-gradient(90deg,rgba(9,44,29,.97) 0%,rgba(8,40,26,.84) 42%,rgba(9,39,26,.30) 100%)}.hero-content{position:relative;z-index:2;padding-block:100px 110px}.hero h1{max-width:780px;margin:25px 0}.hero h1 em{color:#f4cf76}.hero-content>p{max-width:560px;font-size:1.22rem;color:#f1f4ed}.eyebrow{font-size:.75rem;font-weight:800;color:#748948;letter-spacing:.2em;text-transform:uppercase}.eyebrow.light{color:#eccc7a}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0 44px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:15px 24px;border-radius:4px;font-size:.93rem;font-weight:800;transition:transform .18s,background .18s}.btn:hover{transform:translateY(-2px)}.btn.gold{background:var(--gold);color:#1e3328}.btn.gold:hover{background:#f7c657}.btn.light-outline{border:1px solid rgba(255,255,255,.75);color:#fff}.btn.dark{background:var(--green);color:#fff}.hero-note{font-size:.84rem;border-left:2px solid var(--gold);padding-left:15px;color:#dce7d8}.section{padding:100px 0}.section.tint{background:var(--cream)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.intro-copy h2{margin:18px 0 24px}.intro-copy p{color:var(--muted);max-width:520px}.text-link{display:inline-flex;gap:12px;border-bottom:2px solid var(--gold);padding:9px 0;font-weight:800;font-size:.94rem;margin-top:15px}.text-link:hover{color:var(--green2)}.intro-image{position:relative}.intro-image img{width:100%;height:460px;object-fit:cover;border-radius:3px}.image-label{position:absolute;bottom:-22px;left:-23px;background:var(--green);color:#fff;padding:23px 32px;display:flex;flex-direction:column;min-width:245px;box-shadow:0 14px 35px rgba(0,0,0,.14)}.image-label strong{font-family:Georgia,serif;font-size:1.6rem}.image-label span{font-size:.85rem;color:#e5d7a7}.section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:40px}.section-head h2{margin:12px 0 0;max-width:650px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:#fff;padding:38px 32px 32px;min-height:295px;display:flex;flex-direction:column;border:1px solid #e6e9e0;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(30,50,35,.08)}.service-icon{color:#9b7d2d;font-weight:800;font-size:.86rem;border-bottom:2px solid var(--gold);align-self:flex-start;padding-bottom:10px;margin-bottom:27px}.service-card h3{margin:0 0 10px}.service-card p{font-size:.94rem;color:var(--muted)}.card-arrow{margin-top:auto;align-self:flex-end;font-size:1.45rem;color:#7f964d}.home-gallery{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}.home-gallery figure,.photo-card{margin:0}.home-gallery img{width:100%;height:360px;object-fit:cover}.home-gallery figcaption{font-size:.88rem;font-weight:700;padding-top:14px}.cta{background:#133c2c;color:#fff;padding:78px 0}.cta-in{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{margin:12px 0}.cta p{color:#d8e2d8;margin:0}.cta-actions{display:flex;flex-direction:column;gap:12px;min-width:220px}.page-hero{background:#f2f3e9;padding:80px 0 90px;position:relative;overflow:hidden}.page-hero:after{content:'';width:290px;height:290px;border:55px solid rgba(188,171,82,.08);border-radius:50%;position:absolute;right:-90px;top:-120px;pointer-events:none}.page-hero h1{font-size:clamp(2.8rem,5.2vw,5rem);max-width:900px;margin:22px 0}.page-hero p{color:var(--muted);max-width:620px;font-size:1.18rem;margin:0}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;margin-bottom:90px}.detail-grid:last-child{margin-bottom:0}.detail-grid.reverse .detail-image{order:2}.detail-grid h2{margin:18px 0}.detail-grid p{color:var(--muted)}.detail-image img{width:100%;height:440px;object-fit:cover;border-radius:4px}.muted{color:var(--muted)}.note-band{background:var(--sand);padding:65px 0}.note-inner{display:flex;justify-content:space-between;align-items:center;gap:25px}.note-inner h2{font-size:2rem;margin-bottom:10px}.note-inner p{margin:0;max-width:680px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.value-grid>div{padding:30px;background:#fff}.value-grid span{color:#a0802f;font-weight:800}.value-grid h3{margin:20px 0 10px}.value-grid p{font-size:.94rem;color:var(--muted)}.photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 16px}.photo-card img{width:100%;height:320px;object-fit:cover;border-radius:3px}.photo-card figcaption{font-size:.82rem;color:var(--muted);padding:12px 5px}.gallery-note{max-width:680px;color:var(--muted);margin-bottom:30px}.pairs{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.pair{background:#fff;border-radius:4px;overflow:hidden}.pair>div{position:relative}.pair img{height:310px;width:100%;object-fit:cover}.pair-tag{position:absolute;top:14px;left:14px;padding:5px 12px;background:#fff;color:var(--green);font-weight:800;font-size:.72rem;letter-spacing:.1em;z-index:1}.after-tag{background:var(--gold)}.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:10%}.contact-grid h2{margin:20px 0}.contact-grid p{color:var(--muted)}.contact-options{display:grid;gap:12px;margin-top:30px}.contact-options>a{display:flex;align-items:center;gap:18px;padding:18px;border:1px solid #e2e7df;border-radius:4px}.contact-options>a:hover{background:#f7f8f4}.contact-icon{width:48px;height:48px;border-radius:50%;background:#eff2e7;color:var(--green);font-size:1.5rem;display:grid;place-items:center;font-weight:800}.contact-options a span:nth-child(2){display:flex;flex-direction:column;flex:1}.contact-options small{color:var(--muted)}.contact-panel{background:var(--cream);padding:45px}.contact-panel h3{font-family:Georgia,serif;font-size:2rem;margin:22px 0}.contact-panel ul{padding-left:20px;line-height:2}.contact-panel p{font-size:.92rem}.footer{background:#0e3023;color:#e8ede6;padding:66px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:65px}.footer-brand{font-weight:800;letter-spacing:.13em;font-size:1.35rem;color:#fff}.footer-brand span{display:block;font-size:.83rem;letter-spacing:.23em}.footer p{font-size:.88rem;color:#b9c9bd;margin:12px 0}.footer h3{font-size:.88rem;color:#e3cc8d;text-transform:uppercase;letter-spacing:.12em}.footer-grid a{display:block;font-size:.91rem;margin:13px 0;color:#e6e9df}.footer-grid a:hover{color:var(--gold)}.footer-bottom{margin-top:42px;border-top:1px solid #496252;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.74rem;color:#b9c9bd}
@media(max-width:1100px){.header-in{gap:15px}.site-nav{gap:16px}.header-call{display:none}}@media(max-width:790px){.header-in{height:70px}.menu-toggle{display:flex;margin-left:auto;background:none;border:0;flex-direction:column;gap:5px;padding:12px;cursor:pointer}.menu-toggle span{display:block;width:22px;height:2px;background:var(--green)}.site-nav{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:10px 24px 20px;box-shadow:0 12px 20px rgba(0,0,0,.1)}.site-nav.is-open{display:flex}.site-nav a{padding:13px;border-bottom:1px solid #edf0e8}.hero{min-height:580px}.hero-shade{background:linear-gradient(90deg,rgba(9,44,29,.95),rgba(9,44,29,.64))}.hero-content{padding:80px 0}.section{padding:70px 0}.intro-grid,.detail-grid,.contact-grid{grid-template-columns:1fr;gap:40px}.intro-image img{height:420px}.detail-grid.reverse .detail-image{order:0}.detail-grid{margin-bottom:60px}.service-grid{grid-template-columns:1fr 1fr}.home-gallery{grid-template-columns:1fr 1fr}.home-gallery figure:last-child{display:none}.photo-grid{grid-template-columns:repeat(2,1fr)}.pairs{grid-template-columns:1fr 1fr}.cta-in,.note-inner{flex-direction:column;align-items:flex-start}.cta-actions{flex-direction:row}.value-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:span 2}}@media(max-width:520px){.container{width:min(100% - 32px,1160px)}.brand{font-size:.92rem}.brand-sun{font-size:1.8rem}h1{font-size:2.85rem}.hero{min-height:560px}.hero h1{font-size:clamp(2.65rem,11vw,3.75rem)}.hero-content>p{font-size:1.05rem}.buttons{gap:10px}.btn{padding:13px 17px}.section-head{align-items:start;flex-direction:column;gap:12px}.intro-image img{height:370px}.image-label{left:0;bottom:-15px;padding:15px 20px;min-width:210px}.service-grid,.home-gallery,.photo-grid,.pairs{grid-template-columns:1fr}.home-gallery figure:last-child{display:block}.home-gallery img{height:290px}.service-card{min-height:235px}.photo-card img{height:360px}.pair img{height:350px}.cta-actions{flex-direction:column;width:100%}.contact-panel{padding:28px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:span 1}.footer-bottom{flex-direction:column}.page-hero{padding:65px 0}}

.brand-emblem{width:55px;height:51px;object-fit:contain}.brand-section{padding:20px 0 75px}.official-logo{width:min(660px,100%);margin-inline:auto}

/* TLC website v2 additions */
html{scroll-padding-top:105px}.header-call{background:var(--gold);color:#1e3328}.header-call:hover{background:#f7c657}.owner-copy p{margin-bottom:17px}.owner-line{color:var(--green)!important}.signature{font-weight:700;color:var(--green)!important;margin-top:22px}.signature small{font-size:.84rem;font-weight:500;color:var(--muted)}.owner-copy h2{margin-bottom:12px}.owner-copy{max-width:650px}.owner-copy p{font-size:1rem}.owner-copy+.intro-image{align-self:start}.owner-copy+.intro-image img{height:auto;max-height:840px;object-position:center 20%}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:10px}.comparison figure{margin:0;position:relative;overflow:hidden;border-radius:5px}.comparison img{width:100%;height:430px;object-fit:cover}.comparison figcaption{position:absolute;top:12px;left:12px;background:var(--white);color:var(--green);font-size:.72rem;font-weight:800;letter-spacing:.14em;padding:6px 12px}.comparison figure:last-child figcaption{background:var(--gold)}.detail-grid .comparison img{height:430px}.additional-grid .service-card{min-height:260px}.additional-grid .service-card h3{font-size:1.38rem}.thorpe-pairs{display:grid;grid-template-columns:1fr 1fr;gap:28px}.comparison-block{min-width:0}.comparison-block h3{font-size:1.15rem;margin-bottom:16px}.thorpe-pairs .comparison img{height:360px;object-position:center}.gallery-more{margin-top:32px;background:var(--cream);border:1px solid #e1e6dc;border-radius:7px;padding:20px 25px}.gallery-more summary{cursor:pointer;font-weight:800;color:var(--green);font-size:1.04rem}.gallery-more .photo-grid{margin-top:25px}.inline-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px;padding-top:25px;border-top:1px solid #dee4db;font-weight:700}.estimate-panel{background:var(--cream)}.estimate-panel h2{font-size:clamp(2rem,3vw,2.6rem);margin:14px 0}.form-field{margin:15px 0}.form-field label{display:block;font-size:.86rem;font-weight:800;margin-bottom:7px}.form-field label span:not(.optional){color:#a46612}.optional{font-weight:500;color:#56665b}.form-field input,.form-field textarea{font:inherit;background:#fff;border:1px solid #bec9bd;color:var(--ink);border-radius:4px;width:100%;padding:12px 13px;line-height:1.45}.form-field input:focus,.form-field textarea:focus{outline:2px solid var(--gold);outline-offset:1px}.form-submit{width:100%;border:0;cursor:pointer}.form-submit:disabled{cursor:not-allowed;background:#66766a;transform:none}.form-message{font-size:.82rem!important;line-height:1.5;color:#6d5b21!important;margin-top:12px}.form-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.email-contact{margin-top:20px}.email-contact a{text-decoration:underline;text-decoration-color:var(--gold);overflow-wrap:anywhere}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0;max-width:820px}.area-grid>div{background:#fff;padding:24px;border:1px solid #e0e6db}.area-grid h3{color:var(--green);margin-bottom:8px}.area-grid p{margin:0}.service-area .container>p{max-width:840px}.service-area h2{margin-top:18px}
@media(max-width:1100px){.header-call{display:inline-flex;font-size:.76rem;padding:10px 12px}.site-nav{gap:13px}}
@media(max-width:900px){.header-call{display:none}}
@media(max-width:790px){.owner-copy+.intro-image img{max-height:650px;object-fit:cover}.thorpe-pairs{grid-template-columns:1fr}.thorpe-pairs .comparison img{height:410px}.comparison img,.detail-grid .comparison img{height:320px}.site-nav{z-index:4}.site-nav:after{content:''}}
@media(max-width:520px){.comparison{gap:6px}.comparison img,.detail-grid .comparison img,.thorpe-pairs .comparison img{height:235px}.comparison figcaption{font-size:.64rem;padding:5px 8px;top:8px;left:8px}.area-grid{grid-template-columns:1fr}.inline-cta{align-items:flex-start;flex-direction:column}.gallery-more{padding:17px}.owner-copy+.intro-image img{max-height:540px}.site-nav a:last-child{background:#f7ecd1}}

/* About TLC: deliberate tighter owner photo crop, retain complete composition */
.owner-copy+.intro-image img{height:auto;max-height:none;object-fit:contain;}
@media(max-width:790px){.owner-copy+.intro-image img{height:auto;max-height:none;object-fit:contain;}}

/* Final review: shorter owner portrait, focused on Ryan and equipment */
.owner-copy+.intro-image img{width:100%;height:auto;max-height:660px;object-fit:contain;}
/* Two distinct leaf cleanup sequences, including the fire pit */
.pairs.pairs-two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:950px;margin-inline:auto;}
.project-subhead{font-size:1.2rem;margin:30px 0 16px;color:var(--green);}
.project-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.gallery-more .gallery-note{margin:18px 0 12px;}
@media(max-width:790px){.project-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:520px){.pairs.pairs-two{grid-template-columns:1fr;}.project-photo-grid{grid-template-columns:1fr 1fr;gap:12px;}.project-photo-grid .photo-card img{height:220px;}}

/* Leaf cleanup review: show the actual fire-pit area in the third after still. */
.pairs.pairs-two .pair:nth-child(2) > div:last-child img { object-position: center bottom; }

/* Estimate form feedback (existing palette; no layout changes) */
.form-message[data-state=error]{color:#9b3a22!important}.form-message[data-state=success]{color:var(--green)!important;font-weight:700}.form-message:focus{outline:none}
.field-error{font-size:.8rem!important;line-height:1.4;color:#9b3a22!important;margin:6px 0 0!important}
.form-field input[aria-invalid=true],.form-field textarea[aria-invalid=true]{border-color:#9b3a22}
.turnstile-slot.is-visible{margin:18px 0 14px}
