.quick-quote{width:min(680px,calc(100vw - 28px));max-height:90dvh;overflow-y:auto;border:0;border-radius:18px;padding:36px;background:#fff;color:#24272a}.quick-quote::backdrop{background:#171b22bb;backdrop-filter:blur(6px)}.quick-quote h2{font-size:36px;margin:10px 0}.quick-quote>p{font-size:15px}.quick-close{position:absolute;right:18px;top:18px;border:0;border-radius:50%;background:#f2f2ef;width:36px;height:36px;cursor:pointer}.quick-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.quick-quote label{font-size:13px;display:block}.quick-quote input,.quick-quote select,.quick-quote textarea{width:100%;padding:12px;font-size:16px;border:1px solid #ddd;border-radius:8px;margin:7px 0 16px}.quick-photo-label span{color:#777;font-size:11px}.quick-quote .quick-consent{display:flex;gap:12px;align-items:flex-start;line-height:1.6;margin:18px 0}.quick-consent input{width:18px;height:18px;flex-shrink:0;margin:3px 0;accent-color:#e62e31}#quick-photo-preview{width:140px;height:90px;object-fit:contain;border-radius:8px}#quick-status{font-size:14px;color:#305b3a;margin-top:16px}#quick-photo-remove{border:0;background:#f7f3f2;color:#a62329;padding:8px;border-radius:5px;font-size:12px}.experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:35px}.experience-grid article{border:1px solid #dededb;border-radius:14px;overflow:hidden;background:#fff}.experience-projects article a{display:block}.experience-projects article img{width:100%;height:240px;object-fit:cover;transition:transform .4s}.experience-projects article:hover img{transform:scale(1.025)}.experience-projects article :is(h3,p,span,b){display:block;margin:16px 22px}.experience-projects article span{font-size:11px;text-transform:uppercase;color:#d52c30;letter-spacing:1px}.experience-projects h3{font-size:24px}.experience-projects article p{font-size:14px}.experience-projects article b{font-size:13px;padding-bottom:8px}.project-comparison{position:relative;aspect-ratio:3/2;border-radius:16px;overflow:hidden;background:#ececea}.project-comparison>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.project-comparison .comparison-after{clip-path:inset(0 0 0 var(--comparison));background:#ececea}.comparison-line{position:absolute;top:0;bottom:0;left:var(--comparison);width:2px;background:#fff;pointer-events:none}.comparison-line:after{content:'↔';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:white;color:#222;box-shadow:0 3px 15px #0003;padding:12px;border-radius:50%}.project-comparison input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.project-comparison:focus-within{outline:3px solid #e62e31;outline-offset:3px}.comparison-before-label,.comparison-after-label{position:absolute;bottom:18px;background:#111b;color:#fff;padding:8px 12px;border-radius:6px;font-size:10px;letter-spacing:1px;pointer-events:none}.comparison-before-label{left:18px}.comparison-after-label{right:18px}.experience-before-after{display:grid;grid-template-columns:.7fr 1fr;align-items:center;gap:60px}.project-specs{display:flex;flex-wrap:wrap;gap:35px;padding:30px 0;border-bottom:1px solid #ddd}.project-specs dt{font-size:12px;color:#787c80;margin-bottom:8px}.project-specs dd{margin:0;font-weight:650;font-size:16px}.project-story{max-width:800px;margin:35px 0}.project-story p{font-size:17px;line-height:1.9}.project-cover{width:100%;max-height:660px;object-fit:contain;border-radius:16px;background:#f4f4f1}.project-extra-photos{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0}.project-extra-photos img{width:100%;height:300px;object-fit:cover;border-radius:12px}.experience-reviews article{padding:28px}.review-stars{color:#c48b25;letter-spacing:3px}.experience-reviews blockquote{margin:22px 0;font-size:17px;line-height:1.8}.experience-reviews article p{font-size:13px;color:#777;margin:6px 0}.review-photo{width:100%;height:140px;object-fit:cover;margin-top:20px;border-radius:8px}.experience-reviews small{font-size:11px;color:#777}@media(max-width:800px){.experience-grid{grid-template-columns:1fr 1fr}.experience-before-after{grid-template-columns:1fr;gap:25px}}@media(max-width:540px){.experience-grid,.project-extra-photos{grid-template-columns:1fr}.quick-quote{padding:26px 20px}.quick-quote h2{font-size:29px}.quick-fields{grid-template-columns:1fr;gap:0}.experience-projects article img{height:220px}.project-specs{gap:22px}.experience-before-after h2{font-size:34px}.project-extra-photos img{height:auto}}@media(prefers-reduced-motion:reduce){.experience-projects article img{transition:none;transform:none!important}}
.review-showcase{padding:85px 0 65px;background:linear-gradient(140deg,#faf7f4,#f4f3f0 55%,#fff2ee);border-top:1px solid #e7e2dd;overflow:hidden}.review-heading{display:flex;justify-content:space-between;gap:35px;align-items:flex-end;margin-bottom:35px}.review-heading h2{font-size:clamp(30px,3.4vw,48px);line-height:1.18;letter-spacing:-1.8px;margin:12px 0 0}.review-heading h2 em{color:#a07f69;font-style:normal}.review-demo-notice{font-size:13px!important;max-width:650px;line-height:1.6!important;color:#6b6059;margin:18px 0 0!important}.review-controls{display:flex;gap:9px;flex-shrink:0}.review-controls button{width:46px;height:46px;border-radius:50%;border:1px solid #d9d1cb;background:#fff;color:#24272a;font-size:21px;transition:background .2s,color .2s,transform .2s;cursor:pointer}.review-controls button:hover{background:#272a2c;color:#fff;transform:translateY(-2px)}.review-controls button:last-child{font-size:17px}.review-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:7px 2px 24px;position:relative;overscroll-behavior-x:contain}.review-track::-webkit-scrollbar{display:none}.review-track:focus-visible{outline:2px solid #d12a32;outline-offset:4px}.review-showcase .review-slide{flex:0 0 calc((100% - 44px)/3);min-width:0;scroll-snap-align:start;padding:28px;border-radius:18px;background:#fff;border:1px solid #e8e1db;box-shadow:0 8px 22px #6e4b2606;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}.review-slide:hover{transform:translateY(-4px);box-shadow:0 15px 30px #6e4b2610}.review-card-top{display:flex;justify-content:space-between;align-items:center;height:38px}.review-showcase .review-stars{font-size:18px;letter-spacing:4px;color:#c89339;white-space:nowrap}.review-quote-mark{font:76px Georgia,serif;color:#eaded2;line-height:1;transform:translateY(18px)}.review-example-badge{font-size:10px;line-height:1.4;color:#745d4b;background:#f6eee6;padding:5px 9px;border-radius:20px;align-self:flex-start;margin-top:14px}.review-showcase blockquote{font-size:16px;line-height:1.8;margin:19px 0 26px;color:#3e4245;flex:1}.review-author{border-top:1px solid #eee7e1;padding-top:20px;display:flex;align-items:center;gap:12px}.review-avatar{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:50%;background:linear-gradient(140deg,#f5e6d7,#efe7df);color:#987153;font-size:20px}.review-author strong{font-size:13px}.review-author p{font-size:12px!important;line-height:1.5;margin:4px 0 0!important}.review-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:10px;color:#87776b;font-size:12px}.review-dots{display:flex;gap:8px;align-items:center}.review-dots button{width:8px;height:8px;padding:0;border:0;border-radius:8px;background:#d9cdc1;cursor:pointer;position:relative;transition:width .25s,background .25s}.review-dots button:before{content:'';position:absolute;inset:-10px -3px}.review-dots button[aria-current=true]{width:27px;background:#be8b62}.review-counter{font-variant-numeric:tabular-nums;letter-spacing:2px}@media(max-width:1000px){.review-showcase .review-slide{flex-basis:calc((100% - 22px)/2)}}@media(max-width:600px){.review-showcase{padding:55px 0 38px}.review-heading{display:block;margin-bottom:22px}.review-heading h2{font-size:32px;letter-spacing:-1px}.review-controls{margin-top:22px}.review-controls button{width:42px;height:42px}.review-showcase .review-slide{flex-basis:88%;padding:23px}.review-track{gap:14px}.review-showcase blockquote{font-size:15px;line-height:1.8}.review-bottom>span:first-child{display:none}.review-demo-notice{font-size:12px!important}}@media(prefers-reduced-motion:reduce){.review-slide,.review-controls button,.review-dots button{transition:none!important;transform:none!important}.review-track{scroll-behavior:auto!important}}
.service-regions{padding:60px 0;background:#fff;border-top:1px solid #e5e5df}.regions-layout{display:grid;grid-template-columns:1.3fr 1fr;gap:80px;align-items:start}.regions-intro h2{font-size:32px;letter-spacing:-1px;line-height:1.2;margin:12px 0 22px}.regions-intro>p:not(.eyebrow){font-size:14px;line-height:1.85;color:#62676a;margin-bottom:15px}.regions-intro .text-button{margin-top:6px;font-size:13px}.regions-links{background:#f7f7f3;padding:26px;border:1px solid #e8e8e1;border-radius:14px}.regions-links h3{font-size:16px;margin:0 0 18px;letter-spacing:0}.regions-links ul{display:grid;grid-template-columns:1fr 1fr;gap:0 22px;list-style:none;margin:0;padding:0}.regions-links a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #e2e3dc;font-size:14px;transition:color .2s}.regions-links a span{color:#aaa;font-size:13px}.regions-links a:hover,.regions-links a:hover span{color:#e62e31}.regions-links>p{font-size:12px;color:#777d7f;line-height:1.7;margin:20px 0 0}.regions-links a:focus-visible{outline:2px solid #e62e31;outline-offset:3px}@media(max-width:850px){.regions-layout{gap:35px;grid-template-columns:1fr 1fr}}@media(max-width:600px){.service-regions{padding:42px 0}.regions-layout{grid-template-columns:1fr;gap:28px}.regions-intro h2{font-size:28px}.regions-links{padding:22px}.regions-links a{font-size:13px}.regions-intro>p:not(.eyebrow){font-size:14px}}
