/* ALS directory 0.2.0. Scoped presentation; existing search and claim forms remain intact. */
body.als-designed-directory {
  --als-d-page:var(--als-color-page); --als-d-panel:var(--als-color-panel); --als-d-raised:var(--als-color-raised);
  --als-d-field:var(--als-color-inset); --als-d-ink:var(--als-color-heading); --als-d-copy:var(--als-color-text);
  --als-d-muted:var(--als-color-muted); --als-d-line:var(--als-color-border); --als-d-blue:var(--als-color-primary);
  --als-d-link:var(--als-color-link); --als-d-width:1360px;
  --als-design-gutter:clamp(18px,3.2vw,52px);
  background:var(--als-d-page); color:var(--als-d-ink); color-scheme:dark;
}
body.als-designed-directory :is(main,#content,.site-main,.page-content,.entry-content,.wp-block-post-content,.wp-block-group,.e-con,.e-con-inner,.elementor-widget-container):has(.als-directory,.als-results,.als-profile) { background:transparent!important; }
body.als-designed-directory .entry-content { color:var(--als-d-copy); }
body.als-designed-directory :is(.als-directory,.als-results,.als-profile,.als-access) { max-width:var(--als-d-width)!important; margin-left:auto!important; margin-right:auto!important; }
body.als-designed-directory :is(a,button,input,select,textarea,summary):focus-visible { outline:3px solid var(--als-color-focus); outline-offset:4px; }
body.als-designed-directory .als-design-skip { background:var(--als-color-primary); color:var(--als-color-heading); }

/* The same navy masthead and original white artwork used elsewhere in ALS. */
body.als-designed-directory :is(.als-brand-header,.als-brand-footer) { background:var(--als-d-page); border-color:var(--als-color-border); }
body.als-designed-directory .als-brand-inner { max-width:calc(var(--als-d-width) + 2 * var(--als-design-gutter)); padding-left:var(--als-design-gutter); padding-right:var(--als-design-gutter); }
body.als-designed-directory .als-brand-header .als-brand-inner { padding-top:14px; padding-bottom:14px; gap:24px; flex-wrap:wrap; }
body.als-designed-directory .als-brand-header .als-logo { width:108px; }
body.als-designed-directory .als-brand-tagline { color:var(--als-d-muted); border-color:var(--als-d-line); }
body.als-designed-directory .als-brand-nav { flex-shrink:1; gap:12px 22px; }
body.als-designed-directory .als-brand-nav a { color:var(--als-d-copy); font-size:14px; line-height:1.5; text-decoration:none; }
body.als-designed-directory .als-brand-nav a:visited { color:var(--als-d-copy); }
body.als-designed-directory .als-brand-nav a:hover,
body.als-designed-directory .als-brand-nav a[aria-current] { color:var(--als-color-heading); }
body.als-designed-directory .als-brand-nav a[aria-current] { text-decoration:underline; text-decoration-color:var(--als-color-focus); text-underline-offset:8px; }
body.als-designed-directory .als-brand-nav .als-brand-portal { background:var(--als-d-raised); border:1px solid var(--als-color-control); border-radius:999px; color:var(--als-color-heading); padding:10px 18px; }
body.als-designed-directory .als-brand-nav .als-brand-portal:hover { background:var(--als-color-hover); border-color:var(--als-color-control-hover); }
body.als-designed-directory .als-brand-staging { background:var(--als-color-raised); color:var(--als-color-link); border-color:var(--als-color-border); }
body.als-designed-directory .als-brand-footer { margin-top:48px; }
body.als-designed-directory .als-brand-footer .als-logo { width:86px; }
body.als-designed-directory .als-brand-footer :is(p,strong,span) { color:var(--als-d-muted); }
body.als-designed-directory .als-brand-footer-links a { color:var(--als-d-link); font-size:14px; }
body.als-designed-directory .als-brand-footer-links a:hover { color:var(--als-color-heading); }

/* A compact introduction with a distinct, fully dark search panel. */
body.als-designed-directory .als-directory { margin-top:38px; margin-bottom:28px; padding:18px 0 0; border-radius:0; border:0; background:transparent; overflow:visible; }
body.als-designed-directory .als-directory__eyebrow { color:var(--als-d-link); font-size:12px; letter-spacing:.13em; margin-bottom:16px; }
body.als-designed-directory .als-directory__eyebrow span { background:var(--als-color-focus); box-shadow:none; }
body.als-designed-directory .als-directory h2 { color:var(--als-color-heading); max-width:760px; font-size:clamp(32px,3.5vw,50px); line-height:1.12; letter-spacing:-.035em; text-wrap:balance; }
body.als-designed-directory .als-directory__intro { color:var(--als-d-copy); max-width:760px; font-size:16px; line-height:1.7; margin-top:18px; }
body.als-designed-directory .als-directory__form { background:var(--als-d-panel); border:1px solid var(--als-d-line); border-radius:18px; padding:24px; margin-top:28px; gap:16px; grid-template-columns:minmax(0,1.15fr) minmax(0,1.05fr) minmax(0,.95fr) auto; box-shadow:0 14px 35px #00000018; }
body.als-designed-directory .als-directory__field { min-width:0; }
body.als-designed-directory .als-directory__field label { color:var(--als-d-ink); font-size:13px; margin-bottom:9px; }
body.als-designed-directory .als-directory :is(input,select) { background-color:var(--als-d-field); color:var(--als-d-ink); border:1px solid var(--als-color-control); height:52px; font-size:15px; border-radius:9px; }
body.als-designed-directory .als-directory input::placeholder { color:var(--als-color-muted); opacity:1; }
body.als-designed-directory .als-directory :is(input,select):focus { background-color:var(--als-color-raised); border-color:var(--als-color-focus); box-shadow:none; outline:2px solid var(--als-color-focus); outline-offset:2px; }
body.als-designed-directory .als-directory__control svg { stroke:var(--als-color-muted); }
body.als-designed-directory .als-directory select { background-image:linear-gradient(45deg,transparent 50%,var(--als-color-muted) 50%),linear-gradient(135deg,var(--als-color-muted) 50%,transparent 50%); }
body.als-designed-directory .als-directory select option { background:var(--als-d-field); color:var(--als-d-ink); }
body.als-designed-directory .als-directory button { height:52px; min-width:150px; padding:0 22px; border:1px solid var(--als-d-blue); border-radius:999px; background:var(--als-d-blue); color:var(--als-color-heading); font-size:14px; }
body.als-designed-directory .als-directory button:hover { background:var(--als-color-primary-hover); color:var(--als-color-heading); border-color:var(--als-color-focus); transform:none; }
body.als-designed-directory .als-directory button:focus-visible { background:var(--als-color-primary-hover); color:var(--als-color-heading); }
body.als-designed-directory .als-directory__trust { flex-wrap:wrap; flex-direction:row; gap:10px 26px; margin-top:18px; }
body.als-designed-directory .als-directory__trust span { color:var(--als-d-muted); font-size:12px; }
body.als-designed-directory .als-directory__trust i { background:var(--als-color-focus); box-shadow:none; }

/* Results, no-match, unavailable and pagination states. */
body.als-designed-directory .als-results { color:var(--als-d-ink); margin-top:30px; margin-bottom:34px; }
body.als-designed-directory .als-results__header { margin-bottom:20px; }
body.als-designed-directory .als-results__header span { color:var(--als-d-link); font-size:12px; }
body.als-designed-directory .als-results__header h3 { color:var(--als-d-ink); font-size:28px; }
body.als-designed-directory .als-results__message { background:var(--als-d-panel); color:var(--als-d-copy); border:1px solid var(--als-d-line); border-left:3px solid var(--als-color-focus); border-radius:14px; padding:26px 28px; }
body.als-designed-directory .als-results__message h3 { color:var(--als-d-ink); font-size:25px; line-height:1.3; margin:0; }
body.als-designed-directory .als-results__message p { color:var(--als-d-muted); font-size:15px; line-height:1.6; }
body.als-designed-directory .als-results__message--error { background:var(--als-color-warning); border-color:var(--als-color-warning-border); color:var(--als-color-warning-text); }
body.als-designed-directory .als-results__grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
body.als-designed-directory .als-agent-card { background:var(--als-d-panel); border:1px solid var(--als-d-line); color:var(--als-d-copy); border-radius:16px; padding:24px; box-shadow:none; }
body.als-designed-directory .als-agent-card::before { background:var(--als-color-control); }
body.als-designed-directory :is(.als-agent-card--standard,.als-agent-card--featured)::before { background:var(--als-color-focus); }
body.als-designed-directory .als-agent-card__level { color:var(--als-d-muted); font-size:11px; }
body.als-designed-directory .als-agent-card__featured { background:var(--als-color-raised); color:var(--als-color-link); border-color:var(--als-color-control); font-size:10px; }
body.als-designed-directory .als-agent-card h4 { color:var(--als-d-ink); font-size:23px; overflow-wrap:anywhere; }
body.als-designed-directory .als-agent-card__identity { min-width:0; }
body.als-designed-directory .als-agent-card__identity > div { min-width:0; }
body.als-designed-directory .als-agent-card__identity p { color:var(--als-d-muted); font-size:14px; }
body.als-designed-directory .als-agent-card__initial { background:var(--als-color-raised); color:var(--als-color-heading); border-color:var(--als-color-control); }
body.als-designed-directory .als-agent-card__identity img { border-color:var(--als-color-control); }
body.als-designed-directory .als-agent-card__details { border-color:var(--als-d-line); }
body.als-designed-directory .als-agent-card__details p { color:var(--als-d-copy); font-size:14px; overflow-wrap:anywhere; }
body.als-designed-directory .als-agent-card__details strong { color:var(--als-d-muted); font-size:11px; }
body.als-designed-directory .als-agent-card__summary { color:var(--als-d-copy); font-size:14px; }
body.als-designed-directory .als-agent-card__actions { gap:10px; }
body.als-designed-directory .als-agent-card__actions a { border:1px solid var(--als-color-control); border-radius:999px; font-size:13px; line-height:1.4; min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding:10px 16px; background:var(--als-d-raised); color:var(--als-color-heading); }
body.als-designed-directory .als-agent-card__actions a.als-agent-card__profile { background:var(--als-d-blue); border-color:var(--als-d-blue); color:var(--als-color-heading); }
body.als-designed-directory .als-agent-card__actions a.als-agent-card__secondary { background:var(--als-d-raised); color:var(--als-d-copy); }
body.als-designed-directory .als-agent-card__actions a:hover { background:var(--als-color-hover); color:var(--als-color-heading); border-color:var(--als-color-control-hover); transform:none; }
body.als-designed-directory .als-agent-card__actions a.als-agent-card__profile:hover { background:var(--als-color-primary-hover); color:var(--als-color-heading); }
body.als-designed-directory .als-agent-card__actions span { color:var(--als-d-muted); font-size:12px; }
body.als-designed-directory .als-results__pagination :is(a,span) { background:var(--als-d-panel); border:1px solid var(--als-color-control); color:var(--als-color-text); min-width:44px; min-height:44px; border-radius:9px; }
body.als-designed-directory .als-results__pagination .current { background:var(--als-d-blue); color:var(--als-color-heading); border-color:var(--als-d-blue); }
body.als-designed-directory .als-results__pagination a:hover { background:var(--als-color-hover); color:var(--als-color-heading); }

/* Supporting information stays quieter than the search. */
body.als-designed-directory .als-section { background:var(--als-d-page); color:var(--als-d-copy); }
body.als-designed-directory .als-access { background:transparent; border:0; border-top:1px solid var(--als-d-line); border-radius:0; padding:30px 0 0; margin-top:32px; margin-bottom:38px; box-shadow:none; }
body.als-designed-directory .als-access .als-access__eyebrow { color:var(--als-d-link); font-size:11px; }
body.als-designed-directory .als-access h2.als-access__title { color:var(--als-d-ink); font-size:28px; }
body.als-designed-directory .als-access .als-access__intro { color:var(--als-d-muted); font-size:15px; margin:12px 0 22px; }
body.als-designed-directory .als-access .als-access__cards { gap:20px; }
body.als-designed-directory .als-access .als-access__card { background:var(--als-d-panel); border:1px solid var(--als-d-line); padding:24px; border-radius:14px; }
body.als-designed-directory .als-access .als-access__card::before { display:none; }
body.als-designed-directory .als-access .als-access__icon { background-color:var(--als-color-text); border-color:var(--als-color-muted); width:38px; height:38px; flex-basis:38px; background-size:25px 25px; border-radius:10px; margin-bottom:16px; }
body.als-designed-directory .als-access .als-access__card--expanded .als-access__icon { background-color:var(--als-color-hover); border-color:var(--als-color-control); }
body.als-designed-directory .als-access .als-access__card h3 { color:var(--als-d-ink); font-size:22px; margin-bottom:10px; }
body.als-designed-directory .als-access .als-access__card p { color:var(--als-d-copy); font-size:15px; line-height:1.7; }

/* Profile and claim screens inherit the same dark surfaces. */
/* The legacy profile rule hides a shortcode rendered directly in entry-content. */
body.als-designed-directory.als-public-profile-view .entry-content > .als-profile { display:block!important; }
body.als-designed-directory .als-profile { color:var(--als-d-copy); }
body.als-designed-directory .als-profile__back { color:var(--als-d-link); min-height:44px; }
body.als-designed-directory .als-profile__back:hover { color:var(--als-color-heading); }
body.als-designed-directory .als-profile__card { background:var(--als-d-raised); border-color:var(--als-d-line); box-shadow:none; }
body.als-designed-directory .als-profile__initial { background:var(--als-color-raised); }
body.als-designed-directory .als-profile__claim-open { background:var(--als-d-blue); color:var(--als-color-heading); border:1px solid var(--als-color-focus); border-radius:999px; min-height:44px; }
body.als-designed-directory .als-profile__claim-open:hover { background:var(--als-color-primary-hover); color:var(--als-color-heading); }
body.als-designed-directory .als-profile__claimed { background:var(--als-color-raised); border-color:var(--als-color-control); color:var(--als-color-text); }
body.als-designed-directory .als-profile__layout { background:var(--als-d-panel); }
body.als-designed-directory .als-profile__section-heading h4 { color:var(--als-d-ink); }
body.als-designed-directory .als-profile__section-heading p { color:var(--als-d-link); }
body.als-designed-directory .als-profile__summary { color:var(--als-d-copy); }
body.als-designed-directory .als-profile__sidebar { background:var(--als-d-field); border-color:var(--als-d-line); }
body.als-designed-directory .als-profile__sidebar-label { color:var(--als-d-link); }
body.als-designed-directory .als-profile__sidebar > div { border-color:var(--als-d-line); }
body.als-designed-directory .als-profile__sidebar strong { color:var(--als-d-muted); }
body.als-designed-directory .als-profile__sidebar span { color:var(--als-d-copy); }
body.als-designed-directory .als-profile__contact a { background:var(--als-d-blue); color:var(--als-color-heading); border:1px solid var(--als-color-focus); border-radius:999px; min-height:44px; }
body.als-designed-directory .als-profile__contact a.als-profile__secondary { background:var(--als-d-raised); color:var(--als-color-heading); border-color:var(--als-color-control); }
body.als-designed-directory .als-profile__contact a:hover { background:var(--als-color-primary-hover); color:var(--als-color-heading); }
body.als-designed-directory .als-profile__private { background:var(--als-d-field); border-color:var(--als-d-line); }
body.als-designed-directory .als-profile__private > span { background:var(--als-color-raised); color:var(--als-color-heading); }
body.als-designed-directory .als-profile__private strong { color:var(--als-d-ink); }
body.als-designed-directory .als-profile__private p { color:var(--als-d-muted); }
body.als-designed-directory .als-claim { background:var(--als-d-panel); color:var(--als-d-copy); border-color:var(--als-d-line); box-shadow:none; }
body.als-designed-directory .als-claim__heading h4 { color:var(--als-d-ink); }
body.als-designed-directory .als-claim__heading p { color:var(--als-d-link); }
body.als-designed-directory .als-claim__intro { color:var(--als-d-copy); }
body.als-designed-directory .als-claim label > span { color:var(--als-d-copy); }
body.als-designed-directory .als-claim :is(input[type=text],input[type=email],input[type=tel],input[type=password],textarea) { background:var(--als-d-field); color:var(--als-d-ink); border-color:var(--als-color-control); }
body.als-designed-directory .als-claim :is(input,textarea)::placeholder { color:var(--als-d-muted); opacity:1; }
body.als-designed-directory .als-claim__confirm span { color:var(--als-d-copy)!important; }
body.als-designed-directory .als-claim__close { background:var(--als-color-raised); color:var(--als-color-heading); min-width:44px; min-height:44px; }
body.als-designed-directory .als-claim__submit { background:var(--als-d-blue); color:var(--als-color-heading); min-height:44px; border-radius:999px; }
body.als-designed-directory .als-claim__submit:hover:not(:disabled) { background:var(--als-color-primary-hover); color:var(--als-color-heading); }
body.als-designed-directory .als-claim__message { color:var(--als-color-link); }
body.als-designed-directory .als-claim__message--error { color:var(--als-color-warning-text); }
body.als-designed-directory :is(.als-claim__verify,.als-claim__complete) { background:var(--als-d-field); border-color:var(--als-d-line); color:var(--als-d-copy); }
body.als-designed-directory .als-claim__complete :is(h4,p) { color:var(--als-d-copy); }
body.als-designed-directory .als-claim__complete a { color:var(--als-d-link); }
body.als-designed-directory .als-claim__complete a:hover { color:var(--als-color-heading); }

@media(max-width:1080px) {
 body.als-designed-directory .als-directory__form { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.als-designed-directory .als-results__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
 body.als-designed-directory .als-directory { margin-top:26px; padding-top:8px; }
 body.als-designed-directory .als-directory__form { padding:20px; }
 body.als-designed-directory .als-directory :is(input,select) { font-size:16px; }
 body.als-designed-directory .als-access .als-access__cards { grid-template-columns:1fr; }
 body.als-designed-directory .als-brand-tagline { display:none; }
}
@media(max-width:600px) {
 body.als-designed-directory .als-brand-header .als-brand-inner { flex-direction:column; align-items:flex-start; gap:12px; }
 body.als-designed-directory .als-brand-header .als-logo { width:88px; }
 body.als-designed-directory .als-brand-nav { width:100%; justify-content:flex-start; gap:8px 12px; }
 body.als-designed-directory .als-brand-nav a { min-height:44px; display:inline-flex; align-items:center; font-size:13px; }
 body.als-designed-directory .als-brand-staging { display:none; }
 body.als-designed-directory .als-brand-nav .als-brand-portal { padding:9px 12px; gap:8px; }
 body.als-designed-directory .als-brand-nav .als-brand-portal span { display:none; }
 body.als-designed-directory .als-directory__form { grid-template-columns:minmax(0,1fr); padding:18px; gap:18px; }
 body.als-designed-directory .als-directory button { width:100%; }
 body.als-designed-directory .als-directory__trust { gap:10px 18px; }
 body.als-designed-directory .als-results__grid { grid-template-columns:minmax(0,1fr); }
 body.als-designed-directory .als-results__message { padding:23px 20px; }
 body.als-designed-directory .als-results__message h3 { font-size:22px; }
 body.als-designed-directory .als-access h2.als-access__title { font-size:25px; }
 body.als-designed-directory .als-access .als-access__card { padding:22px; }
 body.als-designed-directory .als-brand-footer .als-brand-inner { align-items:flex-start; }
}
@media(prefers-reduced-motion:reduce) { body.als-designed-directory :is(a,button) { transition:none; } }
