/*
Theme Name: Bentley Sons
Author: Kameron Bentley
Version: 3.0
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=DM+Sans:ital,wght@0,300;0,400;0,500;0,600;1,300&family=JetBrains+Mono:wght@300;400&display=swap');

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{
  --black:#080808;--black2:#0a0a0a;--black3:#0d0d0d;--black4:#111;
  --line:#1a1a1a;--line2:#1e1e1e;--line3:#242424;
  --muted:#2e2e2e;--dim:#444;--mid:#555;--sub:#666;--soft:#888;--pale:#aaa;
  --body:#e8e2d9;--gold:#c8a96e;--golddim:rgba(200,169,110,0.2);--goldhi:rgba(200,169,110,0.08);
  --green:#2a7a4a;--greenhi:rgba(42,122,74,0.15);
  --red:#7a2a2a;
  --ff:'Inter',system-ui,sans-serif;
  --ffd:'DM Sans','Inter',system-ui,sans-serif;
  --ffm:'JetBrains Mono','Courier New',monospace;
}
html{scroll-behavior:smooth}
body{font-family:var(--ff);background:var(--black);color:var(--body);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,h4{font-family:var(--ffd);font-weight:300;line-height:1.12;letter-spacing:-0.02em}
h1{font-size:clamp(2.6rem,5.5vw,4.2rem);color:var(--body)}
h2{font-size:clamp(1.6rem,3vw,2.6rem);color:var(--body)}
h3{font-size:1.1rem;font-weight:400;color:var(--body)}
h4{font-size:.88rem;font-weight:500;color:var(--body)}
.mono{font-family:var(--ffm);font-size:.65rem;letter-spacing:.08em}
.label{font-size:.6rem;letter-spacing:.22em;color:var(--gold);text-transform:uppercase;font-family:var(--ffm)}
.label-dim{font-size:.6rem;letter-spacing:.18em;color:var(--dim);text-transform:uppercase;font-family:var(--ffm)}

/* ═══════════════════ NAV ═══════════════════ */
#bs-nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:0 2rem;height:56px;
  border-bottom:1px solid var(--line2);
  position:sticky;top:0;z-index:200;
  background:rgba(8,8,8,.96);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
}
.bs-logo{font-family:var(--ffd);font-weight:600;font-size:.9rem;letter-spacing:.05em;color:var(--gold);display:flex;align-items:center;gap:.5rem}
.bs-logo-b{background:var(--gold);color:var(--black);width:24px;height:24px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem;flex-shrink:0}
#bs-nav ul{display:flex;gap:0;list-style:none}
#bs-nav ul li a{
  font-family:var(--ffm);font-size:.62rem;letter-spacing:.12em;color:var(--soft);
  text-transform:uppercase;padding:.5rem 1rem;display:block;
  transition:color .15s;border-bottom:2px solid transparent;
  position:relative;top:1px;
}
#bs-nav ul li a:hover{color:var(--body)}
#bs-nav ul li a.active{color:var(--gold);border-bottom-color:var(--gold)}
.bs-nav-right{display:flex;align-items:center;gap:1rem}
.bs-nav-phone{font-family:var(--ffm);font-size:.62rem;letter-spacing:.08em;color:var(--gold);border:1px solid var(--golddim);padding:.35rem .85rem;border-radius:2px;text-transform:uppercase;white-space:nowrap;transition:background .15s}
.bs-nav-phone:hover{background:var(--golddim)}
.bs-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:6px}
.bs-hamburger span{display:block;width:20px;height:1px;background:var(--soft);transition:all .2s}

/* ═══════════════════ TOPBAR ═══════════════════ */
.bs-topbar{
  display:flex;align-items:center;justify-content:space-between;
  padding:0 2rem;height:30px;
  background:var(--black3);border-bottom:1px solid var(--line);
  font-family:var(--ffm);font-size:.58rem;letter-spacing:.15em;color:var(--dim);text-transform:uppercase;
}
.bs-topbar-left{display:flex;align-items:center;gap:1.5rem}
.bs-topbar-right{display:flex;align-items:center;gap:1.5rem}
.bs-dot{width:5px;height:5px;border-radius:50%;background:var(--green);display:inline-block;margin-right:.4rem;animation:bspulse 2s infinite}
.bs-dot-amber{background:#c8960e}
@keyframes bspulse{0%,100%{opacity:1}50%{opacity:.3}}

/* ═══════════════════ BUTTONS ═══════════════════ */
.btn-gold{display:inline-flex;align-items:center;gap:.5rem;background:var(--gold);color:var(--black);padding:.65rem 1.5rem;font-family:var(--ffm);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;font-weight:400;border-radius:2px;border:none;cursor:pointer;transition:opacity .15s}
.btn-gold:hover{opacity:.88}
.btn-outline{display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:var(--soft);padding:.65rem 1.5rem;font-family:var(--ffm);font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line3);border-radius:2px;cursor:pointer;transition:all .15s}
.btn-outline:hover{border-color:var(--golddim);color:var(--gold)}
.btn-ghost{font-family:var(--ffm);font-size:.62rem;letter-spacing:.1em;color:var(--soft);text-transform:uppercase;transition:color .15s}
.btn-ghost:hover{color:var(--gold)}

/* ═══════════════════ TICKER ═══════════════════ */
.bs-ticker{overflow:hidden;border-bottom:1px solid var(--line);height:28px;display:flex;align-items:center;background:var(--black2)}
.bs-ticker-inner{display:flex;gap:2rem;font-family:var(--ffm);font-size:.58rem;letter-spacing:.2em;color:var(--muted);text-transform:uppercase;white-space:nowrap;animation:bstick 30s linear infinite}
@keyframes bstick{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ═══════════════════ HERO ═══════════════════ */
#bs-hero{
  min-height:calc(100vh - 86px);
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:0 2rem 4rem;
  border-bottom:1px solid var(--line);
  position:relative;
  overflow:hidden;
}
.bs-hero-grid{
  position:absolute;inset:0;
  background-image:
    linear-gradient(var(--line) 1px,transparent 1px),
    linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:80px 80px;
  opacity:.35;
}
.bs-hero-vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 100%,transparent 30%,var(--black) 80%)}
.bs-hero-content{position:relative;max-width:900px}
.bs-hero-eyebrow{font-family:var(--ffm);font-size:.6rem;letter-spacing:.25em;color:var(--dim);text-transform:uppercase;margin-bottom:2rem;display:flex;align-items:center;gap:1rem}
.bs-hero-eyebrow::after{content:'';flex:1;max-width:80px;height:1px;background:var(--line3)}
#bs-hero h1{margin-bottom:1.5rem}
#bs-hero h1 em{font-style:normal;color:var(--gold)}
.bs-hero-sub{font-size:.95rem;color:var(--sub);line-height:1.8;max-width:460px;margin-bottom:2.5rem}
.bs-hero-actions{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}
.bs-hero-dispatch{
  display:flex;align-items:center;gap:.75rem;
  border:1px solid var(--line3);padding:.65rem 1.25rem;border-radius:2px;
  font-family:var(--ffm);font-size:.62rem;letter-spacing:.1em;color:var(--soft);text-transform:uppercase;
  cursor:pointer;transition:border-color .15s;
  -webkit-user-select:none;user-select:none;
}
.bs-hero-dispatch:hover{border-color:var(--golddim);color:var(--gold)}
.bs-hero-dispatch .bs-dot{margin-right:0}

/* network badge */
.bs-network-badge{
  position:absolute;top:2rem;right:2rem;
  border:1px solid var(--line3);padding:.75rem 1rem;background:rgba(8,8,8,.8);
  font-family:var(--ffm);
}
.bs-network-badge .nb-title{font-size:.55rem;letter-spacing:.2em;color:var(--gold);text-transform:uppercase;margin-bottom:.5rem}
.bs-network-badge .nb-stat{display:flex;justify-content:space-between;gap:2rem;font-size:.6rem;color:var(--dim);margin-bottom:.2rem}
.bs-network-badge .nb-stat span:last-child{color:var(--soft)}

/* ═══════════════════ STATS STRIP ═══════════════════ */
.bs-stats{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}
.bs-stat{padding:1.75rem 1.5rem;border-right:1px solid var(--line);text-align:center}
.bs-stat:last-child{border-right:none}
.bs-stat-num{font-family:var(--ffd);font-size:2rem;font-weight:300;color:var(--gold);line-height:1}
.bs-stat-label{font-family:var(--ffm);font-size:.58rem;letter-spacing:.15em;color:var(--dim);text-transform:uppercase;margin-top:.4rem}

/* ═══════════════════ SECTIONS ═══════════════════ */
.bs-section{padding:5rem 2rem;border-bottom:1px solid var(--line)}
.bs-inner{max-width:1000px;margin:0 auto}
.bs-section-head{margin-bottom:3.5rem}
.bs-section-head h2{margin-bottom:.6rem}
.bs-section-desc{font-size:.85rem;color:var(--mid);line-height:1.75;max-width:520px;margin-top:.6rem}

/* ═══════════════════ SERVICE CARDS ═══════════════════ */
.bs-services{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}
.bs-service-card{background:var(--black);padding:2.25rem;position:relative;transition:background .2s}
.bs-service-card:hover{background:var(--black2)}
.bs-service-tag{font-family:var(--ffm);font-size:.58rem;letter-spacing:.18em;color:var(--green);text-transform:uppercase;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between}
.bs-service-tag-id{color:var(--dim)}
.bs-service-card h3{margin-bottom:.75rem}
.bs-service-card p{font-size:.82rem;color:var(--mid);line-height:1.7;margin-bottom:1.5rem}
.bs-service-card ul{list-style:none;display:flex;flex-direction:column;gap:.45rem}
.bs-service-card ul li{font-family:var(--ffm);font-size:.68rem;color:var(--dim);padding-left:1.1rem;position:relative;letter-spacing:.04em}
.bs-service-card ul li::before{content:'—';position:absolute;left:0;color:var(--golddim)}
.bs-service-arrow{position:absolute;bottom:2rem;right:2rem;font-family:var(--ffm);font-size:.62rem;color:var(--dim);opacity:0;transition:opacity .2s}
.bs-service-card:hover .bs-service-arrow{opacity:1;color:var(--gold)}

/* ═══════════════════ OPS PANEL (homepage) ═══════════════════ */
.bs-ops-panel{
  border:1px solid var(--line);background:var(--black2);
  font-family:var(--ffm);
}
.bs-ops-panel-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:.65rem 1.25rem;border-bottom:1px solid var(--line);
  font-size:.6rem;letter-spacing:.15em;color:var(--dim);text-transform:uppercase;
}
.bs-ops-panel-header .live{color:var(--green);display:flex;align-items:center;gap:.4rem}
.bs-ops-row{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1.25rem;border-bottom:1px solid var(--line);font-size:.65rem}
.bs-ops-row:last-child{border-bottom:none}
.bs-ops-row-label{color:var(--dim);letter-spacing:.1em;text-transform:uppercase}
.bs-ops-row-val{color:var(--soft)}
.bs-ops-row-val.green{color:var(--green)}
.bs-ops-row-val.gold{color:var(--gold)}

/* perimeter zone widget */
.bs-perimeter{border:1px solid var(--line);background:var(--black2);padding:0;overflow:hidden}
.bs-perimeter-header{padding:.65rem 1.25rem;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;font-family:var(--ffm);font-size:.58rem;letter-spacing:.15em;color:var(--dim);text-transform:uppercase}
.bs-perimeter-zones{display:flex;gap:0}
.bs-zone{flex:1;padding:.75rem;border-right:1px solid var(--line);cursor:pointer;transition:background .15s}
.bs-zone:last-child{border-right:none}
.bs-zone:hover,.bs-zone.active{background:var(--goldhi)}
.bs-zone-id{font-family:var(--ffm);font-size:.55rem;color:var(--dim);letter-spacing:.15em;margin-bottom:.25rem}
.bs-zone-name{font-family:var(--ffm);font-size:.65rem;color:var(--soft);text-transform:uppercase;letter-spacing:.08em}
.bs-zone.active .bs-zone-name{color:var(--gold)}
.bs-perimeter-detail{padding:1rem 1.25rem;border-top:1px solid var(--line);font-family:var(--ffm);display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.bs-pd-item label{font-size:.52rem;letter-spacing:.15em;color:var(--dim);text-transform:uppercase;display:block;margin-bottom:.2rem}
.bs-pd-item span{font-size:.72rem;color:var(--soft)}
.bs-pd-item span.ok{color:var(--green)}
.bs-pd-item span.gold{color:var(--gold)}

/* ═══════════════════ ABOUT SECTION ═══════════════════ */
.bs-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.bs-about-img{position:relative}
.bs-about-img img{width:100%;height:520px;object-fit:cover;object-position:top;filter:grayscale(25%) contrast(1.05)}
.bs-about-img-overlay{position:absolute;bottom:0;left:0;right:0;padding:1.5rem;background:linear-gradient(transparent,rgba(8,8,8,.95))}
.bs-about-img-badge{font-family:var(--ffm);font-size:.6rem;color:var(--gold);letter-spacing:.15em;text-transform:uppercase}
.bs-about-img-sub{font-family:var(--ffm);font-size:.58rem;color:var(--dim);margin-top:.25rem;letter-spacing:.1em}
.bs-about-text h2{margin-bottom:1.25rem}
.bs-about-text p{font-size:.85rem;color:var(--mid);line-height:1.85;margin-bottom:1rem}
.bs-about-credit{display:flex;align-items:center;gap:.85rem;margin-top:1.75rem;padding-top:1.75rem;border-top:1px solid var(--line)}
.bs-avatar{width:40px;height:40px;border-radius:50%;background:#1a1510;border:1px solid var(--golddim);display:flex;align-items:center;justify-content:center;font-family:var(--ffm);font-size:.68rem;color:var(--gold);flex-shrink:0}
.bs-credit-name{font-size:.82rem;color:var(--soft)}
.bs-credit-title{font-family:var(--ffm);font-size:.6rem;color:var(--dim);margin-top:.15rem;letter-spacing:.06em}

/* ═══════════════════ COVERAGE ═══════════════════ */
.bs-offices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.bs-office{background:var(--black);padding:2rem;transition:background .2s}
.bs-office:hover{background:var(--black2)}
.bs-office-tag{font-family:var(--ffm);font-size:.58rem;letter-spacing:.15em;color:var(--dim);text-transform:uppercase;margin-bottom:1.25rem;display:flex;align-items:center;justify-content:space-between}
.active-tag{color:var(--green);display:flex;align-items:center;gap:.4rem}
.bs-office h3{font-size:.95rem;margin-bottom:.5rem}
.bs-office address{font-family:var(--ffm);font-size:.65rem;color:var(--dim);line-height:1.8;font-style:normal;letter-spacing:.04em}
.bs-office-coords{font-family:var(--ffm);font-size:.58rem;color:var(--muted);margin-top:.5rem;letter-spacing:.04em}
.bs-office-phone{font-family:var(--ffm);font-size:.68rem;color:var(--gold);margin-top:1rem;display:block;letter-spacing:.06em}

/* ═══════════════════ TAKE ACTION ═══════════════════ */
.bs-action-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.bs-action-card{background:var(--black);padding:2rem;cursor:pointer;transition:background .2s;text-decoration:none;display:block}
.bs-action-card:hover{background:var(--black2)}
.bs-ac-tag{font-family:var(--ffm);font-size:.55rem;letter-spacing:.18em;color:var(--dim);text-transform:uppercase;margin-bottom:1.25rem}
.bs-ac-title{font-family:var(--ffd);font-size:1.05rem;font-weight:400;color:var(--body);margin-bottom:.65rem}
.bs-ac-desc{font-family:var(--ffm);font-size:.65rem;color:var(--dim);line-height:1.65;letter-spacing:.03em}
.bs-ac-arrow{font-family:var(--ffm);font-size:.62rem;color:var(--gold);margin-top:1.5rem;display:block}

/* ═══════════════════ CTA STRIP ═══════════════════ */
.bs-cta-strip{padding:6rem 2rem;text-align:center;background:var(--black2);border-bottom:1px solid var(--line)}
.bs-cta-strip .label{margin-bottom:1rem;display:block}
.bs-cta-strip h2{margin-bottom:.75rem}
.bs-cta-sub{font-size:.85rem;color:var(--mid);margin-bottom:3rem;max-width:400px;margin-left:auto;margin-right:auto;line-height:1.75}
.bs-cta-row{display:flex;align-items:center;justify-content:center;gap:1.5rem;flex-wrap:wrap}
.bs-cta-link-gold{font-family:var(--ffm);font-size:.68rem;color:var(--gold);letter-spacing:.08em}
.bs-cta-link-dim{font-family:var(--ffm);font-size:.68rem;color:var(--mid);letter-spacing:.08em}

/* ═══════════════════ FOOTER ═══════════════════ */
#bs-footer{border-top:1px solid var(--line)}
.bs-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2rem;padding:3rem 2rem;max-width:1100px;margin:0 auto}
.bs-footer-brand{font-family:var(--ffd);font-size:.88rem;color:var(--gold);font-weight:600;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}
.bs-footer-desc{font-family:var(--ffm);font-size:.62rem;color:var(--dim);line-height:1.8;max-width:200px;letter-spacing:.03em}
.bs-footer-col h4{font-family:var(--ffm);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:1.1rem}
.bs-footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.55rem}
.bs-footer-col ul li a{font-family:var(--ffm);font-size:.65rem;color:var(--dim);letter-spacing:.04em;transition:color .15s}
.bs-footer-col ul li a:hover{color:var(--gold)}
.bs-footer-bottom{border-top:1px solid var(--line);padding:1rem 2rem;display:flex;justify-content:space-between;font-family:var(--ffm);font-size:.58rem;color:var(--muted);letter-spacing:.1em;text-transform:uppercase}

/* ═══════════════════ PAGE HERO (inner pages) ═══════════════════ */
.bs-page-hero{padding:4.5rem 2rem 3.5rem;border-bottom:1px solid var(--line);max-width:1000px;margin:0 auto}
.bs-page-hero .label{margin-bottom:1.25rem}
.bs-page-hero h1{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:.85rem}
.bs-page-hero p{font-size:.88rem;color:var(--sub);max-width:500px;line-height:1.8}

/* ═══════════════════ QUOTE CONFIGURATOR ═══════════════════ */
.bs-quote-wrap{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--line)}
.bs-quote-config{background:var(--black);padding:2.5rem}
.bs-quote-output{background:var(--black2);padding:2.5rem;display:flex;flex-direction:column;justify-content:space-between}
.bs-field-group{margin-bottom:2rem}
.bs-field-group label{font-family:var(--ffm);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);display:block;margin-bottom:.65rem}
.bs-option-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.bs-option{border:1px solid var(--line3);padding:.65rem .85rem;cursor:pointer;transition:all .15s;border-radius:2px}
.bs-option:hover{border-color:var(--golddim);background:var(--goldhi)}
.bs-option.selected{border-color:var(--gold);background:var(--goldhi)}
.bs-option-name{font-family:var(--ffm);font-size:.65rem;color:var(--soft);letter-spacing:.05em}
.bs-option.selected .bs-option-name{color:var(--gold)}
.bs-option-rate{font-family:var(--ffm);font-size:.58rem;color:var(--dim);margin-top:.15rem}
.bs-range-wrap{display:flex;align-items:center;gap:1rem}
.bs-range-wrap input[type=range]{flex:1;-webkit-appearance:none;appearance:none;height:2px;background:var(--line3);outline:none;border-radius:1px}
.bs-range-wrap input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--gold);cursor:pointer}
.bs-range-val{font-family:var(--ffm);font-size:.72rem;color:var(--gold);min-width:40px;text-align:right}
.bs-estimate-display{border:1px solid var(--line3);padding:1.75rem;margin-bottom:2rem}
.bs-estimate-display .ed-label{font-family:var(--ffm);font-size:.55rem;letter-spacing:.2em;color:var(--dim);text-transform:uppercase;margin-bottom:.75rem}
.bs-estimate-display .ed-range{font-family:var(--ffd);font-size:2.4rem;font-weight:300;color:var(--gold);line-height:1;margin-bottom:.4rem}
.bs-estimate-display .ed-sub{font-family:var(--ffm);font-size:.6rem;color:var(--dim);letter-spacing:.08em}
.bs-estimate-breakdown{margin-bottom:2rem}
.bs-eb-row{display:flex;justify-content:space-between;padding:.45rem 0;border-bottom:1px solid var(--line);font-family:var(--ffm);font-size:.65rem}
.bs-eb-row:last-child{border-bottom:none}
.bs-eb-label{color:var(--dim);letter-spacing:.06em}
.bs-eb-val{color:var(--soft)}

/* ═══════════════════ DASHBOARD / OPS ═══════════════════ */
.bs-dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}
.bs-dash-panel{background:var(--black);padding:0}
.bs-dash-panel-head{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;border-bottom:1px solid var(--line);font-family:var(--ffm);font-size:.58rem;letter-spacing:.15em;color:var(--dim);text-transform:uppercase}
.bs-dash-panel-head .live{color:var(--green);display:flex;align-items:center;gap:.35rem}
.bs-dash-row{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1.25rem;border-bottom:1px solid var(--line);font-family:var(--ffm);font-size:.65rem}
.bs-dash-row:last-child{border-bottom:none}
.bs-dash-row-label{color:var(--dim);letter-spacing:.08em;text-transform:uppercase}
.bs-dash-row-val{color:var(--soft)}
.bs-dash-row-val.green{color:var(--green)}
.bs-dash-row-val.gold{color:var(--gold)}
.bs-dash-row-val.red{color:#c87070}
.bs-unit-row{display:flex;align-items:center;gap:1rem;padding:.75rem 1.25rem;border-bottom:1px solid var(--line)}
.bs-unit-row:last-child{border-bottom:none}
.bs-unit-id{font-family:var(--ffm);font-size:.6rem;color:var(--dim);min-width:60px;letter-spacing:.08em}
.bs-unit-name{font-family:var(--ffm);font-size:.68rem;color:var(--soft);flex:1;letter-spacing:.04em}
.bs-unit-status{font-family:var(--ffm);font-size:.58rem;padding:.2rem .5rem;border-radius:2px;text-transform:uppercase;letter-spacing:.1em}
.bs-unit-status.active{background:var(--greenhi);color:var(--green)}
.bs-unit-status.standby{background:var(--goldhi);color:var(--gold)}
.bs-unit-site{font-family:var(--ffm);font-size:.6rem;color:var(--dim);text-align:right;min-width:120px;letter-spacing:.04em}

/* ═══════════════════ CONTACT FORM ═══════════════════ */
.bs-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--line)}
.bs-contact-info{background:var(--black);padding:2.5rem}
.bs-contact-form-wrap{background:var(--black2);padding:2.5rem}
.bs-contact-item{margin-bottom:1.5rem}
.bs-contact-item .ci-label{font-family:var(--ffm);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-bottom:.35rem}
.bs-contact-item .ci-val{font-family:var(--ffm);font-size:.72rem;color:var(--soft);letter-spacing:.04em}
.bs-contact-item .ci-val a{color:var(--gold)}
.bs-form{display:flex;flex-direction:column;gap:1.25rem}
.bs-field label{font-family:var(--ffm);font-size:.58rem;letter-spacing:.15em;text-transform:uppercase;color:var(--dim);display:block;margin-bottom:.45rem}
.bs-field input,.bs-field textarea,.bs-field select{
  width:100%;background:var(--black3);border:1px solid var(--line3);
  color:var(--body);font-family:var(--ffm);font-size:.72rem;letter-spacing:.04em;
  padding:.65rem .9rem;border-radius:2px;outline:none;transition:border-color .15s;
  -webkit-appearance:none;
}
.bs-field input:focus,.bs-field textarea:focus,.bs-field select:focus{border-color:var(--golddim)}
.bs-field textarea{resize:vertical;min-height:120px}
.bs-field select option{background:var(--black3)}
.bs-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.bs-form-note{font-family:var(--ffm);font-size:.6rem;color:var(--dim);line-height:1.6;letter-spacing:.03em}
.bs-form-success{border:1px solid var(--green);background:var(--greenhi);padding:1.25rem;border-radius:2px;margin-bottom:1.5rem;font-family:var(--ffm);font-size:.72rem;color:var(--green);letter-spacing:.04em}

/* ═══════════════════ ABOUT PAGE ═══════════════════ */
.bs-team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}
.bs-team-card{background:var(--black)}
.bs-team-card img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:top;filter:grayscale(20%)}
.bs-team-card-placeholder{width:100%;aspect-ratio:3/4;background:var(--black2);display:flex;align-items:center;justify-content:center;font-family:var(--ffd);font-size:2rem;font-weight:300;color:var(--golddim)}
.bs-team-card-info{padding:1.1rem}
.bs-team-card-info h4{font-size:.85rem;font-weight:500;margin-bottom:.2rem}
.bs-team-card-info p{font-family:var(--ffm);font-size:.6rem;color:var(--dim);letter-spacing:.06em;text-transform:uppercase}
.bs-pillars{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}
.bs-pillar{background:var(--black);padding:1.75rem}
.bs-pillar-tag{font-family:var(--ffm);font-size:.58rem;letter-spacing:.15em;color:var(--gold);text-transform:uppercase;margin-bottom:.6rem}
.bs-pillar h4{font-size:.9rem;margin-bottom:.5rem}
.bs-pillar p{font-family:var(--ffm);font-size:.65rem;color:var(--dim);line-height:1.65;letter-spacing:.03em}

/* ═══════════════════ TESTIMONIALS ═══════════════════ */
.bs-testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}
.bs-testimonial{background:var(--black);padding:2rem}
.bs-tq{font-size:.82rem;color:var(--soft);line-height:1.8;margin-bottom:1.5rem;font-style:italic;position:relative;padding-left:1rem}
.bs-tq::before{content:'"';position:absolute;left:0;top:-.15rem;color:var(--gold);font-family:var(--ffd);font-size:1.5rem;line-height:1}
.bs-ta{display:flex;align-items:center;gap:.75rem}
.bs-ta img{width:34px;height:34px;border-radius:50%;object-fit:cover;filter:grayscale(20%)}
.bs-ta-name{font-size:.75rem;font-weight:500;color:var(--body)}
.bs-ta-co{font-family:var(--ffm);font-size:.6rem;color:var(--dim);margin-top:.1rem;letter-spacing:.04em}

/* ═══════════════════ VR TRAINING SECTION ═══════════════════ */
.bs-vr-section{display:grid;grid-template-columns:1fr 1fr;gap:0;background:var(--line)}
.bs-vr-img{position:relative;overflow:hidden}
.bs-vr-img img{width:100%;height:100%;object-fit:cover;filter:grayscale(30%) brightness(.85)}
.bs-vr-tag{position:absolute;top:1.5rem;left:1.5rem;font-family:var(--ffm);font-size:.55rem;letter-spacing:.2em;color:var(--gold);text-transform:uppercase;background:rgba(8,8,8,.8);padding:.35rem .65rem;border:1px solid var(--line)}
.bs-vr-content{background:var(--black);padding:3rem}
.bs-vr-content .label{margin-bottom:1rem}
.bs-vr-content h2{margin-bottom:1rem}
.bs-vr-content p{font-size:.84rem;color:var(--mid);line-height:1.8;margin-bottom:1.75rem}

/* ═══════════════════ TRUSTED ═══════════════════ */
.bs-trusted{padding:1.5rem 2rem;border-bottom:1px solid var(--line);background:var(--black3)}
.bs-trusted-label{font-family:var(--ffm);font-size:.55rem;letter-spacing:.2em;color:var(--dim);text-transform:uppercase;text-align:center;margin-bottom:1.1rem}
.bs-trusted-logos{display:flex;align-items:center;justify-content:center;gap:3rem;flex-wrap:wrap}
.bs-trusted-logos span{font-family:var(--ffm);font-size:.62rem;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}

/* ═══════════════════ RESPONSIVE ═══════════════════ */
@media(max-width:1024px){
  .bs-dash-grid{grid-template-columns:1fr}
  .bs-vr-section{grid-template-columns:1fr}
  .bs-vr-img{min-height:280px}
}
@media(max-width:860px){
  .bs-about-grid,.bs-quote-wrap,.bs-contact-grid{grid-template-columns:1fr}
  .bs-about-img img{height:360px}
  .bs-team-grid{grid-template-columns:repeat(2,1fr)}
  .bs-testimonials{grid-template-columns:1fr}
  .bs-action-cards{grid-template-columns:1fr}
}
@media(max-width:768px){
  #bs-nav ul{display:none}
  #bs-nav ul.open{
    display:flex;flex-direction:column;position:fixed;
    top:56px;left:0;right:0;background:rgba(8,8,8,.98);
    border-bottom:1px solid var(--line);padding:1.5rem 2rem;gap:0;z-index:199;
  }
  #bs-nav ul.open li a{padding:1rem 0;border-bottom:1px solid var(--line);display:block}
  #bs-nav ul.open li:last-child a{border-bottom:none}
  .bs-hamburger{display:flex}
  .bs-nav-phone{display:none}
  .bs-topbar-right{display:none}
  .bs-stats{grid-template-columns:repeat(2,1fr)}
  .bs-stat{border-bottom:1px solid var(--line)}
  .bs-services{grid-template-columns:1fr}
  .bs-offices-grid{grid-template-columns:1fr}
  .bs-pillars{grid-template-columns:1fr}
  .bs-footer-grid{grid-template-columns:1fr 1fr}
  .bs-footer-bottom{flex-direction:column;gap:.5rem}
  .bs-network-badge{display:none}
  #bs-hero{min-height:auto;padding:3rem 1.5rem 4rem}
  .bs-option-grid{grid-template-columns:1fr}
  .bs-form-row{grid-template-columns:1fr}
}
@media(max-width:480px){
  .bs-section{padding:3.5rem 1.5rem}
  .bs-footer-grid{grid-template-columns:1fr}
  .bs-team-grid{grid-template-columns:repeat(2,1fr)}
  .bs-perimeter-zones{flex-wrap:wrap}
  .bs-zone{min-width:50%}
}
