.elementor-214 .elementor-element.elementor-element-2e6ed06{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-214 .elementor-element.elementor-element-4b9165c{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-214 .elementor-element.elementor-element-83fde77{text-align:center;}.elementor-214 .elementor-element.elementor-element-83fde77 .elementor-heading-title{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-214 .elementor-element.elementor-element-58789bd{text-align:center;}.elementor-214 .elementor-element.elementor-element-58789bd .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:41px;font-weight:400;color:var( --e-global-color-text );}.elementor-214 .elementor-element.elementor-element-9d8c664{--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;--border-radius:104px 104px 104px 104px;--margin-top:80px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;--padding-top:36px;--padding-bottom:36px;--padding-left:36px;--padding-right:36px;}.elementor-214 .elementor-element.elementor-element-9d8c664:not(.elementor-motion-effects-element-type-background), .elementor-214 .elementor-element.elementor-element-9d8c664 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F1F1F4;}.elementor-214 .elementor-element.elementor-element-74e8b61{--display:flex;--justify-content:center;--border-radius:64px 64px 64px 64px;box-shadow:0px 0px 10px -5px rgba(0,0,0,0.5);--padding-top:16px;--padding-bottom:16px;--padding-left:16px;--padding-right:16px;}.elementor-214 .elementor-element.elementor-element-74e8b61:not(.elementor-motion-effects-element-type-background), .elementor-214 .elementor-element.elementor-element-74e8b61 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );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 );}.elementor-214 .elementor-element.elementor-element-0c0a487 img{width:35%;}.elementor-214 .elementor-element.elementor-element-84846cd{text-align:center;}.elementor-214 .elementor-element.elementor-element-84846cd .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );color:var( --e-global-color-text );}.elementor-214 .elementor-element.elementor-element-37d630a{--display:flex;--border-radius:64px 64px 64px 64px;--padding-top:16px;--padding-bottom:16px;--padding-left:16px;--padding-right:16px;}.elementor-214 .elementor-element.elementor-element-d86d7ed > .elementor-widget-container{margin:15px 0px 0px 0px;}.elementor-214 .elementor-element.elementor-element-d86d7ed{text-align:center;}.elementor-214 .elementor-element.elementor-element-d86d7ed .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:50px;font-weight:500;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{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 );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-214 .elementor-element.elementor-element-6cef27b.elementor-element{--align-self:center;}.elementor-214 .elementor-element.elementor-element-6cef27b .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-bottom:calc(3px/2);}.elementor-214 .elementor-element.elementor-element-6cef27b .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-top:calc(3px/2);}.elementor-214 .elementor-element.elementor-element-6cef27b .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:calc(3px/2);margin-left:calc(3px/2);}.elementor-214 .elementor-element.elementor-element-6cef27b .elementor-icon-list-items.elementor-inline-items{margin-right:calc(-3px/2);margin-left:calc(-3px/2);}body.rtl .elementor-214 .elementor-element.elementor-element-6cef27b .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{left:calc(-3px/2);}body:not(.rtl) .elementor-214 .elementor-element.elementor-element-6cef27b .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{right:calc(-3px/2);}.elementor-214 .elementor-element.elementor-element-6cef27b .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-214 .elementor-element.elementor-element-6cef27b .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-214 .elementor-element.elementor-element-6cef27b{--e-icon-list-icon-size:14px;--e-icon-list-icon-align:left;--e-icon-list-icon-margin:0 calc(var(--e-icon-list-icon-size, 1em) * 0.25) 0 0;--icon-vertical-offset:0px;}.elementor-214 .elementor-element.elementor-element-6cef27b .elementor-icon-list-icon{padding-right:5px;}.elementor-214 .elementor-element.elementor-element-6cef27b .elementor-icon-list-text{color:var( --e-global-color-8fb9109 );transition:color 0.3s;}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-214 .elementor-element.elementor-element-d34a391{width:100%;max-width:100%;}.elementor-214 .elementor-element.elementor-element-d34a391 .cart button, .elementor-214 .elementor-element.elementor-element-d34a391 .cart .button{border-radius:30px 30px 30px 30px;padding:18px 22px 18px 22px;background-color:var( --e-global-color-primary );transition:all 0.2s;}.woocommerce .elementor-214 .elementor-element.elementor-element-d34a391 form.cart table.variations tr th, .woocommerce .elementor-214 .elementor-element.elementor-element-d34a391 form.cart table.variations tr td{padding-top:calc( 0px/2 );padding-bottom:calc( 0px/2 );}.woocommerce .elementor-214 .elementor-element.elementor-element-d34a391 form.cart table.variations label{color:var( --e-global-color-primary );}.woocommerce .elementor-214 .elementor-element.elementor-element-d34a391 form.cart table.variations td.value select{color:var( --e-global-color-accent );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-214 .elementor-element.elementor-element-50805f2{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-214 .elementor-element.elementor-element-c5eba14{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-214 .elementor-element.elementor-element-2731d84{text-align:center;}.elementor-214 .elementor-element.elementor-element-2731d84 .elementor-heading-title{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-214 .elementor-element.elementor-element-027e743{text-align:center;}.elementor-214 .elementor-element.elementor-element-027e743 .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-size:41px;font-weight:400;color:var( --e-global-color-text );}.elementor-214 .elementor-element.elementor-element-09905c0{--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;--border-radius:104px 104px 104px 104px;--margin-top:80px;--margin-bottom:80px;--margin-left:0px;--margin-right:0px;--padding-top:36px;--padding-bottom:36px;--padding-left:36px;--padding-right:36px;}.elementor-214 .elementor-element.elementor-element-09905c0:not(.elementor-motion-effects-element-type-background), .elementor-214 .elementor-element.elementor-element-09905c0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F1F1F4;}.elementor-214 .elementor-element.elementor-element-372284e{--display:flex;--justify-content:center;--border-radius:64px 64px 64px 64px;box-shadow:0px 0px 10px -5px rgba(0,0,0,0.5);--padding-top:16px;--padding-bottom:16px;--padding-left:16px;--padding-right:16px;}.elementor-214 .elementor-element.elementor-element-372284e:not(.elementor-motion-effects-element-type-background), .elementor-214 .elementor-element.elementor-element-372284e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-214 .elementor-element.elementor-element-f1da5d5 img{width:35%;}.elementor-214 .elementor-element.elementor-element-9906e54{text-align:center;}.elementor-214 .elementor-element.elementor-element-9906e54 .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );color:var( --e-global-color-text );}.elementor-214 .elementor-element.elementor-element-3c4da54.elementor-element{--align-self:center;}.elementor-214 .elementor-element.elementor-element-3c4da54 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-bottom:calc(3px/2);}.elementor-214 .elementor-element.elementor-element-3c4da54 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-top:calc(3px/2);}.elementor-214 .elementor-element.elementor-element-3c4da54 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:calc(3px/2);margin-left:calc(3px/2);}.elementor-214 .elementor-element.elementor-element-3c4da54 .elementor-icon-list-items.elementor-inline-items{margin-right:calc(-3px/2);margin-left:calc(-3px/2);}body.rtl .elementor-214 .elementor-element.elementor-element-3c4da54 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{left:calc(-3px/2);}body:not(.rtl) .elementor-214 .elementor-element.elementor-element-3c4da54 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{right:calc(-3px/2);}.elementor-214 .elementor-element.elementor-element-3c4da54 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-214 .elementor-element.elementor-element-3c4da54 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-214 .elementor-element.elementor-element-3c4da54{--e-icon-list-icon-size:14px;--e-icon-list-icon-align:left;--e-icon-list-icon-margin:0 calc(var(--e-icon-list-icon-size, 1em) * 0.25) 0 0;--icon-vertical-offset:0px;}.elementor-214 .elementor-element.elementor-element-3c4da54 .elementor-icon-list-icon{padding-right:5px;}.elementor-214 .elementor-element.elementor-element-3c4da54 .elementor-icon-list-text{color:var( --e-global-color-8fb9109 );transition:color 0.3s;}.elementor-214 .elementor-element.elementor-element-b253b8d{width:100%;max-width:100%;}.elementor-214 .elementor-element.elementor-element-b253b8d .cart button, .elementor-214 .elementor-element.elementor-element-b253b8d .cart .button{border-radius:30px 30px 30px 30px;padding:18px 22px 18px 22px;background-color:var( --e-global-color-primary );transition:all 0.2s;}.woocommerce .elementor-214 .elementor-element.elementor-element-b253b8d form.cart table.variations tr th, .woocommerce .elementor-214 .elementor-element.elementor-element-b253b8d form.cart table.variations tr td{padding-top:calc( 0px/2 );padding-bottom:calc( 0px/2 );}.woocommerce .elementor-214 .elementor-element.elementor-element-b253b8d form.cart table.variations label{color:var( --e-global-color-primary );}.woocommerce .elementor-214 .elementor-element.elementor-element-b253b8d form.cart table.variations td.value select{color:var( --e-global-color-accent );}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-214 .elementor-element.elementor-element-83fde77 .elementor-heading-title{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-214 .elementor-element.elementor-element-84846cd .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-214 .elementor-element.elementor-element-2731d84 .elementor-heading-title{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-214 .elementor-element.elementor-element-9906e54 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}}@media(min-width:768px){.elementor-214 .elementor-element.elementor-element-4b9165c{--width:84%;}.elementor-214 .elementor-element.elementor-element-74e8b61{--width:50%;}.elementor-214 .elementor-element.elementor-element-37d630a{--width:50%;}.elementor-214 .elementor-element.elementor-element-c5eba14{--width:84%;}.elementor-214 .elementor-element.elementor-element-09905c0{--width:50%;}.elementor-214 .elementor-element.elementor-element-372284e{--width:100%;}}@media(max-width:767px){.elementor-214 .elementor-element.elementor-element-4b9165c{--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-214 .elementor-element.elementor-element-83fde77 .elementor-heading-title{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-214 .elementor-element.elementor-element-58789bd .elementor-heading-title{font-size:36px;}.elementor-214 .elementor-element.elementor-element-9d8c664{--border-radius:48px 48px 48px 48px;--margin-top:40px;--margin-bottom:40px;--margin-left:0px;--margin-right:0px;--padding-top:16px;--padding-bottom:16px;--padding-left:16px;--padding-right:16px;}.elementor-214 .elementor-element.elementor-element-74e8b61{--border-radius:32px 32px 32px 32px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-214 .elementor-element.elementor-element-84846cd .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}.elementor-214 .elementor-element.elementor-element-37d630a{--border-radius:32px 32px 32px 32px;}.elementor-214 .elementor-element.elementor-element-37d630a.e-con{--align-self:flex-start;}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-size:var( --e-global-typography-text-font-size );}.elementor-214 .elementor-element.elementor-element-6cef27b > .elementor-widget-container{margin:0px 30px 0px 30px;}.elementor-214 .elementor-element.elementor-element-6cef27b.elementor-element{--align-self:flex-start;}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-button .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-214 .elementor-element.elementor-element-c5eba14{--margin-top:100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-214 .elementor-element.elementor-element-2731d84 .elementor-heading-title{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-214 .elementor-element.elementor-element-027e743 .elementor-heading-title{font-size:36px;}.elementor-214 .elementor-element.elementor-element-09905c0{--border-radius:48px 48px 48px 48px;--margin-top:40px;--margin-bottom:40px;--margin-left:0px;--margin-right:0px;--padding-top:16px;--padding-bottom:16px;--padding-left:16px;--padding-right:16px;}.elementor-214 .elementor-element.elementor-element-372284e{--border-radius:32px 32px 32px 32px;}.elementor-214 .elementor-element.elementor-element-9906e54 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );}.elementor-214 .elementor-element.elementor-element-3c4da54 > .elementor-widget-container{margin:0px 30px 0px 30px;}.elementor-214 .elementor-element.elementor-element-3c4da54.elementor-element{--align-self:flex-start;}}/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-d34a391 *//* RADIO ITEMS ONLY ↓ */
form.cart .wapf-field-container.wapf-field-radio .wapf-radios {
  display: inline-flex;
  justify-content: flex-start;
  gap: 10px;
  margin-bottom: 20px;
  position: relative;
  padding: 12px;
  border-radius: 24px;
  box-shadow: inset 0 0 8px rgba(0,0,0,0.1);
}

form.cart .wapf-field-container.wapf-field-radio input[type="radio"],
form.cart .wapf-field-container.wapf-field-radio .wapf-custom {
  display: none !important;
}

form.cart .wapf-field-container.wapf-field-radio .wapf-label-text {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  margin: 0;
  border: none;
  border-radius: 13px;
  cursor: pointer;
  user-select: none;
  transition: color 0.2s ease;
  color: #000;
  position: relative;
  z-index: 1;
}

form.cart .wapf-field-container.wapf-field-radio
    .wapf-input:checked + .wapf-custom + .wapf-label-text {
  color: #FF4F00;
}

form.cart .wapf-field-container.wapf-field-radio .wapf-slider {
  position: absolute;
  top: 12px;
  left: 12px;
  width: 40px;
  height: 40px;
  border-radius: 13px;
  background-color: #fff;
  border: 2px solid #fff;
  transition: transform 0.3s ease;
  z-index: 0;
}
/* RADIO-ONLY CSS END ↑ */

/* CHECKBOX-ONLY STYLES ↓ */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-input {
  display: none !important;              /* hide native checkbox */
}

form.cart .wapf-field-container.wapf-field-checkboxes .wapf-custom {
  display: inline-flex;                  /* use flex to center the tick */
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 8px;                     /* space before label text */
  vertical-align: middle;
  border: 2px solid #ccc;                /* grey box when unchecked */
  border-radius: 4px;                    /* slight rounding */
  background-color: transparent;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  position: relative;                    /* for the pseudo-element */
}

form.cart .wapf-field-container.wapf-field-checkboxes .wapf-input:checked + .wapf-custom {
  background-color: #FF4F00;             /* orange fill when checked */
  border-color:    #FF4F00;              /* orange border when checked */
}

form.cart .wapf-field-container.wapf-field-checkboxes .wapf-input:checked + .wapf-custom::after {
  content: '✓';
  color: #fff;                           /* white tick */
  font-size: 16px;                       /* slightly larger */
  font-weight: bold;                     /* thicker stroke */
  line-height: 1;                        /* flex centering handles alignment */
}

/* ensure label text stays aligned */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-label-text {
  vertical-align: middle;
}

/* ——————————————————————————————— */
/* Checkbox: true edge-to-edge hint */
/* ——————————————————————————————— */

/* 1) Make the field-input and its inner .wapf-checkboxes full width */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-field-input,
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-checkboxes {
  width: 100%;
  box-sizing: border-box;
}

/* 2) Ensure each .wapf-checkbox row is full width */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-checkbox {
  width: 100%;
}

/* 3) Turn the label into a flex container that spans 100% */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-input-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  box-sizing: border-box;
}

/* 4) Keep your custom box on the left with its margin */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-custom {
  margin-right: 8px;
}

/* 5) Wrap the option text and hint, spacing them apart */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-label-text {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex: 1;
}

/* 6) Prevent the hint from ever wrapping */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-pricing-hint {
  white-space: nowrap;
  margin-left: 8px;
}


/* ——————————————————————————————— */
/* Checkbox: color entire line when checked */
/* ——————————————————————————————— */

/* Target the label‐text & hint following the custom box on a checked input */
form.cart .wapf-field-container.wapf-field-checkboxes 
  .wapf-input:checked + .wapf-custom + .wapf-label-text {
  color: #FF4F00;      /* main label text goes orange */
}

/* And make sure the hint itself also inherits that color */
form.cart .wapf-field-container.wapf-field-checkboxes 
  .wapf-input:checked + .wapf-custom + .wapf-label-text 
  .wapf-pricing-hint {
  color: #FF4F00;      /* pricing hint turns orange too */
}

/* Center the Add to Cart button with minimal top gap */
form.cart .single_add_to_cart_button {
  display: block !important;
  margin: 10px auto 0 !important;  /* 10px above, auto left/right, 0 below */
}

/* Hide the APF grand-total heading entirely */
form.cart .wapf-product-totals .wapf--inner {
  display: none !important;
}

/* Hide pricing hints for radio options only */
form.cart .wapf-field-container.wapf-field-radio .wapf-pricing-hint {
  display: none !important;
}







/* Style the dynamic hint next to “Additional Pages” */
.toggle-additional-pages + span + .additional-pages-hint {
  margin-left: 8px;
  white-space: nowrap;
  font-weight: normal; /* match your other hints */
  color: #000;         /* will inherit orange when needed */
}
.toggle-additional-pages:checked + span + .additional-pages-hint {
  color: #FF4F00;
}


/* ——————————————————————————————— */
/* Align Additional Pages hint flush right */
/* ——————————————————————————————— */
form.cart .wapf-field-container.wapf-field-radio .wapf-field-label label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  box-sizing: border-box;
}

/* ——————————————————————————————— */
/* Style “Additional Pages” toggle like APF checkboxes */
/* ——————————————————————————————— */
form.cart .toggle-additional-pages {
  display: none !important;  /* hide the real checkbox */
}

form.cart .toggle-additional-pages + span {
  position: relative;
  padding-left: 28px;        /* 20px box + 8px gap before text */
  cursor: pointer;
}

/* draw the grey box behind the text */
form.cart .toggle-additional-pages + span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border: 2px solid #ccc;
  border-radius: 4px;
  background-color: transparent;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* fill it orange when checked */
form.cart .toggle-additional-pages:checked + span::before {
  background-color: #FF4F00;
  border-color:     #FF4F00;
}

/* show a white ✓ inside when checked */
form.cart .toggle-additional-pages:checked + span::after {
  content: "✓";
  position: absolute;
  /* anchor inside the 20px box at left:0 of the span */
  left: 2px;                     /* (20px box − 16px tick)/2 ≈ 2px */
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-b253b8d *//* RADIO ITEMS ONLY ↓ */
form.cart .wapf-field-container.wapf-field-radio .wapf-radios {
  display: inline-flex;
  justify-content: flex-start;
  gap: 10px;
  margin-bottom: 20px;
  position: relative;
  padding: 12px;
  border-radius: 24px;
  box-shadow: inset 0 0 8px rgba(0,0,0,0.1);
}

form.cart .wapf-field-container.wapf-field-radio input[type="radio"],
form.cart .wapf-field-container.wapf-field-radio .wapf-custom {
  display: none !important;
}

form.cart .wapf-field-container.wapf-field-radio .wapf-label-text {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 0;
  margin: 0;
  border: none;
  border-radius: 13px;
  cursor: pointer;
  user-select: none;
  transition: color 0.2s ease;
  color: #000;
  position: relative;
  z-index: 1;
}

form.cart .wapf-field-container.wapf-field-radio
    .wapf-input:checked + .wapf-custom + .wapf-label-text {
  color: #FF4F00;
}

form.cart .wapf-field-container.wapf-field-radio .wapf-slider {
  position: absolute;
  top: 12px;
  left: 12px;
  width: 40px;
  height: 40px;
  border-radius: 13px;
  background-color: #fff;
  border: 2px solid #fff;
  transition: transform 0.3s ease;
  z-index: 0;
}
/* RADIO-ONLY CSS END ↑ */

/* CHECKBOX-ONLY STYLES ↓ */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-input {
  display: none !important;              /* hide native checkbox */
}

form.cart .wapf-field-container.wapf-field-checkboxes .wapf-custom {
  display: inline-flex;                  /* use flex to center the tick */
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  margin-right: 8px;                     /* space before label text */
  vertical-align: middle;
  border: 2px solid #ccc;                /* grey box when unchecked */
  border-radius: 4px;                    /* slight rounding */
  background-color: transparent;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  position: relative;                    /* for the pseudo-element */
}

form.cart .wapf-field-container.wapf-field-checkboxes .wapf-input:checked + .wapf-custom {
  background-color: #FF4F00;             /* orange fill when checked */
  border-color:    #FF4F00;              /* orange border when checked */
}

form.cart .wapf-field-container.wapf-field-checkboxes .wapf-input:checked + .wapf-custom::after {
  content: '✓';
  color: #fff;                           /* white tick */
  font-size: 16px;                       /* slightly larger */
  font-weight: bold;                     /* thicker stroke */
  line-height: 1;                        /* flex centering handles alignment */
}

/* ensure label text stays aligned */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-label-text {
  vertical-align: middle;
}

/* ——————————————————————————————— */
/* Checkbox: true edge-to-edge hint */
/* ——————————————————————————————— */

/* 1) Make the field-input and its inner .wapf-checkboxes full width */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-field-input,
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-checkboxes {
  width: 100%;
  box-sizing: border-box;
}

/* 2) Ensure each .wapf-checkbox row is full width */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-checkbox {
  width: 100%;
}

/* 3) Turn the label into a flex container that spans 100% */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-input-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  box-sizing: border-box;
}

/* 4) Keep your custom box on the left with its margin */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-custom {
  margin-right: 8px;
}

/* 5) Wrap the option text and hint, spacing them apart */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-label-text {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex: 1;
}

/* 6) Prevent the hint from ever wrapping */
form.cart .wapf-field-container.wapf-field-checkboxes .wapf-pricing-hint {
  white-space: nowrap;
  margin-left: 8px;
}


/* ——————————————————————————————— */
/* Checkbox: color entire line when checked */
/* ——————————————————————————————— */

/* Target the label‐text & hint following the custom box on a checked input */
form.cart .wapf-field-container.wapf-field-checkboxes 
  .wapf-input:checked + .wapf-custom + .wapf-label-text {
  color: #FF4F00;      /* main label text goes orange */
}

/* And make sure the hint itself also inherits that color */
form.cart .wapf-field-container.wapf-field-checkboxes 
  .wapf-input:checked + .wapf-custom + .wapf-label-text 
  .wapf-pricing-hint {
  color: #FF4F00;      /* pricing hint turns orange too */
}

/* Center the Add to Cart button with minimal top gap */
form.cart .single_add_to_cart_button {
  display: block !important;
  margin: 10px auto 0 !important;  /* 10px above, auto left/right, 0 below */
}

/* Hide the APF grand-total heading entirely */
form.cart .wapf-product-totals .wapf--inner {
  display: none !important;
}

/* Hide pricing hints for radio options only */
form.cart .wapf-field-container.wapf-field-radio .wapf-pricing-hint {
  display: none !important;
}







/* Style the dynamic hint next to “Additional Pages” */
.toggle-additional-pages + span + .additional-pages-hint {
  margin-left: 8px;
  white-space: nowrap;
  font-weight: normal; /* match your other hints */
  color: #000;         /* will inherit orange when needed */
}
.toggle-additional-pages:checked + span + .additional-pages-hint {
  color: #FF4F00;
}


/* ——————————————————————————————— */
/* Align Additional Pages hint flush right */
/* ——————————————————————————————— */
form.cart .wapf-field-container.wapf-field-radio .wapf-field-label label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  box-sizing: border-box;
}

/* ——————————————————————————————— */
/* Style “Additional Pages” toggle like APF checkboxes */
/* ——————————————————————————————— */
form.cart .toggle-additional-pages {
  display: none !important;  /* hide the real checkbox */
}

form.cart .toggle-additional-pages + span {
  position: relative;
  padding-left: 28px;        /* 20px box + 8px gap before text */
  cursor: pointer;
}

/* draw the grey box behind the text */
form.cart .toggle-additional-pages + span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  border: 2px solid #ccc;
  border-radius: 4px;
  background-color: transparent;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* fill it orange when checked */
form.cart .toggle-additional-pages:checked + span::before {
  background-color: #FF4F00;
  border-color:     #FF4F00;
}

/* show a white ✓ inside when checked */
form.cart .toggle-additional-pages:checked + span::after {
  content: "✓";
  position: absolute;
  /* anchor inside the 20px box at left:0 of the span */
  left: 2px;                     /* (20px box − 16px tick)/2 ≈ 2px */
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
}/* End custom CSS */