/* barmSTUDIO 5.1 SEO growth additions. Isolated from the stable 5.0 responsive core. */
/* ===== 5.1 SEO landing pages / local content / all reviews ===== */
.bs-specialization-hero h1{max-width:14ch}
.bs-specialization-visual{min-height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:12px;position:relative;overflow:hidden;padding:28px;background:linear-gradient(145deg,#f8fbff 0%,#f5f2ff 55%,#fff2fa 100%)}
.bs-specialization-visual:before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-60px;top:-70px;background:radial-gradient(circle,rgba(33,109,255,.18),rgba(114,87,238,.06) 48%,transparent 70%)}
.bs-specialization-icon{width:74px;height:74px;display:grid;place-items:center;border-radius:22px;background:#fff;border:1px solid #e3e8f4;box-shadow:0 12px 34px rgba(37,50,92,.08);color:var(--brand-primary);position:relative;z-index:1}
.bs-specialization-icon .bs-icon{font-size:34px}
.bs-specialization-visual .bs-brand-sigil{font-size:clamp(34px,4vw,66px);line-height:1;color:rgba(34,45,91,.12);position:relative;z-index:1}
.bs-specialization-visual>strong{font-size:clamp(24px,2.4vw,38px);letter-spacing:-.04em;position:relative;z-index:1}
.bs-specialization-visual>small{color:#68738a;position:relative;z-index:1}
.bs-specialization-intro{padding:clamp(26px,3vw,42px);display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:20px 52px;align-items:start}
.bs-specialization-intro .bs-eyebrow{grid-column:1/-1}
.bs-specialization-intro h2{margin:0;font-size:clamp(28px,3vw,48px);line-height:1.02;letter-spacing:-.045em}
.bs-specialization-intro p{margin:0;font-size:clamp(16px,1.3vw,19px);line-height:1.7;color:#59647c}
.bs-related-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.bs-related-service{padding:18px;display:grid;grid-template-columns:46px minmax(0,1fr) 24px;gap:12px;align-items:center;color:inherit;text-decoration:none}
.bs-related-service>span:first-child{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#f3f6ff;color:var(--brand-primary)}
.bs-related-service>span:first-child .bs-icon{font-size:22px}
.bs-related-service>div{min-width:0;display:grid;gap:4px}
.bs-related-service strong{font-size:15px;line-height:1.2}
.bs-related-service small{color:#727b90;line-height:1.35}
.bs-related-service>.bs-icon{font-size:15px;transition:transform .2s ease}
.bs-related-service:hover>.bs-icon{transform:translateX(3px)}
.bs-local-context{padding:clamp(26px,3vw,42px);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px 48px;align-items:start}
.bs-local-context>.bs-eyebrow{grid-column:1/-1}
.bs-local-context h2{margin:0;font-size:clamp(28px,3vw,46px);line-height:1.04;letter-spacing:-.04em}
.bs-local-context>p{margin:0;color:#5e687d;font-size:17px;line-height:1.7}
.bs-local-query{grid-column:1/-1;display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;padding:14px 16px;border-radius:14px;background:#f6f8fd;border:1px solid #e6eaf4}
.bs-local-query>span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#fff;color:var(--brand-primary)}
.bs-local-query small{display:block;color:#7a8397;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.bs-local-query strong{display:block;margin-top:2px;font-size:14px;line-height:1.45}
.bs-review-summary{display:flex;flex-wrap:wrap;gap:5px 10px;align-items:center;justify-content:flex-end}
.bs-review-summary strong{font-size:1.05em;color:#11162f}

@media(max-width:900px){
  .bs-specialization-intro,.bs-local-context{grid-template-columns:1fr;gap:14px}
  .bs-specialization-intro>.bs-eyebrow,.bs-local-context>.bs-eyebrow,.bs-local-query{grid-column:auto}
  .bs-related-service-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .bs-specialization-visual{min-height:220px;padding:20px}
  .bs-specialization-icon{width:60px;height:60px;border-radius:18px}
  .bs-specialization-icon .bs-icon{font-size:28px}
  .bs-specialization-intro,.bs-local-context{padding:22px}
  .bs-related-service-grid{grid-template-columns:1fr}
  .bs-related-service{padding:15px}
  .bs-review-summary{justify-content:flex-start;font-size:13px}
}
.bs-footer-specialties{display:flex!important;flex-wrap:wrap;gap:5px 9px!important;margin-top:2px}
.bs-footer-specialties a{font-size:9px!important;color:#70798e!important;text-decoration:none;border-bottom:1px solid #dfe4ef}
.bs-footer-specialties a:hover{color:var(--brand-primary)!important;border-color:currentColor}
@media(max-width:640px){.bs-footer-specialties{justify-content:center!important;max-width:320px}.bs-footer-specialties a{font-size:10px!important}}
.bs-review-text.is-empty p{font-style:italic;color:#9299aa}
.bs-article-service-cta{margin-top:16px;padding:24px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;background:linear-gradient(135deg,#f6f9ff,#fff 48%,#faf3ff)}
.bs-article-service-cta h2{margin:3px 0 8px;font-size:clamp(24px,2.5vw,36px);line-height:1.05;letter-spacing:-.04em}
.bs-article-service-cta p{margin:0;color:#687287;max-width:700px}
.bs-article-service-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:760px){.bs-article-service-cta{grid-template-columns:1fr;padding:20px}.bs-article-service-actions{justify-content:flex-start}.bs-article-service-actions .bs-btn{width:100%;justify-content:center}}
