.cli-directory, .cli-submission-form, .cli-term-grid, .cli-neighborhood-grid { box-sizing: border-box; }
.cli-directory-filter { display: grid; gap: .75rem; grid-template-columns: 1.5fr 1fr 1fr auto; padding: .75rem; border: 1px solid rgba(0,0,0,.12); border-radius: 1.25rem; background: #fff; box-shadow: 0 18px 40px rgba(0,0,0,.08); }
.cli-directory-filter input, .cli-directory-filter select, .cli-directory-filter button, .cli-submission-form input, .cli-submission-form select, .cli-submission-form textarea { box-sizing: border-box; width: 100%; min-height: 2.9rem; border: 1px solid rgba(0,0,0,.14); border-radius: .75rem; padding: .7rem .85rem; background: #ffffff; color: #111111; font: inherit; }
.cli-directory-filter button, .cli-submit-row button { border: 0; background: #111111; color: #fff; cursor: pointer; font-weight: 700; padding: .75rem 1.1rem; }
.cli-directory-heading { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin: 2rem 0 1rem; }.cli-eyebrow, .cli-term-count { color: #CE2029; font-size: .72rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }.cli-directory-heading h2 { margin: .3rem 0 0; color: #111111; font-family: Georgia, serif; font-size: 2rem; }.cli-directory-heading > a, .cli-card-footer > a { color: #CE2029; font-size: .9rem; font-weight: 700; }
.cli-directory-layout { display: grid; gap: 2rem; grid-template-columns: minmax(0,1fr) minmax(310px,.72fr); align-items: start; }.cli-card-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.25rem; }.cli-business-card { overflow: hidden; border: 1px solid rgba(0,0,0,.1); border-radius: 1.25rem; background: #fff; box-shadow: 0 14px 32px rgba(0,0,0,.06); }.cli-card-image { display:flex; min-height: 10rem; align-items:flex-end; padding: 1rem; background: linear-gradient(135deg,#ffffff,#ffffff,#CE2029); }.cli-card-image img { width:100%; height:10rem; object-fit:cover; }.cli-card-monogram { display:grid; place-items:center; width:2.7rem; height:2.7rem; border-radius:.9rem; background:rgba(255,255,255,.9); color:#CE2029; font-size:1.25rem; }.cli-card-body { padding: 1.25rem; }.cli-tags { display:flex; flex-wrap:wrap; gap:.4rem; }.cli-tag { border-radius:999px; background:#ffffff; color:#111111; font-size:.62rem; font-weight:800; letter-spacing:.08em; padding:.32rem .55rem; text-transform:uppercase; }.cli-card-body h3 { margin:1rem 0 .4rem; color:#111111; font-family:Georgia,serif; font-size:1.35rem; }.cli-card-body h3 a { color:inherit; text-decoration:none; }.cli-card-body p { color:#111111; font-size:.93rem; line-height:1.6; }.cli-card-footer { display:flex; justify-content:space-between; gap:.7rem; border-top:1px solid rgba(0,0,0,.09); margin-top:1rem; padding-top:.9rem; color:#111111; font-size:.74rem; }.cli-map { min-height: 27rem; border:1px solid rgba(0,0,0,.1); border-radius:1.25rem; box-shadow:0 14px 32px rgba(0,0,0,.06); overflow:hidden; }.cli-map--empty { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:.7rem; padding:2rem; background:#ffffff; color:#111111; text-align:center; }.cli-empty-state { grid-column:1 / -1; padding:4rem 2rem; border:1px dashed rgba(0,0,0,.2); border-radius:1.25rem; text-align:center; }
.cli-term-grid, .cli-neighborhood-grid { display:grid; gap:1.25rem; grid-template-columns:repeat(3,minmax(0,1fr)); }.cli-term-card, .cli-neighborhood-card { display:block; min-height:15rem; border-radius:1.25rem; padding:1.5rem; text-decoration:none; transition:transform .2s ease, box-shadow .2s ease; }.cli-term-card:hover, .cli-neighborhood-card:hover { transform:translateY(-4px); box-shadow:0 20px 40px rgba(0,0,0,.14); }.cli-term-card { border:1px solid rgba(0,0,0,.1); background:#fff; color:#111111; }.cli-term-icon { display:grid; place-items:center; width:2.8rem; height:2.8rem; border-radius:.9rem; background:#111111; color:#CE2029; }.cli-term-card .cli-term-count { display:block; margin-top:2.5rem; }.cli-term-card h2, .cli-neighborhood-card h2 { margin:.55rem 0; font-family:Georgia,serif; font-size:1.5rem; }.cli-term-link { color:#CE2029; font-weight:700; font-size:.88rem; }.cli-neighborhood-card { display:flex; flex-direction:column; justify-content:flex-end; color:#fff; background:linear-gradient(145deg,#111111,#CE2029); }.cli-neighborhood-card--2 { background:linear-gradient(145deg,#CE2029,#CE2029); }.cli-neighborhood-card--3 { background:linear-gradient(145deg,#111111,#CE2029); }.cli-neighborhood-card--4 { background:linear-gradient(145deg,#111111,#CE2029); }.cli-neighborhood-place { align-self:flex-start; margin-bottom:auto; padding:.35rem .65rem; border-radius:999px; background:rgba(255,255,255,.17); font-size:.72rem; font-weight:700; }.cli-neighborhood-card .cli-term-count { color:#CE2029; }.cli-neighborhood-card .cli-term-link { color:#fff; }
.cli-submission-form { border:1px solid rgba(0,0,0,.1); border-radius:1.5rem; background:#fff; padding:2rem; box-shadow:0 16px 35px rgba(0,0,0,.07); }.cli-form-section + .cli-form-section { border-top:1px solid rgba(0,0,0,.09); margin-top:2rem; padding-top:2rem; }.cli-form-section h2 { color:#111111; font-family:Georgia,serif; font-size:1.85rem; margin:.5rem 0 1.4rem; }.cli-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }.cli-form-grid label, .cli-submission-form fieldset { color:#111111; font-size:.9rem; font-weight:700; }.cli-form-grid input, .cli-form-grid textarea, .cli-form-grid select { display:block; margin-top:.4rem; font-weight:400; }.cli-full { grid-column:1 / -1; }.cli-check-grid { display:flex; flex-wrap:wrap; gap:.7rem; margin: .75rem 0 1.3rem; }.cli-check-grid label { border:1px solid rgba(0,0,0,.14); border-radius:999px; padding:.55rem .8rem; color:#111111; font-size:.86rem; }.cli-check-grid input { width:auto; min-height:0; }.cli-submit-row { display:flex; justify-content:space-between; align-items:center; gap:1.5rem; border-top:1px solid rgba(0,0,0,.09); margin-top:2rem; padding-top:1.5rem; }.cli-submit-row p { max-width:32rem; color:#111111; font-size:.8rem; line-height:1.55; }.cli-submit-row button { width:auto; border-radius:.8rem; }.cli-form-error { border-radius:.75rem; background:rgba(206,32,41,.05); color:#CE2029; padding:.85rem 1rem; }.cli-submission-success { margin:2rem auto; max-width:42rem; border:1px solid rgba(0,0,0,.1); border-radius:1.5rem; background:#fff; box-shadow:0 18px 40px rgba(0,0,0,.08); padding:3rem; text-align:center; }.cli-submission-success span { display:inline-grid; place-items:center; width:3.5rem; height:3.5rem; border-radius:50%; background:#ffffff; color:#CE2029; font-size:1.5rem; }.cli-submission-success h2 { color:#111111; font-family:Georgia,serif; font-size:2rem; }.cli-submission-success p { color:#111111; line-height:1.6; }
@media (max-width: 900px) { .cli-directory-filter, .cli-directory-layout { grid-template-columns:1fr; }.cli-card-grid, .cli-term-grid, .cli-neighborhood-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.cli-map { min-height:20rem; } }
@media (max-width: 600px) { .cli-card-grid, .cli-term-grid, .cli-neighborhood-grid, .cli-form-grid { grid-template-columns:1fr; }.cli-submit-row, .cli-directory-heading { align-items:flex-start; flex-direction:column; }.cli-submission-form { padding:1.2rem; }.cli-full { grid-column:auto; } }

/* White directory content blocks with red accents. */
.cli-directory-filter, .cli-business-card, .cli-term-card, .cli-submission-form, .cli-submission-success, .cli-map, .cli-empty-state { border-color:rgba(17,17,17,.12); background:#fff; color:#111; box-shadow:0 14px 32px rgba(0,0,0,.07); }
.cli-directory-filter input, .cli-directory-filter select, .cli-submission-form input, .cli-submission-form select, .cli-submission-form textarea { border-color:rgba(17,17,17,.14); background:#fff; color:#111; }
.cli-directory-filter input::placeholder, .cli-submission-form input::placeholder, .cli-submission-form textarea::placeholder { color:#111111; }
.cli-directory-filter button, .cli-submit-row button { background:#CE2029; color:#fff; }
.cli-directory-filter button:hover, .cli-submit-row button:hover { background:#CE2029; color:#fff; }
.cli-directory-heading h2, .cli-card-body h3, .cli-form-section h2, .cli-submission-success h2, .cli-form-grid label, .cli-submission-form fieldset { color:#111; }
.cli-card-body p, .cli-card-footer, .cli-submission-success p, .cli-submit-row p { color:#111111; }
.cli-card-image { background:linear-gradient(135deg,#fff,#ffffff,#ffffff); }
.cli-card-monogram { background:#CE2029; color:#fff; }
.cli-tag, .cli-check-grid label { border-color:rgba(206,32,41,.22); background:rgba(206,32,41,.05); color:#CE2029; }
.cli-card-footer, .cli-form-section + .cli-form-section, .cli-submit-row { border-color:rgba(17,17,17,.1); }
.cli-map--empty { background:#fff; color:#111111; }
.cli-term-card { color:#111; }
.cli-term-icon { background:rgba(206,32,41,.05); color:#CE2029; }
.cli-neighborhood-card, .cli-neighborhood-card--2, .cli-neighborhood-card--3, .cli-neighborhood-card--4 { border-color:rgba(17,17,17,.12); background:#fff; color:#111; box-shadow:0 14px 32px rgba(0,0,0,.06); }
.cli-neighborhood-place { background:rgba(206,32,41,.05); color:#CE2029; }
.cli-neighborhood-card .cli-term-count, .cli-neighborhood-card .cli-term-link { color:#CE2029; }
.cli-form-error { background:rgba(206,32,41,.05); color:#CE2029; }
.cli-submission-success span { background:rgba(206,32,41,.05); color:#CE2029; }
.cli-directory-filter input:focus-visible, .cli-directory-filter select:focus-visible, .cli-submission-form input:focus-visible, .cli-submission-form select:focus-visible, .cli-submission-form textarea:focus-visible, .cli-directory-filter button:focus-visible, .cli-submit-row button:focus-visible { outline:2px solid #CE2029; outline-offset:3px; }
.cli-directory-filter button:active, .cli-submit-row button:active { transform:scale(.97); }

/* Private workflow forms: claims, alerts, and accuracy reports. */
.cli-product-form { max-width:48rem; border:1px solid rgba(17,17,17,.12); background:#fff; color:#111; box-shadow:0 16px 35px rgba(0,0,0,.07); padding:2rem; }
.cli-product-form h2 { margin:.4rem 0 .75rem; color:#111; font-family:Georgia,serif; font-size:2rem; line-height:1; }
.cli-product-form > p:not(.cli-eyebrow):not(.cli-product-status):not(.cli-product-selected-listing) { color:#111; line-height:1.65; }
.cli-product-form form { display:grid; gap:1rem; margin-top:1.5rem; }
.cli-product-form label { display:grid; gap:.45rem; color:#111; font-size:.86rem; font-weight:800; letter-spacing:.02em; }
.cli-product-form input, .cli-product-form select, .cli-product-form textarea { box-sizing:border-box; width:100%; min-height:2.9rem; border:1px solid rgba(17,17,17,.14); border-radius:0; background:#fff; color:#111; font:inherit; padding:.7rem .85rem; }
.cli-product-form textarea { min-height:8rem; resize:vertical; }
.cli-product-form input:focus-visible, .cli-product-form select:focus-visible, .cli-product-form textarea:focus-visible, .cli-product-form button:focus-visible { outline:2px solid #CE2029; outline-offset:3px; }
.cli-product-form button { width:max-content; border:0; border-radius:0; background:#CE2029; color:#fff; cursor:pointer; font:inherit; font-size:.78rem; font-weight:800; letter-spacing:.1em; padding:.9rem 1.1rem; text-transform:uppercase; }
.cli-product-form button:hover { background:#CE2029; color:#fff; }
.cli-product-form button:active { transform:scale(.97); }
.cli-product-consent { display:flex !important; align-items:flex-start; gap:.65rem; border-top:1px solid rgba(17,17,17,.1); padding-top:1rem; font-weight:600 !important; line-height:1.45; }
.cli-product-consent input { flex:0 0 auto; width:1rem; min-height:1rem; margin:.2rem 0 0; accent-color:#CE2029; }
.cli-product-status { border-left:3px solid #CE2029; background:rgba(206,32,41,.05); color:#111; font-size:.9rem; font-weight:700; line-height:1.5; padding:.85rem 1rem; }
.cli-product-selected-listing { border:1px solid rgba(206,32,41,.24); background:rgba(206,32,41,.05); color:#111; font-size:.9rem; padding:.85rem 1rem; }
.cli-product-honeypot { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
.cli-premium-label { display:inline-block; border:1px solid rgba(206,32,41,.3); background:rgba(206,32,41,.05); color:#CE2029; font-size:.68rem; font-weight:800; letter-spacing:.12em; padding:.38rem .55rem; text-transform:uppercase; }
@media (max-width:600px) { .cli-product-form { padding:1.25rem; }.cli-product-form h2 { font-size:1.7rem; }.cli-product-form button { width:100%; } }

/* Guides and local updates are editorial content blocks, not directory records. */
.cli-content-feed { margin:2rem 0; }
.cli-content-grid { display:grid; gap:1.25rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.cli-content-card { overflow:hidden; border:1px solid rgba(17,17,17,.12); background:#fff; color:#111; box-shadow:0 14px 32px rgba(0,0,0,.07); }
.cli-content-card__image { display:grid; min-height:10.5rem; place-items:center; background:#fff; color:#CE2029; text-decoration:none; }
.cli-content-card__image img { display:block; width:100%; height:10.5rem; object-fit:cover; }
.cli-content-card__body { padding:1.25rem; }
.cli-content-card__body h3 { margin:.75rem 0 .5rem; color:#111; font-family:Georgia,serif; font-size:1.45rem; line-height:1.1; }
.cli-content-card__body h3 a { color:inherit; text-decoration:none; }
.cli-content-card__body p { color:#111; line-height:1.6; }
.cli-content-card__body .cli-eyebrow { margin:0 0 .75rem; }
.cli-content-card__body .cli-tags { margin:.7rem 0; }
@media (max-width:900px) { .cli-content-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) { .cli-content-grid { grid-template-columns:1fr; } }
