/* Application components layered on the supplied LocalPros v1 design tokens. */
body{overflow-wrap:anywhere}main{min-height:50vh}.legacy-main{padding-top:32px;padding-bottom:64px}.legacy-main h1{font-size:clamp(2rem,4vw,3.25rem)}.nav-links form{margin:0}.nav-links details{margin:0}.nav-links summary{padding:0}.footer-description{margin-top:20px}.demo-notice{padding:10px 20px;text-align:center;background:#fff0d0;font-size:.85rem}.message{max-width:1200px;margin:20px auto}.brand{flex-wrap:wrap}.brand img{max-width:100%}.button,button:not(.btn):not(.gallery-open):not(.text-button){display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 20px;border:1px solid transparent;border-radius:8px;background:var(--lp-teal);color:white;font:inherit;font-weight:650;text-decoration:none;cursor:pointer}.button:hover,button:not(.btn):not(.gallery-open):not(.text-button):hover{background:var(--lp-teal-dark)}.button.secondary,button.secondary{background:var(--lp-seafoam)!important;color:var(--lp-teal-dark)!important;border-color:var(--lp-border)}button[hidden]{display:none!important}.text-button{background:none;border:0;color:var(--lp-teal-dark);padding:8px 0;font:inherit;font-weight:650;min-height:44px}.panel{padding:28px;background:white;border:1px solid var(--lp-border);border-radius:16px;margin:24px 0}.panel>h2:first-child{margin-top:0}.form-panel{max-width:760px;margin:20px auto;padding:32px;background:white;border:1px solid var(--lp-border);border-radius:16px}.form-panel h1{font-size:2rem}.stack p{margin:20px 0}.stack label{font-weight:650;font-size:.9rem;margin-bottom:7px}.stack input[type=checkbox]{vertical-align:middle}.stack input:not([type=checkbox]):not([type=hidden]),.stack textarea,.stack select{width:100%}.helptext{display:block;font-size:.8rem;color:var(--lp-muted);margin-top:6px}.errorlist,#save-errors{color:var(--lp-error);font-size:.9rem}.errorlist{padding-left:22px}.notice{margin-bottom:20px}details{margin-top:20px}summary{font-weight:650;cursor:pointer;padding:10px 0}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:20px 0}.row{border-top:1px solid var(--lp-border);padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.row p{font-size:.875rem}.row h3{margin-bottom:10px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.metrics>div{background:var(--lp-seafoam);padding:24px;border-radius:16px}.metrics strong{display:block;font-size:2.5rem}.metrics span{font-size:.9rem}.inquiry{border-top:1px solid var(--lp-border);padding:18px 0}#save-status{min-height:26px;margin:12px 0}.badge,.fixture{display:inline-block;padding:5px 10px;font-size:.75rem;border-radius:6px;background:var(--lp-seafoam)}.fixture{background:#fff0d0;color:#614410;margin-bottom:12px}.badges{display:flex;gap:8px;flex-wrap:wrap}.back{display:inline-block;margin-bottom:20px}.ad{border:1px dashed var(--lp-border);padding:24px;margin-top:32px;font-size:.875rem}.ad p{margin:8px 0}.listing-content{display:flex;flex-direction:column;align-items:start;gap:2px}.listing-content .btn{margin-top:auto}.card h3 a{text-decoration:none;color:var(--lp-ink)}.listing-placeholder img{width:64px;height:64px}.searchbar label{margin:0}.region-hero.no-photo{background:linear-gradient(110deg,var(--lp-ink),var(--lp-teal-dark))}.photo-credit{margin-top:20px;font-size:.75rem}.city-links a{min-height:30px}.profile-head{margin-bottom:28px}.profile-actions{margin-top:22px}.gallery{grid-template-columns:1fr;max-width:800px}.gallery-open{padding:0;border:0;background:var(--lp-seafoam);text-align:left;cursor:zoom-in}.gallery figure{margin:0}.gallery img{height:340px}.gallery figcaption{padding:12px 16px;background:var(--lp-seafoam);font-size:.8rem}.profile-layout{margin-bottom:48px}.profile-section p{white-space:normal}.contact-box .btn{display:flex}.pagination{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:28px 0}.pagination a{min-height:44px;padding:10px}.filter-panel label{font-size:.85rem;font-weight:650}.filter-panel input,.filter-panel select{margin-top:6px}.filter-panel .btn{width:100%}.empty{margin-bottom:24px}.auth-layout{margin:24px 0 48px}.auth-form .stack{margin:22px 0}.auth-art .photo-credit{color:#fff}.auth-form .errorlist{padding:12px 20px;background:#fff1ef}.sample-preview-label{padding:10px 20px;font-size:.75rem;background:var(--lp-seafoam)}.demo-body .mini-card a{font-size:.85rem;font-weight:650}.feature-icon{width:32px;height:32px}.grid-3>*{min-width:0}.hero-demo{transform:none}.mini-card{min-width:0}.footer-links{align-items:start}.contact-box{min-width:0}.main-only{max-width:800px}.region-heading{max-width:16ch}.section-head .lead{margin-bottom:0}
@media(max-width:1100px){.nav{gap:14px}.nav-links{gap:16px}.brand img{width:165px}.nav-links a{font-size:.85rem}}
@media(max-width:960px){html:not(.js) .nav-links{display:flex}.nav-links details{margin:0}.nav-links form{align-self:start}.nav{align-items:center}.nav .brand{max-width:calc(100% - 90px)}.nav-links a{padding:8px 0}.nav-links a.btn{padding:11px 20px}.nav-dropdown a{padding:10px}.nav-links summary{padding:8px 0}.menu-toggle{padding:10px 14px}.brand img{width:160px}}
@media(max-width:640px){.legacy-main{padding-top:22px;padding-bottom:40px}.panel,.form-panel{padding:22px}.section-heading,.row{align-items:start;flex-direction:column}.metrics{grid-template-columns:1fr;gap:12px}.metrics>div{display:flex;align-items:center;gap:20px;padding:18px}.profile-layout{gap:20px}.gallery img{height:240px}.auth-art h2{max-width:16ch}.results-top{flex-wrap:wrap}.region-hero h1{font-size:clamp(2.1rem,9vw,2.65rem)}.category-tile{flex-wrap:wrap}.footer-bottom p{font-size:.8rem}.nav .brand img{width:145px}.brand .region{padding:3px 9px}.profile-nav{gap:18px}.mini-cards{grid-template-columns:1fr}.mini-card{display:flex;align-items:center;gap:10px}.mini-card b{margin:0}.hero-demo .demo-top{flex-wrap:wrap;gap:10px}.auth-form{padding:24px}.photo-credit{max-width:38ch}}
.filter-title{font-size:1.1rem}.filter-clear{margin-top:16px;margin-bottom:0}.plan h2{font-size:1.5rem}.plan .price{font-size:2.2rem}.gallery-open:focus-visible{outline-offset:5px}
/* User-supplied copper artwork takes precedence over the reference SVG lockup. */
.brand img{width:217px;height:auto}.footer .brand{display:inline-flex}.footer .brand img{width:217px}.demo-top img{width:180px}.feature-icon{object-fit:contain}.listing-placeholder img{object-fit:contain;width:64px;height:64px}
@media(max-width:1100px){.brand img{width:190px}}
@media(max-width:640px){.nav .brand img{width:180px}.nav .brand{gap:5px}.brand .region{font-size:.7rem}.footer .brand img{width:200px}}
.header .menu-toggle{display:none}.filter-panel>select{margin-top:0;margin-bottom:18px}.filter-panel>label{margin-bottom:6px}.marketing-hero h1{font-size:clamp(2.4rem,4.5vw,4rem)}
@media(max-width:960px){.header .menu-toggle{display:inline-flex}}
@media(max-width:640px){.preview-strip .container{display:flex;flex-direction:column;gap:2px}}

.print-brand{display:none}@media print{.print-brand{display:block;max-width:217px;margin:20px 0}.print-brand img{width:217px;height:auto}}
html:not(.js) .menu-toggle{display:none}

/* Copper actions follow the supplied copper identity; teal remains a supporting accent. */
:root{--lp-copper:#9e5733;--lp-copper-dark:#7c4025;--lp-copper-light:#f7e9df}
.btn,.button,button:not(.btn):not(.gallery-open):not(.text-button){background:var(--lp-copper);color:#fff;border-color:transparent}
.btn:hover,.button:hover,button:not(.btn):not(.gallery-open):not(.text-button):hover{background:var(--lp-copper-dark)}
.btn-secondary,.button.secondary,button.secondary{background:#fff!important;color:var(--lp-copper-dark)!important;border-color:#c9a089!important}
.btn-secondary:hover,.button.secondary:hover,button.secondary:hover{background:var(--lp-copper-light)!important}
.text-button{color:var(--lp-copper-dark)}:focus-visible{outline-color:var(--lp-copper)}
.ops-shell{display:grid;grid-template-columns:230px minmax(0,1fr);gap:36px;padding-block:36px 64px}.ops-sidebar{align-self:start;background:#fff;border:1px solid var(--lp-border);border-radius:14px;padding:20px}.ops-sidebar nav{display:grid;margin-top:20px;gap:4px}.ops-sidebar nav a{padding:9px 0;text-decoration:none;font-weight:650}.ops-sidebar form{display:grid;gap:10px}.ops-sidebar select{max-width:100%;min-width:0}.ops-content{min-width:0}.ops-content h1{font-size:clamp(1.9rem,4vw,2.8rem)}.ops-content .metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.ops-content .metrics strong{font-size:2rem}.ops-content .row{flex-wrap:wrap}.ops-content dd{margin:4px 0 16px;overflow-wrap:anywhere}.ops-content dt{font-weight:700}
.business-page{padding-bottom:48px}.profile-intro h1{font-size:clamp(1.9rem,3.5vw,2.8rem);margin-bottom:12px}.profile-intro{margin-bottom:24px}.profile-columns{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:28px;align-items:start}.profile-main{min-width:0}.profile-sidebar{display:grid;gap:20px}.profile-sidebar .card{padding:24px}.profile-sidebar h2{font-size:1.3rem}.profile-sidebar .btn{width:100%;margin-bottom:10px}.profile-sidebar p:last-child{margin:0}.profile-nav{flex-wrap:wrap;gap:12px 22px;margin:24px 0;padding:14px 0}.profile-nav a{font-size:.9rem}.photo-mosaic{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:150px 150px;gap:10px;border-radius:16px;overflow:hidden;margin-bottom:26px}.photo-mosaic button{position:relative;min-width:0;overflow:hidden;border-radius:0}.photo-mosaic button:first-child{grid-row:span 2}.photo-mosaic img{width:100%;height:100%;object-fit:cover}.photo-mosaic .gallery-count{position:absolute;bottom:10px;right:10px;left:10px;padding:8px 12px;background:var(--lp-ink);color:white;font-size:.8rem;border-radius:5px}.profile-section{padding:28px 0;border-bottom:1px solid var(--lp-border)}.profile-section h2{font-size:1.65rem}.service-cards,.project-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-cards .card,.project-cards .card{padding:20px}.service-cards h3,.project-cards h3{font-size:1.1rem}.project-cards .card img{width:100%;height:160px;object-fit:cover;border-radius:9px;margin-bottom:16px}.profile-section .stack{max-width:100%}.profile-section .stack input,.profile-section .stack textarea{max-width:100%}.coverage-graphic{padding:30px;background:var(--lp-seafoam);border:1px solid var(--lp-border);border-radius:14px;display:grid;gap:16px}.coverage-graphic strong{font-size:1.2rem}.review-summary{font-size:1.25rem}.review-entry{border-top:1px solid var(--lp-border);padding:20px 0}.profile-mobile-action{display:none}.photo-lightbox{width:min(900px,95vw)}.photo-lightbox img{width:100%;max-height:65vh;object-fit:contain}.photo-lightbox .actions{justify-content:space-between;margin-top:16px}.profile-sidebar .card details{margin-top:0}.profile-section .faq{max-width:none}.profile-intro .meta{font-size:.9rem}.profile-preview{padding:14px 20px;background:var(--lp-copper-light);border-radius:8px;margin-bottom:20px}
@media(max-width:960px){.ops-shell{grid-template-columns:1fr}.ops-sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.ops-sidebar form{grid-template-columns:1fr 2fr auto;align-items:center}.profile-columns{grid-template-columns:minmax(0,1fr) 270px}}
@media(max-width:640px){.ops-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.ops-sidebar form{grid-template-columns:1fr}.ops-content .metrics{grid-template-columns:1fr}.profile-columns{grid-template-columns:1fr}.profile-intro{margin-bottom:18px}.profile-mobile-action{display:flex;margin-top:16px}.photo-mosaic{grid-template-rows:100px 100px;gap:6px}.service-cards,.project-cards{grid-template-columns:1fr}.photo-mosaic .gallery-count{font-size:.65rem;padding:5px;left:5px;right:5px;bottom:5px}.profile-sidebar{grid-row:2}.profile-nav{overflow-wrap:normal}.business-page .breadcrumbs{font-size:.75rem}.profile-section{padding:24px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
.ops-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}.ops-filters label{display:grid;gap:6px}.ops-filters input,.ops-filters select{min-width:0;width:100%}.readable-value{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.ops-content .panel h2{font-size:1.5rem}.ops-content .stack ul{list-style:none;padding:0}.ops-content .stack input[type=checkbox]{width:auto}
@media(max-width:640px){.ops-filters{grid-template-columns:1fr}.ops-sidebar{padding:16px}}
@media(max-width:640px){.profile-main{display:flex;flex-direction:column}.profile-intro{order:-1}.profile-main>dialog{order:0}}

/* Sourced public profiles: compact factual content, no empty media slots. */
.sourced-rating{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem 1rem}.sourced-rating .small{flex-basis:100%}
.location-card{padding:1.25rem;background:var(--lp-mist,#eef5f4);border-radius:1rem}
.business-hours{margin:0}.business-hours>div{display:flex;justify-content:space-between;gap:1rem;padding:.45rem 0;border-bottom:1px solid #e4e8e8}.business-hours dt{font-weight:600}.business-hours dd{margin:0;text-align:right}
.table-scroll{max-width:100%;overflow-x:auto}.table-scroll table{width:100%;border-collapse:collapse}.table-scroll th,.table-scroll td{text-align:left;padding:.65rem;border-bottom:1px solid #dce5e5;vertical-align:top}
/* Shared public profiles: compact editorial content and an actionable sidebar. */
.business-page{max-width:1160px;margin-inline:auto;padding-bottom:20px}.business-page .breadcrumbs{margin-bottom:18px}.business-page .profile-columns{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:28px}.business-page .profile-intro{margin:18px 0}.business-page .profile-intro h1{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.15;margin:0 0 10px;letter-spacing:-.025em}.profile-intro .meta{margin:0 0 8px}.profile-summary{margin:12px 0 0;font-size:1rem;color:var(--lp-muted)}.sourced-rating{margin:8px 0;font-size:.92rem}.sourced-rating a{color:var(--lp-ink);text-decoration:none}.sourced-rating a:hover{text-decoration:underline}.rating-star{color:var(--lp-copper-dark,#9e5733)}.business-page .photo-mosaic{grid-template-rows:135px 135px;margin-bottom:20px;gap:6px;border-radius:12px}.photo-mosaic.photo-count-1{grid-template-columns:1fr;grid-template-rows:276px}.photo-mosaic.photo-count-1 button:first-child{grid-row:auto}.photo-mosaic.photo-count-2{grid-template-columns:1fr 1fr;grid-template-rows:276px}.photo-mosaic.photo-count-2 button:first-child{grid-row:auto}.profile-photo-fallback{display:flex;align-items:center;gap:12px;border-top:3px solid var(--lp-copper,#b7774d);padding:12px 16px;background:var(--lp-copper-light,#f7eee8);border-radius:8px;font-size:.8rem;color:var(--lp-muted)}.profile-photo-fallback img{object-fit:contain;width:24px;height:32px}.business-page .profile-nav{margin:0;padding:12px 0;gap:8px 22px;border-block:1px solid var(--lp-border)}.business-page .profile-section{padding:24px 0;scroll-margin-top:20px}.business-page .profile-section h2{font-size:1.35rem;line-height:1.3;margin-bottom:12px;letter-spacing:-.015em}.business-page .profile-section p{font-size:.95rem;margin-bottom:12px}.business-page .profile-section p:last-child{margin-bottom:0}.business-page .profile-sidebar{gap:16px}.business-page .profile-sidebar .card{padding:22px;border-radius:12px;box-shadow:none}.business-page .profile-sidebar h2{font-size:1.15rem;line-height:1.35;margin-bottom:12px}.business-page .profile-sidebar p{font-size:.875rem;line-height:1.6;margin-bottom:16px}.business-page .profile-sidebar .btn{margin-bottom:8px;min-height:44px;font-size:.875rem}.business-page .profile-sidebar .btn:last-child{margin-bottom:0}.profile-website{display:block;text-align:center;padding:10px;font-size:.9rem;font-weight:650}.profile-contact-card{border-top:3px solid var(--lp-copper,#b7774d)}.business-page .claim-card{background:var(--lp-copper-light,#f7eee8)}.business-hours{font-size:.825rem;margin:0}.business-hours>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--lp-border)}.business-hours>div:last-child{border:0}.business-hours dd{margin:0;text-align:right}.profile-location{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:.9rem}.profile-location .btn{flex-shrink:0;font-size:.85rem}.profile-location p{margin:6px 0!important}.business-map{width:100%;height:250px;border:0;border-radius:10px;margin-bottom:16px}.inquiry-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}.inquiry-field label{display:block}.inquiry-field textarea{resize:vertical;min-height:112px}.inquiry-submit{display:flex;align-items:center;gap:18px;margin-top:16px}.business-page .inquiry-submit p{margin:0;font-size:.75rem}.google-review-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;background:var(--lp-seafoam);border-radius:10px}.google-review-summary strong{font-size:1.7rem}.google-review-summary p{margin:4px 0 0!important;font-size:.85rem!important}.google-review-summary .btn{font-size:.85rem}.profile-source{margin:16px 0;font-size:.8rem;color:var(--lp-muted)}.profile-source summary{font-size:.8rem}.profile-mobile-actions{display:none}.business-page .service-cards .card,.business-page .project-cards .card{padding:16px}.business-page .review-entry{padding:16px 0}.business-page .review-entry h3{font-size:1rem}
@media(max-width:760px){.business-page .profile-columns{grid-template-columns:1fr}.business-page .profile-sidebar{grid-row:auto}.profile-mobile-actions{display:flex;gap:10px;margin-top:16px}.profile-mobile-actions .btn{flex:1;font-size:.85rem}.profile-mobile-actions .profile-mobile-action{display:flex;margin:0}.business-page .photo-mosaic{grid-template-rows:95px 95px}.business-page .photo-mosaic.photo-count-1,.business-page .photo-mosaic.photo-count-2{grid-template-rows:196px}.business-page .profile-nav{gap:8px 18px}.business-page .profile-section{padding:22px 0}.profile-location,.google-review-summary{align-items:start;flex-direction:column;gap:12px}.inquiry-fields{grid-template-columns:1fr}.inquiry-submit{align-items:start;flex-direction:column;gap:12px}.inquiry-submit button{width:100%}.business-page .profile-sidebar .card{padding:20px}.business-page .profile-intro h1{font-size:2rem}}
/* Business discovery and owner interviews — shared LocalPros components. */
.browse-page{max-width:1200px;margin:auto}.browse-page .page-head{padding:0 0 16px}.browse-page .page-head h1{font-size:clamp(2rem,3.2vw,2.8rem);margin-bottom:8px}.browse-page .lead{margin:0}.browse-search{display:grid;grid-template-columns:2fr 1fr auto;gap:0;background:#fff;border:1px solid var(--lp-border);border-radius:10px;padding:6px;align-items:start}.browse-search label{margin:0}.browse-search input,.browse-search select{border:0;border-radius:0;width:100%;min-height:48px}.browse-query{border-right:1px solid var(--lp-border)}.browse-filters{grid-column:1/-1;margin:0;padding:0 12px}.browse-filters summary{font-size:.8rem}.browse-filters .form-grid{padding:12px 0}.browse-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:26px 0 16px}.browse-heading h2{font-size:1.5rem;margin:0 0 4px}.browse-heading p{margin:0;font-size:.85rem;color:var(--lp-muted)}.view-switch{display:flex;gap:4px}.view-switch [aria-pressed=true]{background:var(--lp-ink);color:white;border-color:var(--lp-ink)}.browse-results-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:20px;align-items:start}.browse-results-layout.no-map{grid-template-columns:1fr;max-width:900px}.browse-page .result-card{grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);gap:0;border-radius:10px;overflow:hidden}.result-card .listing-visual{position:relative;height:100%;min-height:220px;background:var(--lp-seafoam);overflow:hidden;display:flex;align-items:center;justify-content:center}.listing-visual>img{width:100%;height:100%;object-fit:cover}.listing-visual.listing-placeholder>img{width:48px;height:64px;object-fit:contain}.listing-visual.listing-placeholder span{font-size:.75rem}.photo-label{position:absolute;left:12px;bottom:12px;font-size:.7rem;padding:6px 10px;border-radius:6px;background:#132e39dd;color:white}.browse-page .listing-content{padding:16px;gap:3px}.browse-page .listing-content h3{font-size:1.2rem;margin:0}.listing-content h3 a{color:var(--lp-ink);text-decoration:none}.listing-content .meta{margin:0;font-size:.8rem}.card-rating{font-size:.8rem;margin:4px 0}.card-snippet{font-size:.85rem;line-height:1.45;margin:6px 0}.card-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;width:100%}.card-actions .btn{flex:1;min-width:65px;padding:8px 12px;font-size:.8rem;margin:0!important}.listing-content .chips{margin:6px 0;gap:5px}.listing-content .chip{font-size:.7rem;padding:4px 9px}.watch-interview{font-weight:650;font-size:.8rem;margin-top:8px}.results-map{background:white;border:1px solid var(--lp-border);border-radius:10px;overflow:hidden;position:sticky;top:16px}.map-heading{padding:16px}.map-heading h2{font-size:1.1rem;margin:0 0 4px}.map-heading p{margin:0}.business-location-overview{display:block;width:100%;height:auto;max-height:460px}.map-caption{font-size:.75rem;padding:12px 16px;margin:0;color:var(--lp-muted)}.map-businesses{margin:0;padding:0 18px 12px 36px;font-size:.8rem}.map-businesses li{margin:8px 0}.map-businesses span{display:block;color:var(--lp-muted)}.map-claim{display:block;padding:16px;background:var(--lp-seafoam);font-size:.8rem;font-weight:650}.browse-page[data-mode=map] .browse-results-layout{grid-template-columns:1fr 1.5fr}.browse-page[data-mode=map] .result-card{grid-template-columns:1fr}.browse-page[data-mode=map] .result-card .listing-visual{display:none}.owner-interview{margin:16px 0}.interview-cover{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border:0;border-radius:12px;background:var(--lp-ink)!important;padding:0!important;display:flex;align-items:center;justify-content:center}.interview-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.interview-cover .interview-brand{width:45%;height:auto;inset:18% auto auto 27%;object-fit:contain;opacity:.65}.play-symbol{display:grid;place-items:center;border-radius:50%;background:var(--lp-copper-dark,#9e5733);color:white;width:64px;height:64px;position:relative;z-index:1;box-shadow:0 0 0 7px #ffffff55}.interview-cover-label{position:absolute;bottom:16px;left:16px;color:white;font-size:.85rem}.interview-player-slot video,.interview-player-slot iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:10px;background:#132e39}.interview-player-status:empty{display:none}.business-page #meet-the-owner h3{font-size:1.1rem;margin-bottom:12px}.planning-card{background:var(--lp-seafoam)}.planning-card ol{counter-reset:step;list-style:none;padding:0;margin:16px 0 0}.planning-card li{position:relative;counter-increment:step;padding-left:45px;margin:20px 0;font-size:.8rem}.planning-card li:before{content:counter(step);position:absolute;left:0;top:0;border-radius:50%;width:32px;height:32px;background:white;display:grid;place-items:center;font-weight:750;font-size:1.2rem}.planning-card li span{display:block;color:var(--lp-muted);margin-top:5px}.business-page #contact,.business-page #reviews{background:white;border:1px solid var(--lp-border);padding:20px;border-radius:10px;margin-top:20px}.business-page .google-review-summary{padding:0;background:none}.performance-filters{display:flex;flex-wrap:wrap;gap:14px;align-items:end;margin:24px 0}.performance-filters label{font-size:.8rem;margin:0}.performance-filters select{max-width:300px}.performance-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.performance-metrics .card{padding:18px}.performance-metrics strong{display:block;font-size:2rem}.performance-metrics span,.performance-metrics small{font-size:.8rem}.performance-metrics small{color:var(--lp-muted)}.activity-chart{height:170px;display:flex;align-items:end;gap:3px;border-bottom:1px solid var(--lp-border);margin:24px 0}.activity-bar{flex:1;height:100%;display:flex;align-items:end;min-width:1px}.activity-bar span{display:block;width:100%;min-height:2px;background:var(--lp-copper-dark,#9e5733);border-radius:3px 3px 0 0}.activity-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--lp-border);font-size:.9rem}.activity-row p{margin:4px 0}.activity-row time{font-size:.75rem;white-space:nowrap}.funnel{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.funnel>div{background:var(--lp-seafoam);padding:16px;border-radius:8px;font-size:.8rem}.funnel strong{display:block;font-size:1.8rem}
@media(max-width:900px){.browse-results-layout{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr)}.browse-page .result-card{grid-template-columns:1fr}.result-card .listing-visual{height:180px;min-height:0}.performance-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.browse-search{grid-template-columns:1fr;gap:6px}.browse-query{border:0}.browse-search .btn{width:100%}.browse-filters{grid-column:auto}.browse-heading{align-items:start;gap:12px}.browse-heading h2{font-size:1.25rem}.view-switch .btn{padding:8px 10px;font-size:.75rem}.browse-results-layout,.browse-page[data-mode=map] .browse-results-layout{grid-template-columns:1fr}.results-map{position:static;display:none}.browse-page[data-mode=map] .results-map{display:block;grid-row:1}.browse-page[data-mode=map] .result-list{display:none}.performance-filters{display:grid;grid-template-columns:1fr 1fr}.performance-filters select{max-width:100%}.performance-metrics{gap:8px}.performance-metrics .card{padding:12px}.performance-metrics span{font-size:.7rem}.performance-metrics strong{font-size:1.6rem}.funnel{grid-template-columns:1fr}.activity-row{flex-wrap:wrap}.performance-page .panel{padding:18px}.interview-cover-label{font-size:.75rem;bottom:10px}}

/* Shared public profile and search: complete design, without fixture-only layouts. */
.business-page .photo-mosaic{aspect-ratio:2.35/1;max-height:330px;border-radius:10px;gap:4px}.business-page .photo-mosaic img{height:100%;object-fit:cover}.business-page .photo-lightbox img{max-height:72vh;object-fit:contain}.profile-section{scroll-margin-top:20px}.business-page .profile-intro h1{font-size:clamp(1.8rem,3vw,2.4rem)}.business-page .profile-section{padding:20px 0}.business-page .profile-section h2{margin:0 0 10px}.business-page .profile-nav{gap:22px}.service-tags{gap:10px}.service-tags .chip{padding:9px 16px;background:var(--lp-seafoam);border:0}.service-detail{margin-top:10px}.service-detail summary{font-size:.8rem;color:var(--lp-muted)}.service-detail .service-cards{margin-top:14px}.embedded-map{position:relative;overflow:hidden;border-radius:9px 9px 0 0;background:var(--lp-seafoam)}.embedded-map iframe.business-map{display:block;width:100%;height:265px;border:0;margin:0;pointer-events:none}.embedded-map.map-active iframe{pointer-events:auto}.map-activate{position:absolute;right:10px;bottom:32px;box-shadow:0 2px 10px #102d3b22;background:white!important}.map-activate[hidden]{display:none}.profile-location{padding:14px 0;align-items:center}.search-google-map.business-map{height:500px!important}.map-businesses{list-style:none;padding:0 14px 10px}.map-businesses a{display:flex;gap:10px;align-items:center;padding:10px;border:1px solid transparent;border-radius:8px;text-decoration:none}.map-businesses a[aria-current=true]{border-color:var(--lp-copper);background:#fff8f3}.map-businesses .map-number{display:grid;place-items:center;flex-shrink:0;border-radius:50%;width:28px;height:28px;background:var(--lp-copper-dark,#9e5733);color:white;font-weight:700}.map-businesses small{display:block;color:var(--lp-muted)}.map-profile-link{display:block;margin:0 24px 16px;font-size:.8rem}.browse-page .result-card{position:relative;min-height:220px}.result-number{position:absolute;top:12px;left:12px;z-index:1;display:grid;place-items:center;width:32px;height:32px;background:var(--lp-copper-dark,#9e5733);color:white;font-weight:700;border:2px solid white;border-radius:50%}.browse-page .card-snippet{margin:8px 0;font-size:.85rem;line-height:1.45}.browse-page .card-actions{margin-top:12px}.review-entry blockquote{margin:8px 0;color:var(--lp-muted);font-size:.9rem}.review-entry details{font-size:.85rem}.business-page .google-review-summary{display:flex;align-items:center;justify-content:space-between;gap:16px}.business-page .inquiry-field input,.business-page .inquiry-field select{width:100%}.business-page #contact .inquiry-fields{gap:12px 18px}.business-page .profile-sidebar .card{padding:20px}.business-page .profile-sidebar h2{font-size:1.1rem}.business-page .profile-summary{font-size:1rem}
@media(max-width:640px){.business-page .photo-mosaic{aspect-ratio:1.6/1;max-height:300px}.business-page .profile-nav{gap:16px}.embedded-map iframe.business-map{height:240px}.search-google-map.business-map{height:360px!important}.business-page .inquiry-fields{grid-template-columns:1fr}.business-page .google-review-summary{flex-wrap:wrap}.map-activate{bottom:30px}.result-number{top:10px;left:10px}}
.business-page .photo-mosaic{height:clamp(230px,23vw,320px);aspect-ratio:auto;grid-template-rows:repeat(2,minmax(0,1fr));margin-bottom:12px}.business-page .photo-mosaic.photo-count-1,.business-page .photo-mosaic.photo-count-2{grid-template-rows:minmax(0,1fr)}.business-page .profile-intro{margin:12px 0}.review-excerpts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.review-excerpts .review-entry{border:1px solid var(--lp-border);border-radius:8px;padding:14px;margin-top:12px}.review-excerpts .review-entry h3{font-size:.95rem}.review-excerpts .review-entry blockquote{font-size:.85rem}body:has(.business-page,.browse-page) .footer{padding:24px 0}body:has(.business-page,.browse-page) .footer-grid{align-items:center}body:has(.business-page,.browse-page) .footer-links{align-content:center;align-items:center;row-gap:12px;column-gap:18px}body:has(.business-page,.browse-page) .footer-description{display:none}body:has(.business-page,.browse-page) .footer-bottom{margin-top:18px;padding-top:12px}body:has(.business-page,.browse-page) .footer-bottom p{margin:0}
@media(max-width:640px){.business-page .photo-mosaic{height:220px;grid-template-rows:repeat(2,minmax(0,1fr))}.review-excerpts{grid-template-columns:1fr}.business-page .profile-intro{margin:10px 0}}
/* Compact factual results, accessible numbered navigation, and owned map controls. */
.browse-page .result-card.no-photo{grid-template-columns:56px minmax(0,1fr);min-height:0;gap:12px;padding:18px}.result-card.no-photo .listing-visual{width:48px;height:48px;min-height:0;align-self:start;border-radius:8px;display:grid;place-items:center}.business-monogram{font-size:1.4rem;font-weight:800;color:var(--lp-navy);line-height:1}.result-card.no-photo .listing-content{padding:0}.result-card.no-photo .result-number{position:static;width:28px;height:28px;grid-column:1;grid-row:1;margin:48px 10px 0;font-size:.75rem}.result-card.no-photo .listing-visual{grid-column:1;grid-row:1}.result-card.no-photo .listing-content{grid-column:2;grid-row:1}.result-card.is-selected{outline:3px solid var(--lp-copper);outline-offset:2px}.card-map-action{padding:10px 0;border:0;background:transparent;color:var(--lp-teal);font-size:.85rem;text-decoration:underline;cursor:pointer}.card-map-action[hidden]{display:none}.results-map-canvas{height:450px;width:100%}.results-map-canvas[hidden]{display:none}.map-information{padding:18px;border-top:1px solid var(--lp-border)}.map-information[hidden]{display:none}.map-accessible-list{padding:14px}.map-accessible-list ol{padding-left:18px}.map-business-choice{display:block;text-align:left;min-height:44px;width:100%;padding:10px;border:0;background:transparent;color:var(--lp-navy);cursor:pointer}.localpros-map-pin{min-width:34px;min-height:34px;border-radius:22px;border:2px solid white;background:var(--lp-copper);color:white;font-weight:800;padding:4px 9px;box-shadow:0 2px 6px #0005;cursor:pointer}.localpros-map-pin.is-selected{background:var(--lp-navy);outline:3px solid var(--lp-copper)}.results-pagination{margin:14px 0 24px}.result-range{font-size:.9rem;color:var(--lp-muted)}.numbered-pagination{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.numbered-pagination>a,.numbered-pagination>span{display:grid;place-items:center;min-width:44px;min-height:44px;padding:8px 12px;border:1px solid var(--lp-border);border-radius:7px;text-decoration:none}.numbered-pagination .current{background:var(--lp-copper);border-color:var(--lp-copper);color:white;font-weight:800}.numbered-pagination [aria-disabled]{opacity:.5}.numbered-pagination .mobile-page-count{display:none}.browse-heading#results{scroll-margin-top:110px}a:focus-visible,button:focus-visible{outline:3px solid var(--lp-teal);outline-offset:3px}.review-topics{margin-top:18px}
@media(max-width:650px){.numbered-pagination .desktop-page{display:none}.numbered-pagination .mobile-page-count{display:grid;border:0;flex:1;padding:6px}.numbered-pagination{flex-wrap:nowrap;justify-content:space-between}.browse-page .result-card.no-photo{grid-template-columns:40px minmax(0,1fr);padding:14px;gap:10px}.result-card.no-photo .listing-visual{width:36px;height:36px}.result-card.no-photo .result-number{margin:40px 4px 0}.results-map-canvas{height:350px}}
.business-offers{max-width:1200px;margin:auto}.offer-card{display:flex;flex-direction:column;gap:12px}.offer-card h2{min-height:2.5em;margin:0}.offer-card h3{font-size:1.25rem;line-height:1.35;margin:0}.offer-card .price{margin:0}.offer-card .billing-label{min-height:1.3em;margin:0}.offer-card ul{padding-left:20px;line-height:1.5}.offer-card li{margin-bottom:10px}.offer-card .offer-closing{font-weight:600}.offer-bottom{margin-top:auto;padding-top:12px}.offer-bottom .btn{width:100%;text-align:center}.offer-bottom .small{min-height:3.2em;margin:12px 0 0}.offer-value,.offer-faq,.offer-final{padding:32px 0;border-top:1px solid var(--lp-border);margin-top:32px}.offer-faq details{padding:16px 0}.offer-faq summary{font-weight:700;cursor:pointer}.offer-final{background:var(--lp-seafoam);padding:32px;border-radius:12px}.offer-flow{max-width:650px;margin:auto}.offer-flow .stack input,.offer-flow .stack select{width:100%}

.activity-row{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--lp-border)}.activity-row p{margin:.3rem 0}.activity-row code{overflow-wrap:anywhere}.activity-row time{font-size:.85rem}@media(max-width:700px){.activity-row{flex-direction:column}.activity-row details{font-size:.8rem}}

button.card-map-action{background:transparent!important;color:var(--lp-copper-dark)!important;padding:10px 4px;text-align:left}button.map-business-choice{background:transparent!important;color:var(--lp-ink)!important}button.map-business-choice:hover{background:var(--lp-copper-light)!important}.localpros-map-pin.is-selected{background:var(--lp-ink)!important}

@media(max-width:650px){.browse-heading{flex-wrap:wrap;gap:12px}.browse-heading .view-switch{flex-shrink:0}.browse-heading .view-switch button{min-width:58px;white-space:nowrap;padding:10px 12px}}

/* Shared LocalPros authentication controls. */
.google-signin { margin: 1.25rem 0 .75rem; }
.google-button { min-height: 48px; background: #fff; color: var(--lp-ink, #142D3B); border: 1px solid #aabac4; }
.google-button:hover { background: var(--lp-seafoam, #E7F3F1); }
.auth-divider { text-align: center; color: #536775; margin: .85rem 0; }
.signin-methods form + form { margin-top: 1.25rem; }
.signin-methods input[type=radio] { width: auto; min-height: auto; margin-right: .5rem; }
.signin-methods #id_account label { display: flex; gap: .5rem; align-items: center; }
@media (max-width: 700px) { .auth-layout .auth-art { display: none; } }

/* Map controls override generic copper CTA sizing; nearby locations remain selectable. */
button.localpros-map-pin{width:auto!important;min-width:38px;min-height:38px;height:38px;padding:0 7px!important;border:2px solid white!important;border-radius:50px!important;line-height:1;font-size:13px!important;white-space:nowrap;color:white!important;background:var(--lp-copper)!important;box-shadow:0 2px 5px #0006}
button.localpros-map-pin.is-selected{background:var(--lp-ink)!important;outline:3px solid var(--lp-copper)}
