:root{--text:#5f586f;--text-h:#121018;--bg:#f7f5fa;--surface:#ffffffeb;--surface-alt:#f1eef6;--border:#e3ddee;--code-bg:#f4ecff;--accent:#f72585;--accent-bg:#f725851f;--accent-border:#b5179e52;--brand-1:#f72585;--brand-2:#b5179e;--brand-3:#7209b7;--brand-4:#560bad;--brand-5:#480ca8;--brand-6:#3a0ca3;--brand-7:#3f37c9;--brand-8:#4361ee;--brand-9:#4895ef;--brand-10:#4cc9f0;--shadow:#560bad14 0 20px 38px -24px, #f725850f 0 10px 22px -18px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/1.45 var(--sans);letter-spacing:.18px;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{color:var(--text);background:var(--bg);margin:0}a{color:inherit}button,input,select,textarea{font:inherit}h1,h2,h3{color:var(--text-h);margin:0}p{margin:0}code{font-family:var(--mono);color:var(--text-h);background:var(--code-bg);border-radius:4px;padding:4px 8px;font-size:15px;line-height:1.35}#root{min-height:100vh}@media (width<=1024px){:root{font-size:16px}}.directory-shell{background:0 0;max-width:1120px;min-height:100vh;margin:0 auto;padding:24px;position:relative}.directory-hero,.page-card,.agency-card,.message-banner{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:24px}.directory-hero{box-shadow:none;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:24px;margin-bottom:24px;display:grid}.directory-hero-brand,.directory-hero-auth,.page-card,.review-form,.review-stack,.agency-list,.aggregate-grid,.agency-card,.agency-card-metrics,.review-metrics{gap:16px;display:grid}.directory-hero-brand,.directory-hero-auth{border:1px solid var(--border);box-shadow:var(--shadow);background:#fffffff5;border-radius:20px;padding:20px 22px}.directory-hero-brand{place-self:start;width:max-content}.hero-home-button{text-align:left;width:max-content;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;margin:0;padding:0;display:inline-flex}.hero-logo{object-fit:cover;border-radius:16px;flex:none;width:72px;height:72px}.hero-home-button h1{white-space:nowrap}.section-heading,.agency-card-header,.detail-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.page-card{background:#fffffffa;border-color:#0000;gap:24px;padding:24px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--brand-2);font-size:.82rem;font-weight:700}.directory-hero h1{color:var(--text-h);white-space:nowrap;margin:0;font-size:2rem;line-height:1}.directory-hero-nav{box-shadow:none;background:0 0;border:0;border-radius:0;place-self:center end;align-items:center;padding:0;display:flex}.directory-hero-auth{justify-self:end;align-items:center}.directory-hero-auth,.directory-hero-nav{gap:12px;display:flex}.viewer-auth-row{align-items:center;gap:10px;display:inline-flex}.nav-review-button{border:1px solid var(--brand-1);color:#fff;background:var(--brand-1);box-shadow:none;cursor:pointer;background-image:none;border-radius:18px;padding:14px 18px;font-weight:700}.nav-review-button:disabled{opacity:1;cursor:not-allowed}.viewer-identity-chip{color:var(--text-h);align-items:center;gap:8px;padding:0;font-weight:700;display:inline-flex}.viewer-identity-avatar{object-fit:cover;background:var(--surface);border-radius:999px;flex:none;width:24px;height:24px}.viewer-identity-name{white-space:nowrap}.viewer-dropdown{position:relative}.viewer-dropdown summary{list-style:none}.viewer-dropdown summary::-webkit-details-marker{display:none}.viewer-dropdown-trigger{width:44px;height:44px;color:var(--brand-3);cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.viewer-dropdown-trigger-icon{background:currentColor;border-radius:999px;width:18px;height:2px;position:relative}.viewer-dropdown-trigger-icon:before,.viewer-dropdown-trigger-icon:after{content:"";background:currentColor;border-radius:999px;width:18px;height:2px;position:absolute;left:0}.viewer-dropdown-trigger-icon:before{top:-6px}.viewer-dropdown-trigger-icon:after{top:6px}.viewer-dropdown-menu{z-index:1;border:1px solid var(--border);min-width:180px;box-shadow:var(--shadow);background:#fffffffa;border-radius:16px;padding:12px;position:absolute;top:calc(100% + 10px);right:0}.viewer-card,.message-banner{padding:18px}.message-banner{color:var(--text-h);border-color:var(--border);background:#fffffffa;margin-bottom:24px}.blocking-modal-backdrop{z-index:20;background:#f7f5fabd;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.blocking-modal{border:1px solid var(--border);width:min(280px,100%);color:var(--text-h);box-shadow:var(--shadow);background:#fffffffa;border-radius:24px;justify-items:center;gap:14px;padding:24px;display:grid}.blocking-modal p{text-align:center}.blocking-modal-spinner{border:6px solid var(--surface-alt);border-top-color:var(--brand-2);border-right-color:var(--brand-8);border-radius:999px;width:56px;height:56px;animation:.8s linear infinite blocking-modal-spin}@keyframes blocking-modal-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.primary-button,.secondary-button,.agency-card{border:1px solid var(--border);border-radius:18px}.primary-button,.secondary-button{cursor:pointer;padding:14px 18px;font-weight:700}.primary-button{color:#fff;background:var(--brand-4)}.primary-button:disabled{opacity:.45;cursor:not-allowed}.secondary-button{color:var(--text-h);background:#fffffff0}.agency-card{text-align:left;cursor:pointer;background:#fffffffa;border-color:#b5179e14;padding:20px}.agency-card:hover,.agency-card:focus-visible,.hero-home-button:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible,.review-form input:focus-visible,.review-form select:focus-visible,.review-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.agency-card h3,.page-card h2{color:var(--text-h);font-size:1.4rem}.agency-card p,.page-card p,.viewer-card p,.message-banner{color:var(--text-h);line-height:1.5}.page-card>p,.detail-header p,.detail-meta p,.review-card p,.viewer-dropdown-name,.status-label,.form-field span,.binary-field legend{color:var(--text-h)}.agency-card-metrics,.review-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.agency-card-metrics>:nth-child(2n){border-color:var(--brand-8);background:var(--brand-8)}.aggregate-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.rating-summary{border:1px solid var(--brand-2);color:#fff;background:var(--brand-3);border-radius:16px;gap:6px;padding:14px;display:grid}.aggregate-grid .rating-summary--detail-1{border-color:var(--brand-3);background:var(--brand-3)}.aggregate-grid .rating-summary--detail-2{border-color:var(--brand-8);background:var(--brand-8)}.aggregate-grid .rating-summary--detail-3{border-color:var(--brand-9);background:var(--brand-9)}.aggregate-grid .rating-summary--detail-4{border-color:var(--brand-10);background:var(--brand-10)}.review-metrics .rating-summary--detail-1{border-color:var(--brand-3);background:var(--brand-3)}.review-metrics .rating-summary--detail-2{border-color:var(--brand-8);background:var(--brand-8)}.review-metrics .rating-summary--detail-3{border-color:var(--brand-9);background:var(--brand-9)}.review-metrics .rating-summary--detail-4{border-color:var(--brand-10);background:var(--brand-10)}.rating-label,.review-byline,.status-label{font-size:.88rem;font-weight:700}.rating-summary .rating-label,.rating-summary strong{color:#fff}.rating-summary strong,.review-card strong,.detail-meta strong{color:inherit}.detail-meta{border:1px solid var(--border);background:#ffffffe0;border-radius:18px;gap:8px;padding:16px;display:grid}.detail-page-card{gap:20px}.detail-cta-row{justify-content:flex-start;display:flex}.review-card{border:2px solid var(--text-h);background:#ffffffe6;border-radius:18px;gap:14px;padding:20px;display:grid}.review-form{margin-top:20px}.agency-lookup-status{margin-top:-4px}.new-agency-panel,.selected-agency-panel,.agency-match-panel{border:1px solid var(--brand-8);background:#fffffff0;border-radius:18px;gap:16px;padding:18px;display:grid}.selected-agency-panel{grid-template-columns:minmax(0,1fr) auto;align-items:start}.selected-agency-panel h3{color:var(--text-h);margin:0;font-size:1.1rem}.selected-agency-panel p,.agency-match-panel p{margin:0}.selected-agency-clear{border:1px solid var(--brand-10);color:#fff;background:var(--brand-10);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:1rem;font-weight:700;line-height:1;display:inline-flex}.selected-agency-clear:hover,.selected-agency-clear:focus-visible{outline:2px solid var(--brand-5);outline-offset:2px}.agency-match-list{gap:12px;display:grid}.agency-match-button{border:1px solid var(--border);text-align:left;color:var(--text-h);cursor:pointer;background:#fffffff5;border-radius:16px;gap:4px;padding:14px 16px;display:grid}.agency-match-button strong{color:var(--text-h)}.agency-match-button span{color:#7b7397}.agency-match-button:hover,.agency-match-button:focus-visible{border-color:var(--brand-10);outline:2px solid var(--accent);outline-offset:2px;transform:translateY(-1px)}.new-agency-panel p{margin:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-field{gap:8px;display:grid}.scale-field{border:0;justify-items:start;min-inline-size:0;margin:0;padding:0}.scale-field legend{margin-bottom:14px}.form-field span,.binary-field legend{font-weight:700}.review-form input:not([type=radio]),.review-form select,.review-form textarea{width:100%;color:var(--text-h);background:#ffffffe0;border:1px solid #ddd6e8;border-radius:14px;padding:12px 14px}.review-form input::placeholder,.review-form textarea::placeholder{color:#8a84a5}.review-form textarea{resize:vertical}.scale-options{justify-content:flex-start;align-items:flex-start;gap:48px;width:fit-content;display:inline-flex}.scale-option{flex:none;position:relative}.scale-option-input{opacity:0;pointer-events:none;position:absolute}.scale-option-button{width:auto;min-height:44px;color:var(--text-h);cursor:pointer;background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:flex-start;place-items:center;gap:4px;padding:0;display:inline-flex;position:relative}.scale-option-button-number{place-items:center;width:40px;height:40px;display:inline-grid;position:relative}.scale-option-button-ring{opacity:0;background:0 0;border-radius:999px;width:100%;height:100%;position:absolute;inset:0}.scale-option-button-emoji{z-index:1;font-size:1.2rem;line-height:1;position:relative}.scale-option-button-value{z-index:1;font-size:1.1rem;font-weight:700;line-height:1;position:relative}.scale-option--selected .scale-option-button,.scale-option--selected .scale-option-button-value{color:#fff}.scale-option--selected .scale-option-button-emoji{filter:none}.scale-option--selected .scale-option-button-ring{background:var(--brand-2);opacity:1}.scale-option-button:hover .scale-option-button-ring{background:var(--brand-2);opacity:.2}.scale-option-button:focus-visible{outline:3px solid var(--brand-10);outline-offset:2px}.binary-field{border:1px solid var(--border);background:#ffffffd6;border-radius:18px;flex-wrap:wrap;gap:20px;margin:0;padding:16px;display:flex}.binary-field label{color:var(--text-h);align-items:center;gap:10px;display:inline-flex}.section-heading .secondary-button,.viewer-dropdown-menu .secondary-button{border-color:var(--brand-10)}.section-heading>div>p,.agency-card-header>div>p,.review-byline{color:#7b7397}.agency-card:hover{border-color:#b5179e38;transform:translateY(-2px)}.viewer-dropdown-name{font-weight:700}.review-form select option{color:var(--brand-6);background:#fff}.review-form input:focus-visible,.review-form textarea:focus-visible{outline:3px solid var(--brand-10);outline-offset:2px}.nav-review-button:hover:not(:disabled),.nav-review-button:focus-visible{outline:2px solid var(--brand-5);outline-offset:2px}@media (width<=1024px){.directory-shell{padding:16px}.directory-hero,.aggregate-grid,.form-grid{grid-template-columns:1fr}.section-heading,.detail-header{flex-direction:column}.directory-hero{grid-template-columns:1fr}.directory-hero-nav,.directory-hero-auth{justify-self:stretch}.hero-logo{width:60px;height:60px}.directory-hero h1{font-size:1.6rem}}
