:root{--brown: #2a2520;--brown-soft: #3a332c;--terracotta: #c5803a;--terracotta-dark: #a9642a;--gold: #d9a441;--gold-soft: #e8c875;--beige: #f5efe6;--beige-dark: #efe6d3;--cream: #faf6ef;--line: #e2d6c0;--ink: #2a2520;--muted: #5a4f44;--maxw: 1180px;--radius: 14px;--shadow-sm: 0 2px 10px rgba(42,37,32,.08);--shadow-md: 0 10px 30px rgba(42,37,32,.12);--ease: cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Poppins,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}h1,h2,h3{font-family:"DM Serif Display",Georgia,Times New Roman,serif;line-height:1.1;margin:0;font-weight:400;text-wrap:balance}p{text-wrap:pretty}a{color:inherit;overflow-wrap:anywhere}.about-grid>*,.cards-grid>*,.why-grid>*,.service-area-grid>*,.contact-grid>*,.footer-grid>*{min-width:0}.contact-facts,.footer-list,.contact-facts a,.footer-list a,.inline-link{overflow-wrap:anywhere;word-break:break-word}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}.section{padding:84px 0}.eyebrow{font-weight:600;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--terracotta-dark);margin:0 0 10px}.section-title{font-size:clamp(1.9rem,4vw,3rem);color:var(--brown);margin-bottom:16px}.section-lead{max-width:640px;color:var(--muted);font-size:1.05rem;margin:0 auto}.accent{color:var(--terracotta)}.section-head{max-width:720px;margin:0 auto 44px;text-align:center}.section-head .section-title,.section-head .section-lead{text-align:left}@media(min-width:560px){.section-head,.section-head .section-title,.section-head .section-lead{text-align:center}}.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;background:var(--brown);color:#fff;padding:10px 16px;border-radius:0 0 8px}.skip-link:focus{left:0}.btn{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.96rem;letter-spacing:.01em;padding:12px 22px;border-radius:999px;border:2px solid transparent;text-decoration:none;cursor:pointer;transition:transform .25s var(--ease),background .25s var(--ease),color .25s var(--ease),box-shadow .25s var(--ease);font-family:inherit}.btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.btn-lg{padding:15px 30px;font-size:1.02rem}.btn-block{width:100%;justify-content:center}.btn-primary{background:var(--terracotta);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--terracotta-dark);transform:translateY(-2px);box-shadow:0 4px 8px #2a252024}.btn-gold{background:var(--gold);color:var(--brown);box-shadow:var(--shadow-sm)}.btn-gold:hover{background:var(--gold-soft);transform:translateY(-2px)}.btn-outline{background:transparent;color:#fff;border-color:#fffc}.btn-outline:hover{background:#ffffff1f}.btn-outline-dark{background:transparent;color:var(--cream);border-color:#ffffff73}.btn-outline-dark:hover{background:#ffffff1a}.btn-ghost{background:transparent;color:var(--brown);border-color:transparent;padding-inline:8px}.site-header{position:sticky;top:0;z-index:100;background:#faf6efeb;backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid var(--line);transition:box-shadow .25s var(--ease),background .25s var(--ease)}.site-header.scrolled{box-shadow:var(--shadow-sm);background:#faf6eff5}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none}.brand-mark{color:var(--terracotta);display:inline-flex}.brand-mark.sm{color:var(--terracotta)}.brand-text{display:flex;flex-direction:column;line-height:1}.brand-name{font-family:"DM Serif Display",serif;font-size:1.25rem;color:var(--brown)}.brand-sub{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.primary-nav{display:flex;gap:26px}.primary-nav a{text-decoration:none;color:var(--brown-soft);font-weight:500;font-size:.96rem;position:relative;padding:6px 0}.primary-nav a:after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--terracotta);transition:width .25s var(--ease)}.primary-nav a:hover:after,.primary-nav a:focus-visible:after{width:100%}.header-actions{display:flex;align-items:center;gap:12px}.phone-link{gap:6px}.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:8px;cursor:pointer;min-width:44px;min-height:44px;justify-content:center}.nav-toggle span{width:22px;height:2px;background:var(--brown);display:block;border-radius:2px;transition:transform .25s var(--ease)}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:900px){.primary-nav{position:absolute;top:72px;left:0;right:0;background:var(--cream);flex-direction:column;gap:0;padding:12px 24px 18px;box-shadow:var(--shadow-md);border-bottom:1px solid var(--line);transform:translateY(-8px);opacity:0;pointer-events:none;transition:transform .25s var(--ease),opacity .25s var(--ease)}.primary-nav.open{transform:none;opacity:1;pointer-events:auto}.primary-nav a{padding:12px 0;border-bottom:1px solid var(--line);min-height:44px;display:flex;align-items:center}.primary-nav a:last-child{border-bottom:0}.nav-toggle{display:flex}.header-actions .phone-link span{display:none}.header-actions .phone-link{min-width:44px;min-height:44px;justify-content:center;padding:8px}.header-actions .btn-primary{display:none}}.hero{position:relative;padding:120px 0 80px;overflow:hidden;background:var(--beige)}.hero-bg{position:absolute;inset:0;z-index:0}.hero-sky{position:absolute;inset:0 0 40%;background:linear-gradient(180deg,#f3d7a3,#e8c896 55%,#d9b178)}.hero-sun{position:absolute;right:14%;top:16%;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fde4a8,#f2c25c 60%,#e0a040);box-shadow:0 0 70px #f0b45080}.hero-ridge{position:absolute;left:0;right:0;width:100%}.hero-ridge-1{bottom:32%;height:180px}.hero-ridge-2{bottom:28%;height:130px}.hero-hill{position:absolute;bottom:-10px;left:0;width:100%;height:240px}.hero-vignette{position:absolute;inset:0;background:linear-gradient(90deg,#2a25205c,#2a25201a 60%,#2a252000),linear-gradient(180deg,#2a252061,#2a252073,#2a25208c)}.hero-content{position:relative;z-index:2;color:#fff;max-width:760px}.hero-eyebrow{font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;color:#fff;margin:0 0 16px;text-shadow:0 1px 8px rgba(42,37,32,.55)}.hero-title{font-size:clamp(2.5rem,7vw,5rem);letter-spacing:-.01em;text-shadow:0 2px 18px rgba(42,37,32,.7);margin-bottom:18px}.hero-sub{font-size:clamp(1.05rem,2.1vw,1.3rem);color:#f6ecd9;max-width:600px;margin:0 0 28px;text-shadow:0 2px 12px rgba(42,37,32,.65)}.hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:38px}.hero-stats{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:16px;max-width:640px}.hero-stats li{display:flex;flex-direction:column;background:#2a25208c;padding:14px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(4px)}.stat-value{font-family:"DM Serif Display",serif;font-size:1.5rem;color:#fff}.stat-label{font-size:.8rem;color:#f6ecd9;letter-spacing:.02em;font-weight:500}.hero-wave{position:absolute;bottom:-1px;left:0;right:0;height:50px;z-index:1}.hero-wave svg{width:100%;height:100%;display:block}@media(max-width:700px){.hero-stats{grid-template-columns:repeat(2,1fr)}.hero{padding:96px 0 60px}}.about{background:var(--beige);padding-top:60px}.about-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:56px;align-items:start}.about-copy p{color:var(--muted);margin:0 0 16px}.owner-card{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;margin:22px 0;box-shadow:var(--shadow-sm)}.owner-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--terracotta),var(--gold));display:flex;align-items:center;justify-content:center;flex:none}.owner-initials{color:#fff;font-weight:700;font-size:1.1rem;letter-spacing:.04em}.owner-name{font-family:"DM Serif Display",serif;font-size:1.15rem;color:var(--brown);margin:0}.owner-role{color:var(--muted);font-size:.9rem;margin:2px 0 4px}.owner-link{color:var(--terracotta-dark);font-weight:600;font-size:.86rem;text-decoration:none}.owner-link:hover{text-decoration:underline}.credential-chips{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:8px;background:var(--beige-dark);border:1px solid var(--line);padding:7px 14px;border-radius:999px;font-size:.84rem;color:var(--brown-soft)}.chip-dot{width:8px;height:8px;border-radius:50%;background:var(--gold)}.about-panel{background:var(--brown);color:var(--cream);border-radius:18px;padding:28px 26px;box-shadow:var(--shadow-md)}.panel-title{font-size:1.5rem;color:var(--gold-soft);margin-bottom:14px}.facts{margin:0;padding:0;list-style:none;counter-reset:facts;display:flex;flex-direction:column;gap:14px}.fact{display:flex;gap:10px;align-items:flex-start;font-size:.95rem;color:#f0e6d2;line-height:1.45}.fact svg{flex:none;margin-top:2px}@media(max-width:880px){.about-grid{grid-template-columns:1fr;gap:36px}}.services{background:var(--cream)}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;transition:transform .3s var(--ease),box-shadow .3s var(--ease);position:relative;overflow:hidden}.card:before{content:"";position:absolute;left:0;top:0;height:4px;width:100%;background:linear-gradient(90deg,var(--terracotta),var(--gold))}.card:hover{transform:translateY(-6px);box-shadow:0 6px 12px #2a252029}.card-icon{color:var(--terracotta);display:inline-flex;margin-bottom:16px}.card-title{font-size:1.4rem;color:var(--brown);margin-bottom:10px}.card-body{color:var(--muted);font-size:.98rem;margin:0 0 20px;flex:1}.card-cta{display:inline-flex;align-items:center;gap:6px;color:var(--terracotta-dark);font-weight:600;text-decoration:none;font-size:.92rem}.card-cta svg{transition:transform .25s var(--ease)}.card-cta:hover svg{transform:translate(4px)}@media(max-width:860px){.cards-grid{grid-template-columns:1fr;max-width:520px;margin:0 auto}}.why{background:var(--beige)}.why-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.why-item{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px;box-shadow:var(--shadow-sm)}.why-icon{color:var(--terracotta);flex:none}.why-title{font-size:1.1rem;color:var(--brown);margin-bottom:6px}.why-body{color:var(--muted);font-size:.92rem;margin:0}@media(max-width:900px){.why-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.why-grid{grid-template-columns:1fr}}.service-area{background:var(--cream)}.service-area-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.city-tags{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:10px}.city-tag{display:inline-flex;align-items:center;gap:8px;background:var(--beige-dark);border:1px solid var(--line);padding:8px 14px;border-radius:999px;font-size:.9rem;color:var(--brown-soft)}.city-tag svg{color:var(--terracotta)}.area-map{border-radius:18px;overflow:hidden;box-shadow:0 4px 8px #2a25201a;background:var(--beige)}.area-map svg{width:100%;height:auto;display:block}@media(max-width:880px){.service-area-grid{grid-template-columns:1fr}.area-map{order:-1}}.reviews{background:var(--beige)}.reviews-inner{max-width:760px}.reviews-actions{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:20px}.reviews-widget-slot{margin-top:32px;border:2px dashed var(--line);border-radius:var(--radius);padding:36px 20px;text-align:center;background:#ffffff8c}.reviews-widget-note{margin:0;color:var(--muted);font-size:.92rem}.reviews .btn-outline{color:var(--terracotta-dark);border-color:var(--terracotta)}.reviews .btn-outline:hover{background:#c5803a14}.cta-strip{background:var(--brown);color:var(--cream);padding:56px 0;position:relative;overflow:hidden}.cta-strip:before{content:"";position:absolute;right:-100px;top:-120px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(217,164,65,.18),transparent 70%)}.cta-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;position:relative;z-index:1;flex-wrap:wrap}.cta-strip-title{font-size:clamp(1.8rem,3.5vw,2.6rem);color:#fff;margin-bottom:8px}.cta-strip-sub{color:#e9dcc6;margin:0;max-width:520px}.cta-strip-actions{display:flex;gap:14px;flex-wrap:wrap}.contact{background:var(--cream)}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:start}.contact-copy .section-lead{margin-left:0}.inline-link{color:var(--terracotta-dark);font-weight:600;text-decoration:underline}.contact-facts{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:14px 24px}.contact-facts li{font-size:.96rem;color:var(--brown-soft)}.contact-facts a{color:var(--terracotta-dark);text-decoration:none}.contact-facts a:hover{text-decoration:underline}.cf-label{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}.contact-form-wrap{position:relative}.cactus-aside{position:absolute;right:-10px;top:-54px;width:60px;height:auto;opacity:.85;pointer-events:none}.estimate-form{background:#fff;border-radius:18px;padding:28px 26px 22px;box-shadow:0 4px 8px #2a25201a;display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field-message{grid-column:1 / -1}.field label{font-size:.85rem;font-weight:600;color:var(--brown-soft)}.field input,.field select,.field textarea{font-family:inherit;font-size:.96rem;color:var(--ink);padding:11px 14px;border:1.5px solid var(--line);border-radius:10px;background:var(--cream);transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease);width:100%;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--terracotta);background:#fff;box-shadow:0 0 0 3px #d9a44140}.estimate-form .btn-block{grid-column:1 / -1;margin-top:4px}.form-foot{grid-column:1 / -1;margin:4px 0 0;font-size:.8rem;color:var(--muted);text-align:center}@media(max-width:880px){.contact-grid,.estimate-form{grid-template-columns:1fr}.cactus-aside{display:none}}@media(max-width:600px){.contact-facts{grid-template-columns:1fr;gap:10px 0}}.site-footer{background:var(--brown);color:#e9dcc6;padding-top:60px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px;padding-bottom:40px}.footer-title{font-size:1.4rem;color:#fff;display:flex;align-items:center;gap:10px;margin-bottom:6px}.footer-title .brand-mark{color:var(--gold-soft)}.footer-tag{color:#d8c9ad;font-size:.92rem;margin:0 0 18px}.footer-heading{font-size:1.05rem;color:var(--gold-soft);margin-bottom:14px}.footer-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;font-size:.92rem}.footer-list a{color:#e9dcc6;text-decoration:none}.footer-list a:hover{color:#fff;text-decoration:underline}.footer-cred{color:#d8c9ad}.footer-region{color:var(--gold-soft);font-weight:600}.footer-seal{margin-top:18px}.seal-ring{display:inline-flex;align-items:center;justify-content:center;width:78px;height:78px;border-radius:50%;border:3px double var(--gold);color:var(--gold-soft);font-family:"DM Serif Display",serif;font-size:.92rem;letter-spacing:.06em}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:18px 24px 28px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.82rem;color:#c6b697}@media(max-width:760px){.footer-grid{grid-template-columns:1fr;gap:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.card:hover,.btn:hover,.btn-primary:hover,.btn-gold:hover{transform:none}}
