.directory-header{background:var(--surface);border-bottom:3px solid transparent;border-image:linear-gradient(90deg,#cc292f,#f5c338) 1}
.directory-brand{color:var(--accent);font-size:20px;font-weight:700;text-decoration:none}.directory-brand span{color:var(--muted)!important;font-size:14px!important;font-weight:500}
.directory-results .text-secondary{color:var(--muted)!important}.directory-results h1{color:var(--ink)}
.search-panel{background:var(--section-head);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;margin:20px 0 18px;box-shadow:var(--shadow)}.search-panel form{margin-top:0!important;margin-bottom:0!important}.search-panel .form-label{font-size:14px;font-weight:500;color:var(--ink)}.search-panel .form-control,.search-panel .form-select{border-color:var(--border);border-radius:8px}.search-panel .btn{min-height:39px}.search-panel .form-control:focus,.search-panel .form-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #ac302815}
.category-bubble{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid var(--border);border-radius:30px;background:var(--surface);color:var(--ink);font-size:14px;text-decoration:none}.category-bubble span{color:var(--muted);font-size:12px}.category-bubble:hover{border-color:var(--accent);color:var(--accent);background:var(--section-head)}.current-category a{color:var(--ink);font-weight:600;text-decoration:none}
.results-list{display:flex;flex-direction:column;gap:12px}.result-row{display:grid;grid-template-columns:max-content minmax(0,1fr);min-height:106px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.result-identity{padding:12px 18px;display:flex;flex-direction:column;gap:7px;min-width:0;max-width:min(55vw,540px);background:transparent}.result-identity h2{font-size:21px;line-height:1.3;margin:0;font-weight:700}.result-name{color:var(--ink);text-decoration:none;overflow-wrap:anywhere}.result-name:hover{color:var(--accent);text-decoration:underline}.result-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;font-size:14px}.result-city{color:var(--muted)}.result-category{display:inline-flex;align-items:center;gap:7px}.result-category>a:not(.result-up){color:var(--accent);text-underline-offset:3px}.result-up{display:inline-flex;justify-content:center;align-items:center;width:32px;height:30px;border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--accent);text-decoration:none}.result-up:hover{border-color:var(--accent);background:var(--offering)}.result-support{font-size:14px;color:var(--muted)}.result-support a{color:var(--muted);text-underline-offset:3px}
.result-actions{padding:12px 18px;display:grid;grid-template-columns:max-content;gap:8px;justify-content:end;align-self:end}.result-actions a{display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;color:var(--accent);font-size:14px;text-decoration:none;white-space:nowrap}.result-actions a:hover{text-decoration:underline}.result-actions svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6}
.directory-results a:focus-visible{outline:3px solid #ec9521;outline-offset:3px}.directory-results footer{border-color:var(--border)!important}
@media(max-width:650px){.directory-brand{font-size:18px}.search-panel{padding:12px}.result-row{grid-template-columns:minmax(0,1fr);min-height:0}.result-identity{max-width:none;padding:12px 14px}.result-identity h2{font-size:19px}.result-actions{grid-template-columns:max-content max-content;justify-content:start;gap:14px;padding:9px 14px 12px;align-self:stretch}.result-meta{gap:7px 12px}.category-bubble{font-size:13px;padding:5px 10px}}

/* Rotate the approved header outline to the left of each white result. */
.result-row{position:relative;background:#fff}
.result-row::before{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;padding:.6px 0 .6px 5px;
 background:linear-gradient(180deg,#cc292f 0%,#ec7430 50%,#f5c338 100%) left / var(--radius) 100% no-repeat,
 linear-gradient(90deg,#cc292f 0%,rgba(204,41,47,.65) 45%,rgba(204,41,47,0) 100%) top left / var(--accent-reach,250px) .6px no-repeat,
 linear-gradient(90deg,#f5c338 0%,rgba(245,195,56,.65) 45%,rgba(245,195,56,0) 100%) bottom left / var(--accent-reach,250px) .6px no-repeat;
 -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.search-navigation{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin:20px 0 22px;overflow:hidden}
.search-navigation>nav[aria-label="Category breadcrumbs"]{position:relative;background:var(--section-head);border-bottom:1px solid var(--border);padding:15px 18px;margin:0!important}
.search-navigation>nav[aria-label="Category breadcrumbs"] .breadcrumb{margin:0}
.search-navigation>nav[aria-label="Category breadcrumbs"]::before{content:"";position:absolute;inset:0;padding:5px .6px 0;border-radius:var(--radius) var(--radius) 0 0;pointer-events:none;
 background:linear-gradient(90deg,#cc292f 0%,#ec7430 50%,#f5c338 100%) top / 100% var(--radius) no-repeat,
 linear-gradient(to bottom,#cc292f,rgba(204,41,47,0)) left bottom / .6px calc(100% - var(--radius)) no-repeat,
 linear-gradient(to bottom,#f5c338,rgba(245,195,56,0)) right bottom / .6px calc(100% - var(--radius)) no-repeat;
 -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}
.search-navigation .search-panel{background:var(--surface);border:0;border-radius:0;box-shadow:none;margin:0;padding:16px 18px}
.search-navigation>nav:not([aria-label="Category breadcrumbs"]){margin:0 18px 18px!important}
@media(max-width:650px){.search-navigation>nav[aria-label="Category breadcrumbs"]{padding:14px}.search-navigation .search-panel{padding:14px}.search-navigation>nav:not([aria-label="Category breadcrumbs"]){margin:0 14px 14px!important}}

.result-up .up-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
