@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;200;300;400;500;600;700;800;900&display=swap');




.cms-header-block .header-box .header-content{
    position:absolute;
    bottom:10px;
    z-index:9;
    left:15px;
    -webkit-transition:.5s all ease;-moz-transition:.5s all ease;-ms-transition:.5s all ease;-o-transition:.5s all ease;transition:.5s all ease
}

@media only screen and (min-width: 1248px){
    .cms-header-block .header-box .header-content{
        bottom:10px;
        left:50px
    }
}

.cms-header-block .header-box:after{
    background:linear-gradient(180deg, rgba(16, 51, 236, 0) 0%, rgba(0, 0, 0, 0) 03%, #025aa2 200%);
    opacity:1;-webkit-transition:.5s all ease;-moz-transition:.5s all ease;-ms-transition:.5s all ease;-o-transition:.5s all ease;transition:.5s all ease;
}

@media only screen and (min-width: 1248px){
    .cms-header-block .header-box:after{
        background:linear-gradient(180deg, rgba(16, 51, 236, 0) 56.43%, rgba(0, 0, 0, 0) 56.43%, #001946 100%);
        opacity:.7;
        -webkit-transition:.5s all ease;-moz-transition:.5s all ease;-ms-transition:.5s all ease;-o-transition:.5s all ease;transition:.5s all ease;
    }
}

.cms-header-block .header-box:hover:after{
    background:linear-gradient(180deg, rgba(16, 51, 236, 0) 0%, rgba(0, 0, 0, 0) 3.43%, #001946 100%);
    -webkit-transition:.5s all ease;-moz-transition:.5s all ease;-ms-transition:.5s all ease;-o-transition:.5s all ease;transition:.5s all ease;
    opacity:1
}

@media only screen and (min-width: 1248px){
    .cms-header-block .header-box:hover:after{
        background:linear-gradient(180deg, rgba(16, 51, 236, 0) 0%, rgba(0, 0, 0, 0) 3.43%, #001946 100%);
        -webkit-transition:.5s all ease;-moz-transition:.5s all ease;-ms-transition:.5s all ease;-o-transition:.5s all ease;transition:.5s all ease;
         opacity:1;
    }
}

#top-banner .carousel-item{
    overflow:hidden;
}
#top-banner .carousel-item img{
    width:100%;
    padding-bottom:.35em
}
#top-banner .carousel-item video{
    width:100%;
}


.carousel-control-prev,.carousel-control-next,.slick-arrow.slick-prev,.slick-arrow.slick-next{
    opacity:1;
    top:0px;
    bottom:0;
    margin:auto;
    background:rgba(255, 255, 255, 0.25);
    border-radius:100px;
    -moz-border-radius:100px;
    -webkit-border-radius:100px;
    -webkit-box-shadow:0px 4px 4px 0px rgba(0,0,0,.0784313725);
    -moz-box-shadow:0px 4px 4px 0px rgba(0,0,0,.0784313725);
    box-shadow:0px 4px 4px 0px rgba(0,0,0,.0784313725);
    z-index:5;
    width:0px;
    height:0px;
    border:0px dashed #fff !important}
    
@media only screen and (min-width: 768px){
    .carousel-control-prev,.carousel-control-next,.slick-arrow.slick-prev,.slick-arrow.slick-next{
        width:40px;
        height:40px
    }
}
.carousel-control-prev:hover,.carousel-control-prev:focus,
.carousel-control-prev:active,.carousel-control-next:hover,
.carousel-control-next:focus,.carousel-control-next:active,
.slick-arrow.slick-prev:hover,.slick-arrow.slick-prev:focus,
.slick-arrow.slick-prev:active,.slick-arrow.slick-next:hover,
.slick-arrow.slick-next:focus,.slick-arrow.slick-next:active{
    border:1px solid #002453 !important;
    background-color:#ffffff;
    background-repeat:no-repeat;
    background-position:center
}
@media only screen and (min-width: 768px){
    .carousel-control-prev .carousel-control-prev-icon::before,
    .carousel-control-next .carousel-control-next-icon::before,
    .slick-arrow.slick-prev::before,.slick-arrow.slick-next::before{
        font-size:18px;
        opacity:1
    }
}
.carousel-control-prev .carousel-control-prev-icon::before,
.carousel-control-next .carousel-control-next-icon::before,
.slick-arrow.slick-prev::before,.slick-arrow.slick-next::before{
    opacity:0;
    display:block;
    content:"";
    position:absolute;
    font-family:"ops-icon" !important;
    font-weight:900;
    color:#002453;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    font-size:14px;
}
@media only screen and (min-width: 768px){
    .carousel-control-prev .carousel-control-prev-icon::before,
    .carousel-control-next .carousel-control-next-icon::before,
    .slick-arrow.slick-prev::before,.slick-arrow.slick-next::before{
        font-size:18px;
        opacity:1
    }
}


.btn-lg {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}



.btn-link {
    color: #000;
    word-break: break-word;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;
}



.filter-option {
    color: #3d3d3d;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;;
    font-size: 16px
}

.bootstrap-select .dropdown-toggle:after {
    border: none;
    content: "";
    font-family: "Font Awesome 6 Pro";
    color: #3d3d3d
}


input,
button,
select,
optgroup,
textarea {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;
}

.body {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;;
    color: #000;
    background: #fff;
    font-size: 16px;
    font-size: 1rem
}


h1,
.h1,
h2,
.h2,
h3,
.h3 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}

h4,
.h4 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}

h1 small {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;
}

b,
strong,
.text-bold,
.font-weight-bold {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important; 
    font-weight: normal !important
}


.card-title a {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;
}

.page-header,
.section-title {
    color: #333;
    border-bottom: 0;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}

.page-header h1,
.page-header h2,
.page-header h3,
.section-title h1,
.section-title h2,
.section-title h3 {
    margin: 0;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}


.navbar .container .collapse .navbar-nav .nav-item>.nav-link {
    padding: .8rem .4rem;
    position: relative;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-transform: capitalize
}



.navbar .container .collapse .navbar-nav .nav-item .dropdown-menu .list-unstyled>li:hover>.dropdown-item,
.navbar .container .collapse .navbar-nav .nav-item .dropdown-menu .list-unstyled>li:focus>.dropdown-item,
.navbar .container .collapse .navbar-nav .nav-item .dropdown-menu .list-unstyled>li:active>.dropdown-item,
.navbar .container .collapse .navbar-nav .nav-item .dropdown-menu .list-unstyled>li.active>.dropdown-item {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}



.navbar .container .collapse .navbar-nav .nav-item.megamenu .dropdown-menu .dropdown-submenu .dropdown-menu .dropdown-submenu>a {
    padding: .6rem 1rem !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;;
    color: #000 !important
}




@media only screen and (min-width: 768px) {
    .navbar .container .collapse .navbar-collapse .navbar-nav .nav-item .dropdown-menu .container h2 {
        font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;
    }
}



.top-header .container .top-links>li a {
    display: flex;
    align-items: center;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;;
    color: #000;
    font-size: 14px;
    font-size: 0.875rem
}


.top-header .container .top-links .list-inline-item a {
    display: flex;
    align-items: center;
    position: relative;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 500;
}


.nav-customtabs .nav-item .nav-link {
    color: #777;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;
}



#user_loginpage .page-sub-header h2 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;;
    font-size: 20px;
    font-size: 1.25rem
}



#user_loginpage #loginsignin .form-group .btn-link {
    color: #025aa2;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}


#straightmenu .list-group li>.all-product {
    font-size: 16px;
    font-size: 1rem;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}




#product_info .page-sub-header h2 {
    color: #333;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}



#normalcalc .form-group label {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}

#normalcalc .form-group label.custom-control-label {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;
}




.btn-img-text.browse-design i:before {
    content: "";
    font-family: "ops-icon"
}

.btn-img-text.custom-design i:before {
    content: "";
    font-family: "ops-icon"
}

.btn-img-text.upload-design i:before {
    content: "";
    font-family: "ops-icon"
}

.btn-img-text.ico-quote-design i:before {
    content: "";
    font-family: "ops-icon"
}



.product-box .hover-box-shadow .card-body .card-title {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;;
    font-size: 22px;
    font-size: 1.375rem;
    color: #000 !important;
    margin-bottom: .2rem !important;
    color: #333 !important;
    font-size: 18px;
    font-size: 1.125rem
}

.product-box .hover-box-shadow .card-body h3::after {
    content: "";
    display: block;
    position: absolute;
    font-family: "Font Awesome 6 Pro";
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 1.625rem;
    margin-left: .75rem
}

.product-box .btn-info {
    font-size: 16px;
    font-size: 1rem;
    box-shadow: none;
    display: inline-block;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}




#price_calculator #productpricetotal #producttotalprice {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;;
    color: #000 !important;
    align-items: center
}




#price_calculator label {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}

#related-product .card .caption {
    text-align: center;
    font-size: 20px;
    font-size: 1.25rem;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}


#shopping-cart .card-header .card-title a {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;;
    color: #333 !important;
    font-size: 18px;
    font-size: 1.125rem
}


#shopping-cart .checkoutRightSide .paymentDetailsStep .totalprice {
    font-size: 24px;
    font-size: 1.5rem;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}



.cms-header-block .header-box .header-content h3 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}



.cms-header-block .header-box .header-content h4 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;
}


.customized_section .custom-box span,
.customized_section .custom-box p {
    letter-spacing: 2px;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;;
    color: #000
}





.MultiCarousel .card-title {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;;
    color: #000 !important
}


.top-sellers .cat-block span {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;;
    font-size: 16px !important;
    font-size: 1rem !important;
    width: 100%;
    text-align: left
}


.experience-section .quality-content h3,
.experience-section .review-content h3 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;;
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 1.6875rem
}



.review-section .section-title h4 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;
}


.review-section #testimonial_multi_sidebar>.card-body .card .card-body small {
    font-size: 18px;
    font-size: 1.125rem;
    color: #025aa2;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}


.review-section #testimonial_multi_sidebar>.card-body .card::after {
    content: "";
    font-family: "ops-icon" !important;
    position: absolute;
    right: 30px;
    bottom: 30px;
    font-size: 30px;
    opacity: .2;
    color: #025aa2
}



#footer h2 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;;
    font-size: 20px;
    font-size: 1.25rem
}

#footer h3 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;;
    color: #fff
}

@media only screen and (min-width: 768px) {
    #footer h3 {
        margin-bottom: 1.7rem
    }
}



#footer #footersubscribe_sidebar .form-row h3 {
    line-height: 1.75rem;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 400;
}



.slider-cat .slick-slide .cat-block span {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;;
    font-size: 20px;
    font-size: 1.25rem;
    color: #000 !important
}




.awesome-bar .awesome-bar_container a {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;;
    font-weight: inherit;
    text-decoration: underline;
    width: 30px;
    height: 30px
}



.contact_detail a {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;;
    color: #000
}








.image-gallary .common_masony .masonry_product_title {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;;
    bottom: 0;
    width: 100%;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    padding: 10px;
    background: rgba(0, 0, 0, .7);
    transition: all .3s ease-in-out 0s
}


#price_calculator #productpricetotal .sub-total.content-box span {
    font-size: 24px;
    font-size: 1.5rem;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}


.image-gallary.masonry-images .common_masony .masonry_product_title {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}

#pricecalulate .control-label {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600;
}

.bg-light-info {
  background-color: #002453 !important;
}

/* =========================================================
   PRINT WISCONSIN – MODERN HEADER PILLS (FINAL VERSION)
   Blue: #0058A1
   Deep: #074480
   Font: Montserrat
   Smaller refined sizing
   ========================================================= */

/* Load Montserrat (safe if already loaded) */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@600;700;800;900&display=swap');

:root{
  --pw-blue:#0058A1;
  --pw-deep:#074480;
}

/* Apply Montserrat to header action links */
html body a[href^="tel:"],
html body a[href^="mailto:"],
html body a[href*="login"],
html body a[href*="shopping_cart"],
html body a[href*="cart"]{
  font-family:'Montserrat', sans-serif !important;
}

/* ===============================
   PHONE + EMAIL (SMALLER BLUE PILLS)
   =============================== */

html body a[href^="tel:"],
html body a[href^="mailto:"]{
  display:inline-flex !important;
  align-items:center !important;
  padding:6px 14px !important;
  border-radius:999px !important;

  background: var(--pw-blue) !important;
  color:#ffffff !important;
  border:none !important;

  font-weight:800 !important;
  font-size:13px !important;
  letter-spacing:.4px !important;

  text-decoration:none !important;
  transition: all .2s ease !important;
}

html body a[href^="tel:"]:hover,
html body a[href^="mailto:"]:hover{
  background: var(--pw-deep) !important;
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(0,88,161,.35);
}

/* ===============================
   LOGIN + CART (OWN ROW, BOLD, ANIMATED)
   =============================== */

html body a[href*="login"],
html body a[href*="shopping_cart"],
html body a[href*="cart"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  margin-top:10px !important;
  padding:8px 18px !important;

  border-radius:999px !important;

  background: linear-gradient(90deg, var(--pw-deep), var(--pw-blue)) !important;
  color:#ffffff !important;
  border:none !important;

  font-weight:900 !important;
  font-size:13px !important;
  letter-spacing:.5px !important;
  text-transform:uppercase !important;

  text-decoration:none !important;

  box-shadow: 0 16px 40px rgba(0,88,161,.35);

  animation: floatPulse 3s ease-in-out infinite;
  transition: all .2s ease !important;

  position:relative;
  overflow:hidden;
}

/* Shine animation */
html body a[href*="login"]::after,
html body a[href*="shopping_cart"]::after,
html body a[href*="cart"]::after{
  content:"";
  position:absolute;
  inset:-60% -40%;
  background: linear-gradient(
    120deg,
    rgba(255,255,255,0),
    rgba(255,255,255,.7),
    rgba(255,255,255,0)
  );
  transform: rotate(18deg) translateX(-55%);
  animation: shineSweep 3s ease-in-out infinite;
  pointer-events:none;
  opacity:.6;
}

/* Hover effect */
html body a[href*="login"]:hover,
html body a[href*="shopping_cart"]:hover,
html body a[href*="cart"]:hover{
  transform: translateY(-3px) scale(1.05);
  box-shadow: 0 22px 50px rgba(0,88,161,.45);
}

/* ===============================
   ANIMATIONS
   =============================== */

@keyframes floatPulse{
  0%,100%{ transform:translateY(0); }
  50%{ transform:translateY(-3px); }
}

@keyframes shineSweep{
  0%{ transform: rotate(18deg) translateX(-55%); }
  60%{ transform: rotate(18deg) translateX(55%); }
  100%{ transform: rotate(18deg) translateX(55%); }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce){
  html body a[href*="login"],
  html body a[href*="shopping_cart"],
  html body a[href*="cart"]{
    animation:none !important;
  }
}/* ============================= */
/* REMOVE PAGE TITLE + BREADCRUMB */
/* ============================= */

.page-header,
.page-title,
.breadcrumb,
.breadcrumb-section,
.inner-banner,
.inner_banner,
#page-title,
.title-breadcrumb-wrapper {
    display: none !important;
}

#middle-content #category_product_list .page-header,
#middle-content #product_info .page-header,
#middle-content #product_design_upload .page-header
{
    display: none !important;
}

#middle-content .page-header{
    display: flex !important;
}



/* Remove extra spacing left behind */
.main-content,
#main-content,
.container {
  padding-top: 0 !important;
  margin-top: 0 !important;
} 
    /* =======================================================
   PRINT WISCONSIN — FINAL HEADER + DROPDOWN CSS
   One-line nav + proper dropdown formatting + spacing
======================================================= */

:root{
  --pw-blue:#0058A1;
}

/* -------------------------------------------------------
   1) DESKTOP NAV — keep items on one line
------------------------------------------------------- */
@media (min-width: 992px){

  .navbar{
    border-bottom: 1px solid rgba(0,0,0,.06); /* subtle premium divider */
  }

  .navbar-collapse{
    flex-wrap: nowrap !important;
  }

  .navbar-nav{
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    white-space:nowrap !important;
  }

  .navbar-nav > .nav-item{
    flex:0 0 auto !important;
  }

  /* MAIN NAV LINKS (restored vertical spacing) */
  .navbar-nav > .nav-item > .nav-link{
    white-space: nowrap !important;
    padding: 14px 14px !important;   /* TOP + BOTTOM spacing restored */
    line-height: 1.2;
    font-weight: 600;
  }

  /* Slightly tighter spacing on smaller desktops */
  @media (max-width: 1400px){
    .navbar-nav > .nav-item > .nav-link{
      padding: 12px 10px !important;
      font-size:15px;
    }
  }

  /* Hover polish */
  .navbar-nav > .nav-item > .nav-link:hover{
    color: var(--pw-blue) !important;
  }
}

/* -------------------------------------------------------
   2) DEFAULT DROPDOWNS (normal menus)
------------------------------------------------------- */
.navbar-nav .dropdown-menu{
  width:auto !important;
  min-width:240px !important;
  left:0 !important;
  right:auto !important;
  transform:none !important;

  padding:10px !important;
  border-radius:14px !important;
  box-shadow:0 18px 45px rgba(0,0,0,.15) !important;

  max-height:70vh !important;
  overflow:auto !important;
  z-index:9999 !important;
}

/* allow normal wrapping inside dropdown */
.navbar-nav .dropdown-menu,
.navbar-nav .dropdown-menu *{
  white-space:normal !important;
}

/* dropdown item spacing */
.navbar-nav .dropdown-menu a,
.navbar-nav .dropdown-menu .dropdown-item{
  display:block;
  padding:8px 12px !important;
  line-height:1.2 !important;
}

/* OnPrintShop inline style fix */
.navbar-nav .dropdown-menu .hover-text{
  width:100% !important;
  padding-top:0 !important;
  margin:0 !important;
}

/* -------------------------------------------------------
   3) MEGA MENU (ONLY position-static menus)
------------------------------------------------------- */
@media (min-width: 992px){

  .navbar-nav .nav-item.position-static > .dropdown-menu,
  .navbar-nav .nav-item.all-category-menu > .dropdown-menu{
    width:min(1200px, calc(100vw - 30px)) !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    right:auto !important;

    padding:14px 16px !important;
  }

  /* clean grid spacing */
  .navbar-nav .nav-item.position-static > .dropdown-menu .row,
  .navbar-nav .nav-item.all-category-menu > .dropdown-menu .row{
    margin-left:0 !important;
    margin-right:0 !important;
  }

  .navbar-nav .nav-item.position-static > .dropdown-menu [class*="col-"],
  .navbar-nav .nav-item.all-category-menu > .dropdown-menu [class*="col-"]{
    padding-left:12px !important;
    padding-right:12px !important;
  }
}

/* -------------------------------------------------------
   4) MOBILE / TABLET
------------------------------------------------------- */
@media (max-width: 991.98px){

  .navbar-nav{
    white-space:normal !important;
  }

  .navbar-nav .dropdown-menu{
    width:100% !important;
    min-width:0 !important;
    left:0 !important;
    right:0 !important;
    transform:none !important;

    border-radius:0 !important;
    box-shadow:none !important;
    padding:8px 0 !important;

    max-height:none !important;
    overflow:visible !important;
  }

  .navbar-nav .dropdown-menu .hover-text{
    width:100% !important;
    padding-top:0 !important;
  }
}/* =======================================================
   DROPDOWN TYPOGRAPHY NORMALIZER
   Makes "Our Services" match all other dropdowns
======================================================= */

/* Force consistent dropdown typography */
.navbar-nav .dropdown-menu,
.navbar-nav .dropdown-menu a,
.navbar-nav .dropdown-menu .dropdown-item,
.navbar-nav .dropdown-menu span,
.navbar-nav .dropdown-menu li{
  font-family: inherit !important;   /* matches main site font */
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
}

/* Consistent spacing for all dropdown links */
.navbar-nav .dropdown-menu a,
.navbar-nav .dropdown-menu .dropdown-item{
  padding: 8px 12px !important;
  margin: 0 !important;
}

/* Fix custom wrappers (OnPrintShop often adds these) */
.navbar-nav .dropdown-menu .hover-text,
.navbar-nav .dropdown-menu .col-12,
.navbar-nav .dropdown-menu [class*="col-"]{
  font-family: inherit !important;
}

/* Smooth consistent hover like other menus */
.navbar-nav .dropdown-menu a:hover,
.navbar-nav .dropdown-menu .dropdown-item:hover{
  color: var(--pw-blue) !important;
  background: rgba(0,88,161,.06) !important;
  border-radius: 6px;
}
/* =======================================================
   PRO MEGA MENU ALIGNMENT (AGENCY LEVEL)
   Makes dropdown columns perfectly aligned
======================================================= */

/* Make dropdown columns align from the top */
.navbar-nav .dropdown-menu .row{
  display: flex !important;
  align-items: flex-start !important;
  flex-wrap: wrap !important;
}

/* Every column starts at same vertical position */
.navbar-nav .dropdown-menu [class*="col-"]{
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}

/* Uniform spacing between items */
.navbar-nav .dropdown-menu a,
.navbar-nav .dropdown-menu .dropdown-item{
  margin: 0 !important;
  padding-top: 7px !important;
  padding-bottom: 7px !important;
}

/* Consistent spacing for section headings */
.navbar-nav .dropdown-menu strong,
.navbar-nav .dropdown-menu h6,
.navbar-nav .dropdown-menu .menu-title{
  display: block;
  margin-bottom: 8px !important;
  padding-bottom: 4px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

/* Remove random extra spacing from wrappers */
.navbar-nav .dropdown-menu .hover-text,
.navbar-nav .dropdown-menu ul,
.navbar-nav .dropdown-menu li{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
}

/* Smooth column rhythm (very subtle but pro) */
.navbar-nav .dropdown-menu{
  line-height: 1.3;
}
.navbar-nav .dropdown-menu{
  backdrop-filter: blur(6px);
}
/* =======================================================
   ENTERPRISE NAV UX UPGRADE
   Smooth dropdown reveal + premium hover behavior
======================================================= */

/* Base dropdown state */
.navbar-nav .dropdown-menu{
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition:
    opacity .18s ease,
    transform .18s ease,
    visibility .18s ease;
  pointer-events: none;
}

/* Show dropdown smoothly on hover */
@media (min-width: 992px){
  .navbar-nav .nav-item.dropdown:hover > .dropdown-menu{
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
  }
}

/* Prevent jumpy hover movement */
.navbar-nav .nav-item.dropdown{
  position: relative;
}

/* Subtle nav link hover polish */
.navbar-nav > .nav-item > .nav-link{
  transition: color .18s ease;
}
.navbar-nav > .nav-item > .nav-link{
  position: relative;
}

.navbar-nav > .nav-item > .nav-link::after{
  content:'';
  position:absolute;
  left:12px;
  right:12px;
  bottom:6px;
  height:2px;
  background: var(--pw-blue);
  transform: scaleX(0);
  transform-origin:center;
  transition: transform .2s ease;
}

.navbar-nav > .nav-item:hover > .nav-link::after{
  transform: scaleX(1);
}/* =======================================================
   FIX: Mobile dropdowns not showing (no hover on mobile)
   Apply hover/fade behavior ONLY on desktop
======================================================= */

/* Undo the hover-hide behavior on mobile/tablet */
@media (max-width: 991.98px){
  .navbar-nav .dropdown-menu{
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
  }
}

/* Enterprise hover animation ONLY on desktop */
@media (min-width: 992px){
  .navbar-nav .dropdown-menu{
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition:
      opacity .18s ease,
      transform .18s ease,
      visibility .18s ease;
    pointer-events: none;
  }

  .navbar-nav .nav-item.dropdown:hover > .dropdown-menu{
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
  }
}
  /* =======================================================
   KILL SCROLLBAR — Mega menus (all-category-menu OR position-static)
======================================================= */
@media (min-width: 992px){
  .navbar-nav .nav-item.all-category-menu > .dropdown-menu,
  .navbar-nav .nav-item.position-static > .dropdown-menu{
    max-height: none !important;
    overflow: visible !important;
  }

  .navbar-nav .nav-item.all-category-menu > .dropdown-menu *,
  .navbar-nav .nav-item.position-static > .dropdown-menu *{
    max-height: none !important;
    overflow: visible !important;
    overflow-y: visible !important;
  }
}