@charset "UTF-8";

/* Original stylesheet from your project, with WordPress-friendly path updates */

:root{
  --bc-blue:#005DAA;
  --bc-yellow:#FEB727;
  --bc-black:#000000;
  --bc-gray:#A0A0A0;
  --ui-text:#1f2a37;
  --ui-muted:#607086;
  --ui-border:#e5edf6;
  --ui-soft:#f5f8fc;
  --ui-shadow:0 10px 24px rgba(0,0,0,.08);
  --radius:18px;
  --ease:cubic-bezier(.2,.8,.2,1);
}

@font-face{
  font-family:"Assiduous";
  src:
    url("../fonts/Assiduous.woff2") format("woff2"),
    url("../fonts/Assiduous.woff") format("woff");
  font-weight:100 900;
  font-style:normal;
  font-display:swap;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  background:#fff;
  color:var(--ui-text);
  line-height:1.5;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.wrap{max-width:1200px;margin:0 auto;padding:0 18px}

.h-font,
h1,h2,h3,
.brand,.btn,.nav a,.nav .menu a,
.pill,.tag,summary,.mini,label{
  font-family: Arial, Helvetica, sans-serif;
  letter-spacing:.2px;
}

/* top line / nav */
.nav-topline{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  padding:8px 0;
  border-bottom:1px solid var(--ui-border);
}
.phone{
  font-weight:900;
  font-size:12px;
  color:var(--bc-blue);
  text-decoration:none;
  white-space:nowrap;
}
.phone:hover{text-decoration:underline}

.navbar{
  background:#fff;
  border-bottom:1px solid var(--ui-border);
  position:sticky;
  top:0;
  z-index:100;
}
.nav-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  padding:14px 0;
}
.brand img{height:60px;width:auto}
.nav{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
  margin-left:auto;
}
.nav .menu{
  list-style:none;
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
  padding:0;
  flex-wrap:wrap;
}
.nav .menu li{margin:0;padding:0}
.nav a,
.nav .menu a{
  text-decoration:none;
  font-weight:900;
  color:var(--ui-text);
  font-size:12px;
  padding:8px 10px;
  border-radius:12px;
/* display:inline-block; */
}
.nav a:hover,
.nav .menu a:hover{
  color:var(--bc-blue) !important;
  background:rgba(0,93,170,.06);
}

/* buttons */
.btn{
  background:var(--bc-blue);
  color:#fff !important;
  padding:10px 16px;
  border-radius:12px;
  text-decoration:none;
  font-weight:900;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid transparent;
  box-shadow:0 10px 18px rgba(0,93,170,.18);
  transition:transform .12s var(--ease), background .15s var(--ease), box-shadow .15s var(--ease);
  min-height:44px;
  white-space:nowrap;
  cursor:pointer;
}
.btn:hover{background:#044f8f;transform:translateY(-1px)}
.btn.ghost{
  background:#fff;
  border:1px solid rgba(0,93,170,.22);
  color:var(--bc-blue) !important;
  box-shadow:none;
}
.btn.ghost:hover{background:rgba(0,93,170,.05)}
.btn.yellow{
  background:var(--bc-yellow);
  color:#111827 !important;
  border:1px solid rgba(0,0,0,.08);
  box-shadow:0 10px 18px rgba(254,183,39,.22);
}
.btn.yellow:hover{background:#f3ab12}
.btn.buy{
  background:#fff;
  color:var(--bc-blue) !important;
  border:1px solid rgba(0,93,170,.28);
  box-shadow:none;
}
.btn.buy:hover{background:rgba(0,93,170,.05)}

/* hero */
.hero{
  padding:44px 0 28px;
  background:
    radial-gradient(1200px 520px at 20% 10%, rgba(254,183,39,.18), rgba(255,255,255,0)),
    linear-gradient(180deg, rgba(0,93,170,.10), rgba(0,93,170,0));
  border-bottom:1px solid var(--ui-border);
}
.hero.hero--image{
  background:url("../images/hero-bg.png") center/cover no-repeat;
  position:relative;
  padding:92px 0;
}
.hero.hero--image:before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.62);
}
.hero.hero--image .wrap{position:relative;text-align:center}
.hero-panel{
  max-width:980px;
  margin:0 auto;
  padding:26px 18px;
  border-radius:22px;
  background:rgba(255,255,255,.55);
  box-shadow:var(--ui-shadow);
  border:1px solid rgba(229,237,246,.75);
}
.kicker{
  margin-top:10px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:900;
  color:var(--bc-blue);
  background:rgba(0,93,170,.06);
  border:1px solid rgba(0,93,170,.16);
  padding:8px 12px;
  border-radius:999px;
}
.kicker .dot{
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--bc-yellow);
}
.hero h1{
  margin:12px 0 8px;
  font-size:34px;
  font-weight:900;
  color:var(--bc-black);
}
.hero.hero--image h1{font-size:42px;margin:14px 0 10px}
.hero p{
  margin:0;
  color:var(--ui-muted);
  font-size:14px;
  max-width:98ch;
}
.hero.hero--image p{max-width:760px;margin:0 auto}
.hero .actions{
  margin-top:16px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  justify-content:center;
}
.hero .actions .btn{min-width:190px}

/* sections */
.section{padding:44px 0}
.section-title{text-align:center;margin-bottom:20px}
.section-title h2{
  margin:0 0 8px;
  font-size:26px;
  font-weight:900;
  color:var(--bc-black);
}
.section-title p{
  margin:0;
  color:var(--ui-muted);
  font-size:13px;
}

/* tiles */
.tile-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  align-items:stretch;
}
.tile{
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--ui-border);
  box-shadow:var(--ui-shadow);
  display:flex;
  flex-direction:column;
  height:100%;
  transition:transform .15s var(--ease), box-shadow .15s var(--ease);
}
.tile:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 32px rgba(0,0,0,.10);
}
.tile-image{
  height:170px;
  background-size:cover;
  background-position:center;
  position:relative;
  flex:0 0 auto;
}
.tile-image:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,.18));
}
.tile-image.jobshop{background-image:url("../images/jobshop.jpg")}
.tile-image.woodworking{background-image:url("../images/woodworking.jpg")}
.tile-image.lpw{background-image:url("../images/lpw.jpg")}
.tile-image.surfaces{background-image:url("../images/surface.jpg")}
.tile-image.multiaxis{background-image:url("../images/multiaxis.jpg")}
.tile-image.millturn{background-image:url("../images/millturn.jpg")}
.tile-image.lathe{background-image:url("../images/lathe.jpg")}

.tile-content{
  padding:18px;
  display:flex;
  flex-direction:column;
  gap:12px;
  flex:1;
}
.tile-content h3{
  margin:0;
  font-size:20px;
  color:var(--bc-black);
}
.tile-content p{
  margin:0;
  color:var(--ui-muted);
  font-size:14px;
}
.tile .actions{
  display:flex;
  flex-wrap:wrap;
  flex-direction: column;
  align-content: stretch;
  gap:10px;
  margin-top:auto;
}

/* machines */
.machine-grid{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:12px;
}
.machine{
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--ui-soft);
  padding:14px;
  border-radius:12px;
  text-align:center;
  font-weight:900;
  border:1px solid var(--ui-border);
  color:var(--bc-blue);
  font-size:12px;
  text-decoration:none;
  transition:transform .12s var(--ease), background .15s var(--ease), box-shadow .15s var(--ease), border-color .15s var(--ease);
}
.machine:hover{
  transform:translateY(-1px);
  background:#fff;
  border-color:rgba(0,93,170,.22);
  box-shadow:0 10px 18px rgba(0,0,0,.06);
}
.machine:focus{
  outline:none;
  box-shadow:0 0 0 3px rgba(0,93,170,.14), 0 10px 18px rgba(0,0,0,.06);
}

/* panels/details */
.panel{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  overflow:hidden;
}
.panelHead{
  padding:14px 16px;
  border-bottom:1px solid var(--ui-border);
  background:var(--ui-soft);
}
.panelHead h3{margin:0;color:var(--bc-blue);font-size:16px;font-weight:900}
.panelBody{padding:16px}

.collapsible{
  background:var(--ui-soft);
  border-top:1px solid var(--ui-border);
  border-bottom:1px solid var(--ui-border);
}
.details{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  overflow:hidden;
}
.details summary{
  list-style:none;
  cursor:pointer;
  padding:18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.details summary::-webkit-details-marker{display:none}
.details-title{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.details-title strong{font-size:18px;color:var(--bc-black)}
.details-title span{font-size:13px;color:var(--ui-muted)}
.chev{
  width:40px;
  height:40px;
  border-radius:12px;
  border:1px solid rgba(0,93,170,.18);
  background:rgba(0,93,170,.06);
  color:var(--bc-blue);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:transform .18s var(--ease), background .18s var(--ease);
  flex:0 0 auto;
}
details[open] .chev{transform:rotate(180deg);background:rgba(0,93,170,.10)}
.divider{height:1px;background:var(--ui-border)}
.details-body{padding:0 18px 18px}

.tableWrap{
  width:100%;
  overflow:auto;
  border:1px solid var(--ui-border);
  border-radius:16px;
  background:#fff;
  margin-top:16px;
}
.compareTable{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  min-width:980px;
}
.compareTable th,
.compareTable td{
  padding:12px;
  border-bottom:1px solid var(--ui-border);
  vertical-align:top;
  font-size:12px;
  color:var(--ui-text);
}
.compareTable th{
  position:sticky;
  top:0;
  background:var(--ui-soft);
  font-weight:900;
  text-align:left;
  color:var(--bc-black);
}
.compareTable td:first-child,
.compareTable th:first-child{
  position:sticky;
  left:0;
  background:#fff;
  z-index:2;
  font-weight:900;
  color:var(--bc-black);
  border-right:1px solid var(--ui-border);
  min-width:190px;
}
.compareTable th:first-child{background:var(--ui-soft);z-index:3}
.compareTable tr:hover td{background:rgba(0,93,170,.03)}
.compareTable tr:hover td:first-child{background:#fff}
.miniNote{margin:12px 0 0;color:var(--ui-muted);font-size:12px}

/* proof/testimonials */
.proof{
  background:url("../images/customers.jpg") center/cover no-repeat;
  position:relative;
  padding:56px 0;
}
.proof:before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,255,255,.86);
}
.proof .wrap{position:relative}
.quote-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.quote-card{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  padding:18px;
}
.quote-card h3{margin:0 0 8px;color:var(--bc-black);font-size: 18px;}
.quote-card p{margin:0;color:var(--ui-muted);font-size:14px}

/* demo form */
.demo-card{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  padding:20px;
  max-width:900px;
  margin:0 auto;
}
.form-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.field{display:flex;flex-direction:column;gap:8px}
.field-full{grid-column:1 / -1}
.field label{
  font-size:12px;
  font-weight:900;
  color:var(--bc-blue);
}
.field input,
.field select,
.field textarea{
  width:100%;
  border:1px solid var(--ui-border);
  border-radius:12px;
  padding:12px 14px;
  font:inherit;
  color:var(--ui-text);
  background:#fff;
}
.field input:focus,
.field select:focus,
.field textarea:focus{
  outline:none;
  border-color:rgba(0,93,170,.45);
  box-shadow:0 0 0 4px rgba(0,93,170,.08);
}

/* footer */
footer{
  background:var(--ui-soft);
  padding:28px 0;
  text-align:center;
  font-size:12px;
  color:var(--ui-muted);
  border-top:1px solid var(--ui-border);
}

/* responsive */
@media(max-width:900px){
  .tile-grid{grid-template-columns:1fr 1fr}
  .quote-grid{grid-template-columns:1fr}
  .machine-grid{grid-template-columns:repeat(3,1fr)}
  .nav-topline{justify-content:center}
  .nav-row{flex-direction:column;align-items:flex-start}
  .nav{width:100%;justify-content:flex-start}
}
@media(max-width:600px){
  .tile-grid{grid-template-columns:1fr}
  .machine-grid{grid-template-columns:repeat(2,1fr)}
  .hero h1{font-size:26px}
  .hero.hero--image h1{font-size:30px}
  .hero .actions .btn,
  .tile .actions .btn,
  .form-grid{grid-template-columns:1fr}
  .hero .actions .btn,
  .tile .actions .btn{min-width:100%;width:100%}
  .brand img{height:52px}
}


/* =========================================================
   SOLUTION PAGE / LEGACY SUBPAGE SUPPORT
   Add below the main theme styles
========================================================= */

.solution-page .hero-panel{
  max-width: 980px;
}

.solution-hero .hero-intro{
  max-width: 760px;
  margin: 0 auto;
}

.breadcrumb{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:flex-start;
  margin-bottom:18px;
  font-size:14px;
  font-weight:700;
  color:var(--ui-muted);
}
.breadcrumb a{
  color:var(--bc-blue);
  text-decoration:none;
}
.breadcrumb a:hover{
  text-decoration:underline;
}
.breadcrumb .sep{
  opacity:.6;
}

.solution-main-shell{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  padding:28px;
}
.solution-main-shell > *:first-child{
  margin-top:0;
}
.solution-main-shell > *:last-child{
  margin-bottom:0;
}
/*
.solution-main-shell h2,
.solution-main-shell h3{
  color:var(--bc-black);
}
.solution-main-shell .wp-block-buttons,
.solution-main-shell .buttons{
  margin-top:18px;
}
*/

/* alternate hero/content wrappers used by original subpages */
.heroCard{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:22px;
  box-shadow:var(--ui-shadow);
  padding:22px 18px;
}

.heroActions{
  margin-top:16px;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}
.heroActions .btn{
  min-width:180px;
}

/* alias for older markup */
.sectionTitle{
  text-align:center;
  margin-bottom:20px;
}
.sectionTitle h2{
  margin:0 0 8px;
  font-size:26px;
  font-weight:900;
  color:var(--bc-black);
}
.sectionTitle p{
  margin:0;
  color:var(--ui-muted);
  font-size:13px;
}

/* shared action rows inside legacy cards */
.actions{
  margin-top:auto;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding-top:12px;
}

/* tags / pills */
.pills{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:12px;
}
.pill{
  padding:6px 10px;
  border-radius:999px;
  background:rgba(0,93,170,.06);
  border:1px solid rgba(0,93,170,.16);
  color:var(--bc-blue);
  font-size:11px;
  font-weight:900;
}

.tagRow{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.tag{
  padding:7px 10px;
  border-radius:999px;
  background:rgba(0,93,170,.06);
  border:1px solid rgba(0,93,170,.16);
  color:var(--bc-blue);
  font-size:11px;
  font-weight:900;
}

/* capability cards */
.capGrid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  align-items:stretch;
}
.cap{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  padding:16px;
  display:flex;
  flex-direction:column;
  min-height:210px;
}
.cap h3{
  margin:0 0 8px;
  color:var(--bc-blue);
  font-weight:900;
  font-size:16px;
}
.cap p{
  margin:0;
  color:var(--ui-muted);
  font-size:13px;
}
.cap .actions{
  margin-top:auto;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  padding-top:12px;
}

/* generic content grids/cards used by several subpages */
.grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  align-items:stretch;
}
.card{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  padding:16px;
  display:flex;
  flex-direction:column;
  min-height:220px;
}
.card h3{
  margin:0 0 8px;
  font-size:15px;
  font-weight:950;
  color:var(--bc-blue);
}
.card p{
  margin:0;
  color:var(--ui-muted);
  font-size:13px;
}

/* import formats */
.importBox{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  padding:16px;
}
.importGrid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-top:10px;
}
.importItem{
  background:var(--ui-soft);
  border:1px solid var(--ui-border);
  border-radius:14px;
  padding:10px;
  font-weight:900;
  color:var(--ui-text);
  font-size:12px;
  text-align:center;
}
.note{
  margin-top:10px;
  color:var(--ui-muted);
  font-size:12px;
  text-align:left;
}

/* accordion block style used by original subpages */
details.block{
  border:1px solid var(--ui-border);
  border-radius:16px;
  overflow:hidden;
  background:#fff;
  margin:12px 0;
}
details.block summary{
  list-style:none;
  cursor:pointer;
  padding:12px 14px;
  font-weight:900;
  color:var(--bc-blue);
  background:rgba(0,93,170,.06);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
details.block summary::-webkit-details-marker{
  display:none;
}
.blockContent{
  padding:12px 14px 14px;
}
.blockContent p{
  margin:0 0 10px;
  color:var(--ui-muted);
  font-size:13px;
}
.blockContent ul,
.blockContent ol{
  margin:10px 0 0;
  padding-left:18px;
  color:var(--ui-muted);
  font-size:13px;
}
.blockContent li{
  margin:6px 0;
}

.callout{
  margin-top:10px;
  border:1px solid rgba(254,183,39,.45);
  background:rgba(254,183,39,.18);
  padding:12px;
  border-radius:14px;
}
.callout .mini{
  margin:0 0 6px;
  font-weight:900;
  color:#111827;
  font-size:12px;
}
.callout .line{
  margin:0;
  color:#111827;
  font-size:12px;
}

/* video / embed layouts */
.videoGrid,
.video-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
  margin-top:18px;
}
.vcard{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  overflow:hidden;
  display:flex;
  flex-direction:column;
}
.embed{
  position:relative;
  width:100%;
  padding-top:56.25%;
  background:#0b1220;
}
.embed iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:0;
}
.vmeta{
  padding:14px 16px 16px;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.vmeta h3{
  margin:0;
  font-size:16px;
  font-weight:900;
  color:var(--bc-blue);
}
.vmeta h4{
  margin:0 0 6px;
  font-size:14px;
  font-weight:900;
  color:var(--bc-blue);
}
.vmeta p{
  margin:0;
  color:var(--ui-muted);
  font-size:13px;
}
.vmeta .row{
  display:flex;
  justify-content: center;
  gap:10px;
  flex-wrap:wrap;
  margin-top:4px;
}

/* value cards / complex surfaces */
.valueGrid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  align-items:stretch;
}
.valueGrid .card{
  min-height:240px;
  padding:14px;
}
.valueGrid .card h3{
  margin:0 0 8px;
  font-size:15px;
  font-weight:950;
  color:var(--bc-blue);
}
.valueGrid .card p{
  margin:0;
  color:var(--ui-muted);
  font-size:12px;
}
.valueGrid .card ul,
.valueGrid .card ol{
  margin:12px 0 0;
  padding-left:18px;
  font-family:Arial, Helvetica, sans-serif;
  font-size:13px;
  line-height:1.5;
  color:var(--ui-muted);
}
.valueGrid .card li{
  margin:6px 0;
  font-family:Arial, Helvetica, sans-serif;
  font-size:13px;
  line-height:1.5;
  color:var(--ui-muted);
}

/* feature grids / multi-axis */
.featureGrid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.feature{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  padding:14px;
  display:flex;
  flex-direction:column;
  min-height:240px;
}
.feature h3{
  margin:0 0 8px;
  font-size:15px;
  font-weight:950;
  color:var(--bc-blue);
}
.feature p{
  margin:0;
  color:var(--ui-muted);
  font-size:12px;
}

/* optional legacy update cards if used later */
.page-updates .card h3{
  color:var(--bc-blue);
}

/* better default content styling inside solution main shell */
.solution-main-shell p{
  color:var(--ui-muted);
}
.solution-main-shell ul,
.solution-main-shell ol{
  padding-left:22px;
  color:var(--ui-muted);
}
.solution-main-shell li{
  margin:6px 0;
}
.solution-main-shell iframe{
  max-width:100%;
}
.solution-main-shell .wp-block-image img{
  border-radius:14px;
}

/* responsive */
@media(max-width:1100px){
  .capGrid{grid-template-columns:repeat(2,1fr)}
  .importGrid{grid-template-columns:repeat(3,1fr)}
  .grid{grid-template-columns:repeat(2,1fr)}
  .valueGrid{grid-template-columns:repeat(2,1fr)}
  .featureGrid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:900px){
  .videoGrid,
  .video-grid{grid-template-columns:1fr}
  .importGrid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:700px){
  .grid{grid-template-columns:1fr}
}

@media(max-width:600px){
  .capGrid{grid-template-columns:1fr}
  .importGrid{grid-template-columns:1fr}
  .valueGrid{grid-template-columns:1fr}
  .featureGrid{grid-template-columns:1fr}
  .solution-main-shell{padding:20px}
  .heroActions .btn{min-width:100%; width:100%}
}

.text-center {
  text-align: center;
}


/* Style for sub page template are below */
/*

.breadcrumb{
  display:flex;
  gap:8px;
  align-items:center;
  justify-content:flex-start;
  margin-bottom:18px;
  font-size:14px;
  font-weight:700;
  color:var(--ui-muted);
}
.breadcrumb a{
  color:var(--bc-blue);
  text-decoration:none;
}
.breadcrumb a:hover{
  text-decoration:underline;
}
.breadcrumb .sep{
  opacity:.6;
}
.solution-main-shell{
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:18px;
  box-shadow:var(--ui-shadow);
  padding:28px;
}
.solution-main-shell > *:first-child{
  margin-top:0;
}
.solution-main-shell > *:last-child{
  margin-bottom:0;
}
.solution-main-shell h2,
.solution-main-shell h3{
  color:var(--bc-black);
}
.solution-main-shell .wp-block-buttons,
.solution-main-shell .buttons{
  margin-top:18px;
}
*/


/* =========================================================
   FLYOUT NAV MENU
========================================================= */

.mobile-menu-toggle{
  display:none;
  width:46px;
  height:46px;
  border:1px solid var(--ui-border);
  background:#fff;
  border-radius:12px;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
  cursor:pointer;
}
.mobile-menu-toggle span{
  display:block;
  width:20px;
  height:2px;
  background:var(--bc-blue);
  border-radius:2px;
}
.mobile-menu-toggle .screen-reader-text{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(1px,1px,1px,1px);
}

.primary-nav{
  position:relative;
}

.desktop-flyout-menu{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.desktop-flyout-menu > li{
  position:relative;
  list-style:none;
}

.desktop-flyout-menu > li > .menu-item-inner{
  display:flex;
  align-items:center;
  gap:4px;
}

.menu-link{
  text-decoration:none;
  display:inline-flex;
  align-items:center;
}

.top-link{
  font-weight:900;
  color:var(--ui-text);
  font-size:14px;
  padding:10px 14px;
  border-radius:12px;
  transition:background .15s ease, color .15s ease;
}

.desktop-flyout-menu > li:hover > .menu-item-inner > .top-link,
.desktop-flyout-menu > li.menu-open > .menu-item-inner > .top-link{
  background:rgba(0,93,170,.08);
  color:var(--bc-blue);
}

.submenu-toggle{
  border:0;
  background:transparent;
  padding:0;
  margin:0;
  cursor:pointer;
  color:var(--bc-blue);
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

.submenu-toggle-top{
  display:none;
  width:22px;
  height:22px;
}

.submenu-toggle-sub{
  display:inline-flex;
  width:20px;
  height:20px;
  margin-left:auto;
  flex:0 0 auto;
}

.submenu-caret{
  font-size:14px;
  line-height:1;
}

.flyout-panel{
  position:absolute;
  top:100%;
  left:0;
  min-width:220px;
  background:#fff;
  border:1px solid var(--ui-border);
  border-radius:14px;
  box-shadow:0 16px 36px rgba(0,0,0,.12);
  padding:10px;
  list-style:none;
  margin:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(8px);
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
  z-index:200;
}

.desktop-flyout-menu > li:hover > .flyout-panel,
.desktop-flyout-menu > li.menu-open > .flyout-panel,
.flyout-panel > li:hover > .flyout-panel,
.flyout-panel > li.menu-open > .flyout-panel{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}

.desktop-flyout-menu > li{
  position:relative;
}

.desktop-flyout-menu > li.has-flyout::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:100%;
  height:14px;
}

.flyout-panel li{
  position:relative;
  list-style:none;
}

.flyout-panel .menu-item-inner{
  display:flex;
  align-items:center;
  gap:10px;
}

.sub-link{
  display:flex;
  align-items:center;
  width:100%;
  padding:12px 14px;
  border-radius:10px;
  font-size:15px;
  font-weight:700;
  color:var(--ui-text);
  transition:background .15s ease, color .15s ease;
}

.flyout-panel li:hover > .menu-item-inner > .sub-link,
.flyout-panel li.menu-open > .menu-item-inner > .sub-link{
  background:#f1f4f8;
  color:var(--bc-blue);
}

.flyout-panel .sub-panel{
  top:0;
  left:100%;
  margin:0;
  transform:translateX(0);
}

.flyout-panel > li.has-flyout::after{
  content:"";
  position:absolute;
  top:0;
  left:100%;
  width:14px;
  height:100%;
}

.flyout-panel > li:hover > .sub-panel,
.flyout-panel > li.menu-open > .sub-panel{
  transform:translateX(0);
}

.nav-cta{
  margin-left:10px;
}

/* Optional right-edge correction helper */
.flyout-panel.align-left{
  left:auto;
  right:100%;
  margin-left:0;
  margin-right:8px;
}

@media(max-width:980px){
  .mobile-menu-toggle{
    display:flex;
  }

  .nav-row{
    align-items:center;
    flex-wrap:wrap;
  }

  .primary-nav{
    display:none;
    width:100%;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    margin-top:12px;
    padding:14px;
    border:1px solid var(--ui-border);
    border-radius:18px;
    background:#fff;
    box-shadow:var(--ui-shadow);
  }

  .primary-nav.is-open{
    display:flex;
  }

  .desktop-flyout-menu{
    flex-direction:column;
    align-items:stretch;
    width:100%;
    gap:6px;
  }

  .desktop-flyout-menu,
  .desktop-flyout-menu ul{
    list-style:none;
    margin:0;
    padding:0;
  }

  .desktop-flyout-menu > li,
  .flyout-panel li{
    width:100%;
  }

  .desktop-flyout-menu > li > .menu-item-inner,
  .flyout-panel .menu-item-inner{
    display:grid;
    grid-template-columns:1fr 44px;
    align-items:center;
    gap:8px;
    width:100%;
  }

  .top-link,
  .sub-link{
    display:flex;
    align-items:center;
    width:100%;
    min-height:44px;
    padding:10px 14px;
    border-radius:12px;
    background:#f8fafc;
    color:var(--ui-text);
    font-size:15px;
    font-weight:800;
  }

  .desktop-flyout-menu > li > .menu-item-inner > .top-link{
    background:#fff;
    border:1px solid var(--ui-border);
  }

  .menu-open > .menu-item-inner > .top-link,
  .menu-open > .menu-item-inner > .sub-link{
    background:#eef3f8;
    color:var(--bc-blue);
  }

  .submenu-toggle-top,
  .submenu-toggle-sub{
    display:inline-flex;
    width:44px;
    height:44px;
    border-radius:12px;
    border:1px solid var(--ui-border);
    background:#f8fafc;
    color:var(--bc-blue);
    align-items:center;
    justify-content:center;
    flex:0 0 44px;
  }

  .submenu-toggle .submenu-caret{
    font-size:14px;
    transition:transform .18s ease;
  }

  .menu-open > .menu-item-inner .submenu-toggle .submenu-caret{
    transform:rotate(90deg);
  }

  .flyout-panel,
  .flyout-panel .sub-panel{
    position:static;
    min-width:0;
    width:100%;
    margin:6px 0 6px;
    padding:0;
    border:0;
    box-shadow:none;
    border-radius:0;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
    display:none;
    background:transparent;
  }

  .menu-open > .flyout-panel{
    display:block;
  }

  .flyout-panel{
    padding-left:14px;
  }

  .flyout-panel .flyout-panel{
    padding-left:14px;
  }

  .flyout-panel .sub-link{
    background:#f8fafc;
    border:1px solid #edf2f7;
  }

  .flyout-panel .flyout-panel .sub-link{
    background:#f3f6fa;
  }

  .nav-cta{
    margin:12px 0 0;
    width:100%;
    justify-content:center;
  }
}

/* Mobile
@media(max-width:980px){
  .mobile-menu-toggle{
    display:flex;
  }

  .nav-row{
    align-items:center;
  }

  .primary-nav{
    display:none;
    width:100%;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    margin-top:12px;
    padding:14px;
    border:1px solid var(--ui-border);
    border-radius:18px;
    background:#fff;
    box-shadow:var(--ui-shadow);
  }

  .primary-nav.is-open{
    display:flex;
  }

  .desktop-flyout-menu{
    flex-direction:column;
    align-items:stretch;
    width:100%;
    gap:4px;
  }

  .desktop-flyout-menu > li{
    width:100%;
  }

  .desktop-flyout-menu > li > .menu-item-inner,
  .flyout-panel .menu-item-inner{
    display:flex;
    align-items:center;
    width:100%;
    gap:8px;
  }

  .top-link,
  .sub-link{
    width:100%;
    padding:14px 12px;
    border-radius:12px;
  }

  .submenu-toggle-top,
  .submenu-toggle-sub{
    width:42px;
    height:42px;
    border-radius:10px;
    background:#f5f8fc;
    border:1px solid var(--ui-border);

    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 42px;
  }

  .flyout-panel,
  .flyout-panel .sub-panel{
    position:static;
    min-width:0;
    width:100%;
    margin:4px 0 8px;
    padding:6px 0 0 14px;
    border:0;
    box-shadow:none;
    border-radius:0;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
    display:none;
    background:transparent;
  }

  .menu-open > .flyout-panel{
    display:block;
  }

  .flyout-panel .sub-link{
    background:#f8fafc;
    font-size:14px;
  }

  .flyout-panel .flyout-panel .sub-link{
    background:#f1f5f9;
  }

  .nav-cta{
    margin:10px 0 0;
    width:100%;
    justify-content:center;
  }
}
*/