@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}}:root{--ink:#171713;--forest:#314332;--sage:#87936c;--brass:#c5a25c;--clay:#b77d58;--cream:#f7f1e7;--mist:#eef3f0;--white:#fff;--line:#ddd6c9;--muted:#62665e;--blue:#25384d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.5}img{display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}main{overflow:hidden}.site-header{z-index:50;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7f1e7f5;border-bottom:1px solid #1717131f;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:28px;height:82px;padding:0 5vw;display:flex}.brand{align-items:center;min-width:156px;display:inline-flex}.brand-mark{color:var(--ink);grid-template-columns:auto auto;align-items:end;line-height:.8;display:grid}.brand-mark span{font-family:Georgia,Times New Roman,serif;font-size:33px}.brand-mark strong{letter-spacing:2px;margin-left:6px;font-size:19px}.brand-mark small{letter-spacing:3.2px;grid-column:1/3;margin-top:8px;font-size:8px;font-weight:700}.header-right,.nav,.actions{align-items:center;display:flex}.header-right{gap:24px}.nav{gap:26px;font-size:13px}.nav a,.services-menu>button{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:12px 0}.nav a:hover,.nav .active,.services-menu.active>button,.services-menu>button:hover{color:var(--forest)}.services-menu{position:relative}.dropdown{border:1px solid var(--line);background:var(--white);border-radius:8px;min-width:245px;padding:10px;display:none;position:absolute;top:calc(100% + 10px);left:-18px;box-shadow:0 22px 60px #17171324}.dropdown.open,.services-menu:hover .dropdown{display:grid}.dropdown a{border-radius:6px;padding:10px 12px}.dropdown a:hover{background:var(--mist)}.header-phone,.header-cta,.button,.text-link,.text-button{cursor:pointer;letter-spacing:1.2px;text-transform:uppercase;border:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.header-phone{color:var(--forest);white-space:nowrap}.header-cta,.button{border-radius:6px;min-height:46px;padding:14px 18px}.header-cta,.gold{background:var(--brass);color:#15130e}.button.dark{background:var(--ink);color:var(--white)}.button:disabled{cursor:wait;opacity:.7}.text-link,.text-button,.phone-link{background:0 0;border-bottom:1px solid;padding:0 0 6px}.phone-link.light,.text-link.light{color:var(--white)}.menu-toggle,.nav-mobile-actions{display:none}.home-hero{background:var(--forest);color:var(--white);grid-template-rows:minmax(620px,auto) auto;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);display:grid}.hero-content{flex-direction:column;justify-content:center;padding:78px 5vw 86px;display:flex}.hero-content h1,.simple-hero h1,.section-heading h2,.intro-section h2,.cta-panel h2,.estimate-section h2,.service-hero h1,.detail-section h2,.contact-panel h2,.form-panel h2,.modal-panel h2,.legal-content h2{letter-spacing:0;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:.98}.hero-content h1{max-width:720px;font-size:72px}.hero-content p:not(.eyebrow){color:#eef2e9;max-width:590px;margin:28px 0 0;font-family:Georgia,Times New Roman,serif;font-size:20px;line-height:1.65}.actions{flex-wrap:wrap;gap:24px;margin-top:34px}.hero-media,.service-hero-image,.about-image,.card-image,.project-tile,.project-card .card-image{position:relative;overflow:hidden}.hero-media img,.service-hero-image img,.about-image img,.card-image img,.project-tile img,.project-card .card-image img{object-fit:cover}.hero-media{min-height:620px}.hero-stats{background:var(--ink);border-top:1px solid #ffffff1f;grid-column:1/3;grid-template-columns:repeat(4,1fr);display:grid}.hero-stats span{color:#d9ddd2;letter-spacing:1px;text-transform:uppercase;border-right:1px solid #ffffff1f;justify-content:center;align-items:center;gap:8px;min-height:82px;font-size:12px;display:flex}.hero-stats strong{color:var(--brass)}.eyebrow{color:var(--brass);letter-spacing:2px;text-transform:uppercase;margin:0 0 20px;font-size:11px;font-weight:800}.eyebrow.dark{color:var(--forest)}.section,.simple-hero,.legal-content{padding:110px 6vw}.simple-hero{background:var(--blue);color:var(--white)}.simple-hero h1{max-width:880px;font-size:64px}.simple-hero p:not(.eyebrow){color:#e4e9ef;max-width:720px;font-family:Georgia,Times New Roman,serif;font-size:19px;line-height:1.7}.section-heading{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:56px;display:flex}.section-heading.centered{text-align:center;justify-content:center}.section-heading h2,.intro-section h2,.cta-panel h2,.estimate-section h2,.detail-section h2,.contact-panel h2,.form-panel h2,.modal-panel h2{max-width:760px;font-size:52px}.intro-section{background:var(--mist);grid-template-columns:.8fr 1.2fr;gap:70px;display:grid}.intro-copy>p,.detail-section>div>p,.about-layout p,.contact-panel p,.estimate-section p,.legal-content p{color:var(--muted);font-size:16px;line-height:1.8}.value-grid,.detail-grid,.process-grid,.review-grid,.service-grid,.project-gallery,.related-grid,.stats-grid{gap:22px;display:grid}.value-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:34px}.value-grid article,.detail-grid article,.process-grid article,.review-card,.related-grid a{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:28px}.value-grid h3,.detail-grid h3,.process-grid h3,.service-card h3,.project-card h2,.review-card h3{margin:0 0 12px;font-family:Georgia,Times New Roman,serif;font-size:25px;font-weight:400;line-height:1.15}.value-grid p,.detail-grid p,.process-grid p,.service-card p,.project-card p,.review-card p,.faq-list p,.related-grid span{color:var(--muted);margin:0;font-size:15px;line-height:1.7}.services-section,.projects-section,.faq-section{background:var(--white)}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.service-card,.project-card{border:1px solid var(--line);background:var(--cream);border-radius:8px;overflow:hidden}.card-image{aspect-ratio:4/3;background:var(--mist)}.service-body,.project-card>div:last-child{padding:26px}.card-index{color:var(--brass);letter-spacing:1.4px;font-size:11px;font-weight:800}.service-card a{color:var(--forest);letter-spacing:1.1px;text-transform:uppercase;margin-top:22px;font-size:11px;font-weight:800;display:inline-flex}.cta-panel{background:var(--forest);color:var(--white);justify-content:space-between;align-items:center;gap:48px;padding:72px 6vw;display:flex}.cta-panel p:not(.eyebrow){color:#e8eee3;max-width:650px}.project-mosaic{grid-template-columns:1.3fr 1fr 1fr;gap:18px;display:grid}.project-tile{background:var(--ink);border-radius:8px;min-height:360px}.project-tile:after{content:"";z-index:1;background:linear-gradient(#0000 35%,#000000ad);position:absolute;inset:0}.project-tile div{z-index:2;color:var(--white);position:absolute;bottom:22px;left:24px;right:24px}.project-tile h3{margin:0 0 6px;font-family:Georgia,Times New Roman,serif;font-size:28px;font-weight:400}.project-tile p{color:#e8e8e8;text-transform:uppercase;letter-spacing:1.2px;margin:0;font-size:11px}.testimonials-section,.process-section{background:var(--blue);color:var(--white)}.review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.review-card{background:#fffffff5}.stars{color:var(--brass);letter-spacing:2px}.review-card footer{margin-top:26px}.review-card strong,.review-card span{display:block}.review-card span{color:var(--muted);font-size:13px}.process-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.process-grid article{background:#ffffff14;border-color:#ffffff29}.process-grid span{color:var(--brass);letter-spacing:1.4px;margin-bottom:46px;font-size:12px;font-weight:800;display:inline-flex}.process-grid p{color:#dce3e5}.faq-list{gap:12px;display:grid}.faq-list details{border:1px solid var(--line);background:var(--cream);border-radius:8px;padding:22px 24px}.faq-list summary{cursor:pointer;font-family:Georgia,Times New Roman,serif;font-size:23px}.faq-list p{margin-top:14px}.estimate-section{background:var(--ink);color:var(--white);grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:7vw;padding:110px 6vw;display:grid}.estimate-section.standalone{background:var(--cream);color:var(--ink)}.estimate-section p{color:#e5e6df}.estimate-section.standalone p{color:var(--muted)}.estimate-form{background:var(--white);color:var(--ink);border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:30px;display:grid;position:relative}.estimate-form.compact{background:0 0;padding:0}.estimate-form label{color:var(--ink);letter-spacing:1.1px;text-transform:uppercase;gap:8px;font-size:11px;font-weight:800;display:grid}.estimate-form input,.estimate-form select,.estimate-form textarea{width:100%;color:var(--ink);letter-spacing:0;text-transform:none;background:#fbfaf7;border:1px solid #cbc5b8;border-radius:6px;outline:none;padding:13px 14px}.estimate-form textarea{resize:vertical}.estimate-form input:focus,.estimate-form select:focus,.estimate-form textarea:focus{border-color:var(--forest);box-shadow:0 0 0 3px #31433224}.full{grid-column:1/-1}.check{align-items:flex-start;line-height:1.5;color:var(--muted)!important;letter-spacing:0!important;text-transform:none!important;grid-template-columns:none!important;gap:11px!important;font-size:12px!important;font-weight:400!important;display:flex!important}.check input{width:17px;min-width:17px;height:17px;margin-top:2px}.honeypot{opacity:0!important;position:absolute!important;left:-10000px!important}.field-error{color:#8b2d1f;background:#fff0ed;border-radius:6px;margin:0;padding:12px 14px}.estimate-form small{color:var(--muted);font-size:11px;line-height:1.5}.success{background:var(--white);color:var(--ink);border-radius:8px;padding:28px}.success.compact{background:0 0;padding:0}.success h3{margin:0 0 8px;font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:400}.service-hero{background:var(--forest);color:var(--white);grid-template-columns:minmax(0,1fr) minmax(0,.9fr);align-items:center;gap:6vw;padding:92px 6vw;display:grid}.service-hero h1{font-size:62px}.service-hero p:not(.eyebrow){color:#e8eee3;max-width:670px;font-family:Georgia,Times New Roman,serif;font-size:19px;line-height:1.7}.service-hero-image{border-radius:8px;min-height:500px}.detail-section{background:var(--white);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:52px;display:grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-band{padding-top:90px;padding-bottom:90px}.project-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.about-layout,.contact-layout{background:var(--mist);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:6vw;display:grid}.about-image{border-radius:8px;min-height:560px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:34px}.stats-grid article{border-top:1px solid var(--line);padding-top:20px}.stats-grid strong{color:var(--forest);font-family:Georgia,Times New Roman,serif;font-size:42px;font-weight:400;display:block}.stats-grid span{color:var(--muted)}.contact-panel,.form-panel{border-radius:8px}.contact-list{color:var(--ink);gap:12px;margin:28px 0;padding:0;list-style:none;display:grid}.assurances{font-weight:700;color:var(--forest)!important}.form-panel{background:var(--white);padding:30px}.form-panel .estimate-form{margin-top:24px;padding:0}.legal-hero{padding-bottom:70px}.legal-content{background:var(--white);max-width:900px}.legal-content h2{margin-top:42px;font-size:34px}.legal-content a{color:var(--forest);border-bottom:1px solid}.related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.related-grid h2{margin:0 0 8px;font-family:Georgia,Times New Roman,serif;font-size:26px;font-weight:400}.site-footer{color:#e4e2db;background:#111a17;padding:70px 6vw 28px}.footer-grid{grid-template-columns:1.2fr .75fr 1fr 1fr;gap:44px;display:grid}.footer-brand .brand-mark{color:var(--white)}.footer-company p{color:#aeb5ad;max-width:420px}.footer-grid h2{color:var(--white);letter-spacing:1.4px;text-transform:uppercase;margin:0 0 16px;font-size:13px}.footer-grid>div{flex-direction:column;gap:11px;display:flex}.footer-grid a,.footer-grid span{color:#cdd3ca;font-size:13px}.footer-badges{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.footer-badges span{border:1px solid #ffffff2e;border-radius:999px;padding:8px 11px}.footer-estimate{color:var(--brass)!important}.footer-bottom{color:#9aa29a;border-top:1px solid #ffffff1f;justify-content:space-between;gap:24px;margin-top:54px;padding-top:24px;display:flex}.footer-bottom span{gap:18px;display:flex}.mobile-actions{display:none}.back{z-index:40;background:var(--brass);width:42px;height:42px;color:var(--ink);opacity:0;pointer-events:none;border:0;border-radius:999px;transition:opacity .2s;position:fixed;bottom:20px;right:20px}.back.visible{opacity:1;pointer-events:auto}.modal{z-index:100;background:#111a17b3;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.modal-panel{background:var(--cream);border-radius:8px;width:min(760px,100%);max-height:92vh;padding:32px;position:relative;overflow:auto}.modal-panel>p{color:var(--muted)}.modal-close{background:var(--ink);width:36px;height:36px;color:var(--white);cursor:pointer;border:0;border-radius:999px;position:absolute;top:16px;right:16px}@media (max-width:1100px){.header-phone{display:none}.nav{gap:18px}.hero-content h1,.simple-hero h1,.service-hero h1{font-size:54px}}@media (max-width:900px){body{padding-bottom:58px}.header-inner{height:70px;padding:0 22px}.menu-toggle{min-width:54px;color:var(--ink);cursor:pointer;letter-spacing:1px;text-transform:uppercase;background:0 0;border:0;justify-content:flex-end;font-size:13px;font-weight:800;display:inline-flex}.header-cta{display:none}.nav{border-bottom:1px solid var(--line);background:var(--cream);padding:22px;display:none;position:absolute;top:70px;left:0;right:0}.nav.open{gap:8px;display:grid}.nav a,.services-menu>button{text-align:left;width:100%;padding:12px 0}.dropdown{min-width:0;box-shadow:none;background:#fff9;border:0;margin:2px 0 8px;display:none;position:static}.dropdown.open{display:grid}.nav-mobile-actions{gap:8px;margin-top:10px;display:grid}.nav-mobile-actions button,.nav-mobile-actions a{border:1px solid var(--line);background:var(--white);text-align:center;border-radius:6px;padding:13px 14px}.home-hero,.service-hero,.intro-section,.detail-section,.about-layout,.contact-layout,.estimate-section{grid-template-columns:1fr}.home-hero{grid-template-rows:auto auto auto}.hero-content{padding:72px 24px 56px}.hero-content h1,.simple-hero h1,.service-hero h1{font-size:46px}.section-heading h2,.intro-section h2,.cta-panel h2,.estimate-section h2,.detail-section h2,.contact-panel h2,.form-panel h2,.modal-panel h2{font-size:39px}.hero-media,.service-hero-image,.about-image{min-height:430px}.hero-stats{grid-column:auto;grid-template-columns:repeat(2,1fr)}.section,.simple-hero,.legal-content,.service-hero,.estimate-section{padding:78px 24px}.section-heading,.cta-panel,.footer-bottom{display:grid}.service-grid,.project-gallery,.review-grid,.process-grid,.detail-grid,.value-grid,.related-grid,.project-mosaic{grid-template-columns:1fr}.project-tile{min-height:310px}.estimate-form{grid-template-columns:1fr;padding:24px}.form-panel .estimate-form{padding:0}.footer-grid{grid-template-columns:1fr 1fr}.footer-company{grid-column:1/-1}.mobile-actions{z-index:60;background:var(--ink);grid-template-columns:1fr 1fr 1.35fr;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-actions a,.mobile-actions button{min-height:58px;color:var(--white);cursor:pointer;letter-spacing:1.1px;text-transform:uppercase;background:0 0;border:0;border-right:1px solid #ffffff1f;font-size:11px;font-weight:800}.mobile-actions button{background:var(--brass);color:var(--ink)}.back{bottom:76px}}@media (max-width:560px){.brand{min-width:128px}.brand-mark span{font-size:28px}.brand-mark strong{font-size:16px}.brand-mark small{letter-spacing:2.7px;font-size:7px}.hero-content h1,.simple-hero h1,.service-hero h1{font-size:38px}.hero-content p:not(.eyebrow),.simple-hero p:not(.eyebrow),.service-hero p:not(.eyebrow){font-size:17px}.hero-stats{grid-template-columns:1fr}.hero-stats span{min-height:58px}.cta-panel{padding:62px 24px}.footer-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
