/* =====================================================================
   LOCATION DETAIL PAGE STYLES (/locations/victoria/, /locations/san-antonio/)
   Shared by both single-location pages. Built on flasher-v2.css tokens.
   Load AFTER flasher-v2.css.
   ===================================================================== */

/* ---- intro ---- */
.ld-intro{background:var(--black);padding:90px 0 50px;}
.ld-intro__copy{
  font-family:'IBM Plex Mono','Courier New',monospace;font-weight:400;color:#fff;
  font-size:clamp(18px,2vw,26px);line-height:1.45;margin:0;max-width:900px;
}

/* ---- details: info column + map ---- */
.ld-details{background:var(--black);padding:0 0 96px;}
.ld-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:48px;align-items:stretch;}

.ld-info{display:flex;flex-direction:column;gap:26px;}
.ld-info__block{border-top:1px solid var(--line);padding-top:22px;}
.ld-info__label{
  font-family:'IBM Plex Mono','Courier New',monospace;text-transform:uppercase;
  color:var(--yellow);letter-spacing:2px;font-size:13px;margin:0 0 10px;
}
.ld-info__value,.ld-info__value a{
  font-family:'Inter',sans-serif;font-weight:700;color:#fff;
  font-size:clamp(17px,1.5vw,21px);line-height:1.3;margin:0;
}
.ld-info__value a:hover{color:var(--yellow);}
.ld-hours{list-style:none;margin:0;padding:0;}
.ld-hours li{
  display:flex;justify-content:space-between;gap:18px;max-width:340px;
  font-family:'IBM Plex Mono','Courier New',monospace;color:#cfd2d8;
  font-size:16px;line-height:2;
}
.ld-hours li span:last-child{color:#fff;}

/* google map embed */
.ld-map{position:relative;min-height:380px;border:1px solid var(--line);overflow:hidden;background:#111;}
.ld-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;filter:grayscale(.2) contrast(1.05);}

@media (max-width:900px){
  .ld-grid{grid-template-columns:1fr;gap:32px;}
  .ld-map{min-height:320px;}
}

/* ---- contact / quote form ---- */
.ld-form-sec{
  background-color:#000;background-position:center;background-size:cover;background-repeat:no-repeat;
  position:relative;padding:90px 24px;
}
.ld-form-sec::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.55);}
.ld-form-card{
  position:relative;z-index:1;background:#fff;color:#000;width:100%;max-width:760px;
  margin:0 auto;padding:clamp(34px,5vw,56px) clamp(24px,4vw,52px);
}
.ld-form-card__title{
  font-family:'Inter',sans-serif;font-weight:900;color:#000;text-transform:uppercase;
  font-size:clamp(30px,4vw,52px);line-height:1.05;letter-spacing:-1px;margin:0 0 14px;
}
.ld-form-card__intro{
  font-family:'IBM Plex Mono','Courier New',monospace;color:#222;
  font-size:clamp(15px,1.5vw,18px);line-height:1.45;margin:0 0 30px;
}
.ld-form .frow{display:grid;grid-template-columns:1fr 1fr;gap:26px;}
.ld-field{margin-bottom:22px;}
.ld-field label{
  display:block;font-family:'IBM Plex Mono','Courier New',monospace;text-transform:uppercase;
  letter-spacing:1px;font-size:14px;color:#000;margin-bottom:8px;
}
.ld-field input,.ld-field textarea{
  width:100%;background:transparent;border:0;border-bottom:1px solid #000;color:#000;
  padding:9px 2px;font-family:'IBM Plex Mono','Courier New',monospace;font-size:15px;transition:border-color .2s;
}
.ld-field input:focus,.ld-field textarea:focus{outline:none;border-bottom-width:2px;}
.ld-field textarea{min-height:120px;resize:vertical;}
.ld-form__submit{text-align:center;margin-top:14px;}
.ld-submit{
  background:#000;border:1px solid #000;color:#fff;cursor:pointer;border-radius:0;padding:15px 50px;
  font-family:'IBM Plex Mono','Courier New',monospace;letter-spacing:2px;text-transform:uppercase;
  font-size:14px;transition:.2s;
}
.ld-submit:hover{background:var(--red);border-color:var(--red);}
.ld-form__note{display:none;text-align:center;margin-top:16px;color:#0a7d32;font-weight:600;}
@media (max-width:600px){
  .ld-form .frow{grid-template-columns:1fr;}
}
