
.directory-hero{padding:64px 0 28px}
.directory-hero h1{max-width:900px}
.directory-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:22px}
.directory-search-card,.directory-card,.directory-form-card,.directory-profile-card{background:#0d1a27;border:1px solid #28445d;border-radius:18px;padding:24px}
.directory-search-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr auto;gap:12px;align-items:end}
.directory-search-grid label,.directory-form-grid label{display:grid;gap:7px;font-weight:700}
.directory-search-grid input,.directory-search-grid select,.directory-form-grid input,.directory-form-grid select,.directory-form-grid textarea{width:100%;background:#08131e;color:#f3f7fb;border:1px solid #35536c;border-radius:8px;padding:12px 13px;font:inherit}
.directory-form-grid textarea{min-height:130px;resize:vertical}
.directory-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.directory-form-grid .full{grid-column:1/-1}
.directory-results{display:grid;gap:16px;margin-top:20px}
.directory-result{background:#0d1a27;border:1px solid #28445d;border-radius:16px;padding:20px;display:grid;gap:8px}
.directory-result-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.directory-result h3{margin:0;font-size:1.25rem}
.directory-meta{color:#9ec8e7;font-size:.95rem}
.directory-empty{padding:28px;border:1px dashed #35536c;border-radius:14px;color:#aebed0}
.directory-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.directory-category{padding:15px;border:1px solid #28445d;border-radius:12px;background:#0b1723}
.directory-price{font-size:2.1rem;font-weight:800;margin:8px 0}
.directory-note{color:#aebed0;font-size:.94rem}
.directory-flash{border-radius:10px;padding:14px 16px;margin:0 0 18px;border:1px solid #2c7aa8;background:#0b2b3e}
.directory-flash.error{border-color:#a43d49;background:#35131a;color:#ffdfe4}
.directory-flash.success{border-color:#2a8250;background:#113923;color:#e3ffed}
.directory-profile-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}
.directory-contact-list{display:grid;gap:10px}
.directory-contact-list a{overflow-wrap:anywhere}
@media(max-width:1000px){.directory-search-grid{grid-template-columns:1fr 1fr}.directory-search-grid .wide{grid-column:1/-1}.directory-category-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.directory-form-grid,.directory-search-grid,.directory-profile-grid{grid-template-columns:1fr}.directory-form-grid .full,.directory-search-grid .wide{grid-column:auto}.directory-category-grid{grid-template-columns:1fr}.directory-result-head{display:grid}}
.directory-plan-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}
.directory-plan-card{display:block!important;cursor:pointer}
.directory-plan-card input{position:absolute;opacity:0;pointer-events:none}
.directory-plan-card span{display:grid;gap:6px;height:100%;padding:18px;border:1px solid #35536c;border-radius:14px;background:#08131e}
.directory-plan-card strong{font-size:1.12rem}.directory-plan-card b{font-size:1.35rem}.directory-plan-card small{color:#aebed0;line-height:1.35}
.directory-plan-card.is-selected span{outline:2px solid #8dc8f2;border-color:#8dc8f2}
.directory-coverage-card{border:1px solid #28445d;border-radius:14px;padding:20px;background:#0a1622}
.directory-section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.directory-section-heading h2{margin-top:0}
.directory-jurisdiction-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.directory-jurisdiction-group{border:1px solid #28445d;border-radius:12px;padding:12px;margin:0;min-width:0}.directory-jurisdiction-group legend{padding:0 6px;font-weight:800;color:#dcecff}
.directory-jurisdiction-option{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px!important;font-weight:500!important;margin:7px 0}.directory-jurisdiction-option input{width:auto!important;margin:0}
@media(max-width:1000px){.directory-plan-grid{grid-template-columns:1fr 1fr}.directory-jurisdiction-groups{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.directory-plan-grid,.directory-jurisdiction-groups{grid-template-columns:1fr}.directory-section-heading{display:grid}}
