/* Photo tool and contact: clear field-work identity, readable controls. */
.tool-intro{background:var(--paper);border-bottom:1px solid var(--line);padding:30px 0 42px;color:var(--ink)}
.tool-intro .breadcrumb{color:var(--muted);font-size:13px;margin-bottom:24px}
.tool-intro .breadcrumb a{color:inherit}
.tool-intro-row{display:grid;grid-template-columns:1.15fr 1fr;align-items:end;gap:60px}
.tool-intro h1{font:800 clamp(46px,5.2vw,76px)/.98 'Barlow Condensed',Impact,sans-serif;letter-spacing:-.018em;margin:0;max-width:760px}
.tool-intro-row>p{font:400 16px/1.75 Manrope,sans-serif;max-width:440px;margin:0 0 4px;color:var(--muted)}
.page-instant-estimate .estimator-section{padding:44px 0 80px;background:var(--mist)}
.page-instant-estimate .estimator-layout{grid-template-columns:minmax(240px,.72fr) minmax(0,1.5fr);gap:48px;align-items:start}
.page-instant-estimate .estimate-sidebar{position:sticky;top:120px}
.page-instant-estimate .estimate-steps{margin:0 0 30px;gap:0}
.page-instant-estimate .estimate-steps>div{padding:15px 0;gap:16px;opacity:1;align-items:center;border-bottom:1px solid var(--line)}
.page-instant-estimate .estimate-steps>div:first-child{padding-top:0}
.page-instant-estimate .estimate-steps>div>span{display:grid;place-items:center;width:36px;height:36px;flex:none;border:1px solid var(--line);border-radius:50%;background:var(--paper);font:700 16px/1 Manrope,sans-serif;color:var(--muted);transition:background .2s,color .2s,border-color .2s}
.page-instant-estimate .estimate-steps>div.current>span{background:#e86c31;color:#14231c;border-color:#e86c31}
.page-instant-estimate .estimate-steps p{font-size:15px;line-height:1.4;font-weight:700;margin:0;color:var(--muted)}
.page-instant-estimate .estimate-steps .current p{color:var(--ink)}
.page-instant-estimate .estimate-steps small{display:block;font-size:12px;font-weight:400;margin-top:4px;line-height:1.5;color:var(--muted)}
.page-instant-estimate .estimate-crew-photo{margin:0;overflow:hidden;border-radius:4px;background:#123d30;color:#fff}
.page-instant-estimate .estimate-crew-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.page-instant-estimate .estimate-crew-photo figcaption{padding:12px 14px;font:600 12px/1.5 Manrope,sans-serif}
.page-instant-estimate .estimate-photo-tips{margin:24px 0 16px}
.page-instant-estimate .estimate-photo-tips h3{font:700 24px/1.1 'Barlow Condensed',Impact,sans-serif;margin:0 0 9px}
.page-instant-estimate .estimate-photo-tips p{font-size:13px;line-height:1.75;color:var(--muted)}
.page-instant-estimate .estimate-fine,.page-contact .estimate-fine{font-size:12px!important;line-height:1.75!important;color:var(--muted)}
.page-instant-estimate .estimate-direct-call{border-top:1px solid var(--line);display:flex;flex-direction:column;padding-top:20px;gap:5px}
.page-instant-estimate .estimate-direct-call span{font-size:12px;color:var(--muted)}
.page-instant-estimate .estimate-direct-call strong{font:700 29px/1.2 'Barlow Condensed',Impact,sans-serif}
.page-instant-estimate .estimate-workspace{background:var(--paper);border:1px solid var(--line);border-top:4px solid #123d30;border-radius:5px;padding:36px 40px;box-shadow:0 14px 38px #14231c06;scroll-margin-top:120px}
.page-instant-estimate .estimate-workspace .kicker{font-size:12px;font-weight:700;letter-spacing:0;text-transform:none;color:var(--muted);margin-bottom:10px}
.page-instant-estimate .estimate-workspace h2{font:700 clamp(30px,3.2vw,43px)/1.05 'Barlow Condensed',Impact,sans-serif;letter-spacing:-.015em;margin-bottom:28px}
.page-instant-estimate .estimate-form label{font-size:14px;line-height:1.5;font-weight:650;gap:8px;margin-bottom:22px}
.page-instant-estimate .estimate-form input:not([type=checkbox]):not([type=file]),.page-instant-estimate .estimate-form select,.page-instant-estimate .estimate-form textarea{font:400 15px/1.55 Manrope,sans-serif;padding:13px 14px;border:1px solid var(--line);background:var(--paper);border-radius:3px;min-height:48px}
.page-instant-estimate .estimate-form input:focus,.page-instant-estimate .estimate-form select:focus,.page-instant-estimate .estimate-form textarea:focus{outline:2px solid #e86c31;outline-offset:2px}
.page-instant-estimate .estimate-form .checkbox-row{font-size:13px;line-height:1.65;gap:11px;font-weight:400}
.page-instant-estimate .checkbox-row input{accent-color:#123d30;margin-top:2px;min-height:20px;width:20px;height:20px}
.page-instant-estimate .estimate-form textarea{min-height:120px}
.page-instant-estimate .upload-zone{border:1px dashed #78988a;background:var(--mist);padding:24px 28px;margin-top:22px;border-radius:4px}
.page-instant-estimate .upload-zone>svg{width:38px;height:38px;color:var(--ink);stroke-width:1.7;margin-bottom:12px}
.page-instant-estimate .upload-zone h3{font:700 27px/1.15 'Barlow Condensed',Impact,sans-serif;margin:0}
.page-instant-estimate .upload-zone p{font-size:13px;line-height:1.7;max-width:430px;margin:10px auto 18px}
.page-instant-estimate .upload-zone small{font-size:12px;margin-top:13px}
.page-instant-estimate .upload-zone .upload-button{font-size:14px;gap:12px;padding:13px 24px;margin:0}
.page-instant-estimate .estimate-actions{margin-top:26px;gap:18px}
.page-instant-estimate .estimate-actions .btn,.page-instant-estimate .visualization-panel .btn,.page-instant-estimate .estimate-next-step .btn{font-size:14px;line-height:1.5;min-height:48px;padding:13px 20px}
.page-instant-estimate .text-button{font:600 13px/1.5 Manrope,sans-serif;min-height:44px;padding:11px 0}
.page-instant-estimate .photo-list{gap:14px;margin-top:20px}
.page-instant-estimate .photo-preview img{height:auto;aspect-ratio:4/3;border-radius:3px}
.page-instant-estimate .photo-preview small{font-size:11px;line-height:1.5}
.page-instant-estimate .photo-preview button{font-size:12px;min-height:36px}
.page-instant-estimate #photo-status,.page-instant-estimate #delete-status,.page-instant-estimate #visual-status{font-size:13px;line-height:1.7}
.page-instant-estimate .estimate-error{font-size:14px;line-height:1.65;border-color:#e86c31;margin-top:22px}
.page-instant-estimate #estimate-loading{padding:65px 10px}
.page-instant-estimate #estimate-loading p{font-size:15px;line-height:1.7}
.page-instant-estimate #estimate-loading small{font-size:13px;line-height:1.65}
.page-instant-estimate .analysis-orbit{border-width:2px;border-top-color:#e86c31}
.page-instant-estimate .estimate-price{background:#123d30;color:#fff;border-radius:4px;padding:26px 28px}
.page-instant-estimate .estimate-price>span{font-size:13px}
.page-instant-estimate .estimate-price strong{font:700 clamp(38px,4.5vw,62px)/1.05 'Barlow Condensed',Impact,sans-serif;letter-spacing:0;margin:12px 0}
.page-instant-estimate .estimate-price small{font-size:11px;line-height:1.7;color:#d9e9e1}
.page-instant-estimate #estimate-summary{font-size:15px;line-height:1.8}
.page-instant-estimate #estimate-result h3{font:700 27px/1.15 'Barlow Condensed',Impact,sans-serif;margin:24px 0 12px}
.page-instant-estimate #estimate-assumptions{font-size:14px;line-height:1.8}
.page-instant-estimate .line-item{font-size:13px;line-height:1.6;padding:15px 0}
.page-instant-estimate .visualization-panel p,.page-instant-estimate .estimate-next-step p{font-size:14px;line-height:1.75}
.page-instant-estimate .before-label,.page-instant-estimate .after-label{font-size:11px;padding:7px 10px}
.page-instant-estimate .slider-label{font-size:14px;gap:10px}
.page-instant-estimate .slider-label input{min-height:30px}
.page-instant-estimate .slider-label>span{font-size:12px}
.page-instant-estimate #download-visual{font-size:14px}
.page-instant-estimate .estimate-tools{border-top:1px solid var(--line);padding-top:16px;margin-top:24px}
.page-contact .contact-dispatch{padding:50px 0 88px;background:var(--paper)}
.page-contact .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}
.page-contact .contact-details>h2{font:700 40px/1.05 'Barlow Condensed',Impact,sans-serif;margin:0 0 18px}
.page-contact .contact-details>p{font-size:15px;line-height:1.75;max-width:470px}
.page-contact .contact-item{padding:24px 0;border-bottom:1px solid var(--line);margin:0}
.page-contact .contact-item strong{font-size:13px;font-weight:600;display:block;margin-bottom:10px;color:var(--muted)}
.page-contact .contact-item a{display:inline-block;font:600 18px/1.5 Manrope,sans-serif;margin:0}
.page-contact .contact-phone>a{font:700 clamp(36px,3.4vw,49px)/1.05 'Barlow Condensed',Impact,sans-serif;letter-spacing:0}
.page-contact .contact-item p{font-size:14px;line-height:1.75;margin:12px 0 0;max-width:450px}
.page-contact .contact-item .contact-email{font-size:15px;overflow-wrap:anywhere}
.page-contact .contact-item .textlink{font-size:13px;margin-top:14px;display:inline-flex}
.page-contact .contact-prep{padding-top:24px}
.page-contact .contact-prep h3{font:700 26px/1.15 'Barlow Condensed',Impact,sans-serif;margin:0 0 10px}
.page-contact .contact-prep p{font-size:14px;line-height:1.75;max-width:470px}
.page-contact .contact-estimate-card{padding:0;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:var(--mist)}
.page-contact .contact-project-image{position:relative;overflow:hidden}
.page-contact .contact-project-image img{display:block;width:100%;height:auto;aspect-ratio:1.65;object-fit:cover;object-position:45% 50%;margin:0}
.page-contact .contact-project-image>span{position:absolute;bottom:16px;left:16px;background:#123d30;color:#fff;padding:8px 12px;font-size:12px}
.page-contact .contact-estimate-content{padding:28px 32px 30px}
.page-contact .contact-estimate-content .kicker{font-size:12px;letter-spacing:0;text-transform:none;font-weight:650;margin-bottom:12px}
.page-contact .contact-estimate-content h2{font:700 clamp(35px,3.1vw,44px)/1.03 'Barlow Condensed',Impact,sans-serif;margin:0;letter-spacing:-.01em}
.page-contact .contact-estimate-content p{font-size:14px;line-height:1.75;margin:18px 0 22px}
.page-contact .contact-estimate-content .btn{font-size:14px;padding:14px 20px;min-height:48px}
.page-contact .contact-estimate-content .estimate-fine{margin:20px 0 0}
[data-theme=dark] .page-instant-estimate .estimate-workspace{border-top-color:#e86c31;box-shadow:none}
[data-theme=dark] .page-instant-estimate .upload-zone{border-color:#6c897c}
[data-theme=dark] .page-instant-estimate .checkbox-row input{accent-color:#e86c31}
@media(max-width:1050px){.page-instant-estimate .estimator-layout{gap:30px;grid-template-columns:minmax(220px,.65fr) minmax(0,1.3fr)}.page-instant-estimate .estimate-workspace{padding:30px}.page-contact .contact-grid{gap:40px}.tool-intro-row{gap:35px}}
@media(max-width:800px){
 .tool-intro{padding:23px 0 30px}.tool-intro .breadcrumb{font-size:12px;margin-bottom:18px}.tool-intro-row{grid-template-columns:1fr;gap:17px}.tool-intro h1{font-size:49px;max-width:540px}.tool-intro-row>p{font-size:14px;line-height:1.7;max-width:520px;margin:0}
 .page-instant-estimate .estimator-section{padding:22px 0 55px}.page-instant-estimate .estimator-layout{grid-template-columns:1fr;gap:22px}.page-instant-estimate .estimate-sidebar{position:static}.page-instant-estimate .estimate-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}.page-instant-estimate .estimate-steps>div,.page-instant-estimate .estimate-steps>div:first-child{padding:0 0 14px;gap:8px;align-items:center;border-bottom:2px solid var(--line)}.page-instant-estimate .estimate-steps>div.current{border-bottom-color:#e86c31}.page-instant-estimate .estimate-steps>div>span{width:28px;height:28px;font-size:12px}.page-instant-estimate .estimate-steps p{font-size:12px;line-height:1.3}.page-instant-estimate .estimate-steps small{display:none}.page-instant-estimate .estimate-crew-photo,.page-instant-estimate .estimate-photo-tips,.page-instant-estimate .estimate-sidebar>.estimate-fine,.page-instant-estimate .estimate-direct-call{display:none}
 .page-instant-estimate .estimate-workspace{padding:25px 22px;scroll-margin-top:100px}.page-instant-estimate .estimate-workspace h2{font-size:34px;margin-bottom:24px}.page-instant-estimate .estimate-form .form-row{grid-template-columns:1fr;gap:0}.page-instant-estimate .estimate-form label{font-size:14px;margin-bottom:20px}.page-instant-estimate .estimate-form input:not([type=checkbox]):not([type=file]),.page-instant-estimate .estimate-form select,.page-instant-estimate .estimate-form textarea{font-size:16px}.page-instant-estimate .upload-zone{padding:22px 16px}.page-instant-estimate .upload-zone p{font-size:13px}.page-instant-estimate .estimate-actions .btn:only-child{width:100%;justify-content:center;margin:0}.page-instant-estimate .estimate-actions{gap:12px}.page-instant-estimate .estimate-actions .btn{font-size:13px;padding:13px 17px}.page-instant-estimate .estimate-price{padding:23px 20px}.page-instant-estimate .estimate-price strong{font-size:45px}.page-instant-estimate .photo-preview small{font-size:10px}.page-instant-estimate .line-item{font-size:12px}.page-instant-estimate .before-label,.page-instant-estimate .after-label{font-size:10px;padding:6px 8px;bottom:8px}.page-instant-estimate .before-label{right:8px}.page-instant-estimate .after-label{left:8px}
 .page-contact .contact-dispatch{padding:35px 0 60px}.page-contact .contact-grid{grid-template-columns:1fr;gap:35px}.page-contact .contact-details>h2{font-size:34px}.page-contact .contact-phone>a{font-size:42px}.page-contact .contact-estimate-content{padding:25px}.page-contact .contact-estimate-content h2{font-size:38px}.page-contact .contact-project-image img{aspect-ratio:1.65}.page-contact .contact-prep{padding-top:22px}
}
@media(max-width:380px){.tool-intro h1{font-size:44px}.page-instant-estimate .estimate-workspace{padding:22px 17px}.page-instant-estimate .estimate-steps{gap:8px}.page-instant-estimate .estimate-steps>div{gap:6px}.page-instant-estimate .estimate-steps p{font-size:11px}.page-instant-estimate .estimate-actions .btn{width:100%;justify-content:center}.page-instant-estimate .estimate-price strong{font-size:39px}.page-contact .contact-estimate-content{padding:22px}}
