.vendor-directory{padding-bottom:80px}.vendor-filter{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:18px;align-items:end;margin-bottom:40px}.vendor-filter .field{margin:0}.vendor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.vendor-card,.vendor-package,.vendor-editor-panel{border:1px solid var(--line,#d8ddd3);border-radius:16px;background:var(--paper,#fffdf7);padding:28px}.vendor-card h2{font-size:27px;line-height:1.25;margin:16px 0}.vendor-card h2 a{text-decoration:none;color:inherit}.vendor-card p{line-height:1.7}.vendor-empty{grid-column:1/-1;padding:38px;border:1px dashed #bcc9c0;border-radius:16px}.vendor-pagination{margin-top:30px}.vendor-profile{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:60px;padding-bottom:90px;align-items:start}.vendor-description,.preserve-lines{white-space:pre-line;overflow-wrap:anywhere}.vendor-description{font-size:19px;line-height:1.8;margin-bottom:25px}.vendor-main>h2{margin-top:50px}.vendor-contact{position:sticky;top:110px;background:#edf0e7;padding:30px;border-radius:16px;overflow-wrap:anywhere}.vendor-contact hr{border:0;border-top:1px solid #cbd3c8;margin:28px 0}.vendor-contact p{line-height:1.7}.vendor-contact h2{font-size:30px;margin:15px 0 25px}.vendor-package{margin-top:22px}.vendor-package h3{font-size:28px;margin:15px 0}.package-price{font-size:25px;color:#244b3e}.package-price .small{font-size:14px}.package-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-block:1px solid #e2e5dc;padding:20px 0}.package-facts dt{font-size:12px;color:#68766c}.package-facts dd{margin:5px 0 0;font-size:15px}.vendor-editor{max-width:1000px;padding-bottom:80px}.vendor-editor-panel{margin-bottom:28px;padding:36px}.vendor-editor-panel>h2{font-size:32px;margin:0 0 25px}.vendor-fields{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.vendor-editor .field{display:flex;flex-direction:column;gap:8px;margin:0 0 22px}.vendor-editor textarea,.vendor-editor select,.vendor-filter select{font:inherit;border:1px solid #cbd3c8;border-radius:7px;background:white;padding:12px;color:#193e31;width:100%;box-sizing:border-box}.vendor-options,.package-pricing{border:1px solid #d7dfd3;border-radius:9px;padding:20px;margin:8px 0 26px}.vendor-options legend,.package-pricing legend{font-weight:600;padding:0 8px}.vendor-options{display:flex;gap:15px 25px;flex-wrap:wrap}.vendor-options label,.vendor-checkbox{display:flex;gap:9px;align-items:center;font-size:15px}.vendor-options input,.vendor-checkbox input{width:17px;height:17px;accent-color:#285441}.vendor-actions{display:flex;gap:20px;align-items:center;margin-top:24px}.package-editor{border-top:1px solid #d5ddd1;margin-top:22px}.package-editor summary{display:flex;justify-content:space-between;gap:10px;cursor:pointer;padding:22px 0;font-size:20px}.package-form{padding-top:8px}.vendor-checkbox{margin:0 0 24px}.package-delete{margin:18px 0 28px}.vendor-danger{background:transparent}.vendor-danger h2{font-size:25px}.vendor-editor-panel p{line-height:1.7}.vendor-filter .button{margin-bottom:0;white-space:nowrap}.vendor-directory .quiet-callout{margin-top:55px}@media(max-width:1000px){.vendor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vendor-filter{grid-template-columns:1fr 1fr}.vendor-profile{gap:30px}}@media(max-width:650px){.vendor-grid,.vendor-profile,.vendor-fields,.vendor-filter{grid-template-columns:1fr}.vendor-contact{position:static}.vendor-editor-panel{padding:22px}.vendor-card,.vendor-package{padding:23px}.vendor-actions{align-items:flex-start;flex-direction:column}.vendor-profile{gap:24px}.package-facts{gap:16px}.package-editor summary{flex-direction:column}.vendor-options{gap:16px}.vendor-filter{gap:18px}.vendor-editor-panel>h2{font-size:28px}}@media print{.vendor-contact{position:static}.vendor-profile{display:block}.vendor-package{break-inside:avoid}}
.vendor-profile-photo{width:100%;max-height:460px;object-fit:cover;border-radius:14px;margin-bottom:28px}.vendor-card-photo{width:100%;height:190px;object-fit:cover;border-radius:10px;margin-bottom:22px}.vendor-photo-preview{display:block;width:220px;height:150px;object-fit:cover;border-radius:10px;margin:0 0 16px}.vendor-photo-editor{margin:15px 0 28px}

.vendor-image{margin:0 0 22px}.vendor-image img{display:block;margin-bottom:0}.vendor-image figcaption{margin-top:8px}.vendor-profile-photo{height:auto}.vendor-logo{object-fit:contain;background:#e6e9e2;padding:18px;box-sizing:border-box}.vendor-profile-photo.vendor-logo{height:300px}

/* Business workspace and family feedback. */
.workspace-links{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:24px}.profile-progress{width:100%;height:9px;accent-color:#285441}.profile-checklist{margin-top:16px}.profile-checklist summary{cursor:pointer}.profile-checklist ul{padding-left:0;list-style:none;line-height:1.8;font-size:14px}.analytics-toolbar,.analytics-filter{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.analytics-toolbar{justify-content:space-between;margin-bottom:24px}.analytics-filter select,.lead-filter select,.lead-card select,.review-form select{padding:12px;border:1px solid #cbd3c8;border-radius:7px;background:white;font:inherit;color:#193e31}.analytics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:28px 0}.metric-card{padding:24px;border:1px solid #d8ddd3;border-radius:16px;background:#fffdf7}.metric-card h2{font-family:inherit;font-size:15px;margin:0 0 18px}.metric-card strong{display:block;font-size:42px;font-weight:500;color:#244b3e}.metric-card p{font-size:13px;line-height:1.6;color:#68766c}.analytics-explainer{margin-top:32px}.analytics-table-wrap{overflow-x:auto}.analytics-table{width:100%;border-collapse:collapse;font-size:14px}.analytics-table caption{text-align:left;padding-bottom:18px;color:#68766c}.analytics-table th,.analytics-table td{padding:13px 14px;text-align:right;border-bottom:1px solid #e2e5dc;white-space:nowrap}.analytics-table th:first-child{text-align:left}.vendor-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}.vendor-gallery figure{margin:0;min-width:0}.vendor-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}.vendor-gallery figcaption{font-size:14px;line-height:1.5;margin:10px 0;overflow-wrap:anywhere}.vendor-extra-section{margin-top:38px}.vendor-review{border-top:1px solid #d8ddd3;padding:22px 0}.vendor-review h3{font-size:21px;margin:0 0 12px}.vendor-review p{line-height:1.7}.vendor-review blockquote{margin:20px 0 0;padding:18px 22px;border-left:3px solid #285441;background:#edf0e7;border-radius:0 9px 9px 0}.review-form{padding:24px;border:1px solid #d8ddd3;border-radius:12px;margin:20px 0}.review-form summary{cursor:pointer;font-size:20px}.review-form form{margin-top:24px}.review-form .field,.lead-card .field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.review-form textarea,.lead-card textarea{font:inherit;padding:12px;border:1px solid #cbd3c8;border-radius:7px;resize:vertical;width:100%;box-sizing:border-box}.review-form .vendor-checkbox{align-items:flex-start;line-height:1.5}.review-form .vendor-checkbox input{flex-shrink:0;margin-top:3px}.review-delete{margin:20px 0}.lead-filter{display:grid;grid-template-columns:1fr 2fr auto auto;gap:18px;align-items:end;margin-bottom:30px}.lead-filter .field{display:flex;flex-direction:column;gap:8px;margin:0}.lead-card form{border-top:1px solid #d8ddd3;padding-top:24px;margin-top:24px}.lead-card{overflow-wrap:anywhere}.vendor-contact form .button{white-space:normal}
@media(max-width:1000px){.analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vendor-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.lead-filter{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.analytics-toolbar,.analytics-filter{align-items:flex-start;flex-direction:column}.analytics-filter{width:100%}.analytics-filter select{width:100%}.analytics-grid{gap:10px}.metric-card{padding:16px}.metric-card strong{font-size:32px}.metric-card h2{font-size:14px}.vendor-gallery,.lead-filter{grid-template-columns:1fr}.review-form{padding:18px}}

.analytics-bars{display:flex;gap:4px;align-items:stretch;height:150px;border-bottom:1px solid #cbd3c8;margin-top:25px}.analytics-bar-slot{flex:1;display:flex;align-items:flex-end;background:#edf0e7;border-radius:3px 3px 0 0;min-width:1px}.analytics-bar-slot span{display:block;width:100%;background:#285441;border-radius:3px 3px 0 0}.analytics-axis{display:flex;justify-content:space-between;font-size:12px;color:#68766c;margin-top:12px}
