ul.breadcrumbs {
  overflow-x: auto;
  overflow-y: hidden;
}


/* Hide reviews */
a[href="#reviewAnchor"] {
  display: none !important;
}

/* Hide ex tax */
#ui_price_ex_tax,
.price_ex_tax,
.price_breakdown hr {
  display: none !important;
}

/* Hide the tax note and the ? */
.prod_details_price a[href="#"] {
  display: none !important;
}


/* Product page main image */
.prod_image_container img,
.prod_image_container picture img,
.prod_image_container .prod_main_image,
.prod_image_container a img {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  object-fit: contain !important;
}


/****************************************************
 * GLOBAL: square edges + kill unwanted shadows/glow
 ****************************************************/
#catsWithImages, #catsWithImages *,
#subcategories, #subcategories *{
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: none !important;
  text-shadow: none !important;
}


/* ==================================================
   HOMEPAGE HERO: hide "Shop Now" button
   ================================================== */
section.colored_banner .main_landing_inner .landing_inner_bottom a.button_primary{
  display: none !important;
}


/****************************************************
 * HOMEPAGE HEADER / HERO IMAGE (slideshow)
 * - remove theme shadow/rounding
 * - remove max-width caps
 * - REDUCE top gap inside the blue banner
 ****************************************************/

/* 0) Stop any injected spacing on the banner itself */
section.colored_banner{
  margin-top: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  display: block !important;
}

/* 0b) Theme often adds spacing on inner wrappers — kill it */
section.colored_banner article.main_landing_container{
  margin: 0 !important;
  padding: 0 !important;
}

section.colored_banner .main_landing_inner{
  margin: 0 !important;
  padding: 0 !important;          /* THIS is the big one */
  min-height: 0 !important;
  height: auto !important;
  width: 100% !important;
}

/* If the theme adds padding to these, remove it */
section.colored_banner .landing_inner_top,
section.colored_banner .landing_inner_bottom{
  margin: 0 !important;
  padding: 0 !important;
}

/* Add back a SMALL controlled gap (so it’s not glued to the nav) */
section.colored_banner .main_landing_inner{
  padding-top: 6px !important;     /* set to 0px if you want tighter */
  padding-bottom: 12px !important;
}

/* 1) Remove theme rounding/shadow on ALL slideshow wrappers + images */
.colored_banner .landing_inner_top .slider-wrapper.theme-default,
.colored_banner .landing_inner_top #slider.flexslider,
.colored_banner .landing_inner_top #slider.flexslider .slides,
.colored_banner .landing_inner_top #slider.flexslider .slides li,
.colored_banner .landing_inner_top #slider.flexslider .slides li img,
.colored_banner .landing_inner_top .flexslider,
.colored_banner .landing_inner_top .flexslider .slides,
.colored_banner .landing_inner_top .flexslider .slides li,
.colored_banner .landing_inner_top .flexslider .slides li img{
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* 2) Override Freewebstore max-width caps (common culprit: 560px) */
.colored_banner .landing_inner_top #slider,
.colored_banner .landing_inner_top .flexslider,
.colored_banner .landing_inner_top .flexslider .slides,
.colored_banner .landing_inner_top .flexslider .slides img{
  max-width: 100% !important;
  width: 100% !important;
}

/* 3) Banner image behaviour */
.colored_banner .landing_inner_top .flexslider .slides img,
.colored_banner .landing_inner_top #slider.flexslider .slides img{
  display: block !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
}

/* 4) If FWS forces fixed height on the slider wrapper, kill it */
section.colored_banner .slider-wrapper,
section.colored_banner #slider.flexslider,
section.colored_banner #slider.flexslider .slides{
  height: auto !important;
  min-height: 0 !important;
}

/* =========================================
   HOMEPAGE HERO — make the light-blue banner taller
   (keep top padding exactly as-is)
   ========================================= */

/* The blue banner section */
section.colored_banner{
  min-height: 540px !important;   /* increase/decrease to taste */
}

/* Make sure the inner wrapper stretches to the new height */
section.colored_banner article.main_landing_container,
section.colored_banner .main_landing_inner{
  min-height: 540px !important;
}

/* Keep your existing top padding unchanged.
   Just add bottom space if needed so it feels “full”. */
section.colored_banner .main_landing_inner{
  padding-bottom: 40px !important;  /* adjust 20–80px */
}

/* =========================================
   HOMEPAGE HERO — make banner smaller
   ========================================= */

section.colored_banner{
  min-height: 440px !important;   /* was 540px — reduce more if needed */
}

section.colored_banner article.main_landing_container,
section.colored_banner .main_landing_inner{
  min-height: 440px !important;
}

/* Optional: tighten bottom spacing slightly */
section.colored_banner .main_landing_inner{
  padding-bottom: 24px !important;
}

/* ===========================
   HOMEPAGE HERO — make spacing even
   =========================== */

/* 1) Keep your top padding, but match it on the bottom */
section.colored_banner .main_landing_inner{
  padding-top: 0px !important;      /* keep as-is */
  padding-bottom: 40px !important;   /* make it the same = “even” */
}

/* 2) Remove the extra “push down” that makes the bottom look bigger */
section.colored_banner .landing_inner_bottom{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 3) Remove any sneaky margins around the slider/text blocks */
section.colored_banner .landing_inner_top{
  margin: 0 !important;
  padding: 0 !important;
}



/****************************************************
 * CATEGORY / SCHOOL PAGE BANNER + HEADER IMAGE ONLY
 * Lighter banner, smaller height, centred image
 * Does NOT affect homepage hero
 ****************************************************/

/* Category/school banner only */
section.colored_banner:has(img.cat_banner_img){
  background: #b9c9d1 !important;
  min-height: 320px !important;
}

section.colored_banner:has(img.cat_banner_img) article.main_landing_container,
section.colored_banner:has(img.cat_banner_img) .main_landing_inner{
  min-height: 300px !important;
}

section.colored_banner:has(img.cat_banner_img) .main_landing_inner{
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Header image */
section.colored_banner:has(img.cat_banner_img) .main_landing_inner .landing_inner_top img.cat_banner_img{
  box-shadow: none !important;
  border-radius: 0 !important;
  background: transparent !important;

  width: auto !important;
  height: auto !important;
  max-width: 360px !important;
  max-height: 360px !important;

  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
}

/* Beat Freewebstore max-width */
section.colored_banner:has(img.cat_banner_img) .main_landing_inner .landing_inner_top img{
  max-width: none !important;
}

/* Smaller screens */
@media (max-width: 700px){
  section.colored_banner:has(img.cat_banner_img),
  section.colored_banner:has(img.cat_banner_img) article.main_landing_container,
  section.colored_banner:has(img.cat_banner_img) .main_landing_inner{
    min-height: 220px !important;
  }

  section.colored_banner:has(img.cat_banner_img) .main_landing_inner .landing_inner_top img.cat_banner_img{
    max-width: 220px !important;
    max-height: 220px !important;
  }
}

/****************************************************
 * HOMEPAGE — "SHOP BY CATEGORY" (catsWithImages)
 ****************************************************/

/* Force grid (not slider) */
#catsWithImages.slider_section{
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 100px !important;
  overflow: visible !important;
  scroll-snap-type: none !important;
  white-space: normal !important;
}

#catsWithImages.slider_section .slider_item_outer{
  float: none !important;
}

/* Hide slider arrows/buttons */
#catsWithImages_sliderBtns,
#catsWithImages .slider_nav,
#catsWithImages .slider_nav_buttons,
#catsWithImages .slider_nav_btn,
#catsWithImages .slider_nav_left,
#catsWithImages .slider_nav_right{
  display: none !important;
}

/* Each tile — 4 per row */
#catsWithImages.slider_section .slider_item_outer{
  width: 24% !important;
  flex: 0 0 auto !important;
  box-sizing: border-box !important;
  margin-bottom: 26px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Whole tile clickable */
#catsWithImages.slider_section a.category_image_link{
  display: block !important;
  width: 100% !important;
  text-decoration: none !important;
  background: #ffffff !important;
  padding: 0 !important;
  margin: 0 !important;
  box-shadow: none !important;
}

/* Title tab */
#catsWithImages.slider_section a.category_image_link p{
  text-align: center !important;
  margin: 0 !important;
  padding: 0 0.5rem !important;
  height: 3.75rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--background-secondary, #e9f6f2) !important;
  color: inherit !important;
  transition: background-color 0.18s ease, color 0.18s ease !important;
}

/* Picture wrapper: no gap */
#catsWithImages.slider_section a.category_image_link picture{
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important;
}

/* Image: remove theme zoom */
#catsWithImages.slider_section a.category_image_link img{
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  vertical-align: top !important;
  transform: none !important;
  transition: none !important;
}

/* Hover — title tab only */
#catsWithImages.slider_section .slider_item_outer:hover a.category_image_link,
#catsWithImages.slider_section .slider_item_outer:focus-within a.category_image_link{
  background: #ffffff !important;
}

#catsWithImages.slider_section .slider_item_outer:hover a.category_image_link p,
#catsWithImages.slider_section .slider_item_outer:focus-within a.category_image_link p{
  background-color: #395B64 !important;
  color: #ffffff !important;
}

/* Responsive */
@media (max-width:1100px){
  #catsWithImages.slider_section .slider_item_outer{ width: 48% !important; }
}
@media (max-width:480px){
  #catsWithImages.slider_section .slider_item_outer{ width: 100% !important; }
}

/****************************************************
 * SUBCATEGORIES (Schools list) — GRID (NOT SLIDER)
 ****************************************************/

/* Grid layout */
#subcategories.slider_section{
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 32px !important;
  overflow: visible !important;
  scroll-snap-type: none !important;
  white-space: normal !important;
}

#subcategories.slider_section .slider_item_outer{
  float: none !important;
  width: 18% !important;
  flex: 0 0 auto !important;
  box-sizing: border-box !important;
  margin-bottom: 14px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Hide slider controls */
#subcategories_sliderBtns,
#subcategories .slider_nav,
#subcategories .slider_nav_buttons,
#subcategories .slider_nav_btn,
#subcategories .slider_nav_left,
#subcategories .slider_nav_right{
  display: none !important;
}

/* Whole tile link */
#subcategories.slider_section a.category_image_link{
  display: block !important;
  width: 100% !important;
  text-decoration: none !important;
  background: #dce8ea !important;
  box-shadow: none !important;
}

/* Title tab */
#subcategories.slider_section a.category_image_link p{
  text-align: center !important;
  margin: 0 !important;
  padding: 0 0.5rem !important;
  height: 3.75rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--background-secondary, #e9f6f2) !important;
  color: inherit !important;
  transition: background-color 0.18s ease, color 0.18s ease !important;
}

/* Logo box */
#subcategories.slider_section a.category_image_link picture{
  display: block !important;
  position: relative !important;
  width: 220px !important;
  height: 220px !important;
  margin: 0 auto !important;
  overflow: hidden !important;
  background: transparent !important;
}

/* Logo image */
#subcategories.slider_section a.category_image_link picture img{
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: auto !important;
  height: auto !important;
  max-width: 88% !important;
  max-height: 88% !important;
  margin: 0 !important;
  object-fit: contain !important;
  transform: translate(calc(-50% - 2.5px), -50%) !important;
  transition: none !important;
}

/* Remove overlays */
#subcategories.slider_section a.category_image_link picture:before,
#subcategories.slider_section a.category_image_link picture:after{
  content: none !important;
  display: none !important;
}

/* Hover — keep tile background the same, change title tab only */
#subcategories.slider_section .slider_item_outer:hover a.category_image_link,
#subcategories.slider_section .slider_item_outer:focus-within a.category_image_link{
  background: #dce8ea !important;
}

#subcategories.slider_section .slider_item_outer:hover a.category_image_link p,
#subcategories.slider_section .slider_item_outer:focus-within a.category_image_link p{
  background-color: #395B64 !important;
  color: #ffffff !important;
}

/* Responsive */
@media (max-width:1100px){
  #subcategories.slider_section .slider_item_outer{
    width: 30% !important;
  }
}

@media (max-width:700px){
  #subcategories.slider_section .slider_item_outer{
    width: 48% !important;
  }
}

@media (max-width:480px){
  #subcategories.slider_section .slider_item_outer{
    width: 100% !important;
  }

  #subcategories.slider_section a.category_image_link picture{
    width: 200px !important;
    height: 200px !important;
  }
}

/* =========================================
   SCHOOLS TOP NAV DROPDOWN — clean version
   A–Z down each column, then next column
   School name only / invisible clickable link
   Fix sticky dropdown on click
   ========================================= */

/* Main dropdown container */
body > nav > div.dropdown_nav_main{
  display: none !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;

  padding: 20px 30px !important;
  column-count: 4 !important;
  column-gap: 24px !important;
  z-index: 999 !important;
}

/* Show only when hovering the Schools trigger or the dropdown itself */
body > nav #navCats:hover ~ div.dropdown_nav_main,
body > nav > div.dropdown_nav_main:hover{
  display: block !important;
}

/* Hide when Schools item is focused/active after click */
body > nav #navCats:focus ~ div.dropdown_nav_main,
body > nav #navCats:active ~ div.dropdown_nav_main,
body > nav #navCats:focus-visible ~ div.dropdown_nav_main{
  display: none !important;
}

/* Each school block */
body > nav > div.dropdown_nav_main > div.dd_main_nav_section{
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  position: relative !important;

  margin: 0 0 14px 0 !important;
  break-inside: avoid !important;
  -webkit-column-break-inside: avoid !important;
  page-break-inside: avoid !important;
}

/* Visible school name */
body > nav > div.dropdown_nav_main > div.dd_main_nav_section > h4.mobile_subcat_list_item{
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;

  font: inherit !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  color: #ffffff !important;

  text-decoration: none !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* Invisible clickable link over each item */
body > nav > div.dropdown_nav_main > div.dd_main_nav_section > a.mobile_tercat_list_item{
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;

  display: block !important;
  opacity: 0 !important;

  text-decoration: none !important;
  border: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* Remove underline anywhere in this dropdown */
body > nav > div.dropdown_nav_main a,
body > nav > div.dropdown_nav_main h4{
  text-decoration: none !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

/* Hover / focus state */
body > nav > div.dropdown_nav_main > div.dd_main_nav_section:hover > h4.mobile_subcat_list_item,
body > nav > div.dropdown_nav_main > div.dd_main_nav_section:focus-within > h4.mobile_subcat_list_item{
  font-weight: 700 !important;
  text-decoration: underline !important;
}

/* Responsive */
@media (max-width: 1200px){
  body > nav > div.dropdown_nav_main{
    column-count: 3 !important;
  }
}

@media (max-width: 700px){
  body > nav > div.dropdown_nav_main{
    padding: 16px 18px !important;
    column-count: 2 !important;
    column-gap: 16px !important;
  }
}

@media (max-width: 520px){
  body > nav > div.dropdown_nav_main{
    column-count: 1 !important;
  }
}

/* =========================================
Hide SUBCAT HEADING & NO PRODUCTS FOUND
   =========================================


/* Hide Subcategories heading above the slider */
.background_image_container > section.container > h2:has(+ #subcategories){
  display: none !important;
}

/* Hide "No Products Found" section on Schools/category pages */
.browse_products_container .no_products_found_cont,
.browse_products_container h2.no_products_found_title,
.browse_products_container p.no_products_found_title_text{
  display: none !important;
}


/* SCHOOL TILE TEXT — make long names fit better */
#subcategories.slider_section .category_image_link p{
  white-space: normal !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
  line-height: 1.25 !important;
  font-size: 15px !important;
  padding: 12px 10px !important;
  min-height: 72px !important;   /* keeps all title boxes same height */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  margin: 0 !important;
}


/* CONTACT PAGE — remove the address box styling */
#ctl24_panel_address.contact_address,
.contact_address{
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  max-width: none !important;
}