
/* Hive5 custom navigation – intended to replace Kadence Primary Navigation content. */
.h5-custom-nav{display:flex;align-items:center}
.h5-custom-nav-list{display:flex;align-items:center;gap:10px;list-style:none;margin:0;padding:0}
.h5-custom-nav-item{position:relative}
.h5-custom-nav-item>a{
  display:inline-flex;align-items:center;gap:6px;
  padding:11px 13px;border-radius:12px;
  color:var(--h5-navy,#0C3883)!important;
  font-weight:700;font-size:15px;line-height:1;
  transition:.18s ease;
}
.h5-custom-nav-item>a:hover,
.h5-custom-nav-item:focus-within>a{
  background:#EAF3FF;color:var(--h5-blue,#275AB1)!important
}
.h5-custom-nav-caret{font-size:14px;line-height:1;transform:translateY(-1px)}
.h5-custom-submenu{
  position:absolute;left:0;top:calc(100% + 10px);z-index:1000;
  width:390px;padding:14px;
  display:grid;grid-template-columns:1fr 100px;gap:12px;
  background:#fff;border:1px solid #E2EAF2;border-radius:18px;
  box-shadow:0 18px 50px rgba(12,56,131,.16);
  opacity:0;visibility:hidden;transform:translateY(8px);
  transition:.16s ease;
}
.h5-custom-nav-item:hover>.h5-custom-submenu,
.h5-custom-nav-item:focus-within>.h5-custom-submenu{
  opacity:1;visibility:visible;transform:translateY(0)
}
.h5-custom-submenu-list{display:grid;gap:8px}
.h5-custom-submenu-item{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:13px 14px;border-radius:13px;
  background:#F7FBFF;color:var(--h5-navy,#0C3883)!important;
  border:1px solid transparent;
}
.h5-custom-submenu-item:hover{background:#EEF6FF;border-color:#D7E5F4}
.h5-custom-submenu-item strong{font-size:14px}
.h5-custom-submenu-accent{
  position:relative;min-height:100%;
  border-radius:14px;background:linear-gradient(150deg,#FFF4B7,#DDF7F5);
  overflow:hidden
}
.h5-custom-nav-doodle{position:absolute;display:block;border-radius:999px;background:#FFD015}
.h5-custom-nav-doodle--1{width:10px;height:48px;right:48px;top:18px;transform:rotate(26deg)}
.h5-custom-nav-doodle--2{width:10px;height:40px;right:24px;top:34px;transform:rotate(54deg)}
.h5-custom-nav-doodle--3{width:10px;height:34px;right:16px;top:66px;transform:rotate(84deg);background:#44CCC8}

@media(max-width:1180px){
  .h5-custom-nav-list{gap:4px}
  .h5-custom-nav-item>a{padding:10px 9px;font-size:14px}
}
@media(max-width:900px){
  .h5-custom-nav{display:none}
}

/* Shared decorative doodles across Hive5 custom pages.
 * v0.5.23 unified outline system.
 */
.h5-theme-page{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.h5-theme-page>.h5-page-doodles{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  overflow:hidden;
}
.h5-theme-page>section{
  position:relative;
  z-index:2;
}
.h5-page-doodle{
  position:absolute;
  display:none;
  width:var(--d-size,56px);
  height:var(--d-size,56px);
  transform:rotate(var(--d-rot,0deg));
  opacity:.74;
  pointer-events:none;
}
.h5-page-doodle svg{
  display:block;
  width:100%;
  height:100%;
  overflow:visible;
}
.h5-page-doodle svg *{
  fill:none!important;
  stroke:var(--d-color,#44CCC8);
  stroke-width:8;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}

/* Global outline sizes / brand colours */
.h5-page-doodle--1{--d-size:72px;--d-color:#44CCC8;--d-rot:-8deg}
.h5-page-doodle--2{--d-size:46px;--d-color:#FFD015;--d-rot:14deg}
.h5-page-doodle--3{--d-size:64px;--d-color:#FF9FC2;--d-rot:-14deg}
.h5-page-doodle--4{--d-size:82px;--d-color:#275AB1;--d-rot:10deg}
.h5-page-doodle--5{--d-size:54px;--d-color:#FF7744;--d-rot:22deg}
.h5-page-doodle--6{--d-size:92px;--d-color:#02B784;--d-rot:-12deg}
.h5-page-doodle--7{--d-size:50px;--d-color:#44CCC8;--d-rot:26deg}
.h5-page-doodle--8{--d-size:76px;--d-color:#FFD015;--d-rot:-18deg}
.h5-page-doodle--9{--d-size:58px;--d-color:#275AB1;--d-rot:8deg}
.h5-page-doodle--10{--d-size:86px;--d-color:#FF9FC2;--d-rot:-24deg}
.h5-page-doodle--11{--d-size:44px;--d-color:#FF7744;--d-rot:16deg}
.h5-page-doodle--12{--d-size:68px;--d-color:#02B784;--d-rot:-6deg}
.h5-page-doodle--13{--d-size:96px;--d-color:#44CCC8;--d-rot:18deg}
.h5-page-doodle--14{--d-size:56px;--d-color:#FFD015;--d-rot:-20deg}
.h5-page-doodle--15{--d-size:74px;--d-color:#275AB1;--d-rot:12deg}
.h5-page-doodle--16{--d-size:88px;--d-color:#FF9FC2;--d-rot:-10deg}
.h5-page-doodle--17{--d-size:48px;--d-color:#FF7744;--d-rot:28deg}
.h5-page-doodle--18{--d-size:80px;--d-color:#02B784;--d-rot:-16deg}
.h5-page-doodle--19{--d-size:60px;--d-color:#44CCC8;--d-rot:6deg}
.h5-page-doodle--20{--d-size:70px;--d-color:#FFD015;--d-rot:-26deg}

/* Safe-gutter placement only on wide desktop. */
@media(min-width:1380px){
  .h5-page-doodle{display:block}

  .h5-home .h5-page-doodle--1{top:10%;left:20px}
  .h5-home .h5-page-doodle--4{top:24%;right:24px}
  .h5-home .h5-page-doodle--7{top:38%;left:34px}
  .h5-home .h5-page-doodle--10{top:52%;right:18px}
  .h5-home .h5-page-doodle--13{top:68%;left:24px}
  .h5-home .h5-page-doodle--16{top:82%;right:32px}
  .h5-home .h5-page-doodle--19{top:92%;left:46px}

  .h5-clubs-page .h5-page-doodle--2{top:12%;left:28px}
  .h5-clubs-page .h5-page-doodle--5{top:27%;right:22px}
  .h5-clubs-page .h5-page-doodle--8{top:41%;left:42px}
  .h5-clubs-page .h5-page-doodle--11{top:56%;right:34px}
  .h5-clubs-page .h5-page-doodle--14{top:71%;left:24px}
  .h5-clubs-page .h5-page-doodle--17{top:84%;right:26px}
  .h5-clubs-page .h5-page-doodle--20{top:93%;left:50px}

  .h5-birthday-page .h5-page-doodle--3{top:13%;right:28px}
  .h5-birthday-page .h5-page-doodle--6{top:29%;left:22px}
  .h5-birthday-page .h5-page-doodle--9{top:44%;right:42px}
  .h5-birthday-page .h5-page-doodle--12{top:59%;left:34px}
  .h5-birthday-page .h5-page-doodle--15{top:73%;right:24px}
  .h5-birthday-page .h5-page-doodle--18{top:87%;left:38px}

  .h5-membership-page .h5-page-doodle--1{top:15%;left:26px}
  .h5-membership-page .h5-page-doodle--5{top:32%;right:30px}
  .h5-membership-page .h5-page-doodle--8{top:48%;left:40px}
  .h5-membership-page .h5-page-doodle--12{top:64%;right:22px}
  .h5-membership-page .h5-page-doodle--16{top:79%;left:30px}
  .h5-membership-page .h5-page-doodle--20{top:92%;right:44px}

  .h5-visit-page .h5-page-doodle--2{top:14%;right:28px}
  .h5-visit-page .h5-page-doodle--6{top:30%;left:24px}
  .h5-visit-page .h5-page-doodle--10{top:46%;right:38px}
  .h5-visit-page .h5-page-doodle--14{top:62%;left:34px}
  .h5-visit-page .h5-page-doodle--18{top:78%;right:22px}
  .h5-visit-page .h5-page-doodle--19{top:91%;left:48px}
}

/* ONE hero burst rule for all custom pages */
.h5-hero-media-burst{
  position:absolute!important;
  left:-72px!important;
  right:auto!important;
  top:64px!important;
  width:54px!important;
  height:48px!important;
  z-index:1!important;
  pointer-events:none!important;
}
.h5-hero-media-burst i{
  position:absolute;
  display:block;
  width:7px;
  border-radius:999px;
  background:#FFD015;
}
.h5-hero-media-burst i:nth-child(1){height:32px;left:3px;top:1px;transform:rotate(20deg)}
.h5-hero-media-burst i:nth-child(2){height:28px;left:21px;top:8px;transform:rotate(50deg)}
.h5-hero-media-burst i:nth-child(3){height:23px;left:37px;top:17px;transform:rotate(78deg)}

/* Hero content always above decorations */
.h5-home-hero-copy,
.h5-clubs-hero-copy,
.h5-birthday-hero-copy,
.h5-membership-hero-copy,
.h5-visit-hero-copy,
.h5-home-hero-media,
.h5-clubs-hero-media,
.h5-birthday-hero-media,
.h5-membership-hero-media,
.h5-visit-hero-media{
  position:relative;
  z-index:3;
}

/* Remove old hero pseudo shapes */
.h5-home-hero-media::after,
.h5-clubs-hero-media::after,
.h5-birthday-hero-media::after,
.h5-membership-hero-media::after,
.h5-visit-hero-media::after{
  content:none!important;
  display:none!important;
}

@media(max-width:1379px){
  .h5-page-doodles{display:none!important}
}
@media(max-width:1180px){
  .h5-hero-media-burst{
    left:-56px!important;
    top:54px!important;
    transform:scale(.86);
    transform-origin:center;
  }
}
@media(max-width:900px){
  .h5-hero-media-burst{display:none!important}
}

/* Custom-page links never inherit Kadence underlines */
.h5-theme-page a,
.h5-theme-page a:hover,
.h5-theme-page a:focus,
.h5-theme-page a:visited{
  text-decoration:none!important;
  text-decoration-line:none!important
}

/* v0.5.24 — decoration safety + shared Quick Facts styling */

/* Shapes may sit on section backgrounds, but only in guaranteed outer gutters.
 * The 1180px content shell is never entered.
 */
.h5-theme-page>.h5-page-doodles{
  z-index:1!important;
}
.h5-theme-page>section{
  position:relative;
  z-index:auto!important;
}
.h5-home-shell,
.h5-clubs-shell,
.h5-birthday-shell,
.h5-membership-shell,
.h5-visit-shell{
  position:relative;
  z-index:3;
}

/* Wide-screen only: at 1540px the 1180px shell has ~180px safe gutters.
 * Even the largest outline shapes remain outside readable content.
 */
@media(max-width:1539px){
  .h5-page-doodles{display:none!important}
}
@media(min-width:1540px){
  .h5-page-doodle{display:block!important}
  .h5-page-doodle[style]{max-width:110px;max-height:110px}
}

/* One identical hero grid gap and one identical burst placement on every custom page.
 * The 54px burst fits completely inside the 90px inter-column gap.
 */
@media(min-width:1101px){
  .h5-home-hero-grid,
  .h5-clubs-hero-grid,
  .h5-birthday-hero-grid,
  .h5-membership-hero-grid,
  .h5-visit-hero-grid{
    column-gap:90px!important;
  }

  .h5-hero-media-burst{
    left:-72px!important;
    right:auto!important;
    top:58px!important;
    width:54px!important;
    height:48px!important;
    transform:none!important;
  }
}
@media(max-width:1100px){
  .h5-hero-media-burst{display:none!important}
}

/* Shared Quick Facts typography and colours — controlled from
 * Hive5 Pages → Global Styles → Quick Facts / Visit Facts.
 */
.h5-clubs-facts,
.h5-birthday-facts-grid,
.h5-membership-facts-grid,
.h5-visit-facts-grid{
  font-family:var(--h5-facts-font,var(--h5-body-font,inherit))!important;
}
.h5-clubs-facts span,
.h5-birthday-facts-grid span,
.h5-membership-facts-grid span,
.h5-visit-facts-grid span{
  color:var(--h5-facts-label-color,#275AB1)!important;
  font-size:var(--h5-facts-label-size,10px)!important;
  font-weight:var(--h5-facts-label-weight,700)!important;
}
.h5-clubs-facts strong,
.h5-birthday-facts-grid strong,
.h5-membership-facts-grid strong,
.h5-visit-facts-grid strong{
  color:var(--h5-facts-value-color,#0C3883)!important;
  font-size:var(--h5-facts-value-size,16px)!important;
  font-weight:var(--h5-facts-value-weight,700)!important;
}
.h5-clubs-facts small,
.h5-birthday-facts-grid small,
.h5-membership-facts-grid small,
.h5-visit-facts-grid small{
  color:var(--h5-facts-note-color,#6C7782)!important;
  font-size:var(--h5-facts-note-size,12px)!important;
  font-weight:var(--h5-facts-note-weight,400)!important;
}

/* v0.5.25 — fix unpositioned doodles stacking at top-left.
 * Only explicitly positioned shapes are ever displayed.
 */
@media(min-width:1540px){
  .h5-page-doodle{
    display:none!important;
  }

  .h5-home .h5-page-doodle--1,
  .h5-home .h5-page-doodle--4,
  .h5-home .h5-page-doodle--7,
  .h5-home .h5-page-doodle--10,
  .h5-home .h5-page-doodle--13,
  .h5-home .h5-page-doodle--16,
  .h5-home .h5-page-doodle--19,

  .h5-clubs-page .h5-page-doodle--2,
  .h5-clubs-page .h5-page-doodle--5,
  .h5-clubs-page .h5-page-doodle--8,
  .h5-clubs-page .h5-page-doodle--11,
  .h5-clubs-page .h5-page-doodle--14,
  .h5-clubs-page .h5-page-doodle--17,
  .h5-clubs-page .h5-page-doodle--20,

  .h5-birthday-page .h5-page-doodle--3,
  .h5-birthday-page .h5-page-doodle--6,
  .h5-birthday-page .h5-page-doodle--9,
  .h5-birthday-page .h5-page-doodle--12,
  .h5-birthday-page .h5-page-doodle--15,
  .h5-birthday-page .h5-page-doodle--18,

  .h5-membership-page .h5-page-doodle--1,
  .h5-membership-page .h5-page-doodle--5,
  .h5-membership-page .h5-page-doodle--8,
  .h5-membership-page .h5-page-doodle--12,
  .h5-membership-page .h5-page-doodle--16,
  .h5-membership-page .h5-page-doodle--20,

  .h5-visit-page .h5-page-doodle--2,
  .h5-visit-page .h5-page-doodle--6,
  .h5-visit-page .h5-page-doodle--10,
  .h5-visit-page .h5-page-doodle--14,
  .h5-visit-page .h5-page-doodle--18,
  .h5-visit-page .h5-page-doodle--19{
    display:block!important;
  }
}


/* Camps page outline doodle positions */
@media(min-width:1540px){
  .h5-camps-page .h5-page-doodle--3,
  .h5-camps-page .h5-page-doodle--7,
  .h5-camps-page .h5-page-doodle--11,
  .h5-camps-page .h5-page-doodle--14,
  .h5-camps-page .h5-page-doodle--18,
  .h5-camps-page .h5-page-doodle--20{display:block!important}

  .h5-camps-page .h5-page-doodle--3{top:12%;left:26px}
  .h5-camps-page .h5-page-doodle--7{top:29%;right:30px}
  .h5-camps-page .h5-page-doodle--11{top:46%;left:38px}
  .h5-camps-page .h5-page-doodle--14{top:63%;right:24px}
  .h5-camps-page .h5-page-doodle--18{top:79%;left:32px}
  .h5-camps-page .h5-page-doodle--20{top:92%;right:42px}
}


/* After School page outline doodle positions */
@media(min-width:1540px){
  .h5-after-page .h5-page-doodle--2,
  .h5-after-page .h5-page-doodle--6,
  .h5-after-page .h5-page-doodle--9,
  .h5-after-page .h5-page-doodle--13,
  .h5-after-page .h5-page-doodle--17,
  .h5-after-page .h5-page-doodle--20{display:block!important}

  .h5-after-page .h5-page-doodle--2{top:11%;left:28px}
  .h5-after-page .h5-page-doodle--6{top:28%;right:30px}
  .h5-after-page .h5-page-doodle--9{top:45%;left:34px}
  .h5-after-page .h5-page-doodle--13{top:61%;right:26px}
  .h5-after-page .h5-page-doodle--17{top:78%;left:38px}
  .h5-after-page .h5-page-doodle--20{top:91%;right:38px}
}
