.epc-contact label{display:block;font-size:14px;font-weight:600;margin:18px 0 8px}.epc-contact input,.epc-contact select,.epc-contact textarea{font-family:inherit;width:100%;font-size:16px;padding:12px 14px;border:1px solid #b4c0ca;border-radius:6px;background:#fff;color:var(--ink,#17201f);line-height:1.4}.epc-contact input:focus-visible,.epc-contact button:focus-visible,.epc-contact a:focus-visible,.epc-contact textarea:focus-visible{outline:3px solid #2c72b8;outline-offset:3px}.epc-contact textarea{min-height:112px;resize:vertical}.epc-contact button:disabled{cursor:wait;opacity:.65}
.epc-contact{--epc-yellow:var(--gold,#ffcf43);--epc-ink:var(--ink,#17201f);color:var(--ink,#17201f);font-family:inherit}.epc-contact *{box-sizing:border-box}.epc-contact [hidden]{display:none!important}.epc-contact input,.epc-contact select,.epc-contact textarea{font:inherit;max-width:100%}.epc-contact .epc-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer}.epc-contact .epc-note{font-size:13px;line-height:1.6;color:var(--muted,#616b65)}
.epc-contact .epc-button{appearance:none;display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--epc-yellow);color:#17232f!important;padding:15px 20px;border:0;border-radius:7px;text-decoration:none!important;font-size:14px;font-weight:700;line-height:1.5;cursor:pointer;max-width:100%}
.epc-contact .epc-button:hover{background:#f5c02b}
.epc-contact .epc-note{font-size:12px;color:#5f6b76;line-height:1.6}
.epc-contact .epc-google-credit{font-size:11px;text-align:right;color:#616c76;margin:8px 0 20px}
.epc-contact .epc-suggestions{border:1px solid #bcc6cf;border-radius:6px;overflow:hidden;margin-top:6px}
.epc-contact .epc-suggestions button{display:block;width:100%;padding:12px;border:0;border-bottom:1px solid #e5e8eb;text-align:left;background:#fff;color:#182431;font-size:14px;line-height:1.5;cursor:pointer}
.epc-contact .epc-suggestions button:hover,.epc-contact .epc-suggestions button[aria-selected=true]{background:#fff3cd}
.epc-contact .epc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
.epc-contact .epc-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:720px){.epc-contact .epc-form-grid{grid-template-columns:1fr}}
.epc-contact .epc-google-name{font-family:Arial,sans-serif;font-size:12px;font-weight:400;font-style:normal;color:#5e5e5e;white-space:nowrap;letter-spacing:normal}
.epc-contact .epc-form-grid>label{min-width:0}
.epc-contact .epc-form-grid input{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:50px;min-height:50px;max-height:50px;margin-top:8px;padding:12px 14px;appearance:none;-webkit-appearance:none;font-size:16px;line-height:24px;background:#fff;color:#182431;color-scheme:light}
.epc-contact .epc-form-grid input::-webkit-date-and-time-value{min-height:24px;line-height:24px;text-align:left}
.epc-contact .epc-form-grid input::-webkit-datetime-edit{min-width:0;padding:0}
.epc-contact .epc-form-grid input::-webkit-calendar-picker-indicator{flex-shrink:0;margin:0;padding:0}
.epc-contact .epc-form-grid input.epc-filled{background:#fff3cd}
.epc-contact .epc-form-grid input:autofill{box-shadow:0 0 0 1000px #fff3cd inset;color:#182431}
.epc-contact .epc-form-grid input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #fff3cd inset;-webkit-text-fill-color:#182431}
.epc-contact .epc-address-hint{display:block;margin-top:6px;font-weight:600;color:var(--epc-ink)}
.epc-contact .epc-address-fields input.epc-filled,.epc-contact .epc-minutes.epc-filled{background:#fff3cd}
.epc-contact .epc-address:autofill{box-shadow:0 0 0 1000px #fff3cd inset;color:#182431}
.epc-contact .epc-address:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #fff3cd inset;-webkit-text-fill-color:#182431}
.epc-contact .epc-address{min-width:0;max-width:100%}
.epc-contact .epc-address-hint:empty{display:none}
.epc-contact .epc-form-grid>div{min-width:0}
.epc-contact .epc-form-grid select{box-sizing:border-box;min-width:0;width:100%;height:50px;min-height:50px;max-height:50px;padding:12px 14px;border:1px solid #b4c0ca;border-radius:6px;background:#fff;color:#182431;line-height:24px;font-size:16px;font-family:inherit}
.epc-contact .epc-form-grid select{display:block;margin-top:8px}
.epc-contact .epc-date-trigger.epc-filled,.epc-contact .epc-form-grid select.epc-filled{background:#fff3cd}
.epc-contact .epc-quote-form .epc-address{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:54px;min-height:54px;max-height:54px;margin-inline:0;padding:12px 14px;font-size:16px;line-height:24px}
.epc-contact .epc-camera-row select.epc-filled{background-color:#fff3cd}
.epc-contact .epc-custom .epc-note,.epc-contact .epc-front.epc-custom .epc-note{font-size:var(--epc-text-size,12px)}
.epc-contact .epc-cabling-cameras.epc-filled{background:#fff3cd}
.epc-contact .epc-floor-area.epc-filled{background:#fff3cd}
.epc-contact a.epc-button[href^="tel:"]{display:inline-flex;width:auto;max-width:100%;justify-content:center;white-space:normal;text-align:center;box-sizing:border-box}
.epc-contact .epc-address-fields{min-width:0;border:0;padding:0;margin:0 0 24px}
.epc-contact .epc-address-fields legend{font-size:17px;font-weight:700;margin-bottom:6px}
.epc-contact .epc-address-fields>.epc-note{margin:0 0 12px}
.epc-contact .epc-address-field{position:relative}
.epc-contact .epc-address-field label{margin:14px 0 7px}
.epc-contact .epc-status>.epc-button{margin-top:12px}
.epc-contact .epc-suggestions{max-height:280px;overflow-y:auto;overscroll-behavior:contain}
.epc-contact .epc-suggestions button{min-height:44px;white-space:normal;overflow-wrap:anywhere}
.epc-contact .epc-suggestions button small{display:block;font-size:10px;color:#687580;font-weight:400;margin-top:3px}
.epc-contact .epc-address-feedback:empty{display:none}
.epc-contact .epc-address-feedback{margin:12px 0 0;color:#4f5c63}
.epc-contact .epc-status .epc-button{display:inline-flex;margin:10px 10px 0 0;max-width:100%;white-space:normal}
.epc-contact .epc-electrical-calculator .epc-house-fields .epc-floor-area.epc-filled{background:#fff3cd;border-color:#dfb72c}
.epc-contact .epc-button.epc-info-trigger{display:inline-flex;justify-content:center;flex:0 0 auto;margin:0 0 0 auto;min-height:50px;background:#ba2034;color:#fff!important;border:1px solid #a7192b;font-size:14px;text-align:center}
.epc-contact .epc-button.epc-info-trigger:hover{background:#99172a}
@media(max-width:640px){.epc-contact .epc-button.epc-info-trigger{width:100%;margin:0}}
.epc-contact .epc-suggestions{overflow-y:scroll;scrollbar-gutter:stable;scrollbar-width:auto;scrollbar-color:#947820 #fff8df}
.epc-contact .epc-suggestions::-webkit-scrollbar{width:12px}
.epc-contact .epc-suggestions::-webkit-scrollbar-track{background:#fff8df}
.epc-contact .epc-suggestions::-webkit-scrollbar-thumb{background:#947820;border:3px solid #fff8df;border-radius:8px}
.epc-contact .epc-suggestions-hint{margin:4px 0 0;padding:8px 10px;background:#fff3cd;border:1px solid #d5b448;border-radius:5px;font-size:12px;font-weight:600;color:#504013;line-height:1.4}
.epc-contact .epc-suggestions-hint[hidden]{display:none}
.epc-contact .epc-task-quantity .epc-filled{background-color:#fff3cd}
.epc-contact-row{display:grid;grid-template-columns:minmax(0,1fr) 110px 40px;gap:12px;align-items:end;margin-bottom:15px}
.epc-contact-row label{min-width:0}
.epc-contact-row select{max-width:100%}
@media(max-width:520px){.epc-contact-row{grid-template-columns:minmax(0,1fr) 40px}
.epc-contact-row>label:first-child{grid-column:1/-1}
.epc-contact-row>label:nth-child(2){grid-column:1}}
.epc-contact .epc-suggestions-scroll{position:relative;padding-right:18px}
.epc-contact .epc-suggestions-scroll:has(.epc-suggestions[hidden]){display:none}
.epc-contact .epc-suggestions-scroll .epc-suggestions{scrollbar-width:none}
.epc-contact .epc-suggestions-scroll .epc-suggestions::-webkit-scrollbar{display:none}
.epc-contact .epc-suggestions-rail{position:absolute;right:0;top:0;width:12px;border-radius:8px;background:#efe1af;border:1px solid #d6be71;touch-action:none;cursor:pointer}
.epc-contact .epc-suggestions-thumb{position:absolute;left:1px;right:1px;min-height:32px;background:#8b6911;border-radius:7px;cursor:grab}
.epc-contact .epc-suggestions-rail:focus-visible{outline:3px solid #2c72b8;outline-offset:2px}
.epc-contact .epc-photo-card .epc-package-details{display:block;width:100%;text-align:left;margin:0 0 1.2rem;color:#283531;font-size:15px;line-height:1.55}
.epc-contact .epc-photo-card .epc-package-details p{display:block;margin:0 0 .65rem;font-weight:700}
.epc-contact .epc-address-fields{margin-top:1.5rem}
@media(max-width:600px){.epc-contact .epc-photo-card .epc-package-details{font-size:13px;line-height:1.5}}
.epc-contact .epc-photo-card .epc-package-details p{font-size:inherit;line-height:inherit}
.epc-contact .epc-address-fields{margin-top:0;margin-bottom:30px;padding-bottom:24px;border-bottom:1px solid #e2e5e8}
.epc-contact{margin-top:24px}
.epc-contact-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.epc-front .epc-contact-actions .epc-button{width:100%;min-height:68px;margin:0;justify-content:space-between;text-align:left;padding:18px 22px;font-size:15px}
.epc-front .epc-contact-actions svg{flex:0 0 22px}
.epc-front .epc-contact-actions .epc-button{background:var(--epc-yellow);border:0;color:#17232f!important}
.epc-front .epc-contact-actions .epc-button:hover{background:#f5c02b}
.epc-contact-panel{margin-top:18px;padding:26px;border:1px solid #dee3e7;border-radius:14px;background:#fff;scroll-margin-top:130px}
.epc-contact-panel h3:focus{outline:none}
.epc-front .epc-contact-panel label input,.epc-front .epc-contact-panel label textarea{margin-top:7px}
.epc-front .epc-contact-status{font-size:14px;overflow-wrap:anywhere}
.epc-front .epc-contact-address{min-width:0;margin:24px 0;padding:20px 0;border:0;border-top:1px solid #e2e5e8;border-bottom:1px solid #e2e5e8}
.epc-front .epc-contact-address legend{padding:0 8px 0 0;font-size:18px;font-weight:700}
.epc-front .epc-contact-address-note{margin:0;font-size:13px}
.epc-front .epc-contact-quote-note{background:#fff8df;padding:12px 14px;border-radius:6px}
@media(max-width:600px){.epc-contact-actions{grid-template-columns:1fr;gap:10px}
.epc-front .epc-contact-actions .epc-button{min-height:60px;padding:16px 18px}
.epc-contact-panel{padding:20px}}
.epc-front .epc-contact-actions .epc-button{justify-content:center;text-align:center;gap:12px}
.epc-front .epc-contact-actions .epc-button span{flex:0 1 auto}
.epc-contact .epc-optional{font-weight:400;font-size:12px;color:#65716e}
.epc-contact .epc-photo-picker{min-width:0;border:1px dashed #bbc6bf;border-radius:10px;padding:20px;margin:24px 0;background:#fafbf8}
.epc-contact .epc-photo-picker legend{font-weight:700;padding:0 6px;font-size:15px}
.epc-contact .epc-photo-actions{display:flex;flex-wrap:wrap;gap:10px}
.epc-contact .epc-photo-choose{position:relative;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;min-height:44px;padding:10px 16px;border:1px solid #c8cfc8;background:white;border-radius:6px;margin:0;cursor:pointer;font-size:13px}
.epc-contact .epc-photo-choose:focus-within{outline:3px solid #2c72b8;outline-offset:3px}
.epc-contact .epc-photo-choose input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0!important;cursor:pointer}
.epc-contact .epc-photo-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;margin-top:14px}
.epc-contact .epc-contact-upload-card{min-width:0;max-width:220px;border:1px solid #dce1da;border-radius:7px;background:#fff;overflow:hidden;display:flex;flex-direction:column}
.epc-contact .epc-contact-upload-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.epc-contact .epc-contact-upload-card span,.epc-contact .epc-contact-upload-card small{font-size:11px;padding:7px;overflow-wrap:anywhere;line-height:1.5}
.epc-contact .epc-contact-upload-card small{color:#a22a24}
.epc-contact .epc-photo-remove{border:0;border-top:1px solid #e5e7e2;background:#fff9e8;color:#27352f;padding:10px;font:inherit;font-size:12px;cursor:pointer;min-height:40px;margin-top:auto}
.epc-contact .epc-upload-progress{margin-top:20px}
.epc-contact .epc-upload-progress progress{width:100%;height:12px;accent-color:#677949}
.epc-contact .epc-upload-progress label{font-size:12px}
.epc-contact .epc-photo-retry{margin-top:16px;background:#f5ebc7}
@media(max-width:520px){.epc-contact .epc-photo-picker{padding:14px}
.epc-contact .epc-photo-actions{gap:8px}
.epc-contact .epc-photo-choose{padding:10px 12px}}
.epc-front .epc-contact .epc-photo-feedback[data-limit="true"]{padding:12px 14px;border:1px solid #dec16a;border-radius:7px;background:#fff3cd;color:#55430f;font-size:14px;line-height:1.6}
/* Three contact choices keep equal widths without an orphaned email tile. */
.epc-contact-actions.epc-contact-actions-email{grid-template-columns:1fr}

/* Compact attribution is visible only alongside the relevant address suggestions. */
.epc-front .epc-suggestion-credit{margin:0;padding:8px 12px;border:1px solid #ddd;border-top:0;border-radius:0 0 6px 6px;background:#fff;font:400 12px/1.5 Arial,sans-serif;color:#5e5e5e}
.epc-front .epc-suggestion-credit a{color:#5e5e5e;text-decoration:underline;text-underline-offset:2px}
.epc-front .epc-suggestions .epc-google-name{font:400 12px/1.5 Arial,sans-serif;color:#5e5e5e;white-space:nowrap;letter-spacing:normal}
