zx	/*
 * Custom code goes here.
 * A template should always ship with an empty custom.css
 */

/* Additional Styles */
.kktablediv {
    overflow-x: auto
}

.kktable {
    border-collapse: collapse;
    width: 100%;
	margin-bottom:25px;
}

.kktable th,.kktable td {
    border: 1px solid #000;
    padding: 8px;
    text-align: left
}

.kktable thead {
    background-color: #f0f0f0;
    font-weight: 700
}

/* Hide Google Reviews while product image modal is open */
body.modal-open #google-merchantwidget-iframe-wrapper {
    display: none !important;
}

/* Hide chat widget (Tidio/similar) while product image modal is open */
body.modal-open iframe[title="Chat widget"] {
    display: none !important;
}

/* Hide the chat widget's random-ID parent container */
body.modal-open div:has(iframe[title="Chat widget"]) {
    display: none !important;
}

  /* ============ DadShop Blog Carousel ============ */
  .ds-blogcar {
    --ds-red: #e30613;
    --ds-red-dark: #b8050f;
    --ds-ink: #1a1a1a;
    --ds-body: #4a4a4a;
    --ds-muted: #8a8a8a;
    --ds-line: #e6e6e6;
    --ds-bg: #ffffff;
    --ds-radius: 6px;
    --ds-gap: 20px;

    max-width: 1200px;
    margin: 48px auto;
    padding: 0 16px;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    color: var(--ds-ink);
    position: relative;
  }

  /* ---- Header (centered, matches "What's New & Trending") ---- */
  .ds-blogcar__head {
    text-align: center;
    margin-bottom: 32px;
    position: relative;
  }
  .ds-blogcar__title {
    font-size: 26px;
    font-weight: 800;
    letter-spacing: 0.02em;
    margin: 0 0 12px;
    color: var(--ds-ink);
    text-transform: none;
  }
  .ds-blogcar__title::after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    background: var(--ds-red);
    margin: 12px auto 0;
    border-radius: 2px;
  }

  /* ---- Nav arrows (floating on sides, red circular) ---- */
  .ds-blogcar__nav {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    pointer-events: none;
    transform: translateY(-20px);
    z-index: 3;
  }
  .ds-blogcar__btn {
    pointer-events: auto;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    background: var(--ds-red);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(227, 6, 19, 0.25);
    transition: background .2s ease, transform .2s ease, opacity .2s ease;
  }
  .ds-blogcar__btn:hover:not(:disabled) {
    background: var(--ds-red-dark);
    transform: scale(1.08);
  }
  .ds-blogcar__btn:disabled {
    opacity: 0.35;
    cursor: not-allowed;
  }
  .ds-blogcar__btn--prev { margin-left: -8px; }
  .ds-blogcar__btn--next { margin-right: -8px; }

  /* ---- Viewport + track ---- */
  .ds-blogcar__viewport {
    overflow: hidden;
  }
  .ds-blogcar__track {
    display: flex;
    gap: var(--ds-gap);
    list-style: none;
    margin: 0;
    padding: 4px 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    -ms-overflow-style: none;
    scroll-behavior: smooth;
  }
  .ds-blogcar__track::-webkit-scrollbar { display: none; }

  /* ---- Slide sizing ---- */
  .ds-blogcar { --ds-visible: 4; }
  @media (max-width: 900px) { .ds-blogcar { --ds-visible: 2; } }
  @media (max-width: 560px) { .ds-blogcar { --ds-visible: 1; } }

  .ds-blogcar__slide {
    flex: 0 0 calc((100% - (var(--ds-visible) - 1) * var(--ds-gap)) / var(--ds-visible));
    scroll-snap-align: start;
  }

  /* ---- Card ---- */
  .ds-blogcar__card {
    display: flex;
    flex-direction: column;
    background: var(--ds-bg);
    border: 1px solid var(--ds-line);
    border-radius: var(--ds-radius);
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    height: 100%;
    transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  }
  .ds-blogcar__card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(0,0,0,0.10);
    border-color: transparent;
  }

  /* ---- Media ---- */
  .ds-blogcar__media {
    position: relative;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    background: #f4f4f4;
  }
  .ds-blogcar__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .5s ease;
  }
  .ds-blogcar__card:hover .ds-blogcar__media img {
    transform: scale(1.06);
  }
  .ds-blogcar__tag {
    position: absolute;
    top: 12px;
    left: 12px;
    background: var(--ds-red);
    color: #fff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 5px 10px;
    border-radius: 3px;
  }

  /* ---- Body ---- */
  .ds-blogcar__body {
    padding: 18px 18px 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
  }
  .ds-blogcar__cardtitle {
    font-size: 15px;
    font-weight: 800;
    line-height: 1.35;
    margin: 0 0 10px;
    color: var(--ds-ink);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  .ds-blogcar__desc {
    font-size: 13px;
    line-height: 1.55;
    color: var(--ds-body);
    margin: 0 0 14px;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex: 1;
  }
  .ds-blogcar__more {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--ds-red);
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: auto;
  }
  .ds-blogcar__more::after {
    content: "→";
    transition: transform .2s ease;
  }
  .ds-blogcar__card:hover .ds-blogcar__more::after {
    transform: translateX(4px);
  }

  /* ---- Dots ---- */
  .ds-blogcar__dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 24px;
  }
  .ds-blogcar__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: #d4d4d4;
    padding: 0;
    cursor: pointer;
    transition: background .2s ease, transform .2s ease, width .2s ease;
  }
  .ds-blogcar__dot:hover { background: #a0a0a0; }
  .ds-blogcar__dot.is-active {
    background: var(--ds-red);
    width: 24px;
    border-radius: 4px;
  }


/* Special Overrides*/
.block-onepagecheckout .block-promo .promo-code .ets-opc-promo-field .promo-input {background:#fffff0!important;}
@media (max-width: 991px) {
  .blockcart-content {
    z-index: 100001 !important;
  }
}
@media (max-width: 767px) {
	.ets_mm_megamenu.hook-default {margin-top:0!important;}
	}

/* === Fix ETS Mega Menu between 992px and 1199px === */
@media (min-width: 992px) {

    /* Force horizontal layout, kill mobile stacked styles */
    .ets_mm_megamenu .mm_menus_ul,
    .changestatus .mm_menus_ul {
        background-color: transparent !important;
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
    }

    .ets_mm_megamenu .mm_menus_li,
    .changestatus .mm_menus_li {
        border: none !important;
        width: auto !important;
        float: left !important;
    }

    /* Keep menu text white */
    .ets_mm_megamenu .mm_menus_li > a,
    .changestatus .mm_menus_li > a {
        color: #ffffff !important;
        padding: 0 !important;
        width: auto !important;
        background: transparent !important;
    }

    .ets_mm_megamenu .mm_menu_content_title,
    .changestatus .mm_menu_content_title {
        min-height: 60px !important;
        display: flex !important;
        align-items: center !important;
    }

    /* Hide rogue mobile icons */
    .ets_mm_megamenu .ybc-menu-toggle,
    .changestatus .ybc-menu-toggle,
    .ets_mm_megamenu .arrow,
    .changestatus .arrow {
        display: none !important;
    }

    /* Restore hover dropdowns */
    .changestatus .mm_menus_li .mm_columns_ul {
        display: none;
        position: absolute !important;
        width: auto !important;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }
    .changestatus .mm_menus_li:hover .mm_columns_ul {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
}

/* === Stepped font/padding scaling === */

/* 1200px+ : full size (theme default, no override) */

/* 1100–1199px : slight shrink */
@media (min-width: 1100px) and (max-width: 1199px) {
    .ets_mm_megamenu .mm_menus_li > a,
    .changestatus .mm_menus_li > a {
        font-size: 14px !important;
    }
    .ets_mm_megamenu .mm_menu_content_title,
    .changestatus .mm_menu_content_title {
        padding: 0 15px !important;
    }
}

/* 1000–1099px : medium shrink */
@media (min-width: 1000px) and (max-width: 1099px) {
    .ets_mm_megamenu .mm_menus_li > a,
    .changestatus .mm_menus_li > a {
        font-size: 13px !important;
    }
    .ets_mm_megamenu .mm_menu_content_title,
    .changestatus .mm_menu_content_title {
        padding: 0 11px !important;
    }
}

/* 992–999px : tightest, right before mobile kicks in */
@media (min-width: 992px) and (max-width: 999px) {
    .ets_mm_megamenu .mm_menus_li > a,
    .changestatus .mm_menus_li > a {
        font-size: 12px !important;
    }
    .ets_mm_megamenu .mm_menu_content_title,
    .changestatus .mm_menu_content_title {
        padding: 0 8px !important;
    }
}

/* ============================================
   DADSHOP REVIEWS — Refined
   ============================================ */
.dsr {
  --dsr-green: #00B67A;
  --dsr-green-dark: #0a5b42;
  --dsr-green-deep: #063d2c;
  --dsr-ink: #0f1a14;
  --dsr-muted: #5b6b62;
  --dsr-line: #e4ece7;
  --dsr-bg: #ffffff;
  --dsr-tint: #f5faf7;

  width: 100%;
  max-width: none;
  margin: 0;
  padding: 56px clamp(12px, 1.5vw, 24px);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: var(--dsr-ink);
  box-sizing: border-box;
}
.dsr *, .dsr *::before, .dsr *::after { box-sizing: border-box; }

/* ============ HERO ============ */
.dsr-hero {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 32px;
  align-items: center;
  margin: 0 auto 40px;
  max-width: 1320px;
}

.dsr-hero__badge {
  position: relative;
  background: #ffffff;
  border: 2px solid var(--dsr-green);
  border-radius: 16px;
  padding: 20px 24px;
  text-align: center;
  min-width: 150px;
  box-shadow: 0 8px 24px rgba(0, 182, 122, 0.12);
}
.dsr-hero__badge::before {
  content: "TRUSTPILOT";
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--dsr-green);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  padding: 3px 10px;
  border-radius: 4px;
}
.dsr-hero__score {
  font-size: 42px;
  font-weight: 800;
  line-height: 1;
  color: var(--dsr-ink);
  letter-spacing: -1px;
}
.dsr-hero__score span {
  font-size: 15px;
  font-weight: 500;
  color: var(--dsr-muted);
  letter-spacing: 0;
}
.dsr-hero__label {
  font-size: 15px;
  font-weight: 700;
  color: var(--dsr-green);
  margin: 6px 0 8px;
}
.dsr-hero__stars {
  color: var(--dsr-green);
  font-size: 20px;
  letter-spacing: 3px;
}

.dsr-hero__text h2 {
  margin: 0 0 10px;
  font-size: 30px;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.5px;
  color: var(--dsr-ink);
}
.dsr-hero__text p {
  margin: 0 0 14px;
  font-size: 16px;
  line-height: 1.6;
  color: var(--dsr-muted);
  max-width: 640px;
}
.dsr-hero__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 14px;
  font-weight: 700;
  color: var(--dsr-green-dark);
  text-decoration: none;
  padding: 8px 0;
  border-bottom: 2px solid var(--dsr-green);
  transition: gap .25s ease, color .25s ease;
}
.dsr-hero__link:hover { gap: 12px; color: var(--dsr-green); }

/* ============ CAROUSEL — arrows overlay on hover ============ */
#reviews-tab {
  position: relative;
  max-width: 1320px;
  margin: 0 auto;
}

/* Kill the inline flex layout — arrows overlay instead */
#reviews-tab > div {
  display: block !important;
  position: relative;
}

/* Scroll viewport — no fade mask, no scrollbar */
#reviews-tab > div > div {
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scrollbar-width: none;
  mask-image: none !important;
  -webkit-mask-image: none !important;
  padding: 4px 0;
}
#reviews-tab > div > div::-webkit-scrollbar { display: none; }

/* Arrows: hidden by default, fade in on hover */
#reviews-tab > div > button {
  position: absolute !important;
  top: 50%;
  transform: translateY(-50%) scale(0.9);
  z-index: 10;
  opacity: 0.25;
  pointer-events: none;
  border: 1px solid var(--dsr-line) !important;
  background: #ffffff !important;
  color: var(--dsr-green-dark) !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  font-size: 14px !important;
  padding: 0 !important;
  box-shadow: 0 6px 18px rgba(15, 26, 20, 0.15) !important;
  transition: opacity .3s ease, transform .3s ease, background .25s ease, color .25s ease !important;
  flex-shrink: 0;
}
#reviews-tab > div > button:first-child { left: 8px; }
#reviews-tab > div > button:last-child  { right: 8px; }

/* Show arrows on hover — this class is added by JS */
#reviews-tab.dsr-show-arrows > div > button:not(:disabled) {
  opacity: 1;
  transform: translateY(-50%) scale(1);
  pointer-events: auto;
}
#reviews-tab > div > button:hover:not(:disabled) {
  background: var(--dsr-green-dark) !important;
  color: #fff !important;
  border-color: var(--dsr-green-dark) !important;
  transform: translateY(-50%) scale(1.08);
}

/* ============ REVIEW CARDS ============ */
.psr-card {
  position: relative;
  background: var(--dsr-bg) !important;
  border: 1px solid var(--dsr-line);
  border-radius: 14px;
  padding: 24px 22px 20px !important;
  min-width: 300px !important;
  max-width: 320px !important;
  min-height: 240px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 4px rgba(15, 26, 20, 0.03);
  transition: all .3s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden;
}
.psr-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 3px;
  background: var(--dsr-green);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .35s ease;
}
.psr-card:hover {
  box-shadow: 0 12px 28px rgba(15, 26, 20, 0.1);
  transform: translateY(-4px);
  border-color: transparent;
}
.psr-card:hover::before { transform: scaleX(1); }

.psr-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
}
.psr-stars {
  color: var(--dsr-green);
  font-size: 17px;
  letter-spacing: 2px;
  line-height: 1;
}
.psr-badge {
  background: var(--dsr-green);
  color: #ffffff;
  font-size: 10px;
  font-weight: 700;
  padding: 4px 8px;
  border-radius: 4px;
  text-transform: uppercase;
  letter-spacing: 1px;
  line-height: 1;
}

.psr-text {
  flex: 1 1 auto;
  font-size: 14.5px;
  line-height: 1.6;
  color: #2a3830;
  margin-bottom: 16px;
}

.psr-by {
  font-size: 13px;
  color: var(--dsr-muted);
  font-weight: 600;
  font-style: normal;
  padding-top: 14px;
  border-top: 1px solid var(--dsr-line);
  margin: 0;
}

/* ============ VIEW ALL CARD ============ */
.psr-viewall {
  background: linear-gradient(135deg, var(--dsr-green-dark) 0%, var(--dsr-green-deep) 100%) !important;
  min-height: 240px !important;
  border: none !important;
  box-shadow: 0 8px 24px rgba(10, 91, 66, 0.2) !important;
}
.psr-viewall:hover {
  box-shadow: 0 14px 32px rgba(10, 91, 66, 0.32) !important;
}

/* ============ MOBILE — swipe carousel ============ */
@media (max-width: 768px) {
  .dsr { padding: 32px 0; }

  .dsr-hero {
    grid-template-columns: 1fr;
    text-align: center;
    justify-items: center;
    gap: 24px;
    padding: 0 20px;
  }
  .dsr-hero__text p { margin-left: auto; margin-right: auto; }
  .dsr-hero__text h2 { font-size: 22px; }
  .dsr-hero__text p { font-size: 14.5px; }

  /* Hide arrows on mobile — native swipe takes over */
  #reviews-tab > div > button {
    display: none !important;
  }

  /* Native scroll container with snap points */
  #reviews-tab > div > div {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 20px;
    padding: 4px 20px 20px;
  }

  /* Cards snap and show a peek of the next one */
  .psr-card {
    scroll-snap-align: start;
    min-width: 82vw !important;
    max-width: 82vw !important;
    min-height: auto;
  }

  .psr-viewall {
    min-height: 220px !important;
  }
}
 
 /* mega menu display fix */

/* ============================================================
   MENU RESPONSIVE FIX v3 — desktop menu 992px+, hamburger 991px down
   Targets the module's own .changestatus/.transition_floating classes
   ============================================================ */

@media (min-width: 992px) {

  /* Neutralise the module's "mobile mode" (changestatus) on the menu list */
  .ets_mm_megamenu.changestatus .mm_menus_ul,
  .ets_mm_megamenu.transition_floating .mm_menus_ul,
  .changestatus.transition_floating .mm_menus_ul {
    position: static !important;
    transform: none !important;
    -webkit-transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    max-width: none !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    background: none !important;
    display: flex !important;
    flex-wrap: wrap !important;   /* wrap to new lines instead of cutting off */
  }

  /* Hide the module's mobile hamburger bar + its close bar */
  .ets_mm_megamenu .ybc-menu-toggle,
  .ets_mm_megamenu .close_menu,
  .changestatus.transition_floating .close_menu {
    display: none !important;
  }

  /* Kill the dark overlay the module adds behind its mobile menu */
  .changestatus.transition_floating .ybc-menu-toggle.opened:before {
    display: none !important;
  }

  /* Let individual items wrap and sit inline */
  .ets_mm_megamenu .mm_menus_ul .mm_menus_li {
    white-space: normal !important;
    float: none !important;
  }
}

@media (min-width: 992px) {
  .ets_mm_megamenu.changestatus .mm_menus_ul > .mm_menus_li,
  .changestatus.transition_floating .mm_menus_ul > .mm_menus_li {
    display: inline-block !important;
    width: auto !important;
    background: none !important;
    border: none !important;
  }
}
 
 @media (max-width: 991.98px) {
  body .sticky-desktop-wrapper,
  body #desktop-header.desktop-header-style-2 {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
  }
   
  /* but hide the desktop chrome so only the menu shows */
  body #desktop-header .header-top { display: none !important; }
  
  .mm_menu_content_title {color:#000!important;} 	
  
  /* give the sticky header a concrete, lower stacking value */
  #mobile-header-sticky {
    z-index: 1000 !important;
  }
  /* menu sits well above it */
  .col-mobile-btn-menu {
    position: relative !important;
    z-index: 100000 !important;
  }
  .ets_mm_megamenu .mm_menus_ul.active {
    z-index: 100001 !important;
  }
  
  /* Force the entire megamenu chain to be visible and sized */
  #desktop-header .ets_mm_megamenu,
  #desktop-header .ets_mm_megamenu .ets_mm_megamenu_content,
  #desktop-header .ets_mm_megamenu .ets_mm_megamenu_content .container,
  #desktop-header .ets_mm_megamenu .ets_mm_megamenu_content_content {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    position: static !important;
    visibility: visible !important;
  }

  /* Hide the module's own toggle bar */
  #desktop-header .ets_mm_megamenu .ybc-menu-toggle { display: none !important; }
  .ybc-menu-btn  { display: none !important; }
  /* Menu list hidden by default */
  #desktop-header .ets_mm_megamenu .mm_menus_ul { display: none !important; }

  /* When active: full-screen overlay, forced dimensions */
  #desktop-header .ets_mm_megamenu .mm_menus_ul.active {
    display: block !important;
    position: fixed !important;
    top: 0 !important;          /* push down below the sticky header */
    left: 0; right: 0; bottom: 0;
    width: 100vw !important;
    height: 100% !important;   /* shrink height to match */
    z-index: 99999 !important;
    overflow-y: auto !important;
    background: #f3f3f3 !important;
    padding: 20px !important;
    margin: 0 !important;
  }

  /* Force list items visible and full width */
  #desktop-header .ets_mm_megamenu .mm_menus_ul.active .mm_menus_li {
    display: block !important;
    width: 100% !important;
    float: none !important;
  }
 
}

/* ================================================================
   BLOG CAROUSEL — CSS
   Paste into Elementor → Custom CSS  (or your theme's custom.css)
   Everything is scoped under .ds-blogcar so it won't clash.
   ================================================================ */

.ds-blogcar {
    --ds-gap: 20px;
    --ds-radius: 8px;
    --ds-accent: #4a90e2;
    --ds-text: #1a1a1a;
    --ds-muted: #666;
    --ds-border: #e5e7eb;
    --ds-shadow: 0 2px 10px rgba(0,0,0,0.06);
    --ds-shadow-hover: 0 8px 22px rgba(0,0,0,0.10);
    --ds-visible: 4;                          /* default: desktop */
    font-family: Helvetica, Arial, sans-serif;
    color: var(--ds-text);
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
}
.ds-blogcar *,
.ds-blogcar *::before,
.ds-blogcar *::after { box-sizing: border-box; }

/* -------- header ---------------------------------------------- */
.ds-blogcar__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
    flex-wrap: wrap;
}
.ds-blogcar__title {
    font-size: 24px;
    font-weight: 700;
    color: var(--ds-text);
    margin: 0;
    line-height: 1.2;
}
.ds-blogcar__nav { display: flex; gap: 8px; }
.ds-blogcar__btn {
    width: 40px; height: 40px;
    border-radius: 50%;
    border: 1px solid var(--ds-border);
    background: #fff;
    color: var(--ds-text);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease;
    padding: 0;
}
.ds-blogcar__btn:hover:not(:disabled) {
    background: var(--ds-accent);
    border-color: var(--ds-accent);
    color: #fff;
}
.ds-blogcar__btn:active:not(:disabled) { transform: scale(0.94); }
.ds-blogcar__btn:disabled { opacity: 0.35; cursor: default; }
.ds-blogcar__btn:focus-visible {
    outline: 2px solid var(--ds-accent);
    outline-offset: 2px;
}

/* -------- viewport + track ------------------------------------ */
.ds-blogcar__viewport {
    overflow: hidden;
    /* just a tiny bit of vertical breathing room for card hover lift + shadow */
    padding: 4px 0 12px;
}
.ds-blogcar__track {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    gap: var(--ds-gap);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;                    /* Firefox */
}
.ds-blogcar__track::-webkit-scrollbar { display: none; } /* Chrome/Safari */

.ds-blogcar__slide {
    /* one card takes 1/visible of the row minus gaps between cards */
    flex: 0 0 calc((100% - (var(--ds-visible) - 1) * var(--ds-gap)) / var(--ds-visible));
    scroll-snap-align: start;
    min-width: 0;
}

/* -------- card ------------------------------------------------- */
.ds-blogcar__card {
    display: flex;
    flex-direction: column;
    height: 100%;
    background: #ffeaea;
    border: 1px solid #ffeaea;
    border-radius: var(--ds-radius);
    overflow: hidden;
    text-decoration: none;
    color: inherit;
    box-shadow: var(--ds-shadow);
    transition: transform .22s ease, box-shadow .22s ease;
}
.ds-blogcar__card:hover {
    transform: translateY(-3px);
    box-shadow: var(--ds-shadow-hover);
    text-decoration: none;
    color: inherit;
}
.ds-blogcar__card:focus-visible {
    outline: 2px solid var(--ds-accent);
    outline-offset: 2px;
}

.ds-blogcar__media {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 2;
    background: #fdf4d3;
    overflow: hidden;
}
.ds-blogcar__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .35s ease;
}
.ds-blogcar__card:hover .ds-blogcar__media img { transform: scale(1.04); }

.ds-blogcar__body {
    padding: 16px 18px 18px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex: 1;
}
.ds-blogcar__tag {
    display: inline-block;
    align-self: flex-start;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--ds-accent);
    background: rgba(74,144,226,0.10);
    padding: 4px 9px;
    border-radius: 4px;
}
.ds-blogcar__cardtitle {
    font-size: 16px;
    font-weight: 700;
    color: var(--ds-text);
    line-height: 1.35;
    margin: 2px 0 0;
    /* clamp to 2 lines so cards stay even in height */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.ds-blogcar__desc {
    font-size: 14px;
    color: var(--ds-muted);
    line-height: 1.55;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* -------- dots ------------------------------------------------- */
.ds-blogcar__dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 14px;
    flex-wrap: wrap;
}
.ds-blogcar__dot {
    width: 8px; height: 8px;
    border-radius: 50%;
    border: 0;
    background: #d0d5dd;
    padding: 0;
    cursor: pointer;
    transition: background .18s ease, transform .18s ease, width .18s ease;
}
.ds-blogcar__dot:hover { background: #a3aab8; }
.ds-blogcar__dot.is-active {
    background: var(--ds-accent);
    width: 22px;
    border-radius: 4px;
}
.ds-blogcar__dot:focus-visible {
    outline: 2px solid var(--ds-accent);
    outline-offset: 2px;
}

/* -------- responsive breakpoints ------------------------------ */
/* Tablet: show 2 */
@media (max-width: 1024px) {
    .ds-blogcar { --ds-visible: 2; --ds-gap: 16px; }
    .ds-blogcar__title { font-size: 20px; }
}
/* Phone: show 1 */
@media (max-width: 640px) {
    .ds-blogcar { --ds-visible: 1; --ds-gap: 14px; }
    .ds-blogcar__title { font-size: 18px; }
    .ds-blogcar__nav { display: none; }        /* mobile users swipe instead */
    .ds-blogcar__body { padding: 14px 16px 16px; }
}

/* -------- accessibility --------------------------------------- */
@media (prefers-reduced-motion: reduce) {
    .ds-blogcar__track { scroll-behavior: auto; }
    .ds-blogcar__card,
    .ds-blogcar__media img,
    .ds-blogcar__btn,
    .ds-blogcar__dot { transition: none; }
    .ds-blogcar__card:hover { transform: none; }
    .ds-blogcar__card:hover .ds-blogcar__media img { transform: none; }
}


 
/* ===== Contact Us Page ===== */
.cu-page {
  font-family: Helvetica, Arial, sans-serif;
  color: #333;
  line-height: 1.6;
  width: 100%;
}

/* Intro banner — darker blue */
.cu-intro {
  background: linear-gradient(135deg, #1e5f25 0%, #31a113 100%);
  border-radius: 10px;
  padding: 32px 36px;
  margin-bottom: 32px;
  text-align: center;
}
.cu-intro h1 {
  margin: 0 0 10px;
  font-size: 30px;
  color: #fff;
}
.cu-intro p {
  margin: 0;
  font-size: 16px;
  color: #e0e7f0;
}

/* Two-column layout */
.cu-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  margin-bottom: 50px;
  align-items: flex-start;
}
.cu-col-left {
  flex: 1;
  min-width: 280px;
  max-width: 360px;
}
.cu-col-right {
  flex: 2;
  min-width: 320px;
}

/* Contact info card */
.cu-info {
  background: #fafafa;
  border: 1px solid #ececec;
  border-radius: 10px;
  padding: 26px 28px;
}
.cu-info h2 {
  font-size: 22px;
  color: #1a1a1a;
  margin: 0 0 18px;
  padding-bottom: 12px;
  border-bottom: 2px solid #c0392b;
}
.cu-info__block {
  margin-bottom: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid #ececec;
}
.cu-info__block:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}
.cu-info__label {
  display: block;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #c0392b;
  margin-bottom: 4px;
}
.cu-info__value {
  font-size: 16px;
  color: #1a1a1a;
  margin: 0;
}
.cu-info__value a {
  color: #1a1a1a;
  text-decoration: none;
  font-weight: 700;
}
.cu-info__value a:hover { text-decoration: underline; }
.cu-info__sub {
  font-size: 14px;
  color: #666;
  margin: 4px 0 0;
}
.cu-info__links {
  list-style: none;
  padding: 0;
  margin: 0;
}
.cu-info__links li { margin-bottom: 6px; }
.cu-info__links a {
  color: #c0392b;
  text-decoration: none;
  font-size: 15px;
}
.cu-info__links a:hover { text-decoration: underline; }

/* Form column */
.cu-form-card {
  background: #fff;
  border: 1px solid #ececec;
  border-radius: 10px;
  padding: 28px 32px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.04);
}
.cu-form-card h2 {
  font-size: 22px;
  color: #1a1a1a;
  margin: 0 0 8px;
}
.cu-form-card__intro {
  margin: 0 0 22px;
  color: #555;
  font-size: 15px;
}

/* Trust strip */
.cu-trust {
  background: #1a1a1a;
  color: #fff;
  border-radius: 10px;
  padding: 32px 24px;
  margin-bottom: 40px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-around;
  text-align: center;
}
.cu-trust__item {
  flex: 1;
  min-width: 150px;
  padding: 0 10px;
}
.cu-trust__number {
  display: block;
  font-size: 36px;
  font-weight: 700;
  color: #4a90e2;
  line-height: 1.1;
  margin-bottom: 6px;
}
.cu-trust__label {
  display: block;
  font-size: 14px;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 600;
}

/* Quick links cards */
.cu-quicklinks h2 {
  font-size: 22px;
  color: #1a1a1a;
  margin: 0 0 20px;
  text-align: center;
}
.cu-quicklinks__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  margin-bottom: 40px;
}
.cu-quicklinks__card {
  flex: 1;
  min-width: 220px;
  background: #fafafa;
  border: 1px solid #ececec;
  border-radius: 8px;
  padding: 22px 20px;
  text-decoration: none;
  color: inherit;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
  display: block;
}
.cu-quicklinks__card:hover {
  transform: translateY(-3px);
  box-shadow: 0 6px 16px rgba(0,0,0,0.08);
  border-color: #4a90e2;
  text-decoration: none;
}
.cu-quicklinks__icon {
  font-size: 28px;
  display: block;
  margin-bottom: 10px;
}
.cu-quicklinks__title {
  display: block;
  font-size: 16px;
  font-weight: 700;
  color: #1a1a1a;
  margin-bottom: 4px;
}
.cu-quicklinks__desc {
  display: block;
  font-size: 14px;
  color: #666;
  line-height: 1.5;
} 

/* ===== 10% Off Subscribe Page ===== */
.ds-promo {
  font-family: Helvetica, Arial, sans-serif;
  color: #333;
  width: 100%;
}

/* Hero with background image + CTA box overlay */
.ds-hero {
  position: relative;
  width: 100%;
  min-height: 460px;
  background: #b39ddb url('https://cdn2.dadshop.com.au/img/cms/purple-girl.jpg') center center / cover no-repeat;
  border-radius: 8px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 30px;
  box-sizing: border-box;
  margin-bottom: 50px;
}

/* Black CTA box sitting on the right */
.ds-cta {
  background: #111;
  color: #fff;
  padding: 32px 30px;
  border-radius: 6px;
  max-width: 460px;
  width: 100%;
  box-shadow: 0 6px 20px rgba(0,0,0,0.25);
  box-sizing: border-box;
}
.ds-cta h2 {
  margin: 0 0 12px;
  font-size: 26px;
  color: #fff;
  line-height: 1.2;
}
.ds-cta__intro {
  margin: 0 0 18px;
  font-size: 15px;
  color: #fff;
}
.ds-cta input[type="text"],
.ds-cta input[type="email"] {
  width: 100%;
  padding: 14px 16px;
  font-size: 15px;
  border: 0;
  border-radius: 4px;
  margin-bottom: 12px;
  box-sizing: border-box;
  font-family: inherit;
}
.ds-cta__small {
  display: block;
  font-size: 12px;
  color: #c1c2c3;
  margin-bottom: 18px;
  line-height: 1.5;
}
.ds-cta button[type="submit"] {
  background: #f28207;
  color: #fff;
  border: 0;
  border-radius: 4px;
  padding: 14px 22px;
  font-size: 16px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: background 0.15s ease;
}
.ds-cta button[type="submit"]:hover { background: #d97206; }
.ds-cta button svg {
  width: 16px;
  height: 16px;
  fill: #fff;
}
.ds-cta__honeypot { display: none !important; }

/* "3 Things" grid section */
.ds-things {
  text-align: center;
  margin: 50px 0 30px;
}
.ds-things h2 {
  font-size: 26px;
  color: #1a1a1a;
  margin: 0 0 40px;
}
.ds-things__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: center;
}
.ds-thing {
  flex: 1;
  min-width: 260px;
  max-width: 380px;
  text-align: center;
}
.ds-thing__icon {
  width: 140px;
  height: 140px;
  border-radius: 50%;
  background: #fff;
  overflow: hidden;
  margin: 0 auto 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 14px rgba(0,0,0,0.08);
}
.ds-thing__icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ds-thing h3 {
  font-size: 18px;
  color: #1a1a1a;
  margin: 0 0 12px;
  font-weight: 700;
}
.ds-thing p {
  font-size: 15px;
  color: #4a90e2;
  line-height: 1.6;
  margin: 0;
}

/* Responsive */
@media (max-width: 768px) {
  .ds-hero {
    min-height: 0;
    padding: 20px;
    background-position: center top;
  }
  .ds-cta { max-width: 100%; }
}
 
/* ===== Mother's Day CMS Page ===== */
.md-page { font-family: Helvetica, Arial, sans-serif; color: #333; line-height: 1.6; }

/* Hero/inline images */
.md-page img {
  max-width: 350px;
  height: auto;
  border-radius: 8px;
  display: block;
}

/* Floated intro image (optional — apply class manually if needed) */
.md-floatright {
  float: right;
  margin: 6px 0 16px 28px;
  max-width: 360px;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* Highlight quote bar (date banner) */
.md-quotebg {
  background: #c2185b;
  color: #fff;
  text-align: center;
  padding: 16px 20px;
  border-radius: 6px;
  margin: 28px 0;
  font-size: 18px;
}
.md-quotebg strong { color: #fff; }

/* Country grid */
.md-row {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin: 0 0 24px;
  clear: both;
}
.md-col {
  flex: 1;
  min-width: 260px;
  background: #fdf4f7;
  border: 1px solid #f3d6e0;
  border-radius: 8px;
  padding: 18px;
  box-sizing: border-box;
}
.md-col img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 12px;
}
.md-col p { margin: 0 0 10px; font-size: 14.5px; }
.md-subheading {
  display: block;
  font-size: 19px;
  font-weight: 700;
  color: #c2185b;
  margin-bottom: 6px;
}

/* Flowers grid (6 cards) */
.md-flowers {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin: 0 0 28px;
}
.md-flower {
  flex: 1;
  min-width: 280px;
  background: #fff;
  border: 1px solid #f3d6e0;
  border-radius: 8px;
  padding: 18px;
  box-sizing: border-box;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}
.md-flower img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 12px;
}
.md-flower-name {
  display: block;
  font-size: 19px;
  font-weight: 700;
  color: #c2185b;
  margin-bottom: 8px;
}
.md-flower p { margin: 0; font-size: 14.5px; }

/* Ideas list */
.md-ideas {
  list-style: none;
  padding: 0;
  margin: 0 0 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.md-ideas li {
  flex: 1;
  min-width: 280px;
  background: #fdf4f7;
  border-left: 4px solid #c2185b;
  padding: 12px 16px;
  border-radius: 0 6px 6px 0;
  font-size: 15px;
  list-style:none!important;
}

/* Dates table */
.md-table-wrap { overflow-x: auto; margin: 24px 0 32px; }
.md-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  overflow: hidden;
}
.md-table thead th {
  background: #c2185b;
  color: #fff;
  text-align: left;
  padding: 14px 16px;
  font-weight: 700;
  font-size: 15px;
  border-bottom: 2px solid #8e1144;
}
.md-table tbody td {
  padding: 12px 16px;
  border-bottom: 1px solid #ececec;
  vertical-align: top;
  color: #333;
}
.md-table tbody tr:nth-child(even) { background: #fdf4f7; }
.md-table tbody tr:hover { background: #fce4ec; }
.md-table tbody td strong { color: #c2185b; }
.md-table tbody td:first-child {
  font-weight: 700;
  color: #1a1a1a;
  width: 130px;
}
.md-table a { color: #c2185b; text-decoration: underline; }

/* Headings */
.md-page h2 {
  font-size: 26px;
  color: #1a1a1a;
  border-left: 5px solid #c2185b;
  padding-left: 14px;
  margin: 40px 0 20px;
  clear: both;
}
.md-page h3 {
  font-size: 19px;
  color: #1a1a1a;
  margin: 24px 0 10px;
}

/* Final note callout */
.md-finalnote {
  background: #fdf4f7;
  border: 1px solid #f3d6e0;
  border-radius: 8px;
  padding: 22px 26px;
  margin: 28px 0;
}
.md-finalnote p { margin: 0 0 10px; }
.md-finalnote p:last-child { margin-bottom: 0; }

.md-row,
.md-flowers,
.md-table-wrap,
.md-page h2 { clear: both; }

/* ===== Father's Day CMS Page ===== */
.fd-page { font-family: Helvetica, Arial, sans-serif; color: #333; line-height: 1.6; }

/* Floated intro image */
.fd-floatright {
  float: right;
  margin: 0 0 16px 24px;
  max-width: 400px;
  height: auto;
  border-radius: 8px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* Highlight quote bar (date banner) */
.fd-quotebg {
  background: #b71c1c;
  color: #fff;
  text-align: center;
  padding: 16px 20px;
  border-radius: 6px;
  margin: 28px 0;
  font-size: 18px;
}
.fd-quotebg span,
.fd-quotebg strong { color: #fff; text-decoration: none; }

/* Large text quote block */
.fd-textquotes {
  background: #f8f5ef;
  border-left: 5px solid #b71c1c;
  padding: 22px 26px;
  margin: 28px 0;
  border-radius: 0 8px 8px 0;
  font-style: italic;
  color: #555;
}
.fd-lrgtxt {
  display: block;
  font-size: 20px;
  font-weight: 700;
  font-style: normal;
  color: #1a1a1a;
  margin-bottom: 10px;
  line-height: 1.3;
}

/* Country grid */
.fd-row {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin: 0 0 24px;
  clear: both;
}
.fd-col {
  flex: 1;
  min-width: 260px;
  background: #fafafa;
  border: 1px solid #ececec;
  border-radius: 8px;
  padding: 18px;
  box-sizing: border-box;
}
.fd-col img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 12px;
  display: block;
}
.fd-col p { margin: 0 0 10px; font-size: 14.5px; }
.fd-subheading {
  display: block;
  font-size: 19px;
  font-weight: 700;
  color: #b71c1c;
  margin-bottom: 6px;
}

/* Dates table */
.fd-table-wrap { overflow-x: auto; margin: 24px 0 32px; }
.fd-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  background: #fff;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  overflow: hidden;
}
.fd-table thead th {
  background: #b71c1c;
  color: #fff;
  text-align: left;
  padding: 14px 16px;
  font-weight: 700;
  font-size: 15px;
  border-bottom: 2px solid #8a1414;
}
.fd-table tbody td {
  padding: 12px 16px;
  border-bottom: 1px solid #ececec;
  vertical-align: top;
  color: #333;
}
.fd-table tbody tr:nth-child(even) { background: #fafafa; }
.fd-table tbody tr:hover { background: #fdf4f4; }
.fd-table tbody td strong { color: #b71c1c; }
.fd-table tbody td:first-child {
  font-weight: 700;
  color: #1a1a1a;
  width: 110px;
}

/* Headings */
.fd-page h2 {
  font-size: 26px;
  color: #1a1a1a;
  border-left: 5px solid #b71c1c;
  padding-left: 14px;
  margin: 40px 0 20px;
  clear: both;
}
.fd-page h3 {
  font-size: 18px;
  color: #1a1a1a;
  margin: 20px 0 8px;
}

/* Clear floats before grids and tables */
.fd-row,
.fd-table-wrap,
.fd-page h2 { clear: both; }
 
/*category*/
.smltxt .product-title {font-size:1em!important;}
.badge-danger {margin-bottom:8px!important;background-color:#BE0000!important;font-size:14px!important;padding:6px 10px!important;}
.dropdown-menu.show {width: 100%;min-width: max-content;}
#back-to-top {bottom:5.8rem;!important;right:2.1rem!important;}
#back-to-top:hover {background:#be0000!important;}
.bold {font-weight:bold;}
.underline {text-decoration:underline;}
.product-flags .new {background:#5fa024!important;color:#fff!important;}
#desktop_logo {width:220px;}
#content h2 {font-size:1.7rem;}
.col-mobile-logo img  {width:130px;}
#footer-container-main {border-top:none!important;padding-top:0!important;}
#footer-container-main > .container {padding-top:0!important;}
.footlogo img {width:180px;!important;}
.nav-tabs .nav-link.active, .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {border-bottom:solid 3px #3ba408;}
.product-reference {float: right;font-size:initial;}
.product-available {background:none;color:#000;display:inline-flex!important;padding:0!important;font-size:initial!important;font-weight:normal;}
.product_header_container {border-bottom:none;}
afterpay-placement {margin:0!important;}
.product-unavailable {padding:5px;background:#b90303!important;font-size:12px;}
.product-variants .input-color:checked+span, .product-variants .input-color:hover+span, .product-variants .input-radio:checked+span, .product-variants .input-radio:hover+span {border:4px solid #557d30!important;}
.products-sort-order {color: #878787;}
.products-sort-order .select-title {display: inline-block;width: 100%;color: #414141;background: #fff;padding: 8px 15px 4px 15px;font-size: 0.875rem;line-height: 1.5rem;cursor: pointer;border: 1px solid #dfdfdf;min-height: 32px;}
.products-sort-order .select-list {display: block;padding: 0.2rem 0.9rem;transition: none;}
.products-sort-order .select-list:hover {background: #8d0000;color: #fff!important;text-decoration: none;}
}
.products-sort-order .dropdown-menu {left: auto;width: 16.875rem;background: #f6f6f6;border-width: 0 1px 1px 1px;border-style:solid;	border-color:#d9d9d9;margin: 0;padding: 0;box-shadow: 1px 5px 5px rgba(0, 0, 0, 0.13);}
.leftgroup {display:flex;padding-left:10px;}
.btn-product-list:hover {background:#5fa024!important;color:#fff!important;}
.hide-this {display:none;}
.products-grid .product-miniature-default .product-functional-buttons a:hover {opacity:1!important;background:#5fa024!important;color:#fff!important;}
.cbp-hrsub.col-3.cbp-show {max-width:500px;}
.cbp-hrsub.col-2.cbp-show {max-width:210px;}
.cbp-hrsub.col-4.cbp-show {max-width:400px;}
.cbp-hrmenu .cbp-hrsub-inner a:hover {text-decoration:underline;}
.elementor-toggle .elementor-toggle-content {padding:20px 30px;}
.elementor-toggle .elementor-toggle-content a:link {color:#2a7506;text-decoration:underline;}
.elementor-icon-list-icon {margin-right:10px;}
.elementor-icon-list-text:hover {text-decoration:underline;}
#extra-0 ul { list-style:disc;}
#extra-1 ul { list-style:disc;}
#extra-2 ul { list-style:disc;}
#extra-3 ul { list-style:disc;}
#extra-4 ul { list-style:disc;}
#extra-5 ul { list-style:disc;}
.product-last-items {display:none;}
.not-to-show {display:none;}
.sizechartshirts img {width:50%;}
.custombut {background:#08428d;color:#fff;}
.paymentg img {max-width:428px;width:100%;image-rendering:-webkit-optimize-contrast;}
.newsimplystick h2 a:link {font-size:18px;line-height:18px;}
#header .header-nav {background:#f6f6f6!important;color:#000;}
.products-grid .product-miniature-default .product-functional-buttons a:hover {background:#990000!important;}
#header .header-nav a {color:#000;}
#header .header-nav a:hover {font-weight:bold;}
.btn-product-list {background:#07810b;}
.btn-product-list:hover {background:#02a501!important;}
.product-price {color:#000!important;}
.btn-product-list {background:#000!important;}
.btn-product-list:hover {background:#a72a10!important;}
.desktop-header-style-1 .search-widget, .desktop-header-style-2 .search-widget {max-width:85%!impportant;}
square-placement {margin: 0 !important;padding: 0 !important;}
.product-information {padding-top:10px;}
.footerw a:link {color:#fff!important;}
#footer, #checkout-footer {background:#f7f7f7;}
#footer-container-main > .container {border-top:none!important;}
.elementor-social-icon i {font-family:'FontAwesome';font-size:18px;}
.elementor-social-icon {padding:7px;}
.fa-linkedin:before {content:"\f099"!important;padding:0 2px 0 0;}
.fa-facebook-f:before, .fa-facebook:before {padding:0 7px 0 3px;}
.fa-instagram:before {padding:0 3px 0 0;}
.fa-pinterest:before {padding: 0 3px 0 0;}
#product-infos-tabs-content {padding:50px;60px;border:1px solid #000;}
#product-infos-tabs-content ul {margin-left:25px;}
#product-modal .modal-title {display:none;}
#wrapper .breadcrumb {padding-top:10px;margin-bottom:15px;padding-bottom:0;}
/*menu*/
.categorym > ul.mm_columns_ul .mm_columns_contents_ul {min-height: 474px !important;}
.occasionm > ul.mm_columns_ul .mm_columns_contents_ul {min-height: 431px !important;}
.mm_columns_ul > li.mm_has_sub {padding:0 0 0 15px!important;}
.autocomplete-suggestion .col-shop {display: none !important;}

/*cart page*/
.payment-method-note .AfterpaySimulator {text-align: center;}
.payment-method-note.afterpay-cart-note {padding:0!important;}

@media (max-width:767px){
.sizechartshirts img {width:100%;}
#product-infos-tabs-content {padding:20px;}
}

@media (max-width:528px){
#header .rightpart {display:none!important;}
#header .left-nav {font-size:14px;text-align:center;width:100%;}
#header .header-nav {display:none!important;}
}

@media (max-width:740px){
#wrapper .breadcrumb {margin-bottom:0!important;}
.page-header {padding-top:0px;}
}

@media (max-width: 1400px){
main {
    margin: 0px auto;
}
}
.nav-tabs {
border: none;
}

#footer .footer-style-3 .block-newsletter>h5{
display: block;
font-size: 2rem;
    margin-bottom: 2rem;
}

#footer-container-main > .container{
    border-top: 1px solid hsla(0,0%,63%,.25);
padding-top: 80px
}

.block-iqitcontactpage hr {
    border-color: transparent;
}

/* Trustpilot-style rating summary box */
.psr-summary {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: #fff;
  padding: 0 0 10px 0;
  margin-bottom: 24px;
}

/* Left rating box */
.psr-ratingbox {
  flex: 0 0 140px;
  background: #fff;
  border: 2px solid #00B67A;
  border-radius: 10px;
  padding: 12px 14px;
  text-align: center;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.psr-ratingbox .score {
  font-size: 2rem;
  font-weight: 700;
  color: #111827;
  line-height: 1;
}

.psr-ratingbox .score span {
  font-size: 1.1rem;
  font-weight: 500;
  color: #6B7280;
}

.psr-ratingbox .label {
  font-weight: 600;
  color: #00B67A;
  margin-top: 2px;
}

.psr-stars2 {
  position: relative;
  font-size: 20px;
  letter-spacing: 2px;
  line-height: 1;
  margin-top: 6px;
}

.psr-stars2::before {
  content: "★★★★★";
  color: #E5E7EB;
}

.psr-stars2::after {
  content: "★★★★★";
  color: #00B67A;
  position: absolute;
  inset: 0 auto 0 0;
  white-space: nowrap;
  overflow: hidden;
  width: calc((4.9 / 5) * 100%);
}

/* Star row */
.psr-stars {
  position: relative;
  font-size: 20px;
  letter-spacing: 2px;
  line-height: 1;
  margin-top: 6px;
}

/* Disable the auto-generated stars if they already exist in markup */
.psr-stars::before,
.psr-stars::after {
  content: none !important;
}

/* Right text section */
.psr-text {
  flex: 1 1 auto;padding:10px 0 0 0;
}

.psr-text h2 {
  font-size: 1.2rem;
  font-weight: 600;
  color: #111827;
  margin: 0 0 6px 0;
}

.psr-text p {
  margin: 0;
  font-size: 0.95rem;
  color: #374151;
  line-height: 1.5;
}

/* Make review cards fit on narrow screens */
@media (max-width: 600px) {
  /* Your cards come from JSON with class="psr-card".
     We need !important to override the inline min-width set by JS. */
  .psreviews .psr-card {
    min-width: calc(68vw - 64px) !important; /* viewport minus button gap */
    max-width: calc(72vw - 64px) !important;
    box-sizing: border-box;
  }

  /* Optional: tighten nav buttons a touch */
  .psreviews .psr-nav {
    padding: 6px 8px;
  }
}

/* Base variables */
.psreviews { --gap:12px; --per:4; }

/* Card base */
.psr-card {
  background: #f0faf5;
  border: 1px solid #d1f0e0;
  border-radius: 12px;
  padding: 16px;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  font-size: 0.9rem;
  color: #1a2e22;
  line-height: 1.5;
}

/* Stars inside cards */
.psr-card .psr-stars {
  color: #00B67A;
  font-size: 18px;
  letter-spacing: 1px;
}

/* Verified badge */
.psr-card .psr-badge {
  display: inline-block;
  background: #00B67A;
  color: #fff;
  font-size: 0.75rem;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 4px;
  margin-right: 6px;
  vertical-align: middle;
}

/* Reviewer name / date line */
.psr-card .psr-by {
  margin-top: 10px;
  font-size: 0.82rem;
  color: #4B5563;
}

/* Desktop ≥1200px: 4 per view (default from above) */
@media (min-width: 1200px) {
  .psreviews { --per:4; }
}

/* Tablet 768–1199px: 2 per view */
@media (min-width: 768px) and (max-width: 1199px) {
  .psreviews { --per:2; }
}

/* Mobile <768px: 1 per view */
@media (max-width: 767px) {
  .psreviews { --per:1; }
}

/* Track spacing */
.psreviews .psreviews__track { gap: var(--gap); }

/* Force each card to the calculated width so N fit perfectly */
.psreviews .psr-card {
  flex: 0 0 calc((100% - (var(--gap) * (var(--per) - 1))) / var(--per)) !important;
  min-width: calc((100% - (var(--gap) * (var(--per) - 1))) / var(--per)) !important;
  max-width: calc((100% - (var(--gap) * (var(--per) - 1))) / var(--per)) !important;
  box-sizing: border-box;
} 
 
.price-table {border: 1px solid #000;border-collapse: collapse;width: 100%;max-width: 250px;}
.price-table td {border: 1px solid #000;padding: 8px;}
.feathered-button{margin-top:20px;background-color:#3ba408;color:#fff!important;padding:10px;width:100%;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:16px;box-shadow:0 0 3px rgba(0,0,0,0.3);border-radius:5px;cursor:pointer;transition:box-shadow 0.3s ease;border:none;}
.feathered-button:hover{box-shadow:0 0 5px rgba(0,0,0,0.5);}
.feathered-button:before{content:"📞";margin-right:8px;}
.custom-table {width: 100%; border-collapse: collapse; margin: 20px 0; font-size: 18px; text-align: center; border: 1px solid #000;}
.custom-table th {background-color: #d3d3d3; padding: 10px; font-weight: bold; border: 1px solid #000;}
.custom-table td {padding: 10px; border: 1px solid #000;}

div.rte-content a {color:#000 !important;}
.elementor-displayFooter .rte-content a {text-decoration: none !important;}
.btn-secondary .js-iqitwishlist-add:hover {color:red;}
.col-add-wishlist .btn-secondary:hover {background-color:#a92a10!important;}

/*shipping cal*/
#postcodeInput {margin: 20px 0;}
#customPostcodeInput { margin: 20px 0; }
.hiddenbit {display: none;}
.hidden {display: none;}
#loading {font-size: 18px;color: 000;margin: 20px 0;}
#customLoading { font-size: 18px; color: #000; margin: 20px 0; }
.esticheck {padding:8px;}
.esticheckbut {padding:9px 15px;background:#ebebeb;border:1px solid #666;margin-left:5px;}
h4.checkit {padding:0;margin:0;}
.checkitp {padding:0!important;}
.resultchk {width:100%;background:#8bffa5;border:1px solid #000;padding: 15px 15px 1px 15px;text-align:left;margin:0 0 20px 0;max-width:500px;}
.visible {display: block;}
/*shipping cal reveal*/
.cartcheckpad {margin:0;}
.reveal {/* max-height: 0;overflow: hidden;transition: max-height 0.5s ease-out;*/background:#e9eef6;}
.cartreveal {max-width:400px;margin-bottom:30px;}
.insidereveal {padding:15px 15px 5px 20px;margin-bottom:25px;}
.reveal.show {font-size:0.9em; line-height:1.5em;/* max-height: 400px; */}
.reveal.show i {font-size:0.8em;}
.revealpad {padding:0;margin:0;font-weight:bold;}
.product-information p {margin:0 0 10px 0!important;}
.resultchkpad {width:100%;padding:0;text-align:left;margin:0;}
.checkitpad {margin:0!important;padding-top:10px;}
.delivery-link:before {content: '\f0d1 '; /* Font Awesome 4.7.0 truck icon */font-family: 'FontAwesome';font-weight: normal;font-size: 0.9em;margin-right: 0.5em;}
.delivery-link {font-size:0.9em;font-weight:bold;}
.insidereveal {
    position: relative;
}
.shipping-calc-close {
    position: absolute;
    top: 8px;
    right: 12px;
    background: none;
    border: none;
    font-size: 0.85em;
    cursor: pointer;
    color: #666;
    padding: 0;
    font-weight: bold;
}
.shipping-calc-close:hover { color: #000; }
.reveal { position: relative; }

.nav-tabs .nav-link.active, .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {border-bottom:solid 3px #9d1111!important;}

/* Mega Menu Start */
/* Hover state for left tab items */
.mm_tabs_li:hover > .mm_tab_li_content,
.mm_tabs_li.open > .mm_tab_li_content {
  background: #be0000;
}

.mm_tabs_li:hover > .mm_tab_li_content a,
.mm_tabs_li.open > .mm_tab_li_content a {
  color: #ffffff !important;
}

/* Active/selected tab */
.mm_tabs_li.active > .mm_tab_li_content {
  background: #be0000;
}

.mm_tabs_li.active > .mm_tab_li_content a {
  color: #ffffff !important;
}

/* Sub menu items on hover */
.mm_columns_contents_ul .ets_mm_categories li:hover > a,
.mm_columns_contents_ul .ets_mm_categories li a:hover {
  color: #be0000 !important;
}

/* Top level menu item hover */
.occasionm:hover > a,
.occasionm.hover > a {
  color: #ffffff !important;
  background: #be0000;
}
/* Right panel background red */
.mm_columns_contents_ul {
  background: #be0000 !important;
}

/* All links in right panel white */
.mm_columns_contents_ul a {
  color: #ffffff !important;
}

/* Hover state - darker red so you can see the hover */
.mm_columns_contents_ul .ets_mm_categories li a:hover {
  background: #900000 !important;
  color: #ffffff !important;
  display: block;
  padding: 3px 6px;
}
/* Remove hover background on submenu items - underline only */
.mm_columns_contents_ul .ets_mm_categories li a:hover {
  background: transparent !important;
  color: #ffffff !important;
  display: block;
  padding: 3px 6px;
  text-decoration: underline !important;
}

/* Remove all borders on the dropdown */
.mm_columns_ul,
.mm_columns_contents_ul,
.mm_tab_li_content,
.mm_blocks_ul,
.ets_mm_megamenu_content,
.mm_menus_li .mm_columns_ul {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}
/* Remove divider between left and right panels */
.mm_columns_contents_ul {
  border-left: none !important;
}

.mm_tab_li_content {
  border-right: none !important;
}
.occasionm>ul.mm_columns_ul .mm_columns_contents_ul {min-height:412px!important;}
.mm_tabs_li.open.mm_tabs_has_content .mm_tab_li_content .mm_tab_name::before,
.mm_menus_li.hover .mm_tabs_li.mm_tabs_has_content:hover .mm_tab_li_content .mm_tab_name::before {
  border-right: 0 !important;
}

/* Tighten spacing for html block links */
.mm_block_type_html .ets_mm_block_content a {
  color: #ffffff !important;
  display: block;
  padding: 1px 6px !important;
  margin: 0 !important;
}

/* Tighten spacing for category items */
.mm_columns_contents_ul .ets_mm_categories li a {
  display: block;
  padding: 1px 6px !important;
  margin: 0 !important;
}

/* Tighten the li elements themselves */
.mm_columns_contents_ul .ets_mm_categories li {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.6 !important;
}

.categorym>ul.mm_columns_ul .mm_columns_contents_ul {min-height:453px!important;}

/* Third level submenu background - darker red */
.mm_columns_contents_ul .ets_mm_categories li.has-sub > ul.ets_mm_categories {
  background: #9d1111 !important;
}

/* Third level submenu links - white */
.mm_columns_contents_ul .ets_mm_categories li.has-sub > ul.ets_mm_categories li a {
  color: #ffffff !important;
  display: block;
  padding: 1px 10px !important;
}

/* Third level hover - underline only */
.mm_columns_contents_ul .ets_mm_categories li.has-sub > ul.ets_mm_categories li a:hover {
  text-decoration: underline !important;
  background: transparent !important;
  color: #ffffff !important;
}

/* Fix parent link (Matching T-Shirts) staying white when sub is open */
.mm_columns_contents_ul .ets_mm_categories li.has-sub:hover > a,
.mm_columns_contents_ul .ets_mm_categories li.has-sub.open > a {
  color: #ffffff !important;
  text-decoration: underline !important;
  background: transparent !important;
}

/* Generic fix for all standard dropdown menus (non-tab) */
.mm_menus_li:not(.mm_menus_li_tab) .mm_columns_ul a {
  color: #111111 !important;
}

.mm_menus_li:not(.mm_menus_li_tab) .mm_columns_ul a:hover {
  color: #be0000 !important;
  text-decoration: underline !important;
  background: transparent !important;
}

.mm_menus_li:not(.mm_menus_li_tab) .mm_columns_ul .h4 {
  color: #111111 !important;
}

/* Tighten spacing */
.mm_menus_li:not(.mm_menus_li_tab) .mm_block_type_html .ets_mm_block_content a {
  display: block;
  padding: 0 6px !important;
}

.mm_menus_li:not(.mm_menus_li_tab) .mm_columns_ul .ets_mm_categories li {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.4 !important;
}

.mm_menus_li:not(.mm_menus_li_tab) .mm_columns_ul .ets_mm_categories {
  margin: 0 !important;
  padding: 0 !important;
}

.mm_menus_li:not(.mm_menus_li_tab) .mm_block_type_html .ets_mm_block_content br {
  display: none !important;
}

/* Mega Menu End */

/*category*/
div.rte-content a {text-decoration:underline;}
.category-additional-description {margin-top:20px;}

/* =====================================================================
   DadShop "About Us" page — scoped styles
   Everything is namespaced under .dsa so it won't affect your theme.
   Fonts are inherited from your site (no font references here).
   ===================================================================== */

.dsa * { box-sizing:border-box; }
.dsa { --ink:#0F0F10; --ink-2:#3A3A3C; --ink-3:#6B6B70; --line:rgba(15,15,16,.08); --red:#D6222B; --red-ink:#B31B22; --red-tint:#FBEBEC;
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif; color:var(--ink); background:var(--paper); font-size:16px; line-height:1.5; -webkit-font-smoothing:antialiased; }
.dsa h1,.dsa h2,.dsa h3 { font-weight:600; letter-spacing:-0.02em; margin:0; text-wrap:balance; }
.dsa p { margin:0; text-wrap:pretty; }
.dsa a { color:inherit; text-decoration:none; }

/* Reveal-on-scroll (CSS + tiny IntersectionObserver toggle) */
.dsa-reveal { opacity:0; transform:translateY(32px); transition:opacity .8s cubic-bezier(0.32,0.72,0,1), transform .8s cubic-bezier(0.32,0.72,0,1); }
.dsa-reveal.is-in { opacity:1; transform:translateY(0); }

/* Buttons */
.dsa-btn { display:inline-flex; align-items:center; gap:8px; padding:12px 20px; border-radius:9999px; font-weight:600; font-size:16px; transition:transform .3s ease, background .3s ease, box-shadow .3s ease; border:0; cursor:pointer; }
.dsa-btn-primary { background:var(--red); color:#fff; box-shadow:0 6px 24px -8px rgba(214,34,43,.55); }
.dsa-btn-primary:hover { background:var(--red-ink); transform:translateY(-1px); }
.dsa-btn-ghost { background:#fff; color:var(--ink); border:1px solid var(--line); }
.dsa-btn-ghost:hover { background:#F4F2ED; }
.dsa-btn:focus-visible { outline:2px solid var(--red); outline-offset:3px; }

/* Layout */
.dsa-container { max-width:1180px; margin:0 auto; padding:0 24px; }
.dsa-hero { text-align:center; padding:96px 24px 48px; max-width:1180px; margin:0 auto; }
.dsa-eyebrow { display:inline-flex; align-items:center; gap:10px; padding:6px 14px; border-radius:9999px; background:var(--red-tint); color:var(--red-ink); font-size:12px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase; margin-bottom:24px; }
.dsa-eyebrow-dot { width:6px; height:6px; border-radius:50%; background:var(--red); }
.dsa-hero h1 { max-width:680px; margin:0 auto 16px; font-size:60px; line-height:1.05; }
.dsa-hero-sub { max-width:640px; margin:0 auto!important; color:var(--ink-2); font-size:18px; line-height:1.55; }
.dsa-hero-cta { display:flex; justify-content:center; gap:12px; margin-top:32px; flex-wrap:wrap; }

/* Stats */
.dsa-stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:2px; background:var(--line); border:1px solid var(--line); border-radius:24px; overflow:hidden; margin:24px 0 96px; }
.dsa-stat { background:#fff; padding:32px 24px; }
.dsa-stat-num { font-size:48px; font-weight:600; letter-spacing:-0.03em; line-height:1; color:var(--ink); }
.dsa-stat-num small { color:var(--red); font-size:32px; margin-left:4px; }
.dsa-stat-lbl { font-size:12px; letter-spacing:0.14em; text-transform:uppercase; color:var(--ink-3); margin-top:12px; font-weight:500; }

/* Story rows */
.dsa-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:64px; align-items:center; padding:64px 0; }
.dsa-row-label { font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:var(--red-ink); font-weight:600; margin-bottom:20px; }
.dsa-row h2 { font-size:36px; line-height:1.1; max-width:520px; margin-bottom:20px; }
.dsa-row p { color:var(--ink-2); font-size:18px; line-height:1.6; }
.dsa-row p + p { margin-top:16px; }
.dsa-row-media { position:relative; }
.dsa-row-media img { position:relative; z-index:1; width:100%; height:auto; border-radius:24px; display:block; }
.dsa-row-media::before { content:""; position:absolute; inset:auto -16px -16px auto; width:60%; height:60%; background:var(--red-tint); border-radius:24px; z-index:0; }
.dsa-row.reverse .dsa-row-media { order:-1; }
.dsa-row.reverse .dsa-row-media::before { inset:-16px auto auto -16px; background:#FFF3D9; }

/* Tagline */
.dsa-tagline-section { text-align:center; padding:120px 24px; max-width:960px; margin:0 auto; }
.dsa-tagline { font-size:60px!important; line-height:1.08; font-weight:600; letter-spacing:-0.03em; max-width:900px; margin:0 auto; }
.dsa-word { display:inline-block; color:rgba(15,15,16,0.28); transition:color .6s cubic-bezier(0.32,0.72,0,1); }
.dsa-word.is-lit { color:var(--ink); }

/* Promise cards */
.dsa-section-head { text-align:center; margin-bottom:56px; }
.dsa-section-head h2 { font-size:44px; line-height:1.1; max-width:640px; margin:0 auto; }
.dsa-promises { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:24px; padding:0 0 64px; }
.dsa-promise { background:#fff; border:1px solid var(--line); border-radius:24px; overflow:hidden; transition:transform .5s ease, box-shadow .5s ease; }
.dsa-promise:hover { transform:translateY(-4px); box-shadow:0 20px 40px -20px rgba(0,0,0,.12); }
.dsa-promise img { width:100%; height:220px; object-fit:cover; display:block; }
.dsa-promise-body { padding:24px; }
.dsa-promise-icon { width:40px; height:40px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:20px; margin-bottom:16px; }
.dsa-promise h3 { font-size:20px; margin-bottom:12px; }
.dsa-promise p { color:var(--ink-2); font-size:16px; line-height:1.55; }

/* Reviews carousel */
.dsa-reviews { padding:96px 24px 64px; max-width:1180px; margin:0 auto; }
.dsa-reviews-head { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:40px; flex-wrap:wrap; }
.dsa-reviews-head h2 { font-size:44px; line-height:1.1; margin-bottom:16px; }
.dsa-reviews-head p { color:var(--ink-2); font-size:18px; }
.dsa-nav { width:44px; height:44px; border-radius:9999px; background:#fff; border:1px solid var(--line); color:var(--ink); display:inline-flex; align-items:center; justify-content:center; cursor:pointer; font-size:18px; transition:background .3s ease, transform .3s ease, box-shadow .3s ease, color .3s ease, border-color .3s ease; }
.dsa-nav:hover { background:var(--red); color:#fff; border-color:var(--red); transform:translateY(-1px); box-shadow:0 8px 20px -8px rgba(214,34,43,.5); }
.dsa-nav:active { transform:translateY(0) scale(0.96); }
.dsa-track { display:flex; gap:20px; overflow-x:auto; scroll-behavior:smooth; padding:8px 4px 24px; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; }
.dsa-track::-webkit-scrollbar { height:6px; }
.dsa-track::-webkit-scrollbar-thumb { background:rgba(15,15,16,.15); border-radius:9999px; }
.dsa-track::-webkit-scrollbar-track { background:transparent; }
.dsa-rcard { flex:0 0 340px; scroll-snap-align:start; min-height:320px; background:#fff; border:1px solid var(--line); border-radius:20px; padding:24px; display:flex; flex-direction:column; gap:14px; }
.dsa-rstars { color:#F0A500; letter-spacing:2px; font-size:14px; }
.dsa-rbadge { display:inline-flex; align-items:center; padding:3px 8px; border-radius:9999px; background:#E7F1E9; color:#2F6B3A; font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; }
.dsa-rtext { color:var(--ink-2); font-size:15px; line-height:1.6; flex:1; display:-webkit-box; -webkit-line-clamp:5; -webkit-box-orient:vertical; overflow:hidden; }
.dsa-rcard.is-expanded .dsa-rtext { display:block; -webkit-line-clamp:unset; overflow:visible; }
.dsa-rmore { align-self:flex-start; background:none; border:0; padding:0; color:var(--red-ink); font-weight:600; font-size:14px; cursor:pointer; font-family:inherit; }
.dsa-rfoot { display:flex; align-items:center; gap:12px; margin-top:auto; padding-top:16px; border-top:1px solid var(--line); }
.dsa-ravatar { width:36px; height:36px; border-radius:50%; color:#fff; display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:600; flex:none; }
.dsa-rname { font-size:14px; font-weight:600; color:var(--ink); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dsa-rdate { font-size:12px; color:var(--ink-3); }

/* CTA band */
.dsa-band-wrap { padding:24px; }
.dsa-band { max-width:1180px; margin:0 auto; background:var(--red); color:#fff; border-radius:32px; padding:96px 24px; text-align:center; position:relative; overflow:hidden; }
.dsa-band::before,.dsa-band::after { content:""; position:absolute; border-radius:50%; background:rgba(255,255,255,.06); }
.dsa-band::before { top:-40px; right:-40px; width:200px; height:200px; }
.dsa-band::after { bottom:-60px; left:-60px; width:280px; height:280px; }
.dsa-band-inner { position:relative; }
.dsa-band h2 { font-size:52px; line-height:1.08; max-width:720px; margin:0 auto 20px; }
.dsa-band p { font-size:18px; max-width:560px; margin:0 auto 32px; opacity:.92; line-height:1.55; }
.dsa-band .dsa-btn { background:#fff; color:var(--red); padding:14px 28px; }
.dsa-band .dsa-btn:hover { transform:translateY(-1px); box-shadow:0 12px 28px -10px rgba(0,0,0,.35); }

@media (max-width:640px){
  .dsa-hero h1 { font-size:40px; }
  .dsa-tagline { font-size:36px; }
  .dsa-row h2, .dsa-reviews-head h2, .dsa-section-head h2 { font-size:28px; }
  .dsa-band h2 { font-size:32px; }
  .dsa-rcard { flex-basis:280px; }
}


/* Fathersday guide */
/* - Page wrapper - */
.fg-wrap {
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: #1a1a1a;
  margin: 0 auto;
  padding: 0 16px 48px;
}

/* - Intro text - */
.fg-intro {
  font-size: 0.97rem;
  line-height: 1.75;
  color: #333;
  margin-bottom: 20px;
}

.fg-intro a {
  color: #be0000;
}

/* - Date banner - */
.fg-date-banner {
  background: #f4f4f4;
  border-left: 4px solid #be0000;
  border-radius: 6px;
  padding: 14px 20px;
  margin-bottom: 20px;
  text-align: center;
}

.fg-date-banner h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: #111;
  margin: 0 0 12px;
}

/* - Price filter buttons - */
.fg-price-btns {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: center;
  margin-bottom: 0;
}

.fg-price-btns a {
  background: #ffecb6;
  border: 1px solid #044b81;
  color: #fff !important;
  padding: 5px 14px;
  border-radius: 4px;
  text-decoration: none !important;
  font-size: 0.85rem;
  font-weight: 600;
  white-space: nowrap;
  transition: background 0.15s;
}

.fg-price-btns a:hover {
  background: #be0000 !important;
  color: #fff !important;
}

/* - Category image grid - */
.fg-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  margin-bottom: 32px;
}

.fg-grid-item {
  display: block;
  position: relative;
  overflow: hidden;
  border-radius: 6px;
  text-decoration: none !important;
}

.fg-grid-item img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.25s ease;
}

.fg-grid-item:hover img {
  transform: scale(1.03);
}

.fg-grid-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.72) 0%, transparent 100%);
  color: #fff;
  font-size: 0.78rem;
  line-height: 1.4;
  padding: 20px 10px 8px;
  opacity: 0;
  transition: opacity 0.2s;
}

.fg-grid-item:hover .fg-grid-caption {
  opacity: 1;
}

/* - Blue info section - */
.fg-blue-section {
  background: #e8f4ff;
  border-radius: 10px;
  padding: 28px 32px;
  margin-bottom: 32px;
  display: flex;
  gap: 28px;
  align-items: flex-start;
  flex-wrap: wrap;
}

.fg-blue-section--reverse {
  flex-direction: row-reverse;
}

.fg-blue-section__img {
  flex: 0 0 280px;
  max-width: 280px;
}

.fg-blue-section__img img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  border-radius: 8px;
  display: block;
}

.fg-blue-section__body {
  flex: 1 1 260px;
}

.fg-blue-section__body h2 {
  font-size: 1.2rem;
  font-weight: 700;
  color: #003d7a;
  margin: 0 0 10px;
}

.fg-blue-section__body p {
  font-size: 0.92rem;
  line-height: 1.7;
  color: #1a2a3a;
  margin: 0 0 12px;
}

.fg-blue-section__body ul {
  margin: 0;
  padding-left: 18px;
}

.fg-blue-section__body ul li {
  font-size: 0.9rem;
  line-height: 1.6;
  margin-bottom: 4px;
}

.fg-blue-section__body ul li a {
  color: #003d7a !important;
}

.fg-blue-section__body ul li a:hover {
  text-decoration: underline !important;
}

/* - Article content sections - */
.fg-article {
  margin-bottom: 32px;
}

.fg-article h2 {
  font-size: 1.25rem;
  font-weight: 700;
  color: #000;
  margin: 28px 0 10px;
  padding-top: 8px;
  border-top: 1px solid #eee;
}

.fg-article h2:first-child {
  margin-top: 0;
  border-top: none;
  padding-top: 0;
}

.fg-article h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: #1a1a1a;
  margin: 20px 0 8px;
}

.fg-article p {
  font-size: 0.95rem;
  line-height: 1.78;
  color: #333;
  margin: 0 0 14px;
}

.fg-article a {
  color: #be0000;
}

.fg-article a:hover {
  text-decoration: underline;
}

.fg-article ul,
.fg-article ol {
  padding-left: 22px;
  margin: 0 0 14px;
}

.fg-article ul li,
.fg-article ol li {
  font-size: 0.95rem;
  line-height: 1.7;
  margin-bottom: 6px;
  color: #333;
}

/* - Responsive - */
@media (max-width: 756px) {#back-to-top {bottom:6.2rem;!important;right:2.9rem!important;}}
@media (max-width: 700px) {
  .fg-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .fg-blue-section {
    flex-direction: column;
    padding: 20px;
  }

  .fg-blue-section--reverse {
    flex-direction: column;
  }

  .fg-blue-section__img {
    flex: none;
    max-width: 100%;
    width: 100%;
  }

  .fg-blue-section__img img {
    height: 180px;
  }
}

@media (max-width: 480px) {
#back-to-top {bottom:6.8rem;!important;right:2.85rem!important;
  .fg-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 4px;
  }

  .fg-price-btns a {
    font-size: 0.78rem;
    padding: 4px 10px;
  }
}


/* =====================================================================
   DadShop "Customer Reviews" page — scoped styles
   Namespaced under .dsa so it won't affect the rest of your theme.
   Fonts are inherited from your site (no font references here).
   ===================================================================== */

.dsa, .dsa * { box-sizing: border-box; }

.dsa {
  color: #2B2520;
  margin: 0 auto;
  padding: 0 0 0 0;
}

.dsa h1, .dsa h2, .dsa h3, .dsa p { margin: 0; }
.dsa img { max-width: 100%; }

/* - Hero - */
.dsa-hero { text-align: center; padding: 72px 0 56px; }
.dsa-eyebrow {
  font-size: 13px; font-weight: 700; letter-spacing: 2px;
  text-transform: uppercase; color: #C2613F; margin-bottom: 22px;
}
.dsa-hero h1 {
  font-weight: 600; font-size: 54px; line-height: 1.08; letter-spacing: -0.5px;
  max-width: 780px; margin: 0 auto 22px; color: #2B2520;
}
.dsa-hero p {
  font-size: 18px; line-height: 1.75; color: #6B6258;
  max-width: 680px; margin: 0 auto;
}

/* - Summary box (light red) - */
.dsa-stats { margin: 0 0 72px; }
.dsa-stats__inner {
  background: #FBE5E2; border-radius: 16px; padding: 56px 48px;
  display: flex; flex-wrap: wrap; gap: 32px; justify-content: space-between;
  text-align: center;
}
.dsa-stat { flex: 1 1 160px; }
.dsa-stat__num { font-weight: 600; font-size: 48px; line-height: 1; color: #BE0000; }
.dsa-stat__label {
  font-size: 12px; font-weight: 700; letter-spacing: 1px;
  text-transform: uppercase; color: #A35F5A; margin-top: 10px;
}

/* - Section wrapper - */
.dsa-section { padding: 16px 0 40px; }

/* - Review cards - */
.dsa-tgrid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 24px;
}
.dsa-tcard { border-radius: 12px; padding: 30px; }
.dsa-tcard__stars {
  color: #D99836; font-size: 16px; letter-spacing: 2px; margin-bottom: 14px;
}
.dsa-tcard h3 { font-weight: 600; font-size: 19px; margin: 0 0 10px; color: #2B2520; }
.dsa-tcard p { font-size: 16px; line-height: 1.75; color: #3D362F; margin: 0 0 24px; }
.dsa-tcard__author { display: flex; align-items: center; gap: 14px; }
.dsa-avatar {
  width: 44px; height: 44px; border-radius: 50%; color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: 15px; flex-shrink: 0;
}
.dsa-tcard__name { font-weight: 700; font-size: 15px; color: #2B2520; }

/* card colour variants (cycled by the script) */
.dsa-tcard--1 { background: #FBE9DC; } .dsa-tcard--1 .dsa-avatar { background: #C2613F; }
.dsa-tcard--2 { background: #F7EFD6; } .dsa-tcard--2 .dsa-avatar { background: #C49A2E; }
.dsa-tcard--3 { background: #E7EDDB; } .dsa-tcard--3 .dsa-avatar { background: #6E7E4A; }
.dsa-tcard--4 { background: #DEE8ED; } .dsa-tcard--4 .dsa-avatar { background: #4E7488; }
.dsa-tcard--5 { background: #F1E1EB; } .dsa-tcard--5 .dsa-avatar { background: #9A5C84; }
.dsa-tcard--6 { background: #F1E6D6; } .dsa-tcard--6 .dsa-avatar { background: #9A7B4A; }

/* - Trustpilot CTA - */
.dsa-tp { text-align: center; }
.dsa-tp a {
  display: inline-block; border: 2px solid #BE0000; color: #BE0000;
  font-weight: 700; font-size: 16px; text-decoration: none !important;
  padding: 15px 34px; border-radius: 8px; transition: background .15s, color .15s;
}
.dsa-tp a:hover { background: #BE0000; color: #fff; }

/* - Red CTA band - */
.dsa-band {
  background: #BE0000; border-radius: 14px; padding: 64px 40px;
  text-align: center; margin: 0 0 8px; color: #fff;
}
.dsa-band h2 {
  font-weight: 600; font-size: 38px; line-height: 1.15; letter-spacing: -0.3px;
  margin: 0 0 16px; color: #fff;
}
.dsa-band p {
  font-size: 18px; line-height: 1.7; color: #fff; opacity: .92;
  max-width: 560px; margin: 0 auto 32px;
}
.dsa-band a {
  display: inline-block; background: #fff; color: #BE0000;
  font-weight: 700; font-size: 16px; text-decoration: none !important;
  padding: 16px 38px; border-radius: 8px;
}

a.dsa-btn-primary,
a.dsa-btn-primary:link,
a.dsa-btn-primary:visited { color: #fff !important; }

a.dsa-btn-ghost,
a.dsa-btn-ghost:link,
a.dsa-btn-ghost:visited { color: #333 !important; }

/* - Responsive - */
@media (max-width: 720px) {
  .dsa-hero { padding: 48px 0 40px; }
  .dsa-hero h1 { font-size: 36px; }
  .dsa-section__head h2, .dsa-band h2 { font-size: 28px; }
  .dsa-stats__inner { padding: 36px 24px; gap: 24px; }
  .dsa-stat__num { font-size: 38px; }
  .dsa-band { padding: 48px 24px; }
}