.elementor-266 .elementor-element.elementor-element-1480c5f{--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:space-evenly;--align-items:center;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-266 .elementor-element.elementor-element-1b85143{text-align:center;}.elementor-266 .elementor-element.elementor-element-f5a56d9{--spacer-size:30px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-266 .elementor-element.elementor-element-a1f62f4{text-align:center;}.elementor-266 .elementor-element.elementor-element-a1f62f4 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:#061C42;}.elementor-266 .elementor-element.elementor-element-3764504{--spacer-size:20px;}.elementor-266 .elementor-element.elementor-element-d7b3a94{text-align:center;}.elementor-266 .elementor-element.elementor-element-d7b3a94 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:#061C42;}.elementor-266 .elementor-element.elementor-element-4e925ed{--spacer-size:20px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );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-266 .elementor-element.elementor-element-10acf72.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-266 .elementor-element.elementor-element-10acf72{font-family:"Roboto", Sans-serif;font-weight:500;color:var( --e-global-color-0f8dddc );}.elementor-266 .elementor-element.elementor-element-091959f{--spacer-size:20px;}.elementor-266 .elementor-element.elementor-element-5561cae{text-align:center;}.elementor-266 .elementor-element.elementor-element-5561cae .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:#061C42;}.elementor-266 .elementor-element.elementor-element-d9457f2{--spacer-size:20px;}.elementor-266 .elementor-element.elementor-element-6d17de1.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-266 .elementor-element.elementor-element-6d17de1{font-family:"Roboto", Sans-serif;font-weight:500;color:var( --e-global-color-0f8dddc );}.elementor-266 .elementor-element.elementor-element-7393c92{text-align:center;}.elementor-266 .elementor-element.elementor-element-7393c92 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:#061C42;}.elementor-266 .elementor-element.elementor-element-a56b67a{--spacer-size:20px;}.elementor-266 .elementor-element.elementor-element-ddc963d{text-align:center;}.elementor-266 .elementor-element.elementor-element-ddc963d .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:#061C42;}.elementor-266 .elementor-element.elementor-element-88da329{--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:3px 3px 3px 3px;--border-top-width:3px;--border-right-width:3px;--border-bottom-width:3px;--border-left-width:3px;border-color:#E5E5E5;--border-color:#E5E5E5;--border-radius:10px 10px 10px 10px;}.elementor-266 .elementor-element.elementor-element-88da329:not(.elementor-motion-effects-element-type-background), .elementor-266 .elementor-element.elementor-element-88da329 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAFAFA;}.elementor-266 .elementor-element.elementor-element-88da329.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-266 .elementor-element.elementor-element-b7536c9{--display:flex;--justify-content:space-evenly;--align-items:stretch;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--border-radius:10px 10px 10px 10px;}.elementor-266 .elementor-element.elementor-element-613c9d6{text-align:center;}.elementor-266 .elementor-element.elementor-element-613c9d6 .elementor-heading-title{font-family:"Baloo 2", Sans-serif;font-size:33.4px;font-weight:800;color:var( --e-global-color-0f8dddc );}.elementor-266 .elementor-element.elementor-element-6180d9f{--display:flex;--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:space-evenly;--align-items:stretch;--border-radius:10px 10px 10px 10px;--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-266 .elementor-element.elementor-element-692e6fb{--display:flex;--min-height:0px;--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:stretch;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--border-radius:10px 10px 10px 10px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:-70px;--padding-top:00px;--padding-bottom:00px;--padding-left:00px;--padding-right:00px;}.elementor-266 .elementor-element.elementor-element-692e6fb.e-con{--align-self:flex-start;--flex-grow:0;--flex-shrink:0;}.elementor-266 .elementor-element.elementor-element-2a71f47{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--border-radius:28px 28px 28px 28px;box-shadow:0px 14px 40px 0px rgba(0,0,0,0.5);--margin-top:10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-266 .elementor-element.elementor-element-2a71f47:not(.elementor-motion-effects-element-type-background), .elementor-266 .elementor-element.elementor-element-2a71f47 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(160deg, #EEF5FD 0%, #FFFFFF 100%);}.elementor-266 .elementor-element.elementor-element-2a71f47.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-266 .elementor-element.elementor-element-c3a6ac8{width:var( --container-widget-width, 78% );max-width:78%;--container-widget-width:78%;--container-widget-flex-grow:0;}.elementor-266 .elementor-element.elementor-element-282b8fa{--display:flex;--min-height:1215px;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:#E3ECF6;--border-color:#E3ECF6;--border-radius:28px 28px 28px 28px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:36px;--padding-bottom:36px;--padding-left:38px;--padding-right:38px;}.elementor-266 .elementor-element.elementor-element-282b8fa:not(.elementor-motion-effects-element-type-background), .elementor-266 .elementor-element.elementor-element-282b8fa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-widget-woocommerce-product-add-to-cart .added_to_cart{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-266 .elementor-element.elementor-element-2be17db{width:var( --container-widget-width, 94% );max-width:94%;--container-widget-width:94%;--container-widget-flex-grow:0;}.elementor-266 .elementor-element.elementor-element-2be17db .cart button, .elementor-266 .elementor-element.elementor-element-2be17db .cart .button{transition:all 0.2s;}.elementor-266 .elementor-element.elementor-element-2be17db .quantity .qty{transition:all 0.2s;}body.elementor-page-266:not(.elementor-motion-effects-element-type-background), body.elementor-page-266 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9FFFF6B;}@media(max-width:1024px){.elementor-266 .elementor-element.elementor-element-88da329{--border-radius:24px 24px 24px 24px;}.elementor-266 .elementor-element.elementor-element-692e6fb{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:-30px;}.elementor-266 .elementor-element.elementor-element-692e6fb.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-266 .elementor-element.elementor-element-c3a6ac8{--container-widget-width:168px;--container-widget-flex-grow:0;width:var( --container-widget-width, 168px );max-width:168px;}}@media(max-width:767px){.elementor-266 .elementor-element.elementor-element-692e6fb{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-266 .elementor-element.elementor-element-2a71f47{--min-height:141px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-266 .elementor-element.elementor-element-88da329{--width:90%;}.elementor-266 .elementor-element.elementor-element-692e6fb{--width:35%;}.elementor-266 .elementor-element.elementor-element-2a71f47{--width:91%;}.elementor-266 .elementor-element.elementor-element-282b8fa{--width:56%;}}@media(max-width:1024px) and (min-width:768px){.elementor-266 .elementor-element.elementor-element-692e6fb{--width:220.047px;}.elementor-266 .elementor-element.elementor-element-2a71f47{--width:188.781px;}}/* Start custom CSS for container, class: .elementor-element-1480c5f */final all css for tommorrow.
/* ═══════════════════════════════════════════════════════════════
   OMARA VoiceGuard — Color Swatches, Tabs & Hover FX
   Standalone file. Paste into Additional CSS after main styles.
═══════════════════════════════════════════════════════════════ */


/* ─── COLOUR DOTS (KeyGuard Colors) ─────────────────────────── */

/* Smooth base transition */
.wapf-swatch--color {
    cursor     : pointer;
    transition : transform 0.25s cubic-bezier(.34,1.56,.64,1) !important;
}
.wapf-swatch--color .wapf-color {
    position   : relative !important;
    transition : box-shadow 0.25s ease,
                 transform 0.25s cubic-bezier(.34,1.56,.64,1) !important;
}

/* Colour-matched glow — blurred copy of the dot behind itself */
.wapf-swatch--color .wapf-color::after {
    content       : "" !important;
    position      : absolute !important;
    inset         : 0 !important;
    border-radius : 50% !important;
    background    : inherit !important;
    filter        : blur(12px) !important;
    opacity       : 0 !important;
    z-index       : -1 !important;
    transition    : opacity 0.3s ease !important;
    pointer-events: none !important;
}

/* HOVER — pop up + glow in its own colour */
.wapf-swatch--color:hover .wapf-color {
    transform  : scale(1.2)  !important;
    box-shadow : 0 0 0 2px #fff,
                 0 4px 14px rgba(0,0,0,.18) !important;
}
.wapf-swatch--color:hover .wapf-color::after {
    opacity : 0.55 !important;
}

/* Hover label */
.wapf-swatch--color:hover .wapf-swatch-label {
    color       : #112a45 !important;
    font-weight : 800     !important;
}

/* SELECTED — blue ring + white checkmark */
.wapf-swatch--color.wapf-checked .wapf-color {
    box-shadow : 0 0 0 3px #2f80d8,
                 0 0 0 5px rgba(47,128,216,.20) !important;
    transform  : scale(1.08) !important;
}
.wapf-swatch--color.wapf-checked .wapf-color::after {
    opacity : 0.35 !important;  /* subtle glow when selected */
}

/* Checkmark inside selected dot */
.wapf-swatch--color.wapf-checked .wapf-color::before {
    content       : "" !important;
    position      : absolute !important;
    top           : 50% !important;
    left          : 50% !important;
    width         : 7px !important;
    height        : 13px !important;
    border-right  : 2.5px solid #fff !important;
    border-bottom : 2.5px solid #fff !important;
    transform     : translate(-50%,-60%) rotate(40deg) !important;
    z-index       : 2 !important;
    filter        : drop-shadow(0 1px 2px rgba(0,0,0,.35)) !important;
}
/* Override checkmark to dark on light swatches (White, Yellow) */
.wapf-swatch--color.wapf-checked .wapf-color[style*="rgb(255"],
.wapf-swatch--color.wapf-checked .wapf-color[style*="#fff"],
.wapf-swatch--color.wapf-checked .wapf-color[style*="#FFF"],
.wapf-swatch--color.wapf-checked .wapf-color[style*="yellow"],
.wapf-swatch--color.wapf-checked .wapf-color[style*="#f4c020"],
.wapf-swatch--color.wapf-checked .wapf-color[style*="#F4C020"] {
    box-shadow : 0 0 0 3px #2f80d8,
                 0 0 0 5px rgba(47,128,216,.20) !important;
}
.wapf-swatch--color.wapf-checked .wapf-color[style*="rgb(255"]::before,
.wapf-swatch--color.wapf-checked .wapf-color[style*="#fff"]::before,
.wapf-swatch--color.wapf-checked .wapf-color[style*="#FFF"]::before {
    border-color : #112a45 !important;
    filter       : none    !important;
}

/* Selected label */
.wapf-swatch--color.wapf-checked .wapf-swatch-label {
    color       : #2f80d8 !important;
    font-weight : 800     !important;
}


/* ─── CASE COLOUR IMAGE TILES ───────────────────────────────── */

.wapf-swatch--image {
    transition : transform 0.22s ease, box-shadow 0.22s ease !important;
    cursor     : pointer !important;
}

/* Hover — lift + shadow */
.wapf-swatch--image:hover {
    transform  : translateY(-4px) !important;
    box-shadow : 0 8px 24px rgba(17,42,69,.14) !important;
}
.wapf-swatch--image:hover .apf-pick-box,
.wapf-swatch--image:hover.apf-pick-box {
    border-color : #2f80d8 !important;
}

/* Selected — ring + subtle lift */
.wapf-swatch--image.wapf-checked {
    transform : translateY(-2px) !important;
}

/* Hover label */
.wapf-swatch--image:hover .wapf-swatch-label {
    color : #2f80d8 !important;
}


/* ─── TEXT SWATCH TABS (KeyGuard Modifications) ─────────────── */

.wapf-swatch--text {
    transition : border-color 0.2s, background 0.2s,
                 transform 0.2s, box-shadow 0.2s !important;
    cursor     : pointer !important;
}

/* Hover — border blue, soft tint, slight lift */
.wapf-swatch--text:hover {
    --apf-ts-border : 1.5px solid #2f80d8;
    --apf-ts-bg     : rgba(47,128,216,.05);
    transform       : translateY(-2px) !important;
    box-shadow      : 0 4px 12px rgba(47,128,216,.12) !important;
}
.wapf-swatch--text:hover label {
    color : #112a45 !important;
}

/* Selected — blue border, tint, ring */
.wapf-swatch--text.wapf-checked {
    --apf-ts-border : 1.5px solid #2f80d8;
    --apf-ts-bg     : rgba(47,128,216,.07);
    --apf-ts-color  : #112a45;
    box-shadow      : 0 0 0 3px rgba(47,128,216,.16) !important;
    transform       : translateY(-1px) !important;
}
.wapf-swatch--text.wapf-checked label {
    color       : #112a45 !important;
    font-weight : 800     !important;
}

/* Active press */
.wapf-swatch--text:active {
    transform : translateY(0) scale(0.97) !important;
}


/* ─── TOGGLE SWITCH FX ──────────────────────────────────────── */

.wapf-switch .wapf-custom {
    transition : background 0.25s ease, box-shadow 0.25s ease !important;
}
.wapf-switch:hover .wapf-custom {
    box-shadow : 0 0 0 4px rgba(212,225,240,.5) !important;
}
.wapf-switch.wapf-checked:hover .wapf-custom {
    box-shadow : 0 0 0 4px rgba(47,128,216,.22) !important;
}

/* ═══════════════════════════════════════════════════════════════
   FIX — Add to Cart button + Totals rows (match HTML exactly)
   Add this AFTER omara-remaining.css (or merge into it).
═══════════════════════════════════════════════════════════════ */

/* ─── Add to Cart — FULL WIDTH (was shrinking to text) ──────── */
.single_add_to_cart_button,
button.single_add_to_cart_button,
.woocommerce .single_add_to_cart_button,
.elementor-add-to-cart .single_add_to_cart_button {
    display        : block                                   !important;
    width          : 100%                                    !important;
    flex           : 1 0 100%                                !important;  /* stretch inside flex form */
    margin-top     : 22px                                    !important;
    padding        : 18px                                    !important;  /* HTML uses 18px all round */
    border         : none                                    !important;
    border-radius  : 16px                                    !important;  /* HTML uses 16px */
    background     : linear-gradient(180deg,#2f80d8,#2563c9) !important;
    box-shadow     : 0 14px 30px rgba(47,128,216,.40)        !important;
    font-family    : "Baloo 2", sans-serif                   !important;
    font-weight    : 800                                     !important;
    font-size      : 1.15rem                                 !important;
    letter-spacing : 0.03em                                  !important;
    text-transform : uppercase                               !important;
    color          : #ffffff                                 !important;
    cursor         : pointer                                 !important;
    text-align     : center                                  !important;
}
.single_add_to_cart_button:hover,
button.single_add_to_cart_button:hover {
    background : linear-gradient(180deg,#3d8de0,#2a6dd4) !important;
    color      : #ffffff                                 !important;
}

/* Make sure the cart form lets the button fill the row */
.single-product div.product form.cart {
    display : block !important;
    width   : 100%  !important;
}


/* ─── Totals rows — flex align (fix grand-total wrapping) ───── */
/* HTML puts label left + value right on ONE line, centred.
   WAPF uses float:right which drops the big 1.9rem value to a
   new line — switch the rows to flex so they stay inline.      */
.wapf-product-totals .wapf--inner > div {
    display         : flex            !important;
    justify-content : space-between   !important;
    align-items     : center          !important;
    padding-bottom  : 10px            !important;
}
.wapf-product-totals .wapf--inner > div span:last-child {
    float : none !important;   /* cancel WAPF float so flex controls it */
}

/* Row label + value typography */
.wapf-product-totals .wapf--inner > div span:first-child {
    font-family : "Nunito Sans", sans-serif !important;
    font-weight : 700                       !important;
    color       : #1c3a5e                   !important;
    font-size   : 1rem                      !important;
}
.wapf-product-totals .wapf--inner > div span:last-child {
    font-family : "Baloo 2", sans-serif !important;
    font-weight : 700                   !important;
    color       : #112a45               !important;
    font-size   : 1.15rem               !important;
}

/* Grand total — bigger label, big blue value, both on one line */
.wapf-grand-total {
    border-top  : 2px dashed #d4e1f0 !important;
    margin-top  : 6px                !important;
    padding-top : 16px               !important;
}
.wapf-grand-total span:first-child {
    font-family : "Baloo 2", sans-serif !important;
    font-size   : 1.2rem                !important;
    color       : #112a45               !important;
}
.wapf-grand-total span:last-child,
.wapf-grand-total .woocommerce-Price-amount {
    font-size : 1.9rem  !important;
    color     : #2f80d8 !important;
}
/* ═══════════════════════════════════════════════════════════════
   OMARA VoiceGuard — POLISH / FIXES
   Add this AFTER omara-remaining.css. Fixes the remaining
   small details visible in the latest screenshot.
═══════════════════════════════════════════════════════════════ */


/* ─── 1. Demo notice — force navy (stronger specificity) ─────── */
body .woocommerce-store-notice,
body p.demo_store,
p.demo_store.woocommerce-store-notice,
.woocommerce-store-notice.demo_store {
    background       : linear-gradient(90deg,#112a45,#1c3a5e) !important;
    background-color : #112a45 !important;
    color            : #dce8f6 !important;
    font-weight      : 600     !important;
}
body .woocommerce-store-notice a,
body p.demo_store a,
.woocommerce-store-notice__dismiss-link {
    color           : #ffffff   !important;
    text-decoration : underline !important;
}


/* ─── 2 + 3. STOP radio / checkbox label text from wrapping ──── */
/* The label is a flex row; the text span was shrinking to
   min-content ("iPad" / "7th/8th/9th" / "Gen"). Let it grow.   */
.wapf-radio label,
.wapf-checkbox label {
    width        : 100%   !important;
    flex-wrap    : nowrap !important;
    column-gap   : 10px   !important;
}
.wapf-radio label .wapf-label-text,
.wapf-checkbox label .wapf-label-text,
.wapf-radio label .wapf-input-label,
.wapf-checkbox label .wapf-input-label {
    flex        : 1 0 auto !important;   /* grow, never shrink → no wrap */
    text-align  : left     !important;
    line-height : 1.4       !important;
}


/* ─── 4. Custom radio dot / checkbox box — keep fixed + blue ─── */
.wapf-radio .wapf-custom,
.wapf-checkbox .wapf-custom {
    flex        : 0 0 auto !important;   /* never shrink the control */
    margin-top  : 0        !important;
}

/* radio dot: grey ring default, blue fill when selected */
.wapf-radio {
    --apf-radio-border           : 2px solid #d4e1f0;
    --apf-radio-bg-sel           : #2f80d8;
    --apf-radio-border-color-sel : #2f80d8;
}
/* checkbox box: grey default, blue fill + white tick when checked */
.wapf-checkbox {
    --apf-cb-border : 2px solid #d4e1f0;
    --apf-cb-radius : 6px;
}
.wapf-checkbox input[type="checkbox"]:checked + .wapf-custom {
    background-color : #2f80d8 !important;
    border-color     : #2f80d8 !important;
}


/* ─── 5. Text swatches (KeyGuard Modifications) — chip styling ── */
.wapf-field-group .wapf-swatch--text {
    --apf-ts-radius : 12px;
    --apf-ts-border : 1.5px solid #d4e1f0;
    --apf-ts-color  : #2c3e50;
    --apf-ts-bg     : #ffffff;
}
.wapf-swatch--text label {
    font-family : "Nunito Sans", sans-serif !important;
    font-weight : 700                       !important;
    padding     : 10px 16px                 !important;
}
.wapf-swatch--text.wapf-checked {
    border-color     : #2f80d8                        !important;
    background       : rgba(47,128,216,.07)           !important;
    box-shadow       : 0 0 0 3px rgba(47,128,216,.16) !important;
    --apf-ts-color   : #112a45;
}


/* ─── 6. Pricing hint — green (covers inside checkbox label) ─── */
.wapf-pricing-hint,
.wapf-label-text .wapf-pricing-hint,
.wapf-checkbox .wapf-pricing-hint {
    color       : #5fb85b !important;
    font-weight : 800     !important;
    opacity     : 1       !important;
}


/* ─── 7. Totals card — make the gradient card + border show ──── */
.wapf-product-totals {
    background    : linear-gradient(165deg,#f6faff,#eaf2fc) !important;
    border        : 1px solid #d4e1f0                       !important;
    border-radius : 18px                                     !important;
    padding       : 22px 24px                               !important;
    margin-top    : 24px                                     !important;
}
.wapf-product-totals .wapf--inner {
    margin-bottom : 0 !important;
}

/* ── Case Color tiles → 2 columns on tablet/mobile ── */
@media (max-width: 768px) {
    .wapf-image-swatch-wrapper {
        grid-template-columns : repeat(2, 1fr) !important;
        gap                   : 10px           !important;
    }
}

/* ── KeyGuard Color dots → 3 columns on mobile ── */
/* 6 dots × 48px + gaps overflows a phone screen */
@media (max-width: 480px) {
    .wapf-field-color-swatch .wapf--inner {
        grid-template-columns : repeat(3, 1fr) !important;
        gap                   : 10px           !important;
    }
    .wapf-swatch--color .wapf-color {
        width  : 42px !important;
        height : 42px !important;
    }
}

/* ── Checkbox label — definitive mobile fix ── */

.wapf-checkbox label {
    display        : flex       !important;
    flex-direction : row        !important;  /* explicitly row, not column */
    flex-wrap      : nowrap     !important;
    align-items    : flex-start !important;
    width          : 100%       !important;
    box-sizing     : border-box !important;
}

/* Checkbox box: locked to its own size, never grows or shrinks */
.wapf-checkbox .wapf-custom {
    flex-grow   : 0     !important;
    flex-shrink : 0     !important;
    width       : 22px  !important;
    height      : 22px  !important;
    margin-top  : 2px   !important;
}

/* Text: fills ALL remaining space, wraps naturally at word breaks */
.wapf-checkbox label .wapf-label-text {
    display      : block    !important;
    flex-grow    : 1        !important;
    flex-shrink  : 1        !important;
    flex-basis   : 0%       !important;  /* 0% not 0 — fixes browser interpretation */
    min-width    : 0        !important;
    max-width    : 100%     !important;
    word-break   : normal   !important;
    overflow-wrap: anywhere !important;
    line-height  : 1.5      !important;
}/* End custom CSS */
/* Start custom CSS for woocommerce-product-add-to-cart, class: .elementor-element-2be17db */.wapf-field-label label {
    
    font-size: 1.3rem;
    font-weight: 800;
    margin: 0 0 14px;
}
.wapf-checkbox label, .wapf-radio label {
    display: flex;
    align-items: center;
    padding: 8px 10px;
    display: flex;
    
    align-items: center;
  
   
    border: 1.5px solid var(--line-2);
    border-radius: 14px;

    margin-bottom: 10px;
    font-weight: 700;
   
    transition: .18s;
   
    background-color: rgba(47,128,216,.07);
    border-color: #2f80d8 !important;
    box-shadow:rgba(47, 128, 216, 0.18) 0px 0px 0px 4px;
    border: 1.5px solid;
    
}/* End custom CSS */
/* Start custom CSS *//* Entire Elementor Single Product Template */
.elementor-location-single,
.elementor-location-single * {
    font-family: "Baloo 2", sans-serif !important;
}/* End custom CSS */