
:root{--ink:#11110f;--muted:#65645f;--gold:#d2a62c;--gold2:#f0c64d;--cream:#f7f5ef;--line:#dedbd1;--white:#fff;--max:1180px;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.65 var(--sans);background:var(--white)}img{max-width:100%;display:block}a{color:inherit}svg{width:1em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}.narrow{max-width:820px}.skip-link{position:absolute;left:-9999px;top:10px;background:#fff;padding:10px;z-index:100}.skip-link:focus{left:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.topbar{background:var(--ink);color:#eee;font-size:.78rem}.topbar-inner{display:flex;justify-content:space-between;align-items:center;min-height:35px}.topbar-inner div{display:flex;gap:20px}.topbar a{text-decoration:none;color:#fff}.site-header{position:sticky;top:0;background:rgba(255,255,255,.96);border-bottom:1px solid #ece9df;z-index:30;backdrop-filter:blur(10px)}.nav-shell{height:91px;display:flex;align-items:center;justify-content:space-between}.brand{display:block;width:218px}.brand img{width:100%;height:72px;object-fit:contain;object-position:left center}.site-nav{display:flex;align-items:center;gap:29px}.site-nav>a:not(.button){font-size:.9rem;font-weight:700;text-decoration:none;padding:31px 0;position:relative}.site-nav>a[aria-current=page]:not(.button):after{content:'';position:absolute;left:0;right:0;bottom:21px;height:3px;background:var(--gold)}.menu-button{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--gold);color:#111;padding:14px 22px;border:2px solid var(--gold);border-radius:3px;text-decoration:none;font-weight:800;font-size:.92rem;line-height:1.2;cursor:pointer}.button:hover{background:var(--gold2);border-color:var(--gold2)}.button-small{padding:11px 17px}.button-dark{background:var(--ink);border-color:var(--ink);color:#fff}.button-dark:hover{background:#333;border-color:#333}.button-outline{background:transparent;border-color:var(--ink)}.button-ghost{background:transparent;border-color:#fff;color:#fff}.full{width:100%}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.74rem;font-weight:900;color:#755812;margin-bottom:14px}.gold-text{color:var(--gold2)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:700;letter-spacing:-.035em;line-height:1.05}h1{font-size:clamp(2.6rem,5.6vw,5.4rem);margin-bottom:24px}h2{font-size:clamp(2rem,3.8vw,3.3rem);margin-bottom:20px}h3{font-size:1.2rem;line-height:1.25}.lead{font-size:1.18rem;line-height:1.7;color:#45443f}.lead-small{font-size:1.08rem;color:#45443f}.hero{background:linear-gradient(90deg,#fff 0%,#fff 54%,#f1ede2 54%);padding:70px 0 82px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:64px;align-items:center}.hero h1 em{font-weight:400;color:#a87905}.hero-copy{padding:20px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.contact-inline{display:flex;gap:11px;margin-top:18px;font-size:.9rem;font-weight:700}.contact-inline a{text-decoration-thickness:1px;text-underline-offset:4px}.hero-media{position:relative}.hero-media:before{content:'';position:absolute;inset:-18px 18px 18px -18px;border:2px solid var(--gold);z-index:0}.hero-media img{position:relative;aspect-ratio:4/3;object-fit:cover;z-index:1}.hero-note{position:absolute;z-index:2;left:-32px;right:40px;bottom:-29px;background:var(--ink);color:#fff;padding:18px 23px;display:flex;gap:8px;flex-direction:column;box-shadow:0 13px 40px #0003}.hero-note span{font-size:.88rem;color:#ddd}.trust-strip{border-bottom:1px solid var(--line);background:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-grid>div{padding:22px 23px;border-right:1px solid var(--line);display:flex;flex-direction:column}.trust-grid>div:first-child{border-left:1px solid var(--line)}.trust-grid strong{font-size:.92rem}.trust-grid span{font-size:.78rem;color:var(--muted)}.section{padding:96px 0}.section-soft{background:var(--cream)}.section-dark{background:var(--ink);color:#fff}.section-heading{display:grid;grid-template-columns:1.4fr .75fr;gap:60px;align-items:end;margin-bottom:45px}.section-heading p{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{min-height:280px;border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;text-decoration:none;background:#fff;transition:.2s}.service-card:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 18px 40px #17130a12}.service-card p{color:var(--muted)}.service-card .text-link{margin-top:auto}.text-link{display:inline-flex;align-items:center;gap:5px;font-weight:800;text-decoration:none;font-size:.9rem}.text-link svg{width:18px}.text-link.light{color:#fff}.center{text-align:center;margin-top:34px}.process-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px;align-items:center}.section-dark p{color:#c9c8c4}.steps{list-style:none;padding:0;margin:0}.steps li{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:30px 0;border-top:1px solid #3a3935}.steps li:last-child{border-bottom:1px solid #3a3935}.steps>li>span{font:italic 2rem var(--serif);color:var(--gold)}.steps h3{font-size:1.25rem;margin-bottom:7px}.steps p{margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.align-start{align-items:start}.image-panel{min-height:520px;background:linear-gradient(135deg,#171717,#050505);display:grid;place-items:center;position:relative;overflow:hidden}.image-panel:after{content:'';position:absolute;width:340px;height:340px;border:1px solid #d2a62c66;transform:rotate(45deg)}.number-mark{font:900 clamp(4rem,10vw,8rem)/1 var(--sans);color:#fff;letter-spacing:-.1em;position:relative;z-index:2}.number-mark span{color:var(--gold);font-family:var(--serif)}.check-list{list-style:none;padding:0;margin:26px 0}.check-list li{display:flex;gap:12px;margin:12px 0}.check-list svg{width:20px;min-width:20px;color:#a87905}.fine-print{font-size:.84rem;color:var(--muted);border-left:3px solid var(--gold);padding-left:14px;margin:25px 0}.coverage{display:grid;grid-template-columns:1.3fr .7fr;gap:70px;align-items:center}.coverage-card{background:#fff;border-top:5px solid var(--gold);padding:34px;box-shadow:0 14px 45px #28220f12;display:flex;flex-direction:column}.coverage-card strong{font:700 1.7rem var(--serif);margin:3px 0 18px}.coverage-card a{font-weight:800}.cta-band{background:#151512;color:#fff;padding:70px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-inner h2{max-width:680px;margin-bottom:12px}.cta-inner p{color:#c9c8c3;margin:0;max-width:680px}.cta-actions{display:flex;gap:12px;flex-direction:column;min-width:250px}.site-footer{background:#080808;color:#fff;padding:64px 0 90px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:55px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start}.footer-logo{width:210px;background:#fff;margin-bottom:20px}.footer-grid h2{font:800 .75rem var(--sans);text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin-bottom:15px}.footer-grid a{color:#fff;text-decoration:none;margin:4px 0}.footer-grid p{font-size:.85rem;color:#aaa;max-width:320px}.footer-bottom{border-top:1px solid #333;margin-top:40px;padding-top:22px;display:flex;justify-content:space-between;color:#777;font-size:.78rem}.mobile-bar{display:none}.page-hero{padding:95px 0;background:linear-gradient(120deg,#f8f6f0,#ece6d6);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(2.7rem,5vw,4.8rem)}.page-hero.compact{padding:65px 0}.service-detail{background:linear-gradient(120deg,#fff 25%,#f1ead6)}.notice{background:#f4f0e3;border-left:4px solid var(--gold);padding:25px 28px;margin-top:40px}.notice p{margin:4px 0 0}.card,.factor-card{border:1px solid var(--line);padding:38px;background:#fff;box-shadow:0 18px 45px #17130a0c}.factor-card{background:var(--ink);color:#fff}.factor-card ul{padding-left:18px}.factor-card li{margin:12px 0}.factor-card p{color:#bbb;font-size:.9rem;border-top:1px solid #333;padding-top:20px}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:start}.center-text{text-align:center}.center-text p{max-width:670px;margin-inline:auto;color:var(--muted)}.statement{background:var(--ink);color:#fff;padding:55px;min-height:380px;display:flex;flex-direction:column;justify-content:center}.statement span{font:6rem/1 var(--serif);color:var(--gold)}.statement p{font:2rem/1.35 var(--serif)}.faq-list{max-width:900px}.faq-list details{border-top:1px solid var(--line);padding:0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{list-style:none;cursor:pointer;font-weight:800;font-size:1.06rem;padding:24px 0;display:flex;justify-content:space-between;gap:30px}.faq-list summary::-webkit-details-marker{display:none}.faq-list details p{max-width:760px;color:var(--muted);padding:0 0 24px}.faq-list details[open] summary span{transform:rotate(45deg)}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.contact-card{border:1px solid var(--line);padding:35px;text-decoration:none;display:flex;flex-direction:column}.contact-card:hover{border-color:var(--gold)}.contact-card>span{color:#846308;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:900}.contact-card strong{font:700 1.75rem var(--serif);margin:9px 0}.contact-card p{color:var(--muted);margin:0}.form-hero{background:var(--cream);padding:75px 0}.form-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:start}.form-intro{position:sticky;top:135px}.form-intro h1{font-size:clamp(2.8rem,5vw,4.6rem)}.what-next{border-top:1px solid var(--line);margin-top:35px;padding-top:25px}.what-next h2{font:800 .8rem var(--sans);letter-spacing:.12em;text-transform:uppercase}.what-next ol{list-style:none;padding:0}.what-next li{display:flex;gap:12px;margin:14px 0}.what-next li span{width:25px;height:25px;border-radius:50%;background:var(--ink);color:#fff;display:inline-grid;place-items:center;font-size:.75rem;flex:0 0 auto}.estimate-form{background:#fff;border:1px solid var(--line);box-shadow:0 18px 60px #211b0b12;padding:38px}.form-section{border-bottom:1px solid var(--line);padding-bottom:30px;margin-bottom:30px}.form-section h2{font:800 1.2rem var(--sans);letter-spacing:0}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label,legend{font-size:.88rem;font-weight:800}label{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}label>span,legend>span{color:#8d6700}.optional{color:var(--muted);font-weight:500;font-size:.78rem}input,select,textarea{width:100%;font:inherit;color:var(--ink);border:1px solid #bdbab1;border-radius:2px;padding:12px 13px;background:#fff}input:focus,select:focus,textarea:focus{outline:3px solid #e6c55e66;border-color:#8d6700}fieldset{border:0;padding:0;margin:0 0 17px}.choice-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:8px}.choice-row label{display:flex;flex-direction:row;align-items:center;border:1px solid var(--line);padding:10px 12px;margin:0;font-weight:600}.choice-row input,.consent input{width:auto}.field-help{display:block;font-size:.78rem;color:var(--muted);font-weight:400;margin-top:-11px}.photo-preview{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px}.photo-chip{background:var(--cream);padding:7px 10px;font-size:.76rem;border:1px solid var(--line)}.consent{flex-direction:row;align-items:flex-start}.form-error{display:none;background:#feeaea;color:#8e1515;padding:12px;margin-bottom:15px}.form-error.show{display:block}.form-disclaimer{font-size:.76rem;color:var(--muted);text-align:center;margin:13px 0 0}.thank-you{min-height:65vh;display:grid;place-items:center;text-align:center;padding:90px 0}.success-mark{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:var(--gold);font-size:2rem;margin:0 auto 25px}.thank-you .hero-actions{justify-content:center}.prose{max-width:820px}.prose h2{font:800 1.25rem var(--sans);letter-spacing:0;margin-top:36px}.prose p{color:#4f4e49}.tracker-shell{padding:70px 0;background:#f3f2ed;min-height:80vh}.tracker-head{display:flex;justify-content:space-between;align-items:end;gap:30px}.tracker-head h1{font-size:3.3rem;margin-bottom:10px}.tracker-actions{display:flex;gap:10px}.tracker-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:35px 0}.stat{background:#fff;padding:22px;border:1px solid var(--line)}.stat strong{display:block;font:700 2rem var(--serif)}.stat span{color:var(--muted);font-size:.78rem}.tracker-filters{display:flex;gap:15px;background:#fff;padding:18px;border:1px solid var(--line)}.tracker-filters label{margin:0;flex:1}.lead-list{margin-top:15px}.lead-row{display:grid;grid-template-columns:1.3fr .9fr 1fr 1fr auto;gap:15px;align-items:center;background:#fff;border:1px solid var(--line);padding:18px;margin-bottom:9px}.lead-row h3,.lead-row p{margin:0}.lead-row p,.lead-meta{font-size:.78rem;color:var(--muted)}.lead-row label{margin:0}.delete-lead{border:0;background:#f4e7e7;color:#8a2525;padding:8px 10px;cursor:pointer}.empty-state{background:#fff;padding:50px;text-align:center;border:1px solid var(--line)}.owner-list{background:#fff;border:1px solid var(--line);padding:35px;margin-top:40px}.owner-list h2{font-size:2rem}.mobile-bar{position:fixed;bottom:0;left:0;right:0;z-index:40;height:58px;background:#111;box-shadow:0 -5px 20px #0003}.mobile-bar a{flex:1;color:#fff;display:flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;font-weight:800}.mobile-bar .gold{background:var(--gold);color:#111}
@media(max-width:900px){.topbar{display:none}.nav-shell{height:76px}.brand{width:185px}.brand img{height:60px}.menu-button{display:flex;width:43px;height:43px;border:0;background:transparent;flex-direction:column;justify-content:center;gap:5px}.menu-button span:not(.sr-only){display:block;width:24px;height:2px;background:#111}.site-nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 20px 25px;flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav>a:not(.button){padding:13px 0}.site-nav>a[aria-current=page]:after{display:none}.hero{padding:45px 0 70px;background:#f7f4ec}.hero-grid,.section-heading,.process-grid,.split,.coverage,.two-col,.form-layout{grid-template-columns:1fr;gap:45px}.hero-media{margin:15px 18px 0}.hero-note{left:-12px;right:20px}.trust-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.section{padding:70px 0}.image-panel{min-height:390px}.cta-inner{align-items:flex-start;flex-direction:column}.cta-actions{width:100%;flex-direction:row}.footer-grid{grid-template-columns:1fr 1fr}.form-intro{position:static}.tracker-head{align-items:flex-start;flex-direction:column}.tracker-stats{grid-template-columns:repeat(2,1fr)}.lead-row{grid-template-columns:1fr 1fr}.lead-row>div:first-child{grid-column:1/-1}.contact-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){body{padding-bottom:58px}.wrap{width:min(calc(100% - 28px),var(--max))}h1{font-size:2.55rem}.hero{padding-top:32px}.hero-grid{gap:30px}.hero-actions,.cta-actions{flex-direction:column}.button{width:100%}.contact-inline{flex-wrap:wrap}.hero-note{position:relative;left:auto;right:auto;bottom:auto}.trust-grid,.service-grid,.footer-grid,.field-grid,.contact-grid{grid-template-columns:1fr}.trust-grid>div,.trust-grid>div:first-child{border-left:0;border-right:0;border-bottom:1px solid var(--line)}.service-card{min-height:230px}.section{padding:58px 0}.section-heading{margin-bottom:30px}.page-hero{padding:65px 0}.statement{padding:35px;min-height:300px}.form-hero{padding:35px 0}.estimate-form{padding:22px 18px}.choice-row{display:grid;grid-template-columns:1fr 1fr}.mobile-bar{display:flex}.site-footer{padding-bottom:45px}.footer-grid{gap:32px}.footer-bottom{flex-direction:column;gap:5px}.tracker-stats{grid-template-columns:1fr 1fr}.tracker-filters{flex-direction:column}.lead-row{grid-template-columns:1fr}.lead-row>div:first-child{grid-column:auto}.tracker-actions{width:100%;flex-direction:column}.tracker-actions .button{width:100%}}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold2);outline-offset:4px}.hero-media img{width:100%;height:auto}.breadcrumbs{padding-top:20px;padding-bottom:20px;display:flex;gap:9px;align-items:center;font-size:.78rem;color:var(--muted)}.breadcrumbs a{text-underline-offset:3px}.related-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:35px;padding-top:25px;border-top:1px solid var(--line)}.related-links>a{display:inline-flex;align-items:center;gap:4px;font-weight:800;text-underline-offset:4px}.related-links svg{width:17px}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Readability, reflow, and keyboard refinements shared across all pages. */
html { scroll-padding-top: 130px; }
body { overflow-wrap: break-word; }
main:focus { outline: none; }
.eyebrow, .footer-grid h2, .what-next h2 { font-size: .875rem; letter-spacing: .09em; }
.field-help, .form-disclaimer, .breadcrumbs, .trust-grid span, .footer-bottom,
.lead-row p, .lead-meta, .stat span, .photo-chip, .optional { font-size: .875rem; }
.footer-bottom { color: #aaa; }
.footer-logo { height: auto; }
.service-card h2 { font: 700 1.2rem/1.25 var(--sans); letter-spacing: normal; margin-bottom: 1em; }
.contact-card > span { font-size: .875rem; }
.careers-page .mobile-bar { display: none; }
.careers-page { padding-bottom: 0; }
.field-help { margin-top: 0; }
.hero h1 em { color: #876000; }
.factor-card .eyebrow { color: #f0c64d; }
.hero-grid > *, .field-grid > *, .footer-grid > *, .lead-row > * { min-width: 0; }
.footer-grid a, .contact-card strong, .photo-chip, .lead-row p { overflow-wrap: anywhere; }
.breadcrumbs { flex-wrap: wrap; }
.estimate-form > .notice { margin-top: 0; margin-bottom: 26px; }
.photo-chip { display: grid; gap: 8px; max-width: 160px; }
.photo-chip button { min-height: 44px; padding: 8px 12px; background: #fff; border: 1px solid #777; cursor: pointer; font: inherit; }
.photo-chip img { width: 120px; height: 90px; }
.delete-lead, .menu-button { min-width: 44px; min-height: 44px; }
.site-nav.open { max-height: calc(100dvh - 76px); overflow-y: auto; }
:where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid #155bb5; outline-offset: 4px; box-shadow: 0 0 0 2px white; }
button:disabled { opacity: .65; cursor: wait; }
.lead-row { align-items: start; }
.lead-row p { white-space: pre-wrap; }
@media (max-width: 620px) {
  html { scroll-padding-top: 95px; }
  input, select, textarea { font-size: 1rem; }
  body { padding-bottom: calc(58px + env(safe-area-inset-bottom)); }
  .mobile-bar { height: calc(58px + env(safe-area-inset-bottom)); padding-bottom: env(safe-area-inset-bottom); }
}
.urgent-contact{margin:18px 0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.urgent-contact a{color:#9c2020;font-weight:800;min-height:44px;display:inline-flex;align-items:center;text-underline-offset:4px}
.urgent-contact span{font-size:.8rem;color:#55534e}
.concept-option{padding:22px;background:var(--cream);border:1px solid var(--line);margin:20px 0}
.concept-option p{font-size:.85rem}
.concept-option .consent{gap:12px;min-height:44px}
.concept-option .consent input{flex:0 0 auto;margin-top:5px}
.concept-option .consent>span{color:var(--ink)}
.lead-row{align-items:start;overflow-wrap:anywhere}
.lead-details summary{min-height:44px;cursor:pointer;font-weight:700;padding:10px 0}
.lead-details p{margin-bottom:8px}
.project-card{border-bottom:1px solid var(--line);padding:0 0 48px;margin-bottom:48px}
.project-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.project-photos figure{margin:0 0 20px}
.project-photos img{width:100%;height:auto}
.project-photos figcaption{font-weight:800;padding-top:8px}
@media(max-width:620px){.project-photos{grid-template-columns:1fr}}
.profile-brand{display:grid;grid-template-columns:180px 1fr;gap:32px;align-items:center;max-width:900px}
.profile-brand img{width:180px;height:auto;border-radius:8px}
.profile-brand h2{font-size:2rem}
.contact-inline{flex-wrap:wrap}
.site-nav{gap:20px}
.urgent-contact span,.concept-option p{font-size:.875rem}
@media(max-width:620px){.profile-brand{grid-template-columns:1fr}.profile-brand img{width:140px}}
