:root{--ink:#0c0c0c;--ink-2:#1b1a18;--text:#22201c;--muted:#5e5a52;--concrete:#ecebe7;--concrete-2:#dedcd5;--line:#cfccc3;--card:#fff;--gold:#d4a52a;--gold-dk:#a97f12;--orange:#e2611c;--cream:#f4ecd6;--radius:10px;--shadow:0 1px 2px #0000000f, 0 8px 24px -12px #00000038;--head:"Barlow Condensed", "Arial Narrow", sans-serif;--body:"Barlow", system-ui, sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:90px}body{background:var(--concrete);color:var(--text);font:400 1.0625rem/1.6 var(--body);margin:0}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{font-family:var(--head);letter-spacing:.005em;margin:0 0 .5em;line-height:1.05}h1{text-transform:uppercase;font-size:clamp(2.5rem,6vw,4.4rem);font-weight:800}h2{text-transform:uppercase;font-size:clamp(1.9rem,3.6vw,2.8rem);font-weight:800}h3{font-size:1.45rem;font-weight:700}p{margin:0 0 1em}.wrap{width:min(1160px,100% - 32px);margin-inline:auto}.concept-bar{background:var(--cream);color:#3a3220;text-align:center;border-bottom:1px solid #e0d3ad;padding:6px 16px;font-size:.82rem;font-weight:600}.site-header{z-index:20;background:var(--ink);color:#fff;border-bottom:3px solid var(--gold);position:sticky;top:0}.site-header__row{align-items:center;gap:20px;min-height:76px;display:flex}.logo{align-items:center;gap:10px;margin-right:auto;text-decoration:none;display:flex}.logo img{width:64px;height:auto}.logo__text{font-family:var(--head);text-transform:uppercase;flex-direction:column;line-height:1;display:flex}.logo__text b{color:var(--gold);letter-spacing:.02em;font-size:1.45rem;font-weight:800}.logo__text span{letter-spacing:.28em;color:#fff;margin-top:3px;font-size:.95rem;font-weight:700}.nav{align-items:center;gap:4px;display:flex}.nav__link{color:#e9e6df;border-radius:6px;padding:8px 12px;font-size:.98rem;font-weight:600;text-decoration:none}.nav__link:hover{color:#fff;background:#ffffff14}.nav__link.is-active{color:var(--gold)}.nav__call{margin-left:10px}.nav-toggle,.burger{display:none}.btn{font:700 1.02rem/1 var(--body);cursor:pointer;white-space:nowrap;border:2px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:14px 20px;text-decoration:none;display:inline-flex}.btn--gold{background:var(--gold);color:#17130a}.btn--gold:hover{background:#e2b437}.btn--ghost{color:inherit;background:0 0;border-color:currentColor}.btn--ghost:hover{background:#ffffff14}.btn--dark{background:var(--ink);color:#fff}.btn--dark:hover{background:#2a2824}.btn--lg{padding:17px 24px;font-size:1.08rem}.hero{background:var(--ink-2);color:#f4f1ea;padding:clamp(36px,6vw,72px) 0;overflow:hidden}.hero__grid{grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(28px,4vw,56px);display:grid}.hero h1{color:#fff}.hero h1 em{color:var(--gold);font-style:normal}.hero__lead{color:#d9d4c8;max-width:34em;font-size:1.15rem}.hero__actions{flex-wrap:wrap;align-items:center;gap:12px 14px;margin-top:26px;display:flex}.hero__img{position:relative}.hero__img img{border-radius:var(--radius);aspect-ratio:4/3;object-fit:cover;width:100%;box-shadow:0 20px 50px -20px #000000b3}.hero__img:after{content:"";border-right:6px solid var(--orange);border-bottom:6px solid var(--orange);border-radius:0 0 var(--radius) 0;z-index:-1;width:40%;height:40%;position:absolute;inset:auto -14px -14px auto}.hero__img{z-index:0;isolation:isolate}.badge{color:#f4f1ea;background:#ffffff0f;border:1px solid #ffffff24;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-size:.95rem;text-decoration:none;display:inline-flex}.badge:hover{background:#ffffff1a}.badge__stars{color:var(--gold);letter-spacing:1px;font-size:1.05rem}.badge b{font-weight:700}.badge__g{width:18px;height:18px}.facts{color:#c8c2b4;grid-template-columns:repeat(3,auto);justify-content:start;gap:8px 24px;margin:28px 0 0;padding:0;font-size:.95rem;list-style:none;display:grid}.facts li{align-items:center;gap:8px;display:flex}.facts li:before{content:"";background:var(--orange);border-radius:2px;flex:none;width:8px;height:8px}.section{padding:clamp(56px,8vw,96px) 0}.section--alt{background:var(--concrete-2)}.section--dark{background:var(--ink);color:#eeeae2}.section-head{max-width:720px;margin-bottom:36px}.section-head .eyebrow,.eyebrow{font:700 .85rem/1 var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:12px;display:inline-block}.section-head p{color:var(--muted);font-size:1.1rem}.section--dark .section-head p{color:#c8c2b4}.cards{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border-top:4px solid var(--gold);padding:26px}.card p{color:var(--muted);margin:0}.card__quote{border-left:3px solid var(--line);padding-left:12px;font-size:.97rem;font-style:italic;color:var(--text)!important;margin-top:14px!important}.card__icon{background:var(--ink);width:44px;height:44px;color:var(--gold);border-radius:8px;place-items:center;margin-bottom:16px;display:grid}.split{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(28px,5vw,64px);display:grid}.split__img img{border-radius:var(--radius);box-shadow:var(--shadow);object-fit:cover;width:100%}.steps{counter-reset:step;grid-template-columns:repeat(4,1fr);gap:18px;margin:0;padding:0;list-style:none;display:grid}.steps li{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);counter-increment:step;padding:22px}.steps li:before{content:counter(step);background:var(--orange);color:#fff;width:38px;height:38px;font:800 1.2rem/1 var(--head);border-radius:50%;place-items:center;margin-bottom:12px;display:grid}.steps h3{margin-bottom:6px;font-size:1.3rem}.steps p{color:var(--muted);margin:0;font-size:.98rem}.section--dark .steps li{background:#1f1e1b}.section--dark .steps p{color:#c8c2b4}.quotes{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.quote{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;margin:0;padding:22px 22px 18px;display:flex}.quote__stars{color:var(--gold);letter-spacing:2px;margin-bottom:8px}.quote blockquote{flex:1;margin:0 0 14px;font-size:1.02rem}.quote figcaption{color:var(--muted);font-size:.9rem;font-weight:600}.quotes--all{grid-template-columns:repeat(2,1fr)}.reviews-summary{flex-wrap:wrap;align-items:center;gap:14px 22px;margin-bottom:30px;display:flex}.reviews-summary__score{font:800 3.6rem/1 var(--head)}.reviews-summary__stars{color:var(--gold);letter-spacing:2px;font-size:1.5rem}.calc{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);border-top:4px solid var(--orange);grid-template-columns:1.2fr 1fr;align-items:center;gap:28px;padding:clamp(22px,4vw,36px);display:grid}.calc__fields{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.calc label,.form label{margin-bottom:6px;font-size:.92rem;font-weight:600;display:block}.calc input,.form input,.form textarea,.form select{width:100%;font:500 1.05rem var(--body);border:1.5px solid var(--line);color:var(--text);background:#fbfaf8;border-radius:8px;padding:12px}.calc input:focus,.form :is(input,textarea,select):focus{border-color:var(--gold-dk);outline:3px solid #d4a52a73}.calc__check{align-items:center;gap:8px;margin-top:14px;font-weight:500!important;display:flex!important}.calc__check input{width:auto}.calc__out{background:var(--ink);color:#fff;border-radius:var(--radius);text-align:center;padding:24px}.calc__yards{font:800 3.4rem/1 var(--head);color:var(--gold)}.calc__out p{color:#c8c2b4;margin:8px 0 0;font-size:.95rem}.calc__note{color:var(--muted);margin:14px 0 0;font-size:.9rem}.table{border-collapse:collapse;background:var(--card);border-radius:var(--radius);width:100%;box-shadow:var(--shadow);overflow:hidden}.table th,.table td{text-align:left;border-bottom:1px solid var(--concrete-2);padding:12px 16px}.table th{background:var(--ink);color:#fff;font-weight:600}.work-list{grid-template-columns:repeat(3,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.work-list li{background:var(--card);box-shadow:var(--shadow);border-left:4px solid var(--gold);border-radius:8px;padding:14px 16px;font-weight:600}.page-head{background:var(--ink-2);color:#f4f1ea;padding:clamp(36px,6vw,64px) 0}.page-head h1{color:#fff;font-size:clamp(2.3rem,5vw,3.6rem)}.page-head p{color:#d9d4c8;max-width:40em;font-size:1.12rem}.page-head__actions{flex-wrap:wrap;align-items:center;gap:12px 14px;margin-top:22px;display:flex}.cta-band{background:var(--gold);color:#17130a;padding:44px 0}.cta-band__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;display:flex}.cta-band h2{margin:0;font-size:clamp(1.7rem,3.4vw,2.4rem)}.cta-band p{margin:4px 0 0;font-weight:500}.cta-band__btns{flex-wrap:wrap;gap:12px;display:flex}.cta-band .btn--ghost{color:#17130a}.cta-band .btn--ghost:hover{background:#0000000f}.contact-grid{grid-template-columns:1.3fr 1fr;align-items:start;gap:28px;display:grid}.contact-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(22px,4vw,32px)}.contact-card--dark{background:var(--ink);color:#eeeae2}.contact-card--dark a{color:var(--gold)}.contact-card__phone{font:800 2.2rem/1 var(--head);color:var(--gold);margin:4px 0 14px;text-decoration:none;display:inline-block}.form{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form .full{grid-column:1/-1}.form textarea{resize:vertical;min-height:110px}.form__note{color:var(--muted);margin:0;font-size:.88rem}.form__sent{color:#2f4a14;background:#f2f7ea;border:1px solid #b9d39a;border-radius:8px;padding:12px 14px;font-weight:600;display:none}.form__sent.is-on{display:block}.hours-list{grid-template-columns:auto auto;justify-content:start;gap:4px 18px;margin:0;display:grid}.hours-list dt{font-weight:600}.hours-list dd{margin:0}.site-footer{background:var(--ink);color:#c9c4b8;border-top:3px solid var(--gold);padding:56px 0 24px;font-size:.97rem}.site-footer a{color:#f0ece3}.site-footer__grid{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:28px;display:grid}.site-footer__h{color:var(--gold);text-transform:uppercase;margin-bottom:12px;font-size:1.15rem}.site-footer__blurb{max-width:30em;margin-top:14px}.site-footer__phone{font:700 1.5rem/1 var(--head);text-decoration:none}.site-footer__links{gap:6px;margin:0;padding:0;list-style:none;display:grid}.site-footer__base{color:#8f897c;border-top:1px solid #2c2a26;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:40px;padding-top:18px;font-size:.86rem;display:flex}.site-footer .hours-list dt{color:#f0ece3}.mobile-call{display:none}@view-transition{navigation:auto}.site-header{view-transition-name:site-header}.mobile-call{view-transition-name:mobile-call}::view-transition-old(root){animation-duration:.28s}::view-transition-new(root){animation-duration:.28s}.motion [data-reveal]{opacity:0;transition:opacity .6s ease-out,transform .6s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0) * 90ms);transform:translateY(14px)}.motion [data-reveal].is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}@media (width<=960px){.hero__grid,.split,.calc,.contact-grid{grid-template-columns:1fr}.cards,.quotes,.steps,.site-footer__grid,.work-list{grid-template-columns:1fr 1fr}}@media (width<=760px){body{padding-bottom:64px}.site-header__row{min-height:64px}.logo img{width:50px}.logo__text b{font-size:1.25rem}.logo__text span{font-size:.82rem}.burger{cursor:pointer;border-radius:8px;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;display:flex}.burger span{background:#fff;border-radius:2px;height:3px;margin-inline:10px;display:block}.nav{background:var(--ink);border-bottom:3px solid var(--gold);flex-direction:column;align-items:stretch;padding:8px 16px 18px;display:none;position:absolute;top:100%;left:0;right:0}.nav-toggle:checked~.nav{display:flex}.nav__link{padding:12px 8px;font-size:1.08rem}.nav__call{margin:10px 0 0}.hero__img:after{display:none}.facts,.cards,.quotes,.quotes--all,.steps,.work-list{grid-template-columns:1fr}.calc__fields{grid-template-columns:1fr 1fr}.calc__fields>:last-child{grid-column:1/-1}.form,.site-footer__grid{grid-template-columns:1fr}.hero__actions .btn,.page-head__actions .btn{flex:100%}.mobile-call{z-index:30;background:var(--gold);color:#17130a;font:700 1.08rem/1 var(--body);justify-content:center;align-items:center;gap:10px;padding:18px;text-decoration:none;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #00000040}}
