.elementor-506 .elementor-element.elementor-element-4b94b6d4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E5E7EB;--border-color:#E5E7EB;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:16px;--padding-bottom:16px;--padding-left:0px;--padding-right:0px;}.elementor-506 .elementor-element.elementor-element-4b94b6d4:not(.elementor-motion-effects-element-type-background), .elementor-506 .elementor-element.elementor-element-4b94b6d4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9FAFB;}.elementor-506 .elementor-element.elementor-element-6d7f63e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:48px 48px;--row-gap:48px;--column-gap:48px;--flex-wrap:wrap;--padding-top:48px;--padding-bottom:48px;--padding-left:24px;--padding-right:24px;}.elementor-506 .elementor-element.elementor-element-4db21e4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:64px 64px;--row-gap:64px;--column-gap:64px;--flex-wrap:nowrap;}.elementor-506 .elementor-element.elementor-element-4977319{--display:flex;border-style:none;--border-style:none;--border-radius:12px 12px 12px 12px;}.elementor-506 .elementor-element.elementor-element-4977319:not(.elementor-motion-effects-element-type-background), .elementor-506 .elementor-element.elementor-element-4977319 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9FAFB00;}.elementor-506 .elementor-element.elementor-element-4977319.e-con{--flex-grow:1;--flex-shrink:1;}.elementor-506 .elementor-element.elementor-element-74f3b02 > .elementor-widget-container{border-style:none;}.elementor-506 .elementor-element.elementor-element-74f3b02{--singleproduct-image-column:1;--singleproduct-image-spacing:0px;--singleproduct-thumb-spacing:0px;}.elementor-506 .elementor-element.elementor-element-74f3b02 .flex-control-thumbs li img{border-style:none;}.elementor-506 .elementor-element.elementor-element-1a58cc3{--display:flex;}.elementor-506 .elementor-element.elementor-element-1a58cc3.e-con{--flex-grow:0;--flex-shrink:1;}.elementor-widget-woocommerce-product-title .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-506 .elementor-element.elementor-element-c6ead84 .elementor-heading-title{font-size:36px;font-weight:700;color:#545454;}.elementor-506 .elementor-element.elementor-element-cdff837{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 20px) 0px;}.elementor-506 .elementor-element.elementor-element-a35d301{--display:flex;}.elementor-506 .elementor-element.elementor-element-e77bd34 .cart button, .elementor-506 .elementor-element.elementor-element-e77bd34 .cart .button{transition:all 0.2s;}.elementor-506 .elementor-element.elementor-element-e77bd34 .quantity .qty{transition:all 0.2s;}.elementor-506 .elementor-element.elementor-element-c268c18{--display:flex;}.elementor-506 .elementor-element.elementor-element-575ecf9{--display:flex;}.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-506 .elementor-element.elementor-element-2415c66 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:40px;font-weight:900;color:#545454;}.elementor-widget-woocommerce-product-content{color:var( --e-global-color-text );}.elementor-506 .elementor-element.elementor-element-2a67e49{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Montserrat", Sans-serif;}.elementor-506 .elementor-element.elementor-element-c90003a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:20px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-506 .elementor-element.elementor-element-c90003a:not(.elementor-motion-effects-element-type-background), .elementor-506 .elementor-element.elementor-element-c90003a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9FAFB;}.elementor-506 .elementor-element.elementor-element-c37fd4f{--display:flex;}.elementor-506 .elementor-element.elementor-element-25f8dbd{text-align:center;}.elementor-506 .elementor-element.elementor-element-25f8dbd .elementor-heading-title{font-size:36px;font-weight:700;color:#545454;}.elementor-widget-text-editor{color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-506 .elementor-element.elementor-element-e493f5f{margin:020px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-size:16px;color:#545454;}.elementor-506 .elementor-element.elementor-element-153a0f8{--display:flex;}.elementor-506 .elementor-element.elementor-element-7612b14{--display:flex;}.elementor-506 .elementor-element.elementor-element-7bcc2c9{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:wrap;--align-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-506 .elementor-element.elementor-element-7bcc2c9.e-con{--align-self:center;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-506 .elementor-element.elementor-element-5aeb6eb{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-506 .elementor-element.elementor-element-5aeb6eb.elementor-element{--align-self:center;}.elementor-506 .elementor-element.elementor-element-5aeb6eb .elementor-icon-wrapper{text-align:center;}.elementor-506 .elementor-element.elementor-element-5aeb6eb.elementor-view-stacked .elementor-icon{background-color:#48CAED;}.elementor-506 .elementor-element.elementor-element-5aeb6eb.elementor-view-framed .elementor-icon, .elementor-506 .elementor-element.elementor-element-5aeb6eb.elementor-view-default .elementor-icon{color:#48CAED;border-color:#48CAED;}.elementor-506 .elementor-element.elementor-element-5aeb6eb.elementor-view-framed .elementor-icon, .elementor-506 .elementor-element.elementor-element-5aeb6eb.elementor-view-default .elementor-icon svg{fill:#48CAED;}.elementor-506 .elementor-element.elementor-element-5aeb6eb .elementor-icon{font-size:35px;}.elementor-506 .elementor-element.elementor-element-5aeb6eb .elementor-icon svg{height:35px;}.elementor-506 .elementor-element.elementor-element-c5dbace{padding:0px 0px 20px 0px;}.elementor-506 .elementor-element.elementor-element-c5dbace .elementor-heading-title{font-size:20px;font-weight:700;color:#545454;}.elementor-506 .elementor-element.elementor-element-914fddf{font-size:14px;color:#545454;}.elementor-506 .elementor-element.elementor-element-4ce0d5a{--display:flex;}.elementor-506 .elementor-element.elementor-element-54beafa{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:wrap;--align-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-506 .elementor-element.elementor-element-54beafa.e-con{--align-self:center;}.elementor-506 .elementor-element.elementor-element-d906c53{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-506 .elementor-element.elementor-element-d906c53.elementor-element{--align-self:center;}.elementor-506 .elementor-element.elementor-element-d906c53 .elementor-icon-wrapper{text-align:center;}.elementor-506 .elementor-element.elementor-element-d906c53.elementor-view-stacked .elementor-icon{background-color:#48CAED;}.elementor-506 .elementor-element.elementor-element-d906c53.elementor-view-framed .elementor-icon, .elementor-506 .elementor-element.elementor-element-d906c53.elementor-view-default .elementor-icon{color:#48CAED;border-color:#48CAED;}.elementor-506 .elementor-element.elementor-element-d906c53.elementor-view-framed .elementor-icon, .elementor-506 .elementor-element.elementor-element-d906c53.elementor-view-default .elementor-icon svg{fill:#48CAED;}.elementor-506 .elementor-element.elementor-element-d906c53 .elementor-icon{font-size:35px;}.elementor-506 .elementor-element.elementor-element-d906c53 .elementor-icon svg{height:35px;}.elementor-506 .elementor-element.elementor-element-544d9ec{padding:0px 0px 20px 0px;}.elementor-506 .elementor-element.elementor-element-544d9ec .elementor-heading-title{font-size:20px;font-weight:700;color:#545454;}.elementor-506 .elementor-element.elementor-element-6555e04{font-size:14px;color:#545454;}.elementor-506 .elementor-element.elementor-element-d52dea1{--display:flex;}.elementor-506 .elementor-element.elementor-element-ca2dd40{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:wrap;--align-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-506 .elementor-element.elementor-element-ca2dd40.e-con{--align-self:center;}.elementor-506 .elementor-element.elementor-element-69306da{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-506 .elementor-element.elementor-element-69306da.elementor-element{--align-self:center;}.elementor-506 .elementor-element.elementor-element-69306da .elementor-icon-wrapper{text-align:center;}.elementor-506 .elementor-element.elementor-element-69306da.elementor-view-stacked .elementor-icon{background-color:#FF9D00;}.elementor-506 .elementor-element.elementor-element-69306da.elementor-view-framed .elementor-icon, .elementor-506 .elementor-element.elementor-element-69306da.elementor-view-default .elementor-icon{color:#FF9D00;border-color:#FF9D00;}.elementor-506 .elementor-element.elementor-element-69306da.elementor-view-framed .elementor-icon, .elementor-506 .elementor-element.elementor-element-69306da.elementor-view-default .elementor-icon svg{fill:#FF9D00;}.elementor-506 .elementor-element.elementor-element-69306da .elementor-icon{font-size:35px;}.elementor-506 .elementor-element.elementor-element-69306da .elementor-icon svg{height:35px;}.elementor-506 .elementor-element.elementor-element-a5b5670{padding:0px 0px 20px 0px;}.elementor-506 .elementor-element.elementor-element-a5b5670 .elementor-heading-title{font-size:20px;font-weight:700;color:#545454;}.elementor-506 .elementor-element.elementor-element-6c055ed{font-size:14px;color:#545454;}.elementor-506 .elementor-element.elementor-element-650387b{--display:flex;}.elementor-506 .elementor-element.elementor-element-e75b829{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--flex-wrap:wrap;--align-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-506 .elementor-element.elementor-element-e75b829.e-con{--align-self:center;}.elementor-506 .elementor-element.elementor-element-63344c5{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-506 .elementor-element.elementor-element-63344c5.elementor-element{--align-self:center;}.elementor-506 .elementor-element.elementor-element-63344c5 .elementor-icon-wrapper{text-align:center;}.elementor-506 .elementor-element.elementor-element-63344c5.elementor-view-stacked .elementor-icon{background-color:#F73C5C;}.elementor-506 .elementor-element.elementor-element-63344c5.elementor-view-framed .elementor-icon, .elementor-506 .elementor-element.elementor-element-63344c5.elementor-view-default .elementor-icon{color:#F73C5C;border-color:#F73C5C;}.elementor-506 .elementor-element.elementor-element-63344c5.elementor-view-framed .elementor-icon, .elementor-506 .elementor-element.elementor-element-63344c5.elementor-view-default .elementor-icon svg{fill:#F73C5C;}.elementor-506 .elementor-element.elementor-element-63344c5 .elementor-icon{font-size:35px;}.elementor-506 .elementor-element.elementor-element-63344c5 .elementor-icon svg{height:35px;}.elementor-506 .elementor-element.elementor-element-4cb75ce{padding:0px 0px 20px 0px;}.elementor-506 .elementor-element.elementor-element-4cb75ce .elementor-heading-title{font-size:20px;font-weight:700;color:#545454;}.elementor-506 .elementor-element.elementor-element-bf0deda{font-size:14px;color:#545454;}@media(min-width:768px){.elementor-506 .elementor-element.elementor-element-6d7f63e{--content-width:1268px;}.elementor-506 .elementor-element.elementor-element-4977319{--width:50%;}.elementor-506 .elementor-element.elementor-element-1a58cc3{--width:50%;}.elementor-506 .elementor-element.elementor-element-575ecf9{--content-width:1200px;}.elementor-506 .elementor-element.elementor-element-c37fd4f{--content-width:1200px;}}@media(max-width:1599px){.elementor-506 .elementor-element.elementor-element-4b94b6d4{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:100px;--padding-right:100px;}}@media(max-width:1279px){.elementor-506 .elementor-element.elementor-element-4b94b6d4{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:60px;--padding-right:60px;}}@media(max-width:1024px){.elementor-506 .elementor-element.elementor-element-4b94b6d4{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:40px;--padding-right:40px;}}@media(max-width:991px){.elementor-506 .elementor-element.elementor-element-4b94b6d4{--margin-top:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-506 .elementor-element.elementor-element-4b94b6d4{--margin-top:30px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:15px;--padding-bottom:15px;--padding-left:025px;--padding-right:25px;}.elementor-506 .elementor-element.elementor-element-6d7f63e{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-506 .elementor-element.elementor-element-4db21e4{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-506 .elementor-element.elementor-element-4977319{--width:100%;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--flex-wrap:wrap;--align-content:space-between;}.elementor-506 .elementor-element.elementor-element-74f3b02{--singleproduct-image-column:1;--singleproduct-image-spacing:0px;}.elementor-506 .elementor-element.elementor-element-1a58cc3{--width:100%;}}/* Start custom CSS *//* =========================
   Subzz PDP (Kitify + Woo)
   ========================= */

/* 1) Layout cleanup of variation "table" */
.subzz-pdp form.variations_form table.variations,
.subzz-pdp form.variations_form table.variations tbody,
.subzz-pdp form.variations_form table.variations tr,
.subzz-pdp form.variations_form table.variations th,
.subzz-pdp form.variations_form table.variations td{
  display:block !important;
  width:100% !important;
}

.subzz-pdp form.variations_form table.variations tr{
  margin: 0 0 16px !important;
  padding: 0 !important;
}

.subzz-pdp form.variations_form table.variations th.label{
  padding: 0 0 8px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  color: rgba(84,84,84,.7) !important;
}

.subzz-pdp form.variations_form table.variations td.value{
  padding: 0 !important;
}

/* 2) Hide selects (you already add the class, but we force it) */
.subzz-pdp form.variations_form select.bv-hidden-select{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* 3) Button group base */
.subzz-pdp .bv-var-group{
  display:grid !important;
  gap: 10px !important;
  margin: 0 !important;
}

/* per-attribute grid columns (based on your IDs) */
.subzz-pdp select#subscription + .bv-var-group{ grid-template-columns: repeat(3, 1fr) !important; }
.subzz-pdp select#hand + .bv-var-group{ grid-template-columns: repeat(2, 1fr) !important; }
.subzz-pdp select#flex + .bv-var-group{ grid-template-columns: repeat(3, 1fr) !important; }
.subzz-pdp select#set-make-up + .bv-var-group{ grid-template-columns: repeat(1, 1fr) !important; }

/* 4) Button style */
.subzz-pdp .bv-var-btn{
  appearance:none !important;
  border-radius: 10px !important;
  border: 2px solid #D1D5DB !important;
  background: #fff !important;
  padding: 12px 12px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #545454 !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
  transition: all .2s ease !important;
  width: 100% !important;
  text-align: center !important;
}

.subzz-pdp .bv-var-btn:hover{
  border-color: #9CA3AF !important;
}

/* active selection (your JS toggles is-active) */
.subzz-pdp .bv-var-btn.is-active{
  border-color: #2A8BEA !important;
  background: rgba(42,139,234,.06) !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.10) !important;
}

/* disabled option */
.subzz-pdp .bv-var-btn.is-disabled{
  opacity: .35 !important;
  cursor: not-allowed !important;
}

/* 5) Reset link hide (optional) */
.subzz-pdp .reset_variations{
  display:none !important;
}

/* 6) Subscribe button styling */
.subzz-pdp .single_add_to_cart_button.button{
  width: 100% !important;
  background: #2A8BEA !important;
  color: #fff !important;
  border-radius: 10px !important;
  padding: 18px 18px !important;
  font-weight: 800 !important;
  font-size: 18px !important;
  border: none !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.15) !important;
  transition: all .2s ease !important;
}

.subzz-pdp .single_add_to_cart_button.button:hover{
  background: #48CAED !important;
  box-shadow: 0 14px 30px rgba(0,0,0,.18) !important;
}

/* 7) Price styling (works for variable price block when shown) */
.subzz-pdp .woocommerce-variation-price .price,
.subzz-pdp .price{
  display:flex !important;
  align-items: baseline !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

.subzz-pdp .price .woocommerce-Price-amount{
  font-size: 40px !important;
  font-weight: 900 !important;
  color: #2A8BEA !important;
}

.subzz-pdp .price .price-suffix{
  font-size: 16px !important;
  color: rgba(84,84,84,.7) !important;
  font-weight: 600 !important;
}

/* 8) Optional: hide quantity if you don’t want it */
.subzz-pdp .quantity{
  display:none !important;
}

.bv-bc{display:flex;gap:8px;flex-wrap:wrap;font-size:14px;color:rgba(84,84,84,.7)}
.bv-bc a{color:rgba(84,84,84,.7);text-decoration:none}
.bv-bc a:hover{color:#2A8BEA}

.bv-badge{
  display:inline-flex;align-items:center;
  padding:8px 16px;border-radius:999px;
  font-size:14px;font-weight:800;
  background:rgba(255,157,0,.10);
  color:#FF9D00;border:2px solid rgba(255,157,0,.30);
}

.bv-hidden-select{position:absolute!important;left:-9999px!important}

.bv-var-group{
  display:grid;
  gap:12px;
  margin-bottom:16px;
}

.bv-var-btn{
  padding:14px;
  border-radius:10px;
  border:2px solid #d1d5db;
  background:#fff;
  font-weight:800;
  color:#545454;
  transition:.2s;
  text-align:center;
}
.bv-var-btn:hover{border-color:#9ca3af}
.bv-var-btn.is-active{
  border-color:#2A8BEA;
  background:rgba(42,139,234,.06);
  box-shadow:0 6px 16px rgba(0,0,0,.10);
}
.bv-var-btn.is-disabled{opacity:.35;cursor:not-allowed}

.single-product .price,
.elementor-widget-woocommerce-product-price .price{
  display:flex;
  align-items:baseline;
  gap:10px;
  flex-wrap:wrap;
}
.single-product .price .woocommerce-Price-amount{
  font-size:40px;
  font-weight:900;
  color:#2A8BEA;
}

/* ===== Subzz PDP layout constraint + 2-col desktop ===== */

/* Constrain the main product section width */
.elementor-506 .elementor-element.elementor-element-6d7f63e > .e-con-inner{
  --kitify-section-width: 1268px !important;
  max-width: 1268px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* Force 2 columns on desktop */
@media (min-width: 1025px){
  .elementor-506 .elementor-element.elementor-element-6d7f63e > .e-con-inner{
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 48px !important;
  }

  /* Left column (images) */
  .elementor-506 .elementor-element.elementor-element-4db21e4{
    flex: 1 1 0% !important;
    min-width: 0 !important;
  }

  /* Right column (content) */
  .elementor-506 .elementor-element.elementor-element-1a58cc3{
    flex: 0 0 520px !important;
    max-width: 520px !important;
    min-width: 0 !important;
  }
}

/* Mobile padding sanity */
@media (max-width: 1024px){
  .elementor-506 .elementor-element.elementor-element-6d7f63e > .e-con-inner{
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* ===== Product Detail (PD) ===== */
.pd-wrap { width: 100%; margin: 0 auto; }

.pd-grid{
  display:flex;
  gap:64px;
  align-items:flex-start;
}
@media (max-width:1024px){
  .pd-grid{ flex-direction:column; }
  .pd-left,.pd-right{ width:100% !important; }
}

.pd-left,.pd-right{ width:50%; }

/* Badge */
.pd-badge{
  display:inline-flex;
  align-items:center;
  padding:8px 16px;
  border-radius:999px;
  font-size:13px;
  font-weight:800;
  border:2px solid transparent;
}
.pd-badge-new{
  color:#FF9D00;
  background:rgba(255,157,0,.10);
  border-color:rgba(255,157,0,.30);
}

/* Card */
.pd-card{
  background:#f9fafb;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:24px;
  margin-bottom:32px;
}
.pd-card-title{
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#545454;
  margin:0 0 16px;
}

/* Button grids */
.pd-btn-grid{
  display:grid;
  gap:12px;
  margin-bottom:18px;
}
.pd-cols-2{ grid-template-columns:repeat(2,1fr); }
.pd-cols-3{ grid-template-columns:repeat(3,1fr); }

.pd-chip .elementor-button,
.pd-option .elementor-button{
  width:100%;
  border-radius:12px;
  border:2px solid #d1d5db;
  background:#fff;
  color:#545454;
  font-weight:800;
  transition:all .2s ease;
}
.pd-chip .elementor-button{ padding:16px 12px; }
.pd-option .elementor-button{ padding:10px 10px; font-weight:700; }

.pd-chip .elementor-button:hover,
.pd-option .elementor-button:hover{ border-color:#9ca3af; }

.pd-chip.is-active .elementor-button,
.pd-option.is-active .elementor-button{
  border-color:#2A8BEA;
  background:rgba(42,139,234,.05);
  box-shadow:0 10px 20px rgba(42,139,234,.12);
  color:#2A8BEA;
}

/* Price line */
.pd-price{
  display:flex;
  align-items:baseline;
  gap:10px;
  margin:8px 0 10px;
}
.pd-price-amount{
  font-size:40px;
  font-weight:900;
  color:#2A8BEA;
  line-height:1;
}
.pd-price-unit{
  font-size:18px;
  color:rgba(84,84,84,.7);
}

/* Option labels */
.pd-label{
  margin:0 0 8px;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:rgba(84,84,84,.7);
}

/* Tooltip */
.pd-tooltip{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-top:6px;
}
.pd-tooltip-label{ font-size:13px; color:rgba(84,84,84,.7); }
.pd-tooltip-icon{
  width:18px;height:18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(84,84,84,.25);
  font-size:12px;
  color:rgba(84,84,84,.55);
  cursor:help;
  transition:all .2s ease;
}
.pd-tooltip:hover .pd-tooltip-icon{ color:#2A8BEA; border-color:rgba(42,139,234,.6); }

.pd-tip-box{
  position:absolute;
  left:0;
  top:100%;
  margin-top:10px;
  width:320px;
  background:#545454;
  color:#fff;
  font-size:12px;
  line-height:1.4;
  border-radius:12px;
  padding:14px;
  box-shadow:0 18px 40px rgba(0,0,0,.25);
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:all .2s ease;
  z-index:50;
}
.pd-tooltip:hover .pd-tip-box{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}
.pd-tip-box:before{
  content:"";
  position:absolute;
  top:-5px;
  left:22px;
  width:10px;height:10px;
  background:#545454;
  transform:rotate(45deg);
}

/* Right-aligned tooltip (benefits) */
.pd-tooltip-right{ position:relative; }
.pd-tooltip-right .pd-tip-box{
  left:auto;
  right:0;
  top:auto;
  bottom:100%;
  margin-top:0;
  margin-bottom:10px;
  width:260px;
}
.pd-tooltip-right .pd-tip-box:before{
  top:auto;
  bottom:-5px;
  left:auto;
  right:18px;
}

/* CTA */
.pd-cta .elementor-button{
  width:100%;
  background:#2A8BEA;
  border-radius:12px;
  padding:18px 18px;
  font-weight:900;
  font-size:18px;
  box-shadow:0 16px 30px rgba(0,0,0,.14);
}
.pd-cta .elementor-button:hover{
  background:#48CAED;
  box-shadow:0 22px 45px rgba(0,0,0,.18);
}

/* Benefits card */
.pd-benefits{
  background:linear-gradient(135deg, rgba(42,139,234,.05), rgba(72,202,237,.05));
  border:1px solid rgba(42,139,234,.20);
  border-radius:16px;
  padding:24px;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.pd-benefit-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.pd-benefit-left{
  display:flex;
  align-items:center;
  gap:12px;
}
.pd-icon-square{
  width:40px;height:40px;
  border-radius:12px;
  background:#fff;
  box-shadow:0 2px 10px rgba(0,0,0,.06);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  color:#2A8BEA;
}
.pd-benefit-title{ font-weight:700; color:#545454; }

/* Woo gallery: force square + thumbs grid */
.pd-woo-gallery .woocommerce-product-gallery__wrapper{
  background:#f9fafb;
  border:1px solid #e5e7eb;
  border-radius:16px;
  overflow:hidden;
}
.pd-woo-gallery .woocommerce-product-gallery__image a,
.pd-woo-gallery .woocommerce-product-gallery__image img{
  display:block;
  width:100%;
  height:auto;
}
.pd-woo-gallery .flex-viewport{ border-radius:16px; }
.pd-woo-gallery .flex-control-thumbs{
  margin-top:12px !important;
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:12px !important;
}
.pd-woo-gallery .flex-control-thumbs li{
  margin:0 !important;
  border-radius:12px;
  overflow:hidden;
  transition:all .2s ease;
}
.pd-woo-gallery .flex-control-thumbs li:hover{ border-color:#d1d5db; }
.pd-woo-gallery .flex-control-thumbs img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
}

.flex-nav-prev, .flex-nav-next{
 display: none !important;   
}

.kitify-product-images .woocommerce-product-gallery .flex-control-thumbs img.flex-active {
    border: solid 2px #2A8BEA !important;
    border-radius: 12px !important;
}

/* ---- Scope everything so it only affects this product detail area ---- */
.pd-wrap .bg-gray-50{ background:#f9fafb; }
.pd-wrap .p-6{ padding:24px; }
.pd-wrap .mb-8{ margin-bottom:32px; }
.pd-wrap .mb-6{ margin-bottom:24px; }
.pd-wrap .mb-4{ margin-bottom:16px; }
.pd-wrap .mb-3{ margin-bottom:12px; }

.pd-wrap .rounded-xl{ border-radius:16px; }
.pd-wrap .rounded-lg{ border-radius:12px; }

.pd-wrap .border{ border:1px solid #e5e7eb; }
.pd-wrap .border-2{ border-width:2px; border-style:solid; }
.pd-wrap .border-gray-200{ border-color:#e5e7eb; }
.pd-wrap .border-gray-300{ border-color:#d1d5db; }

/* Make the "grid grid-cols-3" actually behave like a grid */
.pd-wrap .grid{ display:grid; }
.pd-wrap .grid-cols-3{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
.pd-wrap .gap-3{ gap:12px; }

/* Buttons */
.pd-wrap button{
  width:100%;
  text-align:center;
  background:#fff;
  color:#545454;
  cursor:pointer;
}
.pd-wrap .p-4{ padding:16px; }
.pd-wrap .transition-all{ transition:all .2s ease; }

/* hover:border-gray-400 */
.pd-wrap .hover\:border-gray-400:hover{ border-color:#9ca3af; }

/* Active button styles (your Tailwind classes include these exact strings) */
.pd-wrap [class*="border-[#2A8BEA]"]{ border-color:#2A8BEA !important; }
.pd-wrap [class*="bg-[#2A8BEA]/5"]{ background:rgba(42,139,234,.05) !important; }
.pd-wrap [class*="shadow-md"]{ box-shadow:0 10px 20px rgba(42,139,234,.12); }

/* Text sizing/weights (basic Tailwind equivalents) */
.pd-wrap .text-sm{ font-size:14px; }
.pd-wrap .text-lg{ font-size:18px; }
.pd-wrap .text-4xl{ font-size:40px; line-height:1; }
.pd-wrap .font-semibold{ font-weight:600; }
.pd-wrap .font-bold{ font-weight:800; }

.pd-wrap [class*="text-[#545454]"]{ color:#545454; }
.pd-wrap [class*="text-[#2A8BEA]"]{ color:#2A8BEA; }
.pd-wrap [class*="text-[#545454]/70"]{ color:rgba(84,84,84,.7); }

/* Price row alignment */
.pd-wrap .flex{ display:flex; }
.pd-wrap .items-baseline{ align-items:baseline; }
.pd-wrap .gap-2{ gap:8px; }

/* Tooltip basics (your markup uses group-hover) */
.pd-wrap .relative{ position:relative; }
.pd-wrap .inline-flex{ display:inline-flex; }
.pd-wrap .items-center{ align-items:center; }

.pd-wrap .group:hover .group-hover\:opacity-100{ opacity:1 !important; }
.pd-wrap .group:hover .group-hover\:visible{ visibility:visible !important; }
.pd-wrap .opacity-0{ opacity:0; }
.pd-wrap .invisible{ visibility:hidden; }

/* Subscription term “card” */
.pd-term-card{
  margin: 0 0 32px;
  padding: 24px;
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
}

/* Title */
.pd-term-title{
  margin: 0 0 16px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #545454;
}

/* Make sure the moved row doesn’t look like a table anymore */
#pd-term-slot table,
#pd-term-slot tbody,
#pd-term-slot tr{
  display:block;
  width:100%;
}
#pd-term-slot td.label{
  display:none; /* hide “Subscription Term” label row */
}
#pd-term-slot td.value{
  display:block;
  padding:0;
}

/* Optional: make the dropdown full width */
#pd-term-slot select{
  width:100%;
  min-height: 52px;
  border-radius: 12px;
  border: 2px solid #d1d5db;
}

/* 1) Hide the “Subscription” label */
#pd-term-card th.label,
#pd-term-card .label{
  display: none !important;
}

/* Because the <tr> is inside a <div>, normalize layout */
#pd-term-slot tr,
#pd-term-slot td.value{
  display: block !important;
  width: 100% !important;
  padding: 0 !important;
  border: 0 !important;
}

/* 2) Make the buttons sit next to each other */
#pd-term-card .bv-var-group{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  margin-top: 0 !important;
}

/* Button styling (match your card look) */
#pd-term-card .bv-var-btn{
  width: 100% !important;
  padding: 16px 12px !important;
  border-radius: 12px !important;
  border: 2px solid #d1d5db !important;
  background: #fff !important;
  color: #545454 !important;
  font-weight: 800 !important;
  text-align: center !important;
  cursor: pointer !important;
  transition: all .2s ease !important;
}

#pd-term-card .bv-var-btn:hover{
  border-color: #9ca3af !important;
}

/* Active state (set this class in your JS when selected) */
#pd-term-card .bv-var-btn.is-active{
  border-color: #2A8BEA !important;
  background: rgba(42,139,234,.05) !important;
  box-shadow: 0 10px 20px rgba(42,139,234,.12) !important;
}

/* Optional: keep the select hidden (if you're using buttons) */
#pd-term-card .bv-hidden-select{
  display: none !important;
}

.pd-term-title{
    color: #545454;
    font-size: 14px;
}

#pd-term-price{
  margin-top: 16px;
}

/* Woo inserts a .price element inside .single_variation */
#pd-term-price .price{
  font-size: 40px;
  font-weight: 900;
  line-height: 1;
  color: #2A8BEA;
  margin: 0 0 6px;
}

#pd-term-price .woocommerce-variation-availability{
  font-size: 14px;
  color: rgba(84,84,84,.7);
}

.woocommerce-variation-price{
    margin-top: 40px !important;
}

.price-suffix, .price-from-prefix {
    color: #545454b3;
    font-size: 18px !important;
    font-weight: 400 !important;
}

/* Put variation option buttons next to each other */
form.variations_form table.variations td.value .bv-var-group{
  display: flex !important;
  gap: 12px !important;
  width: 100% !important;
  flex-wrap: nowrap !important; /* keeps them on one line */
}

/* Each button takes equal width */
form.variations_form table.variations td.value .bv-var-btn{
  flex: 1 1 0 !important;
  width: auto !important;
  min-width: 0 !important;
  padding: 12px 10px !important;
  border-radius: 12px !important;
  border: 2px solid #d1d5db !important;
  background: #fff !important;
  color: #545454 !important;
  font-weight: 800 !important;
  text-align: center !important;
  transition: all .2s ease !important;
}

form.variations_form table.variations td.value .bv-var-btn:hover{
  border-color: #9ca3af !important;
}

form.variations_form table.variations td.value .bv-var-btn.is-active{
  border-color: #2A8BEA !important;
  background: rgba(42,139,234,.05) !important;
  box-shadow: 0 10px 20px rgba(42,139,234,.12) !important;
}

/* If there are many options and you WANT wrapping on smaller screens */
@media (max-width: 480px){
  form.variations_form table.variations td.value .bv-var-group{
    flex-wrap: wrap !important;
  }
  form.variations_form table.variations td.value .bv-var-btn{
    flex: 1 1 calc(50% - 6px) !important; /* 2 per row on very small screens */
  }
}

.variations{
    margin-top: 30px;
}

th.label {
    font-size: 12px !important;
    text-transform: uppercase !important;
}

/* Make sure tooltip can overflow card */
#pd-term-card{ overflow: visible !important; }

/* Tooltip row */
#pd-term-card .pd-tooltip{
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}

#pd-term-card .pd-tooltip-label{
  font-size: 13px;
  color: rgba(84,84,84,.7);
}

#pd-term-card .pd-tooltip-icon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: help;
  color: rgba(84,84,84,.45);
  transition: color .2s ease;
}
#pd-term-card .pd-tooltip:hover .pd-tooltip-icon{
  color: #2A8BEA;
}

/* Tooltip box */
#pd-term-card .pd-tip-box{
  position: absolute;
  left: 0;
  top: 100%;
  margin-top: 10px;
  width: 320px;
  background: #545454;
  color: #fff;
  font-size: 12px;
  line-height: 1.4;
  border-radius: 12px;
  padding: 14px;
  box-shadow: 0 18px 40px rgba(0,0,0,.25);
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: all .2s ease;
  z-index: 999;
}

#pd-term-card .pd-tooltip:hover .pd-tip-box{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* little arrow */
#pd-term-card .pd-tip-box:before{
  content: "";
  position: absolute;
  top: -5px;
  left: 22px;
  width: 10px;
  height: 10px;
  background: #545454;
  transform: rotate(45deg);
}

#pd-term-card .pd-tip-box p{ margin: 0 0 8px; }
#pd-term-card .pd-tip-box p:last-child{ margin-bottom: 0; }

/* Hide quantity on single product add-to-cart */
.single-product form.cart .quantity{
  display: none !important;
}

.woocommerce .product .cart .button {
    background-color: #2A8BEA;
    color: #fff;
    border-radius: 12px;
    font-size: 18px;
}

.woocommerce .product .cart .button:hover {
    background-color: rgb(72, 202, 237);
}

/* =========================
   Subzz info rows (benefits)
   ========================= */

.subzz-info-rows{
  position: relative;
  overflow: visible !important;

  padding: 24px;
  border-radius: 16px;
  border: 1px solid rgba(42,139,234,.20);
  background: linear-gradient(135deg, rgba(42,139,234,.05), rgba(72,202,237,.05));

  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* Optional: if you're using divider elements, reduce the gap so it doesn't feel double-spaced */
.subzz-info-rows .subzz-divider{
  height: 1px;
  background: rgba(42,139,234,.12);
  border: 0;
  margin: 0;
}

/* Row layout */
.subzz-row{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

/* Left icon square */
.subzz-row__icon{
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 2px 10px rgba(0,0,0,.06);

  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}

/* Force the icon strokes/fills to your brand blue */
.subzz-row__icon svg,
.subzz-row__icon svg *{
  stroke: #2A8BEA !important;
  fill: none !important;
}

/* Label */
.subzz-row__label{
  flex: 1 1 auto;
  font-weight: 600;
  color: #545454;
  line-height: 1.2;
}

/* Info button */
.subzz-row__info{
  flex: 0 0 auto;
  background: transparent;
  border: 0;
  padding: 0;
  cursor: help;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform .15s ease;
}

.subzz-row__info:hover{ transform: translateY(-1px); }

/* Recolor the info icon on hover */
.subzz-row__info svg,
.subzz-row__info svg *{
  transition: all .2s ease;
}
.subzz-row__info:hover svg circle{
  stroke: rgba(42,139,234,.7) !important;
}
.subzz-row__info:hover svg path{
  fill: #2A8BEA !important;
}

/* Popover tooltip */
.subzz-popover{
  position: absolute;
  right: 0;
  bottom: calc(100% + 10px);
  width: 260px;

  background: #545454;
  color: #fff;
  border-radius: 12px;
  box-shadow: 0 18px 40px rgba(0,0,0,.25);

  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: all .2s ease;
  z-index: 999;
}

/* inner padding + text */
.subzz-popover__inner{
  padding: 12px 14px;
  font-size: 12px;
  line-height: 1.4;
}
.subzz-popover__inner p{ margin: 0; }

/* Arrow */
.subzz-popover:after{
  content:"";
  position: absolute;
  right: 18px;
  bottom: -5px;
  width: 10px;
  height: 10px;
  background: #545454;
  transform: rotate(45deg);
}

/* Show popover on hover OR keyboard focus */
.subzz-row:hover .subzz-popover,
.subzz-row:focus-within .subzz-popover{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* If you use click-to-toggle JS below */
.subzz-row.is-open .subzz-popover{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.subzz-row__info{
    width: auto !important;
}

:is(.elementor-widget-woocommerce-product-add-to-cart,.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart,.elementor-widget-wc-add-to-cart,.woocommerce div.product .elementor-widget-wc-add-to-cart) form.cart .button:where(:not(:first-child)), :is(.elementor-widget-woocommerce-product-add-to-cart,.woocommerce div.product .elementor-widget-woocommerce-product-add-to-cart,.elementor-widget-wc-add-to-cart,.woocommerce div.product .elementor-widget-wc-add-to-cart) form.cart button:where(:not(:first-child)) {
    margin-block-start: 0;
    margin-inline-start: auto;
}

/* Make sure the row is the positioning context */
.subzz-row{
  position: relative !important;
}

/* Popover = Tailwind equivalent */
.subzz-row .subzz-popover{
  position: absolute !important;
  right: 0 !important;
  bottom: 100% !important;
  margin-bottom: 8px !important;         /* mb-2 */
  width: 16rem !important;               /* w-64 (256px) */

  background: #545454 !important;
  color: #fff !important;
  font-size: 12px !important;            /* text-xs */
  line-height: 1.4 !important;
  border-radius: 8px !important;         /* rounded-lg */
  padding: 12px !important;              /* p-3 */

  box-shadow: 0 20px 25px -5px rgba(0,0,0,.18),
              0 10px 10px -5px rgba(0,0,0,.10) !important; /* shadow-xl */

  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(6px) !important;
  transition: all .2s ease !important;   /* transition-all duration-200 */
  z-index: 10 !important;
}

/* Clean inner wrapper so it doesn't fight padding */
.subzz-row .subzz-popover__inner{
  padding: 0 !important;
}
.subzz-row .subzz-popover__inner p{
  margin: 0 !important;
}

/* Arrow (like the extra inner div in your Tailwind example) */
.subzz-row .subzz-popover::after{
  content: "" !important;
  position: absolute !important;
  right: 16px !important;                /* right-4 */
  bottom: -4px !important;
  width: 8px !important;                 /* w-2 */
  height: 8px !important;                /* h-2 */
  background: #545454 !important;
  transform: translateY(50%) rotate(45deg) !important; /* translate-y-1/2 rotate-45 */
}

/* Show on hover + keyboard focus (matches group-hover behaviour) */
.subzz-row:hover .subzz-popover,
.subzz-row:focus-within .subzz-popover{
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

/* If you're using click-to-toggle JS, keep this too */
.subzz-row.is-open .subzz-popover{
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

/* If tooltip gets clipped anywhere */
.subzz-info-rows{
  overflow: visible !important;
}

/* Ensure row is positioning context */
.subzz-row{
  position: relative !important;
  overflow: visible !important;
}

/* Tooltip box: make it a real box that wraps text */
.subzz-row .subzz-popover{
  /* positioning: TOP (above the icon) */
  position: absolute !important;
  right: 0 !important;
  left: auto !important;
  top: auto !important;
  bottom: calc(100% + 8px) !important; /* bottom-full + mb-2 */

  /* sizing */
  width: 256px !important;            /* w-64 */
  max-width: 90vw !important;

  /* box */
  display: block !important;
  box-sizing: border-box !important;
  background: #545454 !important;
  color: #fff !important;
  font-size: 12px !important;         /* text-xs */
  line-height: 1.4 !important;
  border-radius: 8px !important;      /* rounded-lg */
  padding: 12px !important;           /* p-3 */
  box-shadow: 0 20px 25px -5px rgba(0,0,0,.18),
              0 10px 10px -5px rgba(0,0,0,.10) !important; /* shadow-xl */

  /* wrapping so background covers all lines */
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;

  /* hidden by default */
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(6px) !important;
  transition: all .2s ease !important;
  z-index: 9999 !important;
}

/* Make sure inner doesn't kill the padding/height */
.subzz-row .subzz-popover__inner{
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
}
.subzz-row .subzz-popover__inner p{
  display: block !important;
  margin: 0 !important;
  color: #fff;
}

/* Arrow on bottom (like your Tailwind example) */


/* Show tooltip (hover + keyboard focus) */
.subzz-row:hover .subzz-popover,
.subzz-row:focus-within .subzz-popover{
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

/* If you use click-to-toggle JS */
.subzz-row.is-open .subzz-popover{
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

/* If anything is clipping tooltips */
.subzz-info-rows{
  overflow: visible !important;
}

.subzz-row .subzz-popover::after {
    content: none !important;
}

/* ===== Product Information (ACF) ===== */

.subzz-prodinfo{
  padding: 64px 0;
}

@media (min-width: 768px){
  .subzz-prodinfo{ padding: 20px 0; }
}

.subzz-prodinfo__inner{
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 24px;
}

@media (min-width: 768px){
  .subzz-prodinfo__inner{ padding: 0 48px; }
}
@media (min-width: 1024px){
  .subzz-prodinfo__inner{ padding: 0 64px; }
}

/* Title */
.subzz-prodinfo__title{
  margin: 0 0 48px;
  font-size: 32px;
  font-weight: 900;
  color: #545454;
}
@media (min-width: 768px){
  .subzz-prodinfo__title{ font-size: 40px; }
}

/* Grid */
.subzz-prodinfo__grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
}
@media (min-width: 768px){
  .subzz-prodinfo__grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1024px){
  .subzz-prodinfo__grid{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Item */
.subzz-prodinfo__item{
  border-left: 4px solid #2A8BEA;
  padding-left: 24px;
}

/* Key */
.subzz-prodinfo__k{
  margin: 0 0 8px;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: rgba(84,84,84,.6);
}

/* Value */
.subzz-prodinfo__v{
  margin: 0;
  font-size: 18px;
  font-weight: 900;
  color: #545454;
}

.subzz-prodinfo__grid{
  display:grid;
  grid-template-columns: 1fr;
  gap: 32px;
}
@media (min-width:768px){
  .subzz-prodinfo__grid{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width:1024px){
  .subzz-prodinfo__grid{
    grid-template-columns: repeat(var(--subzz-cols, 3), minmax(0, 1fr));
  }
}

/* ===== Included section ===== */
.subzz-included{
  background:#f9fafb;
  padding:80px 0;
}
@media (max-width:1024px){
  .subzz-included{ padding:64px 0; }
}

.subzz-included__inner{
  max-width:1280px;
  margin:0 auto;
  padding:0 24px;
}
@media (min-width:768px){
  .subzz-included__inner{ padding:0 48px; }
}
@media (min-width:1024px){
  .subzz-included__inner{ padding:0 64px; }
}

.subzz-included__title{
  margin:0 0 12px;
  text-align:center;
  font-size:32px;
  font-weight:900;
  color:#545454;
}
@media (min-width:768px){
  .subzz-included__title{ font-size:40px; }
}

.subzz-included__intro{
  margin:0 auto 48px;
  max-width: 640px;
  text-align:center;
  color: rgba(84,84,84,.7);
  font-size:16px;
  line-height:1.6;
}

/* Grid */
.subzz-included__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:32px;
}
@media (min-width:768px){
  .subzz-included__grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (min-width:1024px){
  .subzz-included__grid{ grid-template-columns:repeat(4, minmax(0,1fr)); }
}

/* Card */
.subzz-step{
  text-align:center;
}

/* Icon box */
.subzz-step__icon{
  width:80px;
  height:80px;
  border-radius:18px; /* rounded-2xl vibe */
  margin:0 auto 24px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:2px solid transparent;
  background:rgba(42,139,234,.10);
  border-color:rgba(42,139,234,.20);
}

/* If you use Elementor Icon widget, ensure icon inherits color */
.subzz-step__icon .elementor-icon,
.subzz-step__icon svg{
  width:32px;
  height:32px;
}

/* Title + text */
.subzz-step__title{
  margin:0 0 12px;
  font-size:20px;
  font-weight:900;
  color:#545454;
}
.subzz-step__text{
  margin:0;
  font-size:14px;
  color:rgba(84,84,84,.7);
  line-height:1.6;
}

/* Color variants */
.subzz-step__icon--blue{
  background:rgba(42,139,234,.10);
  border-color:rgba(42,139,234,.20);
}
.subzz-step__icon--blue svg,
.subzz-step__icon--blue .elementor-icon{ color:#2A8BEA; }

.subzz-step__icon--cyan{
  background:rgba(72,202,237,.10);
  border-color:rgba(72,202,237,.20);
}
.subzz-step__icon--cyan svg,
.subzz-step__icon--cyan .elementor-icon{ color:#48CAED; }

.subzz-step__icon--amber{
  background:rgba(255,157,0,.10);
  border-color:rgba(255,157,0,.20);
}
.subzz-step__icon--amber svg,
.subzz-step__icon--amber .elementor-icon{ color:#FF9D00; }

.subzz-step__icon--rose{
  background:rgba(247,60,92,.10);
  border-color:rgba(247,60,92,.20);
}
.subzz-step__icon--rose svg,
.subzz-step__icon--rose .elementor-icon{ color:#F73C5C; }/* End custom CSS */