.sale-flag-side {
  font-size: 20px;
  border-style: solid;
  border-width: 1px;
  border-color: #ffffff;
  display: none; }

.sale-flag-side.visible {
  font-size: 15px; }

.card-text span.price {
  font-size: 20px; }

body.main.home .body.content {
  margin-top: 0px !important; }

.header-padding {
  padding: 0 !important; }

.header-logo > a {
  padding: 0 !important;
  display: inline-block !important; }

h1.page-heading, h2.page-heading, h3.tab-content-title, h3.tab-content-subtitle, h4 {
  font-weight: 700 !important;
  margin-top: 1rem; }

/* search form styling sv */
@media only screen and (max-width: 800px) {
  .navPages-quickSearch {
    max-width: 90%;
    height: auto; }
  .navPages-quickSearch .form-field {
    margin-bottom: 0;
    position: relative;
    width: 100%; }
  .navPages-quickSearch input#search_query {
    height: 30px !important; }
  .navPages-quickSearch .search-icon {
    right: 6px;
    position: absolute;
    height: auto;
    top: 6px; }
  .navPages-quickSearch input.button.button--primary.form-prefixPostfix-button--postfix {
    display: none; }
  .navPages-quickSearch svg {
    fill: #005d8e !important;
    max-width: 20px;
    height: 20px; }
  .navPages-quickSearch {
    width: 100%;
    float: none;
    clear: unset; }
  .mobile-menu .navPages {
    width: 100% !important;
    left: 0;
    height: 200%;
    top: 45px !important; }
  .mobile-menu .right.searchbar {
    display: none !important; }
  .top-menu .right {
    width: 85%; }
  .navPages-quickSearch .form-field {
    width: 95%; }
  .top-menu {
    padding-top: 4px;
    height: 40px; }
  body.main .header-container {
    margin-top: 10px; }
  .logo-link img {
    height: 50px;
    padding: 5px 6px 0; }
  a.modal-close.custom-quick-search {
    display: none !important; } }

/* search form styling */
.continueshop-button {
  background-color: #005d8e;
  width: 250px;
  height: 50px;
  font-weight: bold;
  font-size: 18px;
  text-align: center;
  display: grid;
  align-items: center;
  margin: auto; }

.continueshop-button a {
  color: white;
  text-decoration: none; }

.form-label {
  font-weight: bold; }

/* Product cards & PDP: style RRP and Sale prices */
.card .price-section--minor,
.card .price-section--minor .price,
.card .price.price--rrp,
.card .price.price--non-sale,
.productView-details .price-section--minor,
.productView-details .price-section--minor .price,
.productView-details .price.price--rrp,
.productView-details .price.price--non-sale {
  color: #666 !important;
  /* medium grey, softer than #222 */
  opacity: 1 !important;
  /* stop theme from muting */
  text-decoration: line-through;
  text-decoration-color: currentColor;
  text-decoration-thickness: 1.5px; }

/* Sale price (force red everywhere) */
.card .price.price--sale,
.card .price.price--sale.price--withTax,
.card .price.price--sale.price--withoutTax,
.productView-details .price.price--sale,
.productView-details .price.price--sale.price--withTax,
.productView-details .price.price--sale.price--withoutTax {
  color: #FF0000 !important;
  /* your red */
  font-weight: 600;
  /* bolder so it stands out */ }

@media (max-width: 768px) {
  header.header .header-logo--left {
    float: none !important;
    clear: both !important;
    width: 100% !important;
    text-align: center !important;
    margin: 0 !important;
    padding: 6px 0;
    /* optional */ }
  header.header .header-logo--left .logo-link,
  header.header .header-logo--left img {
    display: inline-block !important;
    margin: 0 auto !important;
    height: auto;
    max-width: 180px;
    /* tweak if you want */ } }

/* === TROXTEN Footer Map Card (blue version) === */
/* --- TROXTEN FOOTER LAYOUT FIX --- */
/* 1) Kill old floats/width caps from the theme */
.footer-info .footer-info-col,
.footer-info .footer-info-col--small {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important; }

/* 2) Grid: contact | wide map | right rail | newsletter  */
.footer-info {
  display: grid;
  grid-template-columns: 1fr;
  /* mobile */
  row-gap: 24px;
  column-gap: 40px;
  align-items: start; }

@media (min-width: 1100px) {
  .footer-info {
    /* contact is a fixed comfortable width, map is wide, two right columns */
    grid-template-columns: 280px 1.8fr 1fr 1fr; }
  /* place items explicitly so they don't wrap weirdly */
  .footer-info [data-section-type="storeInfo"] {
    grid-column: 1; }
  .footer-info [data-section-type="footer-map"] {
    grid-column: 2; }
  /* wide center */
  .footer-info [data-section-type="footer-webPages"] {
    grid-column: 3; }
  /* ACCOUNTS */
  /* first footer-categories (Navigate) goes under Accounts in same column */
  .footer-info article.footer-info-col[data-section-type="footer-categories"]:first-of-type {
    grid-column: 3; }
  /* last footer-categories (Newsletter) stays in far-right column */
  .footer-info article.footer-info-col[data-section-type="footer-categories"]:last-of-type {
    grid-column: 4; } }

/* --- MAP CARD (blue) --- */
.map-card {
  background: #005D8E;
  color: #fff;
  border-radius: 6px;
  padding: 16px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25); }

.map-card__map {
  position: relative;
  border-radius: 6px;
  overflow: hidden; }

.map-card__map iframe {
  width: 100%;
  height: 180px;
  border: 0;
  border-radius: 6px; }

.map-card__cta {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  text-align: center;
  padding: 8px 10px;
  background: #003E5D;
  color: #E7F4FB;
  font-weight: 700;
  text-decoration: none; }

.map-card__hours {
  margin-top: 14px; }

.map-card__hours-header {
  background: rgba(255, 255, 255, 0.15);
  padding: 10px 12px;
  border-radius: 4px;
  text-align: center;
  font-weight: 700;
  margin-bottom: 10px; }

.map-card__hours-list {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 15px;
  line-height: 1.6; }

@media (min-width: 1100px) {
  .map-card__hours-list {
    columns: 2;
    column-gap: 28px; } }

.map-card__hours-list li {
  margin: 4px 0;
  color: #fff; }

.map-card__hours-list li span {
  color: #D8ECF6;
  margin-right: 6px; }

/* keep SSL badge centered */
.footer-image-logo {
  text-align: center;
  padding: 1rem 0;
  display: flex;
  justify-content: center;
  align-items: center; }

.footer-image-logo img {
  max-width: 150px; }
