.elementor-kit-188{--e-global-color-primary:#E6E6E6;--e-global-color-secondary:#FFFFFF;--e-global-color-text:#121212;--e-global-color-accent:#3880C9;--e-global-color-588ebe7d:#FFF;--e-global-color-46338f3:#FFFFFF00;--e-global-color-9197d82:#515D4A;--e-global-color-cede017:#E0DAD1;--e-global-color-e406c00:#F3F1EE;--e-global-color-a640be8:#9AA494;--e-global-color-70c9901:#FFF;--e-global-color-e109981:#C8C8C8;--e-global-color-41d2f9f:#9AA494BA;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:capitalize;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-text-decoration:none;--e-global-typography-secondary-font-family:"Playfair Display";--e-global-typography-secondary-font-size:1px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-text-transform:none;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-text-decoration:none;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-secondary-letter-spacing:0.6px;--e-global-typography-e962e96-font-family:"Playfair Display";--e-global-typography-e962e96-font-weight:600;--e-global-typography-e962e96-text-transform:none;--e-global-typography-e962e96-font-style:normal;--e-global-typography-e962e96-text-decoration:none;--e-global-typography-e962e96-line-height:1.2em;--e-global-typography-d801ebd-font-family:"Roboto";--e-global-typography-d801ebd-font-weight:300;--e-global-typography-d801ebd-text-transform:none;--e-global-typography-d801ebd-font-style:normal;--e-global-typography-d801ebd-text-decoration:none;--e-global-typography-2d7d09b-font-size:clamp(3 rem,2.5385rem + 2.0513vw, 4 rem);--e-global-typography-28daba9-font-size:clamp(2.4, 2.1231rem + 1.2308vw, 3rem);--e-global-typography-c127518-font-size:clamp(2.1rem, 1.9154rem + 0.8205vw, 2.5rem);--e-global-typography-14eac7f-font-size:clamp(1.8rem, 1.7077rem + 0.4103vw, 2rem);background-color:var( --e-global-color-70c9901 );}.elementor-kit-188 e-page-transition{background-color:var( --e-global-color-46338f3 );}body.e-wc-message-notice .woocommerce-message, body.e-wc-message-notice .wc-block-components-notice-banner.is-success{background-color:var( --e-global-color-a640be8 );}body.e-wc-message-notice .woocommerce-message .button, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button{background-color:var( --e-global-color-46338f3 );background-image:var( --e-global-color-46338f3 );font-family:var( --e-global-typography-b0f5a00-font-family ), Sans-serif;font-size:var( --e-global-typography-b0f5a00-font-size );font-weight:var( --e-global-typography-b0f5a00-font-weight );text-transform:var( --e-global-typography-b0f5a00-text-transform );font-style:var( --e-global-typography-b0f5a00-font-style );text-decoration:var( --e-global-typography-b0f5a00-text-decoration );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );border-width:1px 1px 1px 1px;}body.e-wc-message-notice .woocommerce-message .button:hover, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button:hover{background-color:var( --e-global-color-e406c00 );background-image:var( --e-global-color-e406c00 );}body.e-wc-info-notice .woocommerce-info, body.e-wc-info-notice .wc-block-components-notice-banner.is-info{background-color:var( --e-global-color-46338f3 );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-9197d82 );}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{background-color:var( --e-global-color-a640be8 );background-image:var( --e-global-color-a640be8 );font-family:var( --e-global-typography-b0f5a00-font-family ), Sans-serif;font-size:var( --e-global-typography-b0f5a00-font-size );font-weight:var( --e-global-typography-b0f5a00-font-weight );text-transform:var( --e-global-typography-b0f5a00-text-transform );font-style:var( --e-global-typography-b0f5a00-font-style );text-decoration:var( --e-global-typography-b0f5a00-text-decoration );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}body.e-wc-info-notice .woocommerce-info .button:hover, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button:hover, body.e-wc-info-notice .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-info .woocommerce-Button:hover, body.e-wc-info-notice .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .wc-block-components-notice-banner.is-info .woocommerce-Button:hover{background-color:var( --e-global-color-9197d82 );background-image:var( --e-global-color-9197d82 );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}{}h1.entry-title{display:var(--page-title-display);}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{--error-message-text-color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );--error-message-normal-links-color:var( --e-global-color-accent );--error-message-hover-links-color:var( --e-global-color-secondary );}body.e-wc-error-notice .woocommerce-error a.wc-backward, body.e-wc-error-notice .wc-block-components-notice-banner.is-error a.wc-backward{font-family:var( --e-global-typography-b0f5a00-font-family ), Sans-serif;font-size:var( --e-global-typography-b0f5a00-font-size );font-weight:var( --e-global-typography-b0f5a00-font-weight );text-transform:var( --e-global-typography-b0f5a00-text-transform );font-style:var( --e-global-typography-b0f5a00-font-style );text-decoration:var( --e-global-typography-b0f5a00-text-decoration );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{--message-message-text-color:var( --e-global-color-e406c00 );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );--message-message-icon-color:var( --e-global-color-e406c00 );--message-buttons-normal-text-color:var( --e-global-color-e406c00 );--message-buttons-hover-text-color:var( --e-global-color-9197d82 );--message-buttons-hover-border-color:var( --e-global-color-e406c00 );--message-border-type:solid;--message-border-color:var( --e-global-color-e406c00 );--message-buttons-border-radius:0px 0px 0px 0px;}body.e-wc-message-notice .woocommerce-message .restore-item, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, body.e-wc-message-notice .woocommerce-message a:not([class]), body.e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){font-family:var( --e-global-typography-b0f5a00-font-family ), Sans-serif;font-size:var( --e-global-typography-b0f5a00-font-size );font-weight:var( --e-global-typography-b0f5a00-font-weight );text-transform:var( --e-global-typography-b0f5a00-text-transform );font-style:var( --e-global-typography-b0f5a00-font-style );text-decoration:var( --e-global-typography-b0f5a00-text-decoration );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}.e-wc-message-notice .woocommerce-message .restore-item, .e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, .e-wc-message-notice .woocommerce-message a:not([class]), .e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){--notice-message-normal-links-color:var( --e-global-color-e406c00 );}.e-wc-message-notice .woocommerce-message .restore-item:hover, .e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item:hover, .e-wc-message-notice .woocommerce-message a:not([class]):hover, .e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]):hover{--notice-message-hover-links-color:var( --e-global-color-accent );}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{--info-message-text-color:var( --e-global-color-9197d82 );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );--info-message-icon-color:var( --e-global-color-9197d82 );--info-buttons-normal-text-color:var( --e-global-color-e406c00 );--info-buttons-hover-text-color:var( --e-global-color-e406c00 );--info-border-type:none;}@media(max-width:1024px){.elementor-kit-188{--e-global-typography-primary-font-size:54px;--e-global-typography-primary-letter-spacing:5px;--e-global-typography-secondary-font-size:42px;--e-global-typography-e962e96-font-size:250px;--e-global-typography-e962e96-letter-spacing:5px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}body.e-wc-error-notice .woocommerce-error a.wc-backward, body.e-wc-error-notice .wc-block-components-notice-banner.is-error a.wc-backward{font-size:var( --e-global-typography-b0f5a00-font-size );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}body.e-wc-message-notice .woocommerce-message .restore-item, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, body.e-wc-message-notice .woocommerce-message a:not([class]), body.e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){font-size:var( --e-global-typography-b0f5a00-font-size );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}body.e-wc-message-notice .woocommerce-message .button, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button{font-size:var( --e-global-typography-b0f5a00-font-size );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{font-size:var( --e-global-typography-b0f5a00-font-size );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}}@media(max-width:767px){.elementor-kit-188{--e-global-typography-primary-font-size:40px;--e-global-typography-primary-letter-spacing:1.8px;--e-global-typography-secondary-font-size:26px;--e-global-typography-e962e96-font-size:135px;--e-global-typography-e962e96-letter-spacing:1.8px;--e-global-typography-d801ebd-font-size:12px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}body.e-wc-error-notice .woocommerce-error a.wc-backward, body.e-wc-error-notice .wc-block-components-notice-banner.is-error a.wc-backward{font-size:var( --e-global-typography-b0f5a00-font-size );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}body.e-wc-message-notice .woocommerce-message .restore-item, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, body.e-wc-message-notice .woocommerce-message a:not([class]), body.e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){font-size:var( --e-global-typography-b0f5a00-font-size );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}body.e-wc-message-notice .woocommerce-message .button, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button{font-size:var( --e-global-typography-b0f5a00-font-size );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );word-spacing:var( --e-global-typography-text-word-spacing );}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{font-size:var( --e-global-typography-b0f5a00-font-size );line-height:var( --e-global-typography-b0f5a00-line-height );letter-spacing:var( --e-global-typography-b0f5a00-letter-spacing );word-spacing:var( --e-global-typography-b0f5a00-word-spacing );}}/* Start custom CSS *//* =========================
   DESKTOP ONLY (>=1025px)
   Single Product — Nike layout
   ========================= */
@media (min-width: 1025px){

  /* Vars */
  :root{
    --pg-frame-w: 640px;
    --pg-frame-h: 720px;
    --pg-thumb:   92px;
    --pg-gap:     20px;
    --pg-bg:      #111;
    --pg-radius:  14px;
    --pg-pad:     -30px;
  }

  /* Two-column gallery: [thumbs | main frame] */
  .product-gallery-left .woocommerce-product-gallery{
    display: grid !important;
    grid-template-columns: var(--pg-thumb) var(--pg-frame-w);
    column-gap: var(--pg-gap);
    align-items: start;
    justify-content: center;              /* center whole gallery block */
    position: relative;
    float: none !important;
    width: auto !important;
  }

  /* Thumbnails column (left) */
  .product-gallery-left .flex-control-thumbs{
    grid-column: 1; grid-row: 1;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none;
    align-self: start !important;
    justify-content: flex-start !important;
  }
  .product-gallery-left .flex-control-thumbs li{
    width: var(--pg-thumb) !important;
    height: var(--pg-thumb) !important;
    flex: 0 0 auto;
  }
  .product-gallery-left .flex-control-thumbs img{
    width: 100% !important; height: 100% !important;
    object-fit: contain !important;
    background: var(--pg-bg);
    padding: 4px; border-radius: 8px;
    opacity: 1 !important; filter: none !important;
    box-shadow: none !important; border: 0 !important; outline: 0 !important;
  }
  .woocommerce-product-gallery .flex-control-thumbs li::before{ content:none !important; }

/* Fixed charcoal frame (right) */
.product-gallery-left .woocommerce-product-gallery .flex-viewport {
  grid-column: 2; 
  grid-row: 1;
  width: var(--pg-frame-w) !important;
  height: var(--pg-frame-h) !important;
  background: var(--pg-bg) !important;   /* modern dark grey */
  border-radius: var(--pg-radius);
  padding: var(--pg-pad);
  overflow: hidden !important;
  box-shadow: 0 2px 10px rgba(0,0,0,.15); /* softer shadow */
  line-height: 0;
}

  /* Slides fill the frame; only the active one shows */
  .product-gallery-left .woocommerce-product-gallery__wrapper{
    width: 100% !important; height: 100% !important;
    transform: none !important; display: block !important;
  }
  .product-gallery-left .woocommerce-product-gallery .flex-viewport .slides{
    height: 100% !important; display: block !important;
  }
  .product-gallery-left .woocommerce-product-gallery .flex-viewport .slides > li{
    height: 100% !important; width: 100% !important;
    position: relative !important;
    display: none !important;               /* hidden by default */
    align-items: center !important;
    justify-content: center !important;
  }
  .product-gallery-left .woocommerce-product-gallery__image.flex-active-slide{
    display: flex !important;
  }

  /* Image inside frame = 80% of frame, centered */
  .product-gallery-left .woocommerce-product-gallery__image img{
    max-width: 80% !important;
    max-height: 80% !important;
    width: auto !important; height: auto !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    opacity: 1 !important; visibility: visible !important;
  }

  /* Remove any stray backgrounds/overlays from theme */
  .product-gallery-left .woocommerce-product-gallery,
  .product-gallery-left .woocommerce-product-gallery div.images,
  .product-gallery-left .woocommerce-product-gallery__wrapper,
  .product-gallery-left .woocommerce-product-gallery__image{
    background: transparent !important;
    box-shadow: none !important; border: 0 !important;
  }
  .product-gallery-left .woocommerce-product-gallery:before,
  .product-gallery-left .woocommerce-product-gallery:after,
  .product-gallery-left .woocommerce-product-gallery__wrapper:before,
  .product-gallery-left .woocommerce-product-gallery__wrapper:after{
    content: none !important;
  }

  /* Disable click-to-zoom/trigger if theme shows it */
  .woocommerce-product-gallery__trigger{ display:none !important; }
  .product-gallery-left .woocommerce-product-gallery__image a{
    pointer-events: none !important; cursor: default !important;
  }
}







/* DESKTOP: show only the active slide in the fixed frame */
@media (min-width:1025px){
  /* wrapper must NOT be flex or all slides appear */
  .product-gallery-left .woocommerce-product-gallery__wrapper{
    display:block !important;
    height:100% !important;
  }

  /* hide all slides by default */
  .product-gallery-left .woocommerce-product-gallery__image{
    display:none !important;
    width:100% !important;
    height:100% !important;
    align-items:center !important;
    justify-content:center !important;
  }

  /* show ONLY the active slide, centered */
  .product-gallery-left .woocommerce-product-gallery__image.flex-active-slide{
    display:flex !important;
  }

  /* image sizing inside the frame */
  .product-gallery-left .woocommerce-product-gallery__image img{
    max-width:80% !important;
    max-height:80% !important;
    object-fit:contain !important;
    margin:auto !important;
  }

  /* optional: disable click-through/zoom */
  .product-gallery-left .woocommerce-product-gallery__image a{
    pointer-events:none !important;
  }
}










/* ===== MOBILE (phones) ===== */
@media (max-width: 767px){

  /* Product Title - text color */
  .product-gallery-mobile .detailsTop .product_title {
    color: #000000 !important;    /* pure black */
    opacity: 1 !important;        /* stop Woo from fading */
    font-weight: 700 !important;  /* bold */
  }

  /* Product Price */
  .product-gallery-mobile .detailsTop .price {
    color: #333333 !important;    /* dark grey */
    opacity: 1 !important;
    font-weight: 600 !important;  /* semi-bold */
  }
}



/* ===== MOBILE: Move Price Closer to Title ===== */
@media (max-width: 767px){
  .product-gallery-mobile .detailsTop .product_title,
  .product-gallery-mobile .detailsTop .price{
    display: block;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .product-gallery-mobile .detailsTop .price{
    margin-top: -20px !important; /* small gap under title */
  }
}

/* Main frame adjustment up or down*/
@media (max-width: 767px){
  .woocommerce-product-gallery {
    margin-top: 100px !important;
  }
}

/* TOP block (title + price) aligned with product image */
@media (max-width: 767px){

}

  .product-gallery-mobile .detailsTop .product_title,
  .product-gallery-mobile .detailsTop .price {
    display: block;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  /* BOTTOM block (desc + add to cart + meta) aligned with product image */
  .product-gallery-mobile .detailsBottom {
    max-width: 300px;          /* same as image frame */
    margin: 12px auto 0 auto;  /* centers and adds top spacing */
    padding: 0 5px;            /* optional padding */
    text-align: left !important;
  }
  
   /* BOTTOM block (desc + add to cart + meta) up/down scaling */
  @media (max-width: 767px){
  
}
  .product-gallery-mobile .detailsBottom .product_content,
  .product-gallery-mobile .detailsBottom .cart,
  .product-gallery-mobile .detailsBottom .product_meta {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}










/* === Remove grey panel around the attribute table (safe) === */

/* Table only (no wildcard *) */
.woocommerce div.product form.cart table.variations,
.elementor .woocommerce div.product form.cart table.variations {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  margin: 0 !important; /* tighten spacing */
}

/* Cells (no row striping, no borders) */
.woocommerce div.product form.cart table.variations td,
.woocommerce div.product form.cart table.variations th {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}


/* Pull color block closer to description */
.woocommerce div.product form.cart table.variations {
  margin-top: -20px !important;  /* negative pulls upward */
}



/* DO NOT style children—just the wrapper */
.woo-variation-swatches .variable-items-wrapper {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}
/* (intentionally no .variable-items-wrapper * and no border-color: transparent) */



/* Clean, boxed text swatches */
body.single-product .variations .variable-items-wrapper .variable-item {
  display: inline-block !important;
  background: #fff !important;
  border: 1px solid #d9d9d9 !important;
  border-radius: 8px !important;
  padding: 8px 12px !important;
  margin: 6px 8px 0 0 !important;
  line-height: 1.2 !important;
  min-width: 56px;
  cursor: pointer !important;
}
body.single-product .variations .variable-items-wrapper .variable-item:hover {
  border-color: #999 !important;
}
body.single-product .variations .variable-items-wrapper .variable-item.selected {
  border-color: #111 !important;
  font-weight: 600 !important;
}



/* Add spacing between Color and Size sections */
.woocommerce div.product form.cart .variations tr + tr {
  margin-top: 40px !important;
  display: block !important;
}



/* Spacing between variation rows (Color → Size) */
.woocommerce div.product form.cart .variations tr + tr {
  margin-top: 40px !important; /* desktop/tablet spacing */
}

@media (max-width: 767px) {
  .woocommerce div.product form.cart .variations tr + tr {
    margin-top: 40px !important; /* mobile spacing */
  }
}









/* --- WPC Smart Wishlist → Nike-style "Favorite" and no duplicates --- */

/* Target any WPC wishlist link/button on the product summary */
.single-product .summary a[class*="woosw"]:not(.woosw-link) {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;

  /* look like a simple text link (like Nike) */
  border: 0 !important;
  background: transparent !important;
  padding: 6px 0 !important;
  color: #111 !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;

  /* hide the plugin’s built-in label; we'll inject our own */
  font-size: 0 !important;
}

/* Hide any text/icon wrappers the plugin injects */
.single-product .summary a[class*="woosw"]:not(.woosw-link) .woosw-btn-text,
.single-product .summary a[class*="woosw"]:not(.woosw-link) .woosw-btn-icon,
.single-product .summary a[class*="woosw"]:not(.woosw-link) i,
.single-product .summary a[class*="woosw"]:not(.woosw-link) svg {
  display: none !important;
}

/* Inject “Favorite” label + outline heart */
.single-product .summary a[class*="woosw"]:not(.woosw-link)::before {
  content: "Favorite";
  font-size: 16px;  /* this supplies the visible text size */
  letter-spacing: .2px;
  color: #111;
}
.single-product .summary a[class*="woosw"]:not(.woosw-link)::after {
  content: "\2661";  /* ♡ */
  font-size: 18px;
  line-height: 1;
  transform: translateY(-1px);
  color: #111;
}

/* Hide any duplicate wishlist links that show up after variation changes */
.single-product .summary a[class*="woosw"]:not(.woosw-link):not(:first-of-type) {
  display: none !important;
}

/* Optional: hide “Browse wishlist” / “Added to wishlist” notices if they reappear */
.woosw-message,
.woosw-notice,
.woosw-added,
a.woosw-link { display: none !important; }

/* Mobile: ensure full-width container if theme stacks it oddly */
@media (max-width: 767px) {
  .single-product .summary a[class*="woosw"]:not(.woosw-link) {
    width: 100% !important;
  }
}








/* Hide any extra wishlist link/messages inside the summary (not our button) */
.single-product .summary a.woosw-link,
.single-product .summary .woosw-link,
.single-product .summary .woosw-notice,
.single-product .summary .woosw-message,
.single-product .summary .woosw-added { display: none !important; }

/* If a bare anchor gets added near our button, hide it */
.woosw-btn + a,
.woosw-btn-woosingle + a { display: none !important; }

/* Catch anchors that point to wishlist actions but are NOT our button */
.single-product .summary a[href*="add_to_wishlist"]:not(.woosw-btn):not(.woosw-btn-woosingle),
.single-product .summary a[href*="wishlist"]:not(.woosw-btn):not(.woosw-btn-woosingle) {
  display: none !important;
}



/* Hide any WPC wishlist link/button on the product summary, always */
.single-product .summary .woosw-btn,
.single-product .summary .woosw-link,
.single-product .summary a[href*="woosw"]{
  display: none !important;
}



/* Make chosen variation look obviously active */
.variations .variable-items-wrapper .variable-item.selected,
.variations .value .button-variable-item.selected,
.variations .value .swatch.selected,
.variations .value .selected,
.variable-item.button-variable-item.selected {
  background: #111 !important;
  color: #fff !important;
  border-color: #111 !important;
}

/* Hover state for better feel */
.variations .variable-items-wrapper .variable-item:hover,
.variations .value .button-variable-item:hover {
  border-color: #111 !important;
}








/* ===== SINGLE PRODUCT IMAGE FRAME GRADIENT — DESKTOP ONLY (>=1025px) ===== */
@media (min-width:1025px){
  /* Tweakable knobs */
  :root {
    --single-grad-top: #3a3a3a;  /* gradient start */
    --single-grad-bot: #0f0f10;  /* gradient end */
    --single-frame-pad: 20px;    /* spacing inside the frame */
    --single-frame-h: 700px;     /* height of the frame */
  }

  /* Apply gradient background to main image wrapper (desktop only) */
  .woocommerce div.product div.images .woocommerce-product-gallery__wrapper {
    background: linear-gradient(180deg, var(--single-grad-top) 0%, var(--single-grad-bot) 100%) !important;
    border-radius: 0 !important; /* angular like Nike */
    padding: var(--single-frame-pad) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: var(--single-frame-h) !important;
  }

  /* Main product image sizing inside gradient frame (desktop only) */
  .woocommerce div.product div.images .woocommerce-product-gallery__wrapper img {
    max-width: 90% !important;
    max-height: 90% !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    background: transparent !important;
    box-shadow: none !important;
  }
}


















/* === Nike-style Add to Bag button === */
.single_add_to_cart_button {
  display: block !important;
  width: 100% !important;
  max-width: 520px; /* adjust if needed */
  margin: 16px auto !important;
  padding: 16px 24px !important;

  background-color: #111 !important; /* Nike black */
  color: #fff !important;
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  letter-spacing: 0.3px;

  border: none !important;
  border-radius: 999px !important; /* pill shape */
  cursor: pointer;
  transition: background 0.2s ease;
}

.single_add_to_cart_button:hover {
  background-color: #333 !important;
}

/* === Nike-style Favorite button === */
.nike-fav-btn {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;

  width: 100% !important;
  max-width: 520px;
  margin: 12px auto 0 !important;
  padding: 14px 22px !important;

  border: 1px solid #111 !important;
  border-radius: 999px;
  background: transparent !important;

  font-size: 16px;
  font-weight: 500;
  color: #111;
  text-decoration: none !important;
  cursor: pointer;
}

.nike-fav-btn::after {
  content: "♡"; /* heart */
  font-size: 18px;
  line-height: 1;
  transform: translateY(-1px);
}

.nike-fav-btn:hover {
  background: #f9f9f9;
}

/* Mobile full width */
@media (max-width: 767px) {
  .single_add_to_cart_button,
  .nike-fav-btn {
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}



 /* Hide qty on single product pages (cover common theme .elementor-kit-188s) */
.woocommerce div.product form.cart div.quantity,
.single-product form.cart .quantity,
.elementor-widget-woocommerce-product-add-to-cart form.cart .quantity {
  display: none !important;
}







/* ================================
   ADD-TO-BAG: vertical spacing knobs
   ================================ */

/* Desktop defaults (>=1025px) */
@media (min-width:1025px){
  :root{
    --atc-mt: -15px;   /* move Add-to-Cart UP (+) or DOWN (−) */
    --atc-mb: 14px;   /* space below Add-to-Cart */
    --bottom-mt: 0px; /* (optional) move the whole detailsBottom block */
  }
}

/* Tablet (768–1024px) */
@media (min-width:768px) and (max-width:1024px){
  :root{
    --atc-mt: -15px;
    --atc-mb: 12px;
    --bottom-mt: 0px;
  }
}

/* Mobile (<=767px) */
@media (max-width:767px){
  :root{
    --atc-mt: -18px;
    --atc-mb: 12px;
    --bottom-mt: 420px;
  }
}

/* Apply the knobs to the button (robust .elementor-kit-188s + !important) */
.single-product form.cart .single_add_to_cart_button,
.elementor-widget-woocommerce-product-add-to-cart .single_add_to_cart_button,
.woocommerce div.product form.cart .single_add_to_cart_button {
  margin-top: var(--atc-mt) !important;
  margin-bottom: var(--atc-mb) !important;
}

/* If your theme wraps the button in a flex row with the qty,
   tighten the row so our margins behave predictably */
.single-product form.cart,
.elementor-widget-woocommerce-product-add-to-cart form.cart {
  gap: 0 !important;
}

/* Optional: move the *entire* bottom block (desc + ATC + meta) */
.product-gallery-mobile .detailsBottom,
.detailsBottom {
  margin-top: var(--bottom-mt) !important;  /* use only if you want to nudge the whole section */
}









/* ===========================
   FAVORITE (Nike-style) — clean + responsive
   =========================== */

/* --- knobs (desktop) --- */
:root{
  --fav-maxw: 520px;   /* width limit on desktop */
  --fav-h: 45px;       /* height on desktop */
  --fav-fs: 16px;      /* font size on desktop */
  --fav-mt: -8px;       /* move whole button UP(+)/DOWN(-) */
  --fav-mb: 12px;      /* space below button */
}

/* tablet */
@media (max-width:1024px){
  :root{
    --fav-maxw: 420px;
    --fav-h: 45px;
    --fav-fs: 15px;
    --fav-mt: -10px;
    --fav-mb: 16px;
  }
}

/* mobile */
@media (max-width:767px){
  :root{
    --fav-maxw: 100%;
    --fav-h: 44px;
    --fav-fs: 16px;
    --fav-mt: -10px;
    --fav-mb: 14px;
  }
}

/* target all wishlist variations */
.nike-fav,
.woosw-btn,
.woosw-btn-woosingle,
a[href*="woosw"]{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  width:100% !important;
  max-width:var(--fav-maxw) !important;
  height:var(--fav-h) !important;

  margin: var(--fav-mt) auto var(--fav-mb) auto !important;

  background:#fff !important;
  color:#000 !important;
  font-size:var(--fav-fs) !important;
  font-weight:500 !important;
  text-decoration:none !important;

  border:2px solid #000 !important;     /* clean outline */
  border-radius:999px !important;        /* pill */
  box-shadow:none !important;            /* no shadow border */
  line-height:1 !important;
}

/* center any text/icon wrapper */
.nike-fav span,
.woosw-btn span,
.woosw-btn-woosingle span,
a[href*="woosw"] span{
  display:inline-block !important;
  line-height:1 !important;
  text-align:center !important;
}

/* strip the plugin’s inner “pill” that causes a double outline */
.nike-fav * ,
.woosw-btn * ,
.woosw-btn-woosingle * ,
a[href*="woosw"] * {
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  outline:0 !important;
  padding:0 !important;
  margin:0 !important;
}

/* subtle hover (optional) */
.nike-fav:hover,
.woosw-btn:hover,
.woosw-btn-woosingle:hover,
a[href*="woosw"]:hover{
  opacity:.92 !important;
}







/* =========================================================
   TITLE + PRICE — desktop / tablet knobs that always apply
   (works for native Woo AND Elementor widgets)
   ========================================================= */

/* ---------- Desktop knobs (>=1025px) ---------- */
@media (min-width:1025px){
  :root{
    --sp-head-maxw-d: 520px;   /* width of the text column */
    --sp-title-fs-d:  px;    /* title font-size */
    --sp-price-fs-d:  22px;    /* price font-size */
    --sp-head-mt-d:   -1px;    /* move the whole title+price block up/down */
    --sp-gap-title-price-d: -10px;   /* space: title -> price */
    --sp-gap-price-next-d:  5px;  /* space: price -> next element */
  }

  /* limit and align the summary column */
  .single-product div.product .summary,
  .elementor .single-product div.product .summary{
    max-width: var(--sp-head-maxw-d) !important;
    margin-left: 0 !important;
  }

  /* Title (Woo + Elementor widget) */
  .single-product div.product .summary .product_title,
  .elementor .elementor-widget-woocommerce-product-title .product_title{
    font-size: var(--sp-title-fs-d) !important;
    font-weight: 700 !important;
    line-height: 1.15 !important;
    margin: var(--sp-head-mt-d) 0 var(--sp-gap-title-price-d) 0 !important;
    text-align: left !important;
  }

  /* Price (Woo + Elementor widget) */
  .single-product div.product .summary .price,
  .elementor .elementor-widget-woocommerce-product-price .price{
    font-size: var(--sp-price-fs-d) !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
    margin: 0 0 var(--sp-gap-price-next-d) 0 !important;
    text-align: left !important;
    opacity: 1 !important;
  }
}

/* ---------- Tablet knobs (768–1024px) ---------- */
@media (min-width:768px) and (max-width:1024px){
  :root{
    --sp-head-maxw-t: 480px;
    --sp-title-fs-t:  20px;
    --sp-price-fs-t:  18px;
    --sp-head-mt-t:   -4px;
    --sp-gap-title-price-t: -16px;
    --sp-gap-price-next-t:  10px;
  }

  .single-product div.product .summary,
  .elementor .single-product div.product .summary{
    max-width: var(--sp-head-maxw-t) !important;
    margin-left: 0 !important;
  }

  .single-product div.product .summary .product_title,
  .elementor .elementor-widget-woocommerce-product-title .product_title{
    font-size: var(--sp-title-fs-t) !important;
    margin: var(--sp-head-mt-t) 0 var(--sp-gap-title-price-t) 0 !important;
  }

  .single-product div.product .summary .price,
  .elementor .elementor-widget-woocommerce-product-price .price{
    font-size: var(--sp-price-fs-t) !important;
    margin: 0 0 var(--sp-gap-price-next-t) 0 !important;
  }
}

/* ---------- Safety: normalize alignment regardless of theme ---------- */
.single-product div.product .summary,
.single-product div.product .summary *{
  text-align: left !important;
}








/* ===== MOBILE PRICE/TITLE KNOBS (<=767px) ===== */
@media (max-width:767px){
  :root{
    --sp-title-fs-m: 22px;   /* mobile title size */
    --sp-price-fs-m: 19px;   /* mobile price size */
    --sp-gap-title-price-m: -16px; /* space: title -> price */
    --sp-gap-price-next-m: 10px;  /* space: price -> next element */
  }

  /* Title (Woo + Elementor widget) */
  .single-product div.product .summary .product_title,
  .elementor .elementor-widget-woocommerce-product-title .product_title{
    font-size: var(--sp-title-fs-m) !important;
    margin: 0 0 var(--sp-gap-title-price-m) 0 !important;
  }

  /* Price (Woo + Elementor widget) */
  .single-product div.product .summary .price,
  .elementor .elementor-widget-woocommerce-product-price .price{
    font-size: var(--sp-price-fs-m) !important;
    margin: 0 0 var(--sp-gap-price-next-m) 0 !important;
    line-height: 1.1 !important;
  }

  /* Keep sale/regular wrappers same size */
  .single-product div.product .summary .price *{
    font-size: inherit !important;
    line-height: inherit !important;
  }
}













/* ===== GALLERY + THUMBS MOVE TOGETHER — OVERRIDES ===== */

/* DESKTOP (>=1025px) */
@media (min-width:1025px){
  /* knobs */
  :root{
    --gallery-offset-x-d: 50px;   /* move the WHOLE gallery (thumbs+frame): + right / - left */
    --gallery-col-gap-d: 12px;   /* space BETWEEN thumbs and main frame */
    --details-pad-left-d: 12px;  /* space between gallery and details (summary) */
  }

  /* move the ENTIRE gallery block as one unit */
  .product-gallery-left .woocommerce-product-gallery{
    transform: translateX(var(--gallery-offset-x-d)) !important;
    column-gap: var(--gallery-col-gap-d) !important;   /* thumbs <-> frame gap */
    justify-content: flex-start !important;            /* stop centering */
    margin-right: 0 !important;
  }

  /* tighten details column spacing (gallery <-> text) */
  .single-product .product .summary.entry-summary,
  .detailsCol{
    padding-left: var(--details-pad-left-d) !important;
    margin-left: 0 !important;
  }

  /* safety: no stray margins on wrappers */
  .single-product .product .images,
  .single-product .product .woocommerce-product-gallery,
  .single-product .product .summary.entry-summary{
    margin: 0 !important;
  }
}

/* TABLET (768–1024px) */
@media (min-width:768px) and (max-width:1024px){
  /* knobs */
  :root{
    --gallery-offset-x-t: 0px;   /* move whole gallery block */
    --gallery-col-gap-t: 10px;   /* thumbs <-> frame gap */
    --details-pad-left-t: 10px;  /* gallery <-> details gap */
  }

  /* your tablet wrapper already controls the two columns—keep it tight */
  .sp-wrap{
    gap: var(--gallery-col-gap-t) !important; /* keeps image+text tighter */
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* move the ENTIRE gallery (thumbs+frame) together */
  .product-gallery-tablet .woocommerce-product-gallery{
    transform: translateX(var(--gallery-offset-x-t)) !important;
    margin: 0 !important;
  }

  /* tighten details column spacing */
  .detailsCol,
  .summary.entry-summary{
    padding-left: var(--details-pad-left-t) !important;
    padding-right: 0 !important;
    margin: 0 !important;
  }
}

/* GENERAL: if the parent uses flex gap, neutralize it */
.single-product .product{
  gap: 0 !important;
}







/* ===== GALLERY + THUMBS MOVE TOGETHER — OVERRIDES ===== */

/* DESKTOP (>=1025px) */
@media (min-width:1025px){
  /* knobs */
  :root{
    --gallery-offset-x-d: 75px;   /* move the WHOLE gallery (thumbs+frame): + right / - left */
    --gallery-col-gap-d: 12px;   /* space BETWEEN thumbs and main frame */
    --details-pad-left-d: 12px;  /* space between gallery and details (summary) */
  }

  /* move the ENTIRE gallery block as one unit */
  .product-gallery-left .woocommerce-product-gallery{
    transform: translateX(var(--gallery-offset-x-d)) !important;
    column-gap: var(--gallery-col-gap-d) !important;   /* thumbs <-> frame gap */
    justify-content: flex-start !important;            /* stop centering */
    margin-right: 0 !important;
  }

  /* tighten details column spacing (gallery <-> text) */
  .single-product .product .summary.entry-summary,
  .detailsCol{
    padding-left: var(--details-pad-left-d) !important;
    margin-left: 0 !important;
  }

  /* safety: no stray margins on wrappers */
  .single-product .product .images,
  .single-product .product .woocommerce-product-gallery,
  .single-product .product .summary.entry-summary{
    margin: 0 !important;
  }
}

/* TABLET (768–1024px) */
@media (min-width:768px) and (max-width:1024px){
  /* knobs */
  :root{
    --gallery-offset-x-t: 70px;   /* move whole gallery block */
    --gallery-col-gap-t: 10px;   /* thumbs <-> frame gap */
    --details-pad-left-t: 10px;  /* gallery <-> details gap */
  }

  /* your tablet wrapper already controls the two columns—keep it tight */
  .sp-wrap{
    gap: var(--gallery-col-gap-t) !important; /* keeps image+text tighter */
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* move the ENTIRE gallery (thumbs+frame) together */
  .product-gallery-tablet .woocommerce-product-gallery{
    transform: translateX(var(--gallery-offset-x-t)) !important;
    margin: 0 !important;
  }

  /* tighten details column spacing */
  .detailsCol,
  .summary.entry-summary{
    padding-left: var(--details-pad-left-t) !important;
    padding-right: 0 !important;
    margin: 0 !important;
  }
}

/* GENERAL: if the parent uses flex gap, neutralize it */
.single-product .product{
  gap: 0 !important;
}



























/* ===== NIKE-STYLE ARCHIVE GRID (Angular frame + big images) ===== */

/* Tweakable knobs */
:root{
  --grid-gap: 28px;
  --frame-h-d: 600px;  /* desktop frame height */
  --frame-h-t: 420px;  /* tablet */
  --frame-h-m: 360px;  /* mobile */
  --frame-pad: 16px;
  --frame-grad-top: #3a3a3a; /* gradient start */
  --frame-grad-bot: #0f0f10; /* gradient end */
  --title-fs: 16px;
  --price-fs: 15px;
}

/* 3 across desktop, 2 tablet, 1 mobile */
.woocommerce ul.products,
.elementor-location-archive ul.products{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(550px, 1fr)) !important;
  gap:var(--grid-gap) !important;
  align-items:start !important;
}
@media (max-width:1024px){
  .woocommerce ul.products,
  .elementor-location-archive ul.products{
    grid-template-columns:repeat(2, minmax(260px, 1fr)) !important;
  }
}
@media (max-width:767px){
  .woocommerce ul.products,
  .elementor-location-archive ul.products{
    grid-template-columns:1fr !important;
  }
}

/* Reset each product card */
.woocommerce ul.products li.product{
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  margin:0 !important;
  padding:0 !important;
}

/* -------- Frame (image only) -------- */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:var(--frame-h-d) !important;
  padding:var(--frame-pad) !important;
  background:linear-gradient(180deg,var(--frame-grad-top) 0%, var(--frame-grad-bot) 100%) !important;
  border-radius:0 !important;           /* angular corners like Nike */
  box-shadow:0 10px 24px rgba(0,0,0,.12) !important;
  overflow:hidden !important;
}
@media (max-width:1024px){
  .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
    height:var(--frame-h-t) !important;
  }
}
@media (max-width:767px){
  .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
    height:var(--frame-h-m) !important;
  }
}

/* Big centered image inside the frame */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link img{
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
  margin:0 auto !important;
  display:block !important;
  filter:none !important;
  box-shadow:none !important;
  background:transparent !important;
}

/* Kill any title inside the link so text stays below the frame */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link .woocommerce-loop-product__title{
  display:none !important;
}

/* -------- Text block under the frame -------- */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  display:block !important;
  font-size:var(--title-fs) !important;
  line-height:1.3 !important;
  font-weight:600 !important;
  color:#111 !important;
  margin:10px 0 6px 0 !important;
  text-align:left !important;
}

/* Price under title */
.woocommerce ul.products li.product .price{
  display:block !important;
  font-size:var(--price-fs) !important;
  line-height:1.2 !important;
  color:#111 !important;
  margin:0 0 8px 0 !important;
  text-align:left !important;
  opacity:1 !important;
}
.woocommerce ul.products li.product .price *{
  font-size:inherit !important;
  line-height:inherit !important;
}

/* Optional: “Best Seller” badge (uses Woo's Featured flag) */
.woocommerce ul.products li.product .nike-badge{
  display:inline-block;
  font-size:12px;
  font-weight:600;
  color:#b64747;
  margin:10px 0 2px 0;
}

/* Hide archive buttons / quick view / wishlist on grid */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce ul.products li.product a[class*="quick"],
.woocommerce ul.products li.product a[class*="woosw"],
.woocommerce ul.products li.product .woosw-btn,
.woocommerce ul.products li.product .woosw-link{
  display:none !important;
}

/* Tidy any theme extras */
.woocommerce ul.products li.product .star-rating,
.woocommerce ul.products li.product .woocommerce-product-rating{
  display:none !important;
}








/* Center the archive grid but keep big 3-up cards */
.woocommerce ul.products,
.elementor-location-archive ul.products{
  max-width: 1400px;        /* container width; tweak 1280–1500 */
  margin: 0 auto !important;
  padding: 0 20px;          /* optional page gutter */
  justify-content: center;  /* center the tracks */
}

/* Keep 3 across with generous width on desktop */
@media (min-width:1025px){
  .woocommerce ul.products,
  .elementor-location-archive ul.products{
    /* Large but still fits 3-up on a laptop */
    grid-template-columns: repeat(3, minmax(540px, 1fr)) !important;
  }
}

/* Make the frame fill the grid column width (so it doesn’t shrink) */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  width: 100% !important;   /* <— NEW */
}

/* (Optional) let the image breathe a bit more inside the frame */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link img{
  max-width: 130% !important;   /* was 88% */
  max-height: 120% !important;
}




/* Force product image to fill more of the frame */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link img {
  width: 85% !important;       /* grow/shrink relative to frame width */
  height: auto !important;     /* keep aspect ratio */
  max-width: none !important;  /* remove Woo’s restrictions */
  max-height: none !important; /* remove Woo’s restrictions */
  object-fit: contain !important;
  margin: 0 auto !important;   /* keep centered */
  display: block !important;
}







/* ===========================
   ARCHIVE CARDS – TEXT BELOW
   =========================== */

/* Space under the image frame */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  display:block !important;
  margin-bottom: 10px !important;   /* gap between frame and text */
}

/* If the theme puts title/price INSIDE the image link, hide them there */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link .woocommerce-loop-product__title,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link .price{
  display:none !important;
}

/* Show + style the title BELOW the frame */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  display:block !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  color:#111 !important;
  margin: 0 0 4px 0 !important;
  text-align: left !important;
}

/* Price below the title */
.woocommerce ul.products li.product .price{
  display:block !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  color:#111 !important;
  margin: 0 0 10px 0 !important;
  opacity:1 !important;
  text-align:left !important;
}
.woocommerce ul.products li.product .price *{
  font-size:inherit !important;
  line-height:inherit !important;
}

/* Optional small badge line above title (use your own class if you add one) */
.woocommerce ul.products li.product .nike-badge{
  display:inline-block !important;
  font-size:12px !important;
  font-weight:600 !important;
  color:#b64747 !important;
  margin: 0 0 6px 0 !important;
}

/* ===========================
   HIDE QUICK VIEW (most plugins)
   =========================== */
.woocommerce ul.products li.product a[class*="quick"],
.woocommerce ul.products li.product button[class*="quick"],
.woocommerce ul.products li.product .yith-wcqv-button,
.woocommerce ul.products li.product .woosq-btn,
.woocommerce ul.products li.product .woosq-btn-open,
.woocommerce ul.products li.product .woosq{ 
  display:none !important;
}

/* (optional) also hide wishlist/extra buttons in the grid */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart,
.woocommerce ul.products li.product a[class*="woosw"],
.woocommerce ul.products li.product .woosw-btn,
.woocommerce ul.products li.product .woosw-link{
  display:none !important;
}







:root {
  --img-align: center; /* options: center, top, bottom */
}

/* Make sure product image is centered inside the frame */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
  display: flex !important;
  align-items: var(--img-align) !important;   /* vertical alignment */
  justify-content: center !important;        /* horizontal alignment */
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link img {
  margin: auto !important;  /* ensures full centering */
  display: block !important;
}
















 
/* =====================================================
   NIKE-STYLE ARCHIVE (grid, frame, image, text + knobs)
   ===================================================== */

/* ------------ KNOBS (edit these) ------------ */
:root{
  /* container + grid */
  --container-max: 1400px;         /* page width for the grid area */
  --grid-gap: 36px;                 /* space between cards/columns */
  --col-min: 540px;                 /* min column width so 3-up fits */

  /* frame (image area) */
  --frame-h-d: 560px;               /* desktop frame height */
  --frame-h-t: 440px;               /* tablet frame height */
  --frame-h-m: 360px;               /* mobile frame height */
  --frame-pad: 18px;                /* inner padding around image */
  --grad-top: #3a3a3a;              /* gradient start */
  --grad-bot: #0f0f10;              /* gradient end */
  --img-max: 92%;                   /* image fill inside frame */

  /* text sizes */
  --title-size-d: 19px;
  --title-size-t: 19pxpx;
  --title-size-m: 19px;

  --price-size-d: 19px;
  --price-size-t: 19px;
  --price-size-m: 19px;

  /* gaps (vertical) */
  --gap-frame-title-d: -5px;        /* frame → title (desktop) */
  --gap-frame-title-t: -5px;
  --gap-frame-title-m: -8px;

  --gap-title-price-d: -6px;         /* title → price */
  --gap-title-price-t: -8px;
  --gap-title-price-m: -8px;

  --row-gap-d: 100px;                /* space between product rows */
  --row-gap-t: 100px;
  --row-gap-m: 75px;
}

/* -------- scope to Woo/Elementor archive grids -------- */
.woocommerce ul.products,
.elementor-location-archive ul.products{
  max-width: var(--container-max) !important;  /* keep it wide like Nike */
  margin: 0 auto !important;
  padding: 0 20px !important;                  /* small edge gutter */
  display: grid !important;
  grid-template-columns: repeat(3, minmax(var(--col-min), 1fr)) !important;
  column-gap: var(--grid-gap) !important;
  row-gap: var(--row-gap-d) !important;
  align-items: start !important;
}

@media (max-width:1024px){
  .woocommerce ul.products,
  .elementor-location-archive ul.products{
    grid-template-columns: repeat(2, minmax(260px,1fr)) !important;
    row-gap: var(--row-gap-t) !important;
  }
}
@media (max-width:767px){
  .woocommerce ul.products,
  .elementor-location-archive ul.products{
    grid-template-columns: 1fr !important;
    row-gap: var(--row-gap-m) !important;
  }
}

/* -------- reset each product card -------- */
.woocommerce ul.products li.product{
  background: transparent !important;
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* -------- FRAME (image only, angular + gradient) -------- */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: var(--frame-h-d) !important;
  padding: var(--frame-pad) !important;
  background: linear-gradient(180deg, var(--grad-top) 0%, var(--grad-bot) 100%) !important;
  border-radius: 0 !important;                /* angular corners like Nike */
  box-shadow: 0 10px 24px rgba(0,0,0,.12) !important;
  overflow: hidden !important;
}
@media (max-width:1024px){
  .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
    height: var(--frame-h-t) !important;
  }
}
@media (max-width:767px){
  .woocommerce ul.products li.product a.woocommerce-LoopProduct-link{
    height: var(--frame-h-m) !important;
  }
}

/* -------- Big centered image inside the frame -------- */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link img{
  width: auto !important;
  height: auto !important;
  max-width: var(--img-max) !important;
  max-height: var(--img-max) !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  display: block !important;
  filter: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Hide any title injected inside the link so text stays below */
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link .woocommerce-loop-product__title,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link .price{
  display: none !important;
}

/* -------- TEXT under frame -------- */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  display: block !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  text-align: left !important;
  margin-top: var(--gap-frame-title-d) !important;
  margin-bottom: var(--gap-title-price-d) !important;
  font-size: var(--title-size-d) !important;
  color: #1a1a1a !important;
}
@media (max-width:1024px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size: var(--title-size-t) !important;
    margin-top: var(--gap-frame-title-t) !important;
    margin-bottom: var(--gap-title-price-t) !important;
  }
}
@media (max-width:767px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size: var(--title-size-m) !important;
    margin-top: var(--gap-frame-title-m) !important;
    margin-bottom: var(--gap-title-price-m) !important;
  }
}

/* price */
.woocommerce ul.products li.product .price{
  display: block !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
  text-align: left !important;
  margin: 0 0 2px 0 !important;               /* small bottom breathing room */
  font-size: var(--price-size-d) !important;
  color: #1a1a1a !important;
  opacity: 1 !important;
}
.woocommerce ul.products li.product .price *{
  font-size: inherit !important;
  line-height: inherit !important;
}
@media (max-width:1024px){
  .woocommerce ul.products li.product .price{
    font-size: var(--price-size-t) !important;
  }
}
@media (max-width:767px){
  .woocommerce ul.products li.product .price{
    font-size: var(--price-size-m) !important;
  }
}

/* -------- Remove Quick View / wishlist / add buttons in grid -------- */
.woocommerce ul.products li.product a[class*="quick"],
.woocommerce ul.products li.product .yith-wcqv-button,
.woocommerce ul.products li.product .button.yith-wcqv-button,
.woocommerce ul.products li.product .woosw-btn,
.woocommerce ul.products li.product .woosw-link,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{
  display: none !important;
}

/* -------- Tidy extras (ratings, badges, etc.) -------- */
.woocommerce ul.products li.product .star-rating,
.woocommerce ul.products li.product .woocommerce-product-rating{
  display: none !important;
}





/* --- Title font --- */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family: inherit !important;   /* or swap "inherit" with your chosen font, e.g., "Helvetica, Arial, sans-serif" */
  font-weight: 600 !important;
  line-height: 1.3 !important;
  text-align: left !important;
  margin: 12px 0 6px 0 !important;   /* top = frame gap, bottom = gap before price */
  font-size: 18px !important;        /* desktop default */
}
@media (max-width:1024px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size: 18px !important;      /* tablet */
  }
}
@media (max-width:767px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-size: 18px !important;      /* mobile */
  }
}



/* --- Price font --- */
.woocommerce ul.products li.product .price{
  font-family: inherit !important;   /* match title font */
  font-weight: 500 !important;
  line-height: 1.25 !important;
  text-align: left !important;
  margin: 0 0 10px 0 !important;     /* bottom breathing room */
  font-size: 16px !important;        /* desktop */
  color: #111 !important;
  opacity: 1 !important;
}
.woocommerce ul.products li.product .price *{
  font-size: inherit !important;
  line-height: inherit !important;
}
@media (max-width:1024px){
  .woocommerce ul.products li.product .price{
    font-size: 16px !important;      /* tablet */
  }
}
@media (max-width:767px){
  .woocommerce ul.products li.product .price{
    font-size: 18px !important;      /* mobile */
  }
}







/* ============================
   FIX LETTER SPACING (Archive)
   ============================ */
:root{
  --title-letter-d: 0px;   /* desktop */
  --title-letter-t: -0.5px;   /* tablet */
  --title-letter-m: -0.5px;   /* mobile */

  --price-letter-d: 0px;
  --price-letter-t: -0.5px;
  --price-letter-m: -0.5px;
}

/* --- Title --- */
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  letter-spacing: var(--title-letter-d) !important;
}
@media (max-width:1024px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    letter-spacing: var(--title-letter-t) !important;
  }
}
@media (max-width:767px){
  .woocommerce ul.products li.product .woocommerce-loop-product__title{
    letter-spacing: var(--title-letter-m) !important;
  }
}

/* --- Price --- */
.woocommerce ul.products li.product .price{
  letter-spacing: var(--price-letter-d) !important;
}
@media (max-width:1024px){
  .woocommerce ul.products li.product .price{
    letter-spacing: var(--price-letter-t) !important;
  }
}
@media (max-width:767px){
  .woocommerce ul.products li.product .price{
    letter-spacing: var(--price-letter-m) !important;
  }
}


  
  /* ===== Global header overlay + breathing room (LIVE) ===== */

/* knobs */
:root{
  --hdr-h-d: 88px;      /* desktop header height */
  --hdr-h-t: 74px;      /* tablet */
  --hdr-h-m: 64px;      /* mobile */
  --content-top-gap-d: 36px; /* extra space below header */
  --content-top-gap-t: 36px;
  --content-top-gap-m: 36px;
  --hdr-bg: rgba(255,255,255,.78); /* header background */
  --hdr-blur: 12px;                /* header blur */
}

/* Make the Elementor Product Header fixed on the FRONTEND (not editor) */
body:not(.elementor-editor-active) .elementor-location-header{
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 9999;
  background: var(--hdr-bg);
  backdrop-filter: blur(var(--hdr-blur));
  -webkit-backdrop-filter: blur(var(--hdr-blur));
}

/* Offset for WP admin bar */
body:not(.elementor-editor-active).admin-bar .elementor-location-header{ top: 32px; }

/* ===== Add breathing room for shop/archive/single =====
   We hit several likely wrappers so it works across themes. */
body.post-type-archive-product .site-main,
body.tax-product_cat .site-main,
body.woocommerce-shop .site-main,
body.single-product .site-main,
body.post-type-archive-product #content,
body.tax-product_cat #content,
body.woocommerce-shop #content,
body.single-product #content,
body.post-type-archive-product .elementor-location-archive,
body.tax-product_cat .elementor-location-archive,
body.single-product .elementor-location-single,
.elementor-location-header + .elementor-location-archive,
.elementor-location-header + .elementor-location-single{
  padding-top: calc(var(--hdr-h-d) + var(--content-top-gap-d)) !important;
}

@media (max-width: 1024px){
  body.post-type-archive-product .site-main,
  body.tax-product_cat .site-main,
  body.woocommerce-shop .site-main,
  body.single-product .site-main,
  body.post-type-archive-product #content,
  body.tax-product_cat #content,
  body.woocommerce-shop #content,
  body.single-product #content,
  body.post-type-archive-product .elementor-location-archive,
  body.tax-product_cat .elementor-location-archive,
  body.single-product .elementor-location-single,
  .elementor-location-header + .elementor-location-archive,
  .elementor-location-header + .elementor-location-single{
    padding-top: calc(var(--hdr-h-t) + var(--content-top-gap-t)) !important;
  }
}

@media (max-width: 767px){
  body.post-type-archive-product .site-main,
  body.tax-product_cat .site-main,
  body.woocommerce-shop .site-main,
  body.single-product .site-main,
  body.post-type-archive-product #content,
  body.tax-product_cat #content,
  body.woocommerce-shop #content,
  body.single-product #content,
  body.post-type-archive-product .elementor-location-archive,
  body.tax-product_cat .elementor-location-archive,
  body.single-product .elementor-location-single,
  .elementor-location-header + .elementor-location-archive,
  .elementor-location-header + .elementor-location-single{
    padding-top: calc(var(--hdr-h-m) + var(--content-top-gap-m)) !important;
  }
}
  
  
  
  






/* Keep "Sort by" label + dropdown in one line */
.wb-ordering {
  display: flex;             /* put label + select side by side */
  align-items: center;       /* vertically align them */
  gap: 6px;                  /* small space between text and dropdown */
  white-space: nowrap;       /* prevent wrapping */
}

.wb-ordering .wb-label {
  font-size: 12px;           /* smaller "Sort by" text */
  text-transform: uppercase; /* optional: make it neat */
  color: #000;               /* black text */
}

.wb-ordering select {
  font-size: 14px;
  padding: 2px 6px;
  min-width: 120px;          /* shorten the dropdown width */
}










/* ---- LOCK THE ARCHIVE FRAME DEAD-CENTER (all devices) ---- */
.tax-product_cat .nike-archive-head,
.tax-product_cat .woocommerce-notices-wrapper,
.tax-product_cat .elementor-widget-wc-archive-products,
.tax-product_cat ul.products {
  box-sizing: border-box;
  max-width: 1200px;                 /* match your page frame */
  margin-left: auto !important;      /* center the whole block */
  margin-right: auto !important;
  padding-left: 16px;                /* equal side padding */
  padding-right: 16px;
}

/* Keep titles/prices centered inside each card */
.tax-product_cat ul.products li.product { text-align: center !important; }
.tax-product_cat ul.products li.product img { display:block; margin:0 auto !important; }

/* ---- DESKTOP layout (3 columns) ---- */
@media (min-width:1025px){
  .tax-product_cat ul.products{
    display:grid !important;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
  }
  .tax-product_cat ul.products li.product{ margin:0 !important; float:none !important; }
}

/* ---- TABLET layout (2 columns) ---- */
@media (min-width:768px) and (max-width:1024px){
  .tax-product_cat ul.products{
    display:grid !important;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
  }
  .tax-product_cat ul.products li.product{ margin:0 !important; float:none !important; }
}

/* ---- MOBILE layout (1 column, centered) ---- */
@media (max-width:767px){
  .tax-product_cat ul.products{
    display:grid !important;
    grid-template-columns:1fr;
    justify-items:center;            /* centers each card */
    gap:28px;
  }
  .tax-product_cat ul.products li.product{
    width:100% !important;
    max-width:520px;                 /* adjust if you want narrower/wider */
    margin:0 auto !important;
    float:none !important;
  }
}

/* Keep your custom Sort By on one line and hide WooCommerce duplicate */
.tax-product_cat .woocommerce-ordering{ display:none !important; }
.wb-ordering{ display:flex !important; align-items:center !important; gap:8px; white-space:nowrap !important; }
.wb-ordering .wb-label{ line-height:1; }

/* Optional: nudge the category/count up a bit for breathing room */
.nike-archive-left .nike-title{ margin-top:-6px; }     /* tweak -6px to taste */












/* ========== CATEGORY TITLE (e.g., "Accessories (4)") ========== */
.woocommerce-products-header__title.page-title,
.nike-archive-left .nike-title {
  font-size: clamp(18px, 1.5vw, 22px);  /* smaller than now */
  line-height: 1.15;
  font-weight: 700;
  color: #000;
  margin: 6px 0 14px;
}

/* keep breadcrumb + title tidy */
.nike-archive-left { display: flex; flex-direction: column; gap: 6px; }

/* ========== SORT BAR (compact, single line) ========== */
.nike-archive-right,
.nike-archive-right .woocommerce-ordering {
  display: flex;
  align-items: center;
  gap: 8px;                 /* space between "Sort by" and the select */
  white-space: nowrap;      /* force single line */
}

/* the tiny "SORT BY" label (if you have it) */
.nike-archive-right .wb-label {
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #000;
}

/* compact Featured dropdown */
.nike-archive-right .woocommerce-ordering select.orderby,
.nike-archive-right .wb-sortby select {
  width: 140px !important;      /* <- adjust here if you want tighter/looser */
  min-width: 120px !important;
  max-width: 160px !important;
  padding: 6px 8px;
  font-size: 14px;
  line-height: 1.2;
  box-sizing: border-box;
}

/* ---- OPTIONAL: if you still see a SECOND "Default sorting" lower on the page,
   uncomment the next two rules (remove the leading "/*" and trailing "*/") ---- */
/*
.products .woocommerce-ordering { display: none; }
.nike-archive-right .woocommerce-ordering { display: flex; }
*/

/* ========== TABLET ========== */
@media (max-width: 1024px) {
  .woocommerce-products-header__title.page-title,
  .nike-archive-left .nike-title { font-size: clamp(17px, 2vw, 20px); }
  .nike-archive-right .woocommerce-ordering select.orderby,
  .nike-archive-right .wb-sortby select { width: 136px !important; }
}

/* ========== MOBILE ========== */
@media (max-width: 767px) {
  .woocommerce-products-header__title.page-title,
  .nike-archive-left .nike-title { font-size: 18px; }
  .nike-archive-right { justify-content: flex-start; } /* keep it neat on small screens */
  .nike-archive-right .woocommerce-ordering select.orderby,
  .nike-archive-right .wb-sortby select { width: 132px !important; }
}













/* ==========================================================
   ARCHIVE HEADER (Clean + Labeled)
   Structure expected:
   .nike-archive-head
     ├─ .nike-archive-left    ← Category title / count
     └─ .nike-archive-right   ← Sort label + dropdown
   ========================================================== */


/* =========================
   DESKTOP DEFAULTS (≥1025)
   ========================= */
:root{
  /* ---- Frame / spacing ---- */
  --frame-max: 1200px;       /* total content width cap */
  --frame-pad-x: 24px;       /* left/right page padding */
  --bar-space-top: -25px;     /* gap from site header to this bar */
  --bar-space-bottom: 18px;  /* gap from this bar to product grid */

  /* ---- CATEGORY (left) knobs ---- */
  --cat-shift-x: -180px;        /* +right / -left */
  --cat-shift-y: -20px;        /* +down  / -up  */
  --cat-title-fs: 24px;      /* “Adults (4)” text size */
  --cat-count-fs: 10px;      /* optional separate count size */

  /* ---- SORT (right) knobs ---- */
  --sort-shift-x: 350px;       /* +right / -left */
  --sort-shift-y: 25px;       /* +down  / -up  */
  --sort-label-fs: 16px;     /* “Sort by” label size */
  --sort-select-fs: 15px;    /* dropdown text size */
  --sort-select-w: 140px;    /* dropdown width (120–160px is common) */
}

/* ===============
   TABLET (≤1024)
   =============== */
@media (max-width:1024px){
  :root{
    --frame-max: 1000px;
    --frame-pad-x: 20px;
    --bar-space-top: -20px;
    --bar-space-bottom: 16px;

    --cat-shift-x: 30px;  --cat-shift-y: -10px;
    --sort-shift-x: 20px; --sort-shift-y: 30px;

    --cat-title-fs: 22px;
    --cat-count-fs: 12px;

    --sort-label-fs: 11px;
    --sort-select-fs: 14px;
    --sort-select-w: 136px;
  }
}

/* ===============
   MOBILE (≤767)
   =============== */
@media (max-width:767px){
  :root{
    --frame-max: 620px;   /* acts as a cap; layout will still be full width */
    --frame-pad-x: 16px;
    --bar-space-top: -5px;
    --bar-space-bottom: 14px;

    --cat-shift-x: 20px;   --cat-shift-y: -20px;
    --sort-shift-x: -25px;  --sort-shift-y: 70px; /* drop a bit under title */

    --cat-title-fs: 20px;
    --cat-count-fs: 10px;

    --sort-label-fs: 11px;
    --sort-select-fs: 14px;
    --sort-select-w: 132px;
  }
}


/* =========================
   LAYOUT + STYLES (shared)
   ========================= */

/* Header bar container */
.nike-archive-head{
  max-width: var(--frame-max);
  margin: var(--bar-space-top) auto var(--bar-space-bottom);
  padding: 0 var(--frame-pad-x);
  display: flex;
  align-items: flex-end;
  justify-content: space-between; /* left title / right sort */
  gap: 16px;
  flex-wrap: wrap;                /* lets blocks stack on narrow widths */
}

/* ---------- CATEGORY (left) ---------- */
.nike-archive-left{
  transform: translate(var(--cat-shift-x), var(--cat-shift-y));
  color: #000;
}

/* Woo/Elementor page title usually sits here */
.nike-archive-left .nike-title,
.woocommerce-products-header__title.page-title{
  font-size: var(--cat-title-fs);
  line-height: 1.2;
  font-weight: 700;
  color: #000;
  margin: 0;
}

/* Optional separate count span (e.g., <span class="nike-count">(4)</span>) */
.nike-archive-left .nike-count{
  font-size: var(--cat-count-fs);
  line-height: 1.1;
  color: #000;
  margin-left: 6px;
}

/* ---------- SORT (right) ---------- */
.nike-archive-right{
  transform: translate(var(--sort-shift-x), var(--sort-shift-y));
  display: flex; align-items: center; gap: 8px;
  white-space: nowrap;
}

/* Works with EITHER your custom .wb-sortby OR Woo's .woocommerce-ordering */
.nike-archive-right .wb-sortby,
.nike-archive-right .woocommerce-ordering{
  display: flex; align-items: center; gap: 8px;
  white-space: nowrap;
}

/* Sort label text (for custom markup: <span class="wb-label">Sort by</span>) */
.nike-archive-right .wb-sortby .wb-label{
  font-size: var(--sort-label-fs);
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #000;
  line-height: 1;
  margin: 0;
}

/* Dropdown (supports both custom select and Woo select.orderby) */
.nike-archive-right .wb-sortby select,
.nike-archive-right .woocommerce-ordering select.orderby{
  width: var(--sort-select-w) !important;
  min-width: 120px !important;
  max-width: 180px !important;
  font-size: var(--sort-select-fs);
  line-height: 1.2;
  display: inline-block !important;
  padding: 6px 8px;
  box-sizing: border-box;
  flex: 0 0 auto !important;
  white-space: nowrap;
  appearance: none; /* tidier on iOS/Safari */
}

/* Make the product grid align to the same frame */
.elementor-widget-wc-archive-products .elementor-widget-container{
  max-width: var(--frame-max);
  margin: 0 auto;
  padding: 0 var(--frame-pad-x);
}





/* Gap between last product row and the footer on product archives */
:root { --archive-footer-gap: 72px; }           /* tweak to taste */

body.woocommerce.archive .site-footer,
body.post-type-archive-product .site-footer,
body.tax-product_cat .site-footer,
body.woocommerce.archive .elementor-location-footer {
  margin-top: var(--archive-footer-gap) !important;
}

/* If your theme ignores margin-top on the footer, use padding instead: */
body.woocommerce.archive .site-footer,
body.woocommerce.archive .elementor-location-footer {
  padding-top: var(--archive-footer-gap) !important;
}








/* =========================================================
   SINGLE PRODUCT — TABLET & MOBILE (<=1024px)
   Gradient frame UNDER the gallery + centered image
   (does not change FlexSlider/wrapper mechanics)
   ========================================================= */
@media (max-width:1024px){

  /* 1) Host the gradient on the viewport as a background layer */
  .single-product .woocommerce-product-gallery .flex-viewport{
    position: relative !important;      /* anchor the ::before */
    overflow: hidden !important;
    border-radius: 14px !important;
  }
  .single-product .woocommerce-product-gallery .flex-viewport::before{
    content: "";
    position: absolute;
    inset: 0;                           /* fill the frame */
    border-radius: 14px;
    background: linear-gradient(180deg,#3a3a3a 0%, #0f0f10 100%);
    z-index: 0;                         /* stay behind slides */
  }

  /* 2) Put the slides ABOVE the background layer */
  .single-product .woocommerce-product-gallery__wrapper,
  .single-product .woocommerce-product-gallery__image{
    position: relative !important;
    z-index: 1 !important;
    background: transparent !important;
  }

  /* 3) Center the image without fighting the slider */
  .single-product .woocommerce-product-gallery__image{
    display: grid !important;
    place-items: center !important;
    margin: 0 !important;
    float: none !important;             /* avoid odd offsets */
  }
  .single-product .woocommerce-product-gallery__image img{
    width: 86% !important;              /* tablet size; tweak 84–90 */
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto !important;
    display: block !important;
  }

  /* 4) Keep thumbnails behaving */
  .single-product .flex-control-thumbs img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    background: transparent !important;
  }
}

/* Phones: nudge image a touch larger if desired */
@media (max-width:767px){
  .single-product .woocommerce-product-gallery__image img{
    width: 90% !important;
  }
}








/* ================================
   MOBILE — adjust gallery block spacing
   ================================ */
@media (max-width:767px){
  :root{
    --gallery-mobile-mt: -10px;   /* ⬆️ adjust this knob: + pushes DOWN, − pulls UP */
    --gallery-mobile-mb: 12px;   /* optional: space below gallery */
  }

  /* Move the whole gallery block (frame + thumbnails) */
  .single-product .woocommerce-product-gallery{
    margin-top: var(--gallery-mobile-mt) !important;
    margin-bottom: var(--gallery-mobile-mb) !important;
  }
}







/* ---------------------------------
   MOBILE FIX: show only active slide
   (so tapping a thumbnail swaps image)
   --------------------------------- */
@media (max-width: 767px){

  /* Keep wrapper fixed in the square; no sliding translation */
  .single-product .woocommerce-product-gallery__wrapper{
    transform: none !important;
    display: block !important;   /* let FlexSlider toggle classes */
  }

  /* Hide all slides by default */
  .single-product .woocommerce-product-gallery__image{
    display: none !important;
    height: 100% !important;
    margin: 0 !important;
    float: none !important;
    /* center content for the one we show */
    display: none !important;    /* (re-assert) */
  }

  /* Show ONLY the active slide (FlexSlider adds this class) */
  .single-product .woocommerce-product-gallery__image.flex-active-slide{
    display: grid !important;    /* grid lets us center the image */
    place-items: center !important;
  }

  /* Ensure image itself is visible */
  .single-product .woocommerce-product-gallery__image img{
    opacity: 1 !important;
    visibility: visible !important;
  }
}





/* ================================
   TABLET FIX (768–1024px only)
   Center image + 80% sizing
   ================================ */
@media (min-width:768px) and (max-width:1024px){

  /* Make sure only the active slide shows */
  .single-product .woocommerce-product-gallery__image{
    display: none !important;
    height: 100% !important;
    margin: 0 !important;
    float: none !important;
  }
  .single-product .woocommerce-product-gallery__image.flex-active-slide{
    display: grid !important;
    place-items: center !important;  /* perfect centering */
  }

  /* Image inside the frame */
  .single-product .woocommerce-product-gallery__image img{
    width: 80% !important;      /* bigger, fills frame */
    height: auto !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto !important;
    display: block !important;
  }
}



/* Add breathing room below the header on single product pages */
.single-product .product {
  margin-top: 30px !important;   /* adjust: try 30–60px */
}

/* If you only want to push down the title, use this instead */
.single-product .product_title {
  margin-top: 30px !important;
}




/* === HAMBURGER ONLY === */
#main-hamburger .elementor-menu-toggle,
#main-hamburger .elementor-menu-toggle.elementor-button {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#main-hamburger .elementor-menu-toggle .eicon-menu-bar,
#main-hamburger .elementor-menu-toggle .eicon-close,
#main-hamburger .elementor-menu-toggle i,
#main-hamburger .elementor-menu-toggle svg {
  color: #3880C9 !important;  /* your blue */
  fill: #3880C9 !important;
}

/* === CART ICON ONLY === */
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle,
.elementor-widget-woocommerce-menu-cart .elementor-button {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.elementor-widget-woocommerce-menu-cart .elementor-button-icon {
  color: #3880C9 !important;  /* cart blue */
  fill: #3880C9 !important;
}




/* Force the mobile menu to overlay header */
.elementor-widget-wp-widget-nav_menu .menu,
.elementor-widget-wp-widget-nav_menu .elementor-menu-toggle + ul {
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #fff; /* or any background you want */
  z-index: 9999;
  display: none; /* hidden by default */
}

/* Show menu when toggled */
.elementor-widget-wp-widget-nav_menu .elementor-menu-toggle.active + ul {
  display: block !important;
}

/* Ensure header stays in place */
header, .elementor-location-header {
  position: relative;
  z-index: 1000;
}



.elementor-menu-cart__toggle:hover {
  cursor: pointer;
  color: #1e73be; /* change to your brand blue */
  transform: scale(1.1);
}















/***** CHECKOUT — spacing & layout *****/

/* 1) Stripe express buttons area (Apple Pay / GPay / Link) */
#wc-stripe-payment-request-wrapper,
.wc-stripe-payment-request-wrapper {
  margin-bottom: 12px !important;
}
#wc-stripe-payment-request-button-separator,
.wc-stripe-payment-request-separator {
  margin: 10px 0 !important;
}

/* 2) General field spacing (billing / shipping / students) */
.woocommerce form .form-row {
  margin-bottom: 10px;
}
.woocommerce-billing-fields,
.woocommerce-shipping-fields,
#wc-school-students-wrapper {
  margin-top: 16px;
}

/* 3) Tighten gap between "Your order" heading and the table */
h3#order_review_heading {
  margin-bottom: 10px;
}
.woocommerce-checkout-review-order-table {
  margin-top: 0;
}

/* 4) Two-column layout: Order (left) + Payment (right) */
#order_review {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

/* Make sure the table stays left and the payment box right */
#order_review .woocommerce-checkout-review-order-table {
  grid-column: 1;
}
#order_review #payment {
  grid-column: 2;
  align-self: start;
  background: #fff;
  border: 1px solid #e6e6e6;
  border-radius: 6px;
  padding: 16px;
}

/* Add a visible title above the payment section */
#order_review #payment::before {
  content: "Payment Details";
  display: block;
  font-weight: 600;
  font-size: 18px;
  margin-bottom: 12px;
}

/* 5) Give the whole form a little space above the footer */
.woocommerce-checkout form.checkout {
  margin-bottom: 60px;
}

/* 6) Mobile: stack back to one column */
@media (max-width: 782px) {
  #order_review {
    display: block;
  }
  #order_review #payment {
    margin-top: 16px;
  }
}












/* === Checkout Page Custom Styles === */

/* Place Order button - black background with white text */
.woocommerce #payment #place_order,
.woocommerce-page #payment #place_order,
.woocommerce-checkout #place_order {
    background-color: #000 !important;
    color: #fff !important;
    border: none !important;
    text-transform: uppercase;
    font-weight: 600;
    padding: 14px 24px;
    border-radius: 4px;
}

/* Place Order button hover effect */
.woocommerce #payment #place_order:hover {
    background-color: #333 !important;
    color: #fff !important;
}

/* Stripe card payment box - black background + white text */
.woocommerce-checkout #payment .wc-stripe-elements-field,
.woocommerce-checkout #payment .wc-stripe-card {
    background-color: #000 !important;
    color: #fff !important;
    border-radius: 6px;
    border: 1px solid #444 !important;
    padding: 12px;
}

/* Make Stripe card input text white */
.woocommerce-checkout #payment .wc-stripe-elements-field input,
.woocommerce-checkout #payment .wc-stripe-elements-field span,
.woocommerce-checkout #payment .wc-stripe-elements-field label {
    color: #fff !important;
}

/* Placeholder text in Stripe card fields */
.woocommerce-checkout #payment .wc-stripe-elements-field::placeholder {
    color: #aaa !important;
}





/* 1) Safety net: never let the cart page overflow horizontally */
.woocommerce-cart,
.woocommerce-cart html,
.woocommerce-cart body {
  overflow-x: hidden !important;
}

/* 2) Block editor wide/full wrappers – force them to fit the screen */
.woocommerce-cart .alignwide,
.woocommerce-cart .alignfull,
.woocommerce-cart .wp-block-group,
.woocommerce-cart .is-layout-constrained {
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* 3) Woo Cart Block layout: make both columns and inner wrappers respect 100% */
.wc-block-cart,
.wc-block-cart .wc-block-components-sidebar-layout,
.wc-block-cart .wc-block-components-main,
.wc-block-cart .wc-block-components-sidebar {
  max-width: 100% !important;
  overflow-x: hidden !important;
}

/* 4) Tables and cells – no fixed/min widths that push the page wider */
.woocommerce-cart table,
.woocommerce-cart .shop_table,
.woocommerce-cart .cart-collaterals {
  width: 100% !important;
  table-layout: fixed !important;
}

/* 5) Images – never exceed their cell width */
.woocommerce-cart img {
  max-width: 100% !important;
  height: auto !important;
}

/* 6) (Optional) If a Group block set to “Wide width” is causing overflow */
.woocommerce-cart .wp-block-group[style*="width"],
.woocommerce-cart .wp-block-group[style*="max-width"] {
  width: 100% !important;
  max-width: 100% !important;
}












/* WooCommerce Login/Register Popup Styling */
.woocommerce form.login, 
.woocommerce form.register {
  max-width: 400px;
  margin: 0 auto;
  padding: 20px;
  border-radius: 8px;
  background: #f9f9f9;
}

.woocommerce form .form-row input.input-text {
  width: 100%;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 4px;
  margin-bottom: 15px;
}

.woocommerce button.button {
  background-color: #1e73be;  /* Baker blue */
  color: #fff !important;
  font-weight: 600;
  padding: 10px 20px;
  border-radius: 4px;
  width: 100%;
}

.woocommerce button.button:hover {
  background-color: #155a8c;  /* darker hover blue */
}






/* ===== MY ACCOUNT PAGE: TWO-COLUMN LAYOUT ===== */
.woocommerce-account .u-columns {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 60px;                  /* space between Login & Register boxes */
  flex-wrap: nowrap;          /* keep side by side */
  margin-top: 120px;          /* breathing room from top */
}

/* Make each box the same width */
.woocommerce-account .u-columns .col-1,
.woocommerce-account .u-columns .col-2 {
  flex: 1 1 400px;
  max-width: 420px;
}

/* ===== BOX STYLING ===== */
.woocommerce form.login,
.woocommerce form.register {
  background: #f2f2f2;        /* grey box */
  color: #000;
  border: 1px solid #e6e6e6;
  padding: 28px;
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
}

/* ===== HEADINGS ===== */
.woocommerce-account h2 {
  margin-bottom: 12px;
  font-weight: 700;
  color: #000;
  text-align: center;        /* center headings */
}
/* If you prefer left aligned: change to text-align: left; */

/* ===== FORM FIELDS ===== */
.woocommerce form .form-row label {
  color: #000;
}
.woocommerce form .form-row input.input-text {
  background: #fff;
  color: #000;
  border: 1px solid #000;
  padding: 10px 12px;
  border-radius: 4px;
}
.woocommerce form .form-row input::placeholder {
  color: #6b6b6b;
}

/* ===== LINKS & MESSAGES ===== */
.woocommerce-LostPassword a,
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  color: #000 !important;
  text-decoration: underline;
}

/* ===== BUTTONS ===== */
.woocommerce button.button {
  background: #fff !important;
  color: #000 !important;
  border: 2px solid #000 !important;
  border-radius: 4px;
  font-weight: 700;
  padding: 10px 18px;
  width: 100%;
  transition: transform .08s ease, background .2s ease;
}
.woocommerce button.button:hover {
  background: #efefef !important;
  transform: translateY(-1px);
}

/* ===== MOBILE: STACK ONLY ON SMALL SCREENS ===== */
@media (max-width: 768px) {
  .woocommerce-account .u-columns {
    flex-wrap: wrap;
    gap: 28px;
  }
}




/* ===== MY ACCOUNT DASHBOARD SPACING & WRAPPER ===== */
.woocommerce-account .woocommerce {
  margin-top: 140px;   /* pushes the whole account area down more */
}

/* wrap dashboard content in a grey box */
.woocommerce-account .woocommerce-MyAccount-content {
  background: #f2f2f2;        /* grey background */
  border: 1px solid #e6e6e6;
  padding: 30px;
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  color: #000;                /* black text */
}

/* navigation menu on the left */
.woocommerce-MyAccount-navigation ul {
  background: #f2f2f2;
  border: 1px solid #e6e6e6;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0 6px 18px rgba(0,0,0,.06);
  list-style: none;
}

.woocommerce-MyAccount-navigation ul li {
  margin-bottom: 10px;
}

.woocommerce-MyAccount-navigation ul li a {
  color: #000;                 /* black links */
  font-weight: 600;
  text-decoration: none;
}

.woocommerce-MyAccount-navigation ul li.is-active a {
  text-decoration: underline;  /* highlight active page */
}

/* notices/messages inside dashboard */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-error,
.woocommerce-account .woocommerce-info {
  background: #fff;
  border: 1px solid #ddd;
  color: #000;
  padding: 12px 16px;
  border-radius: 6px;
  margin-bottom: 20px;
}











/* ===== WE ARE BAKER — MY ACCOUNT (CLEAN RESET) ===== */

/* spacing from header */
body.woocommerce-account .woocommerce { margin-top: 140px !important; }

/* left navigation */
body.woocommerce-account .woocommerce-MyAccount-navigation ul{
  list-style:none !important;
  margin:0 0 24px !important;
  padding:16px !important;
  background:#f4f4f4 !important;
  border:1px solid #dcdcdc !important;
  border-radius:8px !important;
  box-shadow:0 4px 12px rgba(0,0,0,.06) !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li{ margin:6px 0 !important; }
body.woocommerce-account .woocommerce-MyAccount-navigation a{
  color:#000 !important; text-decoration:none !important; font-weight:600 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{ text-decoration:underline !important; }

/* main content wrapper (ALL TABS) */
body.woocommerce-account .woocommerce-MyAccount-content{
  background:#f7f7f7 !important;
  border:1px solid #e5e5e5 !important;
  border-radius:8px !important;
  padding:24px !important;
  color:#000 !important;
  box-shadow:0 4px 12px rgba(0,0,0,.06) !important;
}

/* general text + links */
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-content p,
body.woocommerce-account .woocommerce-MyAccount-content li,
body.woocommerce-account .woocommerce-MyAccount-content td,
body.woocommerce-account .woocommerce-MyAccount-content th{ color:#000 !important; }
body.woocommerce-account .woocommerce-MyAccount-content a{
  color:#000 !important; text-decoration:underline !important; box-shadow:none !important;
}

/* buttons inside My Account */
body.woocommerce-account .woocommerce-MyAccount-content .button,
body.woocommerce-account .woocommerce-MyAccount-content a.button{
  background:#fff !important; color:#000 !important; border:2px solid #000 !important;
  border-radius:4px !important; font-weight:700 !important; padding:8px 14px !important;
}
body.woocommerce-account .woocommerce-MyAccount-content .button:hover,
body.woocommerce-account .woocommerce-MyAccount-content a.button:hover{
  background:#efefef !important;
}

/* notices (success/info/error) */
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-error{
  background:#fff !important; border:1px solid #ddd !important; color:#000 !important;
  border-radius:6px !important; padding:12px 16px !important; box-shadow:none !important;
}
body.woocommerce-account .woocommerce-message::before,
body.woocommerce-account .woocommerce-info::before,
body.woocommerce-account .woocommerce-error::before{ display:none !important; }

/* ===== ADDRESSES TAB: two gray cards ===== */
body.woocommerce-account .woocommerce-Addresses .u-columns{
  display:flex !important; flex-wrap:wrap !important; gap:32px !important;
  justify-content:center !important; align-items:flex-start !important;
}
body.woocommerce-account .woocommerce-Address{
  flex:0 0 380px !important; max-width:380px !important; min-height:240px !important;
  background:#f2f2f2 !important; border:1px solid #ccc !important; border-radius:8px !important;
  padding:22px !important; color:#000 !important; text-align:left !important;
  box-shadow:0 4px 12px rgba(0,0,0,.06) !important;
}
body.woocommerce-account .woocommerce-Address .woocommerce-Address-title{
  display:flex !important; justify-content:space-between !important; align-items:baseline !important;
  margin:0 0 10px !important;
}
body.woocommerce-account .woocommerce-Address .woocommerce-Address-title h3{
  margin:0 !important; font-size:24px !important; font-weight:800 !important;
  color:#000 !important; text-align:left !important; white-space:nowrap !important;
}
body.woocommerce-account .woocommerce-Address .woocommerce-Address-title a.edit{
  color:#000 !important; text-decoration:underline !important; font-size:14px !important;
  margin-left:12px !important;
}
body.woocommerce-account .woocommerce-Address address{
  margin:0 !important; line-height:1.45 !important; color:#000 !important; font-style:normal !important;
}

/* ===== WISHLIST / EMPTY STATES ===== */
body.woocommerce-account .woocommerce-MyAccount-content .wishlist-empty,
body.woocommerce-account .woocommerce-MyAccount-content .cart-empty,
body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info{
  text-align:center !important;
}

/* tables (orders, downloads) */
body.woocommerce-account .woocommerce-MyAccount-content table{
  border-collapse:separate !important; border-spacing:0 !important; width:100% !important;
}
body.woocommerce-account .woocommerce-MyAccount-content table th,
body.woocommerce-account .woocommerce-MyAccount-content table td{
  border-bottom:1px solid #e6e6e6 !important; padding:10px 12px !important;
}

/* mobile */
@media (max-width:900px){
  body.woocommerce-account .woocommerce-Address{ flex:1 1 100% !important; max-width:100% !important; min-height:auto !important; }
  body.woocommerce-account .woocommerce-Address .woocommerce-Address-title h3{ font-size:20px !important; white-space:normal !important; }
}





/* Make the WPC button look like your pill-style Favorite */
.single-product .woosw-btn{
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:100%;
  height: var(--favorite-btn-height, 56px);
  border:2px solid #000;
  border-radius:999px;
  background:#fff;
  margin-top:14px;
  cursor:pointer;
  font-size:0 !important;   /* hide default label */
}

/* Replace label with “Favorite ♡” */
.single-product .woosw-btn::after{
  content:"Favorite ♡";
  font-size:16px;
  font-weight:600;
  color:#000;
}

/* Hover */
.single-product .woosw-btn:hover{ background:#000; }
.single-product .woosw-btn:hover::after{ color:#fff; }





/* Change popup title "Wishlist" to "Favorite" */
.woosw-popup .woosw-popup-title {
  font-size: 16px;
  font-weight: bold;
  color: #000;
}
.woosw-popup .woosw-popup-title:before {
  content: "Favorite (";
}
.woosw-popup .woosw-popup-title {
  visibility: hidden;
}
.woosw-popup .woosw-popup-title:before {
  content: "Favorite (1)";
  visibility: visible;
}

/* Make all popup text black */
.woosw-popup,
.woosw-popup * {
  color: #000 !important;
}

/* Style the "Add to Bag" button */
.woosw-popup .button {
  background-color: #000 !important;
  color: #fff !important;
  border: none !important;
  padding: 8px 14px;
  border-radius: 4px;
  font-weight: 600;
}
.woosw-popup .button:hover {
  background-color: #333 !important;
  color: #fff !important;
}



/* remove leftover space where the badge used to be */
.woocommerce ul.products li.product .wvs-archive-variation-wrapper{
  margin:0 !important; padding:0 !important; height:auto !important;
}



/* MOBILE ONLY: give the gallery breathing room */
@media (max-width: 767px){
  .single-product .woocommerce-product-gallery,
  .single-product div.product div.images,
  .single-product .elementor-widget-woocommerce-product-images {
    margin-top: 10px !important;   /* pushes gallery down from title/price */
    margin-bottom: 10px !important; /* adds space before description text */
  }
}




/* Mobile only: wrap product thumbnails into rows */
@media (max-width: 767px) {
  .woocommerce div.product div.images .flex-control-thumbs {
    display: flex;
    flex-wrap: wrap;              /* allow wrapping */
    justify-content: center;      /* center inside frame */
    gap: 6px;                     /* space between thumbnails */
    max-width: 100%;              /* don't exceed frame */
  }

  .woocommerce div.product div.images .flex-control-thumbs li {
    flex: 0 0 22%;                /* ~4 thumbnails per row */
    max-width: 22%;               /* ensure they fit nicely */
    list-style: none;             /* clean up bullets if any */
  }

  .woocommerce div.product div.images .flex-control-thumbs img {
    width: 100% !important;       /* scale to container */
    height: auto !important;
  }
}



/* ===============================
   SINGLE PRODUCT PAGE
   =============================== */
body.single-product .woocommerce-product-details__short-description {
  display: block !important;    /* ensure it shows */
  position: static !important;  /* no overlay issues */
  margin: 10px 0 !important;
  padding: 0 !important;
  color: inherit !important;    /* normal text color */
  font-size: 15px;              /* adjust size if needed */
  line-height: 1.4;
}

/* Optional: style your custom mobile description wrapper */
body.single-product .mob-desc {
  margin-top: 10px !important;
  padding: 0 !important;
}

/* ===============================
   ARCHIVE / CATEGORY PAGES
   =============================== */
body.archive .woocommerce-product-details__short-description,
body.tax-product_cat .woocommerce-product-details__short-description,
body.post-type-archive-product .woocommerce-product-details__short-description {
  display: none !important;   /* hide on shop/category loops */
}



/* Mobile bullets look & spacing */
.em-meta.meta-bullets{
  margin: 12px 0 8px;
  padding-left: 1.2em;     /* keeps the dot indent tidy */
}
.em-meta li{
  margin: 6px 0;
  list-style: disc;
}
.em-meta strong{ font-weight: 700; }









/* ========== Product gallery: mobile fix ========== */
@media (max-width: 767px){

  /* Make the main viewport a flex “frame” and center whatever image is inside */
  .single-product .woocommerce-product-gallery .flex-viewport{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    /* keep your dark frame; remove if you don't want it */
    border-radius: 18px;        /* optional, matches your look */
    overflow: hidden;           /* ensures no child overlaps */
    position: relative;         /* creates a z-index context */
    z-index: 1;
    min-height: 420px;          /* tweak this height if needed */
  }

  /* Ensure the image scales but stays centered in the frame */
  .single-product .woocommerce-product-gallery .flex-viewport a,
  .single-product .woocommerce-product-gallery .flex-viewport img{
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
  }

  /* Thumbnails: keep them above any overlays and clickable */
  .single-product .woocommerce-product-gallery .flex-control-nav{
    position: relative !important;
    z-index: 5 !important;
    pointer-events: auto !important;
  }

  /* In case any pseudo overlay was blocking clicks, nuke it */
  .single-product .woocommerce-product-gallery .flex-viewport::before,
  .single-product .woocommerce-product-gallery .flex-viewport::after{
    content: none !important;
    display: none !important;
  }

  /* Safety: the gallery wrapper should not cover thumbnails */
  .single-product .woocommerce-product-gallery{
    overflow: visible !important;
  }
}
/* ========== end ========== *//* End custom CSS */