/*SUBMENU TEMPLATE START*/

:root{
  --pacy-header-h: 80px; /* space for main header on mobile overlay */
  --pacy-blue: #075ab0;
  --pacy-ink: #0f172a;
  --pacy-ink-2: #212938;
  --pacy-paper: #ffffff;
  --pacy-surface: #f7f7f7;
}

/* Section bar */
.pacy-secbar{background:var(--pacy-surface);border-bottom:0;}
.pacy-secbar__inner{
  max-width: var(--global-content-width, 1200px);
  margin: 0 auto; padding: 0 16px;
  display: grid; grid-template-columns: 1fr auto; grid-template-areas: "title nav";
  gap: 12px; align-items: center;
}
.pacy-secbar__title{grid-area:title;margin:0;font-weight:600;font-size:clamp(14px,2vw,18px);line-height:1.2;color:var(--pacy-ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pacy-secbar__title a{text-decoration:none;color:inherit}

/* Desktop nav */
.pacy-nav{grid-area:nav;list-style:none;margin:0;padding:0;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pacy-nav>li{position:relative}
.pacy-btn{border:none;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:none;color:var(--pacy-ink);text-decoration:none;font-weight:500;font-size:16px;white-space:nowrap;transition:background .2s,border-color .2s,box-shadow .2s}
.pacy-btn:hover {background:none;color:var(--pacy-ink);}
.pacy-btn.is-active{background:var(--pacy-blue);color:#fff;border-radius:0;}
.pacy-badge{font-size:10px;font-weight:800;letter-spacing:.3px;background:#ffd24d;border-radius:999px;padding:3px 6px;color:#111}
.pacy-caret{border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid currentColor;display:inline-block}

/* Desktop dropdown */
.pacy-sub{position:absolute;left:0;top:100%;min-width:240px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:0;box-shadow:0 0 0 rgba(0,0,0,.14);padding:8px;display:none;z-index:100}
.pacy-sub a{display:block;padding:10px 12px;border-radius:10px;text-decoration:none;color:var(--pacy-ink);font-weight:500;font-size:15px;}
.pacy-nav>li:hover>.pacy-sub,.pacy-nav>li:focus-within>.pacy-sub{display:block}

/* Mobile burger */
.pacy-burger{display:none;grid-area:nav;width:44px;height:44px;border-radius:12px;border:1px solid rgba(33,41,56,.12);background:var(--pacy-surface);color:var(--pacy-blue);align-items:center;justify-content:center;cursor:pointer}
.pacy-burger .bars,.pacy-burger .bars:before,.pacy-burger .bars:after{content:"";display:block;width:20px;height:2px;background:currentColor;border-radius:2px;position:relative;transition:transform .2s,opacity .2s}
.pacy-burger .bars:before{position:absolute;top:-6px}
.pacy-burger .bars:after{position:absolute;top:6px}
.pacy-burger.is-open .bars{transform:rotate(45deg)}
.pacy-burger.is-open .bars:before{transform:rotate(-90deg);top:0}
.pacy-burger.is-open .bars:after{opacity:0}
@media (max-width:782px){
  .pacy-secbar__inner{grid-template-columns:1fr auto;grid-template-areas:"title nav"}
  .pacy-nav{display:none}
  .pacy-burger{display:inline-flex}
}

/* Full-screen mobile overlay */
.pacy-overlay{position:fixed;left:0;right:0;bottom:0;top:var(--pacy-header-h);background:#071a4b;color:#fff;display:none;z-index:10000}
.pacy-overlay.is-open{display:block}
.pacy-ol__inner{max-width:var(--global-content-width,1200px);margin:0 auto;padding:18px 16px}
.pacy-ol__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.pacy-ol__title{font-size:20px;font-weight:800;margin:0}
.pacy-close{appearance:none;border:0;background:transparent;color:#fff;font-size:28px;line-height:1;width:44px;height:44px;border-radius:10px;cursor:pointer}
.pacy-close:focus{outline:2px solid #ffffff55;outline-offset:2px}

/* overlay list */
.pacy-olist{list-style:none;margin:8px 0 0;padding:0}
.pacy-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 8px;border-bottom:1px solid #23346a;color:#fff;font-weight:800;font-size:20px;text-decoration:none;background:transparent}
.pacy-row[aria-disabled="true"]{opacity:.55}
.pacy-chevron{display:inline-block;width:10px;height:10px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg);transition:transform .2s}
.pacy-item.open .pacy-chevron{transform:rotate(-135deg)}
.pacy-children{display:none;padding:8px 0 8px 8px}
.pacy-children a{display:block;color:#fff;text-decoration:none;padding:12px 8px;border-bottom:1px dashed #2b3e85}
.pacy-children a:last-child{border-bottom:0}
.pacy-draft{background:#ffd24d;color:#111;border-radius:999px;font-size:12px;font-weight:900;padding:4px 8px;margin-left:10px}

/* Content container (always constrained) */
.pacy-content{max-width:var(--global-content-width,1200px);margin:0 auto;padding:0 16px}

/*SUBMENU TEMPLATE END*/

/* ============================================================
   Buttons panel (auto-generated)
   ============================================================ */
.pacy-points{background:var(--pacy-paper); margin:0 0 35px;}
.pacy-points__wrap{max-width:var(--global-content-width); margin:0 auto; padding:28px 16px 12px;}
.pacy-points__heading{margin:0 0 16px; font-weight:800; color:var(--pacy-ink);}

/* grid: max 3 columns */
.pacy-points__grid{display:grid; gap:14px; counter-reset: pacyBtn;}
@media (min-width:480px){ .pacy-points__grid{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:768px){ .pacy-points__grid{ grid-template-columns:repeat(3,1fr); } }

/* button card */
.pacy-point{
  display:flex; align-items:center; justify-content:flex-start; gap:12px;
  text-decoration:none; background:var(--pacy-blue); color:#fff;
  border-radius:0px; padding:12px 18px; border:1px solid #08336f;
  transition:transform .08s ease, box-shadow .12s ease;
  counter-increment: pacyBtn;
}
.pacy-point:hover{ transform: translateY(-0px); box-shadow: 0 6px 16px rgba(0,0,0,.08); }

/* number chip — hide HTML text, render via counter */
.pacy-point__num{
  position: relative;
  font-size:0; /* hide any number text printed by PHP */
  background:none; border:0px solid #0d4ca9; color:rgba(255, 255, 255, 0.45);
  padding:10px 5px 10px 0px; border-radius:12px; min-width:45px; text-align:center;
}
.pacy-point__num::before{
  content: counter(pacyBtn, decimal-leading-zero);
  font-size:13px; font-weight:800; letter-spacing:.5px; line-height:1;
}

.pacy-point__title{font-weight:800; line-height:1.3; font-size:16px; flex-grow:1;}
.pacy-point__chev{
  width:10px;height:10px;border-right:2px solid #fff;border-bottom:2px solid #fff;
  transform:rotate(45deg);opacity:.95;margin-left:auto;
}

/* ============================================================
   Full-width gray band for content boxes
   ============================================================ */
.pacy-block-section{
  background: var(--pacy-surface);
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  padding: 48px 0;
  margin-bottom: 48px;
}
.pacy-block-section__inner{
  max-width: var(--global-content-width);
  margin: 0 auto;
  padding: 0 16px;
  counter-reset: pacyBox; /* counter for boxes ONLY */
}

/* ============================================================
   Content box (.pm_content_box)
   ============================================================ */
.pm_content_box{
  --pm-box-pad: 24px;
  background: var(--pacy-paper);
  border: 1px solid #dbe2ee;
  margin: 0 auto 32px auto;
  overflow: hidden;
  box-shadow: 0 2px 6px rgba(0,0,0,.04);
}

/* remove Kadence paddings inside our box */
.pm_content_box .kt-row-layout-inner,
.pm_content_box .wp-block-group__inner-container,
.pm_content_box .wp-block-kadence-rowlayout,
.pm_content_box .kt-row-column-wrap{ padding:0 !important; }

/* blue header — flush to edges, auto-number */
.pm_content_box h2.pm_content_title{
  margin:0;
  margin-bottom: 25px;
  margin-left: calc(-1 * var(--pm-box-pad));
  margin-right: calc(-1 * var(--pm-box-pad));
  margin-top: calc(-1 * var(--pm-box-pad));
  background: var(--pacy-blue); color:#fff;
  font-weight:800; font-size: clamp(22px, 2.2vw, 32px); line-height:1.25;
  padding:22px var(--pm-box-pad);
  display:flex; align-items:center; gap:18px;
  counter-increment: pacyBox; /* increment box counter */
}
.pm_content_box h2.pm_content_title::before{
  content: counter(pacyBox, decimal-leading-zero); /* 01, 02, 03... */
  font-size:22px; font-weight:800; color:rgba(255, 255, 255, 0.46); line-height:1; margin-right:8px;background: none ;
padding: 8px;
border-radius: 8px;
}

/* body — force padding on the first content wrapper */
.pm_content_box > :not(h2.pm_content_title){
  padding: var(--pm-box-pad) !important; /* ensure padding even after we zero inner wrappers */
  color: var(--pacy-ink-2);
  font-size: 16px; line-height:1.65; background: var(--pacy-paper);
}

/* optional inline highlights in titles */
.pm_content_box h2.pm_content_title em,
.pm_content_box h2.pm_content_title strong{ font-style:normal; }
.pm_content_box h2.pm_content_title .highlight-blue{ color:#4da3ff; }
.pm_content_box h2.pm_content_title .highlight-yellow{ color:#ffd33d; }

/* anchor offset (if you have sticky headers) */
:target::before{ content:""; display:block; height:96px; margin-top:-96px; visibility:hidden; }



/* Make sure dropdown can open and stack above hero */
.pacy-secbar { position: relative; z-index: 50; }
.pacy-nav > li { position: relative; }

/* Dropdown defaults hidden */
.pacy-sub {
  position: absolute;
  left: 0;
  top: 100%;
  display: none;
  z-index: 9999;
}

/* Show on hover/focus and when JS toggles .open */
.pacy-nav > li:hover > .pacy-sub,
.pacy-nav > li:focus-within > .pacy-sub,
.pacy-nav > li.open > .pacy-sub {
  display: block;
}
