@font-face{font-family:Inter;src:url('assets/InterVariable.woff2') format('woff2');font-display:swap;font-weight:100 900}
@font-face{font-family:RoadRage;src:url('assets/RoadRage-Regular.ttf') format('truetype');font-display:swap;font-weight:400}
@font-face{font-family:BarlowCondensed;src:url('assets/BarlowCondensed-BoldItalic.ttf') format('truetype');font-display:swap;font-style:italic;font-weight:700}
:root{--blue:#008cf5;--brand:#3d9be9;--deep-blue:#0056c5;--ink:#122234;--pale:#edf8fe;--line:#bdd4e4;--body:Inter,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:#fff;color:var(--ink);font-family:var(--body);font-size:18px;-webkit-font-smoothing:antialiased}a{color:inherit}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,.upload-zone:focus-within{outline:3px solid #064bb3;outline-offset:5px}img{display:block;max-width:100%}h1,h2,h3,p,figure{margin:0}a{text-decoration:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:8px;z-index:10;padding:12px;background:#fff;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.page-shell{max-width:1320px;margin:0 auto}.site-header{height:114px;display:flex;align-items:center;gap:42px;padding:5px 30px}.brand{width:149px;flex-shrink:0;display:flex;justify-content:center;padding-right:30px;border-right:2px solid #d0dbe6}.brand img{height:100px;width:100px;object-fit:contain}.site-header nav{display:flex;gap:48px;font-weight:650;font-size:19px;align-items:center}.site-header nav a{padding:10px 0}.site-header nav a:hover,.text-link:hover{color:var(--blue)}.preview-label{font-size:14px;font-style:italic;color:#566475;margin-left:auto;white-space:nowrap}.hero{height:480px;position:relative;overflow:hidden}.hero-photo{position:absolute;inset:0 0 0 32%;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 60%}.hero-photo:after{position:absolute;content:"";inset:0;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.94) 2%,rgba(255,255,255,.52) 12%,rgba(255,255,255,0) 29%)}.hero-content{position:relative;z-index:1;padding:30px 0 0 43px;max-width:590px}.brush{font-family:RoadRage,Impact,sans-serif;font-weight:400;font-style:normal;color:var(--blue);line-height:.88;letter-spacing:.01em}.hero h1{font-size:100px;transform:skew(-6deg);transform-origin:left center;line-height:.81}.brush-line{height:21px;width:230px;fill:var(--blue);overflow:visible}.hero-line{display:block;margin:17px 0 17px 100px;width:270px}.hero-content p{font-size:27px;line-height:1.3;font-weight:700;letter-spacing:-.02em}.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:61px;padding:10px 32px;color:#fff;background:linear-gradient(105deg,#12a0fc,#0082ee);font-family:BarlowCondensed,Arial,sans-serif;font-style:italic;font-weight:700;font-size:32px;clip-path:polygon(3% 0,100% 0,97% 100%,0% 100%);border:0}.button:hover{background:#0079db}.button:focus-visible{outline:none;filter:drop-shadow(0 0 3px #003b82)}.primary-cta{margin:27px 0 0 -11px;padding:8px 35px}.panel{margin:14px 23px 0;border-radius:20px;background:linear-gradient(120deg,#f0f9fe,#e7f5fe)}.reviews{display:grid;grid-template-columns:45% 55%;padding:20px 40px 24px;align-items:center}.review-score{border-right:2px solid #c7dcea;padding-right:32px}.review-score h2{display:flex;align-items:center;gap:12px;font-size:44px;font-weight:650;letter-spacing:-.04em;margin-bottom:12px}.review-score h2 img{width:225px;height:auto}.rating{display:flex;align-items:center;gap:20px}.rating strong{font-size:65px;line-height:1;font-weight:700;letter-spacing:-.05em}.stars{color:#ffb300;font-size:48px;letter-spacing:-5px;line-height:1}.review-count{font-size:27px;font-weight:550;margin-top:2px}.rating-date{font-size:17px;font-style:italic;margin-top:8px}.review-quotes{padding-left:65px}.review-quotes figure+figure{margin-top:14px}.review-quotes blockquote{font-size:24px;font-weight:700;line-height:1.07;letter-spacing:-.035em;margin:0;max-width:500px}.review-quotes figcaption{font-size:17px;margin-top:3px}.text-link{display:inline-block;color:#0053ce;font-size:21px;font-style:italic;font-weight:700;margin-top:10px}.services{padding:35px 30px 0}.section-title{display:flex;align-items:center;gap:20px;margin:0 15px 40px}.section-title h2{font-size:75px;white-space:nowrap;transform:skew(-6deg);transform-origin:left center}.section-title .brush-line{flex:1;min-width:80px;max-width:250px;margin-top:20px}.service-pair{display:grid;grid-template-columns:1fr 1fr;gap:36px}.service-image{width:100%;aspect-ratio:1.22;object-fit:cover;object-position:center;border-radius:12px}.service-copy{padding:14px 13px 0}.service-copy h3{font-family:BarlowCondensed,Arial,sans-serif;font-weight:700;font-style:italic;text-transform:uppercase;font-size:41px;line-height:1;color:var(--deep-blue);letter-spacing:-.02em;margin-bottom:5px}.service-copy p{font-size:23px;line-height:1.35;letter-spacing:-.025em}.presale{display:grid;grid-template-columns:69% 31%;align-items:center;margin-top:55px}.presale .service-image{aspect-ratio:1.68}.presale .service-copy{padding:0 0 0 25px}.presale .service-copy h3{font-size:47px}.presale .service-copy p{font-size:25px}.presale .brush-line{display:block;max-width:220px;width:75%;margin:26px 0}.presale .not-sure{font-style:italic;font-weight:650}.quote{margin-top:74px;display:grid;grid-template-columns:32% 68%;padding:22px 24px 28px}.quote-intro{border-right:2px solid #91c7f0;align-self:stretch;padding:36px 12px 0 8px}.quote-intro h2{font-size:76px;transform:skew(-6deg);transform-origin:left center;line-height:.92}.quote-intro .brush-line{display:block;width:80%;margin:20px 0 0 35px}.quote-content{padding-left:22px}.quote-steps{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 15px;margin:0 0 12px;font-size:14px;font-weight:600}.quote-steps li{display:flex;align-items:center;gap:10px;white-space:nowrap}.quote-steps li:not(:last-child):after{content:"";width:34px;height:1px;background:#69b7f2;margin-left:10px}.quote-steps span{display:flex;align-items:center;justify-content:center;width:39px;height:39px;background:var(--blue);border:2px solid #fff;border-radius:50%;color:#fff;font-size:22px}.prototype-notice{font-size:12px;color:#475b6b;line-height:1.35;margin:0 0 9px;padding-left:2px}.form-body{display:grid;grid-template-columns:43% 57%;gap:20px;padding-right:20px}.fields{display:flex;flex-direction:column;gap:12px}.fields input{width:100%;height:47px;border:1px solid #a7b9cb;border-radius:9px;background:#fff;padding:8px 20px;font-size:16px;color:var(--ink);box-shadow:0 1px 3px #00000006}.fields input::placeholder{color:var(--ink);opacity:1}.upload-zone{position:relative;border:1.5px dashed #3aa5ff;border-radius:18px;background:#e4f4ff;min-width:0;transition:background .15s}.upload-zone.drag-over{background:#cceaff}.upload-label{height:100%;min-height:163px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:12px 15px;cursor:pointer;gap:4px}.upload-label svg{color:var(--blue);margin-bottom:2px}.upload-label strong{font-size:23px;line-height:1.15}.upload-label span{font-size:13px;line-height:1.35}.upload-label .file-hint{font-size:10px;color:#526575;margin-top:2px}.upload-zone input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;font-size:1px}.submit-button{width:100%;margin-top:17px;font-size:32px;min-height:53px}.submit-button span{display:none}.upload-status:empty,.photo-list:empty{display:none}.upload-status{font-size:13px;line-height:1.4;margin:10px 0 0}.photo-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:7px}.photo-list li{display:flex;align-items:center;gap:6px;max-width:100%;background:#fff;border:1px solid #bad5e8;border-radius:6px;padding:4px 6px;font-size:12px}.photo-list li>span{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-list button{border:0;background:transparent;font-size:20px;line-height:1;min-width:24px;min-height:24px}.form-result{border:1px solid #5f9eca;background:#fff;padding:13px;border-radius:8px;margin-top:14px;font-size:15px;line-height:1.45}.form-result strong{display:block;margin-bottom:4px}footer{min-height:140px;display:flex;justify-content:space-between;align-items:center;gap:22px;padding:25px 60px;font-size:13px}footer strong{font-size:15px;white-space:nowrap}footer span{font-style:italic;text-align:right}.preview-details{border:0;border-right:1px solid #b9c9d6;border-left:1px solid #b9c9d6;background:transparent;padding:0 38px;font-size:13px;color:#33495f;font-style:italic;text-decoration:underline;text-underline-offset:3px}dialog{border:0;border-radius:16px;max-width:560px;width:calc(100% - 32px);color:var(--ink);padding:32px;box-shadow:0 15px 90px #12223450}dialog::backdrop{background:#0a213dcc}dialog h2{font-size:24px;margin:6px 20px 20px 0}dialog p{font-size:16px;line-height:1.5;margin:14px 0}.dialog-close{position:absolute;right:12px;top:10px;border:0;background:transparent;font-size:30px;padding:2px 10px}.dialog-done{border:0;background:#006cc5;color:#fff;border-radius:6px;padding:10px 22px;margin-top:8px}
.service-image{height:auto}
@media(min-width:1321px){.hero-photo{right:0}.hero-content{padding-left:43px}}
@media(max-width:1100px) and (min-width:761px){.site-header{gap:27px;padding:5px 25px}.site-header nav{gap:28px;font-size:16px}.preview-label{font-size:12px}.hero{height:420px}.hero-content{padding:27px 0 0 35px}.hero h1{font-size:84px}.hero-content p{font-size:23px}.primary-cta{font-size:28px;min-height:54px;margin-top:22px}.hero-line{margin-top:13px;margin-bottom:15px;width:220px}.reviews{padding:20px 28px}.review-score h2{font-size:32px;gap:8px}.review-score h2 img{width:170px}.rating strong{font-size:54px}.stars{font-size:37px;letter-spacing:-4px}.review-count{font-size:22px}.rating-date{font-size:14px}.review-quotes{padding-left:42px}.review-quotes blockquote{font-size:20px}.review-quotes figcaption{font-size:14px}.text-link{font-size:17px}.section-title{margin:0 8px 32px;gap:15px}.section-title h2{font-size:59px}.section-title .brush-line{max-width:180px}.service-copy h3{font-size:32px}.service-copy p{font-size:19px}.presale .service-copy h3{font-size:36px}.presale .service-copy p{font-size:20px}.quote{padding:20px 20px 24px}.quote-intro h2{font-size:59px}.quote-steps{font-size:11px;padding:0;gap:5px}.quote-steps li{gap:6px}.quote-steps li:not(:last-child):after{width:22px;margin-left:5px}.quote-steps span{width:32px;height:32px;font-size:18px}.upload-label strong{font-size:20px}.upload-label span{font-size:11px}.form-body{gap:14px;padding-right:14px}.fields input{font-size:14px;padding:8px 15px}.prototype-notice{font-size:11px}footer{padding:25px 35px;font-size:11px;gap:16px}footer strong{font-size:12px}.preview-details{font-size:11px;padding:0 23px}}
@media(max-width:760px){body{font-size:16px}.site-header{height:auto;min-height:104px;flex-wrap:wrap;padding:10px 20px 14px;gap:10px 18px}.brand{width:83px;padding-right:0;border:0}.brand img{height:80px;width:80px}.site-header nav{margin-left:auto;display:flex;gap:17px;font-size:13px}.preview-label{position:absolute;top:12px;right:20px;font-size:10px}.hero{height:auto;padding-bottom:0;display:flex;flex-direction:column}.hero-content{padding:24px 25px 0;max-width:none}.hero h1{font-size:clamp(72px,15vw,108px);line-height:.8}.hero-line{width:220px;height:18px;margin:16px 0 17px 70px}.hero-content p{font-size:23px;line-height:1.3}.button{min-height:54px;font-size:27px}.primary-cta{margin:21px 0 0 -6px;padding:8px 25px}.hero-photo{position:relative;order:2;inset:auto;height:auto;margin-top:0;width:100%}.hero-photo img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover}.hero-photo:after{background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.82) 5%,transparent 28%)}.panel{margin:14px 15px 0;border-radius:16px}.reviews{padding:25px 22px;display:block}.review-score{border:0;border-bottom:1px solid #c7dcea;padding:0 0 22px}.review-score h2{font-size:32px;gap:10px;margin-bottom:14px}.review-score h2 img{width:168px}.rating{gap:18px}.rating strong{font-size:56px}.stars{font-size:42px;letter-spacing:-4px}.review-count{font-size:21px;margin-top:4px}.rating-date{font-size:12px;margin-top:7px}.review-quotes{padding:22px 0 0}.review-quotes blockquote{font-size:20px;line-height:1.15;letter-spacing:-.025em}.review-quotes figcaption{font-size:13px;margin-top:6px}.review-quotes figure+figure{margin-top:20px}.text-link{font-size:17px;margin-top:18px}.services{padding:34px 20px 0}.section-title{margin:0 4px 28px;display:block}.section-title h2{font-size:clamp(39px,8.2vw,61px);white-space:normal;line-height:.95;max-width:100%}.section-title .brush-line{display:none}.service-pair{grid-template-columns:1fr;gap:34px}.service-image{aspect-ratio:1.22;border-radius:10px}.service-copy{padding:13px 3px 0}.service-copy h3{font-size:33px;line-height:1.06}.service-copy p{font-size:17px;line-height:1.45;letter-spacing:-.015em}.presale{grid-template-columns:1fr;margin-top:35px}.presale .service-image{aspect-ratio:1.42}.presale .service-copy{padding:15px 3px 0}.presale .service-copy h3{font-size:34px}.presale .service-copy p{font-size:17px}.presale .brush-line{margin:20px 0;width:160px;height:14px}.presale .not-sure{font-size:19px}.quote{margin-top:40px;display:block;padding:28px 22px}.quote-intro{border-right:0;border-bottom:1px solid #91c7f0;padding:0 2px 24px}.quote-intro h2{font-size:66px;line-height:.88}.quote-intro .brush-line{width:210px;margin:17px 0 0 30px;height:17px}.quote-content{padding:22px 0 0}.quote-steps{padding:0;gap:7px;align-items:flex-start;justify-content:space-between;font-size:11px;line-height:1.3;margin-bottom:20px}.quote-steps li{flex:1;white-space:normal;display:flex;flex-direction:column;gap:7px;text-align:center;max-width:100px}.quote-steps span{width:32px;height:32px;font-size:18px}.quote-steps li:not(:last-child):after{display:none}.prototype-notice{font-size:11px;margin-bottom:12px}.form-body{grid-template-columns:1fr;gap:14px;padding:0}.fields{gap:10px}.fields input{height:46px;font-size:16px;padding:8px 14px}.upload-label{min-height:170px}.upload-label strong{font-size:22px}.upload-label span{font-size:12px}.upload-label .file-hint{font-size:10px}.submit-button{font-size:28px;min-height:52px;margin-top:17px}.photo-list li>span{max-width:200px}footer{min-height:160px;flex-direction:column;justify-content:center;gap:16px;padding:32px 20px;font-size:11px;text-align:center}footer strong{font-size:13px}.preview-details{border:0;padding:0;font-size:11px}footer span{text-align:center}dialog{padding:25px}dialog h2{font-size:22px}}
@media(max-width:370px){.site-header{padding-left:15px;padding-right:15px}.site-header nav{gap:12px;font-size:11px}.preview-label{right:15px}.hero-content{padding-left:20px}.hero h1{font-size:69px}.hero-content p{font-size:21px}.primary-cta{font-size:25px}.review-score h2{font-size:28px}.review-score h2 img{width:145px}.stars{font-size:34px}.quote{padding:25px 17px}.quote-intro h2{font-size:60px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Brush artwork reproduces the approved lettering, with accessible HTML headings. */
.artwork-heading{transform:none!important;position:relative}
.artwork-heading img{width:100%;height:auto}
.hero h1.artwork-heading{width:470px;max-width:100%;line-height:1}
.section-title h2.artwork-heading{width:930px;max-width:82%;height:auto;aspect-ratio:2172 / 310;overflow:visible;flex:none}
.section-title h2.artwork-heading img{position:absolute;top:50%;transform:translateY(-50%)}
.quote-intro h2.artwork-heading{width:100%;line-height:1}
@media(max-width:1100px) and (min-width:761px){.hero h1.artwork-heading{width:390px}.section-title h2.artwork-heading{height:auto}.hero-line{margin-top:12px}.hero-content p{font-size:23px}}
@media(max-width:760px){.hero h1.artwork-heading{width:420px;max-width:95%}.section-title h2.artwork-heading{width:100%;max-width:100%;height:auto}.quote-intro h2.artwork-heading{max-width:330px;width:100%}.hero-content{padding-bottom:0}}
/* Requested review refinements: larger original logo and orderly navigation. */
.site-header{height:170px;padding:12px 32px;position:relative;gap:36px}
.brand{width:185px;padding-right:30px}
.brand img{width:145px;height:145px}
.header-navigation{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:18px}
.site-header nav{margin:0;gap:42px;align-items:center;font-size:19px}
.preview-label{position:static;margin:0;font-size:13px}
.hero-content .quick-quote-line{font-size:18px;font-weight:500;line-height:1.35;letter-spacing:-.01em;margin-top:12px}
.primary-cta{margin-top:16px}
@media(max-width:1100px) and (min-width:761px){.site-header{height:150px;padding:10px 28px;gap:24px}.brand{width:160px;padding-right:25px}.brand img{width:128px;height:128px}.site-header nav{font-size:17px;gap:30px}.hero-content .quick-quote-line{font-size:16px;margin-top:9px}.primary-cta{margin-top:13px}}
@media(max-width:760px){.site-header{height:auto;display:flex;flex-wrap:wrap;padding:10px 22px 18px;gap:11px}.brand{width:120px;padding:0;border:0;justify-content:flex-start}.brand img{width:120px;height:120px}.header-navigation{display:contents}.preview-label{position:absolute;right:22px;top:25px;font-size:10px}.site-header nav{width:100%;display:flex;justify-content:space-between;margin:0;gap:12px;padding-top:12px;border-top:1px solid #e1eaf1;font-size:14px}.site-header nav a{padding:6px 0}.hero-content .quick-quote-line{font-size:15px;line-height:1.4;margin-top:10px}.primary-cta{margin-top:17px}.hero-content{padding-top:23px}}
@media(max-width:370px){.site-header{padding-left:20px;padding-right:20px}.site-header nav{font-size:13px;gap:10px}.preview-label{right:20px}.hero-content .quick-quote-line{font-size:14px}}
/* Header refinement: integrated brand and distinct, useful navigation. */
.site-header{height:155px;padding:9px 35px;gap:28px;border-bottom:1px solid #e9f1f7;background:linear-gradient(110deg,#fff 58%,#f8fcff)}
.brand{width:150px;padding:0;border:0;justify-content:flex-start}
.brand img{width:135px;height:135px}
.header-navigation{gap:13px}
.site-header nav{gap:12px}
.site-header nav a{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 23px;background:#f0f8fe;border:1px solid #d1e7f5;border-radius:6px;font-size:16px;font-weight:650;color:#193f5e;box-shadow:0 2px 5px #004c7e04;transition:background .15s,border-color .15s,box-shadow .15s}
.site-header nav a svg{width:19px;height:19px;fill:none;stroke:#188bda;stroke-width:1.7;stroke-linejoin:round;flex-shrink:0}
.site-header nav a:hover{background:#e4f3fe;border-color:#99cfee;box-shadow:0 3px 9px #006ab810}
.site-header nav a.nav-quote{background:linear-gradient(110deg,#109cf2,#007ce5);border-color:transparent;color:#fff;padding-left:25px;padding-right:22px;box-shadow:0 5px 13px #0086e321}
.site-header nav a.nav-quote:hover{background:#006fcf;box-shadow:0 5px 14px #0076c830}
.nav-quote span{font-size:22px;line-height:1;margin-left:2px}
.preview-label{font-size:11px;color:#72818f;letter-spacing:.025em;padding-right:2px}
@media(max-width:1100px) and (min-width:761px){.site-header{height:145px;padding:8px 28px}.brand{width:135px}.brand img{width:128px;height:128px}.site-header nav{gap:9px}.site-header nav a{padding:11px 16px;min-height:47px;font-size:15px}.site-header nav a.nav-quote{padding-left:18px;padding-right:16px}}
@media(max-width:760px){.site-header{height:auto;padding:10px 20px 18px;gap:12px;background:linear-gradient(150deg,#fff 60%,#f7fbff)}.brand{width:112px}.brand img{width:112px;height:112px}.header-navigation{display:contents}.preview-label{right:21px;top:28px;font-size:10px}.site-header nav{border:0;padding:0;margin:0;width:100%;gap:8px;display:grid;grid-template-columns:1fr 1.23fr 1.05fr}.site-header nav a{min-height:46px;padding:10px 7px;gap:5px;font-size:12px;border-radius:5px;white-space:nowrap}.site-header nav a svg{width:14px;height:14px;stroke-width:1.8}.site-header nav a.nav-quote{padding:10px 7px;gap:5px}.nav-quote span{font-size:18px;margin:0}}
@media(max-width:370px){.site-header{padding-left:16px;padding-right:16px}.site-header nav{gap:6px;grid-template-columns:1fr 1.25fr 1.05fr}.site-header nav a{font-size:11px;padding-left:5px;padding-right:5px;gap:4px}.site-header nav a svg{display:none}.site-header nav a.nav-quote{padding-left:5px;padding-right:5px}.preview-label{right:18px}}

/* Visible quote promise, without a fixed response-time guarantee. */
.hero-content .quick-quote-line{font-size:18px;line-height:1.45;margin-top:13px;max-width:430px}
.quick-quote-line strong{display:block;color:#0056c5;font-size:23px;font-weight:750;margin-bottom:2px}
.quote-speed{font-size:15px;line-height:1.45;margin:0 0 16px;color:#214b6b}
.quote-speed strong{color:#0056c5;font-weight:750}
@media(max-width:1100px) and (min-width:761px){.hero-content .quick-quote-line{font-size:15px;max-width:360px}.quick-quote-line strong{font-size:21px}.quote-speed{font-size:13px}}
@media(max-width:760px){.hero-content .quick-quote-line{font-size:15px;margin-top:14px}.quick-quote-line strong{font-size:21px}.quote-speed{font-size:14px;margin-bottom:20px}}
/* Let the complete hero copy and CTA set its height instead of cropping them. */
.hero{height:auto;min-height:520px}
.hero-content{padding-bottom:30px}
@media(max-width:1100px) and (min-width:761px){.hero{height:auto;min-height:470px}}
@media(max-width:760px){.hero{min-height:0}.hero-content{padding-bottom:0}}
/* Keep the Google wordmark inside the review heading at narrow widths. */
.review-score h2 img{min-width:0;flex-shrink:1;object-fit:contain}
/* Long file-validation messages should wrap instead of widening the page. */
.upload-status,.form-result{overflow-wrap:anywhere}
.submit-button:disabled{opacity:.55;cursor:not-allowed}
/* Photo quote form: extra fields and real send states */
.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.fields select,.fields textarea{width:100%;border:1px solid #a7b9cb;border-radius:9px;background:#fff;padding:10px 20px;font:inherit;font-size:16px;color:var(--ink);box-shadow:0 1px 3px #00000006}
.fields select{height:47px;padding:8px 16px;appearance:auto}.fields textarea{resize:vertical;min-height:76px;line-height:1.4}.fields textarea::placeholder{color:#475b6b;opacity:1}
.privacy-line{font-size:12px;color:#475b6b;line-height:1.4;margin:12px 0 0}
.form-result.success{border-color:#1f9d55;background:#eefaf2}.form-result.error{border-color:#c0392b;background:#fdf0ee}
.submit-button:disabled{opacity:.7;cursor:progress}
@media(max-width:760px){.fields select,.fields textarea{font-size:16px;padding-left:14px;padding-right:14px}.privacy-line{font-size:11px}}
/* Quote actions in every section (Nov 2026) */
.review-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 26px;margin-top:18px}
.review-actions .text-link{margin-top:0}
.section-cta{font-size:26px;min-height:52px;padding:8px 28px}
.service-quote{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:9px 16px;border:2px solid var(--blue);border-radius:9px;color:#0053ce;font-size:18px;font-weight:700;font-style:italic;text-decoration:none;background:#fff}
.service-quote:hover,.service-quote:focus-visible{background:var(--blue);color:#fff;outline:none}
.presale .not-sure a{color:#0053ce;text-decoration:underline;text-underline-offset:3px}
footer span a{color:#0053ce;font-weight:700;text-decoration:underline}
.photo-rule{background:#fff6dd;border:1px solid #f2cf6b;border-radius:9px;padding:9px 12px;color:#4a3b00;font-size:13px}
.photo-rule strong{color:#2b2200}
.upload-zone.needs-photo{outline:3px solid #d93025;outline-offset:2px}
.upload-status.error{color:#b3261e;font-weight:700}
.sticky-quote{position:fixed;z-index:50;right:24px;bottom:24px;display:inline-flex;align-items:center;gap:10px;padding:13px 26px;border-radius:999px;background:linear-gradient(105deg,#12a0fc,#0082ee);color:#fff;font-family:BarlowCondensed,Arial,sans-serif;font-style:italic;font-weight:700;font-size:24px;text-decoration:none;box-shadow:0 6px 20px #00366f40;transition:opacity .2s,transform .2s}
.sticky-quote[hidden]{display:none}
.sticky-quote:focus-visible{outline:3px solid #003b82;outline-offset:2px}
@media(max-width:760px){.section-cta{font-size:23px;min-height:48px;width:100%}.review-actions{flex-direction:column;align-items:stretch;gap:12px}.review-actions .text-link{text-align:center}.service-quote{font-size:16px;padding:8px 14px}.photo-rule{font-size:12px}
.sticky-quote{left:16px;right:16px;bottom:14px;justify-content:center;font-size:22px;padding:12px 18px}footer{padding-bottom:90px}}
@media(prefers-reduced-motion:reduce){.sticky-quote{transition:none}}
