:root{--black:#101110;--panel:#191a18;--gold:#c7a45f;--gold-light:#e5c990;--ink:#232522;--muted:#646861;--line:#deded7;--paper:#f5f5f0;--white:#fff;--max:1280px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font:17px/1.7 'DM Sans',Arial,sans-serif}h1,h2,h3,h4,button,.btn{font-family:Manrope,Arial,sans-serif}h1,h2,h3{line-height:1.12;font-weight:500;letter-spacing:-.045em}h1{font-size:clamp(2.5rem,4.8vw,4.7rem);margin:18px 0 26px}h2{font-size:clamp(2rem,3.3vw,3.4rem);margin:0 0 24px}h3{font-size:1.48rem;margin:0 0 14px}p{margin:0 0 22px}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ab7721;outline-offset:5px}.wrap{width:min(calc(100% - 80px),var(--max));margin:auto}.skip{position:absolute;left:16px;top:-100px;background:var(--gold);padding:14px;z-index:100}.skip:focus{top:12px}.eyebrow{font-size:.78rem;text-transform:uppercase;letter-spacing:.17em;font-weight:700;color:#896729;margin-bottom:20px}.dark .eyebrow,.hero .eyebrow{color:var(--gold-light)}.site-header{position:sticky;top:0;z-index:20;background:var(--black);color:#fff;border-bottom:1px solid #ffffff19}.nav-row{height:102px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{width:185px;flex-shrink:0}.brand img{width:100%;height:auto;object-fit:contain}.main-nav{display:flex;align-items:center;gap:27px;font-size:.9rem}.main-nav a{text-decoration:none}.main-nav a:hover,.main-nav a[aria-current]{color:var(--gold-light)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:51px;padding:14px 24px;border:1px solid var(--gold);background:var(--gold);color:#111;text-decoration:none;font-size:.88rem;font-weight:700;letter-spacing:.01em}.btn:hover{background:var(--gold-light);border-color:var(--gold-light)}.btn.outline{background:transparent;color:inherit;border-color:currentColor}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px}.text-link{font-size:.92rem;font-weight:600}.menu-toggle{display:none;background:transparent;border:1px solid #666;color:white;padding:9px 15px}.hero{background:var(--black);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:650px;align-items:stretch}.hero-copy{padding:74px 65px 65px 0;align-self:center}.hero h1{max-width:600px}.hero h1 em{font-style:normal;color:var(--gold-light)}.hero .lead{color:#c8ccc3;max-width:520px;font-size:1.07rem}.hero-media{position:relative;min-height:550px}.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%}.hero-media:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0008,transparent 40%)}.image-note{position:absolute;bottom:22px;left:24px;color:#fff;z-index:1;font-size:.78rem;letter-spacing:.09em;text-transform:uppercase}.hero-foot{margin-top:37px;max-width:480px;color:#aaa;font-size:.82rem}.trust-line{background:#20211e;color:#d1d2c9;border-top:1px solid #ffffff10}.trust-line .wrap{display:flex;justify-content:space-between;gap:20px;padding-top:21px;padding-bottom:21px;font-size:.73rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.section{padding:92px 0}.section.white{background:white}.section-head{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:36px}.section-head h2{margin-bottom:0;max-width:650px}.section-head p{max-width:360px;margin-bottom:0;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.card{background:white;text-decoration:none;display:flex;flex-direction:column;border-bottom:1px solid var(--line);transition:transform .18s}.card:hover{transform:translateY(-4px)}.card img{width:100%;height:250px;object-fit:cover}.card-body{padding:25px 26px 30px;display:flex;flex-direction:column;flex:1}.card p{font-size:.95rem;color:var(--muted)}.card .text-link{margin-top:auto;color:#785619}.number{font-size:.71rem;text-transform:uppercase;letter-spacing:.14em;color:#7b602c;display:block;margin-bottom:16px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split-image{aspect-ratio:1.02;object-fit:cover;width:100%}.split .large-text{font-size:1.18rem;color:var(--muted)}.steps{margin-top:28px;border-top:1px solid var(--line)}.step{display:grid;grid-template-columns:42px 1fr;gap:13px;padding:23px 0;border-bottom:1px solid var(--line)}.step>span{color:#947338;font-size:.82rem}.step h3{font-size:1.15rem;letter-spacing:-.02em;margin-bottom:8px}.step p{font-size:.95rem;margin:0;color:var(--muted)}.dark{background:var(--black);color:white}.dark p{color:#b8bcb3}.dark .btn{color:#111}.links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;border-top:1px solid var(--line)}.links a{padding:20px 0;border-bottom:1px solid var(--line);text-decoration:none;display:flex;justify-content:space-between;align-items:center;gap:20px}.links a:hover{color:#8a6526}.links small{font-size:.76rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:35px}.price{border:1px solid #ffffff30;padding:30px;display:block;text-decoration:none}.price strong{font-family:Manrope;font-size:2.8rem;font-weight:500;display:block;color:var(--gold-light);line-height:1.3;margin:14px 0}.price small{color:#b8bcb3;font-size:.83rem}.fine{font-size:.82rem;color:var(--muted);margin-top:22px}.city-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.city-grid a{padding:35px 21px;background:white;text-decoration:none}.city-grid a:hover{background:#eeeade}.city-grid span{display:block;font-size:.73rem;letter-spacing:.1em;color:var(--muted);margin-bottom:26px;text-transform:uppercase}.city-grid strong{font-size:1.2rem;font-weight:500;font-family:Manrope}.cta{background:#cfb279;padding:65px 0;color:#191b15}.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:35px}.cta h2{margin:0 0 13px;font-size:2.6rem}.cta p{margin:0;max-width:690px}.cta .btn{background:#161714;border-color:#161714;color:#fff;flex-shrink:0}.site-footer{background:#101110;color:#babeb4;padding:68px 0 25px;font-size:.9rem}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:40px}.footer-grid img{width:190px;height:auto;margin-bottom:23px}.footer-grid h3{color:var(--gold-light);font-size:.8rem;letter-spacing:.13em;text-transform:uppercase;margin-bottom:24px}.footer-grid a{display:block;text-decoration:none;margin-bottom:9px}.footer-grid a:hover{text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff20;margin-top:42px;padding-top:22px;font-size:.76rem}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;color:#7a7e75;font-size:.78rem;padding:28px 0}.breadcrumbs a{text-decoration:none}.page-hero{padding:10px 0 62px}.page-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center}.page-hero h1{font-size:clamp(2.5rem,4.2vw,4.2rem)}.page-hero .lead{font-size:1.15rem;color:var(--muted);max-width:800px}.page-hero img{height:390px;width:100%;object-fit:cover}.page-hero .eyebrow{margin-top:18px}.content-layout{display:grid;grid-template-columns:minmax(0,790px) 290px;gap:85px;align-items:start;padding-bottom:85px}.article-section{border-top:1px solid var(--line);padding-top:35px;margin-bottom:38px;scroll-margin-top:125px}.article-section h2{font-size:2rem;letter-spacing:-.035em;margin-bottom:18px}.article-section p{color:#4b5047}.sidebar{position:sticky;top:130px}.sidebar-box{padding:28px;background:#ecece4;margin-bottom:25px}.sidebar-box h2{font-size:1.1rem;letter-spacing:0}.sidebar-box a{display:block;margin:12px 0;font-size:.88rem}.sidebar-box p{font-size:.9rem}.sidebar-box .btn{margin-bottom:0}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-weight:600;padding-right:18px;line-height:1.5}details p{margin:17px 0 3px;color:var(--muted)}.related{padding-top:38px;border-top:1px solid var(--line)}.related h2{font-size:1.8rem}.directory-intro{padding:25px 0 45px;max-width:870px}.directory-intro h1{font-size:clamp(2.8rem,5vw,4.6rem)}.directory-intro p{color:var(--muted);font-size:1.12rem}.directory-group{padding:32px 0}.directory-group h2{font-size:2rem}.search-box{max-width:680px;margin-bottom:25px}.search-box label{font-weight:600;display:block;margin-bottom:10px}.search-box input{width:100%;padding:17px;border:1px solid #babdb4;background:white;border-radius:0}.search-status{font-size:.85rem;margin-top:10px;min-height:1.6em}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;padding-bottom:70px}.contact-panel{background:#191a18;color:white;padding:40px}.contact-panel h2{color:var(--gold-light)}.contact-panel>a{display:block;font-size:1.15rem;margin-bottom:15px}.contact-panel p{color:#c1c4bc}.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.87rem;font-weight:600}.field input,.field select,.field textarea{padding:13px;background:white;border:1px solid #b8bdb2;border-radius:0;min-width:0;width:100%}.field textarea{min-height:135px;resize:vertical}.form-note{font-size:.82rem;color:var(--muted)}.mobile-actions{display:none}.sources{font-size:.88rem}.sources a{display:block;margin:12px 0}.empty{background:#fff;padding:24px}.family-links a{display:block;padding:16px 0;border-bottom:1px solid #ffffff25;text-decoration:none}.family-links strong{color:var(--gold-light);display:block}.family-links span{font-size:.9rem}.not-found{padding:95px 0;min-height:60vh}[hidden]{display:none!important}
@media(min-width:1600px){.hero-media{margin-right:calc((1280px - 100vw)/2)}}
@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.main-nav{gap:16px;font-size:.84rem}.brand{width:155px}.hero-copy{padding-right:35px}.hero-grid{min-height:600px}.hero-media{min-height:500px}.hero h1{font-size:3.6rem}.split{gap:45px}.content-layout{gap:40px;grid-template-columns:1fr 250px}.page-hero-grid{gap:40px}.city-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{gap:25px}.contact-grid{gap:35px}}
@media(max-width:800px){.nav-row{height:83px}.brand{width:160px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:83px;left:0;right:0;background:#141512;padding:25px;flex-direction:column;align-items:stretch;font-size:1rem;max-height:calc(100vh - 83px);overflow:auto}.main-nav.open{display:flex}.main-nav>a{padding:7px 0}.main-nav>.btn{padding:14px}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:50px 0 42px}.hero h1{font-size:clamp(2.9rem,8vw,4.6rem)}.hero-media{height:390px;min-height:0}.hero-media img{object-position:50% 43%}.trust-line .wrap{display:grid;grid-template-columns:1fr 1fr;gap:14px}.section{padding:62px 0}.section-head{display:block}.section-head p{margin-top:22px;max-width:600px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.split{grid-template-columns:1fr;gap:35px}.split-image{max-height:520px;aspect-ratio:1.4;object-position:50% 35%}.split.reverse .split-image{order:2}.price-grid{gap:12px}.price{padding:21px 15px}.price strong{font-size:2.1rem}.cta .wrap{align-items:start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr;row-gap:35px}.content-layout{display:block}.sidebar{position:static;display:grid;grid-template-columns:1fr 1fr;gap:20px}.page-hero-grid{grid-template-columns:1fr}.page-hero img{height:330px;object-position:50% 40%}.page-hero{padding-bottom:40px}.contact-grid{grid-template-columns:1fr}.mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1.6fr;z-index:30;background:#151614;padding:10px 16px;gap:10px;border-top:1px solid #ffffff30}.mobile-actions .btn{min-height:43px;padding:9px 12px}.mobile-actions .outline{color:white}.site-footer{padding-bottom:95px}}
@media(max-width:520px){.wrap{width:calc(100% - 36px)}body{font-size:16px}.hero h1{font-size:2.85rem}.hero-media{height:320px}.hero-copy{padding-top:40px}.actions{gap:18px}.cards{grid-template-columns:1fr}.card img{height:240px}.links{grid-template-columns:1fr}.price-grid{grid-template-columns:1fr}.price{display:flex;align-items:center;justify-content:space-between;gap:20px}.price strong{margin:0}.price small{display:block}.city-grid{grid-template-columns:1fr 1fr}.city-grid a{padding:25px 18px}.city-grid span{margin-bottom:14px}.sidebar{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;font-size:.85rem}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:7px}.quote-form{grid-template-columns:1fr}.field.full{grid-column:auto}.contact-panel{padding:26px}.contact-panel>a{overflow-wrap:anywhere}.cta h2{font-size:2.2rem}.page-hero h1{font-size:2.65rem}.article-section h2{font-size:1.7rem}.trust-line .wrap{font-size:.66rem;letter-spacing:.07em}.directory-intro h1{font-size:2.75rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.photo-gallery figure{margin:0;background:#fff}.photo-gallery img{width:100%;height:265px;object-fit:cover}.photo-gallery figcaption{font-size:.85rem;line-height:1.5;padding:15px 17px;color:var(--muted)}.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.process-card{background:var(--paper)}.process-card img{width:100%;height:240px;object-fit:cover}.process-card>div{padding:23px}.process-card h3{font-size:1.2rem;letter-spacing:-.025em}.process-card p{font-size:.94rem;color:var(--muted);margin:0}.main-nav{gap:20px}
@media(max-width:1050px){.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-nav{gap:15px}}
@media(max-width:1000px){.nav-row{height:83px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:83px;left:0;right:0;background:#141512;padding:25px;flex-direction:column;align-items:stretch;font-size:1rem;max-height:calc(100vh - 83px);overflow:auto}.main-nav.open{display:flex}.main-nav>a{padding:7px 0}.main-nav>.btn{padding:14px}}
@media(max-width:520px){.photo-gallery,.process-grid{grid-template-columns:1fr}.photo-gallery img{height:270px}.process-card img{height:260px}}

.quality-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-top:42px}.quality-grid article{border-top:1px solid #ffffff35;padding-top:25px}.quality-grid span{display:block;color:var(--gold-light);font-size:.82rem;margin-bottom:25px}.quality-grid h3{font-size:1.28rem;letter-spacing:-.02em}.quality-grid p{font-size:.96rem}.comparison-scroll{overflow-x:auto}.quality-table{border-collapse:collapse;width:100%;font-size:.93rem;min-width:580px}.quality-table caption{text-align:left;margin-bottom:18px;font-weight:600}.quality-table td,.quality-table th{text-align:left;vertical-align:top;padding:18px 15px;border-bottom:1px solid var(--line)}.quality-table thead{background:#e9e5db}.quality-table th[scope=row]{width:22%}@media(max-width:1100px){.quality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.main-nav{gap:12px;font-size:.8rem}}@media(max-width:1000px){.main-nav{font-size:1rem}}@media(max-width:520px){.quality-grid{grid-template-columns:1fr;gap:18px}.quality-grid span{margin-bottom:15px}}

/* Original-site repair sequence: retain the complete portrait illustrations. */
.repair-stages{list-style:none;padding:0;margin:0;align-items:start;gap:28px}
.repair-stages .process-card{background:transparent;min-width:0}
.repair-stages .process-card img{width:100%;max-width:260px;height:auto;aspect-ratio:211/297;object-fit:contain;display:block;border-radius:16px}
.repair-stages .process-card>div{padding:24px 0 0}
.repair-stages .step-number{display:block;color:#8c682a;font-size:1.1rem;font-weight:600;letter-spacing:.12em;margin-bottom:12px}
.repair-stages h3{font-size:1.25rem;margin-bottom:12px}
.repair-stages p{line-height:1.65;font-size:1rem}
.process-intro{padding-top:28px;padding-bottom:18px;max-width:1200px}
.process-intro h1{font-size:clamp(2.8rem,5.3vw,4.8rem);line-height:1.05;letter-spacing:-.045em;margin:18px 0 24px}
.process-intro .lead{max-width:740px}
.process-overview{padding-top:32px;padding-bottom:70px}
@media(max-width:520px){.repair-stages{gap:38px}.repair-stages .process-card{display:grid;grid-template-columns:minmax(0,1fr)}.repair-stages .process-card img{max-width:240px}.repair-stages .process-card>div{padding-top:20px}.process-overview{padding-bottom:40px}}

.pricing-table{min-width:760px}.pricing-table .amount{font-weight:700;font-size:1rem;color:var(--ink);min-width:155px}.price .paired-price{font-size:clamp(1.2rem,2vw,1.6rem);line-height:1.65;letter-spacing:-.025em;overflow-wrap:normal}.price-grid .price small{font-size:.85rem}.price-grid+.fine{font-size:.95rem}

.quote-start{padding:32px;background:#fff;border-top:3px solid var(--gold)}.quote-start h3{margin-top:35px}.quote-checklist{padding-left:24px}.quote-checklist li{margin-bottom:14px}.quote-start>.btn{margin-bottom:18px}.quote-start>.form-note{margin-top:18px}.mobile-actions{padding-bottom:max(10px,env(safe-area-inset-bottom))}@media(max-width:1200px){.nav-row{height:83px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:83px;left:0;right:0;background:var(--black);padding:25px;flex-direction:column;align-items:stretch;font-size:1rem;max-height:calc(100dvh - 83px);overflow:auto}.main-nav.open{display:flex}.main-nav>a{padding:7px 0}.main-nav>.btn{padding:14px}}@media(max-width:520px){.quote-start{padding:26px}.quote-start>.btn{width:100%}}

.regional-area-links{margin-top:35px}.regional-area-links h3{font-size:1.5rem;margin-bottom:20px}

/* StoneRepair: clear prices and careful craftsmanship. */
:root{--paper:#f4f4f1;--gold:#c8a458;--gold-light:#e8cf96;--line:#dcded8}
.hero-grid{min-height:580px;grid-template-columns:1.08fr 1fr}.hero-copy{padding:58px 52px 58px 0}.hero h1{font-size:clamp(3rem,4.8vw,4.9rem);line-height:1.05;max-width:650px}.hero .lead{font-size:1.12rem;line-height:1.75;max-width:530px}.hero-media{min-height:580px}.hero-media img{object-position:50% 57%}.hero-caption{position:absolute;z-index:1;bottom:30px;left:30px;right:25px}.hero-caption span{display:block;font-size:.875rem;line-height:1.5;margin-bottom:8px;color:#efeee9}.hero-caption strong{font:500 clamp(1.35rem,2vw,1.75rem)/1.3 Manrope,sans-serif}.hero-foot{font-size:.875rem;line-height:1.65;color:#c2c3bb;max-width:420px;margin-top:28px}.trust-line .wrap{font-size:.875rem;text-transform:none;letter-spacing:0;font-weight:500;padding-block:19px}.section{padding:78px 0}.money-cards .card{border:1px solid var(--line)}.money-cards .card img{height:270px;object-position:50% 60%}.money-cards h3{font-size:1.65rem}.card-body{padding:26px}.card-price{margin-top:auto;padding:16px 0 18px;border-top:1px solid var(--line)}.card-price strong{display:block;font-size:1.02rem;line-height:1.65;font-weight:600}.money-cards .text-link{margin-top:0}.scope-note{font-size:.9rem;color:var(--muted);margin:22px 0}.value-story{gap:70px}.value-story .large-text{color:#d3d5cd;font-size:1.14rem}.value-photo img{aspect-ratio:4/3}.value-photo p{font-size:.875rem;margin:15px 0 0}.dark .text-link{color:var(--gold-light)}.dark .btn:hover{color:#111}.quality-grid{gap:32px}.quality-grid span{font-size:.9rem}.quality-grid h3{line-height:1.3}.founder-story .split-image{aspect-ratio:1.2;object-position:50% 38%;background:#111}.material-strip{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:32px}.material-strip h3{font-size:1.1rem;letter-spacing:0;margin:0 14px 0 0}.material-strip a{border:1px solid var(--line);padding:7px 13px;text-decoration:none;font-size:.9rem;background:white}.material-strip a:hover{border-color:#a18042}.regional-area-links{margin:24px 0}.city-grid strong{font-weight:600}.family-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:35px}.family-grid a{padding:28px;border:1px solid #ffffff30;text-decoration:none;background:#191a18}.family-grid a:hover{border-color:var(--gold)}.family-grid span{font-size:.875rem;letter-spacing:.08em;color:var(--gold-light)}.family-grid h3{margin:18px 0 14px;font-size:1.8rem}.family-grid p{margin:0;font-size:1rem}.cta{padding:58px 0}.cta h2{line-height:1.2}.service-summary{border-top:1px solid var(--line);margin-top:28px;padding-top:20px;max-width:580px}.service-summary>div>span{display:block;font-size:.875rem;color:var(--muted);margin-bottom:8px}.service-summary strong{display:block;font-size:1.1rem;line-height:1.6}.service-summary p{font-size:.92rem;color:var(--muted);margin:14px 0}.page-hero-grid{align-items:start}.page-hero img{height:460px}.page-hero{padding-bottom:50px}.sidebar-box{border-top:3px solid var(--gold);background:#eeeee8}.sidebar-box .eyebrow{font-size:.875rem;letter-spacing:.06em}.sidebar-box .btn{font-size:.875rem}.number,.links small{font-size:.875rem;letter-spacing:.025em;text-transform:none}.eyebrow{font-size:.875rem;letter-spacing:.12em}.breadcrumbs{font-size:.875rem}.form-note{font-size:.9rem}.footer-bottom{font-size:.875rem}.footer-grid h3{font-size:.875rem;line-height:1.5}.header-quote{display:none}.btn,.menu-toggle{font-size:.9rem;min-height:48px}.main-nav{font-size:.9rem;gap:16px}.nav-row{gap:20px}.quality-table caption{font-size:1rem}.pricing-table .amount{font-size:1.05rem}.contact-panel h2{line-height:1.2}.contact-panel p{font-size:1rem}.quote-start{padding:36px}.quote-start>.btn{width:100%}.quote-checklist li::marker{color:#816027;font-weight:700}
@media(max-width:1200px){.header-quote{display:inline-flex;margin-left:auto}.main-nav{font-size:1rem}.nav-row{gap:15px}}
@media(max-width:1000px){.hero h1{font-size:clamp(2.7rem,5.2vw,4rem)}.hero-copy{padding-right:30px}.hero-grid,.hero-media{min-height:520px}.split{gap:40px}.section-head p{max-width:400px}}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr;min-height:0}.hero-copy{padding:43px 0 38px}.hero h1{font-size:clamp(2.75rem,7.4vw,4.25rem)}.hero-media{height:340px;min-height:0}.hero-media img{object-position:50% 61%}.hero-caption{bottom:23px;left:22px}.section{padding:58px 0}.money-cards{grid-template-columns:1fr}.money-cards .card{display:grid;grid-template-columns:.85fr 1fr}.money-cards .card img{height:100%;min-height:300px}.split{grid-template-columns:1fr;gap:30px}.value-photo img{max-height:430px}.trust-line .wrap{grid-template-columns:1fr 1fr;font-size:.875rem}.page-hero img{height:340px}.family-grid{grid-template-columns:1fr}.family-grid a{padding:25px}.family-grid h3{font-size:1.6rem}.family-section{padding-block:48px}.quote-start{padding:28px}.mobile-actions .btn{min-height:48px}.cta{padding:46px 0}.cta .btn{width:100%}.service-summary{max-width:none}}
@media(max-width:600px){.pricing-table{min-width:0}.pricing-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.pricing-table tbody{display:block}.pricing-table tr{display:block;border:1px solid var(--line);margin-bottom:18px;background:#fff;padding:20px}.pricing-table th[scope=row]{display:block;width:auto;border:0;padding:0 0 15px;font-size:1.12rem}.pricing-table td{display:block;border:0;padding:7px 0;min-width:0}.pricing-table td::before{content:attr(data-label);display:block;font-size:.875rem;color:var(--muted);font-weight:400}.pricing-table td:last-child{padding-top:14px;border-top:1px solid var(--line);margin-top:9px}}
@media(max-width:520px){.wrap{width:calc(100% - 36px)}.brand{width:125px}.nav-row{gap:10px;height:78px}.main-nav{top:78px;max-height:calc(100dvh - 78px)}.header-quote{padding:8px 12px;font-size:.875rem;min-height:43px}.menu-toggle{padding:8px 11px;min-height:43px;font-size:.875rem}.hero h1{font-size:clamp(2.35rem,8vw,2.9rem)}.hero .lead{font-size:1.05rem}.hero-media{height:300px}.hero-copy .actions{gap:21px}.hero-copy .btn{padding-inline:20px}.trust-line .wrap{gap:14px 20px;line-height:1.5;padding-block:18px}.money-cards .card{display:flex}.money-cards .card img{height:245px;min-height:0}.money-cards h3{font-size:1.55rem}.card-body{padding:24px}.section{padding:48px 0}.section-head{margin-bottom:28px}.section-head h2{font-size:2.15rem}.page-hero h1{font-size:2.35rem;overflow-wrap:anywhere}.hero-foot{font-size:.875rem}.quality-grid{gap:20px}.process-overview{padding-top:25px}.eyebrow{letter-spacing:.09em;line-height:1.55}.contact-panel,.quote-start{padding:25px}.breadcrumbs{font-size:.875rem;gap:7px}.footer-grid{font-size:.9rem}.city-grid span{font-size:.875rem;letter-spacing:0}.city-grid strong{font-size:1.1rem}.material-strip a{font-size:.9rem}.service-summary strong{font-size:1.05rem}.cta h2{font-size:2.15rem}.mobile-actions{grid-template-columns:1fr 1.3fr}.mobile-actions .btn{font-size:.9rem}.photo-gallery img{object-fit:contain;background:#eeeee8;height:auto;max-height:340px}}
@media(max-width:360px){.brand{width:110px}.nav-row{gap:7px}.header-quote{padding-inline:10px}.hero h1{font-size:2.35rem}.actions{gap:16px}}

.reviews-section{background:#eaece6}.review-summary{min-width:250px;max-width:380px}.review-summary>strong{font:600 2.8rem/1.2 Manrope,sans-serif;letter-spacing:-.04em;color:#232522;display:block}.review-summary strong span{font:500 1rem/1.5 'DM Sans',sans-serif;letter-spacing:0}.review-summary p{font-size:.9rem;margin:8px 0 0;color:var(--muted)}.review-summary .review-date{font-size:.875rem}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.review-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.review-card{margin:0;background:#fff;border-top:3px solid var(--gold);padding:30px;display:flex;flex-direction:column}.review-stars{color:#8a6522;font-size:1.2rem;letter-spacing:.12em;line-height:1.4;margin-bottom:22px}.review-card blockquote{margin:0 0 26px;font-size:1.06rem;line-height:1.75}.review-card blockquote p{margin:0;color:#30352c}.review-card figcaption{margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font-size:1rem}.review-card figcaption strong,.review-card figcaption span{display:block}.review-card figcaption span{font-size:.875rem;color:var(--muted);margin-top:4px}.review-bottom{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:28px}.review-bottom p{font-size:.9rem;color:var(--muted);margin:0;max-width:650px}.review-bottom .btn{flex-shrink:0}.review-bottom .btn:hover{background:var(--gold-light)}
@media(max-width:800px){.review-grid{grid-template-columns:1fr}.review-summary{margin-top:26px}.review-bottom{flex-direction:column;align-items:start}.review-card{padding:27px}}
@media(max-width:520px){.review-grid.compact{grid-template-columns:1fr}.review-summary>strong{font-size:2.5rem}.review-bottom .btn{width:100%}.review-card blockquote{font-size:1rem}}

/* Original recent-job comparisons */
.before-after-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.before-after-pair figure{margin:0;min-width:0;background:#fff;border:1px solid #dfe0db}.before-after-pair img{display:block;width:100%;height:auto;max-height:640px;object-fit:contain;background:#eeeee8}.before-after-pair figcaption{padding:16px;font-size:1rem;line-height:1.5}.before-after-pair figcaption strong{display:block;color:#816027;font-size:1.1rem;margin-bottom:5px}.before-after-pair figcaption span{display:block;font-size:.9rem}.comparison-block{margin:26px 0 38px}.job-facts{max-width:1200px;margin:0 auto 30px;display:flex;gap:12px;flex-wrap:wrap;padding:0 24px}.job-facts span{padding:9px 14px;background:#efefe9;font-size:1rem}.gallery-project:nth-of-type(even){background:#fff}.gallery-project .job-comparisons>h2{font-size:1.5rem}.gallery-project .before-after-pair img{max-height:620px}.main-nav{gap:14px}
@media(max-width:520px){.before-after-pair{gap:10px}.before-after-pair figcaption{padding:11px}.before-after-pair figcaption span{font-size:.875rem}.comparison-block h3{font-size:1.1rem}.job-facts{padding-inline:18px}.job-facts span{font-size:.9rem}}

/* Quote flow and small-screen finishing. */
.quote-frame{width:100%;height:2100px;border:0;background:#fff;display:block;scroll-margin-top:110px}
.contact-panel{align-self:start}.quote-start{min-width:0}.quote-start .form-note{overflow-wrap:anywhere}
.job-facts{display:flex;flex-wrap:wrap;gap:12px 26px;padding-block:18px;color:var(--muted);border-top:1px solid var(--line)}
.card-body,.hero-copy,.page-hero-grid>div,.contact-grid>section,.footer-grid>div{min-width:0}
.contact-panel>a{overflow-wrap:anywhere}.comparison-scroll{overscroll-behavior-x:contain}
@media(max-width:520px){.nav-row{gap:10px}.brand{width:125px;min-width:85px;flex-shrink:1}.header-quote{padding:10px 13px;min-height:44px}.menu-toggle{padding:9px 12px;min-height:44px}.hero h1{font-size:clamp(2.4rem,9vw,2.85rem)}.quote-start{padding:22px 14px}.quote-frame{height:2300px}.contact-panel{padding:26px}.contact-panel>a{font-size:1rem}.before-after-pair{gap:22px}.job-facts{font-size:.95rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.card:hover{transform:none}}

.booking-section{background:#eaece6}.booking-steps{list-style:none;padding:0;margin:0 0 30px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.booking-steps li{border-top:2px solid #ac8a45;padding:24px 0}.booking-steps span{display:block;margin-bottom:18px;color:#72531e;font-size:1rem;font-weight:700}.booking-steps h3{font-size:1.4rem;line-height:1.35}.booking-steps p{margin:0;color:#4b5047}.photo-link{display:block;cursor:zoom-in}.photo-hint{font-size:1rem;color:var(--muted)}.pricing-table{min-width:620px}
@media(max-width:800px){.booking-steps{grid-template-columns:1fr;gap:10px}.booking-steps li{padding:20px 0}.booking-steps span{margin-bottom:10px}}

/* Centre the repair-process illustrations and steps on phones and tablets. */
@media(max-width:800px){.repair-stages .process-card{text-align:center}.repair-stages .process-card img{margin-inline:auto}.repair-stages .process-card>div{width:100%;max-width:42ch;margin-inline:auto}.repair-stages .step-number,.repair-stages h3,.repair-stages p{text-align:center}}

/* Large, relevant images between content sections; original references stay sharp. */
.editorial-figure{margin:30px 0 44px;background:#fff;border:1px solid var(--line);overflow:hidden}.editorial-figure img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}.editorial-figure figcaption{padding:18px 22px;font-size:1rem;line-height:1.6;color:#4b5047}.visual-band{background:#eceee9}.visual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.visual-grid .editorial-figure{margin:0}.visual-grid .editorial-figure img{aspect-ratio:4/3}.photo-gallery img[data-low-resolution],.repair-stages .process-card img[data-low-resolution]{max-width:min(100%,var(--source-width));height:auto;object-fit:contain;margin-inline:auto}.photo-gallery .photo-link{background:#f1f2ee;padding:16px}.card img{image-rendering:auto}.page-hero img{object-position:center}
@media(max-width:800px){.visual-grid{grid-template-columns:1fr}.editorial-figure{margin:24px 0 32px}.editorial-figure figcaption{padding:16px 18px}.visual-grid .editorial-figure img{aspect-ratio:16/10}}
.confirmation-photo{width:180px;height:auto;margin:24px 0;max-width:100%}
