/* ==========================================================================
   Location landing pages (template-location.php)
   Region + city SEO pages. Reuses the directory .etm-rcard / .etm-stars /
   .etm-vbadge rules from the plugin's etm.css — this file only adds the
   page-level chrome (hero, copy blocks, CTA, region links, empty state).
   Brand: navy #121417 / navy2 #1E2228 / teal #E01E26 / line #E6E8EC.
   ========================================================================== */

.etm-loc-hero{
  background:linear-gradient(135deg,#121417 0%,#1E2228 100%);
  color:#fff;padding:56px 0 48px;
}
.etm-loc-hero .wrap{max-width:1520px;margin:0 auto;padding:0 24px;}
.etm-loc-crumbs{font-size:13.5px;color:rgba(255,255,255,.72);margin-bottom:18px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.etm-loc-crumbs a{color:rgba(255,255,255,.78);text-decoration:none;}
.etm-loc-crumbs a:hover{color:#E01E26;}
.etm-loc-crumbs span{opacity:.55;}
.etm-loc-crumb-cur{color:#fff;font-weight:600;}
.etm-loc-hero h1{font-size:40px;line-height:1.08;font-weight:900;letter-spacing:-.8px;margin:0 0 16px;color:#fff;}
.etm-loc-intro{font-size:18px;line-height:1.6;max-width:760px;margin:0 0 26px;color:rgba(255,255,255,.9);}
.etm-loc-hero-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.etm-loc-hero-actions .etm-btn-teal{background:#E01E26;color:#fff;font-weight:800;border-radius:10px;padding:13px 24px;display:inline-flex;align-items:center;gap:8px;text-decoration:none;}
.etm-loc-hero-actions .etm-btn-teal svg{width:18px;height:18px;}
.etm-loc-hero-actions .etm-btn-teal:hover{filter:brightness(.96);}
.etm-loc-hero-count{font-size:14px;color:rgba(255,255,255,.8);font-weight:600;}

.etm-loc-wrap{max-width:1520px;margin:0 auto;padding:48px 24px 8px;}
.etm-loc-listing>h2,.etm-loc-copy>h2,.etm-loc-regions>h2{
  font-size:26px;font-weight:800;letter-spacing:-.4px;color:#121417;margin:0 0 22px;
}

/* The plugin's .etm-rcard rules live in etm.css; we only need the wrapper to
   not impose the dir2 max-width here. */
.etm-loc-listing .etm-dir2{max-width:none;}
.etm-dir2-searchbar{margin:0 0 20px;}
.etm-dir2-search{border:2px solid #cbd5e1;box-shadow:none;}
.etm-dir2-search:focus-within{border-color:#E01E26;box-shadow:none;}
.etm-loc-dir .etm-dir2-fcard-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #E6E8EC;}
.etm-loc-dir .etm-dir2-fcard-head h3{margin:0;padding:0;border:0;}
.etm-loc-dir .etm-dir2-fcard-head .etm-dir2-clear{margin:0;white-space:nowrap;}
.etm-loc-dir .etm-pillset{display:flex;flex-wrap:wrap;gap:8px;max-height:260px;overflow:auto;padding-right:2px;}
.etm-loc-dir .etm-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #E6E8EC;border-radius:999px;background:#fff;color:#1E2228;padding:7px 10px;font-size:12.5px;font-weight:700;line-height:1.2;cursor:pointer;transition:border-color .15s,background .15s,color .15s;}
.etm-loc-dir .etm-pill input{position:absolute;opacity:0;pointer-events:none;}
.etm-loc-dir .etm-pill svg{width:14px;height:14px;flex:none;color:#E01E26;}
.etm-loc-dir .etm-pill.is-on{border-color:rgba(224,30,38,.42);background:rgba(224,30,38,.08);color:#121417;}
.etm-loc-dir .etm-pill:hover{border-color:rgba(224,30,38,.5);}
.etm-loc-dir .etm-dir2-sidecta{background:#121417;border:1px solid #1E2228;border-radius:14px;padding:20px;color:#fff;}
.etm-loc-dir .etm-dir2-sidecta h3{font-size:15px;font-weight:800;color:#fff;margin:0 0 12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.14);}
.etm-loc-dir .etm-dir2-sidecta p{font-size:13.5px;line-height:1.55;color:rgba(255,255,255,.82);margin:0 0 16px;}
.etm-loc-dir .etm-dir2-sidecta .etm-btn-teal{background:#E01E26;color:#fff;}
.etm-loc-dir .etm-dir2-results{min-width:0;}

.etm-loc-empty{
  text-align:center;background:#f6f8fc;border:1px solid #E6E8EC;border-radius:16px;
  padding:48px 28px;max-width:680px;margin:0 auto;
}
.etm-loc-empty .etm-loc-empty-svg{width:42px;height:42px;color:#E01E26;margin-bottom:14px;}
.etm-loc-empty p{margin:0 0 12px;color:#475569;font-size:15.5px;line-height:1.6;}
.etm-loc-empty strong{color:#1F2937;}
.etm-loc-empty .etm-btn-teal{margin-top:8px;background:#E01E26;color:#fff;font-weight:800;border-radius:10px;padding:12px 24px;display:inline-flex;gap:8px;align-items:center;text-decoration:none;}
.etm-loc-empty .etm-btn-teal svg{width:18px;height:18px;}

.etm-loc-copy{margin:46px 0;border-top:1px solid #E6E8EC;padding-top:40px;}
.etm-loc-copy p{font-size:16px;line-height:1.75;color:#334155;max-width:820px;margin:0 0 18px;}
.etm-loc-copy h2,.etm-loc-copy h3{clear:both;margin-top:32px;margin-bottom:12px;line-height:1.2;}
.etm-loc-copy ul,.etm-loc-copy ol{max-width:820px;margin:0 0 20px;padding-left:22px;list-style-position:outside;}
.etm-loc-copy li{padding-left:4px;margin:7px 0;line-height:1.65;color:#334155;}

.etm-loc-cta{margin:48px 0;}
.etm-loc-cta-inner{
  background:linear-gradient(135deg,#121417 0%,#1E2228 100%);
  border-radius:20px;padding:48px 44px;text-align:center;color:#fff;
  position:relative;overflow:hidden;
}
.etm-loc-cta-inner::after{
  content:"";position:absolute;right:-60px;top:-60px;width:240px;height:240px;
  background:radial-gradient(circle,rgba(224,30,38,.28),transparent 70%);
}
.etm-loc-cta-inner h2{font-size:28px;font-weight:900;letter-spacing:-.5px;margin:0 0 14px;color:#fff;position:relative;}
.etm-loc-cta-inner p{font-size:16.5px;line-height:1.65;max-width:680px;margin:0 auto 26px;color:rgba(255,255,255,.88);position:relative;}
.etm-loc-cta-inner .etm-btn-lg{background:#E01E26;color:#fff;font-weight:800;font-size:16px;border-radius:12px;padding:15px 30px;display:inline-flex;align-items:center;gap:9px;text-decoration:none;position:relative;}
.etm-loc-cta-inner .etm-btn-lg svg{width:20px;height:20px;}
.etm-loc-cta-inner .etm-btn-lg:hover{filter:brightness(.96);}

.etm-loc-regions{margin:48px 0 8px;border-top:1px solid #E6E8EC;padding-top:40px;}
.etm-loc-regions ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.etm-loc-regions li a{
  display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #E6E8EC;
  border-radius:11px;padding:14px 16px;color:#121417;font-weight:600;font-size:14.5px;
  text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;
}
.etm-loc-regions li a:hover{border-color:rgba(224,30,38,.55);box-shadow:0 8px 22px rgba(18,20,23,.07);transform:translateY(-1px);}
.etm-loc-regions li a svg{width:16px;height:16px;color:#E01E26;flex:none;}

@media(max-width:960px){
  .etm-loc-regions ul{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:680px){
  .etm-loc-hero{padding:40px 0 34px;}
  .etm-loc-hero h1{font-size:30px;}
  .etm-loc-intro{font-size:16px;}
  .etm-loc-cta-inner{padding:36px 24px;}
  .etm-loc-cta-inner h2{font-size:23px;}
  .etm-loc-regions ul{grid-template-columns:1fr;}
}
