
.tbcs-contact-page{background:#090909;color:#f5f5f5;font-family:inherit}
.tbcs-wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}
.tbcs-hero{padding:92px 0 72px;background:radial-gradient(circle at 85% 15%,rgba(205,0,0,.18),transparent 34%),linear-gradient(180deg,#101010,#080808);border-bottom:1px solid #262626}
.tbcs-kicker{color:#e11717;text-transform:uppercase;letter-spacing:.17em;font-weight:800;font-size:.78rem;margin-bottom:12px}
.tbcs-hero h1,.tbcs-section h2,.tbcs-final-cta h2{margin:0;text-transform:uppercase;line-height:.96}
.tbcs-hero h1{font-size:clamp(2.8rem,7vw,6.4rem);max-width:950px}
.tbcs-hero p{max-width:800px;font-size:1.12rem;line-height:1.75;color:#c8c8c8;margin:24px 0 0}
.tbcs-section{padding:76px 0}
.tbcs-section-head{max-width:820px;margin-bottom:34px}
.tbcs-section-head h2,.tbcs-form-copy h2{font-size:clamp(2rem,4vw,3.6rem);margin:0 0 16px;text-transform:uppercase}
.tbcs-section-head p,.tbcs-form-copy p{color:#bdbdbd;line-height:1.7;font-size:1.03rem}
.tbcs-locations{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.tbcs-location-card{position:relative;display:grid;grid-template-columns:auto 1fr;gap:20px;padding:30px;border:1px solid #2b2b2b;background:#121212;overflow:hidden}
.tbcs-location-card:before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:#d51010}
.tbcs-location-num{font-weight:900;font-size:2rem;color:#d51010;line-height:1}
.tbcs-location-card h3{margin:0 0 10px;font-size:1.45rem}
.tbcs-address,.tbcs-phone{color:#c9c9c9;margin:6px 0;line-height:1.55}
.tbcs-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:20px}
.tbcs-btn,.tbcs-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;text-decoration:none!important;font-weight:800}
.tbcs-btn{border:1px solid #444;color:#fff!important;background:#191919}
.tbcs-btn-red{background:#d51010;border-color:#d51010}
.tbcs-link{color:#fff!important;padding-inline:4px}
.tbcs-form-section{background:#0e0e0e;border-top:1px solid #202020;border-bottom:1px solid #202020}
.tbcs-form-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:58px;align-items:start}
.tbcs-form-card{background:#151515;border:1px solid #292929;padding:30px}
.tbcs-form label{display:block;font-weight:700;font-size:.92rem;margin-bottom:18px}
.tbcs-form input,.tbcs-form select,.tbcs-form textarea{width:100%;margin-top:8px;background:#0b0b0b;color:#fff;border:1px solid #3a3a3a;border-radius:0;padding:13px 14px;min-height:48px;box-sizing:border-box}
.tbcs-form textarea{resize:vertical}
.tbcs-fields-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.tbcs-privacy{display:flex!important;gap:10px;align-items:flex-start;font-weight:400!important;color:#c9c9c9}
.tbcs-privacy input{width:18px!important;min-height:18px!important;margin-top:1px}
.tbcs-privacy a{color:#fff}
.tbcs-submit{width:100%;min-height:54px;border:0;background:#d51010;color:#fff;font-weight:900;letter-spacing:.08em;cursor:pointer}
.tbcs-submit:hover{filter:brightness(1.08)}
.tbcs-alert{padding:14px 16px;margin-bottom:20px;border-left:4px solid}
.tbcs-success{background:#102216;border-color:#27ae60}
.tbcs-error{background:#2a1010;border-color:#e11717}
.tbcs-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.tbcs-map{height:520px;border:1px solid #2c2c2c;background:#1a1a1a}
.tbcs-map .leaflet-popup-content-wrapper,.tbcs-map .leaflet-popup-tip{background:#111;color:#fff}
.tbcs-map-popup strong{display:block;margin-bottom:5px}
.tbcs-final-cta{padding:64px 0;background:linear-gradient(135deg,#a90000,#e11b1b)}
.tbcs-final-cta h2{font-size:clamp(2rem,4vw,4rem)}
.tbcs-final-cta p{max-width:760px;font-size:1.06rem;line-height:1.7;margin:15px 0 0}
@media(max-width:900px){
 .tbcs-locations,.tbcs-form-grid{grid-template-columns:1fr}
 .tbcs-form-grid{gap:28px}
 .tbcs-map{height:430px}
}
@media(max-width:620px){
 .tbcs-wrap{width:min(100% - 28px,1180px)}
 .tbcs-hero{padding:64px 0 48px}
 .tbcs-section{padding:54px 0}
 .tbcs-location-card{grid-template-columns:1fr;padding:24px}
 .tbcs-fields-2{grid-template-columns:1fr;gap:0}
 .tbcs-form-card{padding:20px}
 .tbcs-map{height:380px}
 .tbcs-actions{align-items:stretch}
 .tbcs-btn{flex:1}
 .tbcs-link{width:100%;justify-content:flex-start}
}


/* v1.3 — Leaflet siempre por debajo del header sticky del tema */
.tbcs-map{
  position:relative;
  z-index:1;
  isolation:isolate;
  overflow:hidden;
}
.tbcs-map .leaflet-tile-pane{z-index:10!important}
.tbcs-map .leaflet-overlay-pane{z-index:20!important}
.tbcs-map .leaflet-shadow-pane{z-index:30!important}
.tbcs-map .leaflet-marker-pane{z-index:40!important}
.tbcs-map .leaflet-tooltip-pane{z-index:45!important}
.tbcs-map .leaflet-popup-pane{z-index:50!important}
.tbcs-map .leaflet-top,
.tbcs-map .leaflet-bottom{z-index:60!important}
