/* Location landing pages + homepage FAQ (AI/local SEO). Uses theme tokens so it follows light/dark. */
.loc-hero .eyebrow i{margin-right:4px}
.loc-lede{font-size:17px!important;max-width:760px!important}
.loc-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.loc-head{max-width:760px;margin-bottom:28px}
.loc-head h2,.loc-two-col h2{font-size:clamp(22px,3vw,32px);font-weight:800;letter-spacing:-.02em;margin:6px 0 0;color:var(--text)}

.loc-facts{padding-top:28px!important;padding-bottom:28px!important}
.loc-facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.loc-facts-grid div{background:var(--bg-card,var(--surface));border:1px solid var(--border);border-radius:var(--radius,14px);padding:18px;text-align:center}
.loc-facts-grid strong{display:block;font-size:24px;font-weight:800;color:var(--primary)}
.loc-facts-grid span{font-size:13px;color:var(--text-2)}

.loc-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.loc-card{background:var(--bg-card,var(--surface));border:1px solid var(--border);border-radius:var(--radius,14px);padding:24px}
.loc-card h3{font-size:17px;font-weight:700;margin:0 0 8px;color:var(--text)}
.loc-card p{font-size:15px;line-height:1.65;color:var(--text-2);margin:0}

.loc-service-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.loc-service-list a{display:block;height:100%;padding:18px;border:1px solid var(--border);border-radius:var(--radius-sm,10px);background:var(--bg-card,var(--surface));text-decoration:none;transition:border-color .15s,transform .15s}
.loc-service-list a:hover{border-color:var(--primary);transform:translateY(-2px)}
.loc-service-list strong{display:block;color:var(--text);font-size:15px;margin-bottom:4px}
.loc-service-list span{display:block;color:var(--text-2);font-size:14px;line-height:1.55}

.loc-two-col{display:grid;grid-template-columns:1fr 1fr;gap:40px}
.loc-chip-list{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-wrap:wrap;gap:10px}
.loc-chip-list li{border:1px solid var(--border);border-radius:999px;padding:8px 16px;font-size:14px;font-weight:600;color:var(--text);background:var(--bg-card,var(--surface))}
.loc-chip-links li{padding:0}
.loc-chip-links a{display:block;padding:8px 16px;color:var(--text);text-decoration:none}
.loc-chip-links a:hover{color:var(--primary)}
.loc-case-list{padding-left:18px;margin:18px 0;color:var(--text-2);line-height:1.7}
.loc-case-list strong{color:var(--text)}
.loc-link{font-weight:600;color:var(--primary)}

.loc-steps{list-style:none;counter-reset:s;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.loc-steps li{counter-increment:s;padding:20px;border:1px solid var(--border);border-radius:var(--radius,14px);background:var(--bg-card,var(--surface))}
.loc-steps li::before{content:"0" counter(s);display:block;font-weight:800;color:var(--primary);margin-bottom:8px}
.loc-steps strong{display:block;color:var(--text);margin-bottom:4px}
.loc-steps span{font-size:14px;color:var(--text-2);line-height:1.55}

.loc-faq{max-width:860px}
.loc-faq-item{border:1px solid var(--border);border-radius:var(--radius-sm,10px);background:var(--bg-card,var(--surface));margin-bottom:10px}
.loc-faq-item summary{cursor:pointer;padding:16px 20px;font-weight:700;color:var(--text);list-style:none;display:flex;justify-content:space-between;gap:16px}
.loc-faq-item summary::-webkit-details-marker{display:none}
.loc-faq-item summary::after{content:"+";font-weight:800;color:var(--primary)}
.loc-faq-item[open] summary::after{content:"–"}
.loc-faq-item p{padding:0 20px 18px;margin:0;color:var(--text-2);line-height:1.7}

.loc-final-cta{text-align:center}
.loc-final-cta h2{font-size:clamp(24px,3.4vw,36px);font-weight:800;color:var(--text)}
.loc-final-cta p{color:var(--text-2)}
.loc-final-cta .loc-cta-row{justify-content:center}

/* Homepage FAQ wrapper */
.home-faq .loc-faq{margin:0 auto}
.home-faq .loc-head{margin-left:auto;margin-right:auto;text-align:center}
.home-loc-links{justify-content:center;margin-top:28px}

@media (max-width:900px){
  .loc-card-grid,.loc-service-list{grid-template-columns:1fr 1fr}
  .loc-steps,.loc-facts-grid{grid-template-columns:1fr 1fr}
  .loc-two-col{grid-template-columns:1fr;gap:28px}
}
@media (max-width:600px){
  .loc-card-grid,.loc-service-list{grid-template-columns:1fr}
  .loc-cta-row .btn{width:100%;justify-content:center}
}
.home-faq .loc-head .agency-eyebrow{display:block;text-align:center}
