/* Australian Tea Directory — scoped styles.
   Brand: Australian Tea Masters (#00594B teal, #F2F0EA cream, #24272D ink, #EFBC60 gold).
   Fonts: 'Rey Primary' (site theme font) with Inter fallback.
   Design language: neo-minimalist bento cards, pill buttons, frosted search, micro-labels. */

.atd-wrap{
  --atd-brand:#00594B;
  --atd-brand-dark:#00443A;
  --atd-ink:#24272d;
  --atd-cream:#F2F0EA;
  --atd-gold:#EFBC60;
  --atd-border:rgba(36,39,45,.10);
  --atd-border-strong:rgba(36,39,45,.18);
  --atd-muted:#6b7280;
  --atd-muted-2:#9ca3af;
  --atd-surface:#ffffff;
  --atd-radius:16px;
  --atd-ff:'Rey Primary','Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-family:var(--atd-ff);
  color:var(--atd-ink);
  max-width:1200px;
  margin:0 auto;
  padding:0 20px 72px;
  line-height:1.55;
  font-size:16px;
}
.atd-wrap *,.atd-wrap *::before,.atd-wrap *::after{box-sizing:border-box;}
.atd-wrap :focus-visible{outline:2px solid var(--atd-brand);outline-offset:2px;border-radius:6px;}

/* Hero + search */
.atd-hero{text-align:center;padding:56px 8px 26px;}
.atd-eyebrow{font-size:12px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--atd-brand);margin:0 0 14px;}
.atd-hero-title{font-size:clamp(34px,5vw,54px);font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 14px;color:var(--atd-ink);}
.atd-hero-sub{max-width:58ch;margin:0 auto 30px;color:var(--atd-muted);font-size:17px;}
.atd-search{max-width:860px;margin:0 auto;background:rgba(255,255,255,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border:1px solid var(--atd-border);border-radius:20px;padding:16px;box-shadow:0 14px 40px rgba(36,39,45,.08);}
.atd-search-row{display:flex;gap:10px;}
.atd-search-row input[type=search]{flex:1;min-width:0;border:1px solid var(--atd-border-strong);border-radius:999px;
  padding:13px 22px;font:inherit;font-size:16px;background:#fff;color:var(--atd-ink);}
.atd-search-row input[type=search]::placeholder{color:var(--atd-muted-2);}
.atd-search-filters{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:14px;}
.atd-field{display:flex;flex-direction:column;gap:5px;text-align:left;}
.atd-field-label{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--atd-muted-2);}
.atd-field select,.atd-field input[type=text]{border:1px solid var(--atd-border-strong);border-radius:12px;padding:10px 14px;
  font:inherit;font-size:15px;background:#fff;color:var(--atd-ink);width:100%;}

/* Buttons */
.atd-btn{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:13px 28px;
  font:inherit;font-size:14px;font-weight:700;letter-spacing:.02em;cursor:pointer;text-decoration:none;
  transition:background-color .2s ease,color .2s ease,transform .2s ease;}
.atd-btn--primary{background:var(--atd-brand);color:#fff;}
.atd-btn--primary:hover{background:var(--atd-brand-dark);transform:translateY(-1px);}
.atd-btn--ghost{background:transparent;color:var(--atd-brand);box-shadow:inset 0 0 0 1.5px var(--atd-border-strong);}
.atd-btn--ghost:hover{box-shadow:inset 0 0 0 1.5px var(--atd-brand);color:var(--atd-brand-dark);}

/* Category cards */
.atd-cats{padding:30px 0 8px;}
.atd-section-title{font-size:clamp(22px,3vw,30px);font-weight:800;letter-spacing:-.01em;margin:0 0 20px;color:var(--atd-ink);}
.atd-cats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.atd-cat-card{display:flex;flex-direction:column;gap:8px;text-align:left;background:var(--atd-surface);
  border:1px solid var(--atd-border);border-radius:var(--atd-radius);padding:24px 22px;text-decoration:none;color:inherit;
  box-shadow:0 1px 2px rgba(36,39,45,.04);transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease;}
.atd-cat-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(36,39,45,.12);border-color:var(--atd-border-strong);}
.atd-cat-icon{width:52px;height:52px;border-radius:14px;background:var(--atd-cream);color:var(--atd-brand);
  display:flex;align-items:center;justify-content:center;margin-bottom:6px;}
.atd-cat-name{font-size:19px;font-weight:700;letter-spacing:-.01em;}
.atd-cat-desc{font-size:14px;color:var(--atd-muted);}
.atd-cat-count{margin-top:auto;padding-top:8px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--atd-muted-2);}

/* Listing cards */
.atd-listings{padding:34px 0 10px;}
.atd-listings-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:20px;}
.atd-result-count{font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--atd-muted-2);}
.atd-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;min-height:120px;}
.atd-card{background:var(--atd-surface);border:1px solid var(--atd-border);border-radius:var(--atd-radius);
  box-shadow:0 1px 2px rgba(36,39,45,.04);transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease;}
.atd-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(36,39,45,.12);border-color:var(--atd-border-strong);}
.atd-card-link{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit;padding:20px;}
.atd-card-media{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;min-height:56px;}
.atd-card-logo{width:56px;height:56px;border-radius:12px;object-fit:contain;background:var(--atd-cream);border:1px solid var(--atd-border);}
.atd-card-logo--initial{display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;color:var(--atd-brand);}
.atd-badges{display:flex;flex-direction:column;gap:5px;align-items:flex-end;}
.atd-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  border-radius:999px;padding:4px 10px;}
.atd-badge--featured{background:var(--atd-gold);color:#4a3208;}
.atd-badge--verified{background:var(--atd-brand);color:#fff;}
.atd-card-title{font-size:19px;font-weight:700;letter-spacing:-.01em;margin:0 0 4px;line-height:1.2;}
.atd-card-loc{font-size:13px;font-weight:600;color:var(--atd-brand);margin:0 0 8px;}
.atd-card-exc{font-size:14px;color:var(--atd-muted);margin:0 0 14px;}
.atd-card-terms{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;}
.atd-chip{display:inline-block;font-size:12px;font-weight:600;color:var(--atd-ink);background:var(--atd-cream);
  border-radius:999px;padding:4px 12px;text-decoration:none;}
a.atd-chip:hover{background:var(--atd-brand);color:#fff;}
.atd-card-more{margin-top:auto;font-size:13px;font-weight:700;color:var(--atd-brand);}
.atd-card:hover .atd-card-more span{transform:translateX(4px);}
.atd-card-more span{display:inline-block;transition:transform .2s ease;}

/* Empty state, footnote, pagination */
.atd-empty{grid-column:1/-1;text-align:center;padding:48px 20px;background:var(--atd-surface);
  border:1px dashed var(--atd-border-strong);border-radius:var(--atd-radius);}
.atd-empty p{color:var(--atd-muted);margin:0 0 10px;}
.atd-footnote{text-align:center;color:var(--atd-muted);font-size:14px;padding:26px 0 0;}
.atd-pagination{padding-top:30px;text-align:center;}
.atd-pagination .page-numbers{display:inline-block;padding:8px 14px;margin:0 3px;border-radius:999px;
  border:1px solid var(--atd-border);text-decoration:none;color:var(--atd-ink);font-weight:600;font-size:14px;}
.atd-pagination .page-numbers.current{background:var(--atd-brand);color:#fff;border-color:var(--atd-brand);}
.atd-pagination a.page-numbers:hover{border-color:var(--atd-brand);color:var(--atd-brand);}

/* Business profile */
.atd-breadcrumb{font-size:13px;color:var(--atd-muted-2);margin:26px 0 18px;}
.atd-breadcrumb a{color:var(--atd-muted);text-decoration:none;}
.atd-breadcrumb a:hover{color:var(--atd-brand);}
.atd-cover{border-radius:20px;overflow:hidden;border:1px solid var(--atd-border);margin-bottom:26px;}
.atd-cover-img{width:100%;height:280px;object-fit:cover;display:block;}
.atd-profile-head{display:flex;gap:24px;align-items:center;padding:8px 0 26px;border-bottom:1px solid var(--atd-border);}
.atd-profile-logo{flex:0 0 auto;}
.atd-profile-logo-img,.atd-profile-logo-fallback{width:96px;height:96px;border-radius:20px;object-fit:contain;
  background:var(--atd-cream);border:1px solid var(--atd-border);}
.atd-profile-title{font-size:clamp(28px,4vw,40px);font-weight:800;letter-spacing:-.02em;line-height:1.1;margin:0 0 6px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.atd-profile-loc{color:var(--atd-brand);font-weight:600;margin:0 0 10px;}
.atd-profile-grid{display:grid;grid-template-columns:1fr 340px;gap:32px;padding:30px 0 10px;}
.atd-profile-section{margin-bottom:34px;}
.atd-profile-section h2,.atd-side-box h3{font-size:20px;font-weight:800;letter-spacing:-.01em;margin:0 0 14px;}
.atd-profile-desc p{color:var(--atd-muted);font-size:16px;}
.atd-map iframe{width:100%;height:320px;border:1px solid var(--atd-border);border-radius:var(--atd-radius);display:block;}
.atd-side-box{background:var(--atd-surface);border:1px solid var(--atd-border);border-radius:var(--atd-radius);
  padding:20px 22px;margin-bottom:16px;}
.atd-side-box p{margin:0 0 6px;color:var(--atd-muted);}
.atd-side-box a{color:var(--atd-brand);text-decoration:none;font-weight:600;}
.atd-side-box a:hover{text-decoration:underline;}
.atd-links,.atd-hours{list-style:none;margin:0;padding:0;}
.atd-links li,.atd-hours li{padding:6px 0;border-bottom:1px solid var(--atd-border);font-size:15px;color:var(--atd-muted);}
.atd-links li:last-child,.atd-hours li:last-child{border-bottom:0;}
.atd-backlink{margin-top:34px;}

/* Responsive */
@media(max-width:1024px){
  .atd-cats-grid{grid-template-columns:repeat(2,1fr);}
  .atd-profile-grid{grid-template-columns:1fr;}
}
@media(max-width:720px){
  .atd-search-filters{grid-template-columns:repeat(2,1fr);}
  .atd-hero{padding-top:36px;}
}
@media(max-width:520px){
  .atd-cats-grid{grid-template-columns:1fr;}
  .atd-search-filters{grid-template-columns:1fr;}
  .atd-search-row{flex-direction:column;}
  .atd-profile-head{flex-direction:column;align-items:flex-start;}
}
@media(prefers-reduced-motion:reduce){
  .atd-wrap *{transition:none!important;}
}
