@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";
@import "https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800;900&display=swap";
:root{--shell:#071326;--dock:#08152a;--canvas:#f7f4ec;--canvas-2:#ece3d4;--surface:#f8f5ee;--surface-strong:#fffaf0;--dark:#081120;--dark-2:#101b30;--primary:#0a1b33;--primary-soft:#233755;--muted:#6a7180;--muted-dark:#9aa4b7;--line:#0a1b331f;--line-strong:#0a1b332e;--accent:#d6ae35;--accent-2:#f0c846;--accent-dark:#9c7521;--white:#fbf8ef;--frame-size:12px;--corner-size:32px;--dock-height:90px;--font-heading:"Inter", sans-serif;--font-body:"Geist", "Inter", sans-serif;--ease-out:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--shell);color:var(--primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}body.menu-open,body.modal-open{overflow:hidden}img,svg{display:block}img{max-width:100%}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}[hidden]{display:none!important}.container{width:min(100% - 32px,1280px);margin:0 auto}.site-frame{z-index:100;pointer-events:none;background:var(--shell);position:fixed}.site-frame-top,.site-frame-bottom{height:var(--frame-size);left:0;right:0}.site-frame-top{top:0}.site-frame-bottom{bottom:0}.site-frame-left,.site-frame-right{width:var(--frame-size);top:0;bottom:0}.site-frame-left{left:0}.site-frame-right{right:0}.frame-corner{z-index:101;width:var(--corner-size);height:var(--corner-size);color:var(--shell);pointer-events:none;position:fixed}.frame-corner-tl{top:var(--frame-size);left:var(--frame-size);transform:rotate(90deg)}.frame-corner-tr{top:var(--frame-size);right:var(--frame-size);transform:rotate(180deg)}.frame-corner-bl{bottom:var(--frame-size);left:var(--frame-size)}.frame-corner-br{bottom:var(--frame-size);right:var(--frame-size);transform:rotate(270deg)}.canvas-container{background:var(--shell);min-height:100vh}.canvas-content{background:radial-gradient(circle at top center, #d6ae3521, transparent 30%), radial-gradient(circle at 18% 16%, #ffffff47, transparent 18%), linear-gradient(180deg, var(--canvas) 0%, #f8f4eb 35%, var(--canvas-2) 100%);min-height:100vh;position:relative;overflow-x:clip;box-shadow:0 0 0 1px #ffffff0a}.dock-nav-container{top:var(--frame-size);z-index:120;width:min(920px,100vw - 500px);min-height:var(--dock-height);background:var(--dock);color:var(--white);border:1px solid #ffffff12;border-top:0;border-radius:0 0 34px 34px;justify-content:space-between;align-items:center;gap:18px;padding:0 22px 12px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 18px 38px -18px #00000080}.dock-bridge{width:58px;height:58px;color:var(--dock);pointer-events:none;position:absolute;top:0}.dock-bridge-left{left:-58px;transform:rotate(180deg)}.dock-bridge-right{right:-58px;transform:rotate(90deg)}.dock-logo{background:#ffffff0a;border-radius:12px;flex:none;justify-content:center;align-items:center;width:132px;height:46px;display:inline-flex;overflow:hidden}.dock-logo img{object-fit:cover;width:100%;height:100%}.dock-links{flex:1;justify-content:center;align-items:center;gap:clamp(18px,2.5vw,28px);display:flex}.dock-links a,.mobile-drawer a{color:#fbf8efb8;font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:900;text-decoration:none;transition:color .16s}.dock-links a:hover,.mobile-drawer a:hover{color:var(--white)}.premium-btn{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#071326;cursor:pointer;min-height:50px;font-family:var(--font-heading);letter-spacing:.09em;text-transform:uppercase;transition:transform .18s var(--ease-out), box-shadow .18s var(--ease-out), filter .18s var(--ease-out);border:0;border-radius:999px;justify-content:center;align-items:center;gap:12px;padding:0 24px;font-size:12px;font-weight:850;text-decoration:none;display:inline-flex;box-shadow:0 18px 38px -18px #d6ae35a6}.premium-btn svg{flex:none;width:16px;height:16px}.premium-btn:hover{filter:brightness(1.02);transform:translateY(-2px);box-shadow:0 26px 42px -18px #d6ae35bf}.premium-btn:active{transform:translateY(0)scale(.99)}.premium-btn:focus-visible,input:focus-visible,select:focus-visible,.faq-list button:focus-visible,.mobile-menu-btn:focus-visible,a:focus-visible{outline:2px solid var(--accent-2);outline-offset:4px}.premium-btn-accent{color:var(--primary);box-shadow:none;background:#0811200f;border:1px solid #0a1b331f}.premium-btn-light{background:var(--white);color:var(--primary);box-shadow:0 18px 34px -20px #0000008c}.premium-btn-white{color:var(--white);box-shadow:none;background:#ffffff1f;border:1px solid #ffffff38}.mobile-menu-btn,.mobile-drawer{display:none}.hero-section{align-items:center;min-height:100dvh;padding:128px 0 56px;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;opacity:.55;filter:saturate(.75);position:absolute;inset:0}.hero-bg img{object-fit:cover;width:100%;height:100%}.hero-wash{z-index:1;background:linear-gradient(90deg,#f7f4ecf5,#f7f4ece0 44%,#f7f4ecb8),radial-gradient(circle at 90% 20%,#d6ae352e,#0000 40%);position:absolute;inset:0}.hero-grid{z-index:2;grid-template-columns:minmax(0,1fr) minmax(390px,500px);align-items:center;gap:clamp(34px,5vw,76px);display:grid;position:relative}.hero-copy{flex-direction:column;gap:22px;display:flex}.eyebrow,.section-kicker{width:fit-content;color:var(--accent-dark);font-family:var(--font-heading);letter-spacing:.18em;text-transform:uppercase;background:#d6ae351f;border:1px solid #d6ae3547;border-radius:999px;align-items:center;gap:10px;padding:9px 14px;font-size:10px;font-weight:850;display:inline-flex}.live-dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 6px #d6ae3524}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.032em;margin:0;line-height:1.08}h1{color:var(--primary);max-width:690px;font-size:clamp(2.85rem,5.15vw,4.8rem);font-weight:850}h1:first-line{color:var(--primary)}.hero-copy h1{text-wrap:balance}.hero-copy h1 span,.gold-text{color:var(--accent)}.hero-subtitle{color:var(--muted);max-width:540px;margin:0;font-size:clamp(.98rem,1.25vw,1.08rem);line-height:1.7}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-lead-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffaf0c7;border:1px solid #0a1b331f;border-radius:30px;padding:18px;position:relative;box-shadow:0 28px 80px -42px #081120a6}.estimate-preview{background:#fffaf0e0;border:1px solid #0a1b331a;border-radius:26px;padding:clamp(22px,3vw,30px);box-shadow:0 22px 55px -38px #081120a6}.estimate-preview h2,.form-step h2{color:var(--primary);margin-top:18px;font-size:clamp(1.65rem,3vw,2.35rem);font-weight:850}.estimate-preview>p,.form-step>p{color:var(--muted);margin:14px 0 0;font-size:14px;line-height:1.7}.estimate-preview ol{gap:12px;margin:22px 0;padding:0;list-style:none;display:grid}.estimate-preview li{color:var(--primary);align-items:center;gap:12px;font-size:13px;font-weight:700;display:flex}.estimate-preview li strong{background:var(--primary);width:30px;height:30px;color:var(--white);font-family:var(--font-heading);border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.estimate-preview-cta{width:100%}.privacy-note{color:var(--muted);text-align:center;margin:14px 0 0!important;font-size:11px!important;line-height:1.55!important}.privacy-note a{color:var(--accent-dark);font-weight:800}.hero-form{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffaf0d6;border:1px solid #0a1b331a;border-radius:26px;max-width:none;padding:18px;box-shadow:0 22px 55px -38px #081120a6}#hero-inline-form{gap:12px;display:grid}#hero-inline-form .form-schedule{margin-top:0}.lead-hp{opacity:0;width:1px;height:1px;position:absolute;left:-9999px}.lead-form.is-submitting{pointer-events:none}.lead-form.is-submitting .hero-submit{filter:grayscale(.25);opacity:.78}.estimate-modal{z-index:500;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.estimate-modal[hidden]{display:none}.estimate-modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#030a14c2;position:fixed;inset:0}.estimate-modal-dialog{z-index:1;background:var(--surface-strong);border:1px solid #ffffff1f;border-radius:30px;width:min(100%,680px);max-height:calc(100dvh - 48px);position:relative;overflow-y:auto;box-shadow:0 36px 100px -24px #000000b8}.estimate-modal-close{z-index:3;width:44px;height:44px;color:var(--primary);cursor:pointer;background:#ffffffe6;border:1px solid #0a1b331f;border-radius:50%;font-size:26px;line-height:1;position:absolute;top:16px;right:16px}.estimate-form{padding:clamp(24px,5vw,42px)}.estimate-progress{gap:8px;margin:4px 56px 28px 0;display:grid}.estimate-progress>span{color:var(--muted);font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:850}.estimate-progress>div{background:#0a1b331a;border-radius:999px;height:5px;overflow:hidden}.estimate-progress i{border-radius:inherit;background:linear-gradient(90deg, var(--accent-dark), var(--accent-2));width:33.333%;height:100%;transition:width .22s var(--ease-out);display:block}.form-step[hidden]{display:none}.service-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:24px;display:grid}.service-option{cursor:pointer;text-transform:none;background:#ffffff9e;border:1px solid #0a1b331f;border-radius:18px;justify-content:space-between;align-items:center;gap:14px;min-height:106px;padding:16px;transition:border-color .16s,background .16s,transform .16s;display:flex}.service-option:hover,.service-option.is-selected{background:#d6ae351f;border-color:#d6ae35d9;transform:translateY(-1px)}.service-option span,.service-option strong,.service-option small{display:block}.service-option strong{color:var(--primary);font-family:var(--font-heading);letter-spacing:0;font-size:14px;line-height:1.35}.service-option small{color:var(--muted);font-family:var(--font-body);letter-spacing:0;margin-top:5px;font-size:11px;font-weight:600;line-height:1.45}.service-option input{width:20px;height:20px;min-height:20px;accent-color:var(--accent-dark);flex:none;padding:0}.estimate-actions{gap:12px;margin-top:8px;display:flex}.estimate-actions>*{flex:1}.estimate-back{min-height:50px;color:var(--primary);cursor:pointer;font-family:var(--font-heading);letter-spacing:.09em;text-transform:uppercase;background:#0a1b330f;border:1px solid #0a1b331f;border-radius:999px;font-size:12px;font-weight:850}.estimate-form.is-success>:not(.lead-hp):not(.form-success){display:none}.estimate-form.is-success .form-success{margin-top:0;display:block}.form-success .premium-btn{color:var(--white);box-shadow:none;background:#ffffff1a;border:1px solid #ffffff2e;margin-top:26px}.form-success .premium-btn:hover{background:#ffffff29;transform:translateY(-1px)}.form-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.form-heading span,.form-heading strong{font-family:var(--font-heading);letter-spacing:.15em;text-transform:uppercase;font-size:10px;font-weight:850}.form-heading span{color:var(--muted)}.form-heading strong{color:var(--accent-dark)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}label{color:var(--primary);font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;gap:7px;font-size:10px;font-weight:850;display:grid}input,select{width:100%;min-height:46px;color:var(--primary);font-family:var(--font-body);letter-spacing:0;text-transform:none;background:#ffffffb8;border:1px solid #0a1b331f;border-radius:15px;padding:0 14px;font-size:14px;transition:border-color .16s,box-shadow .16s}input::placeholder{color:#0a1b3361}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--accent-dark) 50%), linear-gradient(135deg, var(--accent-dark) 50%, transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 12px) 20px;background-repeat:no-repeat;background-size:6px 6px,6px 6px}input.is-invalid,select.is-invalid{border-color:#b45a35;box-shadow:0 0 0 3px #b45a3524}input:focus,select:focus{border-color:#d6ae35e6;outline:0;box-shadow:0 0 0 4px #d6ae352e}.form-schedule{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.form-error{color:#93442a;min-height:18px;margin:9px 0 10px;font-size:13px;line-height:1.4}.hero-submit{width:100%}.lead-form.is-success .form-grid,.lead-form.is-success .form-schedule,.lead-form.is-success .form-error,.lead-form.is-success .hero-submit,.lead-form.is-success .form-heading,.lead-form.is-success .privacy-note{display:none}.lead-form.is-success .form-success{display:block}.form-success{background:var(--dark);max-width:none;color:var(--white);text-align:center;border:1px solid #ffffff12;border-radius:26px;padding:clamp(28px,5vw,42px);display:none;box-shadow:0 32px 80px -28px #0009}.form-success:before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23071326' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E") center / 36px 36px no-repeat, linear-gradient(135deg, var(--accent-dark), var(--accent-2));border-radius:50%;width:68px;height:68px;margin:0 auto 22px;display:block;box-shadow:0 12px 32px -8px #d6ae358c}.form-success strong,.form-success span{display:block}.form-success strong{font-family:var(--font-heading);letter-spacing:-.025em;color:var(--white);margin-bottom:10px;font-size:clamp(1.35rem,3vw,1.7rem);font-weight:800;line-height:1.2}.form-success span{color:#fbf8ef9e;max-width:360px;margin:0 auto;font-size:14px;line-height:1.65}.trust-row{color:#0a1b33ad;flex-wrap:wrap;align-items:center;gap:14px;font-size:14px;font-weight:600;display:flex}.trust-row a{text-decoration:none}.trust-row span:first-child{color:var(--accent-dark)}.trust-row i{background:#0a1b3329;width:1px;height:18px}.hero-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.hero-proof-grid div{background:#08152a0f;border:1px solid #0a1b331a;border-radius:18px;flex-direction:column;justify-content:center;min-height:86px;padding:14px 16px;display:flex}.hero-proof-grid div:first-child{background:linear-gradient(135deg,#d6ae353d,#d6ae351a);border-color:#d6ae3547}.hero-proof-grid strong{color:var(--primary);font-family:var(--font-heading);font-size:clamp(1.75rem,3vw,2.35rem);font-weight:850;line-height:1}.hero-proof-grid span{color:var(--muted);margin-top:6px;font-size:12px;font-weight:700;line-height:1.35}.hero-media-card{background:var(--dark);color:var(--white);border-radius:22px;height:172px;margin-top:14px;position:relative;overflow:hidden;box-shadow:0 24px 70px -42px #000000bf}.hero-media-card img{object-fit:cover;width:100%;height:100%}.hero-media-card:after{content:"";background:linear-gradient(#0000 45%,#081120d1);position:absolute;inset:0}.bento-label{z-index:2;font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;background:#00000085;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:8px;padding:8px 11px;font-size:10px;font-weight:850;display:inline-flex;position:absolute;bottom:16px;left:16px}.bento-label span,.service-badge span{background:var(--accent);border-radius:50%;width:7px;height:7px}.stats-strip{background:var(--shell);color:var(--white);padding:36px 0}.stats-grid{grid-template-columns:repeat(4,1fr);display:grid}.stats-grid div{text-align:center;border-right:1px solid #ffffff17;flex-direction:column;justify-content:center;align-items:center;padding:18px;display:flex}.stats-grid div:last-child{border-right:0}.stats-grid strong{color:var(--accent);font-family:var(--font-heading);font-size:clamp(1.85rem,3.4vw,2.8rem);font-weight:850;line-height:1}.stats-grid span{color:#fbf8ef7a;font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;margin-top:10px;font-size:11px;font-weight:800}.services-section{background:var(--surface);min-height:100vh;padding:clamp(80px,10vw,130px) 0;position:relative;overflow:hidden}.services-section:before,.services-section:after{content:"";background:linear-gradient(90deg,#0000,#0a1b3314,#0000);height:1px;position:absolute;left:0;right:0}.services-section:before{top:0}.services-section:after{bottom:0}.section-heading{margin-bottom:clamp(42px,6vw,76px)}.split-heading{justify-content:space-between;align-items:end;gap:24px;display:flex}.center-heading{text-align:center;max-width:760px;margin-left:auto;margin-right:auto}.center-heading .section-kicker{margin:0 auto}.section-heading h2{color:var(--primary);text-wrap:balance;max-width:760px;margin-top:18px;font-size:clamp(2rem,3.6vw,3.25rem);font-weight:850}.section-heading p{color:var(--muted);max-width:620px;margin:18px auto 0;font-size:16px;line-height:1.75}.service-grid{grid-template-columns:repeat(12,1fr);gap:28px;display:grid}.service-card{cursor:default;background:var(--dark);border-radius:40px;grid-column:span 5;min-height:430px;position:relative;overflow:hidden;box-shadow:0 40px 90px -55px #000c}.service-wide{grid-column:span 7}.service-card img{object-fit:cover;filter:brightness(.82)saturate(.92);width:100%;height:100%;transition:transform .7s var(--ease-out), filter .7s var(--ease-out);position:absolute;inset:0;transform:scale(1.01)}.service-card:hover img{filter:brightness(.95)saturate();transform:scale(1.08)}.service-overlay{background:linear-gradient(#0000,#00000059,#000000eb);position:absolute;inset:0}.service-badge{z-index:2;color:var(--white);font-family:var(--font-heading);letter-spacing:.2em;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000057;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;font-size:10px;font-weight:850;display:inline-flex;position:absolute;top:26px;right:26px}.service-content{z-index:2;color:var(--white);padding:clamp(24px,4vw,42px);position:absolute;bottom:0;left:0;right:0}.service-content h3{color:var(--white);max-width:520px;font-size:clamp(1.45rem,2.45vw,2.15rem);font-weight:850;transition:color .24s}.service-card:hover h3{color:var(--accent)}.service-content p{color:#fbf8efc7;max-width:560px;margin:14px 0 0;font-size:15px;line-height:1.7}.service-content ul{flex-wrap:wrap;gap:10px 22px;margin:22px 0 0;padding:0;list-style:none;display:flex}.service-content li{color:#fbf8efad;font-family:var(--font-heading);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:8px;font-size:11px;font-weight:800;display:inline-flex}.service-content li:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px}.service-content .premium-btn{margin-top:24px}.promise-section,.process-section,.before-after-section,.review-section,.faq-section,.survey-section{background:var(--surface);padding:clamp(76px,9vw,120px) 0}.promise-shell{background:var(--surface-strong);border-radius:clamp(32px,5vw,60px);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(40px,7vw,90px);padding:clamp(32px,7vw,78px);display:grid;box-shadow:0 30px 90px -60px #081120b3}.promise-left h2,.process-intro h2{color:var(--primary);margin-top:18px;font-size:clamp(1.9rem,3.45vw,3.05rem);font-weight:850}.promise-left p,.process-intro p{color:#0a1b33ad;max-width:560px;font-size:17px;line-height:1.78}.promise-photo{aspect-ratio:16/11;border-radius:30px;margin:34px 0 24px;overflow:hidden;box-shadow:0 28px 70px -45px #000000b3}.promise-photo img{object-fit:cover;width:100%;height:100%}.promise-list{gap:30px;padding-top:54px;display:grid}.promise-list article{grid-template-columns:58px minmax(0,1fr);gap:22px;display:grid}.promise-list article>span{width:56px;height:56px;color:var(--accent-dark);font-family:var(--font-heading);background:#fff;border-radius:18px;justify-content:center;align-items:center;font-size:14px;font-weight:850;display:flex;box-shadow:0 18px 35px -26px #08112080}.promise-list h3,.timeline h3{color:var(--primary);grid-column:2;margin-bottom:8px;font-size:1.32rem;font-weight:850}.promise-list p,.timeline p{color:#0a1b338c;grid-column:2;margin:0;font-size:15px;line-height:1.72}.process-grid{grid-template-columns:minmax(0,.86fr) minmax(0,1fr);align-items:start;gap:clamp(40px,8vw,110px);display:grid}.process-intro{position:sticky;top:130px}.mini-cred{background:#ffffff6b;border:1px solid #0a1b331a;border-radius:22px;gap:8px;margin-top:32px;padding:18px;display:grid}.mini-cred strong{font-family:var(--font-heading);letter-spacing:.16em;text-transform:uppercase;font-size:11px;font-weight:850}.mini-cred span{color:var(--muted);font-size:13px;line-height:1.55}.mini-cred a{color:var(--accent-dark);font-weight:800;text-decoration:none}.timeline{gap:42px;display:grid;position:relative}.timeline:before{content:"";background:#0a1b332e;width:1px;position:absolute;top:20px;bottom:20px;left:28px}.timeline article{grid-template-columns:58px minmax(0,1fr);gap:28px;display:grid;position:relative}.timeline article>span{z-index:1;background:var(--primary);width:56px;height:56px;color:var(--white);font-family:var(--font-heading);border-radius:50%;justify-content:center;align-items:center;font-weight:850;display:flex;position:relative}.timeline article:last-child>span{background:var(--accent);color:var(--primary)}.review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.review-grid article{border:1px solid #0a1b331a;border-left:4px solid var(--primary);background:#fff;border-radius:22px;padding:28px;box-shadow:0 20px 40px -34px #081120b3}.stars{color:var(--accent-dark);letter-spacing:.08em;font-size:14px}.review-grid p{color:#0a1b33b8;margin:18px 0 24px;font-size:15px;line-height:1.75}.review-grid strong,.review-grid span{display:block}.review-grid strong{color:var(--primary);font-family:var(--font-heading);font-size:15px}.review-grid span{color:var(--muted);margin-top:4px;font-size:13px}.review-banner-card{background:linear-gradient(135deg, var(--dock) 0%, var(--dark) 100%);color:#fff;text-align:left;border:1px solid #d6ae3526;border-radius:30px;align-items:center;gap:clamp(24px,4vw,48px);margin-top:56px;padding:clamp(32px,5vw,48px);display:flex;box-shadow:0 30px 60px -25px #0000008c}.review-banner-left{flex-direction:column;flex:1;align-items:flex-start;display:flex}.review-banner-badge{color:#e5bd47;font-family:var(--font-heading);letter-spacing:.16em;text-transform:uppercase;border:1px solid #d6ae3573;border-radius:999px;align-items:center;margin-bottom:20px;padding:8px 14px;font-size:10px;font-weight:850;display:inline-flex}.review-banner-left h3{color:#fff;letter-spacing:-.025em;margin:0 0 16px;font-size:clamp(1.8rem,3vw,2.6rem);font-weight:850;line-height:1.15}.review-banner-left p{color:#ffffffd1;max-width:580px;margin:0 0 28px;font-size:clamp(14px,1.1vw,16px);line-height:1.6}.review-banner-btn{background:linear-gradient(135deg, var(--accent), var(--accent-2));color:#071326;font-family:var(--font-heading);letter-spacing:.09em;text-transform:uppercase;cursor:pointer;transition:transform .18s var(--ease-out), box-shadow .18s var(--ease-out), filter .18s var(--ease-out);border:0;border-radius:999px;align-items:center;gap:12px;padding:16px 32px;font-size:12px;font-weight:850;display:inline-flex;box-shadow:0 14px 28px -10px #d6ae3566}.review-banner-btn:hover{filter:brightness(1.04);transform:translateY(-2px);box-shadow:0 20px 35px -10px #d6ae358c}.review-banner-btn:active{transform:translateY(0)scale(.98)}.review-banner-btn svg{flex:none;width:16px;height:16px}.review-banner-divider{background:#ffffff1f;align-self:stretch;width:1px;margin:12px 0}.review-banner-right{text-align:center;flex-direction:column;flex:none;justify-content:center;align-items:center;width:280px;display:flex}.google-icon-wrapper{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:86px;height:86px;margin-bottom:20px;display:flex;box-shadow:0 12px 24px -8px #00000040}.google-logo{width:44px;height:44px}.review-banner-right .stars{color:#f0c846;letter-spacing:.12em;margin-bottom:14px;font-size:24px}.review-banner-right .rating-text strong{color:#fff;font-family:var(--font-heading);margin-bottom:6px;font-size:20px;font-weight:850;display:block}.review-banner-right .rating-text span{color:#ffffffa6;font-size:13px;font-weight:600;display:block}.review-modal{z-index:500;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.review-modal[hidden]{display:none}.review-modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#030a14c2;position:fixed;inset:0}.review-modal-dialog{z-index:1;background:var(--surface-strong);border:1px solid #ffffff1f;border-radius:30px;flex-direction:column;width:min(100%,580px);height:680px;max-height:calc(100dvh - 48px);display:flex;position:relative;overflow:hidden;box-shadow:0 36px 100px -24px #000000b8}.review-modal-header{background:var(--primary);border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex}.review-modal-close{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;transition:background-color .15s,transform .15s;display:flex}.review-modal-close:hover{background:#ffffff38}.review-modal-close:active{transform:scale(.95)}.review-iframe-wrapper{background:var(--surface-strong);flex:1;width:100%;height:100%;margin-top:0;position:relative;overflow:hidden}.review-iframe-wrapper iframe{background:0 0;border:none;width:100%;height:100%}.review-modal-spinner{background:var(--surface-strong);z-index:2;color:var(--accent-dark);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.review-modal-spinner svg{width:44px;height:44px;animation:1s linear infinite spinner-spin}@keyframes spinner-spin{to{transform:rotate(360deg)}}@media (max-width:860px){.review-banner-card{text-align:center;flex-direction:column;align-items:stretch;gap:36px;padding:32px 24px}.review-banner-left{flex-direction:column;align-items:center;display:flex}.review-banner-left p{margin-bottom:24px}.review-banner-divider{width:100%;height:1px;margin:0}.review-banner-right{width:100%}}.mid-cta{z-index:2;background:linear-gradient(to bottom, var(--shell) 0 50%, var(--surface) 50% 100%);padding:90px 0;position:relative}.cta-card{background:var(--accent);max-width:900px;color:var(--white);text-align:center;border-radius:42px;margin:0 auto;padding:clamp(32px,6vw,56px);box-shadow:0 45px 100px -35px #9c75218c}.cta-card span{color:#ffffffc7;font-family:var(--font-heading);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:850}.cta-card h2{color:var(--white);max-width:720px;margin:18px auto 0;font-size:clamp(1.7rem,3vw,2.6rem);font-weight:850}.cta-card p{color:#ffffffc2;max-width:620px;margin:18px auto 0;line-height:1.7}.cta-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px;display:flex}.survey-section{padding-top:0}.survey-shell{background:linear-gradient(#fffaf0eb,#fffaf0d1),radial-gradient(circle at 100% 0,#d6ae351f,#0000 32%);border:1px solid #0a1b331a;border-radius:34px;padding:clamp(24px,4vw,38px);box-shadow:0 30px 80px -46px #08112073}.survey-shell .section-heading{margin-bottom:26px}.survey-shell .section-heading p{max-width:520px}.survey-frame{background:#ffffff94;border:1px solid #0a1b331a;border-radius:26px;min-height:540px;overflow:hidden}.survey-frame iframe{min-height:540px;display:block}.faq-section{background:#fff}.faq-list{gap:12px;max-width:820px;margin:0 auto;display:grid}.faq-list article{background:#fff;border:1px solid #0a1b331a;border-radius:0;overflow:hidden}.faq-list button{width:100%;color:var(--primary);cursor:pointer;text-align:left;font-family:var(--font-heading);background:0 0;border:0;justify-content:space-between;gap:18px;padding:22px 24px;font-size:17px;font-weight:750;display:flex}.faq-list button:after{content:"+";color:var(--accent-dark);font-weight:900}.faq-list article.is-open button:after{content:"-"}.faq-list div{opacity:0;transition:grid-template-rows .26s var(--ease-out), opacity .26s var(--ease-out), padding .26s var(--ease-out);grid-template-rows:0fr;padding:0 24px;display:grid}.faq-list article.is-open div{opacity:1;grid-template-rows:1fr;padding-bottom:22px}.faq-list p{color:var(--muted);margin:0;font-size:15px;line-height:1.75;overflow:hidden}.footer{background:var(--dark);color:var(--white);border-top:1px solid #d6ae353d;border-radius:0 0 28px 28px;padding:80px 0 42px}.footer-grid{grid-template-columns:1.4fr .8fr 1.1fr .9fr;gap:42px;display:grid}.footer img{border-radius:16px;width:220px;height:auto}.footer p,.footer a,.footer span{color:#fbf8ef94;font-size:14px;line-height:1.72}.footer a{text-decoration:none;transition:color .16s;display:block}.footer a:hover{color:var(--white)}.footer h3{color:var(--white);letter-spacing:.18em;text-transform:uppercase;margin:0 0 18px;font-size:12px;font-weight:850}.footer-bottom{border-top:1px solid #ffffff14;justify-content:space-between;gap:18px;margin-top:52px;padding-top:24px;display:flex}.legal-page{background:var(--surface);min-height:100vh;color:var(--primary);padding:clamp(24px,7vw,80px)}.legal-shell{background:var(--surface-strong);border:1px solid #0a1b331a;border-radius:32px;width:min(100%,820px);margin:0 auto;padding:clamp(28px,6vw,64px);box-shadow:0 30px 90px -60px #081120b3}.legal-shell h1{margin:20px 0 12px;font-size:clamp(2rem,5vw,3.6rem)}.legal-shell h2{margin:0 0 10px;font-size:1.35rem}.legal-shell p{color:var(--muted);line-height:1.8}.legal-shell section{border-top:1px solid #0a1b331a;margin-top:30px;padding-top:30px}.legal-shell a{color:var(--accent-dark);font-weight:800}.legal-back{margin-bottom:28px;text-decoration:none;display:inline-flex}@media (max-width:1400px){.dock-nav-container{width:min(860px,100vw - 420px)}}@media (max-width:1180px){.dock-nav-container{width:min(760px,100vw - 120px)}.dock-links{gap:18px}.hero-grid,.promise-shell,.process-grid{grid-template-columns:1fr}.process-intro{position:static}.hero-lead-panel{max-width:720px}}@media (max-width:900px){:root{--frame-size:0px;--corner-size:0px}.site-frame,.frame-corner,.dock-bridge,.dock-links,.dock-cta{display:none!important}.dock-nav-container{border-radius:0 0 22px 22px;width:100%;min-height:72px;padding:12px 16px;top:0;left:0;right:0;transform:none}.dock-logo{width:122px}.mobile-menu-btn{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:48px;height:48px;display:grid}.mobile-menu-btn span{background:var(--white);width:24px;height:2px;transition:transform .2s var(--ease-out)}.mobile-menu-btn span+span{margin-top:-13px}.mobile-menu-btn[aria-expanded=true] span:first-child{transform:rotate(45deg)translate(5px,5px)}.mobile-menu-btn[aria-expanded=true] span:last-child{transform:rotate(-45deg)translate(5px,-5px)}.mobile-drawer{background:var(--dock);opacity:0;pointer-events:none;transition:transform .22s var(--ease-out), opacity .22s var(--ease-out);border-top:1px solid #ffffff14;border-radius:0 0 22px 22px;gap:18px;padding:24px;display:grid;position:absolute;top:calc(100% - 1px);left:0;right:0;transform:translateY(-8px)}.mobile-drawer.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}.hero-section{padding-top:104px}.hero-grid{gap:30px}h1{font-size:clamp(2.25rem,10vw,3.45rem)}.form-grid,.form-schedule,.service-options,.stats-grid,.review-grid,.footer-grid{grid-template-columns:1fr}.survey-frame,.survey-frame iframe{min-height:620px}.stats-grid div{border-bottom:1px solid #ffffff17;border-right:0}.stats-grid div:last-child{border-bottom:0}.split-heading{flex-direction:column;align-items:start}.service-grid{grid-template-columns:1fr}.service-card,.service-wide{border-radius:30px;grid-column:auto;min-height:420px}.promise-list{padding-top:0}.footer-bottom{flex-direction:column}}@media (max-width:560px){.container{width:min(100% - 24px,1280px)}.hero-actions,.cta-actions{display:grid}.hero-actions .premium-btn,.cta-actions .premium-btn{width:100%}.survey-frame,.survey-frame iframe{min-height:700px}.hero-lead-panel{flex-direction:column;padding:16px;display:flex}.hero-proof-grid{order:-2}.hero-media-card{order:-1}.hero-lead-panel>.lead-form{margin-top:8px}.estimate-modal{align-items:flex-end;padding:0}.estimate-modal-dialog{border-radius:28px 28px 0 0;width:100%;max-height:94dvh}.estimate-form{padding:24px 18px 28px}.estimate-actions{display:grid}.hero-proof-grid{grid-template-columns:1fr}.hero-media-card{height:150px}.trust-row i{display:none}.promise-shell{border-radius:32px;padding:24px}.promise-list article,.timeline article{grid-template-columns:48px 1fr;gap:16px}.promise-list article>span,.timeline article>span{width:48px;height:48px}.timeline:before{left:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.before-after-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:clamp(34px,5vw,64px);margin-top:48px;display:grid}.slider-wrapper{aspect-ratio:4/3;cursor:ew-resize;-webkit-user-select:none;user-select:none;border:1px solid #0a1b331f;border-radius:24px;width:100%;position:relative;overflow:hidden;box-shadow:0 24px 60px -30px #081120a6}.slider-image{object-fit:cover;-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.before-image{z-index:1}.after-image{z-index:2}.slider-divider{background:var(--accent-2);z-index:10;pointer-events:none;width:2px;position:absolute;top:0;bottom:0;transform:translate(-50%)}.slider-handle{background:var(--primary);border:2px solid var(--accent-2);width:44px;height:44px;color:var(--white);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;gap:2px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 6px 20px #00000073}.slider-arrows{width:12px;height:12px;color:var(--accent-2)}.slider-label{z-index:20;font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;color:var(--white);pointer-events:none;border-radius:8px;padding:6px 12px;font-size:10px;font-weight:950;position:absolute;bottom:18px;box-shadow:0 4px 10px #00000040}.label-before{background:#081120c2;border:1px solid #ffffff26;left:18px}.label-after{background:#d6ae35db;border:1px solid #fff3;right:18px}.before-after-controls{flex-direction:column;gap:18px;display:flex}.controls-kicker{color:var(--accent-dark);font-family:var(--font-heading);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:850}.before-after-controls h3{color:var(--primary);font-size:clamp(1.8rem,3vw,2.4rem);font-weight:850;line-height:1.15}.project-desc{color:var(--muted);font-size:15px;line-height:1.7}.tab-buttons{flex-direction:column;gap:8px;margin:10px 0 16px;display:flex}.tab-btn{text-align:left;color:var(--primary);font-family:var(--font-heading);cursor:pointer;transition:all .16s var(--ease-out);background:#ffffffa6;border:1px solid #0a1b331a;border-radius:14px;padding:16px 20px;font-size:13px;font-weight:850}.tab-btn:hover{background:#fffffff2;transform:translate(3px)}.tab-btn.is-active{background:var(--primary);color:var(--white);border-color:var(--primary);box-shadow:0 10px 24px -10px #0a1b3373}@media (max-width:991px){.before-after-grid{grid-template-columns:1fr;gap:38px}.tab-buttons{flex-flow:wrap}.tab-btn{text-align:center;flex:calc(50% - 8px)}}@media (max-width:567px){.tab-btn{flex:100%}}
