@import url('https://fonts.googleapis.com/css2?family=Bree+Serif&display=swap');
/* Shared visual redesign: forest green, orange, generous photographs. */
:root{--forest:#103b2e;--green:#103b2e;--gold:#ff7b00;--cream:#f5f5f5;--ink:#253b32;--orange:#ff7b00}
html{scroll-behavior:smooth;scroll-padding-top:115px}body{background:#fff;color:#303b35;font-family:'DM Sans',Arial,sans-serif;line-height:1.65}.shell{max-width:1180px;padding:0 24px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:800;letter-spacing:-.025em}h2{font-size:clamp(27px,3vw,35px);color:#103b2e}h3{color:#103b2e}.eyebrow{color:#cb6100;letter-spacing:.13em;font-size:12px}.section{padding:68px 0}.section:nth-child(even){background:#f5f5f5}
header{background:#f7f7f7;color:#103b2e;position:sticky;top:0;z-index:30;box-shadow:0 2px 9px #0001}.head{min-height:94px;gap:20px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap;line-height:1.15;font-family:Arial,sans-serif;font-size:19px;letter-spacing:.01em}.brand .brand-copy{display:block}.brand img{width:58px;height:58px;flex-shrink:0}.brand strong{display:block;color:#103b2e;font-weight:900}.brand small{font-size:9px;letter-spacing:.13em;color:#526b5f;margin-top:5px}.head nav{background:#103b2e;border-radius:32px;gap:0;padding:0 15px;margin-left:auto;align-items:stretch;min-height:48px}.head nav>a,.head nav summary{color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:13px 15px;cursor:pointer;text-decoration:none;white-space:nowrap}.head nav>a:hover,.head nav summary:hover{background:#ff7b00;color:white;text-decoration:none}.head nav .is-active{background:#ff7b00}.services-menu{position:relative}.services-menu summary{list-style:none;gap:7px}.services-menu summary::-webkit-details-marker{display:none}.services-menu summary:after{content:'⌄';font-size:17px;line-height:1}.services-menu[open]>summary{background:#ff7b00}.services-dropdown{position:absolute;top:100%;left:0;min-width:220px;background:#103b2e;border-top:3px solid #ff7b00;border-radius:0 0 12px 12px;box-shadow:0 12px 24px #0003;overflow:hidden}.services-dropdown a{display:block;color:#fff;padding:12px 18px;text-decoration:none;font-size:14px}.services-dropdown a:hover{background:#1f5740}.head .call{background:#ff7b00;color:white;border-radius:5px;white-space:normal;text-align:center;font-size:13px;line-height:1.2;min-width:108px;min-height:52px;padding:10px 14px;margin-left:0}.mobile-nav{background:#103b2e;color:white;position:relative;z-index:29}.mobile-nav nav{margin:0;border-radius:0;background:transparent}.mobile-nav summary{font-size:14px}.button{background:#ff7b00;color:#fff;border:2px solid #ff7b00;border-radius:18px;min-height:56px;padding:14px 28px;font-size:14px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;box-shadow:0 5px 14px #0001;transition:transform .2s,background .2s}.button:hover{background:#e66f00;transform:translateY(-2px)}.button.secondary{background:#103b2e;color:#fff;border:3px solid #ff7b00}.text-link{color:#103b2e;text-decoration-color:#ff7b00;text-decoration-thickness:2px}
.intro{padding:64px 0 72px;background:linear-gradient(90deg,#07190fc9,#07190f80),url('/assets/elagage-hero.png') center/cover;border-bottom:0}.intro h1{font-size:clamp(31px,3.6vw,44px);text-transform:uppercase;line-height:1.4;max-width:1050px;letter-spacing:-.02em;margin:0 0 23px}.intro .lead{max-width:830px;font-size:18px;color:#fff}.intro .eyebrow{color:#ffab59}.home-hero{min-height:570px;padding:34px 0 76px}.hero-badge{display:inline-block;color:white;border:1px solid #ffffffb3;border-radius:18px;padding:14px 21px;margin:0 0 28px;background:#ffffff16;text-align:center;line-height:1.4;backdrop-filter:blur(4px)}.hero-badge strong{display:block;font-size:14px;text-transform:uppercase;letter-spacing:.1em}.hero-badge span{display:block;color:#ffb66e;font-size:17px;font-weight:800}.hero-badge small{display:block;margin-top:3px;font-size:12px}.home-hero h1{max-width:1070px}.home-hero .hero-brand{color:#ff9b3d}.home-hero .lead{max-width:980px;font-size:17px}.hero-actions{display:grid;grid-template-columns:260px 260px 1fr;gap:20px;align-items:center;margin-top:33px}.hero-actions .button{text-align:center;white-space:normal;line-height:1.25;min-height:76px}.hero-phone{color:white;text-align:center;font-size:20px;line-height:1.75;font-weight:800;letter-spacing:.08em;margin:0!important}.hero-phone strong{color:#ff941f}.hero-phone a{color:#ff941f;text-decoration:none;white-space:nowrap}.home-trust{background:#edd297;border:0}.home-trust .shell{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-top:18px;padding-bottom:18px;font-size:13px;align-items:center}.home-trust span{display:flex;align-items:center;gap:11px}.home-trust span:before{content:'✓';display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:#103b2e;color:#fff;font-size:20px;margin:0}.home-quote{background:#f5f5f5!important;color:#303b35;padding:56px 0 68px}.home-quote .quote-layout{grid-template-columns:1.15fr .85fr;gap:24px;align-items:start}.home-quote .eyebrow{color:#bc5700}.home-quote h2{color:#103b2e}.home-quote p{color:#303b35}.home-quote .quote-phone a{color:#bc5700}.home-quote-visual{border-radius:20px;overflow:hidden;border:3px solid #103b2e;margin:0 0 25px}.home-quote-visual img{width:100%;height:270px;object-fit:cover;object-position:center 35%;display:block}.home-quote-benefits{padding:0;list-style:none;margin:18px 0}.home-quote-benefits li{display:flex;gap:13px;align-items:start;padding:9px 0}.home-quote-benefits li:before{content:'✓';color:#ff7b00;font-weight:900;font-size:20px;line-height:1.3}.quote-form{border-radius:24px;box-shadow:0 10px 36px #0002;padding:30px;background:white;border:1px solid #e5e8e3}.quote-form .form-title{font:800 28px/1.2 Georgia,serif;color:#103b2e;text-align:center;margin:0 0 12px}.quote-form .form-title span{color:#ff7b00}.quote-form .form-subtitle{color:#525d56;text-align:center;font-size:14px;margin-bottom:24px}.quote-form input:not([type=checkbox]),.quote-form select,.quote-form textarea{border-radius:7px;border-color:#c9d0ca;padding:10px 12px}.quote-form label{font-size:13px;margin-bottom:14px}.quote-form textarea{min-height:94px}.quote-form .button{color:#fff;border:0;border-radius:8px;width:100%;white-space:normal;letter-spacing:.03em;min-height:52px}.quote-section:not(.home-quote){background:#103b2e}.quote-section h2{color:#fff}.quote-section .quote-form p{color:#103b2e}
.services-showcase{background:#fff!important}.services-showcase .section-title{text-align:center;max-width:900px;margin:0 auto 40px}.services-showcase .section-title .eyebrow{margin-bottom:12px}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.service-panel{border:1px solid #dedfd9;border-radius:18px;overflow:hidden;background:#f7f8f5;box-shadow:0 7px 24px #103b2e0b;transition:transform .35s,box-shadow .35s}.service-panel:hover{transform:translateY(-5px);box-shadow:0 15px 30px #103b2e20}.service-panel .service-image{display:block;overflow:hidden}.service-panel img{width:100%;height:260px;object-fit:cover;display:block;transition:transform .8s}.service-panel:hover img{transform:scale(1.035)}.service-panel .service-body{padding:25px 29px 29px}.service-panel h3{font-size:25px;color:#103b2e;margin:0 0 16px}.service-panel h3:after{content:'';display:block;width:60px;height:3px;background:#ff7b00;margin-top:14px}.service-panel ul{list-style:none;padding:0;margin:0 0 23px}.service-panel li{display:flex;gap:11px;padding:5px 0;font-size:15px}.service-panel li:before{content:'';width:8px;height:8px;background:#ff7b00;flex-shrink:0;margin-top:9px}.service-panel .button{border-radius:9px;padding:11px 20px;min-height:48px;letter-spacing:.03em;font-size:12px}.service-panel:last-child:nth-child(odd){grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.service-panel:last-child:nth-child(odd) img{height:100%;min-height:280px}.card{border:1px solid #d8dfd7;border-top:3px solid #ff7b00;border-radius:14px;box-shadow:0 8px 20px #103b2e0a}.card h3{font-size:21px}.card span{color:#c15e00}.gallery-section{border-top:0;position:relative;background:#fff!important}.gallery-section:before{content:'';display:block;position:absolute;top:0;left:max(24px,calc((100% - 1132px)/2));right:max(24px,calc((100% - 1132px)/2));height:6px;background:linear-gradient(135deg,transparent 45%,#ff7b00 45%,#ff7b00 55%,transparent 55%) 0 0/12px 6px,linear-gradient(45deg,transparent 45%,#ff7b00 45%,#ff7b00 55%,transparent 55%) 0 0/12px 6px}.gallery-heading h2{font-family:Georgia,serif}.gallery-kicker{font-family:Georgia,serif;font-size:22px;text-decoration:underline;text-underline-offset:4px}.gallery-caption strong{font-family:'DM Sans',Arial,sans-serif}.compare-grid{max-width:none}.compare-grid figure{border:2px solid #ff7b00;border-radius:20px}.compare-grid figcaption{font-family:Georgia,serif;color:#103b2e;font-size:17px}.photo-label,.split-label{border-radius:5px}.compare-stack>div:last-child .split-label{background:#ff7b00;color:white}.faq details{padding:20px 22px;background:white;border:1px solid #d6dfd5;border-radius:9px;margin:12px 0}.faq summary{font-size:17px;color:#103b2e}.faq details[open]{border-left:4px solid #ff7b00}.review-card{border-radius:18px;border-top:3px solid #ff7b00}.review-stars{color:#d87900}.local-links a{background:#f5f5f5;padding:9px 16px;border-radius:7px;color:#103b2e;font-size:14px;border:1px solid #dce2dc;text-decoration:none}.local-links a:hover{border-color:#ff7b00;background:#fff1e3}.local-services article{border-top:3px solid #ff7b00;border-radius:15px}.foot b{font-family:Georgia,serif;font-size:22px;color:#fff}footer{background:#103b2e;border-top:6px solid #ff7b00}.mobile-call{background:#ff7b00;color:white;z-index:40}.reveal-active{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal-active.in-view{opacity:1;transform:none}.home-hero .hero-badge,.home-hero h1,.home-hero .hero-actions{animation:enter-site .8s both}.home-hero h1{animation-delay:.1s}.home-hero .hero-actions{animation-delay:.2s}@keyframes enter-site{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media(max-width:1120px){.head nav{display:none}.head .call{margin-left:auto}.head{min-height:85px}.mobile-nav{display:block}.mobile-nav nav{display:grid;grid-template-columns:repeat(3,1fr)}.hero-actions{grid-template-columns:1fr 1fr}.hero-phone{grid-column:1/-1;text-align:left;font-size:17px}.home-hero{min-height:0;padding-bottom:48px}}
@media(max-width:850px){.home-quote .quote-layout{grid-template-columns:1fr;gap:35px}.home-quote-visual img{height:320px}.home-trust .shell{grid-template-columns:1fr;gap:10px}.home-trust span:before{width:30px;height:30px;font-size:17px}.home-quote{padding:38px 0 48px}.service-grid{gap:22px}.service-panel .service-body{padding:22px}.service-panel img{height:220px}.service-panel h3{font-size:22px}.service-panel:last-child:nth-child(odd){display:block;grid-column:auto}.service-panel:last-child:nth-child(odd) img{height:220px;min-height:0}}
@media(max-width:600px){html{scroll-padding-top:90px}.head{min-height:76px;gap:10px}.brand{font-size:15px;gap:8px}.brand img{width:45px;height:45px}.brand small{font-size:8px;letter-spacing:.08em}.head .call{display:flex;font-size:11px;min-width:75px;min-height:43px;padding:8px;max-width:90px}.mobile-nav{padding:0 20px}.mobile-nav nav{grid-template-columns:1fr 1fr}.shell{padding:0 20px}.intro,.home-hero{padding:30px 0 42px;background:linear-gradient(90deg,#07190fdd,#07190f96),url('/assets/elagage-hero.png') 65% center/cover}.intro h1{font-size:27px;line-height:1.4;max-width:100%;margin-bottom:18px}.intro .lead{font-size:16px;line-height:1.65}.hero-badge{padding:10px 16px;margin-bottom:22px;border-radius:13px}.hero-badge strong{font-size:12px}.hero-badge span{font-size:15px}.hero-actions{gap:13px;margin-top:25px}.hero-actions .button{padding:13px 12px;font-size:11px;min-height:66px;border-radius:13px;letter-spacing:.07em}.hero-phone{font-size:14px;letter-spacing:.04em;line-height:1.6;margin-top:6px!important}.home-trust .shell{padding-top:15px;padding-bottom:15px;font-size:12px}.home-quote-visual img{height:240px}.quote-form{padding:24px 20px;border-radius:20px}.quote-form .form-title{font-size:27px}.service-grid{grid-template-columns:1fr}.service-panel img{height:230px}.service-panel h3{font-size:24px}.service-panel .button{min-height:46px}.section{padding:48px 0}.gallery-kicker{font-size:20px}.gallery-section:before{left:20px;right:20px}.gallery-caption strong{font-size:17px}.gallery-wall .gallery-caption strong{font-size:13px}.compare-grid img{height:300px}.compare-grid .compare-stack,.compare-grid .compare-stack img{height:300px}.quote-section:not(.home-quote){padding:48px 0}footer{padding-bottom:95px}.foot b{font-size:21px}.actions>.button{white-space:normal;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-active{opacity:1;transform:none;transition:none}.home-hero .hero-badge,.home-hero h1,.home-hero .hero-actions{animation:none}.service-panel,.service-panel img,.button{transition:none}}
/* Satin white surfaces across all public pages. */
body{background:linear-gradient(120deg,#fff 0%,#fafbfc 48%,#fff 100%)}header{background:linear-gradient(120deg,#fff,#f3f5f6 50%,#fff)}.section:nth-child(even),.home-quote{background:linear-gradient(125deg,#fafbfc 0%,#f1f3f4 48%,#fff 100%)!important}.services-showcase,.gallery-section{background:linear-gradient(120deg,#fff,#fafbfc 48%,#fff)!important}.card,.local-services article,.quote-form{background:linear-gradient(145deg,#fff,#fdfefe)}.intro .eyebrow{animation:enter-site .6s both}.intro .actions{animation:enter-site .8s .15s both}.card:hover{border-color:#ff7b00;transform:translateY(-5px)}.local-links a{transition:transform .2s,background .2s}.local-links a:hover{transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.intro .eyebrow,.intro .actions{animation:none}.local-links a{transition:none}}
.quote-section.home-quote h2{color:#103b2e}.quote-section.home-quote .form-title span{color:#ff7b00}
h1,h2,h3,.gallery-heading h2,.gallery-kicker,.compare-grid figcaption,.quote-form .form-title,.foot b{font-family:'Bree Serif',Georgia,serif;font-weight:400}.intro h1{font-size:40px;line-height:1.5}@media(max-width:600px){.intro h1{font-size:27px;line-height:1.4}}
