
:root{--navy:#101827;--navy2:#17213a;--gold:#d4af37;--gold2:#f0d778;--ink:#1f2937;--muted:#667085;--bg:#f7f5ef;--white:#fff;--line:#e8e2d3;--shadow:0 18px 55px rgba(16,24,39,.14);--radius:22px;--wrap:1220px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);line-height:1.68;background:#fff;overflow-x:hidden}a{color:#9a7414;text-decoration:none}a:hover{color:#6f520c}img{max-width:100%;height:auto}.wrap{width:min(var(--wrap),calc(100% - 36px));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:auto;background:#fff;color:#000;padding:10px;z-index:9999}.skip-link:focus{left:10px;top:10px}.topbar{background:#0b1220;color:#fff;font-size:14px}.topbar-inner{display:flex;justify-content:space-between;gap:16px;padding:8px 0;align-items:center;flex-wrap:wrap}.topbar a{color:#fff}.phone-visible,.cta-band .phone-visible,.topbar .phone-visible{color:#fff!important;background:rgba(212,175,55,.18);padding:3px 8px;border-radius:999px;font-weight:800}.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);box-shadow:0 8px 30px rgba(16,24,39,.08);border-bottom:3px solid var(--gold)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:86px;gap:18px}.brand{display:flex;align-items:center;gap:12px;color:var(--navy);font-weight:700}.brand img{height:58px;width:auto}.brand span{font-size:12px;max-width:190px;color:var(--muted);line-height:1.25}.nav-toggle{display:none;background:var(--navy);color:#fff;border:0;border-radius:10px;padding:10px 14px;font-size:24px}.main-nav>ul{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}.main-nav a{display:block;color:var(--navy);font-weight:750;padding:12px 13px;border-radius:12px}.main-nav a:hover{background:#f3ead0}.nav-btn{background:var(--gold);color:#111!important}.has-mega{position:relative}.mega{position:absolute;left:50%;transform:translateX(-50%);top:100%;width:min(1050px,calc(100vw - 40px));background:#fff;border:1px solid var(--line);border-top:5px solid var(--gold);box-shadow:var(--shadow);border-radius:0 0 22px 22px;padding:24px;display:none;grid-template-columns:repeat(4,1fr);gap:20px}.has-mega:hover .mega,.has-mega:focus-within .mega{display:grid}.mega h3{margin:0 0 10px;color:var(--navy)}.mega a{padding:8px 0;border-bottom:1px solid #f2eee4;border-radius:0;font-weight:650}.mega-cta{background:linear-gradient(145deg,var(--navy),#24395d);color:#fff;border-radius:18px;padding:20px}.mega-cta h3,.mega-cta p{color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;border:2px solid transparent;border-radius:999px;padding:13px 22px;font-weight:850;box-shadow:0 10px 25px rgba(16,24,39,.08);transition:.2s}.btn.gold{background:var(--gold);color:#111}.btn.outline{border-color:#fff;color:#fff;background:rgba(255,255,255,.08)}.btn.light{background:#fff;color:var(--navy)!important}.btn:hover{transform:translateY(-2px)}.hero{position:relative;isolation:isolate;overflow:hidden}.hero-bg{position:absolute;inset:0;background:linear-gradient(115deg,rgba(7,12,24,.94),rgba(18,32,56,.84)),url('/assets/images/bomcas-media-hero.jpg') center/cover no-repeat;z-index:-2}.hero-bg:after{content:"";position:absolute;inset:auto -10% -40% -10%;height:55%;background:radial-gradient(circle,rgba(212,175,55,.38),transparent 58%);z-index:-1}.hero-content{padding:92px 0 88px;max-width:920px;color:#fff}.hero-home .hero-content{padding:128px 0 118px}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:13px;font-weight:900;color:var(--gold);margin:0 0 14px}.hero h1{font-size:clamp(40px,6vw,76px);line-height:1.03;margin:0 0 20px;color:#fff;letter-spacing:-.04em}.hero-lead{font-size:clamp(18px,2.2vw,24px);max-width:850px;color:#edf2f7;margin:0 0 28px}.hero-buttons{display:flex;gap:14px;flex-wrap:wrap}.breadcrumbs{font-size:14px;padding:18px 0;color:var(--muted)}.breadcrumbs a{font-weight:700;color:var(--muted)}.breadcrumbs span{padding:0 8px}.section{padding:72px 0}.section.muted{background:var(--bg)}.section-head{max-width:860px;margin:0 auto 34px;text-align:center}.section-head h2,.content-card h2,.narrow h2{font-size:clamp(30px,4vw,48px);line-height:1.1;margin:0 0 14px;color:var(--navy);letter-spacing:-.025em}.lead{font-size:20px;color:#344054}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:34px;align-items:start}.content-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(24px,4vw,46px)}.content-card p{margin:0 0 22px}.content-card h2{margin-top:34px}.sidebar{min-width:0}.sticky-panel{position:sticky;top:110px;background:var(--navy);color:#fff;border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);max-height:calc(100vh - 130px);overflow:auto}.sticky-panel h3{margin:0 0 8px;color:#fff}.sticky-panel p{color:#d7deea}.sticky-panel a{display:block;color:#fff;border-bottom:1px solid rgba(255,255,255,.13);padding:10px 0;font-weight:750}.sticky-panel a:hover{color:var(--gold2)}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.feature{display:flex;gap:12px;background:#fbfaf6;border:1px solid var(--line);border-radius:16px;padding:16px}.feature span{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:var(--gold);font-weight:900}.feature p{margin:0}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card-grid.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.mini-card,.service-link-grid a,.blog-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 10px 28px rgba(16,24,39,.07);display:block;min-height:118px}.mini-card strong,.service-link-grid strong{display:block;color:var(--navy);font-size:18px;margin-bottom:8px}.mini-card span,.service-link-grid span{color:var(--muted);font-size:14px}.service-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 10px 26px rgba(16,24,39,.06)}.step b{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--gold);margin-bottom:12px}.step h3{margin:0 0 8px}.narrow{max-width:900px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:16px;margin:12px 0;padding:0 18px;box-shadow:0 8px 22px rgba(16,24,39,.04)}.faq-list summary{cursor:pointer;font-weight:850;padding:18px 0;color:var(--navy)}.faq-list p{margin:0;padding:0 0 18px}.cta-band{background:linear-gradient(135deg,#0b1220,#1f3354);color:#fff;padding:56px 0}.cta-grid{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center}.cta-band h2{font-size:clamp(28px,4vw,46px);color:#fff;margin:0 0 10px}.cta-band p{color:#e9eef7}.cta-actions{display:flex;gap:12px;flex-wrap:wrap}.footer{background:#090f1c;color:#dbe2ee;padding:58px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px}.footer a{display:block;color:#dbe2ee;margin:8px 0}.footer h3{color:#fff}.foot-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.mobile-sticky-call{display:none;position:fixed;left:16px;right:16px;bottom:14px;z-index:999;background:var(--gold)!important;color:#111!important;text-align:center;padding:13px;border-radius:999px;box-shadow:0 12px 30px rgba(0,0,0,.25)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1/-1}label{display:block;font-weight:800;margin-bottom:6px}input,select,textarea{width:100%;padding:13px 14px;border:1px solid #d8d2c3;border-radius:12px;background:#fff}textarea{min-height:140px}.alert{padding:14px 16px;border-radius:12px;margin-bottom:18px}.alert.ok{background:#e8f8ed;color:#14532d}.alert.err{background:#fee2e2;color:#7f1d1d}.home-intro-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:28px}.stat-box{background:var(--navy);color:#fff;border-radius:var(--radius);padding:28px}.stat-box strong{display:block;font-size:42px;color:var(--gold)}
@media (max-width:1080px){.content-layout{grid-template-columns:1fr}.sticky-panel{position:relative;top:auto;max-height:none}.steps{grid-template-columns:repeat(2,1fr)}.card-grid,.card-grid.compact{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.mega{left:auto;right:0;transform:none;width:min(900px,calc(100vw - 32px));grid-template-columns:repeat(2,1fr)}}
@media (max-width:860px){.topbar-inner{justify-content:center;text-align:center}.brand span{display:none}.nav-toggle{display:block}.main-nav{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:2px solid var(--gold);box-shadow:var(--shadow);display:none;max-height:calc(100vh - 90px);overflow:auto}.main-nav.open{display:block}.main-nav>ul{display:block;padding:12px}.main-nav a{padding:14px}.mega{position:static;display:none!important;transform:none;width:auto;box-shadow:none;border:0;border-radius:14px;padding:12px;background:#fbf8ef;grid-template-columns:1fr}.has-mega.open .mega{display:grid!important}.hero-content,.hero-home .hero-content{padding:72px 0}.content-card{padding:24px}.service-link-grid,.feature-grid,.home-intro-grid{grid-template-columns:1fr}.cta-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.mobile-sticky-call{display:block}.footer{padding-bottom:82px}}
@media (max-width:560px){.wrap{width:min(100% - 24px,var(--wrap))}.card-grid,.card-grid.compact,.steps,.footer-grid{grid-template-columns:1fr}.hero h1{font-size:38px}.hero-lead{font-size:18px}.section{padding:48px 0}.btn{width:100%}.hero-buttons,.cta-actions{width:100%}.content-card h2{font-size:28px}.topbar{font-size:12px}}

/* BOMCAS Media clean hero/banner override - removes all text-bearing photo backgrounds */
.hero-bg,
.hero .hero-bg,
.page-hero .hero-background,
.location-hero .hero-background,
.hero-background {
  background-image: none !important;
  background:
    radial-gradient(circle at 14% 18%, rgba(212,175,55,.22) 0, rgba(212,175,55,.10) 18%, transparent 42%),
    radial-gradient(circle at 86% 12%, rgba(255,255,255,.14) 0, rgba(255,255,255,.04) 14%, transparent 34%),
    linear-gradient(135deg, #071225 0%, #0b1b37 45%, #102c58 100%) !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.hero-bg::before,
.hero .hero-bg::before,
.page-hero .hero-background::before,
.location-hero .hero-background::before,
.hero-background::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(112deg, rgba(255,255,255,.065) 0 2px, transparent 2px 100%) !important;
  background-size: 155px 100% !important;
  opacity: .26 !important;
  pointer-events: none !important;
}
.hero-bg::after,
.hero .hero-bg::after,
.page-hero .hero-background::after,
.location-hero .hero-background::after,
.hero-background::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  height: auto !important;
  background:
    linear-gradient(135deg, rgba(4,9,20,.84) 0%, rgba(7,17,36,.68) 42%, rgba(10,25,50,.60) 100%),
    radial-gradient(circle at 34% 78%, rgba(212,175,55,.20) 0, transparent 32%),
    radial-gradient(circle at 80% 56%, rgba(255,255,255,.08) 0, transparent 27%) !important;
  z-index: -1 !important;
  pointer-events: none !important;
}
.hero,
.page-hero,
.location-hero {
  background: linear-gradient(135deg, #071225 0%, #0b1b37 45%, #102c58 100%) !important;
}
.hero-content,
.page-hero-content {
  position: relative !important;
  z-index: 2 !important;
}

/* BOMCAS HERO CLEAN INLINE OVERRIDE */

/* BOMCAS Media clean hero/banner override - removes all text-bearing photo backgrounds */
.hero-bg,
.hero .hero-bg,
.page-hero .hero-background,
.location-hero .hero-background,
.hero-background {
  background-image: none !important;
  background:
    radial-gradient(circle at 14% 18%, rgba(212,175,55,.22) 0, rgba(212,175,55,.10) 18%, transparent 42%),
    radial-gradient(circle at 86% 12%, rgba(255,255,255,.14) 0, rgba(255,255,255,.04) 14%, transparent 34%),
    linear-gradient(135deg, #071225 0%, #0b1b37 45%, #102c58 100%) !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.hero-bg::before,
.hero .hero-bg::before,
.page-hero .hero-background::before,
.location-hero .hero-background::before,
.hero-background::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(112deg, rgba(255,255,255,.065) 0 2px, transparent 2px 100%) !important;
  background-size: 155px 100% !important;
  opacity: .26 !important;
  pointer-events: none !important;
}
.hero-bg::after,
.hero .hero-bg::after,
.page-hero .hero-background::after,
.location-hero .hero-background::after,
.hero-background::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  height: auto !important;
  background:
    linear-gradient(135deg, rgba(4,9,20,.84) 0%, rgba(7,17,36,.68) 42%, rgba(10,25,50,.60) 100%),
    radial-gradient(circle at 34% 78%, rgba(212,175,55,.20) 0, transparent 32%),
    radial-gradient(circle at 80% 56%, rgba(255,255,255,.08) 0, transparent 27%) !important;
  z-index: -1 !important;
  pointer-events: none !important;
}
.hero,
.page-hero,
.location-hero {
  background: linear-gradient(135deg, #071225 0%, #0b1b37 45%, #102c58 100%) !important;
}
.hero-content,
.page-hero-content {
  position: relative !important;
  z-index: 2 !important;
}



/* ================================================================
   BOMCAS professional design hotfix - 2026-05-23
   Fixes invisible outline buttons on light sections, footer phone pill,
   and footer Privacy/Terms separator layout.
   ================================================================ */
.btn.outline{
  border-color: var(--gold) !important;
  color: var(--navy) !important;
  background: #ffffff !important;
  box-shadow: 0 10px 26px rgba(16,24,39,.08) !important;
}
.btn.outline:hover,
.btn.outline:focus{
  background: var(--navy) !important;
  border-color: var(--navy) !important;
  color: #ffffff !important;
}
.hero .btn.outline,
.hero-home .btn.outline,
.cta-band .btn.outline,
.page-hero .btn.outline,
.location-hero .btn.outline{
  border-color: rgba(255,255,255,.92) !important;
  color: #ffffff !important;
  background: rgba(255,255,255,.10) !important;
}
.hero .btn.outline:hover,
.hero .btn.outline:focus,
.hero-home .btn.outline:hover,
.hero-home .btn.outline:focus,
.cta-band .btn.outline:hover,
.cta-band .btn.outline:focus,
.page-hero .btn.outline:hover,
.page-hero .btn.outline:focus,
.location-hero .btn.outline:hover,
.location-hero .btn.outline:focus{
  background: #ffffff !important;
  border-color: #ffffff !important;
  color: var(--navy) !important;
}
.cta-band .btn.light.phone-visible,
.cta-band a.phone-visible.btn.light{
  display: inline-flex !important;
  width: auto !important;
  max-width: max-content !important;
  color: var(--navy) !important;
  background: #ffffff !important;
  border: 2px solid #ffffff !important;
  padding: 13px 22px !important;
  border-radius: 999px !important;
  box-shadow: 0 10px 25px rgba(16,24,39,.10) !important;
}
.cta-band .btn.light.phone-visible:hover,
.cta-band a.phone-visible.btn.light:hover{
  background: var(--gold) !important;
  border-color: var(--gold) !important;
  color: #111111 !important;
}
.footer p .phone-visible,
.footer a.phone-visible{
  display: inline-flex !important;
  width: auto !important;
  max-width: max-content !important;
  color: #ffffff !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  line-height: inherit !important;
  font-weight: 800 !important;
}
.footer a.phone-visible:hover{
  color: var(--gold2) !important;
}
.foot-bottom{
  align-items: center !important;
}
.foot-bottom span:last-child{
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
}
.foot-bottom a{
  display: inline !important;
  margin: 0 !important;
  color: #ffffff !important;
}
.foot-bottom a:hover{
  color: var(--gold2) !important;
}
@media (max-width:560px){
  .foot-bottom{
    display: block !important;
    text-align: center !important;
  }
  .foot-bottom span{
    display: block !important;
    margin: 8px 0 !important;
  }
  .foot-bottom span:last-child{
    justify-content: center !important;
    display: inline-flex !important;
  }
}


/* ================================================================
   BOMCAS final audit fixes - mobile navigation, contact form, buttons
   ================================================================ */
.site-header{z-index:5000!important;}
.nav-toggle{cursor:pointer;line-height:1;min-width:48px;min-height:44px;align-items:center;justify-content:center;}
.nav-toggle:focus{outline:3px solid rgba(212,175,55,.45);outline-offset:3px;}
@media (max-width:860px){
  body.nav-open{overflow:hidden;}
  .site-header .header-inner{position:relative;}
  .nav-toggle{display:inline-flex!important;}
  .main-nav{display:none!important;position:absolute!important;left:0!important;right:0!important;top:100%!important;background:#fff!important;border:1px solid var(--line)!important;border-top:3px solid var(--gold)!important;border-radius:0 0 18px 18px!important;box-shadow:0 22px 50px rgba(16,24,39,.20)!important;max-height:calc(100vh - 95px)!important;overflow:auto!important;z-index:6000!important;}
  .main-nav.open{display:block!important;}
  .main-nav>ul{display:block!important;padding:14px!important;margin:0!important;}
  .main-nav>ul>li{display:block!important;border-bottom:1px solid #f1ead9!important;}
  .main-nav>ul>li:last-child{border-bottom:0!important;}
  .main-nav a{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:15px 12px!important;border-radius:12px!important;color:var(--navy)!important;background:transparent!important;}
  .main-nav a.nav-btn,.main-nav .nav-btn{background:var(--gold)!important;color:#111!important;justify-content:center!important;margin-top:10px!important;}
  .has-mega .mega{display:none!important;position:static!important;width:100%!important;transform:none!important;box-shadow:none!important;border:0!important;border-radius:14px!important;background:#faf7ef!important;margin:0 0 10px!important;padding:14px!important;grid-template-columns:1fr!important;}
  .has-mega.open .mega{display:grid!important;}
  .mega-cta{margin-top:8px!important;}
}
.form-grid label:has(input[type="checkbox"]),
.consent-row{
  display:flex!important;align-items:flex-start!important;gap:12px!important;width:100%!important;margin:10px 0 4px!important;padding:14px 16px!important;background:#fbfaf6!important;border:1px solid var(--line)!important;border-radius:14px!important;font-weight:800!important;color:var(--navy)!important;line-height:1.45!important;cursor:pointer!important;
}
.form-grid label:has(input[type="checkbox"]) input[type="checkbox"],
.consent-row input[type="checkbox"]{
  width:20px!important;height:20px!important;min-width:20px!important;flex:0 0 20px!important;margin:2px 0 0 0!important;padding:0!important;accent-color:var(--gold)!important;appearance:auto!important;-webkit-appearance:auto!important;
}
.form-grid label:has(input[type="checkbox"]) span,
.consent-row span{display:block!important;}
.btn.outline{border-color:var(--gold)!important;color:var(--navy)!important;background:#fff!important;}
.section .btn.outline,.content-card .btn.outline{color:var(--navy)!important;background:#fff!important;border-color:var(--gold)!important;}
.section .btn.outline:hover,.content-card .btn.outline:hover{color:#fff!important;background:var(--navy)!important;border-color:var(--navy)!important;}
.hero .btn.outline,.cta-band .btn.outline{border-color:#fff!important;color:#fff!important;background:rgba(255,255,255,.10)!important;}
.hero .btn.outline:hover,.cta-band .btn.outline:hover{background:#fff!important;color:var(--navy)!important;}
.footer .phone-visible{background:transparent!important;padding:0!important;border-radius:0!important;display:inline!important;color:#fff!important;}
.foot-bottom span:last-child{display:inline-flex!important;gap:8px!important;align-items:center!important;white-space:nowrap!important;}
.foot-bottom span:last-child a{display:inline!important;margin:0!important;}
@media(max-width:560px){.foot-bottom{text-align:center!important;justify-content:center!important}.foot-bottom span:last-child{justify-content:center!important;display:inline-flex!important}.form-grid label:has(input[type="checkbox"]),.consent-row{align-items:flex-start!important}}

.turnstile-wrap{display:flex;align-items:center;justify-content:flex-start;margin:4px 0 4px;padding:12px 0}.cf-turnstile{min-height:65px}


/* ================================================================
   BOMCAS mobile menu hard fix - reliable off-canvas drawer
   ================================================================ */
.nav-toggle{appearance:none;-webkit-appearance:none;user-select:none;touch-action:manipulation;position:relative;z-index:9002;}
.nav-toggle .menu-icon-open,.nav-toggle .menu-icon-close{display:inline-block;font-weight:900;font-size:28px;line-height:1;}
.nav-toggle .menu-icon-close{display:none;}
body.bomcas-menu-open .nav-toggle .menu-icon-open{display:none;}
body.bomcas-menu-open .nav-toggle .menu-icon-close{display:inline-block;}
.bomcas-mobile-overlay{display:none;}
@media (max-width:1024px){
  html.bomcas-menu-locked,body.bomcas-menu-open{overflow:hidden!important;}
  .site-header{z-index:9000!important;}
  .site-header .header-inner{position:relative!important;}
  .nav-toggle{display:inline-flex!important;background:var(--navy)!important;color:#fff!important;border:2px solid var(--gold)!important;border-radius:14px!important;min-width:54px!important;min-height:48px!important;padding:8px 12px!important;align-items:center!important;justify-content:center!important;box-shadow:0 10px 24px rgba(16,24,39,.18)!important;}
  .bomcas-mobile-overlay{display:block;position:fixed;inset:0;background:rgba(5,10,20,.62);backdrop-filter:blur(3px);z-index:8990;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease;}
  body.bomcas-menu-open .bomcas-mobile-overlay{opacity:1;visibility:visible;pointer-events:auto;}
  .main-nav{
    display:block!important;position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;width:min(88vw,390px)!important;height:100vh!important;max-height:100vh!important;overflow-y:auto!important;background:#fff!important;border-left:4px solid var(--gold)!important;border-top:0!important;border-radius:0!important;box-shadow:-28px 0 70px rgba(0,0,0,.35)!important;z-index:9001!important;padding:92px 18px 28px!important;transform:translateX(112%)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:transform .26s ease,opacity .22s ease,visibility .22s ease!important;
  }
  body.bomcas-menu-open .main-nav,.main-nav.bomcas-open{transform:translateX(0)!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
  .main-nav>ul{display:block!important;margin:0!important;padding:0!important;list-style:none!important;}
  .main-nav>ul>li{display:block!important;margin:0!important;border-bottom:1px solid #efe7d5!important;}
  .main-nav>ul>li>a,.main-nav a{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;padding:15px 10px!important;border-radius:12px!important;color:var(--navy)!important;background:transparent!important;font-weight:850!important;font-size:16px!important;text-align:left!important;}
  .main-nav a:hover,.main-nav a:focus{background:#f6eed8!important;color:#111!important;}
  .main-nav .nav-btn,.main-nav a.nav-btn{display:flex!important;justify-content:center!important;background:var(--gold)!important;color:#111!important;margin:16px 0 0!important;border-radius:999px!important;}
  .has-mega .mega{position:static!important;display:none!important;transform:none!important;width:100%!important;grid-template-columns:1fr!important;gap:8px!important;background:#fbf8ef!important;border:1px solid #efe7d5!important;border-radius:16px!important;box-shadow:none!important;margin:0 0 14px!important;padding:12px!important;}
  .has-mega.open .mega,.has-mega.bomcas-subopen .mega{display:grid!important;}
  .mega h3{font-size:16px!important;margin:8px 0!important;color:var(--navy)!important;}
  .mega a{padding:9px 8px!important;border-bottom:1px solid #eee4cd!important;border-radius:8px!important;font-size:14px!important;}
  .mega-cta{padding:16px!important;border-radius:14px!important;margin-top:8px!important;}
}


/* ================================================================
   BOMCAS mobile drawer viewport-scroll fix - 2026-05-23
   Ensures the hamburger menu always opens from the top of the drawer
   even after the page has been scrolled.
   ================================================================ */
@media (max-width:1024px){
  html.bomcas-menu-locked,
  body.bomcas-menu-open{
    overflow:hidden!important;
    overscroll-behavior:none!important;
    touch-action:none!important;
  }
  .site-header{z-index:9500!important;}
  .bomcas-mobile-overlay{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    z-index:9490!important;
  }
  .main-nav{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:auto!important;
    left:auto!important;
    width:min(92vw,430px)!important;
    height:100vh!important;
    height:100dvh!important;
    max-height:100vh!important;
    max-height:100dvh!important;
    margin:0!important;
    padding:78px 18px calc(30px + env(safe-area-inset-bottom,0px))!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior:contain!important;
    background:#fff!important;
    border-left:4px solid var(--gold)!important;
    border-top:0!important;
    border-radius:0!important;
    transform:translate3d(112%,0,0)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:9501!important;
    scroll-behavior:auto!important;
  }
  body.bomcas-menu-open .main-nav,
  .main-nav.bomcas-open{
    transform:translate3d(0,0,0)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    display:block!important;
  }
  .main-nav>ul{
    display:block!important;
    margin:0!important;
    padding:0!important;
    min-height:auto!important;
  }
  .main-nav>ul>li:first-child{
    border-top:1px solid #efe7d5!important;
  }
  body.bomcas-menu-open .nav-toggle{
    position:fixed!important;
    top:16px!important;
    right:18px!important;
    z-index:9502!important;
  }
}
@media (max-width:480px){
  .main-nav{width:calc(100vw - 22px)!important;padding-top:76px!important;}
}

/* ================================================================
   BOMCAS definitive mobile menu replacement - full screen overlay
   Fixes partial/random menu display after page scroll by not using the
   desktop nav as the mobile drawer.
   ================================================================ */
.bomcas-mobile-fullscreen{display:none;}
@media (max-width:1024px){
  .nav-toggle{display:inline-flex!important;background:var(--navy)!important;color:#fff!important;border:2px solid var(--gold)!important;border-radius:14px!important;min-width:54px!important;min-height:48px!important;padding:8px 12px!important;align-items:center!important;justify-content:center!important;position:relative!important;z-index:100050!important;}
  body.bomcas-menu-open{overflow:hidden!important;position:fixed!important;width:100%!important;}
  body.bomcas-menu-open .main-nav{display:none!important;visibility:hidden!important;pointer-events:none!important;transform:none!important;opacity:0!important;}
  body.bomcas-menu-open .bomcas-mobile-overlay{display:none!important;}
  .bomcas-mobile-fullscreen{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;height:100dvh!important;background:rgba(5,10,20,.70)!important;z-index:100000!important;display:block!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .18s ease,visibility .18s ease!important;overflow:hidden!important;}
  .bomcas-mobile-fullscreen.is-open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;}
  .bomcas-mobile-shell{position:absolute!important;top:0!important;right:0!important;bottom:0!important;width:min(92vw,440px)!important;height:100vh!important;height:100dvh!important;background:#fff!important;border-left:4px solid var(--gold)!important;box-shadow:-28px 0 70px rgba(0,0,0,.35)!important;display:flex!important;flex-direction:column!important;transform:translateX(105%)!important;transition:transform .22s ease!important;}
  .bomcas-mobile-fullscreen.is-open .bomcas-mobile-shell{transform:translateX(0)!important;}
  .bomcas-mobile-head{position:sticky!important;top:0!important;z-index:2!important;background:#fff!important;border-bottom:1px solid #efe7d5!important;padding:16px 18px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;}
  .bomcas-mobile-head img{height:46px!important;width:auto!important;display:block!important;}
  .bomcas-mobile-close{appearance:none!important;border:2px solid var(--gold)!important;background:var(--navy)!important;color:#fff!important;border-radius:14px!important;width:48px!important;height:48px!important;font-size:30px!important;line-height:1!important;font-weight:900!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;}
  .bomcas-mobile-scroll{overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important;padding:12px 18px 34px!important;flex:1 1 auto!important;scroll-behavior:auto!important;}
  .bomcas-mobile-scroll a{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;padding:15px 10px!important;border-bottom:1px solid #efe7d5!important;border-radius:10px!important;color:var(--navy)!important;font-weight:850!important;font-size:16px!important;text-decoration:none!important;background:#fff!important;}
  .bomcas-mobile-scroll a:hover,.bomcas-mobile-scroll a:focus{background:#f6eed8!important;color:#111!important;}
  .bomcas-mobile-section{padding:6px 0 12px!important;border-bottom:1px solid #efe7d5!important;}
  .bomcas-mobile-summary{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;background:#fff!important;border:0!important;border-bottom:1px solid #efe7d5!important;color:var(--navy)!important;font-weight:900!important;font-size:16px!important;padding:15px 10px!important;text-align:left!important;cursor:pointer!important;}
  .bomcas-mobile-summary::after{content:'+';font-size:24px;line-height:1;color:var(--gold-dark,#9a7414);}
  .bomcas-mobile-section.open .bomcas-mobile-summary::after{content:'-';}
  .bomcas-mobile-sub{display:none!important;padding:6px 0 8px 12px!important;background:#fbf8ef!important;border-radius:14px!important;margin:8px 0!important;}
  .bomcas-mobile-section.open .bomcas-mobile-sub{display:block!important;}
  .bomcas-mobile-sub h3{font-size:13px!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:#667085!important;margin:12px 8px 4px!important;}
  .bomcas-mobile-sub a{font-size:14px!important;padding:10px 8px!important;background:transparent!important;}
  .bomcas-mobile-contact{display:flex!important;justify-content:center!important;text-align:center!important;background:var(--gold)!important;color:#111!important;border:0!important;border-radius:999px!important;margin:16px 0 4px!important;padding:15px 18px!important;box-shadow:0 12px 24px rgba(16,24,39,.14)!important;}
}


/* Header brand cleanup: show only logo, no tagline beside it */
.site-header .brand span,.header-inner .brand span,.brand-tagline,.site-tagline{display:none!important;}
.site-header .brand{gap:0!important;}
