/* ==============================================================
   IPTV Halloween Offer — checkout skin (client 2026-10-23)
   Loaded only on the CartFlows steps whose slug starts with
   "halloween-" (clones of the Standard / Premium checkouts, same
   Elementor structure, same custom script, same "polish v3" CSS
   in the page settings). Everything here outranks that polish and
   the Elementor per-element colours with body.idc-hw-checkout.
   Palette = the landing page: night #05060f / panels #0c0e20 /
   orange #ff7a1a #ff9a4a / red #e11d2e / ink #1a0a02.
   Element ids (d34756e…) are the ones copied from the source
   steps; they survive the clone.
   ============================================================== */

/* ---------- 0. canvas ---------- */
body.idc-hw-checkout.cartflows_step-template { background: radial-gradient(60% 40% at 82% 0%, rgba(255, 122, 26, .16), transparent 70%), radial-gradient(40% 40% at 0% 100%, rgba(225, 29, 46, .12), transparent 70%), #05060f !important; color: #c9cbe3; }
body.idc-hw-checkout ::selection { background: rgba(255, 122, 26, .4); color: #fff; }

/* ---------- 1. top strip: logo, steps, "secured" pill, campaign ribbon ---------- */
body.idc-hw-checkout .elementor-element-d34756e { background: rgba(5, 6, 15, .9) !important; border-color: rgba(255, 122, 26, .25) !important; -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
body.idc-hw-checkout .idc-hw-logo img { height: 36px; width: auto; }
body.idc-hw-checkout .elementor-element-d34756e .elementor-icon-list-text, body.idc-hw-checkout .elementor-element-d34756e .elementor-icon-list-icon i { color: #7d82a3 !important; }
body.idc-hw-checkout .elementor-element-d34756e .elementor-widget-divider .elementor-divider-separator { border-color: rgba(255, 255, 255, .14) !important; }
body.idc-hw-checkout .elementor-widget-icon-list:has(.fa-dot-circle) .elementor-icon-list-icon i, body.idc-hw-checkout .elementor-widget-icon-list:has(.fa-dot-circle) .elementor-icon-list-text { color: #ff9a4a !important; font-weight: 700; }
body.idc-hw-checkout .elementor-widget-icon-list:has(.fa-lock) { background-color: rgba(255, 122, 26, .12) !important; border-color: rgba(255, 122, 26, .45) !important; }
body.idc-hw-checkout .elementor-widget-icon-list:has(.fa-lock) .elementor-icon-list-icon i, body.idc-hw-checkout .elementor-widget-icon-list:has(.fa-lock) .elementor-icon-list-text { color: #ff9a4a !important; }
/* campaign ribbon: a block before everything else on the page, so the Elementor strip keeps its own flex layout */
body.idc-hw-checkout::before { content: "\1F383  IPTV Halloween Offer \00B7 \2212 20% already applied to every plan \00B7 ends October 31"; display: block; width: 100%; padding: 8px 16px; text-align: center; font: 700 12.5px/1.4 Inter, "Rubik", sans-serif; letter-spacing: .02em; color: #ffc08a; background: linear-gradient(90deg, rgba(225, 29, 46, .18), rgba(255, 122, 26, .18), rgba(225, 29, 46, .18)); border-bottom: 1px solid rgba(255, 122, 26, .3); }

/* ---------- 2. the two columns ---------- */
body.idc-hw-checkout .elementor-element-641a377 { border-color: rgba(255, 255, 255, .08) !important; }
body.idc-hw-checkout .elementor-element-fd674b3 { position: relative; overflow: hidden; background: radial-gradient(50% 30% at 100% 0%, rgba(255, 214, 150, .12), transparent 70%), #0a0c1c !important; }
/* the moon and three bats, CSS only */
body.idc-hw-checkout .elementor-element-fd674b3::before { content: ""; position: absolute; right: -70px; top: -90px; width: 240px; height: 240px; border-radius: 50%; background: radial-gradient(circle at 38% 35%, #fff7e4, #f0dcb0 55%, #cdb07a); box-shadow: 0 0 90px 24px rgba(255, 214, 150, .18); opacity: .95; pointer-events: none; }
body.idc-hw-checkout .elementor-element-fd674b3::after { content: ""; position: absolute; right: 40px; top: 40px; width: 190px; height: 70px; pointer-events: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 190 70'%3E%3Cg fill='%2305060f'%3E%3Cpath d='M0 20 Q10 10 20 18 Q25 12 30 18 Q35 12 40 18 Q50 10 60 20 Q50 18 45 24 Q40 20 35 26 L30 22 L25 26 Q20 20 15 24 Q10 18 0 20Z'/%3E%3Cpath transform='translate(80 0) scale(.7)' d='M0 20 Q10 10 20 18 Q25 12 30 18 Q35 12 40 18 Q50 10 60 20 Q50 18 45 24 Q40 20 35 26 L30 22 L25 26 Q20 20 15 24 Q10 18 0 20Z'/%3E%3Cpath transform='translate(130 36) scale(.55)' d='M0 20 Q10 10 20 18 Q25 12 30 18 Q35 12 40 18 Q50 10 60 20 Q50 18 45 24 Q40 20 35 26 L30 22 L25 26 Q20 20 15 24 Q10 18 0 20Z'/%3E%3C/g%3E%3C/svg%3E") no-repeat; animation: idc-hw-bats 5s ease-in-out infinite; }
@keyframes idc-hw-bats { 0%, 100% { transform: translate(0, 0); } 50% { transform: translate(-14px, -10px); } }
body.idc-hw-checkout .elementor-element-fd674b3 > .elementor-element { position: relative; z-index: 1; }

/* ---------- 3. checkout form tokens + section headings ---------- */
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout { --wcf-primary-color: #ff7a1a !important; --wcf-heading-color: #ffffff; --wcf-text-color: #c9cbe3; --wcf-link-color: #ff9a4a; --wcf-payment-section-bg-color: #0c0e20; color: #c9cbe3; }
body.idc-hw-checkout .wcf-embed-checkout-form #customer_information_heading, body.idc-hw-checkout .wcf-embed-checkout-form #billing_fields_heading, body.idc-hw-checkout .wcf-embed-checkout-form #your_products_heading, body.idc-hw-checkout .wcf-embed-checkout-form #order_review_heading, body.idc-hw-checkout .wcf-embed-checkout-form #payment_options_heading, body.idc-hw-checkout .wcf-embed-checkout-form h3, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce-additional-fields h3 { color: #fff !important; }
body.idc-hw-checkout .wcf-embed-checkout-form #customer_information_heading::before, body.idc-hw-checkout .wcf-embed-checkout-form #billing_fields_heading::before, body.idc-hw-checkout .wcf-embed-checkout-form #your_products_heading::before, body.idc-hw-checkout .wcf-embed-checkout-form #order_review_heading::before, body.idc-hw-checkout .wcf-embed-checkout-form #payment_options_heading::before { background: linear-gradient(180deg, #ff7a1a 50%, #e11d2e 50%); }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce p, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce span, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce td, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce th { color: inherit; }
body.idc-hw-checkout .wcf-embed-checkout-form a { color: #ff9a4a; }

/* ---------- 4. your products ---------- */
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-product-option-wrap { background: #0c0e20; border-color: rgba(255, 255, 255, .1); box-shadow: 0 30px 60px -40px rgba(0, 0, 0, .9); }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-options { scrollbar-color: rgba(255, 122, 26, .5) transparent; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-options::-webkit-scrollbar-thumb { background: rgba(255, 122, 26, .5); }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row { background: #0a0c1c; border-color: rgba(255, 255, 255, .12); }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row:hover { border-color: rgba(255, 122, 26, .55); box-shadow: 0 3px 14px rgba(255, 122, 26, .12); }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row.wcf-item-selected, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row:has(input[type="radio"]:checked) { border-color: #ff7a1a; background: linear-gradient(0deg, rgba(255, 122, 26, .1), rgba(255, 122, 26, .1)), #0a0c1c; box-shadow: 0 0 0 3px rgba(255, 122, 26, .22), 0 0 30px -6px rgba(255, 122, 26, .45); }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row input[type="radio"] { accent-color: #ff7a1a; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-display-title { color: #fff; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-att-inner { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .12); color: #c9cbe3; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row.wcf-item-selected .wcf-att-inner, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row:has(input[type="radio"]:checked) .wcf-att-inner { background: #ff7a1a; border-color: #ff7a1a; color: #1a0a02; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .wcf-display-price .woocommerce-Price-amount { color: #fff; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row.wcf-item-selected .wcf-display-price .woocommerce-Price-amount, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row:has(input[type="radio"]:checked) .wcf-display-price .woocommerce-Price-amount { color: #ff9a4a; }

/* ---------- 5. fields ---------- */
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row input.input-text, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row select, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row textarea, body.idc-hw-checkout .wcf-embed-checkout-form .select2-container .select2-selection--single { border-color: rgba(255, 255, 255, .14); background: #0a0c1c; color: #fff; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row input.input-text::placeholder, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row textarea::placeholder { color: rgba(255, 255, 255, .45); }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row select option { background: #0a0c1c; color: #fff; }
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce form .form-row input.input-text:focus, body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce form .form-row textarea:focus, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row select:focus { border-color: #ff7a1a; box-shadow: 0 0 0 3px rgba(255, 122, 26, .22) !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row label, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row label span { color: #a3a8c6; }
body.idc-hw-checkout .wcf-embed-checkout-form .select2-container .select2-selection--single .select2-selection__rendered { color: #fff; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row.woocommerce-invalid input.input-text { border-color: #e11d2e; box-shadow: 0 0 0 3px rgba(225, 29, 46, .18); }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-logged-in-customer-info { background: rgba(255, 122, 26, .1); color: #ffd2b0; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-customer-info__notice, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce-additional-fields .wcf-order-notes-toggle, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce-additional-fields a { color: #c9cbe3; }

/* ---------- 6. order review, coupon, payment, the button ---------- */
body.idc-hw-checkout .wcf-embed-checkout-form #order_review { background: #0c0e20; border-color: rgba(255, 255, 255, .1); box-shadow: 0 30px 60px -40px rgba(0, 0, 0, .9); }
body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table th, body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table td { border-color: rgba(255, 255, 255, .08); color: #e6e8f5; }
body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table tr.order-total th { color: #fff; }
body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table tr.order-total .woocommerce-Price-amount { color: #ff9a4a; }
body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table tr.cart-discount th, body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table tr.cart-discount td { color: #ffc08a; }
body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table tr.cart-discount .woocommerce-remove-coupon { color: #8a8fb0; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-collapsed-order-review-section { background: #0c0e20; border-color: rgba(255, 255, 255, .1); }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-order-review-toggle-text { color: #ff9a4a; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-order-review-total { color: #fff; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-custom-coupon-field input.wcf-coupon-code-input { background: #0a0c1c; border-color: rgba(255, 255, 255, .14); color: #fff; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-custom-coupon-field button.wcf-submit-coupon { background: linear-gradient(180deg, #ff9a4a, #ff7a1a) !important; border-color: #ff7a1a !important; color: #1a0a02 !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-custom-coupon-field button.wcf-submit-coupon:hover { background: #ff7a1a !important; border-color: #ff7a1a !important; }
body.idc-hw-checkout .wcf-embed-checkout-form #payment { background: #0c0e20; border: 1px solid rgba(255, 255, 255, .1); }
body.idc-hw-checkout .wcf-embed-checkout-form #payment ul.payment_methods li label { color: #fff; }
body.idc-hw-checkout .wcf-embed-checkout-form #payment .payment_box { background: #0a0c1c; color: #c9cbe3; }
body.idc-hw-checkout .wcf-embed-checkout-form #payment .woocommerce-notice, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce-NoticeGroup .woocommerce-info { background: rgba(255, 122, 26, .1); color: #ffd2b0; border-color: rgba(255, 122, 26, .3); }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce-privacy-policy-text p { color: #8a8fb0; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce-privacy-policy-text a { color: #ff9a4a; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce #payment #place_order { background: linear-gradient(180deg, #ff9a4a, #ff7a1a) !important; border-color: #ff7a1a !important; color: #1a0a02 !important; border-radius: 999px; box-shadow: 0 14px 40px rgba(255, 122, 26, .4); animation: idc-hw-pulse 2.2s ease-in-out infinite; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce #payment #place_order:hover { background: #ff7a1a !important; border-color: #ff7a1a !important; box-shadow: 0 18px 50px rgba(255, 122, 26, .55); }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce #payment #place_order:before { color: #1a0a02; }
@keyframes idc-hw-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(255, 122, 26, .55), 0 14px 40px rgba(255, 122, 26, .4); } 50% { box-shadow: 0 0 0 12px rgba(255, 122, 26, 0), 0 14px 50px rgba(255, 122, 26, .55); } }
body.idc-hw-checkout .wcf-embed-checkout-form #payment .place-order::after { content: "\1F512 Secure checkout \00B7 instant activation by e-mail \00B7 7-day money-back guarantee \00B7 \2212 20% already applied"; color: #8a8fb0; }

/* 6b. things CartFlows paints with its own (important) dynamic CSS: order table text, the skeleton while payment loads, the
   collapsed summary bar on phones, the "coupon applied" notice */
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce table.shop_table :is(th, td, td a, .product-name, .product-quantity, .product-total, .cart-subtotal th, .cart-subtotal td, .woocommerce-Price-amount) { color: #e6e8f5 !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce table.shop_table tr.order-total .woocommerce-Price-amount { color: #ff9a4a !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce table.shop_table tr.cart-discount :is(th, td, .woocommerce-Price-amount) { color: #ffc08a !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce table.shop_table tr.cart-discount a { color: #8a8fb0 !important; }
body.idc-hw-checkout .wcf-embed-checkout-form #payment .wcf-payment-option-loading, body.idc-hw-checkout .wcf-embed-checkout-form #payment [class*="skeleton"], body.idc-hw-checkout .wcf-embed-checkout-form #payment .blockOverlay, body.idc-hw-checkout .wcf-embed-checkout-form #payment ul.payment_methods { background: #0c0e20 !important; }
body.idc-hw-checkout .wcf-embed-checkout-form #payment [class*="skeleton"] * { background: rgba(255, 255, 255, .08) !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-collapsed-order-review-section, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-order-review-toggle, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-order-review-toggle-button-wrap { background: #0c0e20 !important; border-color: rgba(255, 255, 255, .1) !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-order-review-toggle-text, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-order-review-toggle-button { color: #ff9a4a !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-order-review-total { color: #fff !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce-message, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce-info, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-alert-success { color: #ffd2b0 !important; background: rgba(255, 122, 26, .08) !important; border-color: rgba(255, 122, 26, .3) !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce-error { color: #ffb4bd !important; background: rgba(225, 29, 46, .12) !important; border-color: rgba(225, 29, 46, .4) !important; }

/* 6c. what CartFlows / WooCommerce still paint white or grey (client 2026-10-23 review): the option list container, the rows, the
   order table and its header, the AJAX block overlay; labels and row titles set in grey by the plugin */
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-options, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-product-option-wrap, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-product-option-wrap .wcf-qty-options { background: transparent !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row { background: #0a0c1c !important; border-color: rgba(255, 255, 255, .12) !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row.wcf-item-selected, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row:has(input[type="radio"]:checked) { background: linear-gradient(0deg, rgba(255, 122, 26, .12), rgba(255, 122, 26, .12)), #0a0c1c !important; border-color: #ff7a1a !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-display-title, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-item-product-label, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-display-quantity { color: #fff !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row:not(.wcf-item-selected):not(:has(input:checked)) .wcf-att-inner { color: #c9cbe3 !important; background: rgba(255, 255, 255, .07) !important; border-color: rgba(255, 255, 255, .14) !important; }
body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table, body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table thead, body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table tbody, body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table tfoot, body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table tr, body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table th, body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table td { background: transparent !important; }
body.idc-hw-checkout .wcf-embed-checkout-form table.shop_table thead th { color: #a3a8c6 !important; }
body.idc-hw-checkout .blockUI.blockOverlay, body.idc-hw-checkout .wcf-embed-checkout-form .blockUI.blockOverlay { background: #05060f !important; background-color: #05060f !important; opacity: .6 !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row label, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row label.required_field, body.idc-hw-checkout .wcf-embed-checkout-form label { color: #a3a8c6 !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row label .required, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row label abbr { color: #ff6a6a !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row input.input-text, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row select, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce form .form-row textarea { background-color: #0a0c1c !important; color: #fff !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-product-image img, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-product-thumbnail img { background: transparent; border-radius: 10px; }
body.idc-hw-checkout .elementor-element-0501ed5 .elementor-heading-title { color: #8a8fb0 !important; }

/* 6d. loading state (client 2026-10-23): CartFlows covers the order table, the payment box and the product list with a white
   overlay carrying light skeleton images while WooCommerce refreshes. Same night here: dark veil, orange spinner, no skeleton image.
   Selectors mirror CartFlows' own (same importance), with body.idc-hw-checkout on top to win. */
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .blockUI.blockOverlay,
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout table.shop_table .blockUI.blockOverlay,
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce-checkout-payment .blockUI.blockOverlay,
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .wcf-product-option-wrap .blockUI.blockOverlay,
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .wcf-bump-order-wrap .blockUI.blockOverlay { background: rgba(5, 6, 15, .82) !important; background-color: rgba(5, 6, 15, .82) !important; opacity: 1 !important; border-color: rgba(255, 122, 26, .3) !important; border-radius: 12px !important; }
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce .blockUI.blockOverlay::before,
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce table.shop_table .blockUI.blockOverlay::before,
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce-checkout-payment .blockUI.blockOverlay::before,
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce .wcf-product-option-wrap .blockUI.blockOverlay::before,
body.idc-hw-checkout .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce .wcf-bump-order-wrap .blockUI.blockOverlay::before { content: "" !important; background: none !important; background-image: none !important; width: 28px !important; height: 28px !important; top: 50% !important; left: 50% !important; margin: -14px 0 0 -14px !important; border: 3px solid rgba(255, 122, 26, .25) !important; border-top-color: #ff7a1a !important; border-radius: 50% !important; animation: idc-hw-spin .9s linear infinite !important; }
@keyframes idc-hw-spin { to { transform: rotate(360deg); } }

/* 6e. the country / region drop-down (select2 draws it at the end of <body>, outside the form) */
body.idc-hw-checkout .select2-container--default .select2-selection--single, body.idc-hw-checkout .select2-container .select2-selection--single { background: #0a0c1c !important; border-color: rgba(255, 255, 255, .14) !important; }
body.idc-hw-checkout .select2-container--default .select2-selection--single .select2-selection__rendered { color: #fff !important; }
body.idc-hw-checkout .select2-container--default .select2-selection--single .select2-selection__arrow b { border-top-color: #ff9a4a !important; }
body.idc-hw-checkout .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b { border-bottom-color: #ff9a4a !important; }
body.idc-hw-checkout .select2-dropdown { background: #0c0e20 !important; border: 1px solid rgba(255, 122, 26, .35) !important; border-radius: 12px !important; box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .95); overflow: hidden; }
body.idc-hw-checkout .select2-search--dropdown { padding: 8px; }
body.idc-hw-checkout .select2-search--dropdown .select2-search__field { background: #0a0c1c !important; border: 1px solid rgba(255, 255, 255, .14) !important; border-radius: 8px !important; color: #fff !important; }
body.idc-hw-checkout .select2-results__option, body.idc-hw-checkout .select2-results__option[role="option"] { color: #e6e8f5 !important; background: transparent !important; }
body.idc-hw-checkout .select2-results__option--highlighted, body.idc-hw-checkout .select2-results__option--highlighted[aria-selected], body.idc-hw-checkout .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable { background: rgba(255, 122, 26, .22) !important; color: #fff !important; }
body.idc-hw-checkout .select2-results__option[aria-selected="true"], body.idc-hw-checkout .select2-results__option--selected { background: rgba(255, 122, 26, .12) !important; color: #ff9a4a !important; }
body.idc-hw-checkout .select2-results > .select2-results__options { scrollbar-color: rgba(255, 122, 26, .5) transparent; }
body.idc-hw-checkout .select2-results__option--disabled, body.idc-hw-checkout .select2-results__message { color: #8a8fb0 !important; }

/* 6f. row prices rewritten by assets/js/halloween-checkout.js: catalogue price struck, campaign price, −20% tag */
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .wcf-display-price { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: flex-end; gap: 4px 8px; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .idc-hw-was { font: 600 13px/1 Inter, "Rubik", sans-serif; color: #8a8fb0; text-decoration: line-through; text-decoration-color: rgba(255, 122, 26, .7); }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .idc-hw-now { font: 800 18px/1 Inter, "Rubik", sans-serif; color: #fff; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row.wcf-item-selected .idc-hw-now, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row:has(input[type="radio"]:checked) .idc-hw-now { color: #ff9a4a; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .idc-hw-tag { flex-basis: 100%; text-align: right; font: 800 10.5px/1 Inter, "Rubik", sans-serif; letter-spacing: .06em; color: #ff9a4a; }
@media (max-width: 768px) {
	body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .idc-hw-now { font-size: 16px; }
}

/* 6g. CartFlows step discount (client 2026-10-23, replaces the coupon): the rows print <del> catalogue / <ins> campaign price */
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .wcf-display-price del, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .wcf-display-price del .woocommerce-Price-amount { font: 600 13px/1 Inter, "Rubik", sans-serif !important; color: #8a8fb0 !important; text-decoration: line-through; text-decoration-color: rgba(255, 122, 26, .7); }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .wcf-display-price ins, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .wcf-display-price ins .woocommerce-Price-amount { font: 800 18px/1 Inter, "Rubik", sans-serif !important; color: #fff !important; text-decoration: none; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row.wcf-item-selected .wcf-display-price ins .woocommerce-Price-amount, body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row:has(input[type="radio"]:checked) .wcf-display-price ins .woocommerce-Price-amount { color: #ff9a4a !important; }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .wcf-display-price .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .wcf-display-price:has(ins)::after { content: "\2212 20%"; flex-basis: 100%; text-align: right; font: 800 10.5px/1 Inter, "Rubik", sans-serif; letter-spacing: .06em; color: #ff9a4a; }
@media (max-width: 768px) {
	body.idc-hw-checkout .wcf-embed-checkout-form .wcf-qty-row .wcf-display-price ins .woocommerce-Price-amount { font-size: 16px !important; }
}

/* ---------- 7. sidebar ---------- */
body.idc-hw-checkout .elementor-element-fd674b3 .elementor-image-box-title, body.idc-hw-checkout .elementor-element-fd674b3 .elementor-heading-title { color: #fff !important; }
body.idc-hw-checkout .elementor-element-fd674b3 .elementor-image-box-description { color: #c9cbe3 !important; }
body.idc-hw-checkout .elementor-element-fd674b3 .elementor-icon-list-icon i, body.idc-hw-checkout .elementor-element-fd674b3 .elementor-icon-list-icon svg { color: #ff9a4a !important; fill: #ff9a4a !important; }
body.idc-hw-checkout .elementor-element-fd674b3 .elementor-icon-list-text { color: #c9cbe3 !important; }
body.idc-hw-checkout .elementor-element-fd674b3 .elementor-divider-separator { border-color: rgba(255, 255, 255, .1) !important; }
body.idc-hw-checkout .elementor-widget-image-box:has(img[src*="guarantee"]) { background: #0c0e20 !important; border-color: rgba(255, 122, 26, .4) !important; box-shadow: 0 0 40px -12px rgba(255, 122, 26, .35); }
body.idc-hw-checkout .elementor-widget-image-box:has(img[src*="guarantee"]) .elementor-image-box-title { color: #fff !important; }
body.idc-hw-checkout .elementor-widget-image-box:has(img[src*="guarantee"]) .elementor-image-box-description { color: #a3a8c6 !important; }
body.idc-hw-checkout img[src*="subscription"] { filter: drop-shadow(0 18px 30px rgba(255, 122, 26, .3)); }

/* ---------- 8. footer strip ---------- */
body.idc-hw-checkout .elementor-element-0501ed5 { background: #05060f !important; border-color: rgba(255, 255, 255, .08) !important; }
body.idc-hw-checkout .elementor-element-0501ed5 .elementor-icon-list-text { color: #8a8fb0 !important; }
body.idc-hw-checkout .elementor-element-0501ed5 .elementor-icon-list-text:hover { color: #ff9a4a !important; }
body.idc-hw-checkout .elementor-element-0501ed5 .elementor-icon-list-icon i { color: #ff9a4a !important; }
body.idc-hw-checkout .elementor-element-0501ed5 .elementor-heading-title { color: #8a8fb0 !important; }

/* ---------- 9. thank-you step: same night, white text on the order card ---------- */
body.idc-hw-checkout .wcf-thankyou-wrap, body.idc-hw-checkout .woocommerce-order { color: #c9cbe3; }
body.idc-hw-checkout .woocommerce-order h2, body.idc-hw-checkout .woocommerce-order h3, body.idc-hw-checkout .woocommerce-thankyou-order-received, body.idc-hw-checkout .wcf-thankyou-wrap .elementor-heading-title { color: #fff !important; }
body.idc-hw-checkout .woocommerce-order .woocommerce-order-overview, body.idc-hw-checkout .woocommerce-order .woocommerce-order-details, body.idc-hw-checkout .woocommerce-order .woocommerce-customer-details { background: #0c0e20; border: 1px solid rgba(255, 255, 255, .1); border-radius: 14px; padding: 20px; }
body.idc-hw-checkout .woocommerce-order a { color: #ff9a4a; }

/* ---------- 9b. thank-you steps (sections/thank-you.php, prefix ty-): the same night as the checkout (client 2026-10-23) ---------- */
body.idc-hw-checkout.idc-thankyou { background: radial-gradient(60% 40% at 82% 0%, rgba(255, 122, 26, .16), transparent 70%), radial-gradient(40% 40% at 0% 100%, rgba(225, 29, 46, .12), transparent 70%), #05060f !important; }
body.idc-hw-checkout .ty { color: #c9cbe3; }
body.idc-hw-checkout .ty a { color: #ff9a4a; }
body.idc-hw-checkout .ty-bar { background: rgba(5, 6, 15, .9); border-bottom: 1px solid rgba(255, 122, 26, .25); }
body.idc-hw-checkout .ty-secure { background: rgba(255, 122, 26, .12); border-color: rgba(255, 122, 26, .45); color: #ff9a4a; }
body.idc-hw-checkout .ty-hero { background: radial-gradient(50% 60% at 50% 100%, rgba(255, 122, 26, .18), transparent 70%), linear-gradient(180deg, #0a0c1c, #05060f); }
body.idc-hw-checkout .ty-hero::before { left: auto; right: 6%; top: -120px; width: 300px; height: 300px; filter: none; opacity: 1; background: radial-gradient(circle at 38% 35%, #fff7e4, #f0dcb0 55%, #cdb07a); box-shadow: 0 0 100px 30px rgba(255, 214, 150, .16); }
body.idc-hw-checkout .ty-hero::after { left: 8%; right: auto; bottom: -220px; width: 520px; height: 420px; background: #ff7a1a; opacity: .14; filter: blur(90px); }
body.idc-hw-checkout .ty-hw-kicker { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 16px; padding: 8px 16px; border-radius: 999px; background: rgba(225, 29, 46, .16); border: 1px solid rgba(255, 90, 110, .5); color: #ffd1d6; font: 800 12px/1 var(--f-heading); letter-spacing: .16em; text-transform: uppercase; }
body.idc-hw-checkout .ty-check { background: linear-gradient(135deg, #ff9a4a, #ff7a1a 60%, #e8600f); box-shadow: 0 0 0 10px rgba(255, 122, 26, .16), 0 20px 50px rgba(255, 122, 26, .35); animation: idc-hw-pulse 2.2s ease-in-out infinite; }
body.idc-hw-checkout .ty-check svg { stroke: #1a0a02; }
html body.idc-hw-checkout .ty h1.ty-title { color: #fff; text-shadow: 0 2px 30px rgba(255, 122, 26, .25); }
html body.idc-hw-checkout .ty .ty-lede { color: #c9cbe3; }
body.idc-hw-checkout .ty-lede b { color: #ff9a4a; }
body.idc-hw-checkout .ty-card { background: #0c0e20; border-color: rgba(255, 255, 255, .1); box-shadow: 0 30px 60px -40px rgba(0, 0, 0, .9); }
html body.idc-hw-checkout .ty .ty-h2 { color: #fff; }
body.idc-hw-checkout .ty-steps li { background: #0a0c1c; border-color: rgba(255, 255, 255, .1); }
body.idc-hw-checkout .ty-steps__ico { background: rgba(255, 122, 26, .14); color: #ff9a4a; }
body.idc-hw-checkout .ty-steps__ico::after { background: #e11d2e; }
body.idc-hw-checkout .ty-steps b { color: #fff; }
html body.idc-hw-checkout .ty .ty-steps p { color: #c9cbe3; }
body.idc-hw-checkout .ty-steps a { color: #ff9a4a; }
body.idc-hw-checkout .ty a.ty-btn--red, body.idc-hw-checkout .ty-btn--red { color: #1a0a02; background: linear-gradient(180deg, #ff9a4a, #ff7a1a); box-shadow: 0 14px 40px rgba(255, 122, 26, .4); }
body.idc-hw-checkout .ty-btn--red i { background: #1a0a02; color: #ff9a4a; }
body.idc-hw-checkout .ty a.ty-btn--wa, body.idc-hw-checkout .ty-btn--wa { color: #fff; background: #e11d2e; border-color: #e11d2e; box-shadow: 0 14px 40px -10px rgba(225, 29, 46, .6); }
body.idc-hw-checkout .ty-btn--wa i { background: #fff; color: #e11d2e; }
body.idc-hw-checkout .ty a.ty-btn--red:hover { color: #1a0a02; } body.idc-hw-checkout .ty a.ty-btn--wa:hover { color: #fff; }
body.idc-hw-checkout .ty-sum dt, body.idc-hw-checkout .ty-items small, body.idc-hw-checkout .ty-foot { color: #8a8fb0; }
body.idc-hw-checkout .ty-sum dd, body.idc-hw-checkout .ty-items li { color: #e6e8f5; }
body.idc-hw-checkout .ty-items, body.idc-hw-checkout .ty-total { border-color: rgba(255, 255, 255, .1); }
body.idc-hw-checkout .ty-total { color: #fff; }
body.idc-hw-checkout .ty-total span:last-child, body.idc-hw-checkout .ty-total b { color: #ff9a4a; }
body.idc-hw-checkout .ty-note { background: rgba(255, 122, 26, .1); border-color: rgba(255, 122, 26, .35); color: #ffd2b0; }
body.idc-hw-checkout .ty-hooks, body.idc-hw-checkout .ty-hooks * { color: #c9cbe3; }
body.idc-hw-checkout .ty-foot a { color: #ff9a4a; }

@media (max-width: 900px) {
	body.idc-hw-checkout .ty-hero::before { right: -90px; top: -110px; width: 220px; height: 220px; }
}
@media (max-width: 575px) {
	body.idc-hw-checkout .ty-hero::before { right: -110px; top: -130px; width: 200px; height: 200px; opacity: .8; }
	body.idc-hw-checkout .ty-hw-kicker { font-size: 10.5px; letter-spacing: .12em; }
}

/* ---------- 10. mobile ---------- */
@media (max-width: 768px) {
	body.idc-hw-checkout::before { font-size: 11px; padding: 7px 12px; }
	body.idc-hw-checkout .elementor-element-fd674b3::before { width: 160px; height: 160px; right: -50px; top: -60px; }
	body.idc-hw-checkout .elementor-element-fd674b3::after { right: 16px; top: 20px; width: 130px; height: 48px; background-size: 130px 48px; }
}
@media (prefers-reduced-motion: reduce) {
	body.idc-hw-checkout .elementor-element-fd674b3::after, body.idc-hw-checkout .wcf-embed-checkout-form .woocommerce #payment #place_order { animation: none !important; }
}

/* ---------- 11. the product column's fright scene (client 2026-10-23), markup injected by halloween-checkout.js ----------
   Same cast as the landing page: lightning (11 s / 17 s cycles, overlay blend so the text stays readable), bolts, bats crossing,
   eyes blinking in the dark, fog, the ghoul rising from the column's bottom (padding reserved for it), a spider on a thread,
   and the torn witch hat on the pack, which trembles at each flash. The old bobbing bats (::after) are retired here. */
body.idc-hw-checkout .elementor-element-fd674b3::after { display: none; }
body.idc-hw-checkout .hwfx, body.idc-hw-checkout .hwfx > * { position: absolute; pointer-events: none; }
body.idc-hw-checkout .hwfx { inset: 0; z-index: 0; }
/* ghosts: same drawing as the landing page, each on its own slow loop (drift across, bob, fade in and out) in the dark above the graveyard */
body.idc-hw-checkout .hwfx-ghost { width: 84px; height: 103px; opacity: 0; filter: drop-shadow(0 0 14px rgba(200, 210, 255, .35)); animation: hwfx-ghost 14s ease-in-out infinite; }
body.idc-hw-checkout .hwfx-ghost--1 { left: 8%; bottom: 640px; }
body.idc-hw-checkout .hwfx-ghost--2 { right: 6%; bottom: 720px; width: 64px; height: 79px; animation-duration: 17s; animation-delay: -6s; animation-direction: reverse; }
body.idc-hw-checkout .hwfx-ghost--3 { left: 40%; bottom: 800px; width: 54px; height: 66px; animation-duration: 20s; animation-delay: -11s; }
/* around the pack, in the empty right half of the top (the pack image takes the left 70 %) */
body.idc-hw-checkout .hwfx-ghost--4 { right: 12%; top: 70px; width: 72px; height: 88px; animation-duration: 16s; animation-delay: -3s; animation-direction: reverse; }
body.idc-hw-checkout .hwfx-ghost--5 { right: 28%; top: 250px; width: 56px; height: 69px; animation-duration: 19s; animation-delay: -9s; }
body.idc-hw-checkout .hwfx-ghost--6 { right: 6%; top: 430px; width: 46px; height: 56px; animation-duration: 22s; animation-delay: -14s; animation-direction: reverse; }
body.idc-hw-checkout .hwfx-fog { left: -10%; right: -10%; bottom: -40px; height: 220px; background: radial-gradient(45% 80% at 30% 60%, rgba(170, 180, 230, .2), transparent 70%), radial-gradient(35% 70% at 75% 50%, rgba(170, 180, 230, .16), transparent 70%); filter: blur(14px); animation: hwfx-fog 10s ease-in-out infinite alternate; }
body.idc-hw-checkout .hwfx-eyes { display: flex; gap: 9px; animation: hwfx-blink 6s infinite; }
body.idc-hw-checkout .hwfx-eyes i { width: 13px; height: 7px; border-radius: 50%; background: #ff2d4a; box-shadow: 0 0 12px 3px rgba(255, 42, 60, .7); }
body.idc-hw-checkout .hwfx-eyes--1 { left: 6%; top: 300px; } body.idc-hw-checkout .hwfx-eyes--2 { right: 8%; top: 240px; animation-delay: 2.4s; transform: scale(.8); } body.idc-hw-checkout .hwfx-eyes--3 { right: 22%; bottom: 120px; animation-delay: 4s; transform: scale(.7); }
body.idc-hw-checkout .hwfx-eyes--2 i { background: #ffd23f; box-shadow: 0 0 12px 3px rgba(255, 210, 63, .6); }
body.idc-hw-checkout .hwfx-bat { left: -80px; color: #05060f; filter: drop-shadow(0 0 3px rgba(0, 0, 0, .9)); animation: hwfx-fly 9s linear infinite; }
body.idc-hw-checkout .hwfx-bat path { transform-origin: 50% 50%; animation: hwfx-flap .26s ease-in-out infinite alternate; }
body.idc-hw-checkout .hwfx-bat--1 { top: 60px; width: 60px; height: 18px; }
body.idc-hw-checkout .hwfx-bat--2 { top: 120px; width: 38px; height: 11px; animation-duration: 12s; animation-delay: -5s; }
body.idc-hw-checkout .hwfx-bat--3 { top: 90px; width: 46px; height: 14px; animation-duration: 10s; animation-delay: -8s; }
body.idc-hw-checkout .hwfx-bolt { width: 90px; height: 195px; opacity: 0; filter: drop-shadow(0 0 10px rgba(190, 205, 255, .9)) drop-shadow(0 0 28px rgba(140, 160, 255, .6)); animation: hwfx-bolt1 11s infinite; }
body.idc-hw-checkout .hwfx-bolt--1 { right: 4%; top: -10px; }
body.idc-hw-checkout .hwfx-bolt--2 { left: 2%; top: 20px; width: 60px; height: 130px; animation: hwfx-bolt2 17s infinite; animation-delay: -5s; }
body.idc-hw-checkout .hwfx-spider { top: 0; right: 10%; display: flex; flex-direction: column; align-items: center; animation: hwfx-descend 8s ease-in-out infinite; animation-delay: -3s; }
body.idc-hw-checkout .hwfx-thread { display: block; width: 1px; height: 170px; background: linear-gradient(rgba(220, 222, 240, 0), rgba(220, 222, 240, .6)); }
body.idc-hw-checkout .hwfx-spider svg { display: block; width: 34px; height: 34px; color: #0a0a12; }
body.idc-hw-checkout .hwfx-spider svg g { color: #c9cbe0; }
body.idc-hw-checkout .elementor-element-fd674b3 { padding-bottom: 580px !important; } /* the graveyard's room when the column is not stretched by the form (phones) */
body.idc-hw-checkout .elementor-element-fd674b3 > .hwfx-pit { position: absolute; left: 0; right: 0; bottom: 0; z-index: 1; height: 580px; overflow: hidden; pointer-events: none; } /* client 2026-10-23: at the very end of the column, edge to edge, not framed by the content padding */
body.idc-hw-checkout .hwfx-grave { position: absolute; left: 0; right: 0; bottom: 0; width: 100%; height: 220px; }
body.idc-hw-checkout .hwfx-horizon { position: absolute; left: -10%; right: -10%; bottom: 50px; height: 200px; background: radial-gradient(55% 100% at 50% 100%, rgba(130, 140, 210, .22), transparent 70%); filter: blur(16px); animation: hwfx-fog 12s ease-in-out infinite alternate; }
body.idc-hw-checkout .hwfx-ember { position: absolute; bottom: 70px; width: 4px; height: 4px; border-radius: 50%; background: #ffb062; box-shadow: 0 0 8px 2px rgba(255, 150, 60, .7); opacity: 0; animation: hwfx-ember 6s ease-out infinite; }
body.idc-hw-checkout .hwfx-ember--1 { left: 14%; } body.idc-hw-checkout .hwfx-ember--2 { left: 30%; animation-delay: -2s; animation-duration: 7s; } body.idc-hw-checkout .hwfx-ember--3 { left: 58%; animation-delay: -4s; } body.idc-hw-checkout .hwfx-ember--4 { left: 74%; animation-delay: -1s; animation-duration: 8s; } body.idc-hw-checkout .hwfx-ember--5 { left: 88%; animation-delay: -5s; }
body.idc-hw-checkout .hwfx-ghoul { position: absolute; left: 50%; bottom: 62px; width: 240px; height: 470px; margin-left: -120px; transform: translateY(118%); } /* feet on the mound's surface (ground top ≈ 60 viewBox units up, ×1.29) */ /* the whole skeleton (client 2026-10-23: pelvis, legs, feet), centred, standing on the strip's floor */
body.idc-hw-checkout .hwfx-in .hwfx-ghoul { animation: hwfx-up 1.6s cubic-bezier(.2, .9, .25, 1) both; } /* an animation, not a transition: it also runs in viewers that never paint a frame between the two states */
body.idc-hw-checkout .hwfx-ghoul svg { display: block; width: 100%; height: 100%; filter: drop-shadow(0 0 16px rgba(255, 45, 74, .25)) drop-shadow(0 12px 18px rgba(0, 0, 0, .9)); animation: hwfx-heave 3.4s ease-in-out infinite; }
body.idc-hw-checkout .hwfx-head { transform-origin: 120px 170px; animation: hwfx-headjerk 7s ease-in-out infinite; }
body.idc-hw-checkout .hwfx-jaw { transform-origin: 120px 150px; animation: hwfx-jaw 7s ease-in-out infinite; }
body.idc-hw-checkout .hwfx-glow { animation: hwfx-eyeglow 2.2s ease-in-out infinite; }
body.idc-hw-checkout .hwfx-arm-l { transform-origin: 62px 192px; animation: hwfx-clawarm 2.8s ease-in-out infinite; }
body.idc-hw-checkout .hwfx-claw { transform-origin: 48px 98px; animation: hwfx-clawhand 1.1s ease-in-out infinite alternate; }
body.idc-hw-checkout .hwfx-arm-r { transform-origin: 180px 194px; animation: hwfx-clawarm 2.8s ease-in-out infinite reverse; animation-delay: -1.1s; }
body.idc-hw-checkout .hwfx-leg-l { transform-origin: 102px 350px; animation: hwfx-knee 3.4s ease-in-out infinite; }
body.idc-hw-checkout .hwfx-leg-r { transform-origin: 138px 350px; animation: hwfx-knee 3.4s ease-in-out infinite reverse; }
body.idc-hw-checkout .hwfx-claw--r { transform-origin: 194px 98px; animation-delay: -.5s; }
body.idc-hw-checkout .hwfx-flash { inset: 0; z-index: 6; background: #c9d4ff; opacity: 0; mix-blend-mode: overlay; animation: hwfx-lightning 11s infinite; }
body.idc-hw-checkout .hwfx-flash--2 { animation: hwfx-lightning2 17s infinite; animation-delay: -5s; }
/* the pack: the hat sits on the box's top-left corner (front / side junction, at 27.3 % / 4.7 % of the image file), its brim
   draped over the top edge; the wrapper is exactly the image, so every value is a percentage of the image and the contact point
   holds at any size. The whole pack (box + hat) trembles when the lightning strikes; the hat jolts a little more. */
body.idc-hw-checkout .elementor-element-fd674b3 { padding-top: 104px !important; } /* room for the hat's tip above the image (the column clips its overflow) */
body.idc-hw-checkout .elementor-element-fd674b3 > .hwfx-pack { z-index: 2; overflow: visible; }
body.idc-hw-checkout .hwfx-packwrap { position: relative; display: block; width: 70%; line-height: 0; animation: hwfx-tremble 11s infinite; } /* the widget sets the image to 70 % of its width (Elementor data); the wrapper takes that width and the image fills it, so the wrapper is exactly the image */
body.idc-hw-checkout .hwfx-packwrap img { width: 100% !important; filter: drop-shadow(0 0 30px rgba(255, 45, 74, .3)); }
body.idc-hw-checkout .hwfx-hat { position: absolute; left: -5%; top: -24.5%; width: 52%; height: auto; z-index: 3; transform: none; transform-origin: 66% 74.5%; filter: drop-shadow(0 10px 14px rgba(0, 0, 0, .8)); animation: hwfx-hat 11s infinite; pointer-events: none; }
@keyframes hwfx-ghost { 0% { transform: translate(0, 0) rotate(-4deg); opacity: 0; } 12% { opacity: .55; } 50% { transform: translate(160px, -40px) rotate(5deg); opacity: .4; } 88% { opacity: .5; } 100% { transform: translate(320px, 14px) rotate(-3deg); opacity: 0; } }
@keyframes hwfx-ghost-sm { 0% { transform: translate(0, 0) rotate(-4deg); opacity: 0; } 12% { opacity: .55; } 50% { transform: translate(60px, -30px) rotate(5deg); opacity: .4; } 88% { opacity: .5; } 100% { transform: translate(120px, 10px) rotate(-3deg); opacity: 0; } }
@keyframes hwfx-ghost-sm-l { 0% { transform: translate(0, 0) rotate(4deg); opacity: 0; } 12% { opacity: .55; } 50% { transform: translate(-60px, -30px) rotate(-5deg); opacity: .4; } 88% { opacity: .5; } 100% { transform: translate(-120px, 10px) rotate(3deg); opacity: 0; } }
@keyframes hwfx-fog { from { transform: translateX(-5%); } to { transform: translateX(5%); } }
@keyframes hwfx-blink { 0%, 40%, 46%, 100% { transform: scaleY(1); opacity: 1; } 43% { transform: scaleY(.05); } 70%, 78% { opacity: 0; } }
@keyframes hwfx-fly { 0% { transform: translate(0, 0); } 25% { transform: translate(25vw, -18px); } 50% { transform: translate(50vw, 8px); } 75% { transform: translate(75vw, -14px); } 100% { transform: translate(100vw, 0); } }
@keyframes hwfx-flap { from { transform: scaleY(1); } to { transform: scaleY(.35); } }
@keyframes hwfx-lightning { 0%, 86%, 100% { opacity: 0; } 87% { opacity: .55; } 88% { opacity: .05; } 89.5% { opacity: .8; } 91% { opacity: 0; } }
@keyframes hwfx-lightning2 { 0%, 40%, 44%, 100% { opacity: 0; } 41% { opacity: .45; } 42% { opacity: .1; } 43% { opacity: .7; } 72%, 76% { opacity: 0; } 73% { opacity: .6; } 74% { opacity: .15; } 75% { opacity: .35; } }
@keyframes hwfx-bolt1 { 0%, 86.6%, 100% { opacity: 0; } 87% { opacity: 1; } 87.8% { opacity: .15; } 88.4% { opacity: .9; } 89.6% { opacity: 0; } }
@keyframes hwfx-bolt2 { 0%, 40.6%, 100% { opacity: 0; } 41% { opacity: 1; } 41.6% { opacity: .2; } 42.2% { opacity: .8; } 43.2% { opacity: 0; } }
@keyframes hwfx-descend { 0%, 100% { transform: translateY(-140px); } 40%, 60% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@keyframes hwfx-up { from { transform: translateY(118%); } to { transform: none; } }
@keyframes hwfx-ember { 0% { opacity: 0; transform: translate(0, 0); } 15% { opacity: 1; } 100% { opacity: 0; transform: translate(14px, -160px); } }
@keyframes hwfx-knee { 0%, 100% { transform: rotate(0); } 50% { transform: rotate(3deg); } }
@keyframes hwfx-heave { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@keyframes hwfx-headjerk { 0%, 30%, 100% { transform: rotate(-4deg); } 34% { transform: rotate(9deg); } 36% { transform: rotate(6deg); } 60% { transform: rotate(7deg); } 64% { transform: rotate(-10deg); } 66% { transform: rotate(-4deg); } }
@keyframes hwfx-jaw { 0%, 26%, 100% { transform: rotate(0); } 32% { transform: rotate(16deg); } 40% { transform: rotate(4deg); } 46% { transform: rotate(18deg); } 54% { transform: rotate(0); } 62% { transform: rotate(14deg); } 70% { transform: rotate(2deg); } }
@keyframes hwfx-eyeglow { 0%, 100% { opacity: .75; } 50% { opacity: 1; } }
@keyframes hwfx-clawarm { 0%, 100% { transform: rotate(-6deg); } 50% { transform: rotate(10deg); } }
@keyframes hwfx-clawhand { from { transform: rotate(-14deg); } to { transform: rotate(10deg); } }
@keyframes hwfx-tremble { 0%, 86.5%, 91.5%, 100% { transform: none; } 87% { transform: translate(-3px, 2px) rotate(-.6deg); } 87.6% { transform: translate(3px, -2px) rotate(.5deg); } 88.2% { transform: translate(-2px, 3px); } 88.8% { transform: translate(3px, 1px) rotate(-.4deg); } 89.4% { transform: translate(-3px, -2px) rotate(.6deg); } 90.4% { transform: translate(1px, 1px); } }
@keyframes hwfx-hat { 0%, 86.5%, 92%, 100% { transform: none; } 87.5% { transform: rotate(-6deg) translateY(-5px); } 88.5% { transform: rotate(4deg) translateY(1px); } 89.5% { transform: rotate(-3deg); } 90.5% { transform: rotate(1deg); } }
@media (max-width: 768px) {
	body.idc-hw-checkout .elementor-element-fd674b3 { padding-bottom: 440px !important; }
	body.idc-hw-checkout .elementor-element-fd674b3 > .hwfx-pit { height: 440px; }
	body.idc-hw-checkout .hwfx-ghoul { width: 180px; height: 352px; margin-left: -90px; bottom: 54px; }
	body.idc-hw-checkout .hwfx-grave { height: 170px; }
	body.idc-hw-checkout .hwfx-horizon { bottom: 40px; height: 140px; }
	body.idc-hw-checkout .hwfx-ember { bottom: 60px; }
	body.idc-hw-checkout .hwfx-thread { height: 110px; }
	body.idc-hw-checkout .hwfx-eyes--1 { top: 220px; }
	/* phones: the column is not stretched, the only dark room is the graveyard's sky */
	body.idc-hw-checkout .hwfx-ghost--1 { left: 4%; bottom: 290px; width: 56px; height: 69px; }
	body.idc-hw-checkout .hwfx-ghost--2 { right: 4%; bottom: 360px; width: 44px; height: 54px; }
	body.idc-hw-checkout .hwfx-ghost--3, body.idc-hw-checkout .hwfx-ghost--5, body.idc-hw-checkout .hwfx-ghost--6 { display: none; }
	body.idc-hw-checkout .hwfx-ghost--4 { right: 2%; top: 150px; width: 48px; height: 59px; }
	body.idc-hw-checkout .hwfx-ghost { animation-name: hwfx-ghost-sm; } /* shorter drift: the column is 375 px wide */
	body.idc-hw-checkout .hwfx-ghost--2, body.idc-hw-checkout .hwfx-ghost--4 { animation-name: hwfx-ghost-sm-l; animation-direction: normal; } /* anchored on the right: they drift leftwards, into the column */
}
@media (prefers-reduced-motion: reduce) {
	body.idc-hw-checkout .hwfx *, body.idc-hw-checkout .hwfx-packwrap, body.idc-hw-checkout .hwfx-hat { animation: none !important; transition: none !important; }
	body.idc-hw-checkout .hwfx-flash, body.idc-hw-checkout .hwfx-bolt, body.idc-hw-checkout .hwfx-ember { display: none; }
	body.idc-hw-checkout .hwfx-ghost { opacity: .45; }
	body.idc-hw-checkout .hwfx-ghoul { transform: none; }
}
