/*
Theme Name: IDIDTHAT DIVI CHILD
Template: Divi
Author: IDIDTHAT
Author URI: https://ididthatmedia.com/
Description: Divi child theme
Updated: 2026-04-02

*/

/* Remove underline from Divi buttons and swap-video links */
.swap-video,
.et_pb_button,
.et_pb_button:hover {
  text-decoration: none;
}

/* =Make Ship To Different checkbox larger */
 #ship-to-different-address-checkbox {
  transform: scale(2);
  transform-origin: left center;
  margin-right: 25px;
  box-shadow: 0 0 4px 2px rgba(0,75,160,.50);
  border-radius: 0px !important;
}



/* =========================================================
   WooCommerce "Item added to cart" notice — base styling
   Matches current Divi + Woo markup
   ========================================================= */

/* Wrapper (controls spacing & layout context) */
.woocommerce-notices-wrapper {
  margin: 0;
}

/* Success message box */
.woocommerce-message {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 18px;
  background: #ffffff;
  color: #222;
  border: 5px solid #f78d2c;
  border-radius: 16px;
  font-size: 15px;
  line-height: 1.4;
}

/* View Cart button */
.woocommerce-message .wc-forward {
  flex-shrink: 0;
  padding: 8px 14px;
  border-radius: 16px;
  background: #ffffff !important;
  color: #000000 !important;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}

/* Button hover */
.woocommerce-message .wc-forward:hover {
  background: #d97706;
  color: #ffffff;
}

/*BEGIN Checkout error notice — blue background + white text */
body.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error {
  background: #004ba0 !important;      /* blue */
  padding: 16px 20px;
  border: 4px solid #dc2626 !important; /* red border */
}

/* Force ALL text inside to white */
body.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error,
body.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error li,
body.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error li a,
body.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error li strong {
  color: #ffffff !important;
}

/* Optional: clean link styling */
body.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error li a {
  text-decoration: underline;
}

body.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error li a:hover {
  opacity: 0.85;
}
/*END Checkout error notice — blue background + white text */

/* ================================
   CART ICON + OVERLAY COUNT
================================ */

a.et-cart-info { 
  position: relative; 
  left: -20px;
  top: -15px;                 /* move whole icon up slightly */
  display: inline-flex;
  align-items: center;
}

/* Cart icon */
a.et-cart-info span::before {
  content: '\e015';
  font-family: 'ETmodules';
  color: #000;
  display: inline-block;
  transform-origin: center;
  transition: color .25s ease, transform .25s ease;
  font-size: 18px;
  position: relative;
  
}

/* Hover (only affects icon directly) */
a.et-cart-info:hover span::before {
  transform: scale(1.25);
  color: #ea580c;
}

/* Pulse when cart has items (move animation to parent to avoid transform conflict) */
body.has-cart-items a.et-cart-info {
  animation: cartPulse 1.2s ease-in-out infinite;
}

/* Keep icon color change */
body.has-cart-items a.et-cart-info span::before {
  color: #ea580c;
}

@keyframes cartPulse {
  0%   { transform: scale(1); }
  50%  { transform: scale(1.08); }
  100% { transform: scale(1); }
}

/* Overlay count badge */
body.has-cart-items a.et-cart-info::after {
  content: attr(data-count);
  position: absolute;
  top: 3px;                 /* adjust vertical */
  right: 6px;               /* adjust horizontal */
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-width: 16px;
  height: 16px;
  padding: 0 4px;

  font-size: 16px;
  font-weight: 700;
  line-height: 1;

  color: #ea580c;
  
}

/* Hide badge if count = 0 */
a.et-cart-info[data-count="0"]::after {
  display: none !important;
}

/* ================================
   END CART ICON + OVERLAY COUNT
================================ */


/* Disable product page links, keep Add to Cart working */
a.woocommerce-loop-product__link:not(.add_to_cart_button) {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}

/* Bold + underline links in page content only (not header/menu/buttons) */
.et_pb_section a:not(.et_pb_button),
.et_pb_row a:not(.et_pb_button),
.et_pb_column a:not(.et_pb_button),
.et_pb_text a:not(.et_pb_button) {
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

/*Collapsible Row*/
.acc-panel{
  overflow:hidden;
  max-height:0;
  opacity:0;
  transition:max-height .6s ease, opacity .25s ease;
  will-change:max-height, opacity;
}
.acc-panel.is-open{ opacity:1; }

/* after it finishes opening */
.acc-panel.is-open.acc-stable{
  max-height:none;
  overflow:visible;
  transition:opacity .25s ease;
}
/* Make accordion trigger rows look clickable */
.acc-trigger,
.acc-trigger *{cursor:pointer;}

/********BEGIN Return to Top*/
.toTopBtn{
  position:fixed;
  top:100px;               /* adjust vertical position */
  z-index:99999;
  width:42px;
  height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(234,88,12,.65);
  color:#fff;
  text-decoration:none;
  font-size:20px;
  line-height:1;
  box-shadow:0 6px 18px rgba(0,0,0,.2);
  opacity:0;
  visibility:hidden;
  transition:opacity .3s ease, visibility .3s ease;
}

.toTopBtn.show{
  opacity:1;
  visibility:visible;
}

/* Right button */
#toTopBtnRight{
  right:18px;
}

/* Left button */
#toTopBtnLeft{
  left:18px;
}

/* Hover */
.toTopBtn:hover{
  background:rgba(234,88,12);
}
/********END Return to Top*/

/* Base style for the cookie settings link */
.nsc-bara-manage-cookie-settings {
    color: #737373;
    transition: color 0.3s ease;
}

/* Black hover effect for the cookie settings link */
.nsc-bara-manage-cookie-settings:hover {
    color: #f78c2a;
}

/* Customizing text selection for Firefox */
::-moz-selection {
    /* Background color when text is selected in Firefox */
    background-color: #1F2937; /* orange color */
    /* Text color when text is selected in Firefox */
    color: #fff;
}
 
/* Customizing text selection for other browsers */
::selection {
    /* Background color when text is selected in other browsers */
    background-color: #1F2937; /* orange color */
    /* Text color when text is selected in other browsers */
    color: #fff;
}

/* Style the back to top button on hover */
body .et_pb_scroll_top:hover {
	background-color: #1F2937 !important;
}


/********* Menu Icons BEGIN */
/* Base icon-only menu items */
.menu-home > a,
.menu-search > a,
.menu-shop > a{
  font-size: 0 !important;   /* hide text label */
  line-height: 1 !important;
  display: inline-flex;
  align-items: center;
}

/* Icon glyphs */
.menu-home > a::before,
.menu-search > a::before,
.menu-shop > a::before{
  font-family: 'ETmodules';
  font-size: 18px;
  color: #000;
  display: inline-block;
  transition: transform .3s ease, color .3s ease;
}

/* Individual icons */
.menu-home > a::before{
  content: '\e009'; /* home */
}

.menu-shop > a::before{
  content: '\e015'; /* shopping cart */
}

.menu-search > a::before{
  content: '\55'; /* shopping cart */
}

/* Shared hover animation */
.menu-home > a:hover::before,
.menu-search > a:hover::before,
.menu-shop > a:hover::before{
  transform: scale(1.25);
  color: #ea580c;
}
/********* Menu Icons END */

/* DIVI DEFAULT HEADER – ONE-LINE TOP MENU, MULTI-LINE DROPDOWNS */
@media (min-width: 981px){

  /* Header layout: logo left, menu right */
  #main-header .container{
    display: flex;
    align-items: center;
  }

  /* Logo protection */
  #main-header .logo_container{
    flex: 0 0 auto;
    padding-right: 40px;
  }

  /* Navigation fills remaining space */
  #et-top-navigation{
    flex: 1 1 auto;
    min-width: 200px;
    display: flex;
    justify-content: flex-end;
  }

  /* Top-level menu: ONE LINE */
  #top-menu{
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
  }

  #top-menu > li{
    white-space: nowrap;
	margin: 0;
	padding-right: 12px !important;
	  
  }

  /* Reduce spacing between menu items */
  #top-menu > li > a{
    padding: 0;
    padding-left: 0;
    padding-right: 0;
	letter-spacing: 0;
  }

  /* Dropdown menus: MULTI-LINE */
  #top-menu ul{
    white-space: normal;
    min-width: 200px;
    max-width: 320px;
  }

  #top-menu ul li a{
    white-space: normal;
    line-height: 1.4;
    padding: 4px 10px;

  }
	/*Primary Menu Hover Color*/
  #main-header #top-menu > li > a:hover {
    color: #ea580c;
  }
}

	/*Make Qty field in cart big enough to fit 3 digits*/
.woocommerce .quantity input.input-text.qty {
  width: 70px !important;
  min-width: 70px;
  text-align: center;
}


