/* Locally hosted, OFL-licensed fonts. License texts are in /licenses in the source package. */
@font-face{font-family:"Public Sans";font-style:normal;font-weight:400 700;font-display:swap;src:url('/assets/public-sans-latin.woff2?v=1') format('woff2')}
@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url('/assets/source-serif4-latin.woff2?v=1') format('woff2')}
:root{color-scheme:light;--ink:#102c46;--muted:#627168;--green:#175b83;--deep:#102c46;--lime:#e5edce;--sand:#f4eddc;--paper:#fafaf6;--line:#dfe5dc;--white:#fff;--radius:14px;--max:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Public Sans",Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:650;letter-spacing:-.045em;line-height:1.12}h1{font-size:clamp(2.4rem,5.1vw,4.35rem)}h2{font-size:clamp(1.7rem,3.4vw,2.75rem)}h3{font-size:1.15rem}p+p{margin-top:15px}a{color:var(--green);text-underline-offset:4px}a:hover{color:#0c4568}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b9882d;outline-offset:4px}img{display:block;max-width:100%;height:auto}address{font-style:normal}ul,ol{padding-left:22px}input[type=checkbox]{accent-color:var(--green);width:17px;height:17px;flex-shrink:0}.container{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.narrow{max-width:750px}.article-width{max-width:840px}.section{padding-block:88px}.page-space{padding-block:50px 88px;min-height:64vh}.page-heading{max-width:780px;margin-bottom:36px}.page-heading h1{margin-bottom:18px}.page-heading>p:last-child,.lead{font-size:1.14rem;line-height:1.65;color:var(--muted);margin-top:20px}.muted,.field-help{color:var(--muted)}.small-label,.eyebrow{font-size:.73rem;font-weight:700;line-height:1.5;letter-spacing:.095em;text-transform:uppercase}.eyebrow{margin-bottom:16px;color:#316c91}.small-label{color:var(--muted);font-size:.64rem;letter-spacing:.065em;margin-bottom:6px}.inline-link{display:inline-block;font-size:.9rem;font-weight:650;text-decoration:none}.inline-link:hover{text-decoration:underline}.small-link{font-size:.83rem}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;top:12px;left:12px;z-index:50;padding:12px 20px;background:var(--deep);color:white}.site-header{background:var(--paper);border-bottom:1px solid var(--line)}.nav-bar{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:88px}.brand{display:inline-flex;align-items:center;gap:0;font-size:1.35rem;font-weight:800;letter-spacing:-.065em;color:var(--ink);text-decoration:none;white-space:nowrap}.brand img{margin-right:10px}.brand span{font-weight:500}.brand .brand-dot{color:#ab8052;font-weight:800}.desktop-nav{display:flex;align-items:center;gap:34px}.desktop-nav a{font-size:.86rem;font-weight:550;text-decoration:none;color:var(--ink)}.desktop-nav a:hover{text-decoration:underline}.desktop-nav .nav-owner{padding:10px 16px;border:1px solid #c8d2c8;border-radius:7px}.nav-owner span{margin-left:10px}.mobile-nav{display:none}.button{display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:48px;padding:12px 21px;border:1px solid transparent;border-radius:7px;font-size:.88rem;line-height:1.4;font-weight:650;text-decoration:none;text-align:center;cursor:pointer}.button-dark{background:var(--green);color:#fff}.button-dark:hover{background:#0c4568;color:#fff}.button-light{background:#f5edda;color:var(--deep)}.button-light:hover{background:#fff;color:var(--deep)}.button-outline{background:transparent;color:var(--green);border-color:#bfcdbf}.button-outline:hover{background:#edf2e6;border-color:var(--green)}.button-full{width:100%}.button-small{min-height:38px;padding:9px 14px;font-size:.8rem}.home-hero{padding:42px 0 54px;background:var(--paper)}.hero-grid{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:54px}.hero-copy{padding-block:28px}.hero-copy .eyebrow{display:flex;gap:9px;align-items:center;margin-bottom:23px}.location-dot{width:7px;height:7px;display:inline-block;background:#709044;border-radius:50%;box-shadow:0 0 0 4px #e9eddc}.hero-copy h1{font-size:clamp(3.4rem,5.6vw,5rem);line-height:1.045;letter-spacing:-.065em;margin-bottom:24px;font-weight:600}.hero-description{max-width:485px;font-size:1.075rem;line-height:1.75;color:var(--muted)}.hero-search{margin:29px 0 14px}.hero-search>label{display:block;font-size:.81rem;font-weight:650;margin-bottom:9px}.search-input-row{display:flex;align-items:center;gap:9px;padding:6px;border:1px solid #cdd7ca;border-radius:9px;background:#fff;box-shadow:0 5px 16px #183d3010}.search-icon{padding-left:9px;color:#4e6958;font-size:1.45rem;line-height:1}.search-input-row input{width:100%;min-width:0;border:0;background:none;padding:8px 0;font-size:.85rem}.search-input-row .button{flex:0 0 auto;gap:10px;padding:13px 16px}.hero-reassurance{font-size:.73rem;color:var(--muted);line-height:1.7}.hero-reassurance span{margin:0 8px;color:#8b9b87}.hero-art{position:relative;padding-bottom:21px}.hero-art>img{width:100%;border-radius:22px}.art-caption{position:absolute;bottom:0;left:25px;right:25px;display:flex;align-items:center;gap:13px;background:#fffffff2;backdrop-filter:blur(3px);padding:17px 20px;border-radius:11px;box-shadow:0 10px 25px #193d3010}.caption-icon{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;background:var(--lime);border-radius:50%;font-size:1.3rem}.art-caption strong{display:block;font-size:.85rem}.art-caption div>span{display:block;font-size:.67rem;color:var(--muted);margin-top:3px}.confidence-strip{background:#dceaf3;border-block:1px solid #cadde9}.confidence-strip .container{display:flex;justify-content:space-between;gap:20px;padding-block:20px}.confidence-strip p{display:flex;gap:12px;align-items:center;font-size:.82rem;font-weight:550;margin:0}.confidence-strip p>span{font-size:1.15rem;color:#617b48}.section-heading{margin-bottom:34px;max-width:810px}.section-heading .eyebrow{margin-bottom:11px}.section-heading.split{display:flex;max-width:none;align-items:end;justify-content:space-between;gap:55px}.section-heading.split>p{max-width:355px;color:var(--muted);font-size:.93rem;line-height:1.75}.community-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:25px}.community-card{position:relative;display:block;padding:24px 22px;border:1px solid var(--line);border-radius:10px;background:white;text-decoration:none;transition:transform .15s,border-color .15s}.community-card:hover{transform:translateY(-3px);border-color:#9bab85}.community-pin{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#eff2e8;font-size:1rem;margin-bottom:23px}.community-card h3{margin-bottom:7px;font-size:1.08rem;letter-spacing:-.025em}.community-card>span:not(.community-pin):not(.community-arrow){color:var(--muted);font-size:.7rem}.community-arrow{position:absolute;top:27px;right:24px;color:#748268}.planning-section{background:#e3eef4;padding:76px 0}.planning-grid{display:grid;grid-template-columns:.85fr 1.35fr;gap:60px;align-items:center}.planning-grid>div>p:not(.eyebrow){color:var(--muted);margin:20px 0 24px;font-size:.95rem;max-width:360px}.purpose-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.purpose-grid>a{text-decoration:none;color:var(--ink)}.purpose-grid h3{font-size:1.03rem;line-height:1.3;margin:17px 0 8px}.purpose-grid p{font-size:.8rem;line-height:1.6;color:var(--muted)}.electrical-sample{display:block;height:172px;border-radius:90px 90px 10px 10px;background-color:#d0d5ba;background-image:linear-gradient(0deg,#a5b595 0 13%,transparent 13% 100%);overflow:hidden;position:relative}.electrical-sample:after{content:"";position:absolute;left:0;right:0;bottom:22%;height:48%;background:repeating-linear-gradient(90deg,#b98d5f 0 20px,#785940 21px,#d1aa7b 23px,#d1aa7b 25px);border-top:4px solid #d5b284;box-shadow:0 10px 0 -5px #785d40}.electrical-sample.metal{background-color:#c1caba}.electrical-sample.metal:after{background:repeating-linear-gradient(90deg,#384b3a 0 4px,transparent 4px 18px);border-top:5px solid #3f4c3d;border-bottom:5px solid #3f4c3d;height:44%}.electrical-sample.vinyl{background-color:#dcd6bf}.electrical-sample.vinyl:after{background:repeating-linear-gradient(90deg,#f9f4e5 0 23px,#dfd9c8 23px 26px);border-top-color:#fffaf0;box-shadow:0 8px 0 -4px #d0c8b4}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px}.steps-grid article>span{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;border:1px solid #c8d3c1;border-radius:50%;color:#5c7849;font-size:.76rem;margin-bottom:23px}.steps-grid h3{font-size:1.16rem;margin-bottom:12px}.steps-grid p{color:var(--muted);font-size:.9rem;line-height:1.8}.homeowner-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;background:var(--deep);padding:44px 50px;border-radius:15px;color:white;margin-bottom:80px}.homeowner-cta .eyebrow{color:#c4d3ab}.homeowner-cta h2{font-size:2.1rem;margin-bottom:12px}.homeowner-cta p:not(.eyebrow){color:#c8d8ca;font-size:.92rem}.site-footer{border-top:1px solid var(--line);padding:50px 0 20px;background:#eaf2f7}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px;padding-bottom:42px}.footer-grid p{font-size:.86rem;max-width:250px;margin:17px 0 13px;color:var(--muted)}.footer-region{font-size:.72rem;color:var(--muted)}.footer-grid nav{display:grid;align-content:start;gap:10px}.footer-grid h2{font-size:.77rem;font-weight:750;letter-spacing:0;margin-bottom:7px}.footer-grid nav a{font-size:.8rem;color:#627168;text-decoration:none}.footer-grid nav a:hover{text-decoration:underline}.footer-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:.71rem}.footer-bottom>div{display:flex;gap:24px}.footer-bottom a{color:var(--muted);text-decoration:none}.breadcrumbs{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:22px 0;font-size:.73rem;color:var(--muted)}.breadcrumbs a{text-decoration:none}.breadcrumbs>span[aria-current]{overflow-wrap:anywhere}.directory-top{background:#eaf3f8;border-bottom:1px solid var(--line)}.directory-intro{padding:19px 0 38px;max-width:810px}.directory-intro h1{font-size:clamp(2.3rem,4.5vw,3.6rem);margin-bottom:17px}.directory-intro>p:last-child{max-width:715px;color:var(--muted);font-size:1rem}.directory-intro .eyebrow{margin-bottom:12px}.directory-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:35px;padding-top:38px}.filters{min-width:0}.filters>form{display:grid;gap:18px;background:white;padding:21px;border:1px solid var(--line);border-radius:10px}.filter-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.filter-title h2{font-size:.96rem;letter-spacing:-.02em}.filter-title a{font-size:.71rem}.field{display:grid;gap:8px;font-size:.8rem;font-weight:600;color:#374f40}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:44px;padding:11px 12px;border:1px solid #cdd7c8;border-radius:6px;background:#fff;color:var(--ink);font-size:.86rem;font-weight:450}.field textarea{resize:vertical;line-height:1.7}.field small,.field-help{font-size:.73rem;font-weight:400;line-height:1.65}.field input[type=file]{padding:8px;font-size:.78rem}.field input[type=file]::file-selector-button{border:0;border-radius:4px;background:#e8eedf;padding:6px 10px;margin-right:10px;color:var(--ink)}.field select{appearance:auto}.filter-tip{padding:28px 8px}.filter-tip>span{font-size:1.5rem;color:#9b7445}.filter-tip h3{font-size:1.1rem;line-height:1.4;margin:12px 0}.filter-tip p{font-size:.82rem;color:var(--muted);margin-bottom:14px}.filter-tip a{font-size:.78rem;font-weight:600}.results-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.results-heading h2{font-size:1.18rem;letter-spacing:-.035em}.results-heading p{font-size:.75rem;color:var(--muted);margin-top:4px}.results-page{font-size:.72rem;color:var(--muted);white-space:nowrap}.company-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.company-card{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid var(--line);border-radius:10px;padding:21px 21px 14px}.company-card-top{display:flex;align-items:start;flex-wrap:wrap;gap:12px}.company-monogram{display:grid;place-items:center;flex-shrink:0;width:43px;height:43px;border-radius:9px;background:#dceaf3;color:#5b734f;font-size:.85rem;font-weight:750;letter-spacing:-.035em}.company-heading{min-width:0;flex:1}.company-heading h3{font-size:1.02rem;letter-spacing:-.02em;line-height:1.4}.company-heading h3>a{color:var(--ink);text-decoration:none}.company-heading h3>a:hover{text-decoration:underline}.card-address{margin:17px 0 20px;color:var(--muted);font-size:.75rem;line-height:1.7;min-height:40px}.card-address span{color:#a18a5c;margin-right:6px}.company-card-bottom{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:auto;padding-top:15px;border-top:1px solid #e9eee3}.phone-link{font-size:.73rem;font-weight:650;text-decoration:none;white-space:nowrap}.phone-link>span{margin-right:4px}.detail-link{font-size:.7rem;text-decoration:none;white-space:nowrap;font-weight:600}.compare-check{display:flex;align-items:center;gap:7px;padding-top:15px;color:var(--muted);font-size:.68rem;cursor:pointer}.compare-check input{width:14px;height:14px;margin:0}.compare-bar{display:flex;position:sticky;bottom:14px;align-items:center;justify-content:space-between;gap:15px;margin:22px 0 12px;padding:16px 20px;border:1px solid #bdcdb5;border-radius:10px;background:#f0f4e7;box-shadow:0 6px 20px #29473410}.compare-bar strong{display:block;font-size:.84rem}.compare-bar span{display:block;font-size:.72rem;color:var(--muted)}.compare-bar .button{font-size:.77rem;min-height:41px;padding:10px 15px}.pagination{display:flex;flex-wrap:wrap;gap:7px;align-items:center;justify-content:center;margin:28px 0}.pagination a{padding:6px 12px;border-radius:6px;font-size:.78rem;text-decoration:none;border:1px solid var(--line);background:#fff}.pagination [aria-current]{background:var(--green);color:white;border-color:var(--green)}.directory-note{font-size:.71rem;color:var(--muted);line-height:1.8;margin-top:20px}.directory-bottom{padding-top:70px}.question-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.question-grid h3{font-size:1.12rem;margin-bottom:12px}.question-grid p{font-size:.87rem;color:var(--muted)}.badge{display:inline-flex;align-items:center;gap:5px;width:fit-content;padding:4px 9px;background:#f0f3e9;border:1px solid #dce5d6;border-radius:30px;font-size:.66rem;line-height:1.5;color:#566a4c;font-weight:650;text-decoration:none;white-space:nowrap}.badge.verified{background:#e8f0e6;color:#285438;border-color:#d6e2cf}.badge.sponsored{background:#f4ead4;border-color:#e5d8b9;color:#795d2c}.company-card-top>.badge{margin-top:3px}.tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:14px}.tags span{padding:4px 8px;font-size:.67rem;border:1px solid var(--line);border-radius:4px;color:#5a6c50;background:#f7fafc}.empty-state{padding:50px 25px;background:#fff;border:1px solid var(--line);border-radius:10px;text-align:center}.empty-state>span{display:block;font-size:2.5rem;color:#799461}.empty-state h2,.empty-state h3{font-size:1.5rem}.empty-state p{margin:12px auto 24px;max-width:450px;color:var(--muted)}.empty-state .inline-link{display:block;margin-top:15px}.profile-top{background:#eaf3f8;border-bottom:1px solid var(--line)}.profile-heading{display:flex;align-items:center;gap:28px;padding:23px 0 46px}.profile-monogram{display:grid;place-items:center;flex-shrink:0;width:112px;height:112px;border-radius:20px;background:#dceaf3;color:#175b83;font-size:2.05rem;font-weight:650;letter-spacing:-.045em}.profile-heading h1{font-size:clamp(2rem,3.65vw,3.1rem);margin:0 0 14px;max-width:870px}.profile-heading .eyebrow{margin-bottom:11px}.profile-meta{display:flex;align-items:center;flex-wrap:wrap;gap:15px;font-size:.82rem;color:var(--muted)}.profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:30px;margin-top:34px}.surface{padding:29px;background:white;border:1px solid var(--line);border-radius:11px;margin-bottom:20px;min-width:0}.surface h2{font-size:1.45rem;margin-bottom:18px;letter-spacing:-.03em}.surface h3{font-size:1.15rem;margin:15px 0}.surface p{color:var(--muted);font-size:.92rem}.surface .eyebrow{font-size:.68rem;margin-bottom:12px}.business-details{margin:0}.business-details>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:20px;padding:19px 0;border-top:1px solid #e7ece2}.business-details>div:first-child{border-top:0;padding-top:5px}.business-details>div:last-child{padding-bottom:0}.business-details dt{font-size:.81rem;color:var(--muted)}.business-details dd{margin:0;font-size:.9rem;font-weight:550;overflow-wrap:anywhere}.business-details dd .small-link{display:inline-block;margin-top:7px;font-size:.73rem;font-weight:500}.business-details dd>a{text-decoration:none}.profile-sidebar{position:sticky;top:22px}.contact-card{padding:29px;border-radius:13px;background:var(--deep);color:white}.contact-symbol{display:grid;place-items:center;width:40px;height:40px;border:1px solid #748b6b;border-radius:50%;font-size:1.4rem;margin-bottom:22px;color:#d5e4bb}.contact-card h2{font-size:1.85rem;letter-spacing:-.045em;line-height:1.15;margin-bottom:15px}.contact-card>p{color:#c4d4c3;font-size:.85rem;line-height:1.8;margin-bottom:20px}.contact-card .button-dark{background:#f8bc55;color:var(--deep)}.contact-card .button-dark:hover{background:#f2f7df}.contact-card .contact-small{font-size:.68rem;text-align:center;margin:9px 0 23px;color:#b9cdb7}.contact-card .button-outline{border-color:#648164;color:#e6f1f8;font-size:.72rem;min-height:41px;padding:10px}.contact-card .button-outline:hover{background:#2c5140}.owner-card{padding:26px 12px}.owner-card .eyebrow{font-size:.67rem;margin-bottom:9px}.owner-card h3{font-size:1.13rem;margin-bottom:11px}.owner-card p:not(.eyebrow){color:var(--muted);font-size:.8rem;line-height:1.7;margin-bottom:12px}.owner-card a{font-size:.8rem;font-weight:650;text-decoration:none}.large-tags{margin:0;gap:9px}.large-tags span{font-size:.84rem;padding:7px 11px}.check-list{list-style:none;padding:0;margin:20px 0}.check-list li{position:relative;padding-left:25px;margin:12px 0;color:var(--muted);font-size:.87rem;line-height:1.8}.check-list li:before{content:"✓";position:absolute;left:0;top:0;color:#668649;font-weight:750}.listing-help{display:flex;justify-content:space-between;gap:15px;padding:7px 5px;font-size:.73rem;color:var(--muted)}.listing-help a{font-size:.73rem}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.related-grid .company-card-bottom{flex-wrap:wrap}.public-gallery,.owner-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.public-gallery img,.owner-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:6px}.public-gallery figcaption,.owner-gallery figcaption{margin:8px 0;color:var(--muted);font-size:.75rem}.comparison-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.comparison-card{display:flex;flex-direction:column}.comparison-card>.company-monogram{margin-bottom:20px}.comparison-card h2{font-size:1.35rem;line-height:1.35}.comparison-card h2>a{text-decoration:none;color:var(--ink)}.comparison-card dl{margin:22px 0}.comparison-card dl>div{border-top:1px solid var(--line);padding:14px 0}.comparison-card dt{font-size:.73rem;color:var(--muted);margin-bottom:5px}.comparison-card dd{margin:0;font-size:.85rem}.comparison-card>.button{margin-top:auto}.comparison-card>.inline-link{margin-top:17px;text-align:center}.page-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:28px}.article-content{margin-top:38px}.article-content h2{font-size:1.6rem;margin:35px 0 17px}.article-content p{line-height:1.9;color:#516556}.article-content section{scroll-margin-top:25px}.article-content ul{color:var(--muted);line-height:1.9}.process-list{padding:0;list-style:none;counter-reset:steps}.process-list li{position:relative;counter-increment:steps;padding:0 0 26px 49px;margin:24px 0;border-bottom:1px solid var(--line)}.process-list li:before{content:counter(steps);position:absolute;left:0;top:-3px;display:grid;place-items:center;width:31px;height:31px;background:#e7edda;color:#526b42;border-radius:50%;font-size:.8rem}.process-list p{margin-top:9px}.article-callout{padding:30px;background:#edf1e2;border-radius:10px;margin-top:40px}.article-callout h2{font-size:1.6rem}.article-callout p{color:var(--muted);margin:14px 0 23px}.table-wrap{overflow:auto;margin-top:25px}table{width:100%;border-collapse:collapse;font-size:.87rem}caption{text-align:left;font-size:.78rem;color:var(--muted);margin-bottom:10px}th,td{border:1px solid var(--line);padding:14px;text-align:left;vertical-align:top}th{background:#edf1e4;font-weight:650}td{color:var(--muted);background:white}.support-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.8fr);gap:30px;align-items:start}.support-layout aside .inline-link{display:block;margin-top:16px}.stack-form{display:grid;gap:19px}.stack-form>.button{justify-self:start}.stack-form>.button-full{justify-self:stretch}.stack-form .surface{margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wide{grid-column:1/-1}.form-actions{display:flex;flex-wrap:wrap;gap:12px;border-top:1px solid var(--line);padding-top:20px}.check-label{display:flex;align-items:start;gap:10px;font-size:.8rem;color:#50654e;line-height:1.7}.check-label input{margin-top:4px}.optional{font-weight:400;color:var(--muted)}.soft-note{padding:18px;background:#f0f4e8;border-radius:7px;font-size:.87rem}.soft-note p{margin-top:6px;font-size:.82rem}.notice{padding:16px 20px;border:1px solid #d1dfc8;border-radius:8px;background:#eef5e8;color:#365630;font-size:.88rem;overflow-wrap:anywhere}.notice.error{background:#fff1e9;border-color:#e4c3b2;color:#7f4230}.notice.success{background:#eaf4e4;color:#34562e}.flash-wrap{padding-top:20px;padding-bottom:10px}.flash-wrap .notice+.notice{margin-top:9px}.preserve-lines{white-space:pre-line;overflow-wrap:anywhere}.honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.error-page{max-width:780px}.auth-page{background:#fff}.auth-shell{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.auth-story{display:flex;flex-direction:column;justify-content:space-between;padding:45px clamp(30px,6vw,85px);color:#f5f4e9;background:var(--deep);overflow:hidden}.auth-story .brand{color:white}.auth-story .brand img{border:1px solid #658463;border-radius:8px}.auth-story>div{padding-block:65px}.auth-story .eyebrow{color:#c9d9aa}.auth-story h1{font-size:clamp(3.2rem,5.1vw,4.8rem);line-height:1.07;letter-spacing:-.055em;margin-bottom:23px}.auth-story p:not(.eyebrow){max-width:365px;color:#c9d7c3;font-size:1rem;line-height:1.8}.auth-story>a:last-child{font-size:.81rem;color:#d6e3c8;text-decoration:none}.auth-panel{display:grid;place-items:center;padding:45px 32px}.auth-card{width:min(100%,410px)}.auth-card h2{font-size:2rem;margin:0 0 14px}.auth-card>p:not(.eyebrow){color:var(--muted);font-size:.88rem}.auth-card .stack-form{margin-top:26px;gap:17px}.auth-card .notice{margin-top:15px}.auth-forgot{display:block;text-align:right;font-size:.8rem;margin-top:17px}.auth-switch{margin-top:25px!important;text-align:center;font-size:.82rem!important;border-top:1px solid var(--line);padding-top:23px}.claim-company{padding:17px;border-radius:6px;background:#f3f5eb}.claim-company p{margin-top:5px;font-size:.84rem}.portal-page{background:#f3f6f0}.portal-shell{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:100vh}.portal-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:27px 18px 18px;border-right:1px solid var(--line);background:#fff}.portal-sidebar>.brand{font-size:1.19rem;margin:0 8px 28px}.portal-sidebar>.brand img{margin-right:8px}.owner-identity{display:flex;align-items:center;gap:11px;margin:0 6px 24px;padding:15px 0;border-block:1px solid var(--line)}.avatar{display:grid;place-items:center;width:35px;height:35px;flex-shrink:0;background:#e5eddb;border-radius:50%;font-size:.82rem;font-weight:700}.owner-identity>div{min-width:0}.owner-identity strong{display:block;font-size:.83rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.owner-identity small{font-size:.68rem;color:var(--muted)}.portal-nav{display:grid;gap:5px}.portal-nav>a{display:block;padding:10px 12px;border-radius:6px;text-decoration:none;font-size:.83rem;font-weight:550;color:#52674e}.portal-nav>a:hover{background:#f3f6ed}.portal-nav>[aria-current=page]{background:#e9f0df;color:var(--deep)}.sidebar-help{padding:17px 13px;background:#f4f6ee;margin:auto 4px 20px;border-radius:7px}.sidebar-help strong{font-size:.82rem}.sidebar-help p{font-size:.74rem;color:var(--muted);margin:5px 0 9px}.sidebar-help a{font-size:.76rem;font-weight:650;text-decoration:none}.signout{display:flex;justify-content:space-between;width:100%;padding:12px;border:0;border-top:1px solid var(--line);background:white;color:var(--muted);font-size:.78rem}.portal-main{min-width:0}.portal-topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 38px;border-bottom:1px solid var(--line);background:#fff}.portal-topbar span{display:block;font-size:.67rem;color:var(--muted)}.portal-topbar strong{display:block;font-size:.83rem;margin-top:3px}.portal-content{width:min(1160px,100%);padding:37px 38px 70px;margin-inline:auto}.portal-heading{margin-bottom:30px}.portal-heading .eyebrow{font-size:.68rem;margin-bottom:9px}.portal-heading h1{font-size:2.7rem;margin-bottom:13px}.portal-heading>p:last-child{color:var(--muted);font-size:.9rem}.portal-welcome{display:flex;justify-content:space-between;align-items:center;gap:30px;background:var(--deep);padding:30px;border-radius:12px;color:#fff;margin-bottom:23px}.portal-welcome .eyebrow{color:#c6d8ad;font-size:.69rem;margin-bottom:11px}.portal-welcome h2{font-size:1.85rem;margin-bottom:13px}.portal-welcome p:not(.eyebrow){color:#cedcc7;font-size:.87rem}.portal-welcome .button{flex-shrink:0}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.metric-grid .surface{padding:22px}.metric-grid span{display:block;font-size:.75rem;color:var(--muted)}.metric-grid strong{display:block;font-size:1.85rem;letter-spacing:-.04em;margin:8px 0 11px}.metric-grid a{font-size:.73rem;font-weight:550}.metric-grid progress{width:100%;height:6px;border:0;background:#e6eedc;border-radius:10px;overflow:hidden}.metric-grid progress::-webkit-progress-bar{background:#e6eedc}.metric-grid progress::-webkit-progress-value{background:#759259}.metric-grid progress::-moz-progress-bar{background:#759259}.claim-status{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:16px;margin-top:16px}.claim-status strong{font-size:.93rem}.claim-status p{font-size:.78rem;margin-top:5px}.claim-status>.badge{align-self:start}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:23px;align-items:start}.portal-content .surface h2{font-size:1.2rem}.editor-layout .stack-form h2:not(:first-of-type){padding-top:20px;border-top:1px solid var(--line);margin-bottom:0}.editor-layout .review-state h2{margin-top:18px}.review-state p{font-size:.82rem;margin-bottom:14px}.review-state a{font-size:.8rem;font-weight:600}.electrical-services{border:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:0}.electrical-services legend{font-size:.8rem;font-weight:650;margin-bottom:12px}.electrical-services label{display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--line);border-radius:20px;background:#f8faf3;font-size:.74rem}.electrical-services input{width:14px;height:14px;margin:0}.owner-gallery{margin:20px 0}.text-button{border:0;background:none;color:var(--green);text-decoration:underline;font-size:.75rem;padding:3px 0}.provider-row{display:flex;justify-content:space-between;padding:20px 0;border-bottom:1px solid var(--line);font-size:.86rem}.provider-row span{color:var(--muted);font-size:.75rem}.provider-row:last-of-type{margin-bottom:24px}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.plan-grid>.surface{display:flex;flex-direction:column}.plan-grid .plan-price{display:block;font-size:2rem;letter-spacing:-.045em;margin:3px 0 13px}.plan-grid .check-list{flex:1}.plan-grid .premium-card{background:var(--deep);color:white}.premium-card .eyebrow{color:#c4d6a9}.premium-card p,.premium-card .check-list li{color:#d2dec8}.premium-card .check-list li:before{color:#aec98d}.premium-card small{font-size:.7rem;color:#bed0b7;margin-top:13px}.plan-grid .button{align-self:start}.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px;align-items:start}.account-grid .business-details>div{grid-template-columns:65px 1fr;gap:15px}.account-grid .surface>p{margin-top:24px}.queue-links{display:flex;flex-wrap:wrap;gap:15px;margin:0 0 35px}.queue-links a{font-size:.86rem}.portal-content>section>h2{font-size:1.7rem;margin:35px 0 23px}.staff-card h3{font-size:1.2rem;margin:15px 0}.staff-card p{margin-top:10px;font-size:.85rem}.staff-card .stack-form{margin-top:23px}.empty-inline{padding:22px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--muted);font-size:.85rem}.ticket-detail summary{cursor:pointer;display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:.9rem;list-style:none}.ticket-detail summary:after{content:"+";font-size:1.3rem}.ticket-detail[open] summary:after{content:"−"}.ticket-detail>p{margin:18px 0}.staff-card .owner-gallery img{max-height:250px}.portal-page>.flash-wrap{margin-left:235px}
@media(min-width:1500px){.hero-copy h1{font-size:5.2rem}}
@media(max-width:1100px){.hero-grid{gap:28px}.hero-copy h1{font-size:4rem}.hero-copy .eyebrow{font-size:.63rem}.search-input-row .button{font-size:.77rem;padding-inline:12px}.hero-reassurance{font-size:.67rem}.hero-reassurance span{margin:0 4px}.planning-grid{gap:30px;grid-template-columns:.8fr 1.2fr}.directory-layout{grid-template-columns:220px minmax(0,1fr);gap:23px}.company-card{padding:18px 17px 13px}.company-card-bottom{flex-wrap:wrap}.profile-layout{grid-template-columns:minmax(0,1fr) 290px}.portal-content{padding:30px 25px 60px}.editor-layout{grid-template-columns:1fr}.editor-layout aside{grid-row:1}.editor-layout aside .surface{margin-bottom:0}.related-grid{gap:12px}.related-grid .company-card-top{gap:9px}.related-grid .company-heading h3{font-size:.94rem}}
@media(max-width:850px){.container{width:calc(100% - 40px)}.nav-bar{min-height:75px}.desktop-nav{gap:19px}.desktop-nav>a{font-size:.76rem}.hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero-copy h1{font-size:3.4rem}.hero-description{font-size:.92rem}.hero-search{margin-top:22px}.search-input-row{flex-wrap:wrap}.search-input-row input{width:calc(100% - 44px)}.search-input-row .button{width:100%}.hero-art{align-self:stretch;display:flex;align-items:center}.art-caption{left:12px;right:12px;padding:14px;bottom:7%}.art-caption div>span{display:none}.community-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.planning-grid{grid-template-columns:1fr;gap:33px}.planning-grid>div>p:not(.eyebrow){max-width:650px}.purpose-grid{max-width:680px}.steps-grid{gap:25px}.homeowner-cta{padding:32px}.directory-layout{grid-template-columns:1fr}.filters>form{grid-template-columns:1fr 1fr;gap:14px}.filter-title{grid-column:1/-1}.filters .button{align-self:end;min-height:44px}.filter-tip{display:none}.profile-layout{grid-template-columns:minmax(0,1fr) 270px;gap:20px}.profile-monogram{width:86px;height:86px;font-size:1.6rem}.profile-heading{gap:21px}.surface{padding:23px}.business-details>div{grid-template-columns:1fr;gap:7px}.contact-card{padding:23px}.contact-card h2{font-size:1.6rem}.contact-card .button{font-size:.83rem;padding-inline:10px}.related-grid{grid-template-columns:1fr 1fr}.related-grid .company-card:last-child{display:none}.comparison-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-layout{grid-template-columns:1fr}.support-layout>aside{display:grid;grid-template-columns:1fr 1fr;gap:20px}.auth-story{padding:30px}.auth-story h1{font-size:3.1rem}.auth-story .eyebrow{font-size:.66rem}.auth-panel{padding:30px 24px}.auth-card h2{font-size:1.7rem}.portal-shell{grid-template-columns:205px minmax(0,1fr)}.portal-sidebar{padding:25px 12px 15px}.portal-sidebar>.brand{font-size:1.1rem}.portal-sidebar>.brand img{width:25px;height:25px}.portal-content{padding:26px 21px 50px}.portal-heading h1{font-size:2.2rem}.portal-welcome{flex-direction:column;align-items:start;padding:25px}.metric-grid{gap:10px}.metric-grid .surface{padding:16px 13px}.metric-grid strong{font-size:1.45rem}.metric-grid span{font-size:.67rem}.plan-grid,.account-grid{grid-template-columns:1fr}.portal-topbar{padding-inline:21px}.form-grid{gap:14px}.section-heading.split{gap:25px}.section-heading.split>p{max-width:280px}}
@media(max-width:640px){body{font-size:15px}.container{width:calc(100% - 36px)}h1{font-size:2.6rem}h2{font-size:2rem}.section{padding-block:57px}.page-space{padding-block:30px 55px}.brand{font-size:1.22rem}.desktop-nav{display:none}.nav-bar{min-height:70px}.mobile-nav{display:block;position:relative}.mobile-nav summary{list-style:none;display:flex;align-items:center;gap:9px;font-size:.79rem;font-weight:600;padding:7px 10px;border:1px solid var(--line);border-radius:5px;cursor:pointer}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;right:0;top:calc(100% + 12px);z-index:20;width:235px;display:grid;gap:4px;padding:13px;border:1px solid var(--line);border-radius:8px;background:white;box-shadow:0 8px 25px #173c3020}.mobile-nav nav a{padding:8px;font-size:.85rem;text-decoration:none}.home-hero{padding:13px 0 30px}.hero-grid{grid-template-columns:1fr;gap:23px}.hero-copy{padding:23px 0 0}.hero-copy .eyebrow{font-size:.63rem;letter-spacing:.07em;margin-bottom:19px}.hero-copy h1{font-size:clamp(3.2rem,12vw,4.2rem);margin-bottom:20px}.hero-description{font-size:1rem;max-width:470px}.hero-search>label{font-size:.77rem}.search-input-row{flex-wrap:nowrap}.search-input-row input{width:100%;font-size:.78rem}.search-input-row .button{width:auto;font-size:.74rem;padding:13px 11px;gap:7px}.search-input-row .button>span{display:none}.search-icon{font-size:1.3rem;padding-left:3px}.hero-reassurance{font-size:.64rem;margin-top:12px}.hero-art{display:block;padding-bottom:14px}.hero-art>img{aspect-ratio:1.62;object-fit:cover;object-position:center 60%;border-radius:14px}.art-caption{left:18px;right:18px;bottom:0;padding:12px 16px}.art-caption strong{font-size:.75rem}.caption-icon{width:29px;height:29px}.confidence-strip .container{padding-block:16px;gap:11px;align-items:start}.confidence-strip p{flex-direction:column;gap:4px;text-align:center;font-size:.65rem;line-height:1.5;flex:1}.confidence-strip p>span{font-size:1rem}.section-heading{margin-bottom:25px}.section-heading.split{display:block}.section-heading.split>p{max-width:100%;font-size:.86rem;margin-top:18px}.section-heading.split>.inline-link{margin-top:18px}.section-heading .eyebrow{font-size:.66rem}.community-grid{gap:11px}.community-card{padding:20px 16px}.community-pin{width:28px;height:28px;margin-bottom:20px}.community-card h3{font-size:1rem}.community-card>span:not(.community-pin):not(.community-arrow){font-size:.63rem}.community-arrow{right:17px;top:22px}.planning-section{padding:48px 0}.planning-grid{gap:28px}.planning-grid>div>p:not(.eyebrow){font-size:.89rem;margin:18px 0 23px}.purpose-grid{gap:12px}.electrical-sample{height:133px}.purpose-grid h3{font-size:.88rem}.purpose-grid p{font-size:.71rem}.steps-grid{grid-template-columns:1fr;gap:26px}.steps-grid article{position:relative;padding-left:56px}.steps-grid article>span{position:absolute;left:0;top:-2px;width:34px;height:34px}.steps-grid h3{font-size:1.07rem;margin-bottom:8px}.steps-grid p{font-size:.84rem}.homeowner-cta{display:block;padding:28px;margin-bottom:50px}.homeowner-cta h2{font-size:1.75rem}.homeowner-cta .button{margin-top:22px}.site-footer{padding-top:34px}.footer-grid{grid-template-columns:1fr 1fr;gap:28px 20px;padding-bottom:30px}.footer-grid>div{grid-column:1/-1}.footer-grid p{margin:13px 0 8px;max-width:none}.footer-grid nav a{font-size:.75rem}.footer-bottom{font-size:.65rem}.footer-bottom>div{gap:17px}.breadcrumbs{padding:18px 0;font-size:.66rem;gap:7px}.directory-intro{padding:12px 0 30px}.directory-intro h1{font-size:2.35rem;margin-bottom:15px}.directory-intro .eyebrow{font-size:.64rem}.directory-intro>p:last-child{font-size:.9rem}.directory-layout{padding-top:24px;gap:26px}.filters>form{padding:17px;gap:13px}.filters label{font-size:.7rem}.filters input,.filters select{font-size:.78rem;padding:10px;min-height:42px}.filters .button{font-size:.76rem;min-height:42px;padding:10px}.filter-title h2{font-size:.88rem}.company-list{grid-template-columns:1fr;gap:13px}.results-heading h2{font-size:1.1rem}.results-heading p{font-size:.7rem}.results-page{font-size:.68rem}.company-card{padding:20px}.company-heading h3{font-size:1.03rem}.card-address{min-height:0;font-size:.76rem;margin:14px 0 18px}.company-card-bottom{flex-wrap:nowrap}.phone-link,.detail-link{font-size:.76rem}.company-monogram{width:44px;height:44px}.compare-check{font-size:.7rem}.compare-bar{padding:13px 14px;bottom:10px;gap:10px}.compare-bar strong{font-size:.7rem}.compare-bar span{font-size:.65rem}.compare-bar .button{font-size:.7rem;padding:10px;gap:6px}.pagination{gap:5px}.pagination a{padding:6px 9px;font-size:.7rem}.directory-note{font-size:.68rem}.question-grid{grid-template-columns:1fr;gap:24px}.question-grid h3{font-size:1.1rem;margin-bottom:8px}.question-grid p{font-size:.86rem}.directory-bottom{padding-top:52px}.profile-heading{align-items:start;gap:15px;padding:20px 0 29px}.profile-monogram{width:60px;height:60px;font-size:1.16rem;border-radius:11px}.profile-heading .eyebrow{font-size:.59rem;line-height:1.6;margin-bottom:9px}.profile-heading h1{font-size:1.85rem;line-height:1.2;overflow-wrap:anywhere}.profile-meta{gap:10px;font-size:.73rem}.profile-layout{grid-template-columns:1fr;margin-top:23px;gap:8px}.profile-sidebar{position:static;grid-row:1}.contact-card{padding:24px}.contact-symbol{display:none}.contact-card h2{font-size:1.55rem}.contact-card h2 br{display:none}.contact-card>p{font-size:.83rem;max-width:400px}.contact-card .button{font-size:.88rem;min-height:46px}.contact-card .contact-small{margin-bottom:14px}.contact-card .button-outline{font-size:.78rem;min-height:42px}.owner-card{padding:21px 8px}.owner-card h3{font-size:1.02rem}.owner-card p:not(.eyebrow){font-size:.76rem;margin-bottom:8px}.surface{padding:23px;margin-bottom:16px}.surface h2{font-size:1.35rem}.surface p{font-size:.88rem}.business-details>div{padding:15px 0;grid-template-columns:92px minmax(0,1fr);gap:12px}.business-details dt{font-size:.74rem}.business-details dd{font-size:.82rem}.listing-help{display:block;font-size:.72rem}.listing-help a{display:inline-block;margin-top:6px}.related-grid{grid-template-columns:1fr}.related-grid .company-card:last-child{display:flex}.public-gallery{grid-template-columns:1fr}.comparison-grid{grid-template-columns:1fr}.comparison-card{margin-bottom:0}.comparison-card dl{margin-top:10px}.page-heading>p:last-child,.lead{font-size:1rem}.page-actions{gap:16px;flex-direction:column;align-items:start}.support-layout{gap:12px}.support-layout>aside{grid-template-columns:1fr;gap:0}.form-grid{grid-template-columns:1fr;gap:18px}.wide{grid-column:auto}.article-content h2{font-size:1.5rem}.article-content p{font-size:.92rem}.article-callout{padding:24px}.article-callout h2{font-size:1.4rem}.auth-shell{grid-template-columns:1fr}.auth-story{padding:24px;min-height:auto}.auth-story>div{padding:25px 0 0}.auth-story .eyebrow{font-size:.6rem;margin-bottom:11px}.auth-story h1{font-size:2.35rem;margin-bottom:0;line-height:1.1}.auth-story h1 br{display:none}.auth-story p:not(.eyebrow),.auth-story>a:last-child{display:none}.auth-panel{padding:35px 24px 50px}.auth-card h2{font-size:1.9rem}.auth-card .eyebrow{font-size:.65rem}.portal-shell{grid-template-columns:1fr}.portal-sidebar{position:static;height:auto;padding:16px 14px 9px;border-right:0;border-bottom:1px solid var(--line)}.portal-sidebar>.brand{margin:0 4px 14px;font-size:1.17rem}.owner-identity,.sidebar-help,.portal-sidebar>form{display:none}.portal-nav{display:flex;gap:4px;overflow-x:auto;padding:0 0 6px;scrollbar-width:thin}.portal-nav>a{flex-shrink:0;font-size:.72rem;padding:8px 11px}.portal-topbar{padding:13px 18px}.portal-topbar .button{font-size:.68rem;min-height:34px;padding:8px 11px}.portal-content{padding:27px 18px 50px}.portal-heading h1{font-size:2.1rem}.portal-heading>p:last-child{font-size:.85rem}.portal-heading{margin-bottom:23px}.portal-welcome{padding:25px;gap:22px}.portal-welcome h2{font-size:1.65rem}.portal-welcome p:not(.eyebrow){font-size:.82rem}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.metric-grid .surface{padding:14px 10px}.metric-grid span{font-size:.59rem}.metric-grid strong{font-size:1.4rem}.metric-grid a{font-size:.63rem}.portal-content .surface{padding:22px}.portal-content .metric-grid .surface{padding:14px 10px}.editor-layout{gap:16px}.editor-layout .review-state .badge{margin-bottom:0}.electrical-services{gap:7px}.electrical-services label{font-size:.7rem}.form-actions .button{flex:1;font-size:.76rem;gap:8px;padding:11px}.owner-gallery{gap:11px}.owner-gallery figcaption{font-size:.67rem}.ticket-detail summary{font-size:.81rem;align-items:start;flex-wrap:wrap}.queue-links{gap:10px}.queue-links a{font-size:.72rem}.plan-grid,.account-grid{gap:4px}.flash-wrap{padding-top:15px}.notice{font-size:.8rem;padding:14px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.portal-sidebar,.portal-topbar,.compare-check,.compare-bar,.filters,.owner-card,.mobile-nav{display:none!important}.container{width:100%}.profile-layout,.directory-layout{display:block}.surface,.company-card{break-inside:avoid}.profile-sidebar{position:static}a{color:#000}.button{background:#fff!important;color:#000!important;border:1px solid #aaa}}

.remove-comparison{display:block;text-align:center;margin-top:12px;color:var(--muted)}.recovery-help{margin-top:24px}.recovery-help .button{margin-top:17px}.account-signout{margin-top:20px}.phone-link,.detail-link{font-size:.8rem;padding-block:3px}.card-address{font-size:.79rem}.compare-check{font-size:.72rem}

.listing-search{display:flex;gap:18px;align-items:end}.listing-search .field{flex:1}.staff-listing-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.staff-listing-row:last-child{border-bottom:0}.staff-listing-row p{font-size:.83rem;color:var(--muted);margin-top:5px}.staff-listing-row>div{min-width:0;overflow-wrap:anywhere}.staff-listing-row .button{flex-shrink:0}@media(max-width:640px){.listing-search{display:grid}.staff-listing-row{gap:10px}}

.comparison-identity{min-height:110px}.comparison-card dl>div{min-height:93px}.profile-main>.owner-card{padding:25px 0 0;border-top:1px solid var(--line)}@media(max-width:640px){input:not([type=checkbox]):not([type=hidden]),select,textarea,.search-input-row input{font-size:16px}.hero-search .search-input-row{flex-wrap:wrap}.hero-search .search-input-row input{flex:1;min-width:150px}.hero-search .search-input-row .button{width:100%}.comparison-identity{min-height:0}.comparison-card dl>div{min-height:0}}

.portal-sidebar,.field,.surface,.form-grid,.stack-form{min-width:0}.portal-nav{max-width:100%}@media(max-width:640px){.portal-shell,.editor-layout,.form-grid{grid-template-columns:minmax(0,1fr)}}

.staff-card p,.ticket-detail p,.business-details dd,.profile-heading h1,.company-heading h3{overflow-wrap:anywhere}

/* Directory typography and saved company cards. */
h1,h2{font-family:"Source Serif 4",Georgia,serif;font-weight:600;letter-spacing:-.025em}h3{letter-spacing:-.015em}.brand{font-weight:700;letter-spacing:-.045em}.hero-copy h1{font-size:clamp(2.8rem,4.8vw,4.25rem);line-height:1.1;letter-spacing:-.035em}.auth-story h1{font-size:clamp(2.5rem,4.8vw,4.25rem);line-height:1.12;letter-spacing:-.025em}.eyebrow{text-transform:none;font-size:.8rem;letter-spacing:.01em;font-weight:600}.desktop-nav{gap:22px}.desktop-nav a{font-size:.81rem}.directory-project-photo{display:block;position:relative;margin-bottom:21px;border-radius:5px;overflow:hidden}.directory-project-photo img{width:100%;height:180px;object-fit:cover}.directory-project-photo span,.shortlist-project>span{position:absolute;bottom:12px;left:12px;padding:5px 9px;border-radius:4px;background:#fffffff2;color:var(--ink);font-size:.72rem;font-weight:600}.shortlist-top{padding:32px 0 42px;background:#edf0e7;border-bottom:1px solid var(--line)}.shortlist-heading{display:flex;align-items:center;justify-content:space-between;gap:32px}.shortlist-heading h1{font-size:clamp(2.5rem,4.4vw,3.8rem);margin-bottom:16px}.shortlist-heading>div>p:last-child{max-width:670px;font-size:1rem;color:var(--muted)}.shortlist-count{display:block;flex-shrink:0;padding:20px 26px;border-left:1px solid #bdc9b7;font-size:1.4rem;font-weight:600;line-height:1.45}.shortlist-count small{font-size:.76rem;font-weight:400;color:var(--muted)}.shortlist-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:40px;padding-block:40px 80px}.shortlist-companies{display:grid;gap:22px}.shortlist-company{border:1px solid #d8dfd3;border-radius:9px;background:#fff;overflow:hidden}.shortlist-company-body{padding:26px 28px}.shortlist-company-heading{display:flex;justify-content:space-between;gap:20px;align-items:start}.shortlist-company-heading .eyebrow{margin-bottom:8px;color:#60754d}.shortlist-company h2{font-size:1.7rem;line-height:1.25}.shortlist-company h2>a{color:var(--ink);text-decoration:none}.shortlist-company h2>a:hover{text-decoration:underline}.shortlist-number{font-size:.83rem;color:#819071;padding-top:4px}.shortlist-company-body>.badge{margin-top:12px}.shortlist-location{display:flex;gap:9px;margin-top:20px;font-size:.86rem;color:var(--muted)}.shortlist-location>span{color:#7d9169}.shortlist-location address{line-height:1.6}.shortlist-description{font-size:.91rem;color:var(--muted);line-height:1.7;margin-top:18px}.shortlist-details{display:grid;gap:17px;margin:22px 0 0;padding-top:20px;border-top:1px solid var(--line)}.shortlist-details dt{font-size:.76rem;color:var(--muted);margin-bottom:7px}.shortlist-details dd{margin:0;font-size:.9rem;overflow-wrap:anywhere}.shortlist-details .tags{margin:0}.shortlist-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:25px;padding-top:21px;border-top:1px solid var(--line)}.shortlist-actions .button{min-height:44px;padding:10px 16px}.shortlist-actions .inline-link{font-size:.82rem}.shortlist-remove{margin-left:auto;font-size:.75rem;color:var(--muted)}.shortlist-project{display:block;position:relative}.shortlist-project img{width:100%;height:245px;object-fit:cover}.shortlist-add{display:flex;gap:20px;align-items:center;padding:24px 8px;text-decoration:none}.shortlist-add>span:first-child{display:grid;place-items:center;width:40px;height:40px;border:1px solid #b5c2a9;border-radius:50%;flex-shrink:0;font-size:1.3rem}.shortlist-add>span:last-child{margin-left:auto}.shortlist-add strong{font-size:.85rem}.shortlist-add p{font-size:.75rem;color:var(--muted);margin:4px 0 0}.shortlist-guide{position:sticky;top:24px}.shortlist-guide-card{padding:28px;border-radius:9px;background:#f0ebdd;border:1px solid #e4ddcb}.shortlist-guide h2{font-size:1.8rem;line-height:1.18;margin-bottom:16px}.shortlist-guide-card>p:not(.eyebrow){font-size:.85rem;line-height:1.7;color:#586451}.shortlist-guide ol{padding:0;list-style:none;counter-reset:calls;margin:25px 0}.shortlist-guide li{counter-increment:calls;padding:17px 0 17px 30px;border-top:1px solid #d8d4c3;position:relative}.shortlist-guide li:before{content:counter(calls);position:absolute;left:0;top:17px;font-size:.78rem;color:#788263}.shortlist-guide li strong{font-size:.81rem}.shortlist-guide li p{font-size:.79rem;line-height:1.7;color:#606951;margin-top:7px}.shortlist-guide .inline-link{font-size:.8rem}.shortlist-footnote{font-size:.74rem;line-height:1.7;padding:17px 8px;color:var(--muted)}.shortlist-empty h2{font-size:2.1rem}.shortlist-empty p{max-width:370px;margin-inline:auto}.shortlist-empty-icon{display:grid;place-items:center;width:55px;height:55px;margin:0 auto 24px;border-radius:50%;background:#e6eddb;font-size:1.7rem}.owner-next-steps .section-heading{margin-bottom:24px}.owner-next-steps h2{font-size:1.7rem}.owner-next-steps .section-heading>p:last-child{font-size:.88rem;color:var(--muted);margin-top:13px}.owner-setup-grid{display:grid;gap:0}.owner-setup-item{display:flex;gap:17px;padding:22px 0;border-top:1px solid var(--line);text-decoration:none}.owner-setup-item:last-child{padding-bottom:0}.setup-symbol{display:grid;place-items:center;width:38px;height:38px;border-radius:6px;background:#edf1e6;flex-shrink:0;font-size:1.25rem}.owner-setup-item strong{display:block;font-size:.9rem}.owner-setup-item small{display:block;font-size:.8rem;line-height:1.65;color:var(--muted);margin:6px 0 8px}.owner-setup-item em{font-size:.8rem;font-style:normal;text-decoration:underline;text-underline-offset:3px}
@media(min-width:641px) and (max-width:1000px){.desktop-nav{display:none}.mobile-nav{display:block;position:relative}.mobile-nav summary{list-style:none;display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid var(--line);border-radius:5px;cursor:pointer}.mobile-nav nav{position:absolute;right:0;top:calc(100% + 12px);z-index:20;width:235px;display:grid;gap:4px;padding:13px;border:1px solid var(--line);border-radius:8px;background:white;box-shadow:0 8px 25px #173c3020}.mobile-nav nav a{padding:8px;font-size:.85rem;text-decoration:none}}
@media(max-width:950px){.shortlist-layout{grid-template-columns:minmax(0,1fr) 285px;gap:24px}.shortlist-company-body{padding:23px}.shortlist-actions{gap:16px}.shortlist-guide-card{padding:23px}.shortlist-heading{align-items:start}.shortlist-count{padding:15px}}
@media(max-width:760px){.shortlist-layout{grid-template-columns:minmax(0,1fr);gap:24px}.shortlist-guide{position:static}.shortlist-guide-card{padding:25px}.shortlist-heading{display:block}.shortlist-count{border:0;padding:0;margin-top:20px;font-size:1rem}.shortlist-count br{display:none}.shortlist-count small{margin-left:8px}.shortlist-top{padding-bottom:28px}.shortlist-layout{padding-block:25px 48px}.shortlist-company h2{font-size:1.55rem}}
@media(max-width:640px){.hero-copy h1{font-size:clamp(2.6rem,10vw,3.8rem);line-height:1.1}.hero-copy h1 br{display:none}.auth-story h1{font-size:2.35rem}.shortlist-heading h1{font-size:2.65rem}.shortlist-company-body{padding:21px}.shortlist-actions{gap:16px}.shortlist-actions .button{width:100%}.shortlist-location{font-size:.81rem}.shortlist-company-heading{gap:10px}.shortlist-project img{height:200px}.shortlist-add{gap:13px}.directory-project-photo img{height:190px}}
@media print{.shortlist-guide,.shortlist-add,.shortlist-remove{display:none}.shortlist-layout{display:block}.shortlist-company{break-inside:avoid;margin-bottom:20px}}

.home-city-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:20px}.city-directory-card{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:32px;border:1px solid #cfd9c6;border-radius:8px;background:#fff;text-decoration:none;transition:border-color .15s}.city-directory-card:hover{border-color:var(--green)}.city-directory-card h3{font-family:"Source Serif 4",Georgia,serif;font-size:2rem;margin-bottom:10px}.city-directory-card p{font-size:.86rem;color:var(--muted);margin:0}.city-directory-action{flex-shrink:0;font-size:.82rem;font-weight:600;text-align:right}@media(max-width:640px){.city-directory-card{padding:24px;flex-wrap:wrap;gap:20px}.city-directory-action{text-align:left}.city-directory-card h3{font-size:1.8rem}}

/* Top Rated Electricians identity. */
.brand{gap:10px;font-size:1.34rem;letter-spacing:-.055em}.brand-symbol{display:block;flex-shrink:0}.brand .brand-name{font-weight:700}.brand .brand-name>span{font-weight:400}.portal-sidebar>.brand{gap:8px;font-size:1.12rem}.portal-sidebar>.brand .brand-symbol{width:30px;height:30px}.auth-story .brand{font-size:1.4rem}.brand-symbol path{vector-effect:non-scaling-stroke}@media(max-width:480px){.site-header .brand{gap:8px;font-size:1.15rem}.site-header .brand-symbol{width:32px;height:32px}}
.company-monogram img,.profile-monogram img{width:100%;height:100%;object-fit:contain;border-radius:inherit;background:white;padding:5px}
.preferred-profile-mark{display:inline-block;margin-top:19px;max-width:100%}.preferred-profile-mark img{width:270px;max-width:100%;height:auto}.badge.preferred{background:#e6f1f8;border-color:#bbd6e6;color:#155277}
.join-benefits{margin:22px 0;padding:20px 0;border-block:1px solid var(--line);font-size:.88rem}.join-benefits ul{margin:10px 0 0;padding-left:20px}.join-benefits li+li{margin-top:6px}.join-email{display:grid;gap:4px;padding:13px 15px;border:1px solid var(--line);border-radius:7px;background:#f5f7f2}.join-email span{font-size:.73rem;color:var(--muted)}.join-email strong{font-size:.9rem;overflow-wrap:anywhere}.join-footnote{margin-top:18px;font-size:.78rem;color:var(--muted);line-height:1.65}.join-page .auth-card{max-width:520px}
.profile-cover{margin:0 0 16px;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#e8ede6}.profile-cover img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.profile-cover figcaption{padding:12px 16px;color:var(--muted);font-size:.8rem}@media(max-width:650px){.profile-cover img{aspect-ratio:4/3}}

/* Electrician identity: navy, blue, and amber. */
:root{--paper:#f7fafc;--ink:#102c46;--muted:#52687b;--line:#cfdae3;--green:#175b83;--deep:#102c46;--lime:#f8bc55}
body{background:var(--paper)}a:hover{color:#0c4568}.button-dark:hover{background:#0c4568}.eyebrow{color:#316c91}.home-hero{background:linear-gradient(120deg,#f7fafc,#eaf3f8)}.directory-top,.profile-top,.shortlist-top{background:#eaf3f8}.planning-section{background:#e3eef4}.confidence-strip{background:#dceaf3;border-color:#cadde9}.site-footer{background:#eaf2f7}.homeowner-cta{background:#102c46}.contact-card{background:#102c46}.badge.verified{background:#e6f1f8;color:#155277;border-color:#bbd6e6}.badge.sponsored{background:#fff1d7;color:#77500f;border-color:#e6c786}.company-monogram,.profile-monogram{background:#dceaf3;color:#175b83}.brand-name>span{font-weight:400}.service-tile{display:grid;place-items:center;height:172px;border-radius:90px 90px 10px 10px;background:#c7dce8;color:#102c46;font-size:4rem;text-shadow:0 4px 20px #fff}.service-upgrade{background:#f1d6aa}.service-install{background:#b9d6df}.purpose-grid>a:hover .service-tile{outline:3px solid #175b83;outline-offset:3px}.hero-art>img{box-shadow:0 18px 45px #102c4620}.brand-symbol{color:#102c46}.portal-sidebar .brand-symbol,.auth-story .brand-symbol{color:#f7fafc}
