/* ADU Contractor Directory — fleet register: navy #0A1E3C / gold #FFC527,
   white cards on a light background, mobile-first, >=44px tap targets. */
:root{
  --adu-navy:#0A1E3C; --adu-gold:#FFC527; --adu-bg:#F4F7FB; --adu-ink:#1c2733;
  --adu-muted:#5a6a7a; --adu-line:#d9e2ec; --adu-radius:10px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:var(--adu-bg);color:var(--adu-ink);line-height:1.5}
a{color:var(--adu-navy)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--adu-gold);outline-offset:2px}
.adu-wrap{max-width:1120px;margin:0 auto;padding:0 16px}
.adu-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Top bar */
.adu-topbar{background:var(--adu-navy);color:#fff}
.adu-topbar-in{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;padding-top:10px;padding-bottom:10px}
.adu-brand{color:#fff;text-decoration:none;font-weight:800;letter-spacing:.04em;font-size:1.05rem;min-height:44px;display:inline-flex;align-items:center}
.adu-brand span{color:var(--adu-gold);font-weight:600;letter-spacing:0;margin-left:8px;font-size:.92rem}
.adu-topnav{margin-left:auto;display:flex;flex-wrap:wrap;gap:4px 16px;align-items:center}
.adu-topnav a{color:#fff;text-decoration:none;padding:10px 2px;min-height:44px;display:inline-flex;align-items:center;font-size:.95rem}
.adu-topnav a.adu-topcall{color:var(--adu-gold);font-weight:700}

/* Main */
.adu-main{padding:20px 0 40px}
h1{color:var(--adu-navy);font-size:1.7rem;line-height:1.2;margin:.2em 0 .5em}
h2{color:var(--adu-navy);font-size:1.25rem;margin:0 0 12px}
.adu-lede{font-size:1.05rem;max-width:70ch}
.adu-city-note{max-width:75ch}
.adu-count-line{font-weight:600;color:var(--adu-navy)}
.adu-src-line{font-size:.85rem;color:var(--adu-muted);margin-top:24px}
.adu-section{margin-top:28px}

/* Hero + search */
.adu-hero{background:var(--adu-navy);color:#fff;border-radius:var(--adu-radius);padding:24px 20px;margin-bottom:20px}
.adu-hero h1{color:#fff;margin-top:0}
.adu-hero-sub{max-width:72ch;color:#dbe4f0}
.adu-hero-note{font-size:.88rem;color:#b9c7d9;margin:10px 0 0}
.adu-search-wrap{position:relative;max-width:680px}
/* Trade filter (v1.1.0) — select + button on one row, wraps on mobile */
.adu-filter-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:12px 0}
.adu-filter-form label{font-weight:700;color:var(--adu-navy)}
.adu-filter-form select{min-height:48px;padding:10px 12px;font-size:1rem;border:2px solid var(--adu-line);border-radius:8px;background:#fff;color:var(--adu-ink)}
.adu-search-form{display:flex;gap:8px}
.adu-search-form input[type="search"]{flex:1;min-height:48px;padding:10px 14px;font-size:1rem;border:2px solid var(--adu-line);border-radius:8px;background:#fff;color:var(--adu-ink)}
.adu-suggest{position:absolute;left:0;right:0;top:calc(100% + 4px);background:#fff;border:1px solid var(--adu-line);border-radius:8px;box-shadow:0 10px 30px rgba(10,30,60,.18);z-index:50;overflow:hidden}
.adu-suggest a{display:flex;align-items:center;min-height:44px;padding:10px 14px;color:var(--adu-ink);text-decoration:none;border-top:1px solid var(--adu-line)}
.adu-suggest a:first-child{border-top:none}
.adu-suggest a:hover,.adu-suggest a:focus{background:var(--adu-bg)}
.adu-suggest .adu-suggest-kind{font-size:.72rem;font-weight:700;letter-spacing:.06em;color:var(--adu-muted);text-transform:uppercase;margin-right:10px;flex:none}

/* Buttons — all >=44px tall */
.adu-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border-radius:8px;font-weight:700;font-size:.98rem;text-decoration:none;border:2px solid transparent;cursor:pointer}
.adu-btn-gold{background:var(--adu-gold);color:var(--adu-navy);border-color:var(--adu-gold)}
.adu-btn-call{background:var(--adu-navy);color:#fff;border-color:var(--adu-navy)}
.adu-btn-outline{background:#fff;color:var(--adu-navy);border-color:var(--adu-navy)}
.adu-btn-light{background:transparent;color:#fff;border-color:#fff}
.adu-actions{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}

/* Verification strip */
.adu-verify{display:grid;gap:12px;margin:0 0 20px}
.adu-verify-step{background:#fff;border-top:4px solid var(--adu-gold);border-radius:var(--adu-radius);padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.adu-verify-step strong{color:var(--adu-navy)}
.adu-verify-step span{font-size:.93rem;color:var(--adu-muted)}
@media (min-width:760px){.adu-verify{grid-template-columns:repeat(3,1fr)}}

/* Featured card */
.adu-featured{position:relative;background:var(--adu-navy);color:#fff;border:2px solid var(--adu-gold);border-radius:var(--adu-radius);padding:20px;margin:20px 0}
.adu-featured-label{display:inline-block;background:var(--adu-gold);color:var(--adu-navy);font-weight:800;font-size:.78rem;letter-spacing:.08em;padding:4px 10px;border-radius:999px;margin-bottom:10px}
.adu-featured-name{font-size:1.45rem;font-weight:800;margin:0 0 2px}
.adu-featured h1{color:#fff;font-size:1.6rem;margin:0 0 4px}
.adu-featured-tag{margin:0 0 6px;color:#dbe4f0}
.adu-featured-lic{font-weight:700;color:var(--adu-gold);margin:0 0 6px}
.adu-featured-area{margin:0;color:#dbe4f0;max-width:65ch}
.adu-featured .adu-actions{margin-bottom:0}

/* Cards + grids */
.adu-grid{display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:640px){.adu-grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:980px){.adu-grid{grid-template-columns:repeat(3,1fr)}}
.adu-county-card{display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid var(--adu-line);border-radius:var(--adu-radius);padding:16px;text-decoration:none;color:var(--adu-ink);min-height:44px}
.adu-county-card:hover{border-color:var(--adu-navy)}
.adu-county-name{font-weight:800;color:var(--adu-navy);font-size:1.08rem}
.adu-county-count{color:var(--adu-muted);font-size:.92rem}
.adu-county-go{color:var(--adu-navy);font-weight:700;margin-top:6px}
.adu-list{display:grid;gap:12px;grid-template-columns:1fr}
@media (min-width:860px){.adu-list{grid-template-columns:repeat(2,1fr)}}
.adu-card{background:#fff;border:1px solid var(--adu-line);border-left:5px solid var(--adu-navy);border-radius:var(--adu-radius);padding:16px}
.adu-card-name{margin:0 0 2px;font-size:1.12rem}
.adu-card-name a{color:var(--adu-navy);text-decoration:none}
.adu-card-name a:hover{text-decoration:underline}
.adu-card-dba{margin:0 0 2px;color:var(--adu-muted);font-size:.92rem}
.adu-card-meta{margin:0 0 8px;color:var(--adu-muted);font-size:.92rem}
.adu-classes{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 6px}
.adu-chip{display:inline-flex;align-items:center;min-height:26px;padding:2px 9px;border:1.5px solid var(--adu-navy);border-radius:999px;color:var(--adu-navy);font-size:.8rem;font-weight:700}
.adu-card .adu-actions{margin-bottom:0}

/* Breadcrumbs */
.adu-crumbs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.9rem;margin-bottom:8px}
.adu-crumbs a{color:var(--adu-navy);padding:6px 0;min-height:32px;display:inline-flex;align-items:center}
.adu-crumb-sep{color:var(--adu-muted)}

/* Profile */
.adu-status-badge{display:inline-block;background:#E6F4EA;color:#14532d;font-weight:700;padding:8px 12px;border-radius:8px;margin:6px 0 4px}
.adu-profile-also{color:var(--adu-muted);margin:0}
.adu-facts{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--adu-line);border-radius:var(--adu-radius);overflow:hidden;margin:14px 0}
.adu-facts th,.adu-facts td{text-align:left;padding:12px 14px;border-top:1px solid var(--adu-line);vertical-align:top}
.adu-facts tr:first-child th,.adu-facts tr:first-child td{border-top:none}
.adu-facts th{width:34%;color:var(--adu-navy);background:#eef3f9;font-weight:700}
.adu-fact-note{display:block;font-size:.85rem;color:var(--adu-muted);margin-top:2px}
.adu-claim{background:#fff;border:1px dashed var(--adu-navy);border-radius:var(--adu-radius);padding:14px 16px}
.adu-gallery{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin:16px 0}
.adu-gallery img{width:100%;height:180px;object-fit:cover;border-radius:var(--adu-radius)}
.adu-narrative{max-width:78ch}
.adu-search-note{background:#fff;border-left:5px solid var(--adu-gold);padding:12px 16px;border-radius:6px;max-width:75ch}

/* Pagination */
.adu-pagination{display:flex;align-items:center;gap:14px;margin-top:20px;flex-wrap:wrap}
.adu-page-xofy{font-weight:600;color:var(--adu-navy)}

/* Footer */
.adu-footer{margin-top:40px;background:#eef3f9;color:var(--adu-muted);font-size:.9rem;padding:22px 0 0}
.adu-footer a{color:var(--adu-navy)}
.adu-foot-links{margin-bottom:18px}
.adu-credit{background:var(--adu-navy);border-top:3px solid var(--adu-gold);color:#fff;text-align:center;padding:14px 16px}
.adu-credit p{margin:0}
.adu-credit a{color:var(--adu-gold);text-decoration:none}
.adu-copy{background:var(--adu-navy);color:#b9c7d9;text-align:center;font-size:.85rem;margin:0;padding:0 16px 14px}

/* Sticky mobile Call/Text bar (fleet standard) */
.adu-mobilebar{display:none}
@media (max-width:860px){
  body{padding-bottom:58px}
  .adu-mobilebar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:999;box-shadow:0 -2px 10px rgba(10,30,60,.25)}
  .adu-mobilebar a{flex:1;display:flex;align-items:center;justify-content:center;min-height:58px;font-weight:800;text-decoration:none;font-size:1rem}
  .adu-mobilebar-call{background:var(--adu-navy);color:#fff}
  .adu-mobilebar-text{background:var(--adu-gold);color:var(--adu-navy)}
  .adu-topnav a:not(.adu-topcall){display:none}
  h1{font-size:1.45rem}
  .adu-search-form{flex-direction:column}
  .adu-search-form .adu-btn{width:100%}
  .adu-facts th{width:42%}
}
