It looks like this is a web page, not a feed. I looked for a feed associated with this page, but couldn't find one. Please enter the address of your feed to validate.

Source: http://www.infinite-style.com

  1. <!doctype html>
  2. <html class="no-js" lang="id-ID">
  3. <head>
  4.    <!-- Welcome Abangku, Sukses Selalu... -->
  5.    <meta charset="utf-8">
  6.    <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7.    <meta name="viewport" content="width=device-width,initial-scale=1">
  8.    <meta name="theme-color" content="0b0318">
  9.    <link rel="canonical" href="https://infinite-style.com/">
  10.    <link rel="preconnect" href="https://fonts.shopifycdn.com/" crossorigin>
  11.    <title>KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang</title>
  12.    <meta name="description" content="Main togel dan situs toto slot makin gampang di KOITOTO lewat link login cepat akses stabil pasaran resmi slot gacor layanan aktif 24 jam cocok buat yang cari menang tanpa ribet.">
  13.    <meta name="google-site-verification" content="WlcHPAWcZCqRSLdxSaF5nESf-ss_YkyRlqBOza_UR-8" />
  14.    <meta name="keywords" content="koitoto, koi toto, togel, slot, toto, situs toto, toto slot, toto 4d, link toto, togel 4d, akses toto, link situs toto, toto slot 4d, situs toto slot, situs toto togel, togel online 4d, toto gacor 4d" />
  15.    <link rel="amphtml" href="https://amp.rendikt.info/infinite.html" />
  16.    <link rel="preload" as="script" href="../../../../cdn.ampproject.org/v1.js">
  17.    <meta name="robots" content="index, follow" />
  18.    <meta content="true" name="HandheldFriendly">
  19.    <meta content="width" name="MobileOptimized">
  20.    <meta name="apple-mobile-web-app-status-bar-style" content="default" />
  21.    <meta name="apple-mobile-web-app-capable" content="yes" />
  22.    <meta name="mobile-web-app-capable" content="yes" />
  23.    <meta name="language" content="ID">
  24.    <meta name="copyright" content="KOITOTO">
  25.    <meta name="author" content="KOITOTO">
  26.    <meta name="distribution" content="global">
  27.    <meta name="publisher" content="KOITOTO">
  28.    <meta name="geo.placename" content="DKI Jakarta">
  29.    <meta name="geo.country" content="ID">
  30.    <meta name="geo.region" content="ID" />
  31.    <meta name="tgn.nation" content="Indonesia">
  32.    <link rel="icon" href="https://imgstore.io/images/2025/03/07/favicon-koi-2025.png">
  33.    <meta property="og:locale" content="id_ID" />
  34.    <meta property="og:site_name" content="KOITOTO">
  35.    <meta property="og:url" content="https://infinite-style.com/">
  36.    <meta property="og:title" content="KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang">
  37.    <meta property="og:type" content="product">
  38.    <meta property="og:description"
  39.        content="Main togel dan situs toto slot makin gampang di KOITOTO lewat link login cepat akses stabil pasaran resmi slot gacor layanan aktif 24 jam cocok buat yang cari menang tanpa ribet.">
  40.    <meta property="og:image" content="https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg">
  41.    <meta property="og:image:secure_url"content="https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg">
  42.    <meta property="og:image:width" content="600">
  43.    <meta property="og:image:height" content="600">
  44.    <meta property="og:price:amount" content="10.000,00">
  45.    <meta property="og:price:currency" content="IDR">
  46.    <meta name="twitter:card" content="summary_large_image">
  47.    <meta name="twitter:title" content="KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang">
  48.    <meta name="twitter:description"
  49.        content="Main togel dan situs toto slot makin gampang di KOITOTO lewat link login cepat akses stabil pasaran resmi slot gacor layanan aktif 24 jam cocok buat yang cari menang tanpa ribet.">
  50.    <script>
  51.        /** Shopify CDN: Minification failed
  52.    
  53.            Line 7:0 Transforming const to the configured target environment ("es5") is not supported yet
  54.            Line 9:0 Transforming const to the configured target environment ("es5") is not supported yet
  55.            
  56.            **/
  57.        const ON_CHANGE_DEBOUNCE_TIMER = 300;
  58.  
  59.        const PUB_SUB_EVENTS = {
  60.            cartUpdate: 'cart-update',
  61.            quantityUpdate: 'quantity-update',
  62.            variantChange: 'variant-change',
  63.            cartError: 'cart-error',
  64.        };</script>
  65.    <script>
  66.        /** Shopify CDN: Minification failed
  67.    
  68.    Line 7:0 Transforming let to the configured target environment ("es5") is not supported yet
  69.    Line 14:28 Transforming array spread to the configured target environment ("es5") is not supported yet
  70.    
  71.    **/
  72.        let subscribers = {};
  73.  
  74.        function subscribe(eventName, callback) {
  75.            if (subscribers[eventName] === undefined) {
  76.                subscribers[eventName] = [];
  77.            }
  78.  
  79.            subscribers[eventName] = [...subscribers[eventName], callback];
  80.  
  81.            return function unsubscribe() {
  82.                subscribers[eventName] = subscribers[eventName].filter((cb) => {
  83.                    return cb !== callback;
  84.                });
  85.            };
  86.        }
  87.  
  88.        function publish(eventName, data) {
  89.            if (subscribers[eventName]) {
  90.                subscribers[eventName].forEach((callback) => {
  91.                    callback(data);
  92.                });
  93.            }
  94.        }
  95.    </script>
  96.    <script>
  97.        /** Shopify CDN: Minification failed
  98.    
  99.    Line 40:0 Transforming const to the configured target environment ("es5") is not supported yet
  100.    Line 42:45 Transforming default arguments to the configured target environment ("es5") is not supported yet
  101.    Line 96:2 Transforming const to the configured target environment ("es5") is not supported yet
  102.    Line 110:2 Transforming let to the configured target environment ("es5") is not supported yet
  103.    Line 111:2 Transforming let to the configured target environment ("es5") is not supported yet
  104.    Line 150:40 Transforming default arguments to the configured target environment ("es5") is not supported yet
  105.    Line 161:2 Transforming const to the configured target environment ("es5") is not supported yet
  106.    Line 164:2 Transforming const to the configured target environment ("es5") is not supported yet
  107.    Line 170:0 Transforming class syntax to the configured target environment ("es5") is not supported yet
  108.    Line 171:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  109.    ... and 187 more hidden warnings
  110.    
  111.    **/
  112.        function getFocusableElements(container) {
  113.            return Array.from(
  114.                container.querySelectorAll(
  115.                    "summary, a[href], button:enabled, [tabindex]:not([tabindex^='-']), [draggable], area, input:not([type=hidden]):enabled, select:enabled, textarea:enabled, object, iframe"
  116.                )
  117.            );
  118.        }
  119.  
  120.        document.querySelectorAll('[id^="Details-"] summary').forEach((summary) => {
  121.            summary.setAttribute('role', 'button');
  122.            summary.setAttribute('aria-expanded', summary.parentNode.hasAttribute('open'));
  123.  
  124.            if (summary.nextElementSibling.getAttribute('id')) {
  125.                summary.setAttribute('aria-controls', summary.nextElementSibling.id);
  126.            }
  127.  
  128.            summary.addEventListener('click', (event) => {
  129.                event.currentTarget.setAttribute('aria-expanded', !event.currentTarget.closest('details').hasAttribute('open'));
  130.            });
  131.  
  132.            if (summary.closest('header-drawer, menu-drawer')) return;
  133.            summary.parentElement.addEventListener('keyup', onKeyUpEscape);
  134.        });
  135.  
  136.        const trapFocusHandlers = {};
  137.  
  138.        function trapFocus(container, elementToFocus = container) {
  139.            var elements = getFocusableElements(container);
  140.            var first = elements[0];
  141.            var last = elements[elements.length - 1];
  142.  
  143.            removeTrapFocus();
  144.  
  145.            trapFocusHandlers.focusin = (event) => {
  146.                if (event.target !== container && event.target !== last && event.target !== first) return;
  147.  
  148.                document.addEventListener('keydown', trapFocusHandlers.keydown);
  149.            };
  150.  
  151.            trapFocusHandlers.focusout = function () {
  152.                document.removeEventListener('keydown', trapFocusHandlers.keydown);
  153.            };
  154.  
  155.            trapFocusHandlers.keydown = function (event) {
  156.                if (event.code.toUpperCase() !== 'TAB') return; // If not TAB key
  157.                // On the last focusable element and tab forward, focus the first element.
  158.                if (event.target === last && !event.shiftKey) {
  159.                    event.preventDefault();
  160.                    first.focus();
  161.                }
  162.  
  163.                //  On the first focusable element and tab backward, focus the last element.
  164.                if ((event.target === container || event.target === first) && event.shiftKey) {
  165.                    event.preventDefault();
  166.                    last.focus();
  167.                }
  168.            };
  169.  
  170.            document.addEventListener('focusout', trapFocusHandlers.focusout);
  171.            document.addEventListener('focusin', trapFocusHandlers.focusin);
  172.  
  173.            elementToFocus.focus();
  174.  
  175.            if (
  176.                elementToFocus.tagName === 'INPUT' &&
  177.                ['search', 'text', 'email', 'url'].includes(elementToFocus.type) &&
  178.                elementToFocus.value
  179.            ) {
  180.                elementToFocus.setSelectionRange(0, elementToFocus.value.length);
  181.            }
  182.        }
  183.  
  184.        // Here run the querySelector to figure out if the browser supports :focus-visible or not and run code based on it.
  185.        try {
  186.            document.querySelector(':focus-visible');
  187.        } catch (e) {
  188.            focusVisiblePolyfill();
  189.        }
  190.  
  191.        function focusVisiblePolyfill() {
  192.            const navKeys = [
  193.                'ARROWUP',
  194.                'ARROWDOWN',
  195.                'ARROWLEFT',
  196.                'ARROWRIGHT',
  197.                'TAB',
  198.                'ENTER',
  199.                'SPACE',
  200.                'ESCAPE',
  201.                'HOME',
  202.                'END',
  203.                'PAGEUP',
  204.                'PAGEDOWN',
  205.            ];
  206.            let currentFocusedElement = null;
  207.            let mouseClick = null;
  208.  
  209.            window.addEventListener('keydown', (event) => {
  210.                if (navKeys.includes(event.code.toUpperCase())) {
  211.                    mouseClick = false;
  212.                }
  213.            });
  214.  
  215.            window.addEventListener('mousedown', (event) => {
  216.                mouseClick = true;
  217.            });
  218.  
  219.            window.addEventListener(
  220.                'focus',
  221.                () => {
  222.                    if (currentFocusedElement) currentFocusedElement.classList.remove('focused');
  223.  
  224.                    if (mouseClick) return;
  225.  
  226.                    currentFocusedElement = document.activeElement;
  227.                    currentFocusedElement.classList.add('focused');
  228.                },
  229.                true
  230.            );
  231.        }
  232.  
  233.        function pauseAllMedia() {
  234.            document.querySelectorAll('.js-youtube').forEach((video) => {
  235.                video.contentWindow.postMessage('{"event":"command","func":"' + 'pauseVideo' + '","args":""}', '*');
  236.            });
  237.            document.querySelectorAll('.js-vimeo').forEach((video) => {
  238.                video.contentWindow.postMessage('{"method":"pause"}', '*');
  239.            });
  240.            document.querySelectorAll('video').forEach((video) => video.pause());
  241.            document.querySelectorAll('product-model').forEach((model) => {
  242.                if (model.modelViewerUI) model.modelViewerUI.pause();
  243.            });
  244.        }
  245.  
  246.        function removeTrapFocus(elementToFocus = null) {
  247.            document.removeEventListener('focusin', trapFocusHandlers.focusin);
  248.            document.removeEventListener('focusout', trapFocusHandlers.focusout);
  249.            document.removeEventListener('keydown', trapFocusHandlers.keydown);
  250.  
  251.            if (elementToFocus) elementToFocus.focus();
  252.        }
  253.  
  254.        function onKeyUpEscape(event) {
  255.            if (event.code.toUpperCase() !== 'ESCAPE') return;
  256.  
  257.            const openDetailsElement = event.target.closest('details[open]');
  258.            if (!openDetailsElement) return;
  259.  
  260.            const summaryElement = openDetailsElement.querySelector('summary');
  261.            openDetailsElement.removeAttribute('open');
  262.            summaryElement.setAttribute('aria-expanded', false);
  263.            summaryElement.focus();
  264.        }
  265.  
  266.        class QuantityInput extends HTMLElement {
  267.            constructor() {
  268.                super();
  269.                this.input = this.querySelector('input');
  270.                this.changeEvent = new Event('change', { bubbles: true });
  271.                this.input.addEventListener('change', this.onInputChange.bind(this));
  272.                this.querySelectorAll('button').forEach((button) =>
  273.                    button.addEventListener('click', this.onButtonClick.bind(this))
  274.                );
  275.            }
  276.  
  277.            quantityUpdateUnsubscriber = undefined;
  278.  
  279.            connectedCallback() {
  280.                this.validateQtyRules();
  281.                this.quantityUpdateUnsubscriber = subscribe(PUB_SUB_EVENTS.quantityUpdate, this.validateQtyRules.bind(this));
  282.            }
  283.  
  284.            disconnectedCallback() {
  285.                if (this.quantityUpdateUnsubscriber) {
  286.                    this.quantityUpdateUnsubscriber();
  287.                }
  288.            }
  289.  
  290.            onInputChange(event) {
  291.                this.validateQtyRules();
  292.            }
  293.  
  294.            onButtonClick(event) {
  295.                event.preventDefault();
  296.                const previousValue = this.input.value;
  297.  
  298.                event.target.name === 'plus' ? this.input.stepUp() : this.input.stepDown();
  299.                if (previousValue !== this.input.value) this.input.dispatchEvent(this.changeEvent);
  300.            }
  301.  
  302.            validateQtyRules() {
  303.                const value = parseInt(this.input.value);
  304.                if (this.input.min) {
  305.                    const min = parseInt(this.input.min);
  306.                    const buttonMinus = this.querySelector(".quantity__button[name='minus']");
  307.                    buttonMinus.classList.toggle('disabled', value <= min);
  308.                }
  309.                if (this.input.max) {
  310.                    const max = parseInt(this.input.max);
  311.                    const buttonPlus = this.querySelector(".quantity__button[name='plus']");
  312.                    buttonPlus.classList.toggle('disabled', value >= max);
  313.                }
  314.            }
  315.        }
  316.  
  317.        customElements.define('quantity-input', QuantityInput);
  318.  
  319.        function debounce(fn, wait) {
  320.            let t;
  321.            return (...args) => {
  322.                clearTimeout(t);
  323.                t = setTimeout(() => fn.apply(this, args), wait);
  324.            };
  325.        }
  326.  
  327.        function throttle(fn, delay) {
  328.            let lastCall = 0;
  329.            return function (...args) {
  330.                const now = new Date().getTime();
  331.                if (now - lastCall < delay) {
  332.                    return;
  333.                }
  334.                lastCall = now;
  335.                return fn(...args);
  336.            };
  337.        }
  338.  
  339.        function fetchConfig(type = 'json') {
  340.            return {
  341.                method: 'POST',
  342.                headers: { 'Content-Type': 'application/json', Accept: `application/${type}` },
  343.            };
  344.        }
  345.  
  346.        /*
  347.         * Shopify Common JS
  348.         *
  349.         */
  350.        if (typeof window.Shopify == 'undefined') {
  351.            window.Shopify = {};
  352.        }
  353.  
  354.        Shopify.bind = function (fn, scope) {
  355.            return function () {
  356.                return fn.apply(scope, arguments);
  357.            };
  358.        };
  359.  
  360.        Shopify.setSelectorByValue = function (selector, value) {
  361.            for (var i = 0, count = selector.options.length; i < count; i++) {
  362.                var option = selector.options[i];
  363.                if (value == option.value || value == option.innerHTML) {
  364.                    selector.selectedIndex = i;
  365.                    return i;
  366.                }
  367.            }
  368.        };
  369.  
  370.        Shopify.addListener = function (target, eventName, callback) {
  371.            target.addEventListener
  372.                ? target.addEventListener(eventName, callback, false)
  373.                : target.attachEvent('on' + eventName, callback);
  374.        };
  375.  
  376.        Shopify.postLink = function (path, options) {
  377.            options = options || {};
  378.            var method = options['method'] || 'post';
  379.            var params = options['parameters'] || {};
  380.  
  381.            var form = document.createElement('form');
  382.            form.setAttribute('method', method);
  383.            form.setAttribute('action', path);
  384.  
  385.            for (var key in params) {
  386.                var hiddenField = document.createElement('input');
  387.                hiddenField.setAttribute('type', 'hidden');
  388.                hiddenField.setAttribute('name', key);
  389.                hiddenField.setAttribute('value', params[key]);
  390.                form.appendChild(hiddenField);
  391.            }
  392.            document.body.appendChild(form);
  393.            form.submit();
  394.            document.body.removeChild(form);
  395.        };
  396.  
  397.        Shopify.CountryProvinceSelector = function (country_domid, province_domid, options) {
  398.            this.countryEl = document.getElementById(country_domid);
  399.            this.provinceEl = document.getElementById(province_domid);
  400.            this.provinceContainer = document.getElementById(options['hideElement'] || province_domid);
  401.  
  402.            Shopify.addListener(this.countryEl, 'change', Shopify.bind(this.countryHandler, this));
  403.  
  404.            this.initCountry();
  405.            this.initProvince();
  406.        };
  407.  
  408.        Shopify.CountryProvinceSelector.prototype = {
  409.            initCountry: function () {
  410.                var value = this.countryEl.getAttribute('data-default');
  411.                Shopify.setSelectorByValue(this.countryEl, value);
  412.                this.countryHandler();
  413.            },
  414.  
  415.            initProvince: function () {
  416.                var value = this.provinceEl.getAttribute('data-default');
  417.                if (value && this.provinceEl.options.length > 0) {
  418.                    Shopify.setSelectorByValue(this.provinceEl, value);
  419.                }
  420.            },
  421.  
  422.            countryHandler: function (e) {
  423.                var opt = this.countryEl.options[this.countryEl.selectedIndex];
  424.                var raw = opt.getAttribute('data-provinces');
  425.                var provinces = JSON.parse(raw);
  426.  
  427.                this.clearOptions(this.provinceEl);
  428.                if (provinces && provinces.length == 0) {
  429.                    this.provinceContainer.style.display = 'none';
  430.                } else {
  431.                    for (var i = 0; i < provinces.length; i++) {
  432.                        var opt = document.createElement('option');
  433.                        opt.value = provinces[i][0];
  434.                        opt.innerHTML = provinces[i][1];
  435.                        this.provinceEl.appendChild(opt);
  436.                    }
  437.  
  438.                    this.provinceContainer.style.display = '';
  439.                }
  440.            },
  441.  
  442.            clearOptions: function (selector) {
  443.                while (selector.firstChild) {
  444.                    selector.removeChild(selector.firstChild);
  445.                }
  446.            },
  447.  
  448.            setOptions: function (selector, values) {
  449.                for (var i = 0, count = values.length; i < values.length; i++) {
  450.                    var opt = document.createElement('option');
  451.                    opt.value = values[i];
  452.                    opt.innerHTML = values[i];
  453.                    selector.appendChild(opt);
  454.                }
  455.            },
  456.        };
  457.  
  458.        class MenuDrawer extends HTMLElement {
  459.            constructor() {
  460.                super();
  461.  
  462.                this.mainDetailsToggle = this.querySelector('details');
  463.  
  464.                this.addEventListener('keyup', this.onKeyUp.bind(this));
  465.                this.addEventListener('focusout', this.onFocusOut.bind(this));
  466.                this.bindEvents();
  467.            }
  468.  
  469.            bindEvents() {
  470.                this.querySelectorAll('summary').forEach((summary) =>
  471.                    summary.addEventListener('click', this.onSummaryClick.bind(this))
  472.                );
  473.                this.querySelectorAll('button:not(.localization-selector)').forEach((button) =>
  474.                    button.addEventListener('click', this.onCloseButtonClick.bind(this))
  475.                );
  476.            }
  477.  
  478.            onKeyUp(event) {
  479.                if (event.code.toUpperCase() !== 'ESCAPE') return;
  480.  
  481.                const openDetailsElement = event.target.closest('details[open]');
  482.                if (!openDetailsElement) return;
  483.  
  484.                openDetailsElement === this.mainDetailsToggle
  485.                    ? this.closeMenuDrawer(event, this.mainDetailsToggle.querySelector('summary'))
  486.                    : this.closeSubmenu(openDetailsElement);
  487.            }
  488.  
  489.            onSummaryClick(event) {
  490.                const summaryElement = event.currentTarget;
  491.                const detailsElement = summaryElement.parentNode;
  492.                const parentMenuElement = detailsElement.closest('.has-submenu');
  493.                const isOpen = detailsElement.hasAttribute('open');
  494.                const reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)');
  495.  
  496.                function addTrapFocus() {
  497.                    trapFocus(summaryElement.nextElementSibling, detailsElement.querySelector('button'));
  498.                    summaryElement.nextElementSibling.removeEventListener('transitionend', addTrapFocus);
  499.                }
  500.  
  501.                if (detailsElement === this.mainDetailsToggle) {
  502.                    if (isOpen) event.preventDefault();
  503.                    isOpen ? this.closeMenuDrawer(event, summaryElement) : this.openMenuDrawer(summaryElement);
  504.  
  505.                    if (window.matchMedia('(max-width: 990px)')) {
  506.                        document.documentElement.style.setProperty('--viewport-height', `${window.innerHeight}px`);
  507.                    }
  508.                } else {
  509.                    setTimeout(() => {
  510.                        detailsElement.classList.add('menu-opening');
  511.                        summaryElement.setAttribute('aria-expanded', true);
  512.                        parentMenuElement && parentMenuElement.classList.add('submenu-open');
  513.                        !reducedMotion || reducedMotion.matches
  514.                            ? addTrapFocus()
  515.                            : summaryElement.nextElementSibling.addEventListener('transitionend', addTrapFocus);
  516.                    }, 100);
  517.                }
  518.            }
  519.  
  520.            openMenuDrawer(summaryElement) {
  521.                setTimeout(() => {
  522.                    this.mainDetailsToggle.classList.add('menu-opening');
  523.                });
  524.                summaryElement.setAttribute('aria-expanded', true);
  525.                trapFocus(this.mainDetailsToggle, summaryElement);
  526.                document.body.classList.add(`overflow-hidden-${this.dataset.breakpoint}`);
  527.            }
  528.  
  529.            closeMenuDrawer(event, elementToFocus = false) {
  530.                if (event === undefined) return;
  531.  
  532.                this.mainDetailsToggle.classList.remove('menu-opening');
  533.                this.mainDetailsToggle.querySelectorAll('details').forEach((details) => {
  534.                    details.removeAttribute('open');
  535.                    details.classList.remove('menu-opening');
  536.                });
  537.                this.mainDetailsToggle.querySelectorAll('.submenu-open').forEach((submenu) => {
  538.                    submenu.classList.remove('submenu-open');
  539.                });
  540.                document.body.classList.remove(`overflow-hidden-${this.dataset.breakpoint}`);
  541.                removeTrapFocus(elementToFocus);
  542.                this.closeAnimation(this.mainDetailsToggle);
  543.  
  544.                if (event instanceof KeyboardEvent) elementToFocus?.setAttribute('aria-expanded', false);
  545.            }
  546.  
  547.            onFocusOut() {
  548.                setTimeout(() => {
  549.                    if (this.mainDetailsToggle.hasAttribute('open') && !this.mainDetailsToggle.contains(document.activeElement))
  550.                        this.closeMenuDrawer();
  551.                });
  552.            }
  553.  
  554.            onCloseButtonClick(event) {
  555.                const detailsElement = event.currentTarget.closest('details');
  556.                this.closeSubmenu(detailsElement);
  557.            }
  558.  
  559.            closeSubmenu(detailsElement) {
  560.                const parentMenuElement = detailsElement.closest('.submenu-open');
  561.                parentMenuElement && parentMenuElement.classList.remove('submenu-open');
  562.                detailsElement.classList.remove('menu-opening');
  563.                detailsElement.querySelector('summary').setAttribute('aria-expanded', false);
  564.                removeTrapFocus(detailsElement.querySelector('summary'));
  565.                this.closeAnimation(detailsElement);
  566.            }
  567.  
  568.            closeAnimation(detailsElement) {
  569.                let animationStart;
  570.  
  571.                const handleAnimation = (time) => {
  572.                    if (animationStart === undefined) {
  573.                        animationStart = time;
  574.                    }
  575.  
  576.                    const elapsedTime = time - animationStart;
  577.  
  578.                    if (elapsedTime < 400) {
  579.                        window.requestAnimationFrame(handleAnimation);
  580.                    } else {
  581.                        detailsElement.removeAttribute('open');
  582.                        if (detailsElement.closest('details[open]')) {
  583.                            trapFocus(detailsElement.closest('details[open]'), detailsElement.querySelector('summary'));
  584.                        }
  585.                    }
  586.                };
  587.  
  588.                window.requestAnimationFrame(handleAnimation);
  589.            }
  590.        }
  591.  
  592.        customElements.define('menu-drawer', MenuDrawer);
  593.  
  594.        class HeaderDrawer extends MenuDrawer {
  595.            constructor() {
  596.                super();
  597.            }
  598.  
  599.            openMenuDrawer(summaryElement) {
  600.                this.header = this.header || document.querySelector('.section-header');
  601.                this.borderOffset =
  602.                    this.borderOffset || this.closest('.header-wrapper').classList.contains('header-wrapper--border-bottom') ? 1 : 0;
  603.                document.documentElement.style.setProperty(
  604.                    '--header-bottom-position',
  605.                    `${parseInt(this.header.getBoundingClientRect().bottom - this.borderOffset)}px`
  606.                );
  607.                this.header.classList.add('menu-open');
  608.  
  609.                setTimeout(() => {
  610.                    this.mainDetailsToggle.classList.add('menu-opening');
  611.                });
  612.  
  613.                summaryElement.setAttribute('aria-expanded', true);
  614.                window.addEventListener('resize', this.onResize);
  615.                trapFocus(this.mainDetailsToggle, summaryElement);
  616.                document.body.classList.add(`overflow-hidden-${this.dataset.breakpoint}`);
  617.            }
  618.  
  619.            closeMenuDrawer(event, elementToFocus) {
  620.                if (!elementToFocus) return;
  621.                super.closeMenuDrawer(event, elementToFocus);
  622.                this.header.classList.remove('menu-open');
  623.                window.removeEventListener('resize', this.onResize);
  624.            }
  625.  
  626.            onResize = () => {
  627.                this.header &&
  628.                    document.documentElement.style.setProperty(
  629.                        '--header-bottom-position',
  630.                        `${parseInt(this.header.getBoundingClientRect().bottom - this.borderOffset)}px`
  631.                    );
  632.                document.documentElement.style.setProperty('--viewport-height', `${window.innerHeight}px`);
  633.            };
  634.        }
  635.  
  636.        customElements.define('header-drawer', HeaderDrawer);
  637.  
  638.        class ModalDialog extends HTMLElement {
  639.            constructor() {
  640.                super();
  641.                this.querySelector('[id^="ModalClose-"]').addEventListener('click', this.hide.bind(this, false));
  642.                this.addEventListener('keyup', (event) => {
  643.                    if (event.code.toUpperCase() === 'ESCAPE') this.hide();
  644.                });
  645.                if (this.classList.contains('media-modal')) {
  646.                    this.addEventListener('pointerup', (event) => {
  647.                        if (event.pointerType === 'mouse' && !event.target.closest('deferred-media, product-model')) this.hide();
  648.                    });
  649.                } else {
  650.                    this.addEventListener('click', (event) => {
  651.                        if (event.target === this) this.hide();
  652.                    });
  653.                }
  654.            }
  655.  
  656.            connectedCallback() {
  657.                if (this.moved) return;
  658.                this.moved = true;
  659.                document.body.appendChild(this);
  660.            }
  661.  
  662.            show(opener) {
  663.                this.openedBy = opener;
  664.                const popup = this.querySelector('.template-popup');
  665.                document.body.classList.add('overflow-hidden');
  666.                this.setAttribute('open', '');
  667.                if (popup) popup.loadContent();
  668.                trapFocus(this, this.querySelector('[role="dialog"]'));
  669.                window.pauseAllMedia();
  670.            }
  671.  
  672.            hide() {
  673.                document.body.classList.remove('overflow-hidden');
  674.                document.body.dispatchEvent(new CustomEvent('modalClosed'));
  675.                this.removeAttribute('open');
  676.                removeTrapFocus(this.openedBy);
  677.                window.pauseAllMedia();
  678.            }
  679.        }
  680.        customElements.define('modal-dialog', ModalDialog);
  681.  
  682.        class ModalOpener extends HTMLElement {
  683.            constructor() {
  684.                super();
  685.  
  686.                const button = this.querySelector('button');
  687.  
  688.                if (!button) return;
  689.                button.addEventListener('click', () => {
  690.                    const modal = document.querySelector(this.getAttribute('data-modal'));
  691.                    if (modal) modal.show(button);
  692.                });
  693.            }
  694.        }
  695.        customElements.define('modal-opener', ModalOpener);
  696.  
  697.        class DeferredMedia extends HTMLElement {
  698.            constructor() {
  699.                super();
  700.                const poster = this.querySelector('[id^="Deferred-Poster-"]');
  701.                if (!poster) return;
  702.                poster.addEventListener('click', this.loadContent.bind(this));
  703.            }
  704.  
  705.            loadContent(focus = true) {
  706.                window.pauseAllMedia();
  707.                if (!this.getAttribute('loaded')) {
  708.                    const content = document.createElement('div');
  709.                    content.appendChild(this.querySelector('template').content.firstElementChild.cloneNode(true));
  710.  
  711.                    this.setAttribute('loaded', true);
  712.                    const deferredElement = this.appendChild(content.querySelector('video, model-viewer, iframe'));
  713.                    if (focus) deferredElement.focus();
  714.                    if (deferredElement.nodeName == 'VIDEO' && deferredElement.getAttribute('autoplay')) {
  715.                        // force autoplay for safari
  716.                        deferredElement.play();
  717.                    }
  718.                }
  719.            }
  720.        }
  721.  
  722.        customElements.define('deferred-media', DeferredMedia);
  723.  
  724.        class SliderComponent extends HTMLElement {
  725.            constructor() {
  726.                super();
  727.                this.slider = this.querySelector('[id^="Slider-"]');
  728.                this.sliderItems = this.querySelectorAll('[id^="Slide-"]');
  729.                this.enableSliderLooping = false;
  730.                this.currentPageElement = this.querySelector('.slider-counter--current');
  731.                this.pageTotalElement = this.querySelector('.slider-counter--total');
  732.                this.prevButton = this.querySelector('button[name="previous"]');
  733.                this.nextButton = this.querySelector('button[name="next"]');
  734.  
  735.                if (!this.slider || !this.nextButton) return;
  736.  
  737.                this.initPages();
  738.                const resizeObserver = new ResizeObserver((entries) => this.initPages());
  739.                resizeObserver.observe(this.slider);
  740.  
  741.                this.slider.addEventListener('scroll', this.update.bind(this));
  742.                this.prevButton.addEventListener('click', this.onButtonClick.bind(this));
  743.                this.nextButton.addEventListener('click', this.onButtonClick.bind(this));
  744.            }
  745.  
  746.            initPages() {
  747.                this.sliderItemsToShow = Array.from(this.sliderItems).filter((element) => element.clientWidth > 0);
  748.                if (this.sliderItemsToShow.length < 2) return;
  749.                this.sliderItemOffset = this.sliderItemsToShow[1].offsetLeft - this.sliderItemsToShow[0].offsetLeft;
  750.                this.slidesPerPage = Math.floor(
  751.                    (this.slider.clientWidth - this.sliderItemsToShow[0].offsetLeft) / this.sliderItemOffset
  752.                );
  753.                this.totalPages = this.sliderItemsToShow.length - this.slidesPerPage + 1;
  754.                this.update();
  755.            }
  756.  
  757.            resetPages() {
  758.                this.sliderItems = this.querySelectorAll('[id^="Slide-"]');
  759.                this.initPages();
  760.            }
  761.  
  762.            update() {
  763.                // Temporarily prevents unneeded updates resulting from variant changes
  764.                // This should be refactored as part of https://github.com/Shopify/dawn/issues/2057
  765.                if (!this.slider || !this.nextButton) return;
  766.  
  767.                const previousPage = this.currentPage;
  768.                this.currentPage = Math.round(this.slider.scrollLeft / this.sliderItemOffset) + 1;
  769.  
  770.                if (this.currentPageElement && this.pageTotalElement) {
  771.                    this.currentPageElement.textContent = this.currentPage;
  772.                    this.pageTotalElement.textContent = this.totalPages;
  773.                }
  774.  
  775.                if (this.currentPage != previousPage) {
  776.                    this.dispatchEvent(
  777.                        new CustomEvent('slideChanged', {
  778.                            detail: {
  779.                                currentPage: this.currentPage,
  780.                                currentElement: this.sliderItemsToShow[this.currentPage - 1],
  781.                            },
  782.                        })
  783.                    );
  784.                }
  785.  
  786.                if (this.enableSliderLooping) return;
  787.  
  788.                if (this.isSlideVisible(this.sliderItemsToShow[0]) && this.slider.scrollLeft === 0) {
  789.                    this.prevButton.setAttribute('disabled', 'disabled');
  790.                } else {
  791.                    this.prevButton.removeAttribute('disabled');
  792.                }
  793.  
  794.                if (this.isSlideVisible(this.sliderItemsToShow[this.sliderItemsToShow.length - 1])) {
  795.                    this.nextButton.setAttribute('disabled', 'disabled');
  796.                } else {
  797.                    this.nextButton.removeAttribute('disabled');
  798.                }
  799.            }
  800.  
  801.            isSlideVisible(element, offset = 0) {
  802.                const lastVisibleSlide = this.slider.clientWidth + this.slider.scrollLeft - offset;
  803.                return element.offsetLeft + element.clientWidth <= lastVisibleSlide && element.offsetLeft >= this.slider.scrollLeft;
  804.            }
  805.  
  806.            onButtonClick(event) {
  807.                event.preventDefault();
  808.                const step = event.currentTarget.dataset.step || 1;
  809.                this.slideScrollPosition =
  810.                    event.currentTarget.name === 'next'
  811.                        ? this.slider.scrollLeft + step * this.sliderItemOffset
  812.                        : this.slider.scrollLeft - step * this.sliderItemOffset;
  813.                this.setSlidePosition(this.slideScrollPosition);
  814.            }
  815.  
  816.            setSlidePosition(position) {
  817.                this.slider.scrollTo({
  818.                    left: position,
  819.                });
  820.            }
  821.        }
  822.  
  823.        customElements.define('slider-component', SliderComponent);
  824.  
  825.        class SlideshowComponent extends SliderComponent {
  826.            constructor() {
  827.                super();
  828.                this.sliderControlWrapper = this.querySelector('.slider-buttons');
  829.                this.enableSliderLooping = true;
  830.  
  831.                if (!this.sliderControlWrapper) return;
  832.  
  833.                this.sliderFirstItemNode = this.slider.querySelector('.slideshow__slide');
  834.                if (this.sliderItemsToShow.length > 0) this.currentPage = 1;
  835.  
  836.                this.announcementBarSlider = this.querySelector('.announcement-bar-slider');
  837.                // Value below should match --duration-announcement-bar CSS value
  838.                this.announcerBarAnimationDelay = this.announcementBarSlider ? 250 : 0;
  839.  
  840.                this.sliderControlLinksArray = Array.from(this.sliderControlWrapper.querySelectorAll('.slider-counter__link'));
  841.                this.sliderControlLinksArray.forEach((link) => link.addEventListener('click', this.linkToSlide.bind(this)));
  842.                this.slider.addEventListener('scroll', this.setSlideVisibility.bind(this));
  843.                this.setSlideVisibility();
  844.  
  845.                if (this.announcementBarSlider) {
  846.                    this.announcementBarArrowButtonWasClicked = false;
  847.  
  848.                    this.reducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)');
  849.                    this.reducedMotion.addEventListener('change', () => {
  850.                        if (this.slider.getAttribute('data-autoplay') === 'true') this.setAutoPlay();
  851.                    });
  852.  
  853.                    [this.prevButton, this.nextButton].forEach((button) => {
  854.                        button.addEventListener(
  855.                            'click',
  856.                            () => {
  857.                                this.announcementBarArrowButtonWasClicked = true;
  858.                            },
  859.                            { once: true }
  860.                        );
  861.                    });
  862.                }
  863.  
  864.                if (this.slider.getAttribute('data-autoplay') === 'true') this.setAutoPlay();
  865.            }
  866.  
  867.            setAutoPlay() {
  868.                this.autoplaySpeed = this.slider.dataset.speed * 1000;
  869.                this.addEventListener('mouseover', this.focusInHandling.bind(this));
  870.                this.addEventListener('mouseleave', this.focusOutHandling.bind(this));
  871.                this.addEventListener('focusin', this.focusInHandling.bind(this));
  872.                this.addEventListener('focusout', this.focusOutHandling.bind(this));
  873.  
  874.                if (this.querySelector('.slideshow__autoplay')) {
  875.                    this.sliderAutoplayButton = this.querySelector('.slideshow__autoplay');
  876.                    this.sliderAutoplayButton.addEventListener('click', this.autoPlayToggle.bind(this));
  877.                    this.autoplayButtonIsSetToPlay = true;
  878.                    this.play();
  879.                } else {
  880.                    this.reducedMotion.matches || this.announcementBarArrowButtonWasClicked
  881.                        ? this.pause()
  882.                        : this.play();
  883.                }
  884.            }
  885.  
  886.            onButtonClick(event) {
  887.                super.onButtonClick(event);
  888.                this.wasClicked = true;
  889.  
  890.                const isFirstSlide = this.currentPage === 1;
  891.                const isLastSlide = this.currentPage === this.sliderItemsToShow.length;
  892.  
  893.                if (!isFirstSlide && !isLastSlide) {
  894.                    this.applyAnimationToAnnouncementBar(event.currentTarget.name);
  895.                    return;
  896.                }
  897.  
  898.                if (isFirstSlide && event.currentTarget.name === 'previous') {
  899.                    this.slideScrollPosition =
  900.                        this.slider.scrollLeft + this.sliderFirstItemNode.clientWidth * this.sliderItemsToShow.length;
  901.                } else if (isLastSlide && event.currentTarget.name === 'next') {
  902.                    this.slideScrollPosition = 0;
  903.                }
  904.  
  905.                this.setSlidePosition(this.slideScrollPosition);
  906.  
  907.                this.applyAnimationToAnnouncementBar(event.currentTarget.name);
  908.            }
  909.  
  910.            setSlidePosition(position) {
  911.                if (this.setPositionTimeout) clearTimeout(this.setPositionTimeout);
  912.                this.setPositionTimeout = setTimeout(() => {
  913.                    this.slider.scrollTo({
  914.                        left: position,
  915.                    });
  916.                }, this.announcerBarAnimationDelay);
  917.            }
  918.  
  919.            update() {
  920.                super.update();
  921.                this.sliderControlButtons = this.querySelectorAll('.slider-counter__link');
  922.                this.prevButton.removeAttribute('disabled');
  923.  
  924.                if (!this.sliderControlButtons.length) return;
  925.  
  926.                this.sliderControlButtons.forEach((link) => {
  927.                    link.classList.remove('slider-counter__link--active');
  928.                    link.removeAttribute('aria-current');
  929.                });
  930.                this.sliderControlButtons[this.currentPage - 1].classList.add('slider-counter__link--active');
  931.                this.sliderControlButtons[this.currentPage - 1].setAttribute('aria-current', true);
  932.            }
  933.  
  934.            autoPlayToggle() {
  935.                this.togglePlayButtonState(this.autoplayButtonIsSetToPlay);
  936.                this.autoplayButtonIsSetToPlay ? this.pause() : this.play();
  937.                this.autoplayButtonIsSetToPlay = !this.autoplayButtonIsSetToPlay;
  938.            }
  939.  
  940.            focusOutHandling(event) {
  941.                if (this.sliderAutoplayButton) {
  942.                    const focusedOnAutoplayButton =
  943.                        event.target === this.sliderAutoplayButton || this.sliderAutoplayButton.contains(event.target);
  944.                    if (!this.autoplayButtonIsSetToPlay || focusedOnAutoplayButton) return;
  945.                    this.play();
  946.                } else if (
  947.                    !this.reducedMotion.matches &&
  948.                    !this.announcementBarArrowButtonWasClicked
  949.                ) {
  950.                    this.play();
  951.                }
  952.            }
  953.  
  954.            focusInHandling(event) {
  955.                if (this.sliderAutoplayButton) {
  956.                    const focusedOnAutoplayButton =
  957.                        event.target === this.sliderAutoplayButton || this.sliderAutoplayButton.contains(event.target);
  958.                    if (focusedOnAutoplayButton && this.autoplayButtonIsSetToPlay) {
  959.                        this.play();
  960.                    } else if (this.autoplayButtonIsSetToPlay) {
  961.                        this.pause();
  962.                    }
  963.                } else if (this.announcementBarSlider.contains(event.target)) {
  964.                    this.pause();
  965.                }
  966.            }
  967.  
  968.            play() {
  969.                this.slider.setAttribute('aria-live', 'off');
  970.                clearInterval(this.autoplay);
  971.                this.autoplay = setInterval(this.autoRotateSlides.bind(this), this.autoplaySpeed);
  972.            }
  973.  
  974.            pause() {
  975.                this.slider.setAttribute('aria-live', 'polite');
  976.                clearInterval(this.autoplay);
  977.            }
  978.  
  979.            togglePlayButtonState(pauseAutoplay) {
  980.                if (pauseAutoplay) {
  981.                    this.sliderAutoplayButton.classList.add('slideshow__autoplay--paused');
  982.                    this.sliderAutoplayButton.setAttribute('aria-label', window.accessibilityStrings.playSlideshow);
  983.                } else {
  984.                    this.sliderAutoplayButton.classList.remove('slideshow__autoplay--paused');
  985.                    this.sliderAutoplayButton.setAttribute('aria-label', window.accessibilityStrings.pauseSlideshow);
  986.                }
  987.            }
  988.  
  989.            autoRotateSlides() {
  990.                const slideScrollPosition =
  991.                    this.currentPage === this.sliderItems.length
  992.                        ? 0
  993.                        : this.slider.scrollLeft + this.sliderItemOffset;
  994.  
  995.                this.setSlidePosition(slideScrollPosition);
  996.                this.applyAnimationToAnnouncementBar();
  997.            }
  998.  
  999.            setSlideVisibility(event) {
  1000.                this.sliderItemsToShow.forEach((item, index) => {
  1001.                    const linkElements = item.querySelectorAll('a');
  1002.                    if (index === this.currentPage - 1) {
  1003.                        if (linkElements.length)
  1004.                            linkElements.forEach((button) => {
  1005.                                button.removeAttribute('tabindex');
  1006.                            });
  1007.                        item.setAttribute('aria-hidden', 'false');
  1008.                        item.removeAttribute('tabindex');
  1009.                    } else {
  1010.                        if (linkElements.length)
  1011.                            linkElements.forEach((button) => {
  1012.                                button.setAttribute('tabindex', '-1');
  1013.                            });
  1014.                        item.setAttribute('aria-hidden', 'true');
  1015.                        item.setAttribute('tabindex', '-1');
  1016.                    }
  1017.                });
  1018.                this.wasClicked = false;
  1019.            }
  1020.  
  1021.            applyAnimationToAnnouncementBar(button = 'next') {
  1022.                if (!this.announcementBarSlider) return;
  1023.  
  1024.                const itemsCount = this.sliderItems.length;
  1025.                const increment = button === 'next' ? 1 : -1;
  1026.  
  1027.                const currentIndex = this.currentPage - 1;
  1028.                let nextIndex = (currentIndex + increment) % itemsCount;
  1029.                nextIndex = nextIndex === -1 ? itemsCount - 1 : nextIndex;
  1030.  
  1031.                const nextSlide = this.sliderItems[nextIndex];
  1032.                const currentSlide = this.sliderItems[currentIndex];
  1033.  
  1034.                const animationClassIn = 'announcement-bar-slider--fade-in';
  1035.                const animationClassOut = 'announcement-bar-slider--fade-out';
  1036.  
  1037.                const isFirstSlide = currentIndex === 0;
  1038.                const isLastSlide = currentIndex === itemsCount - 1;
  1039.  
  1040.                const shouldMoveNext = (button === 'next' && !isLastSlide) || (button === 'previous' && isFirstSlide);
  1041.                const direction = shouldMoveNext ? 'next' : 'previous';
  1042.  
  1043.                currentSlide.classList.add(`${animationClassOut}-${direction}`);
  1044.                nextSlide.classList.add(`${animationClassIn}-${direction}`);
  1045.  
  1046.                setTimeout(() => {
  1047.                    currentSlide.classList.remove(`${animationClassOut}-${direction}`);
  1048.                    nextSlide.classList.remove(`${animationClassIn}-${direction}`);
  1049.                }, this.announcerBarAnimationDelay * 2);
  1050.            }
  1051.  
  1052.            linkToSlide(event) {
  1053.                event.preventDefault();
  1054.                const slideScrollPosition =
  1055.                    this.slider.scrollLeft +
  1056.                    this.sliderFirstItemNode.clientWidth *
  1057.                    (this.sliderControlLinksArray.indexOf(event.currentTarget) + 1 - this.currentPage);
  1058.                this.slider.scrollTo({
  1059.                    left: slideScrollPosition,
  1060.                });
  1061.            }
  1062.        }
  1063.  
  1064.        customElements.define('slideshow-component', SlideshowComponent);
  1065.  
  1066.        class VariantSelects extends HTMLElement {
  1067.            constructor() {
  1068.                super();
  1069.                this.addEventListener('change', this.onVariantChange);
  1070.            }
  1071.  
  1072.            onVariantChange() {
  1073.                this.updateOptions();
  1074.                this.updateMasterId();
  1075.                this.toggleAddButton(true, '', false);
  1076.                this.updatePickupAvailability();
  1077.                this.removeErrorMessage();
  1078.                this.updateVariantStatuses();
  1079.  
  1080.                if (!this.currentVariant) {
  1081.                    this.toggleAddButton(true, '', true);
  1082.                    this.setUnavailable();
  1083.                } else {
  1084.                    this.updateMedia();
  1085.                    this.updateURL();
  1086.                    this.updateVariantInput();
  1087.                    this.renderProductInfo();
  1088.                    this.updateShareUrl();
  1089.                }
  1090.            }
  1091.  
  1092.            updateOptions() {
  1093.                this.options = Array.from(this.querySelectorAll('select'), (select) => select.value);
  1094.            }
  1095.  
  1096.            updateMasterId() {
  1097.                this.currentVariant = this.getVariantData().find((variant) => {
  1098.                    return !variant.options
  1099.                        .map((option, index) => {
  1100.                            return this.options[index] === option;
  1101.                        })
  1102.                        .includes(false);
  1103.                });
  1104.            }
  1105.  
  1106.            updateMedia() {
  1107.                if (!this.currentVariant) return;
  1108.                if (!this.currentVariant.featured_media) return;
  1109.  
  1110.                const mediaGalleries = document.querySelectorAll(`[id^="MediaGallery-${this.dataset.section}"]`);
  1111.                mediaGalleries.forEach((mediaGallery) =>
  1112.                    mediaGallery.setActiveMedia(`${this.dataset.section}-${this.currentVariant.featured_media.id}`, true)
  1113.                );
  1114.  
  1115.                const modalContent = document.querySelector(`#ProductModal-${this.dataset.section} .product-media-modal__content`);
  1116.                if (!modalContent) return;
  1117.                const newMediaModal = modalContent.querySelector(`[data-media-id="${this.currentVariant.featured_media.id}"]`);
  1118.                modalContent.prepend(newMediaModal);
  1119.            }
  1120.  
  1121.            updateURL() {
  1122.                if (!this.currentVariant || this.dataset.updateUrl === 'false') return;
  1123.                window.history.replaceState({}, '', `${this.dataset.url}?variant=${this.currentVariant.id}`);
  1124.            }
  1125.  
  1126.            updateShareUrl() {
  1127.                const shareButton = document.getElementById(`Share-${this.dataset.section}`);
  1128.                if (!shareButton || !shareButton.updateUrl) return;
  1129.                shareButton.updateUrl(`${window.shopUrl}${this.dataset.url}?variant=${this.currentVariant.id}`);
  1130.            }
  1131.  
  1132.            updateVariantInput() {
  1133.                const productForms = document.querySelectorAll(
  1134.                    `#product-form-${this.dataset.section}, #product-form-installment-${this.dataset.section}`
  1135.                );
  1136.                productForms.forEach((productForm) => {
  1137.                    const input = productForm.querySelector('input[name="id"]');
  1138.                    input.value = this.currentVariant.id;
  1139.                    input.dispatchEvent(new Event('change', { bubbles: true }));
  1140.                });
  1141.            }
  1142.  
  1143.            updateVariantStatuses() {
  1144.                const selectedOptionOneVariants = this.variantData.filter(
  1145.                    (variant) => this.querySelector(':checked').value === variant.option1
  1146.                );
  1147.                const inputWrappers = [...this.querySelectorAll('.product-form__input')];
  1148.                inputWrappers.forEach((option, index) => {
  1149.                    if (index === 0) return;
  1150.                    const optionInputs = [...option.querySelectorAll('input[type="radio"], option')];
  1151.                    const previousOptionSelected = inputWrappers[index - 1].querySelector(':checked').value;
  1152.                    const availableOptionInputsValue = selectedOptionOneVariants
  1153.                        .filter((variant) => variant.available && variant[`option${index}`] === previousOptionSelected)
  1154.                        .map((variantOption) => variantOption[`option${index + 1}`]);
  1155.                    this.setInputAvailability(optionInputs, availableOptionInputsValue);
  1156.                });
  1157.            }
  1158.  
  1159.            setInputAvailability(listOfOptions, listOfAvailableOptions) {
  1160.                listOfOptions.forEach((input) => {
  1161.                    if (listOfAvailableOptions.includes(input.getAttribute('value'))) {
  1162.                        input.innerText = input.getAttribute('value');
  1163.                    } else {
  1164.                        input.innerText = window.variantStrings.unavailable_with_option.replace('[value]', input.getAttribute('value'));
  1165.                    }
  1166.                });
  1167.            }
  1168.  
  1169.            updatePickupAvailability() {
  1170.                const pickUpAvailability = document.querySelector('pickup-availability');
  1171.                if (!pickUpAvailability) return;
  1172.  
  1173.                if (this.currentVariant && this.currentVariant.available) {
  1174.                    pickUpAvailability.fetchAvailability(this.currentVariant.id);
  1175.                } else {
  1176.                    pickUpAvailability.removeAttribute('available');
  1177.                    pickUpAvailability.innerHTML = '';
  1178.                }
  1179.            }
  1180.  
  1181.            removeErrorMessage() {
  1182.                const section = this.closest('section');
  1183.                if (!section) return;
  1184.  
  1185.                const productForm = section.querySelector('product-form');
  1186.                if (productForm) productForm.handleErrorMessage();
  1187.            }
  1188.  
  1189.            renderProductInfo() {
  1190.                const requestedVariantId = this.currentVariant.id;
  1191.                const sectionId = this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section;
  1192.  
  1193.                fetch(
  1194.                    `${this.dataset.url}?variant=${requestedVariantId}&section_id=${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section
  1195.                    }`
  1196.                )
  1197.                    .then((response) => response.text())
  1198.                    .then((responseText) => {
  1199.                        // prevent unnecessary ui changes from abandoned selections
  1200.                        if (this.currentVariant.id !== requestedVariantId) return;
  1201.  
  1202.                        const html = new DOMParser().parseFromString(responseText, 'text/html');
  1203.                        const destination = document.getElementById(`price-${this.dataset.section}`);
  1204.                        const source = html.getElementById(
  1205.                            `price-${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section}`
  1206.                        );
  1207.                        const skuSource = html.getElementById(
  1208.                            `Sku-${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section}`
  1209.                        );
  1210.                        const skuDestination = document.getElementById(`Sku-${this.dataset.section}`);
  1211.                        const inventorySource = html.getElementById(
  1212.                            `Inventory-${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section}`
  1213.                        );
  1214.                        const inventoryDestination = document.getElementById(`Inventory-${this.dataset.section}`);
  1215.  
  1216.                        const volumePricingSource = html.getElementById(
  1217.                            `Volume-${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section}`
  1218.                        );
  1219.  
  1220.                        const pricePerItemDestination = document.getElementById(`Price-Per-Item-${this.dataset.section}`);
  1221.                        const pricePerItemSource = html.getElementById(`Price-Per-Item-${this.dataset.originalSection ? this.dataset.originalSection : this.dataset.section}`);
  1222.  
  1223.                        const volumePricingDestination = document.getElementById(`Volume-${this.dataset.section}`);
  1224.                        const qtyRules = document.getElementById(`Quantity-Rules-${this.dataset.section}`);
  1225.                        const volumeNote = document.getElementById(`Volume-Note-${this.dataset.section}`);
  1226.  
  1227.                        if (volumeNote) volumeNote.classList.remove('hidden');
  1228.                        if (volumePricingDestination) volumePricingDestination.classList.remove('hidden');
  1229.                        if (qtyRules) qtyRules.classList.remove('hidden');
  1230.  
  1231.                        if (source && destination) destination.innerHTML = source.innerHTML;
  1232.                        if (inventorySource && inventoryDestination) inventoryDestination.innerHTML = inventorySource.innerHTML;
  1233.                        if (skuSource && skuDestination) {
  1234.                            skuDestination.innerHTML = skuSource.innerHTML;
  1235.                            skuDestination.classList.toggle('hidden', skuSource.classList.contains('hidden'));
  1236.                        }
  1237.  
  1238.                        if (volumePricingSource && volumePricingDestination) {
  1239.                            volumePricingDestination.innerHTML = volumePricingSource.innerHTML;
  1240.                        }
  1241.  
  1242.                        if (pricePerItemSource && pricePerItemDestination) {
  1243.                            pricePerItemDestination.innerHTML = pricePerItemSource.innerHTML;
  1244.                            pricePerItemDestination.classList.toggle('hidden', pricePerItemSource.classList.contains('hidden'));
  1245.                        }
  1246.  
  1247.                        const price = document.getElementById(`price-${this.dataset.section}`);
  1248.  
  1249.                        if (price) price.classList.remove('hidden');
  1250.  
  1251.                        if (inventoryDestination)
  1252.                            inventoryDestination.classList.toggle('hidden', inventorySource.innerText === '');
  1253.  
  1254.                        const addButtonUpdated = html.getElementById(`ProductSubmitButton-${sectionId}`);
  1255.                        this.toggleAddButton(
  1256.                            addButtonUpdated ? addButtonUpdated.hasAttribute('disabled') : true,
  1257.                            window.variantStrings.soldOut
  1258.                        );
  1259.  
  1260.                        publish(PUB_SUB_EVENTS.variantChange, {
  1261.                            data: {
  1262.                                sectionId,
  1263.                                html,
  1264.                                variant: this.currentVariant,
  1265.                            },
  1266.                        });
  1267.                    });
  1268.            }
  1269.  
  1270.            toggleAddButton(disable = true, text, modifyClass = true) {
  1271.                const productForm = document.getElementById(`product-form-${this.dataset.section}`);
  1272.                if (!productForm) return;
  1273.                const addButton = productForm.querySelector('[name="add"]');
  1274.                const addButtonText = productForm.querySelector('[name="add"] > span');
  1275.                if (!addButton) return;
  1276.  
  1277.                if (disable) {
  1278.                    addButton.setAttribute('disabled', 'disabled');
  1279.                    if (text) addButtonText.textContent = text;
  1280.                } else {
  1281.                    addButton.removeAttribute('disabled');
  1282.                    addButtonText.textContent = window.variantStrings.addToCart;
  1283.                }
  1284.  
  1285.                if (!modifyClass) return;
  1286.            }
  1287.  
  1288.            setUnavailable() {
  1289.                const button = document.getElementById(`product-form-${this.dataset.section}`);
  1290.                const addButton = button.querySelector('[name="add"]');
  1291.                const addButtonText = button.querySelector('[name="add"] > span');
  1292.                const price = document.getElementById(`price-${this.dataset.section}`);
  1293.                const inventory = document.getElementById(`Inventory-${this.dataset.section}`);
  1294.                const sku = document.getElementById(`Sku-${this.dataset.section}`);
  1295.                const pricePerItem = document.getElementById(`Price-Per-Item-${this.dataset.section}`);
  1296.                const volumeNote = document.getElementById(`Volume-Note-${this.dataset.section}`);
  1297.                const volumeTable = document.getElementById(`Volume-${this.dataset.section}`);
  1298.                const qtyRules = document.getElementById(`Quantity-Rules-${this.dataset.section}`);
  1299.  
  1300.                if (!addButton) return;
  1301.                addButtonText.textContent = window.variantStrings.unavailable;
  1302.                if (price) price.classList.add('hidden');
  1303.                if (inventory) inventory.classList.add('hidden');
  1304.                if (sku) sku.classList.add('hidden');
  1305.                if (pricePerItem) pricePerItem.classList.add('hidden');
  1306.                if (volumeNote) volumeNote.classList.add('hidden');
  1307.                if (volumeTable) volumeTable.classList.add('hidden');
  1308.                if (qtyRules) qtyRules.classList.add('hidden');
  1309.            }
  1310.  
  1311.            getVariantData() {
  1312.                this.variantData = this.variantData || JSON.parse(this.querySelector('[type="application/json"]').textContent);
  1313.                return this.variantData;
  1314.            }
  1315.        }
  1316.  
  1317.        customElements.define('variant-selects', VariantSelects);
  1318.  
  1319.        class VariantRadios extends VariantSelects {
  1320.            constructor() {
  1321.                super();
  1322.            }
  1323.  
  1324.            setInputAvailability(listOfOptions, listOfAvailableOptions) {
  1325.                listOfOptions.forEach((input) => {
  1326.                    if (listOfAvailableOptions.includes(input.getAttribute('value'))) {
  1327.                        input.classList.remove('disabled');
  1328.                    } else {
  1329.                        input.classList.add('disabled');
  1330.                    }
  1331.                });
  1332.            }
  1333.  
  1334.            updateOptions() {
  1335.                const fieldsets = Array.from(this.querySelectorAll('fieldset'));
  1336.                this.options = fieldsets.map((fieldset) => {
  1337.                    return Array.from(fieldset.querySelectorAll('input')).find((radio) => radio.checked).value;
  1338.                });
  1339.            }
  1340.        }
  1341.  
  1342.        customElements.define('variant-radios', VariantRadios);
  1343.  
  1344.        class ProductRecommendations extends HTMLElement {
  1345.            constructor() {
  1346.                super();
  1347.            }
  1348.  
  1349.            connectedCallback() {
  1350.                const handleIntersection = (entries, observer) => {
  1351.                    if (!entries[0].isIntersecting) return;
  1352.                    observer.unobserve(this);
  1353.  
  1354.                    fetch(this.dataset.url)
  1355.                        .then((response) => response.text())
  1356.                        .then((text) => {
  1357.                            const html = document.createElement('div');
  1358.                            html.innerHTML = text;
  1359.                            const recommendations = html.querySelector('product-recommendations');
  1360.  
  1361.                            if (recommendations && recommendations.innerHTML.trim().length) {
  1362.                                this.innerHTML = recommendations.innerHTML;
  1363.                            }
  1364.  
  1365.                            if (!this.querySelector('slideshow-component') && this.classList.contains('complementary-products')) {
  1366.                                this.remove();
  1367.                            }
  1368.  
  1369.                            if (html.querySelector('.grid__item')) {
  1370.                                this.classList.add('product-recommendations--loaded');
  1371.                            }
  1372.                        })
  1373.                        .catch((e) => {
  1374.                            console.error(e);
  1375.                        });
  1376.                };
  1377.  
  1378.                new IntersectionObserver(handleIntersection.bind(this), { rootMargin: '0px 0px 400px 0px' }).observe(this);
  1379.            }
  1380.        }
  1381.  
  1382.        customElements.define('product-recommendations', ProductRecommendations);
  1383.    </script>
  1384.    <script>
  1385.        /** Shopify CDN: Minification failed
  1386.    
  1387.    Line 16:0 Transforming const to the configured target environment ("es5") is not supported yet
  1388.    Line 17:0 Transforming const to the configured target environment ("es5") is not supported yet
  1389.    Line 18:0 Transforming const to the configured target environment ("es5") is not supported yet
  1390.    Line 19:0 Transforming const to the configured target environment ("es5") is not supported yet
  1391.    Line 25:6 Transforming const to the configured target environment ("es5") is not supported yet
  1392.    Line 39:49 Transforming default arguments to the configured target environment ("es5") is not supported yet
  1393.    Line 39:79 Transforming default arguments to the configured target environment ("es5") is not supported yet
  1394.    Line 40:2 Transforming const to the configured target environment ("es5") is not supported yet
  1395.    Line 50:2 Transforming const to the configured target environment ("es5") is not supported yet
  1396.    Line 60:2 Transforming const to the configured target environment ("es5") is not supported yet
  1397.    ... and 9 more hidden warnings
  1398.    
  1399.    **/
  1400.        const SCROLL_ANIMATION_TRIGGER_CLASSNAME = 'scroll-trigger';
  1401.        const SCROLL_ANIMATION_OFFSCREEN_CLASSNAME = 'scroll-trigger--offscreen';
  1402.        const SCROLL_ZOOM_IN_TRIGGER_CLASSNAME = 'animate--zoom-in';
  1403.        const SCROLL_ANIMATION_CANCEL_CLASSNAME = 'scroll-trigger--cancel';
  1404.  
  1405.        // Scroll in animation logic
  1406.        function onIntersection(elements, observer) {
  1407.            elements.forEach((element, index) => {
  1408.                if (element.isIntersecting) {
  1409.                    const elementTarget = element.target;
  1410.                    if (elementTarget.classList.contains(SCROLL_ANIMATION_OFFSCREEN_CLASSNAME)) {
  1411.                        elementTarget.classList.remove(SCROLL_ANIMATION_OFFSCREEN_CLASSNAME);
  1412.                        if (elementTarget.hasAttribute('data-cascade'))
  1413.                            elementTarget.setAttribute('style', `--animation-order: ${index};`);
  1414.                    }
  1415.                    observer.unobserve(elementTarget);
  1416.                } else {
  1417.                    element.target.classList.add(SCROLL_ANIMATION_OFFSCREEN_CLASSNAME);
  1418.                    element.target.classList.remove(SCROLL_ANIMATION_CANCEL_CLASSNAME);
  1419.                }
  1420.            });
  1421.        }
  1422.  
  1423.        function initializeScrollAnimationTrigger(rootEl = document, isDesignModeEvent = false) {
  1424.            const animationTriggerElements = Array.from(rootEl.getElementsByClassName(SCROLL_ANIMATION_TRIGGER_CLASSNAME));
  1425.            if (animationTriggerElements.length === 0) return;
  1426.  
  1427.            if (isDesignModeEvent) {
  1428.                animationTriggerElements.forEach((element) => {
  1429.                    element.classList.add('scroll-trigger--design-mode');
  1430.                });
  1431.                return;
  1432.            }
  1433.  
  1434.            const observer = new IntersectionObserver(onIntersection, {
  1435.                rootMargin: '0px 0px -50px 0px',
  1436.            });
  1437.            animationTriggerElements.forEach((element) => observer.observe(element));
  1438.        }
  1439.  
  1440.        // Zoom in animation logic
  1441.        function initializeScrollZoomAnimationTrigger() {
  1442.            if (window.matchMedia('(prefers-reduced-motion: reduce)').matches) return;
  1443.  
  1444.            const animationTriggerElements = Array.from(document.getElementsByClassName(SCROLL_ZOOM_IN_TRIGGER_CLASSNAME));
  1445.  
  1446.            if (animationTriggerElements.length === 0) return;
  1447.  
  1448.            const scaleAmount = 0.2 / 100;
  1449.  
  1450.            animationTriggerElements.forEach((element) => {
  1451.                let elementIsVisible = false;
  1452.                const observer = new IntersectionObserver((elements) => {
  1453.                    elements.forEach((entry) => {
  1454.                        elementIsVisible = entry.isIntersecting;
  1455.                    });
  1456.                });
  1457.                observer.observe(element);
  1458.  
  1459.                element.style.setProperty('--zoom-in-ratio', 1 + scaleAmount * percentageSeen(element));
  1460.  
  1461.                window.addEventListener(
  1462.                    'scroll',
  1463.                    throttle(() => {
  1464.                        if (!elementIsVisible) return;
  1465.  
  1466.                        element.style.setProperty('--zoom-in-ratio', 1 + scaleAmount * percentageSeen(element));
  1467.                    }),
  1468.                    { passive: true }
  1469.                );
  1470.            });
  1471.        }
  1472.  
  1473.        function percentageSeen(element) {
  1474.            const viewportHeight = window.innerHeight;
  1475.            const scrollY = window.scrollY;
  1476.            const elementPositionY = element.getBoundingClientRect().top + scrollY;
  1477.            const elementHeight = element.offsetHeight;
  1478.  
  1479.            if (elementPositionY > scrollY + viewportHeight) {
  1480.                // If we haven't reached the image yet
  1481.                return 0;
  1482.            } else if (elementPositionY + elementHeight < scrollY) {
  1483.                // If we've completely scrolled past the image
  1484.                return 100;
  1485.            }
  1486.  
  1487.            // When the image is in the viewport
  1488.            const distance = scrollY + viewportHeight - elementPositionY;
  1489.            let percentage = distance / ((viewportHeight + elementHeight) / 100);
  1490.            return Math.round(percentage);
  1491.        }
  1492.  
  1493.        window.addEventListener('DOMContentLoaded', () => {
  1494.            initializeScrollAnimationTrigger();
  1495.            initializeScrollZoomAnimationTrigger();
  1496.        });
  1497.  
  1498.        if (Shopify.designMode) {
  1499.            document.addEventListener('shopify:section:load', (event) => initializeScrollAnimationTrigger(event.target, true));
  1500.            document.addEventListener('shopify:section:reorder', () => initializeScrollAnimationTrigger(document, true));
  1501.        }  
  1502.    </script>
  1503.    <script>
  1504.        window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');
  1505.    </script>
  1506.    <meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/67119169539/digital_wallets/dialog">
  1507.    <link rel="alternate" type="application/json+oembed" href=".html">
  1508.    <script async="async" src="https://infinite-style.com/"></script>
  1509.    <script id="shopify-features" type="application/json">
  1510.      {
  1511.        "accessToken": "bd35w3423f0855sf383c4483c3cc50a6",
  1512.        "betas": ["rich-media-storefront-analytics"],
  1513.        "domain": "https://infinite-style.com/",
  1514.        "predictiveSearch": true,
  1515.        "shopId": 37356114305,
  1516.        "smart_payment_buttons_url": "https:\/\/allamericanwindowtinting.com\/cdn\/shopifycloud\/payment-sheet\/assets\/latest\/spb.en.js",
  1517.        "dynamic_checkout_cart_url": "https:\/\/allamericanwindowtinting.com\/cdn\/shopifycloud\/payment-sheet\/assets\/latest\/dynamic-checkout-cart.en.js",
  1518.        "locale": "en",
  1519.        "optimusEnabled": true,
  1520.        "optimusHidden": false,
  1521.        "betterDynamicCheckoutRecommendationVariant": "control",
  1522.        "shopPromisePDPV3Enabled": false
  1523.      }
  1524.    </script>
  1525.    <script type="application/ld+json">
  1526.      {
  1527.        "@context": "https://schema.org",
  1528.        "@type": "SoftwareApplication",
  1529.        "name": "KOITOTO",
  1530.        "operatingSystem": "ANDROID",
  1531.        "applicationCategory": "GameApplication",
  1532.        "aggregateRating": {
  1533.          "@type": "AggregateRating",
  1534.          "ratingValue": "5",
  1535.          "ratingCount": "2907771"
  1536.        },
  1537.        "offers": {
  1538.          "@type": "Offer",
  1539.          "price": "5000.00",
  1540.          "priceCurrency": "IDR"
  1541.        }
  1542.      }
  1543.    </script>
  1544.    <script>
  1545.        var Shopify = Shopify || {};
  1546.        Shopify.shop = "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang";
  1547.        Shopify.locale = "en";
  1548.        Shopify.currency = {
  1549.            active: "IDR",
  1550.            rate: "1.0"
  1551.        };
  1552.        Shopify.country = "ID";
  1553.        Shopify.theme = {
  1554.            name: "Refresh",
  1555.            id: 138081403093,
  1556.            theme_store_id: 1567,
  1557.            role: "main"
  1558.        };
  1559.        Shopify.theme.handle = "null";
  1560.        Shopify.theme.style = {
  1561.            id: null,
  1562.            handle: null
  1563.        };
  1564.        Shopify.cdnHost = "https://infinite-style.com//cdn";
  1565.        Shopify.routes = Shopify.routes || {};
  1566.        Shopify.routes.root = "https://infinite-style.com/";
  1567.    </script>
  1568.    <script type="module">
  1569.        ! function (o) {
  1570.            (o.Shopify = o.Shopify || {}).modules = !0
  1571.        }(window);
  1572.    </script>
  1573.    <script>
  1574.        ! function (o) {
  1575.            function n() {
  1576.                var o = [];
  1577.  
  1578.                function n() {
  1579.                    o.push(Array.prototype.slice.apply(arguments))
  1580.                }
  1581.                return n.q = o, n
  1582.            }
  1583.            var t = o.Shopify = o.Shopify || {};
  1584.            t.loadFeatures = n(), t.autoloadFeatures = n()
  1585.        }(window);
  1586.    </script>
  1587.    <script id="__st">
  1588.        var __st = {
  1589.            a: 67119169539,
  1590.            offset: 0,
  1591.            reqid: "816b44e4-400f-420d-8784-4bd8093b92b1",
  1592.            pageurl: "https://infinite-style.com/",
  1593.            u: "64d86d143528",
  1594.            p: "product",
  1595.            rtyp: "product",
  1596.            rid: 8226828321669
  1597.        };
  1598.    </script>
  1599.    <script>
  1600.        window.ShopifyPaypalV4VisibilityTracking = true;
  1601.    </script>
  1602.    <script>
  1603.        ! function (o) {
  1604.            o.addEventListener("DOMContentLoaded", function () {
  1605.                window.Shopify = window.Shopify || {}, window.Shopify.recaptchaV3 = window.Shopify.recaptchaV3 || {
  1606.                    siteKey: "6LcCR2cUAAAAANS1Gpq_mDIJ2pQuJphsSQaUEuc9"
  1607.                };
  1608.                var t = ['form[action*="/contact"] input[name="form_type"][value="contact"]', 'form[action*="/comments"] input[name="form_type"][value="new_comment"]', 'form[action*="/account"] input[name="form_type"][value="customer_login"]', 'form[action*="/account"] input[name="form_type"][value="recover_customer_password"]', 'form[action*="/account"] input[name="form_type"][value="create_customer"]', 'form[action*="/contact"] input[name="form_type"][value="customer"]'].join(",");
  1609.  
  1610.                function n(e) {
  1611.                    e = e.target;
  1612.                    null == e || null != (e = function e(t, n) {
  1613.                        if (null == t.parentElement) return null;
  1614.                        if ("FORM" != t.parentElement.tagName) return e(t.parentElement, n);
  1615.                        for (var o = t.parentElement.action, r = 0; r < n.length; r++)
  1616.                            if (-1 !== o.indexOf(n[r])) return t.parentElement;
  1617.                        return null
  1618.                    }(e, ["/contact", "/comments", "/account"])) && null != e.querySelector(t) && ((e = o.createElement("script")).setAttribute("src", "../../../../cdn.shopify.com/shopifycloud/storefront-recaptcha-v3/v0.6/index.js"), o.body.appendChild(e), o.removeEventListener("focus", n, !0), o.removeEventListener("change", n, !0), o.removeEventListener("click", n, !0))
  1619.                }
  1620.                o.addEventListener("click", n, !0), o.addEventListener("change", n, !0), o.addEventListener("focus", n, !0)
  1621.            })
  1622.        }(document);
  1623.    </script>
  1624.    <script>
  1625.        !function () { var e = function (e) { var t = { exports: {} }; return e.call(t.exports, t, t.exports), t.exports }, t = function () { function e(e, t) { var r = [], o = !0, n = !1, a = void 0; try { for (var i, s = e[Symbol.iterator](); !(o = (i = s.next()).done) && (r.push(i.value), !t || r.length !== t); o = !0); } catch (e) { n = !0, a = e } finally { try { !o && s.return && s.return() } finally { if (n) throw a } } return r } return function (t, r) { if (Array.isArray(t)) return t; if (Symbol.iterator in Object(t)) return e(t, r); throw new TypeError("Invalid attempt to destructure non-iterable instance") } }(), r = function (e) { return e && e.__esModule ? e : { default: e } }, o = function (e) { if (Array.isArray(e)) { for (var t = 0, r = Array(e.length); t < e.length; t++)r[t] = e[t]; return r } return Array.from(e) }, n = e((function (e, t) { "use strict"; function r(e) { "loading" !== document.readyState ? e() : document.addEventListener ? document.addEventListener("DOMContentLoaded", e) : document.attachEvent("onreadystatechange", (function () { "loading" !== document.readyState && e() })) } Object.defineProperty(t, "__esModule", { value: !0 }), t.default = r })), a = e((function (e, t) { "use strict"; function r(e) { return new Error('The feature { name: "' + e.name + '", version: "' + e.version + '"} does not exist') } function o(e) { return new Error("Could not create registry entry " + e) } function n() { return new Error("Cannot register a feature with the same selector twice") } function a(e) { return new Error("Features should be an Array. Received: " + JSON.stringify(e)) } function i(e) { return new Error('Features should be defined as `{ name: "name", version: "version" }`. Received: ' + JSON.stringify(e)) } function s(e, t) { return new Error(e + " has already been loaded at version " + t) } Object.defineProperty(t, "__esModule", { value: !0 }), t.featureNotFound = r, t.couldNotCreateEntry = o, t.couldNotAddToQuerySelectors = n, t.invalidFeaturesArray = a, t.invalidFeature = i, t.alreadyLoaded = s })), i = e((function (e, t) { "use strict"; function r() { if (a) return a; var e = document.getElementById("shopify-features"); if (e) try { a = JSON.parse(e.textContent) } catch (e) { } else a = {}; return a } function o() { var e = r(); if (e) try { return e.betas.reduce((function (e, t) { return e[t] = !0, e }), {}) } catch (e) { } return {} } function n() { return r().locale || "en" } Object.defineProperty(t, "__esModule", { value: !0 }), t.getBetas = o, t.getLocale = n; var a = void 0 })), s = e((function (e, t) { "use strict"; function r() { } Object.defineProperty(t, "__esModule", { value: !0 }), t.default = r })), u = e((function (e, t) { "use strict"; function r() { function e(e, t) { r[e] = r[e] || []; for (var o = r[e], n = 0; n < o.length; n++) { var i = o[n], s = i.name, u = i.version; if (t.name === s) { if (t.version !== u) throw (0, a.couldNotAddToQuerySelectors)(e); return } } o.push(t) } function t() { return Object.keys(r).reduce((function (e, t) { if (!document.querySelector(t)) return e; var o = r[t]; return delete r[t], e.concat(o) }), []) } var r = {}; return { add: e, getFeatures: t } } Object.defineProperty(t, "__esModule", { value: !0 }), t.default = r })), l = e((function (e, t) { "use strict"; function r(e) { var t = e.name, r = e.baseName, o = e.version, n = e.betaFlag, s = e.fileName, l = e.fileNames, d = e.legacy, c = e.localized, f = e.localesSupported, h = e.autoLoadSelector, v = e.props, y = void 0 === v ? {} : v, m = t + "@" + (o || "latest"); if (u[m]) throw (0, a.couldNotCreateEntry)(m); h && (Array.isArray(h) ? h : [h]).forEach((function (e) { p.lookup.add(e, { name: t, version: o }) })); u[m] = { props: y, betaFlag: n, scriptId: m, name: t, baseName: r, version: o, locale: (0, i.getLocale)(), localized: c, localesSupported: f, legacy: d, fileName: s, fileNames: l } } function o() { l = {} } function n(e) { window.Shopify.modules ? (e.legacy = !1, e.props = { type: "module" }, r(e)) : e.hasLegacy && (e.legacy = !0, e.props = { nomodule: "" }, r(e)) } function s(e) { var t = e.name + "@" + (e.version || "latest"), r = u[t]; if (!r) throw (0, a.featureNotFound)(e); var o = r.name, n = r.baseName, i = r.version, s = r.localized && r.locale, d = r.legacy, c = r.localesSupported; if (l[o] && l[o] !== i) throw (0, a.alreadyLoaded)(t, l[o]); l[o] = i; var f = []; return (r.fileNames || [r.fileName]).forEach((function (e) { f.push((0, h.urlForFeature)({ name: o, baseName: n, version: i, legacy: d, locale: s, localesSupported: c, fileName: e })) })), 1 === f.length ? r.src = f[0] : f.length > 1 && (r.srcs = f), r } Object.defineProperty(t, "__esModule", { value: !0 }), t.reset = o, t.register = n, t.getEntry = s; var u = {}, l = {} })), d = e((function (e, t) { "use strict"; function r() { n = null } function o(e) { return n ? n[e] : (n = (0, i.getBetas)(), o(e)) } Object.defineProperty(t, "__esModule", { value: !0 }), t.resetBetas = r, t.default = o; var n = null })), c = e((function (e, t) { "use strict"; function r(e) { return a.indexOf(e) > -1 } function o(e) { return i.indexOf(e) > -1 } function n(e, t, n) { function s() { a.push(c), d(), n(null, c) } function u() { i.push(c), d(), n(new Error("load error: " + e)) } function l() { c.addEventListener("load", s), c.addEventListener("error", u) } function d() { c.removeEventListener("load", s), c.removeEventListener("error", u) } var c = document.querySelector('script[src="' + e + '"]'); c && r(c) ? s() : c && o(c) ? u() : c ? l() : (c = document.createElement("script"), Object.keys(t).forEach((function (e) { c.setAttribute(e, t[e]) })), null === c.getAttribute("defer") && c.setAttribute("defer", ""), c.src = e, c.crossorigin = "anonymous", l(), document.head.appendChild(c)) } Object.defineProperty(t, "__esModule", { value: !0 }), t.default = n; var a = [], i = [] })), f = e((function (e, o) { "use strict"; function n(e, t, r) { return e.reduce((function (e, o) { var n = o.onLoad || v.default; try { var i = (0, l.getEntry)(o), s = i.betaFlag, u = !s || (0, h.default)(s); if (r && !u) throw (0, a.featureNotFound)(o); u && e.push([i, o]) } catch (e) { n(e), t.push(e) } return e }), []) } function i(e, r, o) { var n = e.reduce((function (e, r) { var o = t(r, 1)[0]; return e + (o.srcs ? o.srcs.length : 1) }), 0); 0 !== n ? e.forEach((function (e) { var a = t(e, 2), i = a[0], s = a[1].onLoad || v.default, u = i.srcs || [i.src], l = u.length, d = []; u.forEach((function (e) { (0, y.default)(e, i.props, (function (e) { e && (r.push(e), d.push(e)), 0 === --l && (0 === d.length ? s(null) : 1 === d.length ? s(d[0]) : s(d)), 0 === --n && o(r) })) })) })) : o(r) } function u(e, t, r) { var o = []; i(n(e, o, t), o, (function (e) { var t = 0 === e.length ? null : e; r(t) })) } function f(e, t) { u(e, !0, t) } function p(e, t) { u(e, !1, t) } Object.defineProperty(o, "__esModule", { value: !0 }), o.loadMultiple = u, o.loadMultipleErrorIfNotInBeta = f, o.loadMultipleSilentIfNotInBeta = p; var h = r(d), v = r(s), y = r(c) })), p = e((function (e, t) { "use strict"; function o(e) { var t = e || n.default; (0, f.loadMultipleSilentIfNotInBeta)(a.getFeatures(), t) } Object.defineProperty(t, "__esModule", { value: !0 }), t.lookup = void 0, t.default = o; var n = r(s), a = (0, r(u).default)(); t.lookup = a })), h = e((function (e, t) { "use strict"; function r(e) { var t = e.name, r = e.version, o = e.legacy, n = e.baseName, a = void 0 === n ? null : n, i = e.locale, s = void 0 === i ? null : i, u = e.localesSupported, l = void 0 === u ? [] : u, d = e.fileName, c = a || t, f = (void 0 === d ? null : d) || c; if (f.endsWith(".js") && (f = f.slice(0, -3)), o && (f += "-legacy"), s && (f = f + "." + (s = 0 === l.length || l.includes(s) ? s : "en")), ("shop-js" === t || t.startsWith("shop-js/")) && window.Shopify.spinShopJsUrl) return "https://" + window.Shopify.spinShopJsUrl + "/" + f + ".js"; var p = [window.Shopify && window.Shopify.cdnHost || "cdn.shopify.com", "shopifycloud", c]; return void 0 !== r && p.push("v" + r), p.push(f + ".js"), "https://" + p.join("/") } Object.defineProperty(t, "__esModule", { value: !0 }), t.urlForFeature = r })), v = e((function (e, t) { "use strict"; function r(e) { if (!e || "string" != typeof e.name || "string" != typeof e.version) throw (0, a.invalidFeature)(e) } Object.defineProperty(t, "__esModule", { value: !0 }), t.default = r })), y = e((function (e, t) { "use strict"; function o(e, t) { var r = t || i.default; if (Array.isArray(e)) return e.forEach(n.default), void (0, f.loadMultipleErrorIfNotInBeta)(e, r); throw (0, a.invalidFeaturesArray)(e) } Object.defineProperty(t, "__esModule", { value: !0 }), t.default = o; var n = r(v), i = r(s) })), m = e((function (e, t) { "use strict"; function r(e) { var t = null; return { get isObserving() { return Boolean(t) }, enable: function () { this.isObserving || (t = new MutationObserver((function (t) { for (var r = !1, o = 0; o < t.length; o++)if (t[o].addedNodes.length) { r = !0; break } r && e() }))).observe(document.body, { childList: !0, subtree: !0 }) }, disable: function () { this.isObserving && (t.disconnect(), t = null) } } } Object.defineProperty(t, "__esModule", { value: !0 }), t.default = r })), g = e((function (e, t) { "use strict"; function r(e, t) { var r = window.Shopify[e] && window.Shopify[e].q; r && Array.isArray(r) && r.forEach((function (e) { t.apply(void 0, o(e)) })), window.Shopify[e] = t } Object.defineProperty(t, "__esModule", { value: !0 }), t.default = r })); e((function (e, t) { "use strict"; Object.defineProperty(t, "__esModule", { value: !0 }), t.resetRegistry = t.resetBetas = t.register = void 0; var o = r(n), a = r(y), i = r(p), s = r(m), u = r(g); t.register = l.register, t.resetBetas = d.resetBetas, t.resetRegistry = l.reset, window.Shopify = window.Shopify || {}, window.Shopify.featureAssets = window.Shopify.featureAssets || {}, window.Shopify.featureAssets["shop-js"] = window.Shopify.featureAssets["shop-js"] || {}, (0, l.register)({ name: "model-viewer", version: "0.6", hasLegacy: !0, autoLoadSelector: 'model-viewer[data-shopify-feature="0.6"]' }), (0, l.register)({ name: "model-viewer", version: "0.7", hasLegacy: !0, autoLoadSelector: 'model-viewer[data-shopify-feature="0.7"]' }), (0, l.register)({ name: "model-viewer", version: "0.8", hasLegacy: !0, autoLoadSelector: 'model-viewer[data-shopify-feature="0.8"]' }), (0, l.register)({ name: "model-viewer", version: "1.2", hasLegacy: !0, autoLoadSelector: 'model-viewer[data-shopify-feature="1.2"]' }), (0, l.register)({ name: "model-viewer", version: "1.7", hasLegacy: !0, autoLoadSelector: 'model-viewer[data-shopify-feature="1.7"]' }), (0, l.register)({ name: "model-viewer", version: "1.9", hasLegacy: !0, autoLoadSelector: 'model-viewer[data-shopify-feature="1.9"]' }), (0, l.register)({ name: "model-viewer", version: "1.10", hasLegacy: !0, autoLoadSelector: 'model-viewer[data-shopify-feature="1.10"]' }), (0, l.register)({ name: "model-viewer", version: "1.11", hasLegacy: !0, autoLoadSelector: 'model-viewer[data-shopify-feature="1.11"]' }), (0, l.register)({ name: "model-viewer", version: "1.12", hasLegacy: !0, autoLoadSelector: 'model-viewer[data-shopify-feature="1.12"]' }), (0, l.register)({ name: "shop-js/shopify-payment-terms", baseName: "shop-js", hasLegacy: !1, localized: !1, fileNames: Shopify.featureAssets["shop-js"]["payment-terms"] || ["client"], autoLoadSelector: ["shopify-payment-terms"] }), (0, l.register)({ name: "shop-js/shop-login-button", baseName: "shop-js", hasLegacy: !1, localized: !1, fileNames: Shopify.featureAssets["shop-js"]["login-button"] || ["client"], autoLoadSelector: ["shop-login-button"] }), (0, l.register)({ name: "model-viewer-ui", version: "1.0", hasLegacy: !0, localized: !0, localesSupported: ["bg-BG", "cs", "da", "de", "el", "es", "fi", "fr", "hi", "hr-HR", "hu", "id", "it", "ja", "ko", "lt-LT", "ms", "nb", "nl", "pl", "pt-BR", "pt-PT", "ro-RO", "ru", "sk-SK", "sl-SI", "sv", "th", "tr", "vi", "zh-CN", "zh-TW"] }), (0, l.register)({ name: "shopify-xr", version: "1.0", baseName: "shopify-xr-js", fileName: "shopify-xr", localized: !0, localesSupported: ["bg-BG", "cs", "da", "de", "el", "es", "fi", "fr", "hi", "hr-HR", "hu", "id", "it", "ja", "ko", "lt-LT", "ms", "nb", "nl", "pl", "pt-BR", "pt-PT", "ro-RO", "ru", "sk-SK", "sl-SI", "sv", "th", "tr", "vi", "zh-CN", "zh-TW"] }), (0, l.register)({ name: "video-ui", baseName: "shopify-plyr", version: "1.0", hasLegacy: !0, localized: !0, localesSupported: ["cs", "da", "de", "es", "fi", "fr", "hi", "it", "ja", "ko", "ms", "nb", "nl", "pl", "pt-BR", "pt-PT", "sv", "th", "tr", "zh-CN", "zh-TW"] }), (0, l.register)({ name: "video-ui", baseName: "shopify-plyr", version: "1.1", hasLegacy: !0, localized: !0, localesSupported: ["cs", "da", "de", "es", "fi", "fr", "hi", "it", "ja", "ko", "ms", "nb", "nl", "pl", "pt-BR", "pt-PT", "sv", "th", "tr", "zh-CN", "zh-TW"] }), (0, l.register)({ name: "video-ui", baseName: "plyr", version: "2.0", hasLegacy: !0, localized: !0, localesSupported: ["bg-BG", "cs", "da", "de", "el", "es", "fi", "fr", "hi", "hr-HR", "hu", "id", "it", "ja", "ko", "lt-LT", "ms", "nb", "nl", "pl", "pt-BR", "pt-PT", "ro-RO", "ru", "sk-SK", "sl-SI", "sv", "th", "tr", "vi", "zh-CN", "zh-TW"], fileName: "shopify-plyr" }), (0, l.register)({ name: "media-analytics", version: "0.1", hasLegacy: !0, fileName: "analytics", betaFlag: "rich-media-storefront-analytics", autoLoadSelector: ["video", "model-viewer", 'a[rel="ar"]', 'a[href*="package=com.google.ar.core;action=android.intent.action.VIEW;"]', "[data-shopify-xr]", 'iframe[src^="https://www.youtube.com/embed/"]', 'iframe[src^="https://player.vimeo.com/video/"]'] }), (0, l.register)({ name: "consent-tracking-api", version: "0.1", hasLegacy: !0 }), (0, o.default)((function () { function e() { (0, i.default)((function (e) { if (e) throw e[0] })) } (0, u.default)("loadFeatures", a.default), (0, u.default)("autoloadFeatures", i.default), e(), (0, s.default)(e).enable() })) })) }("undefined" != typeof global ? global : "undefined" != typeof window && window);
  1626.    </script>
  1627.    <script>
  1628.        !function () {
  1629.            var t = function (t) { var n = { exports: {} }; return t.call(n.exports, n, n.exports), n.exports }, n = function (t) { return t && t.__esModule ? t : { default: t } }, e = t((function (t) { var n = {}.toString; t.exports = function (t) { return n.call(t).slice(8, -1) } })), r = t((function (t) { var n = t.exports = "undefined" != typeof window && window.Math == Math ? window : "undefined" != typeof self && self.Math == Math ? self : Function("return this")(); "number" == typeof __g && (__g = n) })), o = t((function (t) { var n = "__core-js_shared__", e = r[n] || (r[n] = {}); t.exports = function (t) { return e[t] || (e[t] = {}) } })), i = t((function (t) { var n = 0, e = Math.random(); t.exports = function (t) { return "Symbol(".concat(void 0 === t ? "" : t, ")_", (++n + e).toString(36)) } })), u = t((function (t) { var n = o("wks"), e = r.Symbol, u = "function" == typeof e; (t.exports = function (t) { return n[t] || (n[t] = u && e[t] || (u ? e : i)("Symbol." + t)) }).store = n })), c = t((function (t) { var n = u("toStringTag"), r = "Arguments" == e(function () { return arguments }()), o = function (t, n) { try { return t[n] } catch (t) { } }; t.exports = function (t) { var i, u, c; return void 0 === t ? "Undefined" : null === t ? "Null" : "string" == typeof (u = o(i = Object(t), n)) ? u : r ? e(i) : "Object" == (c = e(i)) && "function" == typeof i.callee ? "Arguments" : c } })), s = t((function (t) { t.exports = function (t) { return "object" == typeof t ? null !== t : "function" == typeof t } })), a = t((function (t) { t.exports = function (t) { if (!s(t)) throw TypeError(t + " is not an object!"); return t } })), f = t((function (t) { t.exports = function (t) { try { return !!t() } catch (t) { return !0 } } })), l = t((function (t) { t.exports = !f((function () { return 7 != Object.defineProperty({}, "a", { get: function () { return 7 } }).a })) })), p = t((function (t) { var n = r.document, e = s(n) && s(n.createElement); t.exports = function (t) { return e ? n.createElement(t) : {} } })), h = t((function (t) { t.exports = !l && !f((function () { return 7 != Object.defineProperty(p("div"), "a", { get: function () { return 7 } }).a })) })), d = t((function (t) { t.exports = function (t, n) { if (!s(t)) return t; var e, r; if (n && "function" == typeof (e = t.toString) && !s(r = e.call(t))) return r; if ("function" == typeof (e = t.valueOf) && !s(r = e.call(t))) return r; if (!n && "function" == typeof (e = t.toString) && !s(r = e.call(t))) return r; throw TypeError("Can't convert object to primitive value") } })), y = t((function (t, n) { var e = Object.defineProperty; n.f = l ? Object.defineProperty : function (t, n, r) { if (a(t), n = d(n, !0), a(r), h) try { return e(t, n, r) } catch (t) { } if ("get" in r || "set" in r) throw TypeError("Accessors not supported!"); return "value" in r && (t[n] = r.value), t } })), v = t((function (t) { t.exports = function (t, n) { return { enumerable: !(1 & t), configurable: !(2 & t), writable: !(4 & t), value: n } } })), m = t((function (t) { t.exports = l ? function (t, n, e) { return y.f(t, n, v(1, e)) } : function (t, n, e) { return t[n] = e, t } })), b = t((function (t) { var n = {}.hasOwnProperty; t.exports = function (t, e) { return n.call(t, e) } })), _ = t((function (t) { var n = t.exports = { version: "2.5.1" }; "number" == typeof __e && (__e = n) })), w = t((function (t) { var n = i("src"), e = "toString", o = Function[e], u = ("" + o).split(e); _.inspectSource = function (t) { return o.call(t) }, (t.exports = function (t, e, o, i) { var c = "function" == typeof o; c && (b(o, "name") || m(o, "name", e)), t[e] !== o && (c && (b(o, n) || m(o, n, t[e] ? "" + t[e] : u.join(String(e)))), t === r ? t[e] = o : i ? t[e] ? t[e] = o : m(t, e, o) : (delete t[e], m(t, e, o))) })(Function.prototype, e, (function () { return "function" == typeof this && this[n] || o.call(this) })) })), x = (t((function () { "use strict"; var t = {}; t[u("toStringTag")] = "z", t + "" != "[object z]" && w(Object.prototype, "toString", (function () { return "[object " + c(this) + "]" }), !0) })), t((function (t) { var n = Math.ceil, e = Math.floor; t.exports = function (t) { return isNaN(t = +t) ? 0 : (t > 0 ? e : n)(t) } }))), g = t((function (t) { t.exports = function (t) { if (null == t) throw TypeError("Can't call method on  " + t); return t } })), A = t((function (t) { t.exports = function (t) { return function (n, e) { var r, o, i = String(g(n)), u = x(e), c = i.length; return u < 0 || u >= c ? t ? "" : void 0 : (r = i.charCodeAt(u)) < 55296 || r > 56319 || u + 1 === c || (o = i.charCodeAt(u + 1)) < 56320 || o > 57343 ? t ? i.charAt(u) : r : t ? i.slice(u, u + 2) : o - 56320 + (r - 55296 << 10) + 65536 } } })), S = t((function (t) { t.exports = !1 })), P = t((function (t) { t.exports = function (t) { if ("function" != typeof t) throw TypeError(t + " is not a function!"); return t } })), E = t((function (t) { t.exports = function (t, n, e) { if (P(t), void 0 === n) return t; switch (e) { case 1: return function (e) { return t.call(n, e) }; case 2: return function (e, r) { return t.call(n, e, r) }; case 3: return function (e, r, o) { return t.call(n, e, r, o) } }return function () { return t.apply(n, arguments) } } })), O = t((function (t) { var n = "prototype", e = function (t, o, i) { var u, c, s, a, f = t & e.F, l = t & e.G, p = t & e.S, h = t & e.P, d = t & e.B, y = l ? r : p ? r[o] || (r[o] = {}) : (r[o] || {})[n], v = l ? _ : _[o] || (_[o] = {}), b = v[n] || (v[n] = {}); for (u in l && (i = o), i) s = ((c = !f && y && void 0 !== y[u]) ? y : i)[u], a = d && c ? E(s, r) : h && "function" == typeof s ? E(Function.call, s) : s, y && w(y, u, s, t & e.U), v[u] != s && m(v, u, a), h && b[u] != s && (b[u] = s) }; r.core = _, e.F = 1, e.G = 2, e.S = 4, e.P = 8, e.B = 16, e.W = 32, e.U = 64, e.R = 128, t.exports = e })), T = t((function (t) { t.exports = {} })), j = t((function (t) { t.exports = Object("z").propertyIsEnumerable(0) ? Object : function (t) { return "String" == e(t) ? t.split("") : Object(t) } })), F = t((function (t) { t.exports = function (t) { return j(g(t)) } })), k = t((function (t) { var n = Math.min; t.exports = function (t) { return t > 0 ? n(x(t), 9007199254740991) : 0 } })), B = t((function (t) { var n = Math.max, e = Math.min; t.exports = function (t, r) { return (t = x(t)) < 0 ? n(t + r, 0) : e(t, r) } })), L = t((function (t) { t.exports = function (t) { return function (n, e, r) { var o, i = F(n), u = k(i.length), c = B(r, u); if (t && e != e) { for (; u > c;)if ((o = i[c++]) != o) return !0 } else for (; u > c; c++)if ((t || c in i) && i[c] === e) return t || c || 0; return !t && -1 } } })), M = t((function (t) { var n = o("keys"); t.exports = function (t) { return n[t] || (n[t] = i(t)) } })), C = t((function (t) { var n = L(!1), e = M("IE_PROTO"); t.exports = function (t, r) { var o, i = F(t), u = 0, c = []; for (o in i) o != e && b(i, o) && c.push(o); for (; r.length > u;)b(i, o = r[u++]) && (~n(c, o) || c.push(o)); return c } })), I = t((function (t) { t.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",") })), R = t((function (t) { t.exports = Object.keys || function (t) { return C(t, I) } })), D = t((function (t) { t.exports = l ? Object.defineProperties : function (t, n) { a(t); for (var e, r = R(n), o = r.length, i = 0; o > i;)y.f(t, e = r[i++], n[e]); return t } })), U = t((function (t) { var n = r.document; t.exports = n && n.documentElement })), N = t((function (t) { var n = M("IE_PROTO"), e = function () { }, r = "prototype", o = function () { var t, n = p("iframe"), e = I.length, i = "<", u = ">"; for (n.style.display = "none", U.appendChild(n), n.src = "javascript:", (t = n.contentWindow.document).open(), t.write(i + "script" + u + "document.F=Object" + i + "/script" + u), t.close(), o = t.F; e--;)delete o[r][I[e]]; return o() }; t.exports = Object.create || function (t, i) { var u; return null !== t ? (e[r] = a(t), u = new e, e[r] = null, u[n] = t) : u = o(), void 0 === i ? u : D(u, i) } })), G = t((function (t) { var n = y.f, e = u("toStringTag"); t.exports = function (t, r, o) { t && !b(t = o ? t : t.prototype, e) && n(t, e, { configurable: !0, value: r }) } })), H = t((function (t) { "use strict"; var n = {}; m(n, u("iterator"), (function () { return this })), t.exports = function (t, e, r) { t.prototype = N(n, { next: v(1, r) }), G(t, e + " Iterator") } })), q = t((function (t) { t.exports = function (t) { return Object(g(t)) } })), z = t((function (t) { var n = M("IE_PROTO"), e = Object.prototype; t.exports = Object.getPrototypeOf || function (t) { return t = q(t), b(t, n) ? t[n] : "function" == typeof t.constructor && t instanceof t.constructor ? t.constructor.prototype : t instanceof Object ? e : null } })), V = t((function (t) { "use strict"; var n = u("iterator"), e = !([].keys && "next" in [].keys()), r = "@@iterator", o = "keys", i = "values", c = function () { return this }; t.exports = function (t, u, s, a, f, l, p) { H(s, u, a); var h, d, y, v = function (t) { if (!e && t in A) return A[t]; switch (t) { case o: case i: return function () { return new s(this, t) } }return function () { return new s(this, t) } }, _ = u + " Iterator", x = f == i, g = !1, A = t.prototype, P = A[n] || A[r] || f && A[f], E = P || v(f), j = f ? x ? v("entries") : E : void 0, F = "Array" == u && A.entries || P; if (F && (y = z(F.call(new t))) !== Object.prototype && y.next && (G(y, _, !0), S || b(y, n) || m(y, n, c)), x && P && P.name !== i && (g = !0, E = function () { return P.call(this) }), S && !p || !e && !g && A[n] || m(A, n, E), T[u] = E, T[_] = c, f) if (h = { values: x ? E : v(i), keys: l ? E : v(o), entries: j }, p) for (d in h) d in A || w(A, d, h[d]); else O(O.P + O.F * (e || g), u, h); return h } })), W = (t((function () { "use strict"; var t = A(!0); V(String, "String", (function (t) { this._t = String(t), this._i = 0 }), (function () { var n, e = this._t, r = this._i; return r >= e.length ? { value: void 0, done: !0 } : (n = t(e, r), this._i += n.length, { value: n, done: !1 }) })) })), t((function (t) { var n = u("unscopables"), e = Array.prototype; null == e[n] && m(e, n, {}), t.exports = function (t) { e[n][t] = !0 } }))), K = t((function (t) { t.exports = function (t, n) { return { value: n, done: !!t } } })), J = t((function (t) { "use strict"; t.exports = V(Array, "Array", (function (t, n) { this._t = F(t), this._i = 0, this._k = n }), (function () { var t = this._t, n = this._k, e = this._i++; return !t || e >= t.length ? (this._t = void 0, K(1)) : K(0, "keys" == n ? e : "values" == n ? t[e] : [e, t[e]]) }), "values"), T.Arguments = T.Array, W("keys"), W("values"), W("entries") })), X = (t((function () { for (var t = u("iterator"), n = u("toStringTag"), e = T.Array, o = { CSSRuleList: !0, CSSStyleDeclaration: !1, CSSValueList: !1, ClientRectList: !1, DOMRectList: !1, DOMStringList: !1, DOMTokenList: !0, DataTransferItemList: !1, FileList: !1, HTMLAllCollection: !1, HTMLCollection: !1, HTMLFormElement: !1, HTMLSelectElement: !1, MediaList: !0, MimeTypeArray: !1, NamedNodeMap: !1, NodeList: !0, PaintRequestList: !1, Plugin: !1, PluginArray: !1, SVGLengthList: !1, SVGNumberList: !1, SVGPathSegList: !1, SVGPointList: !1, SVGStringList: !1, SVGTransformList: !1, SourceBufferList: !1, StyleSheetList: !0, TextTrackCueList: !1, TextTrackList: !1, TouchList: !1 }, i = R(o), c = 0; c < i.length; c++) { var s, a = i[c], f = o[a], l = r[a], p = l && l.prototype; if (p && (p[t] || m(p, t, e), p[n] || m(p, n, a), T[a] = e, f)) for (s in J) p[s] || w(p, s, J[s], !0) } })), t((function (t) { t.exports = function (t, n, e, r) { if (!(t instanceof n) || void 0 !== r && r in t) throw TypeError(e + ": incorrect invocation!"); return t } }))), Y = t((function (t) { t.exports = function (t, n, e, r) { try { return r ? n(a(e)[0], e[1]) : n(e) } catch (n) { var o = t.return; throw void 0 !== o && a(o.call(t)), n } } })), $ = t((function (t) { var n = u("iterator"), e = Array.prototype; t.exports = function (t) { return void 0 !== t && (T.Array === t || e[n] === t) } })), Q = t((function (t) { var n = u("iterator"); t.exports = _.getIteratorMethod = function (t) { if (null != t) return t[n] || t["@@iterator"] || T[c(t)] } })), Z = t((function (t, n) { var e = {}, r = {}; (n = t.exports = function (t, n, o, i, u) { var c, s, f, l, p = u ? function () { return t } : Q(t), h = E(o, i, n ? 2 : 1), d = 0; if ("function" != typeof p) throw TypeError(t + " is not iterable!"); if ($(p)) { for (c = k(t.length); c > d; d++)if ((l = n ? h(a(s = t[d])[0], s[1]) : h(t[d])) === e || l === r) return l } else for (f = p.call(t); !(s = f.next()).done;)if ((l = Y(f, h, s.value, n)) === e || l === r) return l }).BREAK = e, n.RETURN = r })), tt = t((function (t) { var n = u("species"); t.exports = function (t, e) { var r, o = a(t).constructor; return void 0 === o || null == (r = a(o)[n]) ? e : P(r) } })), nt = t((function (t) { t.exports = function (t, n, e) { var r = void 0 === e; switch (n.length) { case 0: return r ? t() : t.call(e); case 1: return r ? t(n[0]) : t.call(e, n[0]); case 2: return r ? t(n[0], n[1]) : t.call(e, n[0], n[1]); case 3: return r ? t(n[0], n[1], n[2]) : t.call(e, n[0], n[1], n[2]); case 4: return r ? t(n[0], n[1], n[2], n[3]) : t.call(e, n[0], n[1], n[2], n[3]) }return t.apply(e, n) } })), et = t((function (t) { var n, o, i, u = r.process, c = r.setImmediate, s = r.clearImmediate, a = r.MessageChannel, f = r.Dispatch, l = 0, h = {}, d = "onreadystatechange", y = function () { var t = +this; if (h.hasOwnProperty(t)) { var n = h[t]; delete h[t], n() } }, v = function (t) { y.call(t.data) }; c && s || (c = function (t) { for (var e = [], r = 1; arguments.length > r;)e.push(arguments[r++]); return h[++l] = function () { nt("function" == typeof t ? t : Function(t), e) }, n(l), l }, s = function (t) { delete h[t] }, "process" == e(u) ? n = function (t) { u.nextTick(E(y, t, 1)) } : f && f.now ? n = function (t) { f.now(E(y, t, 1)) } : a ? (i = (o = new a).port2, o.port1.onmessage = v, n = E(i.postMessage, i, 1)) : r.addEventListener && "function" == typeof postMessage && !r.importScripts ? (n = function (t) { r.postMessage(t + "", "*") }, r.addEventListener("message", v, !1)) : n = d in p("script") ? function (t) { U.appendChild(p("script"))[d] = function () { U.removeChild(this), y.call(t) } } : function (t) { setTimeout(E(y, t, 1), 0) }), t.exports = { set: c, clear: s } })), rt = t((function (t) { var n = et.set, o = r.MutationObserver || r.WebKitMutationObserver, i = r.process, u = r.Promise, c = "process" == e(i); t.exports = function () { var t, e, s, a = function () { var n, r; for (c && (n = i.domain) && n.exit(); t;) { r = t.fn, t = t.next; try { r() } catch (n) { throw t ? s() : e = void 0, n } } e = void 0, n && n.enter() }; if (c) s = function () { i.nextTick(a) }; else if (o) { var f = !0, l = document.createTextNode(""); new o(a).observe(l, { characterData: !0 }), s = function () { l.data = f = !f } } else if (u && u.resolve) { var p = u.resolve(); s = function () { p.then(a) } } else s = function () { n.call(r, a) }; return function (n) { var r = { fn: n, next: void 0 }; e && (e.next = r), t || (t = r, s()), e = r } } })), ot = t((function (t) { "use strict"; function n(t) { var n, e; this.promise = new t((function (t, r) { if (void 0 !== n || void 0 !== e) throw TypeError("Bad Promise constructor"); n = t, e = r })), this.resolve = P(n), this.reject = P(e) } t.exports.f = function (t) { return new n(t) } })), it = t((function (t) { t.exports = function (t) { try { return { e: !1, v: t() } } catch (t) { return { e: !0, v: t } } } })), ut = t((function (t) { t.exports = function (t, n) { if (a(t), s(n) && n.constructor === t) return n; var e = ot.f(t); return (0, e.resolve)(n), e.promise } })), ct = t((function (t) { t.exports = function (t, n, e) { for (var r in n) w(t, r, n[r], e); return t } })), st = t((function (t) { "use strict"; var n = u("species"); t.exports = function (t) { var e = r[t]; l && e && !e[n] && y.f(e, n, { configurable: !0, get: function () { return this } }) } })), at = t((function (t) { var n = u("iterator"), e = !1; try { var r = [7][n](); r.return = function () { e = !0 }, Array.from(r, (function () { throw 2 })) } catch (t) { } t.exports = function (t, r) { if (!r && !e) return !1; var o = !1; try { var i = [7], u = i[n](); u.next = function () { return { done: o = !0 } }, i[n] = function () { return u }, t(i) } catch (t) { } return o } })), ft = (t((function () { "use strict"; var t, n, e, o, i = et.set, a = rt(), f = "Promise", l = r.TypeError, p = r.process, h = r[f], d = "process" == c(p), y = function () { }, v = n = ot.f, m = !!function () { try { var t = h.resolve(1), n = (t.constructor = {})[u("species")] = function (t) { t(y, y) }; return (d || "function" == typeof PromiseRejectionEvent) && t.then(y) instanceof n } catch (t) { } }(), b = function (t) { var n; return !(!s(t) || "function" != typeof (n = t.then)) && n }, w = function (t, n) { if (!t._n) { t._n = !0; var e = t._c; a((function () { for (var r = t._v, o = 1 == t._s, i = 0, u = function (n) { var e, i, u = o ? n.ok : n.fail, c = n.resolve, s = n.reject, a = n.domain; try { u ? (o || (2 == t._h && A(t), t._h = 1), !0 === u ? e = r : (a && a.enter(), e = u(r), a && a.exit()), e === n.promise ? s(l("Promise-chain cycle")) : (i = b(e)) ? i.call(e, c, s) : c(e)) : s(r) } catch (t) { s(t) } }; e.length > i;)u(e[i++]); t._c = [], t._n = !1, n && !t._h && x(t) })) } }, x = function (t) { i.call(r, (function () { var n, e, o, i = t._v, u = g(t); if (u && (n = it((function () { d ? p.emit("unhandledRejection", i, t) : (e = r.onunhandledrejection) ? e({ promise: t, reason: i }) : (o = r.console) && o.error && o.error("Unhandled promise rejection", i) })), t._h = d || g(t) ? 2 : 1), t._a = void 0, u && n.e) throw n.v })) }, g = function (t) { if (1 == t._h) return !1; for (var n, e = t._a || t._c, r = 0; e.length > r;)if ((n = e[r++]).fail || !g(n.promise)) return !1; return !0 }, A = function (t) { i.call(r, (function () { var n; d ? p.emit("rejectionHandled", t) : (n = r.onrejectionhandled) && n({ promise: t, reason: t._v }) })) }, T = function (t) { var n = this; n._d || (n._d = !0, (n = n._w || n)._v = t, n._s = 2, n._a || (n._a = n._c.slice()), w(n, !0)) }, j = function (t) { var n, e = this; if (!e._d) { e._d = !0, e = e._w || e; try { if (e === t) throw l("Promise can't be resolved itself"); (n = b(t)) ? a((function () { var r = { _w: e, _d: !1 }; try { n.call(t, E(j, r, 1), E(T, r, 1)) } catch (t) { T.call(r, t) } })) : (e._v = t, e._s = 1, w(e, !1)) } catch (t) { T.call({ _w: e, _d: !1 }, t) } } }; m || (h = function (n) { X(this, h, f, "_h"), P(n), t.call(this); try { n(E(j, this, 1), E(T, this, 1)) } catch (t) { T.call(this, t) } }, (t = function () { this._c = [], this._a = void 0, this._s = 0, this._d = !1, this._v = void 0, this._h = 0, this._n = !1 }).prototype = ct(h.prototype, { then: function (t, n) { var e = v(tt(this, h)); return e.ok = "function" != typeof t || t, e.fail = "function" == typeof n && n, e.domain = d ? p.domain : void 0, this._c.push(e), this._a && this._a.push(e), this._s && w(this, !1), e.promise }, catch: function (t) { return this.then(void 0, t) } }), e = function () { var n = new t; this.promise = n, this.resolve = E(j, n, 1), this.reject = E(T, n, 1) }, ot.f = v = function (t) { return t === h || t === o ? new e(t) : n(t) }), O(O.G + O.W + O.F * !m, { Promise: h }), G(h, f), st(f), o = _[f], O(O.S + O.F * !m, f, { reject: function (t) { var n = v(this); return (0, n.reject)(t), n.promise } }), O(O.S + O.F * (S || !m), f, { resolve: function (t) { return ut(S && this === o ? h : this, t) } }), O(O.S + O.F * !(m && at((function (t) { h.all(t).catch(y) }))), f, { all: function (t) { var n = this, e = v(n), r = e.resolve, o = e.reject, i = it((function () { var e = [], i = 0, u = 1; Z(t, !1, (function (t) { var c = i++, s = !1; e.push(void 0), u++, n.resolve(t).then((function (t) { s || (s = !0, e[c] = t, --u || r(e)) }), o) })), --u || r(e) })); return i.e && o(i.v), e.promise }, race: function (t) { var n = this, e = v(n), r = e.reject, o = it((function () { Z(t, !1, (function (t) { n.resolve(t).then(e.resolve, r) })) })); return o.e && r(o.v), e.promise } }) })), t((function (t) { t.exports = _.Promise })), t((function (t) { t.exports = Array.isArray || function (t) { return "Array" == e(t) } }))), lt = (t((function () { O(O.S, "Array", { isArray: ft }) })), t((function (t) { "use strict"; t.exports = function (t, n, e) { n in t ? y.f(t, n, v(0, e)) : t[n] = e } }))), pt = (t((function () { "use strict"; O(O.S + O.F * !at((function (t) { Array.from(t) })), "Array", { from: function (t) { var n, e, r, o, i = q(t), u = "function" == typeof this ? this : Array, c = arguments.length, s = c > 1 ? arguments[1] : void 0, a = void 0 !== s, f = 0, l = Q(i); if (a && (s = E(s, c > 2 ? arguments[2] : void 0, 2)), null == l || u == Array && $(l)) for (e = new u(n = k(i.length)); n > f; f++)lt(e, f, a ? s(i[f], f) : i[f]); else for (o = l.call(i), e = new u; !(r = o.next()).done; f++)lt(e, f, a ? Y(o, s, [r.value, f], !0) : r.value); return e.length = f, e } }) })), t((function () { "use strict"; O(O.S + O.F * f((function () { function t() { } return !(Array.of.call(t) instanceof t) })), "Array", { of: function () { for (var t = 0, n = arguments.length, e = new ("function" == typeof this ? this : Array)(n); n > t;)lt(e, t, arguments[t++]); return e.length = n, e } }) })), t((function (t) { "use strict"; t.exports = function (t, n) { return !!t && f((function () { n ? t.call(null, (function () { }), 1) : t.call(null) })) } }))), ht = (t((function () { "use strict"; var t = [].join; O(O.P + O.F * (j != Object || !pt(t)), "Array", { join: function (n) { return t.call(F(this), void 0 === n ? "," : n) } }) })), t((function () { "use strict"; var t = [].slice; O(O.P + O.F * f((function () { U && t.call(U) })), "Array", { slice: function (n, r) { var o = k(this.length), i = e(this); if (r = void 0 === r ? o : r, "Array" == i) return t.call(this, n, r); for (var u = B(n, o), c = B(r, o), s = k(c - u), a = Array(s), f = 0; f < s; f++)a[f] = "String" == i ? this.charAt(u + f) : this[u + f]; return a } }) })), t((function () { "use strict"; var t = [].sort, n = [1, 2, 3]; O(O.P + O.F * (f((function () { n.sort(void 0) })) || !f((function () { n.sort(null) })) || !pt(t)), "Array", { sort: function (n) { return void 0 === n ? t.call(q(this)) : t.call(q(this), P(n)) } }) })), t((function (t) { var n = u("species"); t.exports = function (t) { var e; return ft(t) && ("function" != typeof (e = t.constructor) || e !== Array && !ft(e.prototype) || (e = void 0), s(e) && null === (e = e[n]) && (e = void 0)), void 0 === e ? Array : e } }))), dt = t((function (t) { t.exports = function (t, n) { return new (ht(t))(n) } })), yt = t((function (t) { t.exports = function (t, n) { var e = 1 == t, r = 2 == t, o = 3 == t, i = 4 == t, u = 6 == t, c = 5 == t || u, s = n || dt; return function (n, a, f) { for (var l, p, h = q(n), d = j(h), y = E(a, f, 3), v = k(d.length), m = 0, b = e ? s(n, v) : r ? s(n, 0) : void 0; v > m; m++)if ((c || m in d) && (p = y(l = d[m], m, h), t)) if (e) b[m] = p; else if (p) switch (t) { case 3: return !0; case 5: return l; case 6: return m; case 2: b.push(l) } else if (i) return !1; return u ? -1 : o || i ? i : b } } })), vt = (t((function () { "use strict"; var t = yt(0), n = pt([].forEach, !0); O(O.P + O.F * !n, "Array", { forEach: function (n) { return t(this, n, arguments[1]) } }) })), t((function () { "use strict"; var t = yt(1); O(O.P + O.F * !pt([].map, !0), "Array", { map: function (n) { return t(this, n, arguments[1]) } }) })), t((function () { "use strict"; var t = yt(2); O(O.P + O.F * !pt([].filter, !0), "Array", { filter: function (n) { return t(this, n, arguments[1]) } }) })), t((function () { "use strict"; var t = yt(3); O(O.P + O.F * !pt([].some, !0), "Array", { some: function (n) { return t(this, n, arguments[1]) } }) })), t((function () { "use strict"; var t = yt(4); O(O.P + O.F * !pt([].every, !0), "Array", { every: function (n) { return t(this, n, arguments[1]) } }) })), t((function (t) { t.exports = function (t, n, e, r, o) { P(n); var i = q(t), u = j(i), c = k(i.length), s = o ? c - 1 : 0, a = o ? -1 : 1; if (e < 2) for (; ;) { if (s in u) { r = u[s], s += a; break } if (s += a, o ? s < 0 : c <= s) throw TypeError("Reduce of empty array with no initial value") } for (; o ? s >= 0 : c > s; s += a)s in u && (r = n(r, u[s], s, i)); return r } }))), mt = (t((function () { "use strict"; O(O.P + O.F * !pt([].reduce, !0), "Array", { reduce: function (t) { return vt(this, t, arguments.length, arguments[1], !1) } }) })), t((function () { "use strict"; O(O.P + O.F * !pt([].reduceRight, !0), "Array", { reduceRight: function (t) { return vt(this, t, arguments.length, arguments[1], !0) } }) })), t((function () { "use strict"; var t = L(!1), n = [].indexOf, e = !!n && 1 / [1].indexOf(1, -0) < 0; O(O.P + O.F * (e || !pt(n)), "Array", { indexOf: function (r) { return e ? n.apply(this, arguments) || 0 : t(this, r, arguments[1]) } }) })), t((function () { "use strict"; var t = [].lastIndexOf, n = !!t && 1 / [1].lastIndexOf(1, -0) < 0; O(O.P + O.F * (n || !pt(t)), "Array", { lastIndexOf: function (e) { if (n) return t.apply(this, arguments) || 0; var r = F(this), o = k(r.length), i = o - 1; for (arguments.length > 1 && (i = Math.min(i, x(arguments[1]))), i < 0 && (i = o + i); i >= 0; i--)if (i in r && r[i] === e) return i || 0; return -1 } }) })), t((function (t) { "use strict"; t.exports = [].copyWithin || function (t, n) { var e = q(this), r = k(e.length), o = B(t, r), i = B(n, r), u = arguments.length > 2 ? arguments[2] : void 0, c = Math.min((void 0 === u ? r : B(u, r)) - i, r - o), s = 1; for (i < o && o < i + c && (s = -1, i += c - 1, o += c - 1); c-- > 0;)i in e ? e[o] = e[i] : delete e[o], o += s, i += s; return e } }))), bt = (t((function () { O(O.P, "Array", { copyWithin: mt }), W("copyWithin") })), t((function (t) { "use strict"; t.exports = function (t) { for (var n = q(this), e = k(n.length), r = arguments.length, o = B(r > 1 ? arguments[1] : void 0, e), i = r > 2 ? arguments[2] : void 0, u = void 0 === i ? e : B(i, e); u > o;)n[o++] = t; return n } }))), _t = (t((function () { O(O.P, "Array", { fill: bt }), W("fill") })), t((function () { "use strict"; var t = yt(5), n = "find", e = !0; n in [] && Array(1)[n]((function () { e = !1 })), O(O.P + O.F * e, "Array", { find: function (n) { return t(this, n, arguments.length > 1 ? arguments[1] : void 0) } }), W(n) })), t((function () { "use strict"; var t = yt(6), n = "findIndex", e = !0; n in [] && Array(1)[n]((function () { e = !1 })), O(O.P + O.F * e, "Array", { findIndex: function (n) { return t(this, n, arguments.length > 1 ? arguments[1] : void 0) } }), W(n) })), t((function () { st("Array") })), t((function (t) { t.exports = _.Array })), t((function (t) { var n = i("meta"), e = y.f, r = 0, o = Object.isExtensible || function () { return !0 }, u = !f((function () { return o(Object.preventExtensions({})) })), c = function (t) { e(t, n, { value: { i: "O" + ++r, w: {} } }) }, a = function (t, e) { if (!s(t)) return "symbol" == typeof t ? t : ("string" == typeof t ? "S" : "P") + t; if (!b(t, n)) { if (!o(t)) return "F"; if (!e) return "E"; c(t) } return t[n].i }, l = function (t, e) { if (!b(t, n)) { if (!o(t)) return !0; if (!e) return !1; c(t) } return t[n].w }, p = function (t) { return u && h.NEED && o(t) && !b(t, n) && c(t), t }, h = t.exports = { KEY: n, NEED: !1, fastKey: a, getWeak: l, onFreeze: p } }))), wt = t((function (t) { t.exports = function (t, n) { if (!s(t) || t._t !== n) throw TypeError("Incompatible receiver, " + n + " required!"); return t } })), xt = t((function (t) { "use strict"; var n = y.f, e = _t.fastKey, r = l ? "_s" : "size", o = function (t, n) { var r, o = e(n); if ("F" !== o) return t._i[o]; for (r = t._f; r; r = r.n)if (r.k == n) return r }; t.exports = { getConstructor: function (t, e, i, u) { var c = t((function (t, n) { X(t, c, e, "_i"), t._t = e, t._i = N(null), t._f = void 0, t._l = void 0, t[r] = 0, null != n && Z(n, i, t[u], t) })); return ct(c.prototype, { clear: function () { for (var t = wt(this, e), n = t._i, o = t._f; o; o = o.n)o.r = !0, o.p && (o.p = o.p.n = void 0), delete n[o.i]; t._f = t._l = void 0, t[r] = 0 }, delete: function (t) { var n = wt(this, e), i = o(n, t); if (i) { var u = i.n, c = i.p; delete n._i[i.i], i.r = !0, c && (c.n = u), u && (u.p = c), n._f == i && (n._f = u), n._l == i && (n._l = c), n[r]-- } return !!i }, forEach: function (t) { wt(this, e); for (var n, r = E(t, arguments.length > 1 ? arguments[1] : void 0, 3); n = n ? n.n : this._f;)for (r(n.v, n.k, this); n && n.r;)n = n.p }, has: function (t) { return !!o(wt(this, e), t) } }), l && n(c.prototype, "size", { get: function () { return wt(this, e)[r] } }), c }, def: function (t, n, i) { var u, c, s = o(t, n); return s ? s.v = i : (t._l = s = { i: c = e(n, !0), k: n, v: i, p: u = t._l, n: void 0, r: !1 }, t._f || (t._f = s), u && (u.n = s), t[r]++, "F" !== c && (t._i[c] = s)), t }, getEntry: o, setStrong: function (t, n, e) { V(t, n, (function (t, e) { this._t = wt(t, n), this._k = e, this._l = void 0 }), (function () { for (var t = this, n = t._k, e = t._l; e && e.r;)e = e.p; return t._t && (t._l = e = e ? e.n : t._t._f) ? K(0, "keys" == n ? e.k : "values" == n ? e.v : [e.k, e.v]) : (t._t = void 0, K(1)) }), e ? "entries" : "values", !e, !0), st(n) } } })), gt = t((function (t, n) { n.f = {}.propertyIsEnumerable })), At = t((function (t, n) { var e = Object.getOwnPropertyDescriptor; n.f = l ? e : function (t, n) { if (t = F(t), n = d(n, !0), h) try { return e(t, n) } catch (t) { } if (b(t, n)) return v(!gt.f.call(t, n), t[n]) } })), St = t((function (t) { var n = function (t, n) { if (a(t), !s(n) && null !== n) throw TypeError(n + ": can't set as prototype!") }; t.exports = { set: Object.setPrototypeOf || ("__proto__" in {} ? function (t, e, r) { try { (r = E(Function.call, At.f(Object.prototype, "__proto__").set, 2))(t, []), e = !(t instanceof Array) } catch (t) { e = !0 } return function (t, o) { return n(t, o), e ? t.__proto__ = o : r(t, o), t } }({}, !1) : void 0), check: n } })), Pt = t((function (t) { var n = St.set; t.exports = function (t, e, r) { var o, i = e.constructor; return i !== r && "function" == typeof i && (o = i.prototype) !== r.prototype && s(o) && n && n(t, o), t } })), Et = t((function (t) { "use strict"; t.exports = function (t, n, e, o, i, u) { var c = r[t], a = c, l = i ? "set" : "add", p = a && a.prototype, h = {}, d = function (t) { var n = p[t]; w(p, t, "delete" == t || "has" == t ? function (t) { return !(u && !s(t)) && n.call(this, 0 === t ? 0 : t) } : "get" == t ? function (t) { return u && !s(t) ? void 0 : n.call(this, 0 === t ? 0 : t) } : "add" == t ? function (t) { return n.call(this, 0 === t ? 0 : t), this } : function (t, e) { return n.call(this, 0 === t ? 0 : t, e), this }) }; if ("function" == typeof a && (u || p.forEach && !f((function () { (new a).entries().next() })))) { var y = new a, v = y[l](u ? {} : -0, 1) != y, m = f((function () { y.has(1) })), b = at((function (t) { new a(t) })), _ = !u && f((function () { for (var t = new a, n = 5; n--;)t[l](n, n); return !t.has(-0) })); b || ((a = n((function (n, e) { X(n, a, t); var r = Pt(new c, n, a); return null != e && Z(e, i, r[l], r), r }))).prototype = p, p.constructor = a), (m || _) && (d("delete"), d("has"), i && d("get")), (_ || v) && d(l), u && p.clear && delete p.clear } else a = o.getConstructor(n, t, i, l), ct(a.prototype, e), _t.NEED = !0; return G(a, t), h[t] = a, O(O.G + O.W + O.F * (a != c), h), u || o.setStrong(a, t, i), a } })); t((function (t) { "use strict"; var n = "Set"; t.exports = Et(n, (function (t) { return function () { return t(this, arguments.length > 0 ? arguments[0] : void 0) } }), { add: function (t) { return xt.def(wt(this, n), t = 0 === t ? 0 : t, t) } }, xt) })), t((function (t) { t.exports = _.Set })); !function (t) {
  1630.                "use strict"; function n(t) { if ("string" != typeof t && (t = String(t)), /[^a-z0-9\-#$%&'*+.\^_`|~]/i.test(t)) throw new TypeError("Invalid character in header field name"); return t.toLowerCase() } function e(t) { return "string" != typeof t && (t = String(t)), t } function r(t) { var n = { next: function () { var n = t.shift(); return { done: void 0 === n, value: n } } }; return m.iterable && (n[Symbol.iterator] = function () { return n }), n } function o(t) { this.map = {}, t instanceof o ? t.forEach((function (t, n) { this.append(n, t) }), this) : Array.isArray(t) ? t.forEach((function (t) { this.append(t[0], t[1]) }), this) : t && Object.getOwnPropertyNames(t).forEach((function (n) { this.append(n, t[n]) }), this) } function i(t) { if (t.bodyUsed) return Promise.reject(new TypeError("Already read")); t.bodyUsed = !0 } function u(t) { return new Promise((function (n, e) { t.onload = function () { n(t.result) }, t.onerror = function () { e(t.error) } })) } function c(t) { var n = new FileReader, e = u(n); return n.readAsArrayBuffer(t), e } function s(t) { var n = new FileReader, e = u(n); return n.readAsText(t), e } function a(t) { for (var n = new Uint8Array(t), e = new Array(n.length), r = 0; r < n.length; r++)e[r] = String.fromCharCode(n[r]); return e.join("") } function f(t) { if (t.slice) return t.slice(0); var n = new Uint8Array(t.byteLength); return n.set(new Uint8Array(t)), n.buffer } function l() { return this.bodyUsed = !1, this._initBody = function (t) { if (this._bodyInit = t, t) if ("string" == typeof t) this._bodyText = t; else if (m.blob && Blob.prototype.isPrototypeOf(t)) this._bodyBlob = t; else if (m.formData && FormData.prototype.isPrototypeOf(t)) this._bodyFormData = t; else if (m.searchParams && URLSearchParams.prototype.isPrototypeOf(t)) this._bodyText = t.toString(); else if (m.arrayBuffer && m.blob && _(t)) this._bodyArrayBuffer = f(t.buffer), this._bodyInit = new Blob([this._bodyArrayBuffer]); else { if (!m.arrayBuffer || !ArrayBuffer.prototype.isPrototypeOf(t) && !w(t)) throw new Error("unsupported BodyInit type"); this._bodyArrayBuffer = f(t) } else this._bodyText = ""; this.headers.get("content-type") || ("string" == typeof t ? this.headers.set("content-type", "text/plain;charset=UTF-8") : this._bodyBlob && this._bodyBlob.type ? this.headers.set("content-type", this._bodyBlob.type) : m.searchParams && URLSearchParams.prototype.isPrototypeOf(t) && this.headers.set("content-type", "application/x-www-form-urlencoded;charset=UTF-8")) }, m.blob && (this.blob = function () { var t = i(this); if (t) return t; if (this._bodyBlob) return Promise.resolve(this._bodyBlob); if (this._bodyArrayBuffer) return Promise.resolve(new Blob([this._bodyArrayBuffer])); if (this._bodyFormData) throw new Error("could not read FormData body as blob"); return Promise.resolve(new Blob([this._bodyText])) }, this.arrayBuffer = function () { return this._bodyArrayBuffer ? i(this) || Promise.resolve(this._bodyArrayBuffer) : this.blob().then(c) }), this.text = function () { var t = i(this); if (t) return t; if (this._bodyBlob) return s(this._bodyBlob); if (this._bodyArrayBuffer) return Promise.resolve(a(this._bodyArrayBuffer)); if (this._bodyFormData) throw new Error("could not read FormData body as text"); return Promise.resolve(this._bodyText) }, m.formData && (this.formData = function () { return this.text().then(d) }), this.json = function () { return this.text().then(JSON.parse) }, this } function p(t) { var n = t.toUpperCase(); return x.indexOf(n) > -1 ? n : t } function h(t, n) { var e = (n = n || {}).body; if (t instanceof h) { if (t.bodyUsed) throw new TypeError("Already read"); this.url = t.url, this.credentials = t.credentials, n.headers || (this.headers = new o(t.headers)), this.method = t.method, this.mode = t.mode, e || null == t._bodyInit || (e = t._bodyInit, t.bodyUsed = !0) } else this.url = String(t); if (this.credentials = n.credentials || this.credentials || "omit", !n.headers && this.headers || (this.headers = new o(n.headers)), this.method = p(n.method || this.method || "GET"), this.mode = n.mode || this.mode || null, this.referrer = null, ("GET" === this.method || "HEAD" === this.method) && e) throw new TypeError("Body not allowed for GET or HEAD requests"); this._initBody(e) } function d(t) { var n = new FormData; return t.trim().split("&").forEach((function (t) { if (t) { var e = t.split("="), r = e.shift().replace(/\+/g, " "), o = e.join("=").replace(/\+/g, " "); n.append(decodeURIComponent(r), decodeURIComponent(o)) } })), n } function y(t) { var n = new o; return t.replace(/\r?\n[\t ]+/g, " ").split(/\r?\n/).forEach((function (t) { var e = t.split(":"), r = e.shift().trim(); if (r) { var o = e.join(":").trim(); n.append(r, o) } })), n } function v(t, n) { n || (n = {}), this.type = "default", this.status = void 0 === n.status ? 200 : n.status, this.ok = this.status >= 200 && this.status < 300, this.statusText = "statusText" in n ? n.statusText : "OK", this.headers = new o(n.headers), this.url = n.url || "", this._initBody(t) } if (!t.fetch) {
  1631.                    var m = { searchParams: "URLSearchParams" in t, iterable: "Symbol" in t && "iterator" in Symbol, blob: "FileReader" in t && "Blob" in t && function () { try { return new Blob, !0 } catch (t) { return !1 } }(), formData: "FormData" in t, arrayBuffer: "ArrayBuffer" in t }; if (m.arrayBuffer) var b = ["[object Int8Array]", "[object Uint8Array]", "[object Uint8ClampedArray]", "[object Int16Array]", "[object Uint16Array]", "[object Int32Array]", "[object Uint32Array]", "[object Float32Array]", "[object Float64Array]"], _ = function (t) { return t && DataView.prototype.isPrototypeOf(t) }, w = ArrayBuffer.isView || function (t) { return t && b.indexOf(Object.prototype.toString.call(t)) > -1 }; o.prototype.append = function (t, r) { t = n(t), r = e(r); var o = this.map[t]; this.map[t] = o ? o + "," + r : r }, o.prototype.delete = function (t) { delete this.map[n(t)] }, o.prototype.get = function (t) { return t = n(t), this.has(t) ? this.map[t] : null }, o.prototype.has = function (t) { return this.map.hasOwnProperty(n(t)) }, o.prototype.set = function (t, r) { this.map[n(t)] = e(r) }, o.prototype.forEach = function (t, n) { for (var e in this.map) this.map.hasOwnProperty(e) && t.call(n, this.map[e], e, this) }, o.prototype.keys = function () { var t = []; return this.forEach((function (n, e) { t.push(e) })), r(t) }, o.prototype.values = function () { var t = []; return this.forEach((function (n) { t.push(n) })), r(t) }, o.prototype.entries = function () { var t = []; return this.forEach((function (n, e) { t.push([e, n]) })), r(t) }, m.iterable && (o.prototype[Symbol.iterator] = o.prototype.entries); var x = ["DELETE", "GET", "HEAD", "OPTIONS", "POST", "PUT"]; h.prototype.clone = function () { return new h(this, { body: this._bodyInit }) }, l.call(h.prototype), l.call(v.prototype), v.prototype.clone = function () { return new v(this._bodyInit, { status: this.status, statusText: this.statusText, headers: new o(this.headers), url: this.url }) }, v.error = function () { var t = new v(null, { status: 0, statusText: "" }); return t.type = "error", t }; var g = [301, 302, 303, 307, 308]; v.redirect = function (t, n) { if (-1 === g.indexOf(n)) throw new RangeError("Invalid status code"); return new v(null, { status: n, headers: { location: t } }) }, t.Headers = o, t.Request = h, t.Response = v, t.fetch = function (t, n) {
  1632.                        return new Promise((function (e, r) {
  1633.                            var o = new h(t, n), i = new XMLHttpRequest; i.onload = function () { var t = { status: i.status, statusText: i.statusText, headers: y(i.getAllResponseHeaders() || "") }; t.url = "responseURL" in i ? i.responseURL : t.headers.get("X-Request-URL"); var n = "response" in i ? i.response : i.responseText; e(new v(n, t)) }, i.onerror = function () { r(new TypeError("Network request failed")) }, i.ontimeout = function () { r(new TypeError("Network request failed")) }, i.open(o.method, o.url, !0),
  1634.                                "include" === o.credentials ? i.withCredentials = !0 : "omit" === o.credentials && (i.withCredentials = !1), "responseType" in i && m.blob && (i.responseType = "blob"), o.headers.forEach((function (t, n) { i.setRequestHeader(n, t) })), i.send(void 0 === o._bodyInit ? null : o._bodyInit)
  1635.                        }))
  1636.                    }, t.fetch.polyfill = !0
  1637.                }
  1638.            }("undefined" != typeof self ? self : this); var Ot = t((function (t, n) { "use strict"; Object.defineProperty(n, "__esModule", { value: !0 }); var e = { track: function () { var t; "undefined" != typeof ShopifyAnalytics && ShopifyAnalytics.lib && (t = ShopifyAnalytics.lib).track.apply(t, arguments) } }; n.default = e })), Tt = t((function (t, n) { "use strict"; function e(t) { o(), r(t, "smart-payment-buttons") } function r(t, n) { var e = "shopify-features__" + n, r = e + "--disabled", o = e + "--enabled", i = t.className.split(/\s+/); t.className = i.filter((function (t) { return Boolean(t) })).filter((function (t) { return t !== r })).filter((function (t) { return t !== o })).concat([o]).join(" ") } function o() { var t = "shopify-dynamic-checkout"; if (null === document.getElementById(t)) { var n = document.createElement("style"); n.id = t, n.innerHTML = i, document.head.appendChild(n) } } Object.defineProperty(n, "__esModule", { value: !0 }), n.default = e, n.toggleFeatureCssClasses = r, n.appendDynamicCheckoutProductCss = o; var i = "\n.shopify-payment-button__button--hidden {\n  visibility: hidden;\n}\n\n.shopify-payment-button__button {\n  border-radius: 4px;\n  border: none;\n  box-shadow: 0 0 0 0 transparent;\n  color: white;\n  cursor: pointer;\n  display: block;\n  font-size: 1em;\n  font-weight: 500;\n  line-height: 1;\n  text-align: center;\n  width: 100%;\n  transition: background 0.2s ease-in-out;\n}\n\n.shopify-payment-button__button[disabled] {\n  opacity: 0.6;\n  cursor: default;\n}\n\n.shopify-payment-button__button--unbranded {\n  background-color: #000000;\n  padding: 1em 2em;\n}\n\n.shopify-payment-button__button--unbranded:hover:not([disabled]) {\n  background-color: #000000;\n}\n\n.shopify-payment-button__more-options {\n  background: transparent;\n  border: 0 none;\n  cursor: pointer;\n  display: block;\n  font-size: 1em;\n  margin-top: 1em;\n  text-align: center;\n  width: 100%;\n}\n\n.shopify-payment-button__more-options:hover:not([disabled]) {\n  text-decoration: underline;\n}\n\n.shopify-payment-button__more-options[disabled] {\n  opacity: 0.6;\n  cursor: default;\n}\n\n.shopify-payment-button__button--branded {\n  display: flex;\n  flex-direction: column;\n  min-height: 44px;\n  position: relative;\n  z-index: 1;\n}\n\n.shopify-payment-button__button--branded .shopify-cleanslate {\n  flex: 1 !important;\n  display: flex !important;\n  flex-direction: column !important;\n}\n" })), jt = t((function (t, e) { "use strict"; function r(t, n) { return o().then((function (e) { e ? i(t, n) : c(t, n) })) } function o() { function t() { return document.querySelector("[data-shopify=payment-button]") } return new Promise((function (n) { t() ? n(!0) : window.Shopify.designMode ? new MutationObserver((function (e, r) { t() && (n(!0), r.disconnect()) })).observe(document.body, { childList: !0, subtree: !0 }) : n(!1) })) } function i(t, n) { (0, l.default)(t); var e = u(t, n); return s("[SPB] Script appended"), e } function u(t, n) { var e = t.parentNode, r = e.createElement("script"); return r.src = n.smart_payment_buttons_url, r.dataset.sourceAttribute = "shopify.dynamic_checkout.product.init", e.head.appendChild(r), r } function c(t, n) { void 0 === window.Shopify.PaymentButton && (window.Shopify.PaymentButton = { init: function () { var e = i(t, n); e.onload = function () { a() }, e.onerror = function () { console.error("Error loading Dynamic Checkout bundle") }, window.Shopify.PaymentButton.init = function () { } } }) } function s(t) { p && performance.mark(t) } function a() { var t = "polyfilled_dynamic_checkout", n = window.Shopify && window.Shopify.theme && window.Shopify.theme.name, e = window.location.href; f.default.track(t, { theme: n, url: e }) } Object.defineProperty(e, "__esModule", { value: !0 }), e.default = r; var f = n(Ot), l = n(Tt), p = "undefined" != typeof performance && "function" == typeof performance.mark })), Ft = t((function (t, n) { "use strict"; function e(t, n) { return r().then((function () { o(t, n) })) } function r() { function t() { return document.getElementById("dynamic-checkout-cart") } return new Promise((function (n) { t() ? (window.Shopify.CartType = "cart_page", n()) : new MutationObserver((function (e, r) { t() && (window.Shopify.CartType = "cart_ajax", n(), r.disconnect()) })).observe(document.body, { childList: !0, subtree: !0 }) })) } function o(t, n) { var e = t.parentNode, r = e.createElement("script"); return r.src = n.dynamic_checkout_cart_url, r.dataset.sourceAttribute = "shopify.dynamic_checkout.cart.init", e.head.appendChild(r), r } Object.defineProperty(n, "__esModule", { value: !0 }), n.default = e })), kt = t((function (t, e) { "use strict"; function r(t) { var n = o(t); n && ((0, i.default)(t, n), (0, u.default)(t, n)) } function o(t) { try { return JSON.parse(t.querySelector(c).textContent) } catch (t) { return null } } Object.defineProperty(e, "__esModule", { value: !0 }), e.default = r; var i = n(jt), u = n(Ft), c = "#shopify-features" })); t((function () { "use strict"; (0, n(kt).default)(document.documentElement) }))
  1639.        }("undefined" != typeof global ? global : "undefined" != typeof window && window);
  1640.    </script>
  1641.    <style id="shopify-dynamic-checkout">
  1642.        .shopify-payment-button__button--hidden {
  1643.            visibility: hidden
  1644.        }
  1645.  
  1646.        .shopify-payment-button__button {
  1647.            border-radius: 4px;
  1648.            border: none;
  1649.            box-shadow: 0 0 0 0 transparent;
  1650.            color: #fff;
  1651.            cursor: pointer;
  1652.            display: block;
  1653.            font-size: 1em;
  1654.            font-weight: 500;
  1655.            line-height: 1;
  1656.            text-align: center;
  1657.            width: 100%;
  1658.            transition: background .2s ease-in-out
  1659.        }
  1660.  
  1661.        .shopify-payment-button__button[disabled] {
  1662.            opacity: .6;
  1663.            cursor: default
  1664.        }
  1665.  
  1666.        .shopify-payment-button__button--unbranded {
  1667.            background-color: #8B0000;
  1668.            padding: 1em 2em
  1669.        }
  1670.  
  1671.        .shopify-payment-button__button--unbranded:hover:not([disabled]) {
  1672.            background-color: #136f99
  1673.        }
  1674.  
  1675.        .shopify-payment-button__more-options {
  1676.            background: 0 0;
  1677.            border: 0 none;
  1678.            cursor: pointer;
  1679.            display: block;
  1680.            font-size: 1em;
  1681.            margin-top: 1em;
  1682.            text-align: center;
  1683.            width: 100%
  1684.        }
  1685.  
  1686.        .shopify-payment-button__more-options:hover:not([disabled]) {
  1687.            text-decoration: underline
  1688.        }
  1689.  
  1690.        .shopify-payment-button__more-options[disabled] {
  1691.            opacity: .6;
  1692.            cursor: not-allowed
  1693.        }
  1694.  
  1695.        .shopify-payment-button__button--branded {
  1696.            display: flex;
  1697.            flex-direction: column;
  1698.            min-height: 44px;
  1699.            position: relative;
  1700.            z-index: 1
  1701.        }
  1702.  
  1703.        .shopify-payment-button__button--branded .shopify-cleanslate {
  1704.            flex: 1 !important;
  1705.            display: flex !important;
  1706.            flex-direction: column !important
  1707.        }
  1708.  
  1709.        .shopify-payment-button__button.button.loading {
  1710.            position: relative;
  1711.            color: transparent
  1712.        }
  1713.  
  1714.        .shopify-payment-button__button.button.loading>.loading-overlay__spinner {
  1715.            top: 50%;
  1716.            left: 50%;
  1717.            transform: translate(-50%, -50%);
  1718.            position: absolute;
  1719.            height: 100%;
  1720.            display: flex;
  1721.            align-items: center
  1722.        }
  1723.  
  1724.        .shopify-payment-button__button.button.loading>.loading-overlay__spinner .spinner {
  1725.            width: -moz-fit-content;
  1726.            width: fit-content
  1727.        }
  1728.  
  1729.        .button.loading>.loading-overlay__spinner .path {
  1730.            stroke: #fff
  1731.        }
  1732.  
  1733.        .shopify-payment-button__button .loading-overlay__spinner {
  1734.            width: 1.8rem;
  1735.            display: inline-block
  1736.        }
  1737.  
  1738.        .shopify-payment-button__button .spinner {
  1739.            animation: shopify-rotator 1.4s linear infinite
  1740.        }
  1741.  
  1742.        @keyframes shopify-rotator {
  1743.            0% {
  1744.                transform: rotate(0)
  1745.            }
  1746.  
  1747.            100% {
  1748.                transform: rotate(270deg)
  1749.            }
  1750.        }
  1751.  
  1752.        .shopify-payment-button__button .path {
  1753.            stroke-dasharray: 280;
  1754.            stroke-dashoffset: 0;
  1755.            transform-origin: center;
  1756.            stroke: #121212;
  1757.            animation: shopify-dash 1.4s ease-in-out infinite
  1758.        }
  1759.  
  1760.        @media screen and (forced-colors:active) {
  1761.            .shopify-payment-button__button .path {
  1762.                stroke: CanvasText
  1763.            }
  1764.        }
  1765.  
  1766.        @keyframes shopify-dash {
  1767.            0% {
  1768.                stroke-dashoffset: 280
  1769.            }
  1770.  
  1771.            50% {
  1772.                stroke-dashoffset: 75;
  1773.                transform: rotate(135deg)
  1774.            }
  1775.  
  1776.            100% {
  1777.                stroke-dashoffset: 280;
  1778.                transform: rotate(450deg)
  1779.            }
  1780.        }
  1781.    </style>
  1782.    <script>
  1783.        window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');
  1784.    </script>
  1785.    <style data-shopify>
  1786.        @font-face {
  1787.            font-family: Questrial;
  1788.            font-weight: 400;
  1789.            font-style: normal;
  1790.            font-display: swap;
  1791.            src: url(http://https://infinite-style.com//cdn/fonts/questrial/questrial_n4.0ba6d2b6094954bab23732c75d3ecb4c47a5869c.woff2?h1=N2ViNWQ0LTMuYWNjb3VudC5teXNob3BpZnkuY29t&amp;h2=eHh4LmRlcm1hYmxlbmQuY29t&amp;hmac=2ddb1e040059f191fdb3e184199ec4bc383d5aa55a6213bf798372c9da87d664) format("woff2"), url(http://https://infinite-style.com//cdn/fonts/questrial/questrial_n4.5abce10d8846bb9326c9741eaffed9667c847692.woff?h1=N2ViNWQ0LTMuYWNjb3VudC5teXNob3BpZnkuY29t&amp;h2=eHh4LmRlcm1hYmxlbmQuY29t&amp;hmac=136e78abf621321b832ba0b2c80d5c764228ec9edb2550b890fb94f7dfbf4881) format("woff")
  1792.        }
  1793.  
  1794.        @font-face {
  1795.            font-family: Archivo;
  1796.            font-weight: 700;
  1797.            font-style: normal;
  1798.            font-display: swap;
  1799.            src: url(http://https://infinite-style.com//cdn/fonts/archivo/archivo_n7.6f363ab30b12ea00d5e6243ed0e977a11393a3ad.woff2?h1=N2ViNWQ0LTMuYWNjb3VudC5teXNob3BpZnkuY29t&amp;h2=eHh4LmRlcm1hYmxlbmQuY29t&amp;hmac=6cc30ef697b84bb8f7f3bf9979eb1a3b3e1410751b95cc93dce027cd0262d372) format("woff2"), url(http://https://infinite-style.com//cdn/fonts/archivo/archivo_n7.846b40a5735bbd149ad44b083a19c3e5d88d8fab.woff?h1=N2ViNWQ0LTMuYWNjb3VudC5teXNob3BpZnkuY29t&amp;h2=eHh4LmRlcm1hYmxlbmQuY29t&amp;hmac=d0abb13a26bf76d6aa3da07b374c9d85e0b976d6591761ed7c4cdc2cd429b450) format("woff")
  1800.        }
  1801.  
  1802.        .color-background-1,
  1803.        :root {
  1804.            --color-background: 245, 245, 245;
  1805.            --gradient-background: #ffffff;
  1806.            --color-foreground: 14, 27, 77;
  1807.            --color-background-contrast: 161, 166, 196;
  1808.            --color-shadow: 14, 27, 77;
  1809.            --color-button: 130, 0, 0;
  1810.            --color-button-text: 245, 245, 245;
  1811.            --color-secondary-button: 245, 245, 245;
  1812.            --color-secondary-button-text: 14, 27, 77;
  1813.            --color-link: 14, 27, 77;
  1814.            --color-badge-foreground: 14, 27, 77;
  1815.            --color-badge-background: 245, 245, 245;
  1816.            --color-badge-border: 14, 27, 77;
  1817.            --payment-terms-background-color: rgb(239 240 245)
  1818.        }
  1819.  
  1820.        .n-columns-2 {
  1821.            display: grid;
  1822.            grid-template-columns: repeat(2, 1fr);
  1823.            font-weight: 700
  1824.        }
  1825.  
  1826.        .n-columns-2 a {
  1827.            text-align: center;
  1828.            text-decoration: none;
  1829.        }
  1830.  
  1831.        .login,
  1832.        .register {
  1833.            color: #fff;
  1834.            padding: 13px 10px
  1835.        }
  1836.  
  1837.        .login,
  1838.        .login-button {
  1839.            border: 1px solid #d3d3d3;
  1840.            background: linear-gradient(to bottom, #8B0000 0, #8B0000 100%)
  1841.        }
  1842.  
  1843.        .register,
  1844.        .register-button {
  1845.            background: linear-gradient(to bottom, #8B0000 0, #8B0000 100%);
  1846.            border: 1px solid #d3d3d3
  1847.        }
  1848.  
  1849.        .color-background-2 {
  1850.            --color-background: 255, 255, 255;
  1851.            --gradient-background: #FFFFFF;
  1852.            --color-foreground: 14, 27, 77;
  1853.            --color-background-contrast: 191, 191, 191;
  1854.            --color-shadow: 14, 27, 77;
  1855.            --color-button: 14, 27, 77;
  1856.            --color-button-text: 255, 255, 255;
  1857.            --color-secondary-button: 255, 255, 255;
  1858.            --color-secondary-button-text: 14, 27, 77;
  1859.            --color-link: 14, 27, 77;
  1860.            --color-badge-foreground: 14, 27, 77;
  1861.            --color-badge-background: 255, 255, 255;
  1862.            --color-badge-border: 14, 27, 77;
  1863.            --payment-terms-background-color: rgb(255 255 255)
  1864.        }
  1865.  
  1866.        .color-inverse {
  1867.            --color-background: 130, 0, 0;
  1868.            --gradient-background: #000000;
  1869.            --color-foreground: 255, 255, 255;
  1870.            --color-background-contrast: 18, 35, 99;
  1871.            --color-shadow: 14, 27, 77;
  1872.            --color-button: 255, 255, 255;
  1873.            --color-button-text: 14, 27, 77;
  1874.            --color-secondary-button: 14, 27, 77;
  1875.            --color-secondary-button-text: 255, 255, 255;
  1876.            --color-link: 255, 255, 255;
  1877.            --color-badge-foreground: 255, 255, 255;
  1878.            --color-badge-background: 14, 27, 77;
  1879.            --color-badge-border: 255, 255, 255;
  1880.            --payment-terms-background-color: rgb(79, 0, 0)
  1881.        }
  1882.  
  1883.        .color-accent-1 {
  1884.            --color-background: 128, 0, 0;
  1885.            --gradient-background: #8B0000;
  1886.            --color-foreground: 255, 255, 255;
  1887.            --color-background-contrast: 27, 57, 136;
  1888.            --color-shadow: 14, 27, 77;
  1889.            --color-button: 255, 255, 255;
  1890.            --color-button-text: 128, 0, 0;
  1891.            --color-secondary-button: 128, 0, 0;
  1892.            --color-secondary-button-text: 255, 255, 255;
  1893.            --color-link: 255, 255, 255;
  1894.            --color-badge-foreground: 255, 255, 255;
  1895.            --color-badge-background: 130, 0, 0;
  1896.            --color-badge-border: 255, 255, 255;
  1897.            --payment-terms-background-color: rgb(0, 18, 65)
  1898.        }
  1899.  
  1900.        .color-accent-2 {
  1901.            --color-background: 227, 36, 2;
  1902.            --gradient-background: #E32402;
  1903.            --color-foreground: 255, 255, 255;
  1904.            --color-background-contrast: 101, 16, 1;
  1905.            --color-shadow: 14, 27, 77;
  1906.            --color-button: 255, 255, 255;
  1907.            --color-button-text: 227, 36, 2;
  1908.            --color-secondary-button: 227, 36, 2;
  1909.            --color-secondary-button-text: 255, 255, 255;
  1910.            --color-link: 255, 255, 255;
  1911.            --color-badge-foreground: 255, 255, 255;
  1912.            --color-badge-background: 227, 36, 2;
  1913.            --color-badge-border: 255, 255, 255;
  1914.            --payment-terms-background-color: rgb(227 36 2)
  1915.        }
  1916.  
  1917.        .color-accent-1,
  1918.        .color-accent-2,
  1919.        .color-background-1,
  1920.        .color-background-2,
  1921.        .color-inverse,
  1922.        body {
  1923.            color: rgba(var(--color-foreground), .75);
  1924.            background-color: white;
  1925.        }
  1926.  
  1927.        :root {
  1928.            --font-body-family: Questrial, sans-serif;
  1929.            --font-body-style: normal;
  1930.            --font-body-weight: 400;
  1931.            --font-body-weight-bold: 700;
  1932.            --font-heading-family: Archivo, serif;
  1933.            --font-heading-style: normal;
  1934.            --font-heading-weight: 700;
  1935.            --font-body-scale: 1.05;
  1936.            --font-heading-scale: 1.0476190476190477;
  1937.            --media-padding: px;
  1938.            --media-border-opacity: 0.1;
  1939.            --media-border-width: 0px;
  1940.            --media-radius: 20px;
  1941.            --media-shadow-opacity: 0.0;
  1942.            --media-shadow-horizontal-offset: 0px;
  1943.            --media-shadow-vertical-offset: 4px;
  1944.            --media-shadow-blur-radius: 5px;
  1945.            --media-shadow-visible: 0;
  1946.            --page-width: 120rem;
  1947.            --page-width-margin: 0rem;
  1948.            --product-card-image-padding: 1.6rem;
  1949.            --product-card-corner-radius: 1.8rem;
  1950.            --product-card-text-alignment: left;
  1951.            --product-card-border-width: 0.1rem;
  1952.            --product-card-border-opacity: 1.0;
  1953.            --product-card-shadow-opacity: 0.0;
  1954.            --product-card-shadow-visible: 0;
  1955.            --product-card-shadow-horizontal-offset: 0.0rem;
  1956.            --product-card-shadow-vertical-offset: 0.4rem;
  1957.            --product-card-shadow-blur-radius: 0.5rem;
  1958.            --collection-card-image-padding: 1.6rem;
  1959.            --collection-card-corner-radius: 1.8rem;
  1960.            --collection-card-text-alignment: left;
  1961.            --collection-card-border-width: 0.1rem;
  1962.            --collection-card-border-opacity: 1.0;
  1963.            --collection-card-shadow-opacity: 0.0;
  1964.            --collection-card-shadow-visible: 0;
  1965.            --collection-card-shadow-horizontal-offset: 0.0rem;
  1966.            --collection-card-shadow-vertical-offset: 0.4rem;
  1967.            --collection-card-shadow-blur-radius: 0.5rem;
  1968.            --blog-card-image-padding: 1.6rem;
  1969.            --blog-card-corner-radius: 1.8rem;
  1970.            --blog-card-text-alignment: left;
  1971.            --blog-card-border-width: 0.1rem;
  1972.            --blog-card-border-opacity: 1.0;
  1973.            --blog-card-shadow-opacity: 0.0;
  1974.            --blog-card-shadow-visible: 0;
  1975.            --blog-card-shadow-horizontal-offset: 0.0rem;
  1976.            --blog-card-shadow-vertical-offset: 0.4rem;
  1977.            --blog-card-shadow-blur-radius: 0.5rem;
  1978.            --badge-corner-radius: 0.0rem;
  1979.            --popup-border-width: 1px;
  1980.            --popup-border-opacity: 0.1;
  1981.            --popup-corner-radius: 18px;
  1982.            --popup-shadow-opacity: 0.0;
  1983.            --popup-shadow-horizontal-offset: 0px;
  1984.            --popup-shadow-vertical-offset: 4px;
  1985.            --popup-shadow-blur-radius: 5px;
  1986.            --drawer-border-width: 0px;
  1987.            --drawer-border-opacity: 0.1;
  1988.            --drawer-shadow-opacity: 0.0;
  1989.            --drawer-shadow-horizontal-offset: 0px;
  1990.            --drawer-shadow-vertical-offset: 4px;
  1991.            --drawer-shadow-blur-radius: 5px;
  1992.            --spacing-sections-desktop: 0px;
  1993.            --spacing-sections-mobile: 0px;
  1994.            --grid-desktop-vertical-spacing: 28px;
  1995.            --grid-desktop-horizontal-spacing: 28px;
  1996.            --grid-mobile-vertical-spacing: 14px;
  1997.            --grid-mobile-horizontal-spacing: 14px;
  1998.            --text-boxes-border-opacity: 0.1;
  1999.            --text-boxes-border-width: 0px;
  2000.            --text-boxes-radius: 20px;
  2001.            --text-boxes-shadow-opacity: 0.0;
  2002.            --text-boxes-shadow-visible: 0;
  2003.            --text-boxes-shadow-horizontal-offset: 0px;
  2004.            --text-boxes-shadow-vertical-offset: 4px;
  2005.            --text-boxes-shadow-blur-radius: 5px;
  2006.            --buttons-radius: 40px;
  2007.            --buttons-radius-outset: 41px;
  2008.            --buttons-border-width: 1px;
  2009.            --buttons-border-opacity: 1.0;
  2010.            --buttons-shadow-opacity: 0.0;
  2011.            --buttons-shadow-visible: 0;
  2012.            --buttons-shadow-horizontal-offset: 0px;
  2013.            --buttons-shadow-vertical-offset: 4px;
  2014.            --buttons-shadow-blur-radius: 5px;
  2015.            --buttons-border-offset: 0.3px;
  2016.            --inputs-radius: 26px;
  2017.            --inputs-border-width: 1px;
  2018.            --inputs-border-opacity: 0.55;
  2019.            --inputs-shadow-opacity: 0.0;
  2020.            --inputs-shadow-horizontal-offset: 0px;
  2021.            --inputs-margin-offset: 0px;
  2022.            --inputs-shadow-vertical-offset: 4px;
  2023.            --inputs-shadow-blur-radius: 5px;
  2024.            --inputs-radius-outset: 27px;
  2025.            --variant-pills-radius: 40px;
  2026.            --variant-pills-border-width: 1px;
  2027.            --variant-pills-border-opacity: 0.55;
  2028.            --variant-pills-shadow-opacity: 0.0;
  2029.            --variant-pills-shadow-horizontal-offset: 0px;
  2030.            --variant-pills-shadow-vertical-offset: 4px;
  2031.            --variant-pills-shadow-blur-radius: 5px
  2032.        }
  2033.  
  2034.        *,
  2035.        ::after,
  2036.        ::before {
  2037.            box-sizing: inherit
  2038.        }
  2039.  
  2040.        html {
  2041.            box-sizing: border-box;
  2042.            font-size: calc(var(--font-body-scale) * 62.5%);
  2043.            height: 100%
  2044.        }
  2045.  
  2046.        body {
  2047.            display: grid;
  2048.            grid-template-rows: auto auto 1fr auto;
  2049.            grid-template-columns: 100%;
  2050.            min-height: 100%;
  2051.            margin: 0;
  2052.            font-size: 1.5rem;
  2053.            letter-spacing: .06rem;
  2054.            line-height: calc(1 + .8 / var(--font-body-scale));
  2055.            font-family: var(--font-body-family);
  2056.            font-style: var(--font-body-style);
  2057.            font-weight: var(--font-body-weight)
  2058.        }
  2059.  
  2060.        @media screen and (min-width:750px) {
  2061.            body {
  2062.                font-size: 1.6rem
  2063.            }
  2064.        }
  2065.    </style>
  2066.    <style>
  2067.        :root {
  2068.            --alpha-button-background: 1;
  2069.            --alpha-button-border: 1;
  2070.            --alpha-link: .85;
  2071.            --alpha-badge-border: .1
  2072.        }
  2073.  
  2074.        .product-card-wrapper .card,
  2075.        .contains-card--product {
  2076.            --border-radius: var(--product-card-corner-radius);
  2077.            --border-width: var(--product-card-border-width);
  2078.            --border-opacity: var(--product-card-border-opacity);
  2079.            --shadow-horizontal-offset: var(--product-card-shadow-horizontal-offset);
  2080.            --shadow-vertical-offset: var(--product-card-shadow-vertical-offset);
  2081.            --shadow-blur-radius: var(--product-card-shadow-blur-radius);
  2082.            --shadow-opacity: var(--product-card-shadow-opacity);
  2083.            --shadow-visible: var(--product-card-shadow-visible);
  2084.            --image-padding: var(--product-card-image-padding);
  2085.            --text-alignment: var(--product-card-text-alignment)
  2086.        }
  2087.  
  2088.        .collection-card-wrapper .card,
  2089.        .contains-card--collection {
  2090.            --border-radius: var(--collection-card-corner-radius);
  2091.            --border-width: var(--collection-card-border-width);
  2092.            --border-opacity: var(--collection-card-border-opacity);
  2093.            --shadow-horizontal-offset: var(--collection-card-shadow-horizontal-offset);
  2094.            --shadow-vertical-offset: var(--collection-card-shadow-vertical-offset);
  2095.            --shadow-blur-radius: var(--collection-card-shadow-blur-radius);
  2096.            --shadow-opacity: var(--collection-card-shadow-opacity);
  2097.            --shadow-visible: var(--collection-card-shadow-visible);
  2098.            --image-padding: var(--collection-card-image-padding);
  2099.            --text-alignment: var(--collection-card-text-alignment)
  2100.        }
  2101.  
  2102.        .article-card-wrapper .card,
  2103.        .contains-card--article {
  2104.            --border-radius: var(--blog-card-corner-radius);
  2105.            --border-width: var(--blog-card-border-width);
  2106.            --border-opacity: var(--blog-card-border-opacity);
  2107.            --shadow-horizontal-offset: var(--blog-card-shadow-horizontal-offset);
  2108.            --shadow-vertical-offset: var(--blog-card-shadow-vertical-offset);
  2109.            --shadow-blur-radius: var(--blog-card-shadow-blur-radius);
  2110.            --shadow-opacity: var(--blog-card-shadow-opacity);
  2111.            --shadow-visible: var(--blog-card-shadow-visible);
  2112.            --image-padding: var(--blog-card-image-padding);
  2113.            --text-alignment: var(--blog-card-text-alignment)
  2114.        }
  2115.  
  2116.        .contains-content-container,
  2117.        .content-container {
  2118.            --border-radius: var(--text-boxes-radius);
  2119.            --border-width: var(--text-boxes-border-width);
  2120.            --border-opacity: var(--text-boxes-border-opacity);
  2121.            --shadow-horizontal-offset: var(--text-boxes-shadow-horizontal-offset);
  2122.            --shadow-vertical-offset: var(--text-boxes-shadow-vertical-offset);
  2123.            --shadow-blur-radius: var(--text-boxes-shadow-blur-radius);
  2124.            --shadow-opacity: var(--text-boxes-shadow-opacity);
  2125.            --shadow-visible: var(--text-boxes-shadow-visible)
  2126.        }
  2127.  
  2128.        .contains-media,
  2129.        .global-media-settings {
  2130.            --border-radius: var(--media-radius);
  2131.            --border-width: var(--media-border-width);
  2132.            --border-opacity: var(--media-border-opacity);
  2133.            --shadow-horizontal-offset: var(--media-shadow-horizontal-offset);
  2134.            --shadow-vertical-offset: var(--media-shadow-vertical-offset);
  2135.            --shadow-blur-radius: var(--media-shadow-blur-radius);
  2136.            --shadow-opacity: var(--media-shadow-opacity);
  2137.            --shadow-visible: var(--media-shadow-visible)
  2138.        }
  2139.  
  2140.        .no-js:not(html) {
  2141.            display: none !important
  2142.        }
  2143.  
  2144.        html.no-js .no-js:not(html) {
  2145.            display: block !important
  2146.        }
  2147.  
  2148.        .no-js-inline {
  2149.            display: none !important
  2150.        }
  2151.  
  2152.        html.no-js .no-js-inline {
  2153.            display: inline-block !important
  2154.        }
  2155.  
  2156.        html.no-js .no-js-hidden {
  2157.            display: none !important
  2158.        }
  2159.  
  2160.        .page-width {
  2161.            max-width: var(--page-width);
  2162.            margin: 0 auto;
  2163.            padding: 0 1.5rem
  2164.        }
  2165.  
  2166.        body:has(.section-header .drawer-menu) .announcement-bar-section .page-width {
  2167.            max-width: 100%
  2168.        }
  2169.  
  2170.        .page-width.drawer-menu {
  2171.            max-width: 100%
  2172.        }
  2173.  
  2174.        .page-width-desktop {
  2175.            padding: 0;
  2176.            margin: 0 auto
  2177.        }
  2178.  
  2179.        .utility-bar__grid.page-width {
  2180.            padding-left: 3rem;
  2181.            padding-right: 3rem
  2182.        }
  2183.  
  2184.        @media screen and (min-width: 750px) {
  2185.            .page-width {
  2186.                padding: 0 5rem
  2187.            }
  2188.  
  2189.            .header.page-width,
  2190.            .utility-bar__grid.page-width {
  2191.                padding-left: 3.2rem;
  2192.                padding-right: 3.2rem
  2193.            }
  2194.  
  2195.            .page-width--narrow {
  2196.                padding: 0 9rem
  2197.            }
  2198.  
  2199.            .page-width-desktop {
  2200.                padding: 0
  2201.            }
  2202.  
  2203.            .page-width-tablet {
  2204.                padding: 0 5rem
  2205.            }
  2206.        }
  2207.  
  2208.        @media screen and (min-width: 990px) {
  2209.            .header:not(.drawer-menu).page-width {
  2210.                padding-left: 5rem;
  2211.                padding-right: 5rem
  2212.            }
  2213.  
  2214.            .page-width--narrow {
  2215.                max-width: 72.6rem;
  2216.                padding: 0
  2217.            }
  2218.  
  2219.            .page-width-desktop {
  2220.                max-width: var(--page-width);
  2221.                padding: 0 5rem
  2222.            }
  2223.        }
  2224.  
  2225.        .isolate {
  2226.            position: relative;
  2227.            z-index: 0
  2228.        }
  2229.  
  2230.        .section+.section {
  2231.            margin-top: var(--spacing-sections-mobile)
  2232.        }
  2233.  
  2234.        @media screen and (min-width: 750px) {
  2235.            .section+.section {
  2236.                margin-top: var(--spacing-sections-desktop)
  2237.            }
  2238.        }
  2239.  
  2240.        .element-margin-top {
  2241.            margin-top: 5rem
  2242.        }
  2243.  
  2244.        @media screen and (min-width: 750px) {
  2245.            .element-margin {
  2246.                margin-top: calc(5rem + var(--page-width-margin))
  2247.            }
  2248.        }
  2249.  
  2250.        .background-secondary {
  2251.            background-color: rgba(var(--color-foreground), .04)
  2252.        }
  2253.  
  2254.        .grid-auto-flow {
  2255.            display: grid;
  2256.            grid-auto-flow: column
  2257.        }
  2258.  
  2259.        .page-margin,
  2260.        .shopify-challenge__container {
  2261.            margin: 7rem auto
  2262.        }
  2263.  
  2264.        .rte-width {
  2265.            max-width: 82rem;
  2266.            margin: 0 auto 2rem
  2267.        }
  2268.  
  2269.        .list-unstyled {
  2270.            margin: 0;
  2271.            padding: 0;
  2272.            list-style: none
  2273.        }
  2274.  
  2275.        .hidden {
  2276.            display: none !important
  2277.        }
  2278.  
  2279.        .visually-hidden {
  2280.            position: absolute !important;
  2281.            overflow: hidden;
  2282.            width: 1px;
  2283.            height: 1px;
  2284.            margin: -1px;
  2285.            padding: 0;
  2286.            border: 0;
  2287.            clip: rect(0 0 0 0);
  2288.            word-wrap: normal !important
  2289.        }
  2290.  
  2291.        .visually-hidden--inline {
  2292.            margin: 0;
  2293.            height: 1em
  2294.        }
  2295.  
  2296.        .overflow-hidden {
  2297.            overflow: hidden
  2298.        }
  2299.  
  2300.        .skip-to-content-link:focus {
  2301.            z-index: 9999;
  2302.            position: inherit;
  2303.            overflow: auto;
  2304.            width: auto;
  2305.            height: auto;
  2306.            clip: auto
  2307.        }
  2308.  
  2309.        .full-width-link {
  2310.            position: absolute;
  2311.            top: 0;
  2312.            right: 0;
  2313.            bottom: 0;
  2314.            left: 0;
  2315.            z-index: 2
  2316.        }
  2317.  
  2318.        ::selection {
  2319.            background-color: rgba(var(--color-foreground), .2)
  2320.        }
  2321.  
  2322.        .text-body {
  2323.            font-size: 1.5rem;
  2324.            letter-spacing: .06rem;
  2325.            line-height: calc(1 + .8 / var(--font-body-scale));
  2326.            font-family: var(--font-body-family);
  2327.            font-style: var(--font-body-style);
  2328.            font-weight: var(--font-body-weight)
  2329.        }
  2330.  
  2331.        h1,
  2332.        h2,
  2333.        h3,
  2334.        h4,
  2335.        h5,
  2336.        .h0,
  2337.        .h1,
  2338.        .h2,
  2339.        .h3,
  2340.        .h4,
  2341.        .h5 {
  2342.            font-family: var(--font-heading-family);
  2343.            font-style: var(--font-heading-style);
  2344.            font-weight: var(--font-heading-weight);
  2345.            letter-spacing: calc(var(--font-heading-scale) * .06rem);
  2346.            color: white;
  2347.            line-height: calc(1 + .3/max(1, var(--font-heading-scale)));
  2348.            word-break: break-word
  2349.        }
  2350.  
  2351.        .hxl {
  2352.            font-size: calc(var(--font-heading-scale) * 5rem)
  2353.        }
  2354.  
  2355.        @media only screen and (min-width: 750px) {
  2356.            .hxl {
  2357.                font-size: calc(var(--font-heading-scale) * 6.2rem)
  2358.            }
  2359.        }
  2360.  
  2361.        .h0 {
  2362.            font-size: calc(var(--font-heading-scale) * 4rem)
  2363.        }
  2364.  
  2365.        @media only screen and (min-width: 750px) {
  2366.            .h0 {
  2367.                font-size: calc(var(--font-heading-scale) * 5.2rem)
  2368.            }
  2369.        }
  2370.  
  2371.        h1,
  2372.        .h1 {
  2373.            font-size: calc(var(--font-heading-scale) * 3rem)
  2374.        }
  2375.  
  2376.        @media only screen and (min-width: 750px) {
  2377.  
  2378.            h1,
  2379.            .h1 {
  2380.                font-size: calc(var(--font-heading-scale) * 4rem)
  2381.            }
  2382.        }
  2383.  
  2384.        h2,
  2385.        .h2 {
  2386.            font-size: calc(var(--font-heading-scale) * 2rem)
  2387.        }
  2388.  
  2389.        @media only screen and (min-width: 750px) {
  2390.  
  2391.            h2,
  2392.            .h2 {
  2393.                font-size: calc(var(--font-heading-scale) * 2.4rem)
  2394.            }
  2395.        }
  2396.  
  2397.        h3,
  2398.        .h3 {
  2399.            font-size: calc(var(--font-heading-scale) * 1.7rem)
  2400.        }
  2401.  
  2402.        @media only screen and (min-width: 750px) {
  2403.  
  2404.            h3,
  2405.            .h3 {
  2406.                font-size: calc(var(--font-heading-scale) * 1.8rem)
  2407.            }
  2408.        }
  2409.  
  2410.        h4,
  2411.        .h4 {
  2412.            font-family: var(--font-heading-family);
  2413.            font-style: var(--font-heading-style);
  2414.            font-size: calc(var(--font-heading-scale) * 1.5rem)
  2415.        }
  2416.  
  2417.        h5,
  2418.        .h5 {
  2419.            font-size: calc(var(--font-heading-scale) * 1.2rem)
  2420.        }
  2421.  
  2422.        @media only screen and (min-width: 750px) {
  2423.  
  2424.            h5,
  2425.            .h5 {
  2426.                font-size: calc(var(--font-heading-scale) * 1.3rem)
  2427.            }
  2428.        }
  2429.  
  2430.        h6,
  2431.        .h6 {
  2432.            color: rgba(var(--color-foreground), .75);
  2433.            margin-block-start: 1.67em;
  2434.            margin-block-end: 1.67em
  2435.        }
  2436.  
  2437.        blockquote {
  2438.            font-style: italic;
  2439.            color: rgba(var(--color-foreground), .75);
  2440.            border-left: .2rem solid rgba(var(--color-foreground), .2);
  2441.            padding-left: 1rem
  2442.        }
  2443.  
  2444.        @media screen and (min-width: 750px) {
  2445.            blockquote {
  2446.                padding-left: 1.5rem
  2447.            }
  2448.        }
  2449.  
  2450.        .caption {
  2451.            font-size: 1rem;
  2452.            letter-spacing: .07rem;
  2453.            line-height: calc(1 + .7 / var(--font-body-scale))
  2454.        }
  2455.  
  2456.        @media screen and (min-width: 750px) {
  2457.            .caption {
  2458.                font-size: 1.2rem
  2459.            }
  2460.        }
  2461.  
  2462.        .caption-with-letter-spacing {
  2463.            font-size: 1rem;
  2464.            letter-spacing: .13rem;
  2465.            line-height: calc(1 + .2 / var(--font-body-scale));
  2466.            text-transform: uppercase
  2467.        }
  2468.  
  2469.        .caption-with-letter-spacing--medium {
  2470.            font-size: 1.2rem;
  2471.            letter-spacing: .16rem
  2472.        }
  2473.  
  2474.        .caption-with-letter-spacing--large {
  2475.            font-size: 1.4rem;
  2476.            letter-spacing: .18rem
  2477.        }
  2478.  
  2479.        .caption-large,
  2480.        .customer .field input,
  2481.        .customer select,
  2482.        .field__input,
  2483.        .form__label,
  2484.        .select__select {
  2485.            font-size: 1.3rem;
  2486.            line-height: calc(1 + .5 / var(--font-body-scale));
  2487.            letter-spacing: .04rem
  2488.        }
  2489.  
  2490.        .color-foreground {
  2491.            color: rgb(var(--color-foreground))
  2492.        }
  2493.  
  2494.        table:not([class]) {
  2495.            table-layout: fixed;
  2496.            border-collapse: collapse;
  2497.            font-size: 1.4rem;
  2498.            border-style: hidden;
  2499.            box-shadow: 0 0 0 .1rem rgba(var(--color-foreground), .2)
  2500.        }
  2501.  
  2502.        table:not([class]) td,
  2503.        table:not([class]) th {
  2504.            padding: 1em;
  2505.            border: .1rem solid rgba(var(--color-foreground), .2)
  2506.        }
  2507.  
  2508.        @media screen and (max-width: 749px) {
  2509.            .small-hide {
  2510.                display: none !important
  2511.            }
  2512.        }
  2513.  
  2514.        @media screen and (min-width: 750px) and (max-width: 989px) {
  2515.            .medium-hide {
  2516.                display: none !important
  2517.            }
  2518.        }
  2519.  
  2520.        @media screen and (min-width: 990px) {
  2521.            .large-up-hide {
  2522.                display: none !important
  2523.            }
  2524.        }
  2525.  
  2526.        .left {
  2527.            text-align: left
  2528.        }
  2529.  
  2530.        .center {
  2531.            text-align: center
  2532.        }
  2533.  
  2534.        .right {
  2535.            text-align: right
  2536.        }
  2537.  
  2538.        .uppercase {
  2539.            text-transform: uppercase
  2540.        }
  2541.  
  2542.        .light {
  2543.            opacity: .7
  2544.        }
  2545.  
  2546.        a:empty,
  2547.        ul:empty,
  2548.        dl:empty,
  2549.        div:empty,
  2550.        section:empty,
  2551.        article:empty,
  2552.        p:empty,
  2553.        h1:empty,
  2554.        h2:empty,
  2555.        h3:empty,
  2556.        h4:empty,
  2557.        h5:empty,
  2558.        h6:empty {
  2559.            display: none
  2560.        }
  2561.  
  2562.        .link,
  2563.        .customer a {
  2564.            cursor: pointer;
  2565.            display: inline-block;
  2566.            border: none;
  2567.            box-shadow: none;
  2568.            text-decoration: underline;
  2569.            text-underline-offset: .3rem;
  2570.            color: rgb(var(--color-link));
  2571.            background-color: transparent;
  2572.            font-size: 1.4rem;
  2573.            font-family: inherit
  2574.        }
  2575.  
  2576.        .link--text {
  2577.            color: rgb(var(--color-foreground))
  2578.        }
  2579.  
  2580.        .link--text:hover {
  2581.            color: rgba(var(--color-foreground), .75)
  2582.        }
  2583.  
  2584.        .link-with-icon {
  2585.            display: inline-flex;
  2586.            font-size: 1.4rem;
  2587.            font-weight: 600;
  2588.            letter-spacing: .1rem;
  2589.            text-decoration: none;
  2590.            margin-bottom: 4.5rem;
  2591.            white-space: nowrap
  2592.        }
  2593.  
  2594.        .link-with-icon .icon {
  2595.            width: 1.5rem;
  2596.            margin-left: 1rem
  2597.        }
  2598.  
  2599.        a:not([href]) {
  2600.            cursor: not-allowed
  2601.        }
  2602.  
  2603.        .circle-divider:after {
  2604.            content: "\2022";
  2605.            margin: 0 1.3rem 0 1.5rem
  2606.        }
  2607.  
  2608.        .circle-divider:last-of-type:after {
  2609.            display: none
  2610.        }
  2611.  
  2612.        hr {
  2613.            border: none;
  2614.            height: .1rem;
  2615.            background-color: rgba(var(--color-foreground), .2);
  2616.            display: block;
  2617.            margin: 5rem 0
  2618.        }
  2619.  
  2620.        @media screen and (min-width: 750px) {
  2621.            hr {
  2622.                margin: 7rem 0
  2623.            }
  2624.        }
  2625.  
  2626.        .full-unstyled-link {
  2627.            text-decoration: none;
  2628.            color: currentColor;
  2629.            display: block
  2630.        }
  2631.  
  2632.        .placeholder {
  2633.            background-color: rgba(var(--color-foreground), .04);
  2634.            color: rgba(var(--color-foreground), .55);
  2635.            fill: rgba(var(--color-foreground), .55)
  2636.        }
  2637.  
  2638.        details>* {
  2639.            box-sizing: border-box
  2640.        }
  2641.  
  2642.        .break {
  2643.            word-break: break-word
  2644.        }
  2645.  
  2646.        .visibility-hidden {
  2647.            visibility: hidden
  2648.        }
  2649.  
  2650.        @media (prefers-reduced-motion) {
  2651.            .motion-reduce {
  2652.                transition: none !important;
  2653.                animation: none !important
  2654.            }
  2655.        }
  2656.  
  2657.        :root {
  2658.            --duration-short: .1s;
  2659.            --duration-default: .2s;
  2660.            --duration-announcement-bar: .25s;
  2661.            --duration-medium: .3s;
  2662.            --duration-long: .5s;
  2663.            --duration-extra-long: .6s;
  2664.            --duration-extended: 3s;
  2665.            --ease-out-slow: cubic-bezier(0, 0, .3, 1);
  2666.            --animation-slide-in: slideIn var(--duration-extra-long) var(--ease-out-slow) forwards;
  2667.            --animation-fade-in: fadeIn var(--duration-extra-long) var(--ease-out-slow)
  2668.        }
  2669.  
  2670.        .underlined-link,
  2671.        .customer a,
  2672.        .inline-richtext a {
  2673.            text-underline-offset: .3rem;
  2674.            text-decoration-thickness: .1rem;
  2675.            transition: text-decoration-thickness ease .1s
  2676.        }
  2677.  
  2678.        .underlined-link,
  2679.        .customer a {
  2680.            color: rgba(var(--color-link), var(--alpha-link))
  2681.        }
  2682.  
  2683.        .inline-richtext a,
  2684.        .rte.inline-richtext a {
  2685.            color: currentColor
  2686.        }
  2687.  
  2688.        .underlined-link:hover,
  2689.        .customer a:hover,
  2690.        .inline-richtext a:hover {
  2691.            color: rgb(var(--color-link));
  2692.            text-decoration-thickness: .2rem
  2693.        }
  2694.  
  2695.        .icon-arrow {
  2696.            width: 1.5rem
  2697.        }
  2698.  
  2699.        h3 .icon-arrow,
  2700.        .h3 .icon-arrow {
  2701.            width: calc(var(--font-heading-scale) * 1.5rem)
  2702.        }
  2703.  
  2704.        .animate-arrow .icon-arrow path {
  2705.            transform: translate(-.25rem);
  2706.            transition: transform var(--duration-short) ease
  2707.        }
  2708.  
  2709.        .animate-arrow:hover .icon-arrow path {
  2710.            transform: translate(-.05rem)
  2711.        }
  2712.  
  2713.        summary {
  2714.            cursor: pointer;
  2715.            list-style: none;
  2716.            position: relative
  2717.        }
  2718.  
  2719.        summary .icon-caret {
  2720.            position: absolute;
  2721.            height: .6rem;
  2722.            right: 1.5rem;
  2723.            top: calc(50% - .2rem)
  2724.        }
  2725.  
  2726.        summary::-webkit-details-marker {
  2727.            display: none
  2728.        }
  2729.  
  2730.        .disclosure-has-popup {
  2731.            position: relative
  2732.        }
  2733.  
  2734.        .disclosure-has-popup[open]>summary:before {
  2735.            position: fixed;
  2736.            top: 0;
  2737.            right: 0;
  2738.            bottom: 0;
  2739.            left: 0;
  2740.            z-index: 2;
  2741.            display: block;
  2742.            cursor: default;
  2743.            content: " ";
  2744.            background: transparent
  2745.        }
  2746.  
  2747.        .disclosure-has-popup>summary:before {
  2748.            display: none
  2749.        }
  2750.  
  2751.        .disclosure-has-popup[open]>summary+* {
  2752.            z-index: 100
  2753.        }
  2754.  
  2755.        @media screen and (min-width: 750px) {
  2756.            .disclosure-has-popup[open]>summary+* {
  2757.                z-index: 4
  2758.            }
  2759.  
  2760.            .facets .disclosure-has-popup[open]>summary+* {
  2761.                z-index: 2
  2762.            }
  2763.        }
  2764.  
  2765.        *:focus {
  2766.            outline: 0;
  2767.            box-shadow: none
  2768.        }
  2769.  
  2770.        *:focus-visible {
  2771.            outline: .2rem solid rgba(var(--color-foreground), .5);
  2772.            outline-offset: .3rem;
  2773.            box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3)
  2774.        }
  2775.  
  2776.        .focused,
  2777.        .no-js *:focus {
  2778.            outline: .2rem solid rgba(var(--color-foreground), .5);
  2779.            outline-offset: .3rem;
  2780.            box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3)
  2781.        }
  2782.  
  2783.        .no-js *:focus:not(:focus-visible) {
  2784.            outline: 0;
  2785.            box-shadow: none
  2786.        }
  2787.  
  2788.        .focus-inset:focus-visible {
  2789.            outline: .2rem solid rgba(var(--color-foreground), .5);
  2790.            outline-offset: -.2rem;
  2791.            box-shadow: 0 0 .2rem 0 rgba(var(--color-foreground), .3)
  2792.        }
  2793.  
  2794.        .focused.focus-inset,
  2795.        .no-js .focus-inset:focus {
  2796.            outline: .2rem solid rgba(var(--color-foreground), .5);
  2797.            outline-offset: -.2rem;
  2798.            box-shadow: 0 0 .2rem 0 rgba(var(--color-foreground), .3)
  2799.        }
  2800.  
  2801.        .no-js .focus-inset:focus:not(:focus-visible) {
  2802.            outline: 0;
  2803.            box-shadow: none
  2804.        }
  2805.  
  2806.        .focus-none {
  2807.            box-shadow: none !important;
  2808.            outline: 0 !important
  2809.        }
  2810.  
  2811.        .focus-offset:focus-visible {
  2812.            outline: .2rem solid rgba(var(--color-foreground), .5);
  2813.            outline-offset: 1rem;
  2814.            box-shadow: 0 0 0 1rem rgb(var(--color-background)), 0 0 .2rem 1.2rem rgba(var(--color-foreground), .3)
  2815.        }
  2816.  
  2817.        .focus-offset.focused,
  2818.        .no-js .focus-offset:focus {
  2819.            outline: .2rem solid rgba(var(--color-foreground), .5);
  2820.            outline-offset: 1rem;
  2821.            box-shadow: 0 0 0 1rem rgb(var(--color-background)), 0 0 .2rem 1.2rem rgba(var(--color-foreground), .3)
  2822.        }
  2823.  
  2824.        .no-js .focus-offset:focus:not(:focus-visible) {
  2825.            outline: 0;
  2826.            box-shadow: none
  2827.        }
  2828.  
  2829.        .title,
  2830.        .title-wrapper-with-link {
  2831.            margin: 3rem 0 2rem
  2832.        }
  2833.  
  2834.        .title-wrapper-with-link .title {
  2835.            margin: 0
  2836.        }
  2837.  
  2838.        .title .link {
  2839.            font-size: inherit
  2840.        }
  2841.  
  2842.        .title-wrapper {
  2843.            margin-bottom: 3rem
  2844.        }
  2845.  
  2846.        .title-wrapper-with-link {
  2847.            display: flex;
  2848.            justify-content: space-between;
  2849.            align-items: flex-end;
  2850.            gap: 1rem;
  2851.            margin-bottom: 3rem;
  2852.            flex-wrap: wrap
  2853.        }
  2854.  
  2855.        .title--primary {
  2856.            margin: 4rem 0
  2857.        }
  2858.  
  2859.        .title-wrapper--self-padded-tablet-down,
  2860.        .title-wrapper--self-padded-mobile {
  2861.            padding-left: 1.5rem;
  2862.            padding-right: 1.5rem
  2863.        }
  2864.  
  2865.        @media screen and (min-width: 750px) {
  2866.            .title-wrapper--self-padded-mobile {
  2867.                padding-left: 0;
  2868.                padding-right: 0
  2869.            }
  2870.        }
  2871.  
  2872.        @media screen and (min-width: 990px) {
  2873.  
  2874.            .title,
  2875.            .title-wrapper-with-link {
  2876.                margin: 5rem 0 3rem
  2877.            }
  2878.  
  2879.            .title--primary {
  2880.                margin: 2rem 0
  2881.            }
  2882.  
  2883.            .title-wrapper-with-link {
  2884.                align-items: center
  2885.            }
  2886.  
  2887.            .title-wrapper-with-link .title {
  2888.                margin-bottom: 0
  2889.            }
  2890.  
  2891.            .title-wrapper--self-padded-tablet-down {
  2892.                padding-left: 0;
  2893.                padding-right: 0
  2894.            }
  2895.        }
  2896.  
  2897.        .title-wrapper-with-link .link-with-icon {
  2898.            margin: 0;
  2899.            flex-shrink: 0;
  2900.            display: flex;
  2901.            align-items: center
  2902.        }
  2903.  
  2904.        .title-wrapper-with-link .link-with-icon svg {
  2905.            width: 1.5rem
  2906.        }
  2907.  
  2908.        .title-wrapper-with-link a {
  2909.            margin-top: 0;
  2910.            flex-shrink: 0
  2911.        }
  2912.  
  2913.        .title-wrapper--no-top-margin {
  2914.            margin-top: 0
  2915.        }
  2916.  
  2917.        .title-wrapper--no-top-margin>.title {
  2918.            margin-top: 0
  2919.        }
  2920.  
  2921.        .subtitle {
  2922.            font-size: 1.8rem;
  2923.            line-height: calc(1 + .8 / var(--font-body-scale));
  2924.            letter-spacing: .06rem;
  2925.            color: rgba(var(--color-foreground), .7)
  2926.        }
  2927.  
  2928.        .subtitle--small {
  2929.            font-size: 1.4rem;
  2930.            letter-spacing: .1rem
  2931.        }
  2932.  
  2933.        .subtitle--medium {
  2934.            font-size: 1.6rem;
  2935.            letter-spacing: .08rem
  2936.        }
  2937.  
  2938.        .grid {
  2939.            display: flex;
  2940.            flex-wrap: wrap;
  2941.            margin-bottom: 2rem;
  2942.            padding: 0;
  2943.            list-style: none;
  2944.            column-gap: var(--grid-mobile-horizontal-spacing);
  2945.            row-gap: var(--grid-mobile-vertical-spacing)
  2946.        }
  2947.  
  2948.        @media screen and (min-width: 750px) {
  2949.            .grid {
  2950.                column-gap: var(--grid-desktop-horizontal-spacing);
  2951.                row-gap: var(--grid-desktop-vertical-spacing)
  2952.            }
  2953.        }
  2954.  
  2955.        .grid:last-child {
  2956.            margin-bottom: 0
  2957.        }
  2958.  
  2959.        .grid__item {
  2960.            width: calc(25% - var(--grid-mobile-horizontal-spacing) * 3 / 4);
  2961.            max-width: calc(50% - var(--grid-mobile-horizontal-spacing) / 2);
  2962.            flex-grow: 1;
  2963.            flex-shrink: 0
  2964.        }
  2965.  
  2966.        @media screen and (min-width: 750px) {
  2967.            .grid__item {
  2968.                width: calc(25% - var(--grid-desktop-horizontal-spacing) * 3 / 4);
  2969.                max-width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2)
  2970.            }
  2971.        }
  2972.  
  2973.        .grid--gapless.grid {
  2974.            column-gap: 0;
  2975.            row-gap: 0
  2976.        }
  2977.  
  2978.        @media screen and (max-width: 749px) {
  2979.            .grid__item.slider__slide--full-width {
  2980.                width: 100%;
  2981.                max-width: none
  2982.            }
  2983.        }
  2984.  
  2985.        .grid--1-col .grid__item {
  2986.            max-width: 100%;
  2987.            width: 100%
  2988.        }
  2989.  
  2990.        .grid--3-col .grid__item {
  2991.            width: calc(33.33% - var(--grid-mobile-horizontal-spacing) * 2 / 3)
  2992.        }
  2993.  
  2994.        @media screen and (min-width: 750px) {
  2995.            .grid--3-col .grid__item {
  2996.                width: calc(33.33% - var(--grid-desktop-horizontal-spacing) * 2 / 3)
  2997.            }
  2998.        }
  2999.  
  3000.        .grid--2-col .grid__item {
  3001.            width: calc(50% - var(--grid-mobile-horizontal-spacing) / 2)
  3002.        }
  3003.  
  3004.        @media screen and (min-width: 750px) {
  3005.            .grid--2-col .grid__item {
  3006.                width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2)
  3007.            }
  3008.  
  3009.            .grid--4-col-tablet .grid__item {
  3010.                width: calc(25% - var(--grid-desktop-horizontal-spacing) * 3 / 4)
  3011.            }
  3012.  
  3013.            .grid--3-col-tablet .grid__item {
  3014.                width: calc(33.33% - var(--grid-desktop-horizontal-spacing) * 2 / 3)
  3015.            }
  3016.  
  3017.            .grid--2-col-tablet .grid__item {
  3018.                width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2)
  3019.            }
  3020.        }
  3021.  
  3022.        @media screen and (max-width: 989px) {
  3023.            .grid--1-col-tablet-down .grid__item {
  3024.                width: 100%;
  3025.                max-width: 100%
  3026.            }
  3027.  
  3028.            .slider--tablet.grid--peek {
  3029.                margin: 0;
  3030.                width: 100%
  3031.            }
  3032.  
  3033.            .slider--tablet.grid--peek .grid__item {
  3034.                box-sizing: content-box;
  3035.                margin: 0
  3036.            }
  3037.  
  3038.            .slider.slider--tablet .scroll-trigger.animate--slide-in,
  3039.            .slider.slider--mobile .scroll-trigger.animate--slide-in {
  3040.                animation: none;
  3041.                opacity: 1;
  3042.                transform: inherit
  3043.            }
  3044.  
  3045.            .scroll-trigger:not(.scroll-trigger--offscreen) .slider--tablet {
  3046.                animation: var(--animation-slide-in)
  3047.            }
  3048.        }
  3049.  
  3050.        @media screen and (min-width: 990px) {
  3051.            .grid--6-col-desktop .grid__item {
  3052.                width: calc(16.66% - var(--grid-desktop-horizontal-spacing) * 5 / 6);
  3053.                max-width: calc(16.66% - var(--grid-desktop-horizontal-spacing) * 5 / 6)
  3054.            }
  3055.  
  3056.            .grid--5-col-desktop .grid__item {
  3057.                width: calc(20% - var(--grid-desktop-horizontal-spacing) * 4 / 5);
  3058.                max-width: calc(20% - var(--grid-desktop-horizontal-spacing) * 4 / 5)
  3059.            }
  3060.  
  3061.            .grid--4-col-desktop .grid__item {
  3062.                width: calc(25% - var(--grid-desktop-horizontal-spacing) * 3 / 4);
  3063.                max-width: calc(25% - var(--grid-desktop-horizontal-spacing) * 3 / 4)
  3064.            }
  3065.  
  3066.            .grid--3-col-desktop .grid__item {
  3067.                width: calc(33.33% - var(--grid-desktop-horizontal-spacing) * 2 / 3);
  3068.                max-width: calc(33.33% - var(--grid-desktop-horizontal-spacing) * 2 / 3)
  3069.            }
  3070.  
  3071.            .grid--2-col-desktop .grid__item {
  3072.                width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2);
  3073.                max-width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2)
  3074.            }
  3075.  
  3076.            .slider.slider--desktop .scroll-trigger.animate--slide-in {
  3077.                animation: none;
  3078.                opacity: 1;
  3079.                transform: inherit
  3080.            }
  3081.  
  3082.            .scroll-trigger:not(.scroll-trigger--offscreen) .slider--desktop {
  3083.                animation: var(--animation-slide-in)
  3084.            }
  3085.        }
  3086.  
  3087.        @media screen and (min-width: 990px) {
  3088.            .grid--1-col-desktop {
  3089.                flex: 0 0 100%;
  3090.                max-width: 100%
  3091.            }
  3092.  
  3093.            .grid--1-col-desktop .grid__item {
  3094.                width: 100%;
  3095.                max-width: 100%
  3096.            }
  3097.        }
  3098.  
  3099.        @media screen and (max-width: 749px) {
  3100.            .grid--peek.slider--mobile {
  3101.                margin: 0;
  3102.                width: 100%
  3103.            }
  3104.  
  3105.            .grid--peek.slider--mobile .grid__item {
  3106.                box-sizing: content-box;
  3107.                margin: 0
  3108.            }
  3109.  
  3110.            .grid--peek .grid__item {
  3111.                min-width: 35%
  3112.            }
  3113.  
  3114.            .grid--peek.slider .grid__item:first-of-type {
  3115.                margin-left: 1.5rem
  3116.            }
  3117.  
  3118.            .grid--peek.slider:after {
  3119.                margin-left: calc(-1 * var(--grid-mobile-horizontal-spacing))
  3120.            }
  3121.  
  3122.            .grid--2-col-tablet-down .grid__item {
  3123.                width: calc(50% - var(--grid-mobile-horizontal-spacing) / 2)
  3124.            }
  3125.  
  3126.            .slider--tablet.grid--peek.grid--2-col-tablet-down .grid__item,
  3127.            .grid--peek .grid__item {
  3128.                width: calc(50% - var(--grid-mobile-horizontal-spacing) - 3rem)
  3129.            }
  3130.  
  3131.            .slider--tablet.grid--peek.grid--1-col-tablet-down .grid__item,
  3132.            .slider--mobile.grid--peek.grid--1-col-tablet-down .grid__item {
  3133.                width: calc(100% - var(--grid-mobile-horizontal-spacing) - 3rem)
  3134.            }
  3135.        }
  3136.  
  3137.        @media screen and (min-width: 750px) and (max-width: 989px) {
  3138.            .slider--tablet.grid--peek .grid__item {
  3139.                width: calc(25% - var(--grid-desktop-horizontal-spacing) - 3rem)
  3140.            }
  3141.  
  3142.            .slider--tablet.grid--peek.grid--3-col-tablet .grid__item {
  3143.                width: calc(33.33% - var(--grid-desktop-horizontal-spacing) - 3rem)
  3144.            }
  3145.  
  3146.            .slider--tablet.grid--peek.grid--2-col-tablet .grid__item,
  3147.            .slider--tablet.grid--peek.grid--2-col-tablet-down .grid__item {
  3148.                width: calc(50% - var(--grid-desktop-horizontal-spacing) - 3rem)
  3149.            }
  3150.  
  3151.            .slider--tablet.grid--peek .grid__item:first-of-type {
  3152.                margin-left: 1.5rem
  3153.            }
  3154.  
  3155.            .grid--2-col-tablet-down .grid__item {
  3156.                width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2)
  3157.            }
  3158.  
  3159.            .grid--1-col-tablet-down.grid--peek .grid__item {
  3160.                width: calc(100% - var(--grid-desktop-horizontal-spacing) - 3rem)
  3161.            }
  3162.        }
  3163.  
  3164.        .media {
  3165.            display: block;
  3166.            background-color: rgba(var(--color-foreground), .1);
  3167.            position: relative;
  3168.            overflow: hidden
  3169.        }
  3170.  
  3171.        .media--transparent {
  3172.            background-color: transparent
  3173.        }
  3174.  
  3175.        .media>*:not(.zoom):not(.deferred-media__poster-button),
  3176.        .media model-viewer {
  3177.            display: block;
  3178.            max-width: 100%;
  3179.            position: absolute;
  3180.            top: 0;
  3181.            left: 0;
  3182.            height: 100%;
  3183.            width: 100%
  3184.        }
  3185.  
  3186.        .media>img {
  3187.            object-fit: cover;
  3188.            object-position: center center;
  3189.            transition: opacity .4s cubic-bezier(.25, .46, .45, .94)
  3190.        }
  3191.  
  3192.        .media--square {
  3193.            padding-bottom: 100%
  3194.        }
  3195.  
  3196.        .media--portrait {
  3197.            padding-bottom: 125%
  3198.        }
  3199.  
  3200.        .media--landscape {
  3201.            padding-bottom: 66.6%
  3202.        }
  3203.  
  3204.        .media--cropped {
  3205.            padding-bottom: 56%
  3206.        }
  3207.  
  3208.        .media--16-9 {
  3209.            padding-bottom: 56.25%
  3210.        }
  3211.  
  3212.        .media--circle {
  3213.            padding-bottom: 100%;
  3214.            border-radius: 50%
  3215.        }
  3216.  
  3217.        .media.media--hover-effect>img+img {
  3218.            opacity: 0
  3219.        }
  3220.  
  3221.        @media screen and (min-width: 990px) {
  3222.            .media--cropped {
  3223.                padding-bottom: 63%
  3224.            }
  3225.        }
  3226.  
  3227.        deferred-media {
  3228.            display: block
  3229.        }
  3230.  
  3231.        .button--secondary,
  3232.        .button--tertiary {
  3233.            --color-button: var(--color-secondary-button);
  3234.            --color-button-text: var(--color-secondary-button-text)
  3235.        }
  3236.  
  3237.        .button--tertiary {
  3238.            --alpha-button-background: 0;
  3239.            --alpha-button-border: .2
  3240.        }
  3241.  
  3242.        .button,
  3243.        .shopify-challenge__button,
  3244.        .customer button,
  3245.        button.shopify-payment-button__button--unbranded,
  3246.        .shopify-payment-button [role=button],
  3247.        .cart__dynamic-checkout-buttons [role=button],
  3248.        .cart__dynamic-checkout-buttons iframe {
  3249.            --shadow-horizontal-offset: var(--buttons-shadow-horizontal-offset);
  3250.            --shadow-vertical-offset: var(--buttons-shadow-vertical-offset);
  3251.            --shadow-blur-radius: var(--buttons-shadow-blur-radius);
  3252.            --shadow-opacity: var(--buttons-shadow-opacity);
  3253.            --shadow-visible: var(--buttons-shadow-visible);
  3254.            --border-offset: var(--buttons-border-offset);
  3255.            --border-opacity: calc(1 - var(--buttons-border-opacity));
  3256.            border-radius: var(--buttons-radius-outset);
  3257.            position: relative
  3258.        }
  3259.  
  3260.        .button,
  3261.        .shopify-challenge__button,
  3262.        .customer button,
  3263.        button.shopify-payment-button__button--unbranded {
  3264.            min-width: calc(12rem + var(--buttons-border-width) * 2);
  3265.            min-height: calc(4.5rem + var(--buttons-border-width) * 2)
  3266.        }
  3267.  
  3268.        .shopify-payment-button__button--branded {
  3269.            z-index: auto
  3270.        }
  3271.  
  3272.        .cart__dynamic-checkout-buttons iframe {
  3273.            box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius) rgba(var(--color-shadow), var(--shadow-opacity))
  3274.        }
  3275.  
  3276.        .button,
  3277.        .shopify-challenge__button,
  3278.        .customer button {
  3279.            display: inline-flex;
  3280.            justify-content: center;
  3281.            align-items: center;
  3282.            border: 0;
  3283.            padding: 0 3rem;
  3284.            cursor: pointer;
  3285.            font: inherit;
  3286.            font-size: 1.5rem;
  3287.            text-decoration: none;
  3288.            color: rgb(var(--color-button-text));
  3289.            transition: box-shadow var(--duration-short) ease;
  3290.            -webkit-appearance: none;
  3291.            appearance: none;
  3292.            background-color: rgba(var(--color-button), var(--alpha-button-background))
  3293.        }
  3294.  
  3295.        .button:before,
  3296.        .shopify-challenge__button:before,
  3297.        .customer button:before,
  3298.        .shopify-payment-button__button--unbranded:before,
  3299.        .shopify-payment-button [role=button]:before,
  3300.        .cart__dynamic-checkout-buttons [role=button]:before {
  3301.            content: "";
  3302.            position: absolute;
  3303.            top: 0;
  3304.            right: 0;
  3305.            bottom: 0;
  3306.            left: 0;
  3307.            z-index: -1;
  3308.            border-radius: var(--buttons-radius-outset);
  3309.            box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius) rgba(var(--color-shadow), var(--shadow-opacity))
  3310.        }
  3311.  
  3312.        .button:after,
  3313.        .shopify-challenge__button:after,
  3314.        .customer button:after,
  3315.        .shopify-payment-button__button--unbranded:after {
  3316.            content: "";
  3317.            position: absolute;
  3318.            top: var(--buttons-border-width);
  3319.            right: var(--buttons-border-width);
  3320.            bottom: var(--buttons-border-width);
  3321.            left: var(--buttons-border-width);
  3322.            z-index: 1;
  3323.            border-radius: var(--buttons-radius);
  3324.            box-shadow: 0 0 0 calc(var(--buttons-border-width) + var(--border-offset)) rgba(var(--color-button-text), var(--border-opacity)), 0 0 0 var(--buttons-border-width) rgba(var(--color-button), var(--alpha-button-background));
  3325.            transition: box-shadow var(--duration-short) ease
  3326.        }
  3327.  
  3328.        .button:not([disabled]):hover:after,
  3329.        .shopify-challenge__button:hover:after,
  3330.        .customer button:hover:after,
  3331.        .shopify-payment-button__button--unbranded:hover:after {
  3332.            --border-offset: 1.3px;
  3333.            box-shadow: 0 0 0 calc(var(--buttons-border-width) + var(--border-offset)) rgba(var(--color-button-text), var(--border-opacity)), 0 0 0 calc(var(--buttons-border-width) + 1px) rgba(var(--color-button), var(--alpha-button-background))
  3334.        }
  3335.  
  3336.        .button--secondary:after {
  3337.            --border-opacity: var(--buttons-border-opacity)
  3338.        }
  3339.  
  3340.        .button:focus-visible,
  3341.        .button:focus,
  3342.        .button.focused,
  3343.        .shopify-payment-button__button--unbranded:focus-visible,
  3344.        .shopify-payment-button [role=button]:focus-visible,
  3345.        .shopify-payment-button__button--unbranded:focus,
  3346.        .shopify-payment-button [role=button]:focus {
  3347.            outline: 0;
  3348.            box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .5rem rgba(var(--color-foreground), .5), 0 0 .5rem .4rem rgba(var(--color-foreground), .3)
  3349.        }
  3350.  
  3351.        .button:focus:not(:focus-visible):not(.focused),
  3352.        .shopify-payment-button__button--unbranded:focus:not(:focus-visible):not(.focused),
  3353.        .shopify-payment-button [role=button]:focus:not(:focus-visible):not(.focused) {
  3354.            box-shadow: inherit
  3355.        }
  3356.  
  3357.        .button::selection,
  3358.        .shopify-challenge__button::selection,
  3359.        .customer button::selection {
  3360.            background-color: rgba(var(--color-button-text), .3)
  3361.        }
  3362.  
  3363.        .button,
  3364.        .button-label,
  3365.        .shopify-challenge__button,
  3366.        .customer button {
  3367.            font-size: 1.5rem;
  3368.            letter-spacing: .1rem;
  3369.            line-height: calc(1 + .2 / var(--font-body-scale))
  3370.        }
  3371.  
  3372.        .button--tertiary {
  3373.            font-size: 1.2rem;
  3374.            padding: 1rem 1.5rem;
  3375.            min-width: calc(9rem + var(--buttons-border-width) * 2);
  3376.            min-height: calc(3.5rem + var(--buttons-border-width) * 2)
  3377.        }
  3378.  
  3379.        .button--small {
  3380.            padding: 1.2rem 2.6rem
  3381.        }
  3382.  
  3383.        .button:disabled,
  3384.        .button[aria-disabled=true],
  3385.        .button.disabled,
  3386.        .customer button:disabled,
  3387.        .customer button[aria-disabled=true],
  3388.        .customer button.disabled,
  3389.        .quantity__button.disabled {
  3390.            cursor: not-allowed;
  3391.            opacity: .5
  3392.        }
  3393.  
  3394.        .button--full-width {
  3395.            display: flex;
  3396.            width: 100%
  3397.        }
  3398.  
  3399.        .button.loading {
  3400.            color: transparent;
  3401.            position: relative
  3402.        }
  3403.  
  3404.        @media screen and (forced-colors: active) {
  3405.            .button.loading {
  3406.                color: rgb(var(--color-foreground))
  3407.            }
  3408.        }
  3409.  
  3410.        .button.loading>.loading__spinner {
  3411.            top: 50%;
  3412.            left: 50%;
  3413.            transform: translate(-50%, -50%);
  3414.            position: absolute;
  3415.            height: 100%;
  3416.            display: flex;
  3417.            align-items: center
  3418.        }
  3419.  
  3420.        .button.loading>.loading__spinner .spinner {
  3421.            width: fit-content
  3422.        }
  3423.  
  3424.        .button.loading>.loading__spinner .path {
  3425.            stroke: rgb(var(--color-button-text))
  3426.        }
  3427.  
  3428.        .share-button {
  3429.            display: block;
  3430.            position: relative
  3431.        }
  3432.  
  3433.        .share-button details {
  3434.            width: fit-content
  3435.        }
  3436.  
  3437.        .share-button__button {
  3438.            font-size: 1.4rem;
  3439.            display: flex;
  3440.            align-items: center;
  3441.            color: rgb(var(--color-link));
  3442.            margin-left: 0;
  3443.            padding-left: 0;
  3444.            min-height: 4.4rem
  3445.        }
  3446.  
  3447.        details[open]>.share-button__fallback {
  3448.            animation: animateMenuOpen var(--duration-default) ease
  3449.        }
  3450.  
  3451.        .share-button__button:hover {
  3452.            text-decoration: underline;
  3453.            text-underline-offset: .3rem
  3454.        }
  3455.  
  3456.        .share-button__button,
  3457.        .share-button__fallback button {
  3458.            cursor: pointer;
  3459.            background-color: transparent;
  3460.            border: none
  3461.        }
  3462.  
  3463.        .share-button__button .icon-share {
  3464.            height: 1.2rem;
  3465.            margin-right: 1rem;
  3466.            min-width: 1.3rem
  3467.        }
  3468.  
  3469.        .share-button__fallback {
  3470.            display: flex;
  3471.            align-items: center;
  3472.            position: absolute;
  3473.            top: 3rem;
  3474.            left: .1rem;
  3475.            z-index: 3;
  3476.            width: 100%;
  3477.            min-width: max-content;
  3478.            border-radius: var(--inputs-radius);
  3479.            border: 0
  3480.        }
  3481.  
  3482.        .share-button__fallback:after {
  3483.            pointer-events: none;
  3484.            content: "";
  3485.            position: absolute;
  3486.            top: var(--inputs-border-width);
  3487.            right: var(--inputs-border-width);
  3488.            bottom: var(--inputs-border-width);
  3489.            left: var(--inputs-border-width);
  3490.            border: .1rem solid transparent;
  3491.            border-radius: var(--inputs-radius);
  3492.            box-shadow: 0 0 0 var(--inputs-border-width) rgba(var(--color-foreground), var(--inputs-border-opacity));
  3493.            transition: box-shadow var(--duration-short) ease;
  3494.            z-index: 1
  3495.        }
  3496.  
  3497.        .share-button__fallback:before {
  3498.            background: rgb(var(--color-background));
  3499.            pointer-events: none;
  3500.            content: "";
  3501.            position: absolute;
  3502.            top: 0;
  3503.            right: 0;
  3504.            bottom: 0;
  3505.            left: 0;
  3506.            border-radius: var(--inputs-radius-outset);
  3507.            box-shadow: var(--inputs-shadow-horizontal-offset) var(--inputs-shadow-vertical-offset) var(--inputs-shadow-blur-radius) rgba(var(--color-shadow), var(--inputs-shadow-opacity));
  3508.            z-index: -1
  3509.        }
  3510.  
  3511.        .share-button__fallback button {
  3512.            width: 4.4rem;
  3513.            height: 4.4rem;
  3514.            padding: 0;
  3515.            flex-shrink: 0;
  3516.            display: flex;
  3517.            justify-content: center;
  3518.            align-items: center;
  3519.            position: relative;
  3520.            right: var(--inputs-border-width)
  3521.        }
  3522.  
  3523.        .share-button__fallback button:hover {
  3524.            color: rgba(var(--color-foreground), .75)
  3525.        }
  3526.  
  3527.        .share-button__fallback button:hover svg {
  3528.            transform: scale(1.07)
  3529.        }
  3530.  
  3531.        .share-button__close:not(.hidden)+.share-button__copy {
  3532.            display: none
  3533.        }
  3534.  
  3535.        .share-button__close,
  3536.        .share-button__copy {
  3537.            background-color: transparent;
  3538.            color: rgb(var(--color-foreground))
  3539.        }
  3540.  
  3541.        .share-button__copy:focus-visible,
  3542.        .share-button__close:focus-visible {
  3543.            background-color: black;
  3544.            z-index: 2
  3545.        }
  3546.  
  3547.        .share-button__copy:focus,
  3548.        .share-button__close:focus {
  3549.            background-color: black;
  3550.            z-index: 2
  3551.        }
  3552.  
  3553.        .field:not(:focus-visible):not(.focused)+.share-button__copy:not(:focus-visible):not(.focused),
  3554.        .field:not(:focus-visible):not(.focused)+.share-button__close:not(:focus-visible):not(.focused) {
  3555.            background-color: inherit
  3556.        }
  3557.  
  3558.        .share-button__fallback .field:after,
  3559.        .share-button__fallback .field:before {
  3560.            content: none
  3561.        }
  3562.  
  3563.        .share-button__fallback .field {
  3564.            border-radius: 0;
  3565.            min-width: auto;
  3566.            min-height: auto;
  3567.            transition: none
  3568.        }
  3569.  
  3570.        .share-button__fallback .field__input:focus,
  3571.        .share-button__fallback .field__input:-webkit-autofill {
  3572.            outline: .2rem solid rgba(var(--color-foreground), .5);
  3573.            outline-offset: .1rem;
  3574.            box-shadow: 0 0 0 .1rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3)
  3575.        }
  3576.  
  3577.        .share-button__fallback .field__input {
  3578.            box-shadow: none;
  3579.            text-overflow: ellipsis;
  3580.            white-space: nowrap;
  3581.            overflow: hidden;
  3582.            filter: none;
  3583.            min-width: auto;
  3584.            min-height: auto
  3585.        }
  3586.  
  3587.        .share-button__fallback .field__input:hover {
  3588.            box-shadow: none
  3589.        }
  3590.  
  3591.        .share-button__fallback .icon {
  3592.            width: 1.5rem;
  3593.            height: 1.5rem
  3594.        }
  3595.  
  3596.        .share-button__message:not(:empty) {
  3597.            display: flex;
  3598.            align-items: center;
  3599.            width: 100%;
  3600.            height: 100%;
  3601.            margin-top: 0;
  3602.            padding: .8rem 0 .8rem 1.5rem;
  3603.            margin: var(--inputs-border-width)
  3604.        }
  3605.  
  3606.        .share-button__message:not(:empty):not(.hidden)~* {
  3607.            display: none
  3608.        }
  3609.  
  3610.        .field__input,
  3611.        .select__select,
  3612.        .customer .field input,
  3613.        .customer select {
  3614.            -webkit-appearance: none;
  3615.            appearance: none;
  3616.            background-color: black;
  3617.            color: rgb(var(--color-foreground));
  3618.            font-size: 1.6rem;
  3619.            width: 100%;
  3620.            box-sizing: border-box;
  3621.            transition: box-shadow var(--duration-short) ease;
  3622.            border-radius: var(--inputs-radius);
  3623.            height: 4.5rem;
  3624.            min-height: calc(var(--inputs-border-width) * 2);
  3625.            min-width: calc(7rem + (var(--inputs-border-width) * 2));
  3626.            position: relative;
  3627.            border: 0
  3628.        }
  3629.  
  3630.        .field:before,
  3631.        .select:before,
  3632.        .customer .field:before,
  3633.        .customer select:before,
  3634.        .localization-form__select:before {
  3635.            pointer-events: none;
  3636.            content: "";
  3637.            position: absolute;
  3638.            top: 0;
  3639.            right: 0;
  3640.            bottom: 0;
  3641.            left: 0;
  3642.            border-radius: var(--inputs-radius-outset);
  3643.            box-shadow: var(--inputs-shadow-horizontal-offset) var(--inputs-shadow-vertical-offset) var(--inputs-shadow-blur-radius) rgba(var(--color-shadow), var(--inputs-shadow-opacity));
  3644.            z-index: -1
  3645.        }
  3646.  
  3647.        .field:after,
  3648.        .select:after,
  3649.        .customer .field:after,
  3650.        .customer select:after,
  3651.        .localization-form__select:after {
  3652.            pointer-events: none;
  3653.            content: "";
  3654.            position: absolute;
  3655.            top: var(--inputs-border-width);
  3656.            right: var(--inputs-border-width);
  3657.            bottom: var(--inputs-border-width);
  3658.            left: var(--inputs-border-width);
  3659.            border: .1rem solid transparent;
  3660.            border-radius: var(--inputs-radius);
  3661.            box-shadow: 0 0 0 var(--inputs-border-width) rgba(var(--color-foreground), var(--inputs-border-opacity));
  3662.            transition: box-shadow var(--duration-short) ease;
  3663.            z-index: 1
  3664.        }
  3665.  
  3666.        .select__select {
  3667.            font-family: var(--font-body-family);
  3668.            font-style: var(--font-body-style);
  3669.            font-weight: var(--font-body-weight);
  3670.            font-size: 1.2rem;
  3671.            color: rgba(var(--color-foreground), .75)
  3672.        }
  3673.  
  3674.        .field:hover.field:after,
  3675.        .select:hover.select:after,
  3676.        .select__select:hover.select__select:after,
  3677.        .customer .field:hover.field:after,
  3678.        .customer select:hover.select:after,
  3679.        .localization-form__select:hover.localization-form__select:after {
  3680.            box-shadow: 0 0 0 calc(.1rem + var(--inputs-border-width)) rgba(var(--color-foreground), var(--inputs-border-opacity));
  3681.            outline: 0;
  3682.            border-radius: var(--inputs-radius)
  3683.        }
  3684.  
  3685.        .field__input:focus-visible,
  3686.        .select__select:focus-visible,
  3687.        .customer .field input:focus-visible,
  3688.        .customer select:focus-visible,
  3689.        .localization-form__select:focus-visible.localization-form__select:after {
  3690.            box-shadow: 0 0 0 calc(.1rem + var(--inputs-border-width)) rgba(var(--color-foreground));
  3691.            outline: 0;
  3692.            border-radius: var(--inputs-radius)
  3693.        }
  3694.  
  3695.        .field__input:focus,
  3696.        .select__select:focus,
  3697.        .customer .field input:focus,
  3698.        .customer select:focus,
  3699.        .localization-form__select:focus.localization-form__select:after {
  3700.            box-shadow: 0 0 0 calc(.1rem + var(--inputs-border-width)) rgba(var(--color-foreground));
  3701.            outline: 0;
  3702.            border-radius: var(--inputs-radius)
  3703.        }
  3704.  
  3705.        .localization-form__select:focus {
  3706.            outline: 0;
  3707.            box-shadow: none
  3708.        }
  3709.  
  3710.        .text-area,
  3711.        .select {
  3712.            display: flex;
  3713.            position: relative;
  3714.            width: 100%
  3715.        }
  3716.  
  3717.        .select .icon-caret,
  3718.        .customer select+svg {
  3719.            height: .6rem;
  3720.            pointer-events: none;
  3721.            position: absolute;
  3722.            top: calc(50% - .2rem);
  3723.            right: calc(var(--inputs-border-width) + 1.5rem)
  3724.        }
  3725.  
  3726.        .select__select,
  3727.        .customer select {
  3728.            cursor: pointer;
  3729.            line-height: calc(1 + .6 / var(--font-body-scale));
  3730.            padding: 0 calc(var(--inputs-border-width) + 3rem) 0 2rem;
  3731.            margin: var(--inputs-border-width);
  3732.            min-height: calc(var(--inputs-border-width) * 2)
  3733.        }
  3734.  
  3735.        .field {
  3736.            position: relative;
  3737.            width: 100%;
  3738.            display: flex;
  3739.            transition: box-shadow var(--duration-short) ease
  3740.        }
  3741.  
  3742.        .customer .field {
  3743.            display: flex
  3744.        }
  3745.  
  3746.        .field--with-error {
  3747.            flex-wrap: wrap
  3748.        }
  3749.  
  3750.        .field__input,
  3751.        .customer .field input {
  3752.            flex-grow: 1;
  3753.            text-align: left;
  3754.            padding: 1.5rem;
  3755.            margin: var(--inputs-border-width);
  3756.            transition: box-shadow var(--duration-short) ease
  3757.        }
  3758.  
  3759.        .field__label,
  3760.        .customer .field label {
  3761.            font-size: 1.6rem;
  3762.            left: calc(var(--inputs-border-width) + 2rem);
  3763.            top: calc(1rem + var(--inputs-border-width));
  3764.            margin-bottom: 0;
  3765.            pointer-events: none;
  3766.            position: absolute;
  3767.            transition: top var(--duration-short) ease, font-size var(--duration-short) ease;
  3768.            color: rgba(var(--color-foreground), .75);
  3769.            letter-spacing: .1rem;
  3770.            line-height: 1.5
  3771.        }
  3772.  
  3773.        .field__input:focus~.field__label,
  3774.        .field__input:not(:placeholder-shown)~.field__label,
  3775.        .field__input:-webkit-autofill~.field__label,
  3776.        .customer .field input:focus~label,
  3777.        .customer .field input:not(:placeholder-shown)~label,
  3778.        .customer .field input:-webkit-autofill~label {
  3779.            font-size: 1rem;
  3780.            top: calc(var(--inputs-border-width) + .5rem);
  3781.            left: calc(var(--inputs-border-width) + 2rem);
  3782.            letter-spacing: .04rem
  3783.        }
  3784.  
  3785.        .field__input:focus,
  3786.        .field__input:not(:placeholder-shown),
  3787.        .field__input:-webkit-autofill,
  3788.        .customer .field input:focus,
  3789.        .customer .field input:not(:placeholder-shown),
  3790.        .customer .field input:-webkit-autofill {
  3791.            padding: 2.2rem 1.5rem .8rem 2rem;
  3792.            margin: var(--inputs-border-width)
  3793.        }
  3794.  
  3795.        .field__input::-webkit-search-cancel-button,
  3796.        .customer .field input::-webkit-search-cancel-button {
  3797.            display: none
  3798.        }
  3799.  
  3800.        .field__input::placeholder,
  3801.        .customer .field input::placeholder {
  3802.            opacity: 0
  3803.        }
  3804.  
  3805.        .field__button {
  3806.            align-items: center;
  3807.            background-color: transparent;
  3808.            border: 0;
  3809.            color: currentColor;
  3810.            cursor: pointer;
  3811.            display: flex;
  3812.            height: 4.4rem;
  3813.            justify-content: center;
  3814.            overflow: hidden;
  3815.            padding: 0;
  3816.            position: absolute;
  3817.            right: 0;
  3818.            top: 0;
  3819.            width: 4.4rem
  3820.        }
  3821.  
  3822.        .field__button>svg {
  3823.            height: 2.5rem;
  3824.            width: 2.5rem
  3825.        }
  3826.  
  3827.        .field__input:-webkit-autofill~.field__button,
  3828.        .field__input:-webkit-autofill~.field__label,
  3829.        .customer .field input:-webkit-autofill~label {
  3830.            color: #000
  3831.        }
  3832.  
  3833.        .text-area {
  3834.            font-family: var(--font-body-family);
  3835.            font-style: var(--font-body-style);
  3836.            font-weight: var(--font-body-weight);
  3837.            min-height: 10rem;
  3838.            resize: none
  3839.        }
  3840.  
  3841.        input[type=checkbox] {
  3842.            display: inline-block;
  3843.            width: auto;
  3844.            margin-right: .5rem
  3845.        }
  3846.  
  3847.        .form__label {
  3848.            display: block;
  3849.            margin-bottom: .6rem
  3850.        }
  3851.  
  3852.        .form__message {
  3853.            align-items: center;
  3854.            display: flex;
  3855.            font-size: 1.4rem;
  3856.            line-height: 1;
  3857.            margin-top: 1rem
  3858.        }
  3859.  
  3860.        .form__message--large {
  3861.            font-size: 1.6rem
  3862.        }
  3863.  
  3864.        .customer .field .form__message {
  3865.            font-size: 1.4rem;
  3866.            text-align: left
  3867.        }
  3868.  
  3869.        .form__message .icon,
  3870.        .customer .form__message svg {
  3871.            flex-shrink: 0;
  3872.            height: 1.3rem;
  3873.            margin-right: .5rem;
  3874.            width: 1.3rem
  3875.        }
  3876.  
  3877.        .form__message--large .icon,
  3878.        .customer .form__message svg {
  3879.            height: 1.5rem;
  3880.            width: 1.5rem;
  3881.            margin-right: 1rem
  3882.        }
  3883.  
  3884.        .customer .field .form__message svg {
  3885.            align-self: start
  3886.        }
  3887.  
  3888.        .form-status {
  3889.            margin: 0;
  3890.            font-size: 1.6rem
  3891.        }
  3892.  
  3893.        .form-status-list {
  3894.            padding: 0;
  3895.            margin: 2rem 0 4rem
  3896.        }
  3897.  
  3898.        .form-status-list li {
  3899.            list-style-position: inside
  3900.        }
  3901.  
  3902.        .form-status-list .link:first-letter {
  3903.            text-transform: capitalize
  3904.        }
  3905.  
  3906.        .quantity {
  3907.            color: rgba(var(--color-foreground));
  3908.            position: relative;
  3909.            width: calc(14rem / var(--font-body-scale) + var(--inputs-border-width) * 2);
  3910.            display: flex;
  3911.            border-radius: var(--inputs-radius);
  3912.            min-height: calc((var(--inputs-border-width) * 2) + 4.5rem)
  3913.        }
  3914.  
  3915.        .quantity:after {
  3916.            pointer-events: none;
  3917.            content: "";
  3918.            position: absolute;
  3919.            top: var(--inputs-border-width);
  3920.            right: var(--inputs-border-width);
  3921.            bottom: var(--inputs-border-width);
  3922.            left: var(--inputs-border-width);
  3923.            border: .1rem solid transparent;
  3924.            border-radius: var(--inputs-radius);
  3925.            box-shadow: 0 0 0 var(--inputs-border-width) rgba(var(--color-foreground), var(--inputs-border-opacity));
  3926.            transition: box-shadow var(--duration-short) ease;
  3927.            z-index: 1
  3928.        }
  3929.  
  3930.        .quantity:before {
  3931.            background: rgb(var(--color-background));
  3932.            pointer-events: none;
  3933.            content: "";
  3934.            position: absolute;
  3935.            top: 0;
  3936.            right: 0;
  3937.            bottom: 0;
  3938.            left: 0;
  3939.            border-radius: var(--inputs-radius-outset);
  3940.            box-shadow: var(--inputs-shadow-horizontal-offset) var(--inputs-shadow-vertical-offset) var(--inputs-shadow-blur-radius) rgba(var(--color-shadow), var(--inputs-shadow-opacity));
  3941.            z-index: -1
  3942.        }
  3943.  
  3944.        .quantity__input {
  3945.            color: currentColor;
  3946.            font-size: 1.6rem;
  3947.            font-weight: 500;
  3948.            opacity: .85;
  3949.            text-align: center;
  3950.            background-color: transparent;
  3951.            border: 0;
  3952.            padding: 0 .5rem;
  3953.            width: 100%;
  3954.            flex-grow: 1;
  3955.            -webkit-appearance: none;
  3956.            appearance: none
  3957.        }
  3958.  
  3959.        .quantity__button {
  3960.            width: calc(4.5rem / var(--font-body-scale));
  3961.            flex-shrink: 0;
  3962.            font-size: 1.8rem;
  3963.            border: 0;
  3964.            background-color: transparent;
  3965.            cursor: pointer;
  3966.            display: flex;
  3967.            align-items: center;
  3968.            justify-content: center;
  3969.            color: rgb(var(--color-foreground));
  3970.            padding: 0
  3971.        }
  3972.  
  3973.        .quantity__button:first-child {
  3974.            margin-left: calc(var(--inputs-border-width))
  3975.        }
  3976.  
  3977.        .quantity__button:last-child {
  3978.            margin-right: calc(var(--inputs-border-width))
  3979.        }
  3980.  
  3981.        .quantity__button svg {
  3982.            width: 1rem;
  3983.            pointer-events: none
  3984.        }
  3985.  
  3986.        .quantity__button:focus-visible,
  3987.        .quantity__input:focus-visible {
  3988.            background-color: black;
  3989.            z-index: 2
  3990.        }
  3991.  
  3992.        .quantity__button:focus,
  3993.        .quantity__input:focus {
  3994.            background-color: black;
  3995.            z-index: 2
  3996.        }
  3997.  
  3998.        .quantity__button:not(:focus-visible):not(.focused),
  3999.        .quantity__input:not(:focus-visible):not(.focused) {
  4000.            box-shadow: inherit;
  4001.            background-color: inherit
  4002.        }
  4003.  
  4004.        .quantity__input:-webkit-autofill,
  4005.        .quantity__input:-webkit-autofill:hover,
  4006.        .quantity__input:-webkit-autofill:active {
  4007.            box-shadow: 0 0 0 10rem rgb(var(--color-background)) inset !important;
  4008.            -webkit-box-shadow: 0 0 0 10rem rgb(var(--color-background)) inset !important
  4009.        }
  4010.  
  4011.        .quantity__input::-webkit-outer-spin-button,
  4012.        .quantity__input::-webkit-inner-spin-button {
  4013.            -webkit-appearance: none;
  4014.            margin: 0
  4015.        }
  4016.  
  4017.        .quantity__input[type=number] {
  4018.            -moz-appearance: textfield
  4019.        }
  4020.  
  4021.        .quantity__rules {
  4022.            margin-top: .5rem;
  4023.            position: relative;
  4024.            font-size: 1.2rem
  4025.        }
  4026.  
  4027.        .quantity__rules .caption {
  4028.            display: inline-block;
  4029.            margin-top: 0;
  4030.            margin-bottom: 0
  4031.        }
  4032.  
  4033.        .quantity__rules .divider+.divider:before {
  4034.            content: "\2022";
  4035.            margin: 0 .5rem
  4036.        }
  4037.  
  4038.        .quantity__rules-cart {
  4039.            position: relative
  4040.        }
  4041.  
  4042.        product-info .loading__spinner:not(.hidden)~*,
  4043.        .quantity__rules-cart .loading__spinner:not(.hidden)~* {
  4044.            visibility: hidden
  4045.        }
  4046.  
  4047.        .modal__toggle {
  4048.            list-style-type: none
  4049.        }
  4050.  
  4051.        .no-js details[open] .modal__toggle {
  4052.            position: absolute;
  4053.            z-index: 5
  4054.        }
  4055.  
  4056.        .modal__toggle-close {
  4057.            display: none
  4058.        }
  4059.  
  4060.        .no-js details[open] svg.modal__toggle-close {
  4061.            display: flex;
  4062.            z-index: 1;
  4063.            height: 1.7rem;
  4064.            width: 1.7rem
  4065.        }
  4066.  
  4067.        .modal__toggle-open {
  4068.            display: flex
  4069.        }
  4070.  
  4071.        .no-js details[open] .modal__toggle-open {
  4072.            display: none
  4073.        }
  4074.  
  4075.        .no-js .modal__close-button.link {
  4076.            display: none
  4077.        }
  4078.  
  4079.        .modal__close-button.link {
  4080.            display: flex;
  4081.            justify-content: center;
  4082.            align-items: center;
  4083.            padding: 0rem;
  4084.            height: 4.4rem;
  4085.            width: 4.4rem;
  4086.            background-color: transparent
  4087.        }
  4088.  
  4089.        .modal__close-button .icon {
  4090.            width: 1.7rem;
  4091.            height: 1.7rem
  4092.        }
  4093.  
  4094.        .modal__content {
  4095.            position: absolute;
  4096.            top: 0;
  4097.            left: 0;
  4098.            right: 0;
  4099.            bottom: 0;
  4100.            background: rgb(var(--color-background));
  4101.            z-index: 4;
  4102.            display: flex;
  4103.            justify-content: center;
  4104.            align-items: center
  4105.        }
  4106.  
  4107.        .media-modal {
  4108.            cursor: zoom-out
  4109.        }
  4110.  
  4111.        .media-modal .deferred-media {
  4112.            cursor: initial
  4113.        }
  4114.  
  4115.        .cart-count-bubble:empty {
  4116.            display: none
  4117.        }
  4118.  
  4119.        .cart-count-bubble {
  4120.            position: absolute;
  4121.            background-color: rgb(var(--color-button));
  4122.            color: rgb(var(--color-button-text));
  4123.            height: 1.7rem;
  4124.            width: 1.7rem;
  4125.            border-radius: 100%;
  4126.            display: flex;
  4127.            justify-content: center;
  4128.            align-items: center;
  4129.            font-size: .9rem;
  4130.            bottom: .8rem;
  4131.            left: 2.2rem;
  4132.            line-height: calc(1 + .1 / var(--font-body-scale))
  4133.        }
  4134.  
  4135.        .utility-bar {
  4136.            height: 100%
  4137.        }
  4138.  
  4139.        .utility-bar--bottom-border {
  4140.            border-bottom: .1rem solid rgba(var(--color-foreground), .08)
  4141.        }
  4142.  
  4143.        @media screen and (min-width: 990px) {
  4144.            .utility-bar--bottom-border-social-only {
  4145.                border-bottom: .1rem solid rgba(var(--color-foreground), .08)
  4146.            }
  4147.        }
  4148.  
  4149.        .utility-bar__grid {
  4150.            display: grid;
  4151.            grid-template-columns: 1fr;
  4152.            grid-template-areas: "announcements"
  4153.        }
  4154.  
  4155.        .utility-bar__grid .list-social {
  4156.            justify-content: flex-start;
  4157.            align-content: center;
  4158.            margin-left: -1.2rem;
  4159.            grid-area: social-icons
  4160.        }
  4161.  
  4162.        @media screen and (max-width: 989px) {
  4163.            .utility-bar .utility-bar__grid .list-social {
  4164.                display: none
  4165.            }
  4166.        }
  4167.  
  4168.        .utility-bar .list-social__item .icon {
  4169.            scale: .9
  4170.        }
  4171.  
  4172.        @media screen and (min-width: 990px) {
  4173.            .utility-bar__grid--3-col {
  4174.                grid-template-columns: 3fr 4fr 3fr;
  4175.                grid-template-areas: "social-icons announcements language-currency"
  4176.            }
  4177.  
  4178.            .utility-bar__grid--2-col {
  4179.                grid-template-columns: 1fr 1fr;
  4180.                grid-template-areas: "social-icons language-currency"
  4181.            }
  4182.  
  4183.            .announcement-bar.announcement-bar--one-announcement,
  4184.            .announcement-bar--one-announcement .announcement-bar__link {
  4185.                width: fit-content;
  4186.                margin: auto
  4187.            }
  4188.        }
  4189.  
  4190.        .announcement-bar,
  4191.        .announcement-bar__announcement {
  4192.            color: rgb(var(--color-foreground));
  4193.            width: 100%;
  4194.            height: 100%;
  4195.            display: flex;
  4196.            justify-content: center;
  4197.            flex-wrap: wrap;
  4198.            align-content: center;
  4199.            grid-area: announcements
  4200.        }
  4201.  
  4202.        .announcement-bar .slider--everywhere {
  4203.            margin-bottom: 0;
  4204.            scroll-behavior: auto
  4205.        }
  4206.  
  4207.        .utility-bar__grid .announcement-bar-slider,
  4208.        .announcement-bar-slider,
  4209.        .announcement-bar-slider .slider {
  4210.            width: 100%
  4211.        }
  4212.  
  4213.        .announcement-bar .slider-button--next {
  4214.            margin-right: -1.5rem;
  4215.            min-width: 44px
  4216.        }
  4217.  
  4218.        .announcement-bar .slider-button--prev {
  4219.            margin-left: -1.5rem;
  4220.            min-width: 44px
  4221.        }
  4222.  
  4223.        .announcement-bar .slider-button--next:focus-visible,
  4224.        .announcement-bar .slider-button--prev:focus-visible,
  4225.        .utility-bar .list-social__link:focus-visible {
  4226.            outline-offset: -.3rem;
  4227.            box-shadow: 0 0 0 -.2rem rgb(var(--color-foreground))
  4228.        }
  4229.  
  4230.        .localization-wrapper {
  4231.            grid-area: language-currency;
  4232.            align-self: center;
  4233.            display: flex;
  4234.            justify-content: flex-end
  4235.        }
  4236.  
  4237.        .localization-wrapper .localization-selector+.disclosure__list-wrapper {
  4238.            animation: animateMenuOpen var(--duration-default) ease
  4239.        }
  4240.  
  4241.        .utility-bar .localization-wrapper .disclosure .localization-form__select,
  4242.        .utility-bar .localization-wrapper .disclosure__link {
  4243.            font-size: calc(var(--font-heading-scale) * 1.3rem)
  4244.        }
  4245.  
  4246.        @media screen and (min-width: 990px) {
  4247.            body:has(.section-header .header:not(.drawer-menu)) .utility-bar .page-width {
  4248.                padding-left: 5rem;
  4249.                padding-right: 5rem
  4250.            }
  4251.  
  4252.            .announcement-bar-slider {
  4253.                width: 60%
  4254.            }
  4255.  
  4256.            .announcement-bar .slider-button {
  4257.                height: 3.8rem
  4258.            }
  4259.        }
  4260.  
  4261.        .announcement-bar__link {
  4262.            display: flex;
  4263.            width: 100%;
  4264.            text-decoration: none;
  4265.            height: 100%;
  4266.            justify-content: center;
  4267.            align-items: center
  4268.        }
  4269.  
  4270.        .announcement-bar__link:hover {
  4271.            text-decoration: underline
  4272.        }
  4273.  
  4274.        .announcement-bar__link .icon-arrow {
  4275.            display: inline-block;
  4276.            pointer-events: none;
  4277.            margin-left: .8rem;
  4278.            vertical-align: middle;
  4279.            margin-bottom: .2rem
  4280.        }
  4281.  
  4282.        .announcement-bar__message {
  4283.            text-align: center;
  4284.            padding: 1rem 0;
  4285.            margin: 0;
  4286.            letter-spacing: .1rem;
  4287.            min-height: 3.8rem
  4288.        }
  4289.  
  4290.        .announcement-bar-slider--fade-in-next .announcement-bar__message,
  4291.        .announcement-bar-slider--fade-in-previous .announcement-bar__message,
  4292.        .announcement-bar-slider--fade-out-next .announcement-bar__message,
  4293.        .announcement-bar-slider--fade-out-previous .announcement-bar__message {
  4294.            animation-duration: var(--duration-announcement-bar);
  4295.            animation-timing-function: ease-in-out;
  4296.            animation-fill-mode: forwards
  4297.        }
  4298.  
  4299.        .announcement-bar-slider--fade-in-next .announcement-bar__message {
  4300.            --announcement-translate-from: -1.5rem;
  4301.            opacity: 0;
  4302.            animation-name: translateAnnouncementSlideIn;
  4303.            animation-delay: var(--duration-announcement-bar)
  4304.        }
  4305.  
  4306.        .announcement-bar-slider--fade-in-previous .announcement-bar__message {
  4307.            --announcement-translate-from: 1.5rem;
  4308.            opacity: 0;
  4309.            animation-name: translateAnnouncementSlideIn;
  4310.            animation-delay: var(--duration-announcement-bar)
  4311.        }
  4312.  
  4313.        .announcement-bar-slider--fade-out-next .announcement-bar__message {
  4314.            --announcement-translate-to: 1.5rem;
  4315.            animation-name: translateAnnouncementSlideOut
  4316.        }
  4317.  
  4318.        .announcement-bar-slider--fade-out-previous .announcement-bar__message {
  4319.            --announcement-translate-to: -1.5rem;
  4320.            animation-name: translateAnnouncementSlideOut
  4321.        }
  4322.  
  4323.        @keyframes translateAnnouncementSlideIn {
  4324.            0% {
  4325.                opacity: 0;
  4326.                transform: translate(var(--announcement-translate-from))
  4327.            }
  4328.  
  4329.            to {
  4330.                opacity: 1;
  4331.                transform: translate(0)
  4332.            }
  4333.        }
  4334.  
  4335.        @keyframes translateAnnouncementSlideOut {
  4336.            0% {
  4337.                opacity: 1;
  4338.                transform: translate(0)
  4339.            }
  4340.  
  4341.            to {
  4342.                opacity: 0;
  4343.                transform: translate(var(--announcement-translate-to))
  4344.            }
  4345.        }
  4346.  
  4347.        .section-header.shopify-section-group-header-group {
  4348.            z-index: 3
  4349.        }
  4350.  
  4351.        .shopify-section-header-sticky {
  4352.            position: sticky;
  4353.            top: 0
  4354.        }
  4355.  
  4356.        .shopify-section-header-hidden {
  4357.            top: calc(-1 * var(--header-height))
  4358.        }
  4359.  
  4360.        .shopify-section-header-hidden.menu-open {
  4361.            top: 0
  4362.        }
  4363.  
  4364.        .section-header.animate {
  4365.            transition: top .15s ease-out
  4366.        }
  4367.  
  4368.        .shopify-section-group-header-group {
  4369.            z-index: 4
  4370.        }
  4371.  
  4372.        .section-header~.shopify-section-group-header-group {
  4373.            z-index: initial
  4374.        }
  4375.  
  4376.        .header-wrapper {
  4377.            display: block;
  4378.            position: relative;
  4379.            background-color: rgb(var(--color-background))
  4380.        }
  4381.  
  4382.        .header-wrapper--border-bottom {
  4383.            border-bottom: .1rem solid rgba(var(--color-foreground), .08)
  4384.        }
  4385.  
  4386.        .header {
  4387.            display: grid;
  4388.            grid-template-areas: "left-icons heading icons";
  4389.            grid-template-columns: 1fr 2fr 1fr;
  4390.            align-items: center
  4391.        }
  4392.  
  4393.        @media screen and (max-width: 749px) {
  4394.            .header--has-app {
  4395.                grid-template-columns: auto 1fr auto
  4396.            }
  4397.        }
  4398.  
  4399.        @media screen and (min-width: 990px) {
  4400.            .header {
  4401.                grid-template-columns: 1fr auto 1fr
  4402.            }
  4403.  
  4404.            .header--top-left,
  4405.            .header--middle-left:not(.header--has-menu) {
  4406.                grid-template-areas: "heading icons" "navigation navigation";
  4407.                grid-template-columns: 1fr auto
  4408.            }
  4409.  
  4410.            .header--top-left.drawer-menu,
  4411.            .header--middle-left.drawer-menu {
  4412.                grid-template-areas: "navigation heading icons";
  4413.                grid-template-columns: auto 1fr auto;
  4414.                column-gap: 1rem
  4415.            }
  4416.  
  4417.            .header--middle-left {
  4418.                grid-template-areas: "heading navigation icons";
  4419.                grid-template-columns: auto auto 1fr;
  4420.                column-gap: 2rem
  4421.            }
  4422.  
  4423.            .header--middle-center:not(.drawer-menu) {
  4424.                grid-template-areas: "navigation heading icons";
  4425.                grid-template-columns: 1fr auto 1fr;
  4426.                column-gap: 2rem
  4427.            }
  4428.  
  4429.            .header--middle-center a.header__heading-link {
  4430.                text-align: center
  4431.            }
  4432.  
  4433.            .header--top-center {
  4434.                grid-template-areas: "left-icons heading icons" "navigation navigation navigation"
  4435.            }
  4436.  
  4437.            .header--top-center.drawer-menu {
  4438.                grid-template-areas: "left-icons heading icons";
  4439.                grid-template-columns: 1fr auto 1fr
  4440.            }
  4441.  
  4442.            .header:not(.header--middle-left, .header--middle-center) .header__inline-menu {
  4443.                margin-top: 1.05rem
  4444.            }
  4445.        }
  4446.  
  4447.        .header *[tabindex="-1"]:focus {
  4448.            outline: none
  4449.        }
  4450.  
  4451.        .header__heading {
  4452.            margin: 0;
  4453.            line-height: 0
  4454.        }
  4455.  
  4456.        .header>.header__heading-link {
  4457.            line-height: 0
  4458.        }
  4459.  
  4460.        .header__heading,
  4461.        .header__heading-link {
  4462.            grid-area: heading;
  4463.            justify-self: center
  4464.        }
  4465.  
  4466.        .header__heading-link {
  4467.            display: inline-block;
  4468.            padding: .75rem;
  4469.            text-decoration: none;
  4470.            word-break: break-word
  4471.        }
  4472.  
  4473.        .header__heading-link:hover .h2 {
  4474.            color: rgb(var(--color-foreground))
  4475.        }
  4476.  
  4477.        .header__heading-link .h2 {
  4478.            line-height: 1;
  4479.            color: rgba(var(--color-foreground), .75)
  4480.        }
  4481.  
  4482.        .header__heading-logo {
  4483.            height: auto;
  4484.            max-width: 100%
  4485.        }
  4486.  
  4487.        .header__heading-logo-wrapper {
  4488.            width: 100%;
  4489.            display: inline-block;
  4490.            transition: width .3s cubic-bezier(.52, 0, .61, .99)
  4491.        }
  4492.  
  4493.        @media screen and (max-width: 989px) {
  4494.  
  4495.            .header__heading,
  4496.            .header__heading-link {
  4497.                text-align: center
  4498.            }
  4499.  
  4500.            .header--mobile-left .header__heading,
  4501.            .header--mobile-left .header__heading-link {
  4502.                text-align: left;
  4503.                justify-self: start
  4504.            }
  4505.  
  4506.            .header--mobile-left {
  4507.                grid-template-columns: auto 2fr 1fr
  4508.            }
  4509.        }
  4510.  
  4511.        @media screen and (min-width: 990px) {
  4512.  
  4513.            .header--middle-left .header__heading-link,
  4514.            .header--top-left .header__heading-link {
  4515.                margin-left: -.75rem
  4516.            }
  4517.  
  4518.            .header__heading,
  4519.            .header__heading-link {
  4520.                justify-self: start
  4521.            }
  4522.  
  4523.            .header--middle-center .header__heading-link,
  4524.            .header--middle-center .header__heading,
  4525.            .header--top-center .header__heading-link,
  4526.            .header--top-center .header__heading {
  4527.                justify-self: center;
  4528.                text-align: center
  4529.            }
  4530.        }
  4531.  
  4532.        .header__icons {
  4533.            display: flex;
  4534.            grid-area: icons;
  4535.            justify-self: end;
  4536.            padding-right: .8rem
  4537.        }
  4538.  
  4539.        .header__icons .shopify-app-block {
  4540.            max-width: 4.4rem;
  4541.            max-height: 4.4rem;
  4542.            overflow: hidden
  4543.        }
  4544.  
  4545.        .header__icon:not(.header__icon--summary),
  4546.        .header__icon span {
  4547.            display: flex;
  4548.            align-items: center;
  4549.            justify-content: center
  4550.        }
  4551.  
  4552.        .header__icon {
  4553.            color: rgb(var(--color-foreground))
  4554.        }
  4555.  
  4556.        .header__icon span {
  4557.            height: 100%
  4558.        }
  4559.  
  4560.        .header__icon:after {
  4561.            content: none
  4562.        }
  4563.  
  4564.        .header__icon:hover .icon,
  4565.        .modal__close-button:hover .icon {
  4566.            transform: scale(1.07)
  4567.        }
  4568.  
  4569.        .header__icon .icon {
  4570.            height: 2rem;
  4571.            width: 2rem;
  4572.            fill: none;
  4573.            vertical-align: middle
  4574.        }
  4575.  
  4576.        .header__icon,
  4577.        .header__icon--cart .icon {
  4578.            height: 4.4rem;
  4579.            width: 4.4rem;
  4580.            padding: 0
  4581.        }
  4582.  
  4583.        .header__icon--cart {
  4584.            position: relative;
  4585.            margin-right: -1.2rem
  4586.        }
  4587.  
  4588.        .header__icon--menu[aria-expanded=true]:before {
  4589.            content: "";
  4590.            top: 100%;
  4591.            left: 0;
  4592.            height: calc(var(--viewport-height, 100vh) - (var(--header-bottom-position, 100%)));
  4593.            width: 100%;
  4594.            display: block;
  4595.            position: absolute;
  4596.            background: rgba(var(--color-foreground), .5)
  4597.        }
  4598.  
  4599.        menu-drawer+.header__search {
  4600.            display: none
  4601.        }
  4602.  
  4603.        .header>.header__search {
  4604.            grid-area: left-icons;
  4605.            justify-self: start
  4606.        }
  4607.  
  4608.        .header--top-center.drawer-menu>.header__search {
  4609.            margin-left: 3.2rem
  4610.        }
  4611.  
  4612.        .header--top-center header-drawer {
  4613.            grid-area: left-icons
  4614.        }
  4615.  
  4616.        .header:not(.header--has-menu) *>.header__search {
  4617.            display: none
  4618.        }
  4619.  
  4620.        .header__search {
  4621.            display: inline-flex;
  4622.            line-height: 0
  4623.        }
  4624.  
  4625.        .header--top-center>.header__search {
  4626.            display: none
  4627.        }
  4628.  
  4629.        .header--top-center *>.header__search {
  4630.            display: inline-flex
  4631.        }
  4632.  
  4633.        @media screen and (min-width: 990px) {
  4634.  
  4635.            .header:not(.header--top-center) *>.header__search,
  4636.            .header--top-center>.header__search {
  4637.                display: inline-flex
  4638.            }
  4639.  
  4640.            .header:not(.header--top-center)>.header__search,
  4641.            .header--top-center *>.header__search {
  4642.                display: none
  4643.            }
  4644.        }
  4645.  
  4646.        .no-js .predictive-search {
  4647.            display: none
  4648.        }
  4649.  
  4650.        details[open]>.search-modal {
  4651.            opacity: 1;
  4652.            animation: animateMenuOpen var(--duration-default) ease
  4653.        }
  4654.  
  4655.        details[open] .modal-overlay {
  4656.            display: block
  4657.        }
  4658.  
  4659.        details[open] .modal-overlay:after {
  4660.            position: absolute;
  4661.            content: "";
  4662.            background-color: rgb(var(--color-foreground), .5);
  4663.            top: 100%;
  4664.            left: 0;
  4665.            right: 0;
  4666.            height: 100vh
  4667.        }
  4668.  
  4669.        .no-js details[open]>.header__icon--search {
  4670.            top: 1rem;
  4671.            right: .5rem
  4672.        }
  4673.  
  4674.        .search-modal {
  4675.            opacity: 0;
  4676.            border-bottom: .1rem solid rgba(var(--color-foreground), .08);
  4677.            min-height: calc(100% + var(--inputs-margin-offset) + (2 * var(--inputs-border-width)));
  4678.            height: 100%
  4679.        }
  4680.  
  4681.        .search-modal__content {
  4682.            display: flex;
  4683.            align-items: center;
  4684.            justify-content: center;
  4685.            width: 100%;
  4686.            height: 100%;
  4687.            padding: 0 5rem 0 1rem;
  4688.            line-height: calc(1 + .8 / var(--font-body-scale));
  4689.            position: relative
  4690.        }
  4691.  
  4692.        .search-modal__content-bottom {
  4693.            bottom: calc((var(--inputs-margin-offset) / 2))
  4694.        }
  4695.  
  4696.        .search-modal__content-top {
  4697.            top: calc((var(--inputs-margin-offset) / 2))
  4698.        }
  4699.  
  4700.        .search-modal__form {
  4701.            width: 100%
  4702.        }
  4703.  
  4704.        .search-modal__close-button {
  4705.            position: absolute;
  4706.            right: .3rem
  4707.        }
  4708.  
  4709.        @media screen and (min-width: 750px) {
  4710.            .search-modal__close-button {
  4711.                right: 1rem
  4712.            }
  4713.  
  4714.            .search-modal__content {
  4715.                padding: 0 6rem
  4716.            }
  4717.        }
  4718.  
  4719.        @media screen and (min-width: 990px) {
  4720.            .search-modal__form {
  4721.                max-width: 74.2rem
  4722.            }
  4723.  
  4724.            .search-modal__close-button {
  4725.                position: initial;
  4726.                margin-left: .5rem
  4727.            }
  4728.        }
  4729.  
  4730.        .header__icon--menu .icon {
  4731.            display: block;
  4732.            position: absolute;
  4733.            opacity: 1;
  4734.            transform: scale(1);
  4735.            transition: transform .15s ease, opacity .15s ease
  4736.        }
  4737.  
  4738.        details:not([open])>.header__icon--menu .icon-close,
  4739.        details[open]>.header__icon--menu .icon-hamburger {
  4740.            visibility: hidden;
  4741.            opacity: 0;
  4742.            transform: scale(.8)
  4743.        }
  4744.  
  4745.        .js details[open]:not(.menu-opening)>.header__icon--menu .icon-close {
  4746.            visibility: hidden
  4747.        }
  4748.  
  4749.        .js details[open]:not(.menu-opening)>.header__icon--menu .icon-hamburger {
  4750.            visibility: visible;
  4751.            opacity: 1;
  4752.            transform: scale(1.07)
  4753.        }
  4754.  
  4755.        .js details>.header__submenu {
  4756.            opacity: 0;
  4757.            transform: translateY(-1.5rem)
  4758.        }
  4759.  
  4760.        details[open]>.header__submenu {
  4761.            animation: animateMenuOpen var(--duration-default) ease;
  4762.            animation-fill-mode: forwards;
  4763.            z-index: 1
  4764.        }
  4765.  
  4766.        @media (prefers-reduced-motion) {
  4767.            details[open]>.header__submenu {
  4768.                opacity: 1;
  4769.                transform: translateY(0)
  4770.            }
  4771.        }
  4772.  
  4773.        .header__inline-menu {
  4774.            margin-left: -1.2rem;
  4775.            grid-area: navigation;
  4776.            display: none
  4777.        }
  4778.  
  4779.        .header--top-center .header__inline-menu,
  4780.        .header--top-center .header__heading-link {
  4781.            margin-left: 0
  4782.        }
  4783.  
  4784.        @media screen and (min-width: 990px) {
  4785.            .header__inline-menu {
  4786.                display: block
  4787.            }
  4788.  
  4789.            .header--top-center .header__inline-menu {
  4790.                justify-self: center
  4791.            }
  4792.  
  4793.            .header--top-center .header__inline-menu>.list-menu--inline {
  4794.                justify-content: center
  4795.            }
  4796.  
  4797.            .header--middle-left .header__inline-menu {
  4798.                margin-left: 0
  4799.            }
  4800.        }
  4801.  
  4802.        .header__menu {
  4803.            padding: 0 1rem
  4804.        }
  4805.  
  4806.        .header__menu-item {
  4807.            padding: 1.2rem;
  4808.            text-decoration: none;
  4809.            color: rgba(var(--color-foreground), .75)
  4810.        }
  4811.  
  4812.        .header__menu-item:hover {
  4813.            color: rgb(var(--color-foreground))
  4814.        }
  4815.  
  4816.        .header__menu-item span {
  4817.            transition: text-decoration var(--duration-short) ease
  4818.        }
  4819.  
  4820.        .header__menu-item:hover span {
  4821.            text-decoration: underline;
  4822.            text-underline-offset: .3rem
  4823.        }
  4824.  
  4825.        details[open]>.header__menu-item {
  4826.            text-decoration: underline
  4827.        }
  4828.  
  4829.        details[open]:hover>.header__menu-item {
  4830.            text-decoration-thickness: .2rem
  4831.        }
  4832.  
  4833.        details[open]>.header__menu-item .icon-caret {
  4834.            transform: rotate(180deg)
  4835.        }
  4836.  
  4837.        .header__active-menu-item {
  4838.            transition: text-decoration-thickness var(--duration-short) ease;
  4839.            color: rgb(var(--color-foreground));
  4840.            text-decoration: underline;
  4841.            text-underline-offset: .3rem
  4842.        }
  4843.  
  4844.        .header__menu-item:hover .header__active-menu-item {
  4845.            text-decoration-thickness: .2rem
  4846.        }
  4847.  
  4848.        .header__submenu {
  4849.            transition: opacity var(--duration-default) ease, transform var(--duration-default) ease
  4850.        }
  4851.  
  4852.        .global-settings-popup,
  4853.        .header__submenu.global-settings-popup {
  4854.            border-radius: var(--popup-corner-radius);
  4855.            border-color: rgba(var(--color-foreground), var(--popup-border-opacity));
  4856.            border-style: solid;
  4857.            border-width: var(--popup-border-width);
  4858.            box-shadow: var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity));
  4859.            z-index: -1
  4860.        }
  4861.  
  4862.        .header__submenu.list-menu {
  4863.            padding: 1rem 0
  4864.        }
  4865.  
  4866.        .header__submenu .header__submenu {
  4867.            background-color: rgba(var(--color-foreground), .03);
  4868.            padding: 1rem 0;
  4869.            margin: 1rem 0
  4870.        }
  4871.  
  4872.        .header__submenu .header__menu-item:after {
  4873.            right: 2rem
  4874.        }
  4875.  
  4876.        .header__submenu .header__menu-item {
  4877.            justify-content: space-between;
  4878.            padding: .8rem 2rem
  4879.        }
  4880.  
  4881.        .header__submenu .header__menu-item:hover {
  4882.            text-decoration-line: underline
  4883.        }
  4884.  
  4885.        .header__menu-item .icon-caret {
  4886.            right: .8rem
  4887.        }
  4888.  
  4889.        .header__submenu .icon-caret {
  4890.            flex-shrink: 0;
  4891.            margin-left: 1rem;
  4892.            position: static
  4893.        }
  4894.  
  4895.        header-menu>details,
  4896.        details-disclosure>details {
  4897.            position: relative
  4898.        }
  4899.  
  4900.        @keyframes animateMenuOpen {
  4901.            0% {
  4902.                opacity: 0;
  4903.                transform: translateY(-1.5rem)
  4904.            }
  4905.  
  4906.            to {
  4907.                opacity: 1;
  4908.                transform: translateY(0)
  4909.            }
  4910.        }
  4911.  
  4912.        .overflow-hidden-mobile,
  4913.        .overflow-hidden-tablet,
  4914.        .overflow-hidden-desktop {
  4915.            overflow: hidden
  4916.        }
  4917.  
  4918.        @media screen and (min-width: 750px) {
  4919.            .overflow-hidden-mobile {
  4920.                overflow: auto
  4921.            }
  4922.        }
  4923.  
  4924.        @media screen and (min-width: 990px) {
  4925.            .overflow-hidden-tablet {
  4926.                overflow: auto
  4927.            }
  4928.        }
  4929.  
  4930.        .badge {
  4931.            border: 1px solid transparent;
  4932.            border-radius: var(--badge-corner-radius);
  4933.            display: inline-block;
  4934.            font-size: 1.2rem;
  4935.            letter-spacing: .1rem;
  4936.            line-height: 1;
  4937.            padding: .5rem 1.3rem .6rem;
  4938.            text-align: center;
  4939.            background-color: rgb(var(--color-badge-background));
  4940.            border-color: rgba(var(--color-badge-border), var(--alpha-badge-border));
  4941.            color: rgb(var(--color-badge-foreground));
  4942.            word-break: break-word
  4943.        }
  4944.  
  4945.        .gradient {
  4946.            background: rgb(var(--color-background));
  4947.            background: var(--gradient-background);
  4948.            background-attachment: fixed
  4949.        }
  4950.  
  4951.        @media screen and (forced-colors: active) {
  4952.            .icon {
  4953.                color: CanvasText;
  4954.                fill: CanvasText !important
  4955.            }
  4956.  
  4957.            .icon-close-small path {
  4958.                stroke: CanvasText
  4959.            }
  4960.        }
  4961.  
  4962.        .ratio {
  4963.            display: flex;
  4964.            position: relative;
  4965.            align-items: stretch
  4966.        }
  4967.  
  4968.        .ratio:before {
  4969.            content: "";
  4970.            width: 0;
  4971.            height: 0;
  4972.            padding-bottom: var(--ratio-percent)
  4973.        }
  4974.  
  4975.        .content-container {
  4976.            border-radius: var(--text-boxes-radius);
  4977.            border: var(--text-boxes-border-width) solid rgba(var(--color-foreground), var(--text-boxes-border-opacity));
  4978.            position: relative
  4979.        }
  4980.  
  4981.        .content-container:after {
  4982.            content: "";
  4983.            position: absolute;
  4984.            top: calc(var(--text-boxes-border-width) * -1);
  4985.            right: calc(var(--text-boxes-border-width) * -1);
  4986.            bottom: calc(var(--text-boxes-border-width) * -1);
  4987.            left: calc(var(--text-boxes-border-width) * -1);
  4988.            border-radius: var(--text-boxes-radius);
  4989.            box-shadow: var(--text-boxes-shadow-horizontal-offset) var(--text-boxes-shadow-vertical-offset) var(--text-boxes-shadow-blur-radius) rgba(var(--color-shadow), var(--text-boxes-shadow-opacity));
  4990.            z-index: -1
  4991.        }
  4992.  
  4993.        .content-container--full-width:after {
  4994.            left: 0;
  4995.            right: 0;
  4996.            border-radius: 0
  4997.        }
  4998.  
  4999.        @media screen and (max-width: 749px) {
  5000.            .content-container--full-width-mobile {
  5001.                border-left: none;
  5002.                border-right: none;
  5003.                border-radius: 0
  5004.            }
  5005.  
  5006.            .content-container--full-width-mobile:after {
  5007.                display: none
  5008.            }
  5009.        }
  5010.  
  5011.        .global-media-settings {
  5012.            position: relative;
  5013.            border: var(--media-border-width) solid rgba(var(--color-foreground), var(--media-border-opacity));
  5014.            border-radius: var(--media-radius);
  5015.            overflow: visible !important;
  5016.            background-color: rgb(var(--color-background))
  5017.        }
  5018.  
  5019.        .global-media-settings:after {
  5020.            content: "";
  5021.            position: absolute;
  5022.            top: calc(var(--media-border-width) * -1);
  5023.            right: calc(var(--media-border-width) * -1);
  5024.            bottom: calc(var(--media-border-width) * -1);
  5025.            left: calc(var(--media-border-width) * -1);
  5026.            border-radius: var(--media-radius);
  5027.            box-shadow: var(--media-shadow-horizontal-offset) var(--media-shadow-vertical-offset) var(--media-shadow-blur-radius) rgba(var(--color-shadow), var(--media-shadow-opacity));
  5028.            z-index: -1;
  5029.            pointer-events: none
  5030.        }
  5031.  
  5032.        .global-media-settings--no-shadow {
  5033.            overflow: hidden !important
  5034.        }
  5035.  
  5036.        .global-media-settings--no-shadow:after {
  5037.            content: none
  5038.        }
  5039.  
  5040.        .global-media-settings img,
  5041.        .global-media-settings iframe,
  5042.        .global-media-settings model-viewer,
  5043.        .global-media-settings video,
  5044.        .global-media-settings .placeholder-svg {
  5045.            border-radius: calc(var(--media-radius) - var(--media-border-width))
  5046.        }
  5047.  
  5048.        .content-container--full-width,
  5049.        .global-media-settings--full-width,
  5050.        .global-media-settings--full-width img,
  5051.        .global-media-settings--full-width video,
  5052.        .global-media-settings--full-width iframe,
  5053.        .global-media-settings--full-width .placeholder-svg {
  5054.            border-radius: 0;
  5055.            border-left: none;
  5056.            border-right: none
  5057.        }
  5058.  
  5059.        @supports not (inset: 10px) {
  5060.            .grid {
  5061.                margin-left: calc(-1 * var(--grid-mobile-horizontal-spacing))
  5062.            }
  5063.  
  5064.            .grid__item {
  5065.                padding-left: var(--grid-mobile-horizontal-spacing);
  5066.                padding-bottom: var(--grid-mobile-vertical-spacing)
  5067.            }
  5068.  
  5069.            @media screen and (min-width: 750px) {
  5070.                .grid {
  5071.                    margin-left: calc(-1 * var(--grid-desktop-horizontal-spacing))
  5072.                }
  5073.  
  5074.                .grid__item {
  5075.                    padding-left: var(--grid-desktop-horizontal-spacing);
  5076.                    padding-bottom: var(--grid-desktop-vertical-spacing)
  5077.                }
  5078.            }
  5079.  
  5080.            .grid--gapless .grid__item {
  5081.                padding-left: 0;
  5082.                padding-bottom: 0
  5083.            }
  5084.  
  5085.            @media screen and (min-width: 749px) {
  5086.                .grid--peek .grid__item {
  5087.                    padding-left: var(--grid-mobile-horizontal-spacing)
  5088.                }
  5089.            }
  5090.  
  5091.            .product-grid .grid__item {
  5092.                padding-bottom: var(--grid-mobile-vertical-spacing)
  5093.            }
  5094.  
  5095.            @media screen and (min-width: 750px) {
  5096.                .product-grid .grid__item {
  5097.                    padding-bottom: var(--grid-desktop-vertical-spacing)
  5098.                }
  5099.            }
  5100.        }
  5101.  
  5102.        .font-body-bold {
  5103.            font-weight: var(--font-body-weight-bold)
  5104.        }
  5105.  
  5106.        @media (forced-colors: active) {
  5107.  
  5108.            .button,
  5109.            .shopify-challenge__button,
  5110.            .customer button {
  5111.                border: transparent solid 1px
  5112.            }
  5113.  
  5114.            .button:focus-visible,
  5115.            .button:focus,
  5116.            .button.focused,
  5117.            .shopify-payment-button__button--unbranded:focus-visible,
  5118.            .shopify-payment-button [role=button]:focus-visible,
  5119.            .shopify-payment-button__button--unbranded:focus,
  5120.            .shopify-payment-button [role=button]:focus {
  5121.                outline: solid transparent 1px
  5122.            }
  5123.  
  5124.            .field__input:focus,
  5125.            .select__select:focus,
  5126.            .customer .field input:focus,
  5127.            .customer select:focus,
  5128.            .localization-form__select:focus.localization-form__select:after {
  5129.                outline: transparent solid 1px
  5130.            }
  5131.  
  5132.            .localization-form__select:focus {
  5133.                outline: transparent solid 1px
  5134.            }
  5135.        }
  5136.  
  5137.        .rte:after {
  5138.            clear: both;
  5139.            content: "";
  5140.            display: block
  5141.        }
  5142.  
  5143.        .rte>*:first-child {
  5144.            margin-top: 0
  5145.        }
  5146.  
  5147.        .rte>*:last-child {
  5148.            margin-bottom: 0
  5149.        }
  5150.  
  5151.        .rte table {
  5152.            table-layout: fixed
  5153.        }
  5154.  
  5155.        @media screen and (min-width: 750px) {
  5156.            .rte table td {
  5157.                padding-left: 1.2rem;
  5158.                padding-right: 1.2rem
  5159.            }
  5160.        }
  5161.  
  5162.        .rte img {
  5163.            height: auto;
  5164.            max-width: 100%;
  5165.            border: var(--media-border-width) solid rgba(var(--color-foreground), var(--media-border-opacity));
  5166.            border-radius: var(--media-radius);
  5167.            box-shadow: var(--media-shadow-horizontal-offset) var(--media-shadow-vertical-offset) var(--media-shadow-blur-radius) rgba(var(--color-shadow), var(--media-shadow-opacity));
  5168.            margin-bottom: var(--media-shadow-vertical-offset)
  5169.        }
  5170.  
  5171.        .rte ul,
  5172.        .rte ol {
  5173.            list-style-position: inside;
  5174.            padding-left: 2rem
  5175.        }
  5176.  
  5177.        .rte li {
  5178.            list-style: inherit
  5179.        }
  5180.  
  5181.        .rte li:last-child {
  5182.            margin-bottom: 0
  5183.        }
  5184.  
  5185.        .rte a {
  5186.            color: rgba(var(--color-link), var(--alpha-link));
  5187.            text-underline-offset: .3rem;
  5188.            text-decoration-thickness: .1rem;
  5189.            transition: text-decoration-thickness var(--duration-short) ease
  5190.        }
  5191.  
  5192.        .rte a:hover {
  5193.            color: rgb(var(--color-link));
  5194.            text-decoration-thickness: .2rem
  5195.        }
  5196.  
  5197.        .rte blockquote {
  5198.            display: inline-flex
  5199.        }
  5200.  
  5201.        .rte blockquote>* {
  5202.            margin: -.5rem 0
  5203.        }
  5204.  
  5205.        .shape--mask {
  5206.            display: block;
  5207.            height: 0;
  5208.            width: 0
  5209.        }
  5210.  
  5211.        .shape--arch {
  5212.            clip-path: url(#Shape-Arch)
  5213.        }
  5214.  
  5215.        .shape--blob {
  5216.            clip-path: polygon(var(--shape--blob-1))
  5217.        }
  5218.  
  5219.        .shape--chevronleft {
  5220.            clip-path: polygon(100% 0%, 85% 50%, 100% 100%, 15% 100%, 0% 50%, 15% 0%)
  5221.        }
  5222.  
  5223.        .shape--chevronright {
  5224.            clip-path: polygon(85% 0%, 100% 50%, 85% 100%, 0% 100%, 15% 50%, 0% 0%)
  5225.        }
  5226.  
  5227.        .shape--circle {
  5228.            clip-path: circle(closest-side)
  5229.        }
  5230.  
  5231.        .shape--diamond {
  5232.            clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%)
  5233.        }
  5234.  
  5235.        .shape--parallelogram {
  5236.            clip-path: polygon(15% 0, 100% 0%, 85% 100%, 0% 100%)
  5237.        }
  5238.  
  5239.        .shape--round {
  5240.            clip-path: ellipse(45% 45% at 50% 50%)
  5241.        }
  5242.  
  5243.        .animate--fixed {
  5244.            clip-path: inset(0)
  5245.        }
  5246.  
  5247.        .animate--fixed>img:not(.zoom):not(.deferred-media__poster-button),
  5248.        .animate--fixed>svg:not(.zoom):not(.deferred-media__poster-button) {
  5249.            position: fixed;
  5250.            height: 100vh
  5251.        }
  5252.  
  5253.        .animate--zoom-in {
  5254.            --zoom-in-ratio: 1
  5255.        }
  5256.  
  5257.        .animate--zoom-in>img,
  5258.        .animate--zoom-in>svg {
  5259.            transition: scale var(--duration-short) linear;
  5260.            scale: var(--zoom-in-ratio)
  5261.        }
  5262.  
  5263.        @media (prefers-reduced-motion: no-preference) {
  5264.  
  5265.            .animate--ambient>img,
  5266.            .animate--ambient>svg {
  5267.                animation: animateAmbient 30s linear infinite
  5268.            }
  5269.  
  5270.            @keyframes animateAmbient {
  5271.                0% {
  5272.                    transform: rotate(0) translate(1em) rotate(0) scale(1.2)
  5273.                }
  5274.  
  5275.                to {
  5276.                    transform: rotate(360deg) translate(1em) rotate(-360deg) scale(1.2)
  5277.                }
  5278.            }
  5279.  
  5280.            .scroll-trigger.animate--fade-in,
  5281.            .scroll-trigger.animate--slide-in {
  5282.                opacity: .01
  5283.            }
  5284.  
  5285.            .scroll-trigger.animate--slide-in {
  5286.                transform: translateY(2rem)
  5287.            }
  5288.  
  5289.            .scroll-trigger:not(.scroll-trigger--offscreen).animate--fade-in {
  5290.                opacity: 1;
  5291.                animation: var(--animation-fade-in)
  5292.            }
  5293.  
  5294.            .scroll-trigger:not(.scroll-trigger--offscreen).animate--slide-in {
  5295.                animation: var(--animation-slide-in);
  5296.                animation-delay: calc(var(--animation-order) * 75ms)
  5297.            }
  5298.  
  5299.            .scroll-trigger.scroll-trigger--design-mode.animate--fade-in,
  5300.            .scroll-trigger.scroll-trigger--design-mode.animate--slide-in,
  5301.            .scroll-trigger.scroll-trigger--design-mode .slider,
  5302.            .scroll-trigger:not(.scroll-trigger--offscreen).scroll-trigger--cancel {
  5303.                opacity: 1;
  5304.                animation: none;
  5305.                transition: none
  5306.            }
  5307.  
  5308.            .scroll-trigger.scroll-trigger--design-mode.animate--slide-in {
  5309.                transform: translateY(0)
  5310.            }
  5311.  
  5312.            @keyframes slideIn {
  5313.                0% {
  5314.                    transform: translateY(2rem);
  5315.                    opacity: .01
  5316.                }
  5317.  
  5318.                to {
  5319.                    transform: translateY(0);
  5320.                    opacity: 1
  5321.                }
  5322.            }
  5323.  
  5324.            @keyframes fadeIn {
  5325.                0% {
  5326.                    opacity: .01
  5327.                }
  5328.  
  5329.                to {
  5330.                    opacity: 1
  5331.                }
  5332.            }
  5333.        }
  5334.  
  5335.        @media (prefers-reduced-motion: no-preference) and (hover: hover) {
  5336.  
  5337.            .animate--hover-3d-lift .card-wrapper .card--card,
  5338.            .animate--hover-3d-lift .card-wrapper .card--standard .card__inner,
  5339.            .animate--hover-3d-lift .button:not(.button--tertiary),
  5340.            .animate--hover-3d-lift .shopify-challenge__button,
  5341.            .animate--hover-3d-lift .customer button,
  5342.            .animate--hover-3d-lift .shopify-payment-button__button,
  5343.            .animate--hover-3d-lift .deferred-media .deferred-media__poster-button {
  5344.                transition: transform var(--duration-long) ease, box-shadow var(--duration-long) ease;
  5345.                transform-origin: center
  5346.            }
  5347.  
  5348.            .animate--hover-3d-lift .card-wrapper:hover .card--card,
  5349.            .animate--hover-3d-lift .card-wrapper:hover .card--standard .card__inner,
  5350.            .animate--hover-3d-lift .button:not(.button--tertiary):not([disabled]):hover,
  5351.            .animate--hover-3d-lift .shopify-challenge__button:not([disabled]):hover,
  5352.            .animate--hover-3d-lift .customer button:not([disabled]):hover,
  5353.            .animate--hover-3d-lift .shopify-payment-button__button:hover,
  5354.            .animate--hover-3d-lift .deferred-media:hover .deferred-media__poster-button {
  5355.                transition: transform var(--duration-extended) ease, box-shadow var(--duration-long) ease;
  5356.                transform: rotate(1deg);
  5357.                box-shadow: -1rem -1rem 1rem -1rem #0000000d, 1rem 1rem 1rem -1rem #0000000d, 0 0 .5rem #fff0, 0 2rem 3.5rem -2rem #00000080
  5358.            }
  5359.  
  5360.            .animate--hover-3d-lift .deferred-media:hover .deferred-media__poster-button {
  5361.                transform: translate(-50%, -50%) scale(1.05)
  5362.            }
  5363.  
  5364.            .animate--hover-3d-lift .collage__item .card-wrapper:hover .card--card,
  5365.            .animate--hover-3d-lift .collage__item .card-wrapper:hover .card--standard .card__inner {
  5366.                transform: rotate(.5deg)
  5367.            }
  5368.  
  5369.            .animate--hover-3d-lift .product-grid .grid__item:hover,
  5370.            .animate--hover-3d-lift .collection-list .grid__item:hover,
  5371.            .animate--hover-3d-lift .collage__item:hover,
  5372.            .animate--hover-3d-lift .blog-articles .article:hover,
  5373.            .animate--hover-3d-lift .complementary-slide li:hover {
  5374.                z-index: 2
  5375.            }
  5376.  
  5377.            .animate--hover-3d-lift .product-grid {
  5378.                isolation: isolate
  5379.            }
  5380.  
  5381.            .animate--hover-3d-lift .card-wrapper .card--shape.card--standard:not(.card--text) .card__inner {
  5382.                box-shadow: none;
  5383.                transition: transform var(--duration-long) ease, filter var(--duration-long) ease
  5384.            }
  5385.  
  5386.            .animate--hover-3d-lift .card-wrapper:hover .card--shape.card--standard:not(.card--text) .card__inner {
  5387.                transition: transform calc(2 * var(--duration-extended)) ease, filter var(--duration-long) ease;
  5388.                filter: drop-shadow(0rem 2rem 2rem rgba(0, 0, 0, .15)) drop-shadow(0rem 1rem 1rem rgba(0, 0, 0, .15))
  5389.            }
  5390.  
  5391.            .animate--hover-3d-lift .card-wrapper:hover .card--card:after,
  5392.            .animate--hover-3d-lift .card-wrapper:hover .card--standard .card__inner:after,
  5393.            .animate--hover-3d-lift .card-wrapper:hover .card--shape.card--standard:not(.card--text) .card__inner .card__media:before {
  5394.                background-image: var(--easter-egg);
  5395.                background-size: 250px 250px;
  5396.                mix-blend-mode: color-dodge;
  5397.                pointer-events: none;
  5398.                z-index: 2
  5399.            }
  5400.  
  5401.            .animate--hover-3d-lift .card-wrapper:hover .card--shape.card--standard:not(.card--text) .card__inner .card__media:before {
  5402.                content: "";
  5403.                position: absolute;
  5404.                top: 0;
  5405.                bottom: 0;
  5406.                left: 0;
  5407.                right: 0
  5408.            }
  5409.  
  5410.            .animate--hover-3d-lift .card-wrapper .card--card:before,
  5411.            .animate--hover-3d-lift .card-wrapper .card--standard .card__media:after {
  5412.                content: "";
  5413.                position: absolute;
  5414.                top: 0;
  5415.                right: 0;
  5416.                bottom: 0;
  5417.                left: 0;
  5418.                opacity: 0;
  5419.                pointer-events: none;
  5420.                transition: background-position calc(2 * var(--duration-extended)) ease, opacity var(--duration-default) ease;
  5421.                mix-blend-mode: overlay;
  5422.                background-size: 400% 100%;
  5423.                background-position: 90% 0;
  5424.                background-repeat: no-repeat;
  5425.                background-image: linear-gradient(135deg, rgba(255, 255, 255, 0) 45%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 0) 55%)
  5426.            }
  5427.  
  5428.            .animate--hover-3d-lift .card-wrapper:hover .card--card:before,
  5429.            .animate--hover-3d-lift .card-wrapper:hover .card--standard .card__media:after {
  5430.                opacity: .2;
  5431.                transition: background-position 6s ease, opacity var(--duration-long) ease;
  5432.                background-position: left;
  5433.                z-index: 2
  5434.            }
  5435.  
  5436.            :root {
  5437.                --easter-egg: none;
  5438.                --sparkle: url(sparkle.gif)
  5439.            }
  5440.  
  5441.            .animate--hover-vertical-lift .button:not(.button--tertiary),
  5442.            .animate--hover-vertical-lift .shopify-challenge__button,
  5443.            .animate--hover-vertical-lift .customer button,
  5444.            .animate--hover-vertical-lift .shopify-payment-button__button {
  5445.                transition: transform var(--duration-default) var(--ease-out-slow)
  5446.            }
  5447.  
  5448.            .animate--hover-vertical-lift .card-wrapper .card--card,
  5449.            .animate--hover-vertical-lift .card-wrapper .card--standard .card__inner {
  5450.                transition: transform var(--duration-medium) var(--ease-out-slow)
  5451.            }
  5452.  
  5453.            .animate--hover-vertical-lift .card-wrapper:hover .card--card,
  5454.            .animate--hover-vertical-lift .card-wrapper:hover .card--standard .card__inner {
  5455.                transform: translateY(-.75rem)
  5456.            }
  5457.  
  5458.            .animate--hover-vertical-lift .card-wrapper:active .card--card,
  5459.            .animate--hover-vertical-lift .card-wrapper:active .card--standard .card__inner {
  5460.                transform: translateY(-.5rem)
  5461.            }
  5462.  
  5463.            .animate--hover-vertical-lift .button:not(.button--tertiary):not([disabled]):hover,
  5464.            .animate--hover-vertical-lift .shopify-challenge__button:not([disabled]):hover,
  5465.            .animate--hover-vertical-lift .customer button:not([disabled]):hover,
  5466.            .animate--hover-vertical-lift .shopify-payment-button__button:hover {
  5467.                transform: translateY(-.25rem)
  5468.            }
  5469.  
  5470.            .animate--hover-vertical-lift .button:not(.button--tertiary):not([disabled]):active,
  5471.            .animate--hover-vertical-lift .shopify-challenge__button:not([disabled]):active,
  5472.            .animate--hover-vertical-lift .customer button:not([disabled]):active,
  5473.            .animate--hover-vertical-lift .shopify-payment-button__button:active {
  5474.                transform: translateY(0)
  5475.            }
  5476.  
  5477.            .animate--hover-vertical-lift .button:not([disabled]):hover:after,
  5478.            .animate--hover-vertical-lift .customer button:not([disabled]):hover:after,
  5479.            .animate--hover-vertical-lift .shopify-payment-button__button:not([disabled]):hover:after {
  5480.                --border-offset: .3px;
  5481.                box-shadow: 0 0 0 calc(var(--buttons-border-width) + var(--border-offset)) rgba(var(--color-button-text), var(--border-opacity)), 0 0 0 var(--buttons-border-width) rgba(var(--color-button), var(--alpha-button-background))
  5482.            }
  5483.  
  5484.            .animate--hover-vertical-lift .button:not([disabled]).button--secondary:hover:after {
  5485.                --border-offset: 0px
  5486.            }
  5487.        }
  5488.    </style>
  5489.    <link rel="preload" as="font"
  5490.        href="https://infinite-style.com/cdn/fonts/questrial/questrial_n4.0ba6d2b6094954bab23732c75d3ecb4c47a5869c.woff2?h1=N2ViNWQ0LTMuYWNjb3VudC5teXNob3BpZnkuY29t&amp;h2=eHh4LmRlcm1hYmxlbmQuY29t&amp;hmac=2ddb1e040059f191fdb3e184199ec4bc383d5aa55a6213bf798372c9da87d664"
  5491.        type="font/woff2" crossorigin>
  5492.    <link rel="preload" as="font"
  5493.        href="https://infinite-style.com/cdn/fonts/archivo/archivo_n7.6f363ab30b12ea00d5e6243ed0e977a11393a3ad.woff2?h1=N2ViNWQ0LTMuYWNjb3VudC5teXNob3BpZnkuY29t&amp;h2=eHh4LmRlcm1hYmxlbmQuY29t&amp;hmac=6cc30ef697b84bb8f7f3bf9979eb1a3b3e1410751b95cc93dce027cd0262d372"
  5494.        type="font/woff2" crossorigin>
  5495.    <style>
  5496.        .predictive-search {
  5497.            display: none;
  5498.            position: absolute;
  5499.            top: calc(100% + .1rem);
  5500.            left: -.1rem;
  5501.            border-width: var(--popup-border-width);
  5502.            border-style: solid;
  5503.            border-color: rgba(var(--color-foreground), var(--popup-border-opacity));
  5504.            background-color: black;
  5505.            z-index: 3;
  5506.            border-bottom-right-radius: var(--popup-corner-radius);
  5507.            border-bottom-left-radius: var(--popup-corner-radius);
  5508.            box-shadow: var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity));
  5509.            overflow-y: auto;
  5510.            -webkit-overflow-scrolling: touch
  5511.        }
  5512.  
  5513.        .predictive-search--search-template {
  5514.            z-index: 2;
  5515.            width: calc(100% + .2rem)
  5516.        }
  5517.  
  5518.        .predictive-search__results-groups-wrapper {
  5519.            display: flex;
  5520.            border-bottom: .1rem solid rgba(var(--color-foreground), .08);
  5521.            padding-bottom: 1rem
  5522.        }
  5523.  
  5524.        @media screen and (max-width: 749px) {
  5525.            .predictive-search--header {
  5526.                right: 0;
  5527.                left: 0;
  5528.                top: 100%
  5529.            }
  5530.  
  5531.            .predictive-search__results-groups-wrapper {
  5532.                flex-direction: column
  5533.            }
  5534.  
  5535.            .predictive-search__results-groups-wrapper:not(.predictive-search__results-groups-wrapper--no-suggestions) {
  5536.                gap: 2rem
  5537.            }
  5538.        }
  5539.  
  5540.        @media screen and (min-width: 750px) {
  5541.            .predictive-search {
  5542.                border-top: none;
  5543.                width: calc(100% + .2rem)
  5544.            }
  5545.  
  5546.            .header predictive-search {
  5547.                position: relative
  5548.            }
  5549.        }
  5550.  
  5551.        predictive-search[open] .predictive-search,
  5552.        predictive-search[loading] .predictive-search {
  5553.            display: block
  5554.        }
  5555.  
  5556.        .predictive-search__result-group {
  5557.            display: flex;
  5558.            flex-direction: column;
  5559.            flex: 1 1 auto;
  5560.            gap: 2rem
  5561.        }
  5562.  
  5563.        .predictive-search__result-group:first-child .predictive-search__pages-wrapper {
  5564.            display: none
  5565.        }
  5566.  
  5567.        @media screen and (min-width: 750px) {
  5568.  
  5569.            .predictive-search__results-groups-wrapper--no-products .predictive-search__result-group:nth-child(2),
  5570.            .predictive-search__result-group:last-child .predictive-search__pages-wrapper {
  5571.                display: none
  5572.            }
  5573.  
  5574.            .predictive-search__result-group:first-child .predictive-search__pages-wrapper {
  5575.                display: initial
  5576.            }
  5577.  
  5578.            .predictive-search__result-group:first-child {
  5579.                flex: 0 0 26.4rem
  5580.            }
  5581.  
  5582.            .predictive-search__results-groups-wrapper--no-products .predictive-search__result-group:first-child,
  5583.            .predictive-search__result-group:only-child {
  5584.                flex-grow: 1
  5585.            }
  5586.        }
  5587.  
  5588.        .predictive-search__heading {
  5589.            border-bottom: .1rem solid rgba(var(--color-foreground), .08);
  5590.            margin: 0 2rem;
  5591.            padding: 1.5rem 0 .75rem;
  5592.            color: rgba(var(--color-foreground), .7)
  5593.        }
  5594.  
  5595.        predictive-search .spinner {
  5596.            width: 1.5rem;
  5597.            height: 1.5rem;
  5598.            line-height: 0
  5599.        }
  5600.  
  5601.        predictive-search:not([loading]) .predictive-search__loading-state,
  5602.        predictive-search:not([loading]) .predictive-search-status__loading {
  5603.            display: none
  5604.        }
  5605.  
  5606.        predictive-search[loading] .predictive-search__loading-state {
  5607.            display: flex;
  5608.            justify-content: center;
  5609.            padding: 1rem
  5610.        }
  5611.  
  5612.        predictive-search[loading] .predictive-search__search-for-button {
  5613.            display: none
  5614.        }
  5615.  
  5616.        predictive-search[loading] .predictive-search__results-groups-wrapper~.predictive-search__loading-state {
  5617.            display: none
  5618.        }
  5619.  
  5620.        predictive-search[loading] .predictive-search__results-groups-wrapper~.predictive-search__search-for-button {
  5621.            display: initial
  5622.        }
  5623.  
  5624.        .predictive-search__list-item[aria-selected=true]>*,
  5625.        .predictive-search__list-item:hover>*,
  5626.        .predictive-search__item[aria-selected=true],
  5627.        .predictive-search__item:hover {
  5628.            color: rgb(var(--color-foreground));
  5629.            background-color: rgba(var(--color-foreground), .04)
  5630.        }
  5631.  
  5632.        .predictive-search__list-item[aria-selected=true] .predictive-search__item-heading,
  5633.        .predictive-search__list-item:hover .predictive-search__item-heading {
  5634.            text-decoration: underline;
  5635.            text-underline-offset: .3rem
  5636.        }
  5637.  
  5638.        .predictive-search__item {
  5639.            display: flex;
  5640.            padding: 1rem 2rem;
  5641.            text-align: left;
  5642.            text-decoration: none;
  5643.            width: 100%
  5644.        }
  5645.  
  5646.        .predictive-search__item--link-with-thumbnail {
  5647.            display: grid;
  5648.            grid-template-columns: 5rem 1fr;
  5649.            grid-column-gap: 2rem;
  5650.            grid-template-areas: "product-image product-content"
  5651.        }
  5652.  
  5653.        .predictive-search__item-content {
  5654.            grid-area: product-content;
  5655.            display: flex;
  5656.            flex-direction: column
  5657.        }
  5658.  
  5659.        .predictive-search__item-content--centered {
  5660.            justify-content: center
  5661.        }
  5662.  
  5663.        .predictive-search__item-vendor {
  5664.            font-size: .9rem
  5665.        }
  5666.  
  5667.        .predictive-search__item-heading {
  5668.            margin: 0
  5669.        }
  5670.  
  5671.        .predictive-search__item-query-result *:not(mark) {
  5672.            font-weight: bolder
  5673.        }
  5674.  
  5675.        .predictive-search__item-query-result mark {
  5676.            color: rgba(var(--color-foreground), .75)
  5677.        }
  5678.  
  5679.        .predictive-search__item-query-result mark {
  5680.            background-color: transparent
  5681.        }
  5682.  
  5683.        .predictive-search__item .price {
  5684.            color: rgba(var(--color-foreground), .7);
  5685.            font-size: 1.2rem
  5686.        }
  5687.  
  5688.        .predictive-search__item-vendor+.predictive-search__item-heading,
  5689.        .predictive-search .price {
  5690.            margin-top: .5rem
  5691.        }
  5692.  
  5693.        .predictive-search__item--term {
  5694.            justify-content: space-between;
  5695.            align-items: center;
  5696.            padding: 1.3rem 2rem;
  5697.            word-break: break-all;
  5698.            line-height: calc(1 + .4 / var(--font-body-scale))
  5699.        }
  5700.  
  5701.        @media screen and (min-width: 750px) {
  5702.            .predictive-search__item--term {
  5703.                padding-top: 1rem;
  5704.                padding-bottom: 1rem
  5705.            }
  5706.        }
  5707.  
  5708.        .predictive-search__item--term .icon-arrow {
  5709.            width: calc(var(--font-heading-scale) * 1.4rem);
  5710.            height: calc(var(--font-heading-scale) * 1.4rem);
  5711.            flex-shrink: 0;
  5712.            margin-left: calc(var(--font-heading-scale) * 2rem);
  5713.            color: rgb(var(--color-link))
  5714.        }
  5715.  
  5716.        .predictive-search__image {
  5717.            grid-area: product-image;
  5718.            object-fit: contain;
  5719.            font-family: "object-fit: contain"
  5720.        }
  5721.    </style>
  5722.    <script>
  5723.        document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
  5724.        if (Shopify.designMode) {
  5725.            document.documentElement.classList.add('shopify-design-mode');
  5726.        }
  5727.    </script>
  5728.    <link href="https://monorail-edge.shopifysvc.com/" rel="dns-prefetch">
  5729.    <script>
  5730.        (function () {
  5731.            if ("sendBeacon" in navigator && "performance" in window) {
  5732.                var session_token = document.cookie.match(/_shopify_s=([^;]*)/);
  5733.  
  5734.                function handle_abandonment_event(e) {
  5735.                    var entries = performance.getEntries().filter(function (entry) {
  5736.                        return /monorail-edge.shopifysvc.com/.test(entry.name);
  5737.                    });
  5738.                    if (!window.abandonment_tracked && entries.length === 0) {
  5739.                        window.abandonment_tracked = true;
  5740.                        var currentMs = Date.now();
  5741.                        var navigation_start = performance.timing.navigationStart;
  5742.                        var payload = {
  5743.                            shop_id: 67119169539,
  5744.                            url: window.location.href,
  5745.                            navigation_start,
  5746.                            duration: currentMs - navigation_start,
  5747.                            session_token: session_token && session_token.length === 2 ? session_token[1] : "",
  5748.                            page_type: "product"
  5749.                        };
  5750.                        window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({
  5751.                            schema_id: "online_store_buyer_site_abandonment/1.1",
  5752.                            payload: payload,
  5753.                            metadata: {
  5754.                                event_created_at_ms: currentMs,
  5755.                                event_sent_at_ms: currentMs
  5756.                            }
  5757.                        }));
  5758.                    }
  5759.                }
  5760.                window.addEventListener('pagehide', handle_abandonment_event);
  5761.            }
  5762.        }());
  5763.    </script>
  5764.    <script id="web-pixels-manager-setup">
  5765.        (function e(e, n, a, t, o, r, i) {
  5766.            var s = null !== e,
  5767.                l = ("function" == typeof BigInt && BigInt.toString().indexOf("[native code]") ? "modern" : "legacy").substring(0, 1),
  5768.                c = t.substring(0, 1);
  5769.            if (s) {
  5770.                window.Shopify = window.Shopify || {};
  5771.                var d = window.Shopify;
  5772.                d.analytics = d.analytics || {};
  5773.                var u = d.analytics;
  5774.                u.replayQueue = [], u.publish = function (e, n, a) {
  5775.                    u.replayQueue.push([e, n, a])
  5776.                };
  5777.                try {
  5778.                    self.performance.mark("wpm:start")
  5779.                } catch (e) { }
  5780.            }
  5781.            var p, f, y, h, v, m, w, g, b, _ = [a, "/wpm", "https://infinite-style.com/", c, r, l, ".js"].join("");
  5782.            f = (p = {
  5783.                src: _,
  5784.                async: !0,
  5785.                onload: function () {
  5786.                    if (e) {
  5787.                        var a = window.webPixelsManager.init(e);
  5788.                        null == n || n(a);
  5789.                        var t = window.Shopify.analytics;
  5790.                        t.replayQueue.forEach((function (e) {
  5791.                            var n = e[0],
  5792.                                t = e[1],
  5793.                                o = e[2];
  5794.                            a.publishCustomEvent(n, t, o)
  5795.                        })), t.replayQueue = [], t.publish = a.publishCustomEvent, t.visitor = a.visitor
  5796.                    }
  5797.                },
  5798.                onerror: function () {
  5799.                    var n = (null == e ? void 0 : e.storefrontBaseUrl) ? e.storefrontBaseUrl.replace(/\/$/, "") : self.location.origin,
  5800.                        a = "".concat(n, "/.well-known/shopify/monorail/unstable/produce_batch"),
  5801.                        t = JSON.stringify({
  5802.                            metadata: {
  5803.                                event_sent_at_ms: (new Date).getTime()
  5804.                            },
  5805.                            events: [{
  5806.                                schema_id: "web_pixels_manager_load/2.0",
  5807.                                payload: {
  5808.                                    version: o || "latest",
  5809.                                    page_url: self.location.href,
  5810.                                    status: "failed",
  5811.                                    error_msg: "".concat(_, " has failed to load")
  5812.                                },
  5813.                                metadata: {
  5814.                                    event_created_at_ms: (new Date).getTime()
  5815.                                }
  5816.                            }]
  5817.                        });
  5818.                    try {
  5819.                        if (self.navigator.sendBeacon.bind(self.navigator)(a, t)) return !0
  5820.                    } catch (e) { }
  5821.                    var r = new XMLHttpRequest;
  5822.                    try {
  5823.                        return r.open("POST.html", a, !0), r.setRequestHeader("Content-Type", "text/plain"), r.send(t), !0
  5824.                    } catch (e) {
  5825.                        console && console.warn && console.warn("[Web Pixels Manager] Got an unhandled error while logging a load error.")
  5826.                    }
  5827.                    return !1
  5828.                }
  5829.            }).src, y = p.async, h = void 0 === y || y, v = p.onload, m = p.onerror, w = document.createElement("script"), g = document.head, b = document.body, w.async = h, w.src = f, v && w.addEventListener("load", v), m && w.addEventListener("error", m), g ? g.appendChild(w) : b ? b.appendChild(w) : console.error("Did not find a head or body element to append the script")
  5830.        })({
  5831.            shopId: 67119169539,
  5832.            storefrontBaseUrl: "https://infinite-style.com/",
  5833.            cdnBaseUrl: "https://infinite-style.com/cdn",
  5834.            surface: "storefront-renderer",
  5835.            enabledBetaFlags: ["web_pixels_async_pixel_refactor", "web_pixels_manager_performance_improvement"],
  5836.            webPixelsConfigList: [{
  5837.                "id": "shopify-app-pixel",
  5838.                "configuration": "{}",
  5839.                "eventPayloadVersion": "v1",
  5840.                "runtimeContext": "STRICT",
  5841.                "scriptVersion": "0570",
  5842.                "apiClientId": "shopify-pixel",
  5843.                "type": "APP"
  5844.            }, {
  5845.                "id": "shopify-custom-pixel",
  5846.                "eventPayloadVersion": "v1",
  5847.                "runtimeContext": "LAX",
  5848.                "scriptVersion": "0570",
  5849.                "apiClientId": "shopify-pixel",
  5850.                "type": "CUSTOM"
  5851.            }],
  5852.            initData: {
  5853.                "cart": null,
  5854.                "checkout": null,
  5855.                "customer": null,
  5856.                "productVariants": [{
  5857.                    "id": "43114192093653",
  5858.                    "image": {
  5859.                        "src": "https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg"
  5860.                    },
  5861.                    "price": {
  5862.                        "amount": 5.000,
  5863.                        "currencyCode": "IDR"
  5864.                    },
  5865.                    "product": {
  5866.                        "id": "8226828321669",
  5867.                        "title": "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  5868.                        "untranslatedTitle": "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  5869.                        "url": "https://infinite-style.com/",
  5870.                        "vendor": "KOITOTO",
  5871.                        "type": ""
  5872.                    },
  5873.                    "sku": "",
  5874.                    "title": "Default Title",
  5875.                    "untranslatedTitle": "Default Title"
  5876.                }]
  5877.            },
  5878.        }, function pageEvents(webPixelsManagerAPI) {
  5879.            webPixelsManagerAPI.publish("page_viewed");
  5880.            webPixelsManagerAPI.publish("product_viewed", {
  5881.                "productVariant": {
  5882.                    "id": "43114192093653",
  5883.                    "image": {
  5884.                        "src": "https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg"
  5885.                    },
  5886.                    "price": {
  5887.                        "amount": 5.000,
  5888.                        "currencyCode": "IDR"
  5889.                    },
  5890.                    "product": {
  5891.                        "id": "8226828321669",
  5892.                        "title": "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  5893.                        "untranslatedTitle": "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  5894.                        "url": "https://infinite-style.com/",
  5895.                        "vendor": "KOITOTO",
  5896.                        "type": ""
  5897.                    },
  5898.                    "sku": "",
  5899.                    "title": "Default Title",
  5900.                    "untranslatedTitle": "Default Title"
  5901.                }
  5902.            });
  5903.        }, "https://infinite-style.com/cdn", "browser", "0.0.407", "f25882c1w423ab3d2p8df04b18m261f6c04", ["web_pixels_async_pixel_refactor", "web_pixels_manager_performance_improvement"]);
  5904.    </script>
  5905.    <script>
  5906.        window.ShopifyAnalytics = window.ShopifyAnalytics || {};
  5907.        window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
  5908.        window.ShopifyAnalytics.meta.currency = 'IDR';
  5909.        var meta = {
  5910.            "product": {
  5911.                "id": 8226828321669,
  5912.                "gid": "gid:\/\/shopify\/Product\/8226828321669",
  5913.                "vendor": "KOITOTO",
  5914.                "type": "",
  5915.                "variants": [{
  5916.                    "id": 43114192093653,
  5917.                    "price": 5.000,
  5918.                    "name": "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  5919.                    "public_title": null,
  5920.                    "sku": ""
  5921.                }]
  5922.            },
  5923.            "page": {
  5924.                "pageType": "product",
  5925.                "resourceType": "product",
  5926.                "resourceId": 8226828321669
  5927.            }
  5928.        };
  5929.        for (var attr in meta) {
  5930.            window.ShopifyAnalytics.meta[attr] = meta[attr];
  5931.        }
  5932.    </script>
  5933.    <script>
  5934.        window.ShopifyAnalytics.merchantGoogleAnalytics = function () { };
  5935.    </script>
  5936.    <script class="analytics">
  5937.        ! function () {
  5938.            var o = function (e) {
  5939.                var t = null;
  5940.                window.jQuery ? t = window.jQuery : window.Checkout && window.Checkout.$ && (t = window.Checkout.$), t && t("body").append(e)
  5941.            },
  5942.                r = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
  5943.            if (!r.integrations) {
  5944.                r.methods = ["identify", "page", "ready", "track", "trackForm", "trackLink"], r.factory = function (t) {
  5945.                    return function () {
  5946.                        var e = Array.prototype.slice.call(arguments);
  5947.                        return e.unshift(t), r.push(e), r
  5948.                    }
  5949.                };
  5950.                for (var e = 0; e < r.methods.length; e++) {
  5951.                    var t = r.methods[e];
  5952.                    r[t] = r.factory(t)
  5953.                }
  5954.                r.load = function (e) {
  5955.                    r.config = e || {}, r.config.initialDocumentCookie = document.cookie;
  5956.                    var n = document.getElementsByTagName("script")[0],
  5957.                        t = document.createElement("script");
  5958.                    t.type = "text/javascript", t.onerror = function (e) {
  5959.                        var t = document.createElement("script");
  5960.                        t.type = "text/javascript", t.onerror = function (e) {
  5961.                            var i = {
  5962.                                produce: function (e, t, n) {
  5963.                                    var o = (new Date).getTime(),
  5964.                                        r = {
  5965.                                            schema_id: t,
  5966.                                            payload: n,
  5967.                                            metadata: {
  5968.                                                event_created_at_ms: o,
  5969.                                                event_sent_at_ms: o
  5970.                                            }
  5971.                                        };
  5972.                                    return i.sendRequest("https://" + e + "/v1/produce", JSON.stringify(r))
  5973.                                },
  5974.                                sendRequest: function (e, t) {
  5975.                                    if (window && window.navigator && "function" == typeof window.navigator.sendBeacon && "function" == typeof window.Blob && !i.isIos12()) {
  5976.                                        var n = new window.Blob([t], {
  5977.                                            type: "text/plain"
  5978.                                        });
  5979.                                        if (window.navigator.sendBeacon(e, n)) return !0
  5980.                                    }
  5981.                                    var o = new XMLHttpRequest;
  5982.                                    try {
  5983.                                        o.open("POST.html", e), o.setRequestHeader("Content-Type", "text/plain"), o.send(t)
  5984.                                    } catch (e) {
  5985.                                        console.log(e)
  5986.                                    }
  5987.                                    return !1
  5988.                                },
  5989.                                isIos12: function () {
  5990.                                    return -1 !== window.navigator.userAgent.lastIndexOf("iPhone; CPU iPhone OS 12_") || -1 !== window.navigator.userAgent.lastIndexOf("iPad; CPU OS 12_")
  5991.                                }
  5992.                            };
  5993.                            i.produce("monorail-edge.shopifysvc.com", "trekkie_storefront_load_errors/1.1", {
  5994.                                shop_id: 67119169539,
  5995.                                theme_id: 138081403093,
  5996.                                app_name: "storefront",
  5997.                                context_url: window.location.href,
  5998.                                source_url: "//allamericanwindowtinting.com/cdn/s/trekkie.storefront.cdbb3ab87b2344fc90b72e01ec11aedeab3a9cf7.min.js"
  5999.                            })
  6000.                        }, t.async = !0, t.src = "cdn/s/trekkie.storefront.cdbb3ab87b2344fc90b72e01ec11aedeab3a9cf7.min.js", n.parentNode.insertBefore(t, n)
  6001.                    }, t.async = !0, t.src = "cdn/s/trekkie.storefront.cdbb3ab87b2344fc90b72e01ec11aedeab3a9cf7.min.js", n.parentNode.insertBefore(t, n)
  6002.                }, r.load({
  6003.                    Trekkie: {
  6004.                        appName: "storefront",
  6005.                        development: !1,
  6006.                        defaultAttributes: {
  6007.                            shopId: 67119169539,
  6008.                            isMerchantRequest: null,
  6009.                            themeId: 138081403093,
  6010.                            themeCityHash: "17813912158783281087",
  6011.                            contentLanguage: "en",
  6012.                            currency: "IDR"
  6013.                        },
  6014.                        isServerSideCookieWritingEnabled: !0,
  6015.                        monorailRegion: "shop_domain"
  6016.                    },
  6017.                    "Session Attribution": {},
  6018.                    S2S: {
  6019.                        facebookCapiEnabled: !1,
  6020.                        source: "trekkie-storefront-renderer"
  6021.                    }
  6022.                });
  6023.                var i = !1;
  6024.                r.ready(function () {
  6025.                    if (!i) {
  6026.                        i = !0, window.ShopifyAnalytics.lib = window.trekkie;
  6027.                        var e = document.write;
  6028.                        document.write = o;
  6029.                        try {
  6030.                            window.ShopifyAnalytics.merchantGoogleAnalytics.call(this)
  6031.                        } catch (e) { }
  6032.                        document.write = e, window.ShopifyAnalytics.lib.page(null, {
  6033.                            pageType: "product",
  6034.                            resourceType: "product",
  6035.                            resourceId: 8226828321669
  6036.                        });
  6037.                        var t = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/),
  6038.                            n = t ? t[1] : void 0;
  6039.                        (function (e) {
  6040.                            return !!e && -1 !== document.cookie.indexOf("loggedConversion=" + e)
  6041.                        })(n) || (function (e) {
  6042.                            if (e) {
  6043.                                var t = new Date(Date.now());
  6044.                                t.setMonth(t.getMonth() + 2), document.cookie = "loggedConversion=" + e + "; expires=" + t
  6045.                            }
  6046.                        }(n), window.ShopifyAnalytics.lib.track("Viewed Product", {
  6047.                            currency: "IDR",
  6048.                            variantId: 43114192093653,
  6049.                            productId: 8226828321669,
  6050.                            productGid: "gid://shopify/Product/8226828321669",
  6051.                            name: "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  6052.                            price: "5000.0",
  6053.                            sku: "",
  6054.                            brand: "KOITOTO",
  6055.                            variant: null,
  6056.                            category: "",
  6057.                            nonInteraction: !0
  6058.                        }), window.ShopifyAnalytics.lib.track("monorail://trekkie_storefront_viewed_product/1.1", {
  6059.                            currency: "IDR",
  6060.                            variantId: 43114192093653,
  6061.                            productId: 8226828321669,
  6062.                            productGid: "gid://shopify/Product/8226828321669",
  6063.                            name: "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  6064.                            price: "5000.0",
  6065.                            sku: "",
  6066.                            brand: "KOITOTO",
  6067.                            variant: null,
  6068.                            category: "",
  6069.                            nonInteraction: !0,
  6070.                            referer: "https://infinite-style.com/"
  6071.                        }))
  6072.                    }
  6073.                });
  6074.                var n = document.createElement("script");
  6075.                n.async = !0, n.src = "cdn/shopifycloud/shopify/assets/shop_events_listener-a7c63dba65ccddc484f77541dc8ca437e60e1e9e297fe1c3faebf6523a0ede9b.js", document.getElementsByTagName("head")[0].appendChild(n)
  6076.            }
  6077.        }()
  6078.    </script>
  6079.    <script class="boomerang">
  6080.        ! function () {
  6081.            if (!window.BOOMR || !window.BOOMR.version && !window.BOOMR.snippetExecuted) {
  6082.                window.BOOMR = window.BOOMR || {}, window.BOOMR.snippetStart = (new Date).getTime(), window.BOOMR.snippetExecuted = !0, window.BOOMR.snippetVersion = 12, window.BOOMR.application = "storefront-renderer", window.BOOMR.themeName = "Refresh", window.BOOMR.themeVersion = "12.0.0", window.BOOMR.shopId = 67119169539, window.BOOMR.themeId = 138081403093, window.BOOMR.renderRegion = "gcp-us-central1", window.BOOMR.url = "cdn/shopifycloud/boomerang/shopify-boomerang-1.0.0.min.js";
  6083.                var r = (document.currentScript || document.getElementsByTagName("script")[0]).parentNode,
  6084.                    c = !1,
  6085.                    e = document.createElement("link");
  6086.                e.relList && "function" == typeof e.relList.supports && e.relList.supports("preload") && "as" in e ? (window.BOOMR.snippetMethod = "p", e.href = window.BOOMR.url, e.rel = "preload", e.as = "script", e.addEventListener("load", function () {
  6087.                    if (!c) {
  6088.                        var e = document.createElement("script");
  6089.                        e.id = "boomr-scr-as", e.src = window.BOOMR.url, e.async = !0, r.appendChild(e), c = !0
  6090.                    }
  6091.                }), e.addEventListener("error", function () {
  6092.                    n(!0)
  6093.                }), setTimeout(function () {
  6094.                    c || n(!0)
  6095.                }, 3e3), BOOMR_lstart = (new Date).getTime(), r.appendChild(e)) : n(!1), window.addEventListener ? window.addEventListener("load", t, !1) : window.attachEvent && window.attachEvent("onload", t), document.addEventListener ? document.addEventListener("onBoomerangLoaded", function (e) {
  6096.                    e.detail.BOOMR.init({
  6097.                        ResourceTiming: {
  6098.                            enabled: !0,
  6099.                            trackedResourceTypes: ["script", "img", "css"]
  6100.                        }
  6101.                    }), e.detail.BOOMR.t_end = (new Date).getTime()
  6102.                }) : document.attachEvent && document.attachEvent("onpropertychange", function (e) {
  6103.                    e || (e = event), "onBoomerangLoaded" === e.propertyName && (e.detail.BOOMR.init({
  6104.                        ResourceTiming: {
  6105.                            enabled: !0,
  6106.                            trackedResourceTypes: ["script", "img", "css"]
  6107.                        }
  6108.                    }), e.detail.BOOMR.t_end = (new Date).getTime())
  6109.                })
  6110.            }
  6111.  
  6112.            function n(e) {
  6113.                var n, t, o, i;
  6114.                c = !0;
  6115.                var d = document,
  6116.                    a = window;
  6117.                if (window.BOOMR.snippetMethod = e ? "if" : "i", t = function (e, n) {
  6118.                    var t = d.createElement("script");
  6119.                    t.id = n || "boomr-if-as", t.src = window.BOOMR.url, BOOMR_lstart = (new Date).getTime(), (e = e || d.body).appendChild(t)
  6120.                }, !window.addEventListener && window.attachEvent && navigator.userAgent.match(/MSIE [67]./)) return window.BOOMR.snippetMethod = "s", void t(r, "boomr-async");
  6121.                (o = document.createElement("IFRAME")).src = "about:blank", o.title = "", o.role = "presentation", o.loading = "eager", (i = (o.frameElement || o).style).width = 0, i.height = 0, i.border = 0, i.display = "none", r.appendChild(o);
  6122.                try {
  6123.                    a = o.contentWindow, d = a.document.open()
  6124.                } catch (e) {
  6125.                    n = document.domain, o.src = "javascript:var d=document.open();d.domain='" + n + "';void(0);", a = o.contentWindow, d = a.document.open()
  6126.                }
  6127.                n ? (d._boomrl = function () {
  6128.                    this.domain = n, t()
  6129.                }, d.write(" < body onload = 'document._boomrl();' > ")) : (a._boomrl = function () {
  6130.                    t()
  6131.                }, a.addEventListener ? a.addEventListener("load", a._boomrl, !1) : a.attachEvent && a.attachEvent("onload", a._boomrl)), d.close()
  6132.            }
  6133.  
  6134.            function t(e) {
  6135.                window.BOOMR_onload = e && e.timeStamp || (new Date).getTime()
  6136.            }
  6137.        }()
  6138.    </script>
  6139.    <script type="application/ld+json" class="yoast-schema-graph">
  6140.        {
  6141.        "@context":"https://schema.org",
  6142.        "@graph":[{"@type":"WebSite",
  6143.        "@id":"https://infinite-style.com/",
  6144.        "url":"https://infinite-style.com/",
  6145.        "name":"KOITOTO",
  6146.        "potentialAction":[{"@type":"SearchAction",
  6147.        "target":{"@type":"EntryPoint",
  6148.        "urlTemplate":"#?s={search_term_string}"},
  6149.        "query-input":"required name=search_term_string"}],
  6150.        "inLanguage":"id-ID"},{"@type":"CollectionPage",
  6151.        "@id":"##webpage",
  6152.        "url":"https://infinite-style.com/",
  6153.        "name":"KOITOTO",
  6154.        "isPartOf":{"@id":"#website"},
  6155.        "description":"Main togel dan situs toto slot makin gampang di KOITOTO lewat link login cepat akses stabil pasaran resmi slot gacor layanan aktif 24 jam cocok buat yang cari menang tanpa ribet.",
  6156.        "breadcrumb":{"@id":"#breadcrumb"},
  6157.        "inLanguage":"id-ID",
  6158.        "potentialAction":[{"@type":"ReadAction",
  6159.        "target":["https://infinite-style.com/"]}]},
  6160.        {"@type":"BreadcrumbList",
  6161.        "@id":"#breadcrumb",
  6162.        "itemListElement":[{"@type":"ListItem",
  6163.        "position":1,
  6164.        "name":"Home"}]}]}
  6165.        </script>
  6166.    <script type="application/ld+json">
  6167.        {
  6168.        "@context": "http://schema.org",
  6169.        "@type": "Game",
  6170.        "name": "KOITOTO",
  6171.        "author": { "@type": "Person",
  6172.        "name": "KOITOTO" },
  6173.        "headline": "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  6174.        "description": "Main togel dan situs toto slot makin gampang di KOITOTO lewat link login cepat akses stabil pasaran resmi slot gacor layanan aktif 24 jam cocok buat yang cari menang tanpa ribet.",
  6175.        "keywords":"KOITOTO, KOITOTO login, KOITOTO daftar, prediksi KOITOTO, situs alexitogel, situs togel",
  6176.        "image": "https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg",
  6177.        "url": "https://infinite-style.com/",
  6178.        "publisher": { "@type": "Organization", "name": "KOITOTO" },
  6179.        "aggregateRating": { "@type": "AggregateRating",
  6180.        "ratingValue": "100",
  6181.        "bestRating": "100",
  6182.        "worstRating": "0",
  6183.        "ratingCount": "10987881" },
  6184.        "inLanguage": "id-ID"}
  6185.        </script>
  6186.    <script type='application/ld+json'>
  6187.        {
  6188.        "@context": "http://schema.org",
  6189.        "@type": "Article",
  6190.        "@id": "#article",
  6191.        "mainEntityOfPage": "https://infinite-style.com/",
  6192.        "headline": "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  6193.        "name": "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  6194.        "url": "https://infinite-style.com/",
  6195.        "description": "Main togel dan situs toto slot makin gampang di KOITOTO lewat link login cepat akses stabil pasaran resmi slot gacor layanan aktif 24 jam cocok buat yang cari menang tanpa ribet.",
  6196.        "image": "https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg",
  6197.        "datePublished": "2024-07-08T10:42:40+00:00",
  6198.        "dateModified": "2024-07-08T10:42:40+00:00",
  6199.        "author": {
  6200.        "@type": "Person",
  6201.        "name": "KOITOTO",
  6202.        "url": "https://infinite-style.com/"
  6203.        },
  6204.        "publisher": {
  6205.        "@type": "Organization",
  6206.        "name": "https://infinite-style.com/",
  6207.        "description": "Main togel dan situs toto slot makin gampang di KOITOTO lewat link login cepat akses stabil pasaran resmi slot gacor layanan aktif 24 jam cocok buat yang cari menang tanpa ribet.",
  6208.        "logo": {
  6209.        "@type": "ImageObject",
  6210.        "url": "https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg",
  6211.        "width": 600,
  6212.        "height": 60
  6213.        }
  6214.        }
  6215.        }
  6216.        </script>
  6217.    <script type="application/ld+json">
  6218.        {
  6219.        "@context": "https://schema.org",
  6220.        "@type": "Organization",
  6221.        "name": "KOITOTO",
  6222.        "alternateName": "KOITOTO",
  6223.        "url": "https://infinite-style.com/",
  6224.        "logo": "https://imgstore.io/images/2025/04/14/logo-koi.webp",
  6225.        "description": "Main togel dan situs toto slot makin gampang di KOITOTO lewat link login cepat akses stabil pasaran resmi slot gacor layanan aktif 24 jam cocok buat yang cari menang tanpa ribet.",
  6226.        "address": {
  6227.        "@type": "PostalAddress",
  6228.        "streetAddress":"Kuningan",
  6229.        "postOfficeBoxNumber":"11450",
  6230.        "addressLocality":"DaerahKhususIbukotaJakarta",
  6231.        "addressRegion":"KotaJakartaPusat",
  6232.        "postalCode":"41000",
  6233.        "addressCountry": "ID"
  6234.        },
  6235.        "contactPoint": {
  6236.        "@type": "ContactPoint",
  6237.        "telephone": "+62821-3366-5511",
  6238.        "contactType": "customer service",
  6239.        "areaServed": "ID",
  6240.        "availableLanguage": "Indonesian"
  6241.        },
  6242.        "sameAs": [
  6243.        "https://www.youtube.com/KOITOTO",
  6244.        "https://twitter.com/KOITOTO",
  6245.        "https://infinite-style.com/"
  6246.        ]
  6247.        }
  6248.        </script>
  6249.    <script type="application/ld+json">
  6250.        {
  6251.        "@context": "https://schema.org",
  6252.        "@type": "FAQPage",
  6253.        "mainEntity": [
  6254.        {
  6255.        "@type": "Question",
  6256.        "name": "Apa itu KOITOTO?",
  6257.        "acceptedAnswer": {
  6258.        "@type": "Answer",
  6259.        "text": "KOITOTO adalah platform permainan angka dan slot digital yang menyediakan akses login cepat, pasaran resmi, serta layanan pelanggan aktif 24 jam nonstop."
  6260.        }
  6261.        },{
  6262.        "@type": "Question",
  6263.        "name": "Apakah KOITOTO benar-benar support 24 jam?",
  6264.        "acceptedAnswer": {
  6265.        "@type": "Answer",
  6266.        "text": "Iya, tim support KOITOTO aktif setiap hari tanpa libur dan bisa dihubungi lewat live chat atau aplikasi seperti WhatsApp dan Telegram."
  6267.        }
  6268.        },{
  6269.        "@type": "Question",
  6270.        "name": "Slot di KOITOTO beneran anti lag?",
  6271.        "acceptedAnswer": {
  6272.        "@type": "Answer",
  6273.        "text": "Benar, semua game berjalan di server stabil dan ringan. Slot bisa dimainkan lancar tanpa gangguan, cocok untuk semua perangkat termasuk HP kentang."
  6274.        }
  6275.        },{
  6276.        "@type": "Question",
  6277.        "name": "Berapa minimal main di KOITOTO?",
  6278.        "acceptedAnswer": {
  6279.        "@type": "Answer",
  6280.        "text": "Cukup modal kecil, mulai dari 10 ribu kamu sudah bisa main togel 4D atau slot pilihan dan langsung akses link tanpa ribet."
  6281.        }
  6282.        }]
  6283.        }
  6284.        </script>
  6285.    <script type="application/ld+json">
  6286.        {
  6287.        "@context": "https://schema.org/",
  6288.        "@type": "BreadcrumbList",
  6289.        "itemListElement": [{
  6290.        "@type": "ListItem",
  6291.        "position": 1,
  6292.        "name": "Home",
  6293.        "item": "https://infinite-style.com/"
  6294.        },
  6295.        {
  6296.        "@type": "ListItem",
  6297.        "position": 2,
  6298.        "name": "KOITOTO",
  6299.        "item": "https://infinite-style.com/"
  6300.        },
  6301.        {
  6302.        "@type": "ListItem",
  6303.        "position": 3,
  6304.        "name": "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  6305.        "item": "https://infinite-style.com/"
  6306.        }
  6307.        ]
  6308.        }
  6309.        </script>
  6310. </head>
  6311.  
  6312. <body class="gradient">
  6313.    <a class="skip-to-content-link button visually-hidden" href="#MainContent">
  6314.        Skip to content
  6315.    </a>
  6316.  
  6317.    <style>
  6318.        quantity-popover {
  6319.            position: relative;
  6320.            display: block
  6321.        }
  6322.  
  6323.        quantity-popover volume-pricing li:nth-child(odd) {
  6324.            background: rgba(var(--color-foreground), .03)
  6325.        }
  6326.  
  6327.        quantity-popover volume-pricing li {
  6328.            font-size: 1.4rem;
  6329.            letter-spacing: .06rem;
  6330.            padding: .6rem .8rem;
  6331.            display: flex;
  6332.            justify-content: space-between
  6333.        }
  6334.  
  6335.        .quantity-popover__info.global-settings-popup {
  6336.            width: 100%;
  6337.            z-index: 2;
  6338.            position: absolute;
  6339.            background-color: black;
  6340.            max-width: 36rem
  6341.        }
  6342.  
  6343.        .quantity-popover__info .button-close,
  6344.        .variant-remove-total quick-order-list-remove-all-button .button,
  6345.        .quick-order-list-total__confirmation quick-order-list-remove-all-button .button,
  6346.        quantity-popover quick-order-list-remove-button .button {
  6347.            --shadow-opacity: 0;
  6348.            --border-opacity: 0
  6349.        }
  6350.  
  6351.        .quantity-popover__info-button {
  6352.            display: flex;
  6353.            align-items: center;
  6354.            margin: 0 .4rem 0 0;
  6355.            min-width: 1.5rem;
  6356.            min-height: 1.5rem;
  6357.            --shadow-opacity: 0;
  6358.            --border-opacity: 0
  6359.        }
  6360.  
  6361.        .quantity-popover__info-button--icon-with-label {
  6362.            align-items: flex-start;
  6363.            text-align: left
  6364.        }
  6365.  
  6366.        .quantity-popover__info-button--icon-with-label svg {
  6367.            flex-shrink: 0
  6368.        }
  6369.  
  6370.        .quantity-popover__info-button--open {
  6371.            text-decoration: underline
  6372.        }
  6373.  
  6374.        .quantity-popover__info-button span {
  6375.            padding-left: 1rem
  6376.        }
  6377.  
  6378.        @media screen and (max-width: 989px) {
  6379.            .quantity-popover__info.global-settings-popup {
  6380.                left: 0
  6381.            }
  6382.  
  6383.            .quantity-popover__info-button {
  6384.                padding-left: 0
  6385.            }
  6386.        }
  6387.  
  6388.        .quantity-popover__info .quantity__rules {
  6389.            margin-top: 1.2rem;
  6390.            margin-bottom: 1rem
  6391.        }
  6392.  
  6393.        .quantity-popover__info .volume-pricing-label {
  6394.            display: block;
  6395.            margin-left: 1.2rem;
  6396.            margin-top: 1.2rem;
  6397.            font-size: 1.2rem
  6398.        }
  6399.  
  6400.        .quantity-popover__info .button {
  6401.            width: 3.2rem;
  6402.            height: 3.2rem;
  6403.            position: absolute;
  6404.            top: .4rem;
  6405.            right: 0;
  6406.            padding: 0 1.2rem 0 0;
  6407.            display: flex;
  6408.            justify-content: flex-end
  6409.        }
  6410.  
  6411.        .quantity-popover__info .volume-pricing-label~.button {
  6412.            top: -.2rem
  6413.        }
  6414.  
  6415.        .quantity-popover__info .button .icon {
  6416.            width: 1.5rem;
  6417.            height: 1.5rem
  6418.        }
  6419.  
  6420.        quantity-popover volume-pricing {
  6421.            margin-top: 1.2rem;
  6422.            display: block
  6423.        }
  6424.  
  6425.        quantity-popover .quantity__rules span:first-of-type {
  6426.            display: block
  6427.        }
  6428. .rtpIcon {
  6429.  position: fixed;
  6430.  left: 10px;
  6431.  bottom: 150px;
  6432.  z-index: 999;
  6433. }
  6434.  
  6435. .rtpIcon img {
  6436.  width: 80px;
  6437.  height: 80px;
  6438.  cursor: pointer;
  6439. }
  6440.  
  6441.        .quantity-popover-container {
  6442.            display: flex;
  6443.            padding: .5rem .5rem .5rem 0
  6444.        }
  6445.  
  6446.        .quantity-popover-container:not(.quantity-popover-container--hover) {
  6447.            align-items: center
  6448.        }
  6449.  
  6450.        @media screen and (min-width: 990px) {
  6451.            .quantity-popover-container--hover:hover {
  6452.                background-color: rgba(var(--color-foreground), .03);
  6453.                border-radius: var(--inputs-radius-outset)
  6454.            }
  6455.  
  6456.            .quantity-popover-container--empty {
  6457.                margin-right: 2.7rem
  6458.            }
  6459.  
  6460.            .quantity-popover__info.global-settings-popup {
  6461.                width: 27rem
  6462.            }
  6463.  
  6464.            .quantity-popover-container {
  6465.                width: auto;
  6466.                max-width: 20rem
  6467.            }
  6468.  
  6469.            .quantity-popover__info.global-settings-popup {
  6470.                transform: translateY(1rem)
  6471.            }
  6472.        }
  6473.  
  6474.        quantity-popover:has(.quantity__input:focus-visible) .quantity-popover__info {
  6475.            display: block
  6476.        }
  6477.  
  6478.        quantity-popover .quantity {
  6479.            background: rgb(var(--color-background))
  6480.        }
  6481.  
  6482.        quantity-popover .quantity__rules {
  6483.            margin-left: .8rem
  6484.        }
  6485.  
  6486.        quantity-popover .quantity__rules .divider:nth-child(2):before {
  6487.            content: none
  6488.        }
  6489.  
  6490.        quantity-popover .quantity__button:not(:focus-visible):not(.focused),
  6491.        quantity-popover .quantity__input:not(:focus-visible):not(.focused) {
  6492.            background-color: initial
  6493.        }
  6494.    </style>
  6495.    <style>
  6496.        .card-wrapper {
  6497.            color: inherit;
  6498.            height: 100%;
  6499.            position: relative;
  6500.            text-decoration: none
  6501.        }
  6502.  
  6503.        .card {
  6504.            text-decoration: none;
  6505.            text-align: var(--text-alignment)
  6506.        }
  6507.  
  6508.        .card:not(.ratio) {
  6509.            display: flex;
  6510.            flex-direction: column;
  6511.            height: 100%
  6512.        }
  6513.  
  6514.        .card.card--horizontal {
  6515.            --text-alignment: left;
  6516.            --image-padding: 0rem;
  6517.            flex-direction: row;
  6518.            align-items: flex-start;
  6519.            gap: 1.5rem
  6520.        }
  6521.  
  6522.        .card--horizontal.ratio:before {
  6523.            padding-bottom: 0
  6524.        }
  6525.  
  6526.        .card--card.card--horizontal {
  6527.            padding: 1.2rem
  6528.        }
  6529.  
  6530.        .card--card.card--horizontal.card--text {
  6531.            column-gap: 0
  6532.        }
  6533.  
  6534.        .card--card {
  6535.            height: 100%
  6536.        }
  6537.  
  6538.        .card--card,
  6539.        .card--standard .card__inner {
  6540.            position: relative;
  6541.            box-sizing: border-box;
  6542.            border-radius: var(--border-radius);
  6543.            border: var(--border-width) solid rgba(var(--color-foreground), var(--border-opacity))
  6544.        }
  6545.  
  6546.        .card--card:after,
  6547.        .card--standard .card__inner:after {
  6548.            content: "";
  6549.            position: absolute;
  6550.            z-index: -1;
  6551.            width: calc(var(--border-width) * 2 + 100%);
  6552.            height: calc(var(--border-width) * 2 + 100%);
  6553.            top: calc(var(--border-width) * -1);
  6554.            left: calc(var(--border-width) * -1);
  6555.            border-radius: var(--border-radius);
  6556.            box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius) rgba(var(--color-shadow), var(--shadow-opacity))
  6557.        }
  6558.  
  6559.        .card--card.gradient,
  6560.        .card__inner.gradient {
  6561.            transform: perspective(0)
  6562.        }
  6563.  
  6564.        .card__inner.color-background-1 {
  6565.            background: transparent
  6566.        }
  6567.  
  6568.        .card .card__inner .card__media {
  6569.            overflow: hidden;
  6570.            z-index: 0;
  6571.            border-radius: calc(var(--border-radius) - var(--border-width) - var(--image-padding))
  6572.        }
  6573.  
  6574.        .card--card .card__inner .card__media {
  6575.            border-bottom-right-radius: 0;
  6576.            border-bottom-left-radius: 0
  6577.        }
  6578.  
  6579.        .card--standard.card--text {
  6580.            background-color: transparent
  6581.        }
  6582.  
  6583.        .card-information {
  6584.            text-align: var(--text-alignment)
  6585.        }
  6586.  
  6587.        .card__media,
  6588.        .card .media {
  6589.            bottom: 0;
  6590.            position: absolute;
  6591.            top: 0
  6592.        }
  6593.  
  6594.        .card .media {
  6595.            width: 100%
  6596.        }
  6597.  
  6598.        .card__media {
  6599.            margin: var(--image-padding);
  6600.            width: calc(100% - 2 * var(--image-padding))
  6601.        }
  6602.  
  6603.        .card--standard .card__media {
  6604.            margin: var(--image-padding)
  6605.        }
  6606.  
  6607.        .card__inner {
  6608.            width: 100%
  6609.        }
  6610.  
  6611.        .card--media .card__inner .card__content {
  6612.            position: relative;
  6613.            padding: calc(var(--image-padding) + 1rem)
  6614.        }
  6615.  
  6616.        .card__content {
  6617.            display: grid;
  6618.            grid-template-rows: minmax(0, 1fr) max-content minmax(0, 1fr);
  6619.            padding: 1rem;
  6620.            width: 100%;
  6621.            flex-grow: 1
  6622.        }
  6623.  
  6624.        .card__content--auto-margins {
  6625.            grid-template-rows: minmax(0, auto) max-content minmax(0, auto)
  6626.        }
  6627.  
  6628.        .card__information {
  6629.            grid-row-start: 2;
  6630.            padding: 1.3rem 1rem
  6631.        }
  6632.  
  6633.        .card:not(.ratio)>.card__content {
  6634.            grid-template-rows: max-content minmax(0, 1fr) max-content auto
  6635.        }
  6636.  
  6637.        .card-information .card__information-volume-pricing-note {
  6638.            margin-top: .6rem;
  6639.            line-height: calc(.5 + .4 / var(--font-body-scale));
  6640.            color: rgba(var(--color-foreground), .75)
  6641.        }
  6642.  
  6643.        @media screen and (min-width: 750px) {
  6644.            .card__information {
  6645.                padding-bottom: 1.7rem;
  6646.                padding-top: 1.7rem
  6647.            }
  6648.        }
  6649.  
  6650.        .card__badge {
  6651.            align-self: flex-end;
  6652.            grid-row-start: 3;
  6653.            justify-self: flex-start
  6654.        }
  6655.  
  6656.        .card__badge.top {
  6657.            align-self: flex-start;
  6658.            grid-row-start: 1
  6659.        }
  6660.  
  6661.        .card__badge.right {
  6662.            justify-self: flex-end
  6663.        }
  6664.  
  6665.        .card:not(.card--horizontal)>.card__content>.card__badge {
  6666.            margin: 1.3rem
  6667.        }
  6668.  
  6669.        .card__media .media img {
  6670.            height: 100%;
  6671.            object-fit: cover;
  6672.            object-position: center center;
  6673.            width: 100%
  6674.        }
  6675.  
  6676.        .card__inner:not(.ratio)>.card__content {
  6677.            height: 100%
  6678.        }
  6679.  
  6680.        .card__heading {
  6681.            margin-top: 0;
  6682.            margin-bottom: 0
  6683.        }
  6684.  
  6685.        .card__heading:last-child {
  6686.            margin-bottom: 0
  6687.        }
  6688.  
  6689.        .card--horizontal .card__heading,
  6690.        .card--horizontal .price__container .price-item,
  6691.        .card--horizontal__quick-add {
  6692.            font-size: calc(var(--font-heading-scale) * 1.2rem)
  6693.        }
  6694.  
  6695.        .card--horizontal .card-information>*:not(.visually-hidden:first-child)+*:not(.rating):not(.card__information-volume-pricing-note) {
  6696.            margin-top: 0
  6697.        }
  6698.  
  6699.        .card--horizontal__quick-add:before {
  6700.            box-shadow: none
  6701.        }
  6702.  
  6703.        @media only screen and (min-width: 750px) {
  6704.  
  6705.            .card--horizontal .card__heading,
  6706.            .card--horizontal .price__container .price-item,
  6707.            .card--horizontal__quick-add {
  6708.                font-size: calc(var(--font-heading-scale) * 1.3rem)
  6709.            }
  6710.        }
  6711.  
  6712.        .card--card.card--media>.card__content {
  6713.            margin-top: calc(0rem - var(--image-padding))
  6714.        }
  6715.  
  6716.        .card--standard.card--text a:after,
  6717.        .card--card .card__heading a:after {
  6718.            bottom: calc(var(--border-width) * -1);
  6719.            left: calc(var(--border-width) * -1);
  6720.            right: calc(var(--border-width) * -1);
  6721.            top: calc(var(--border-width) * -1)
  6722.        }
  6723.  
  6724.        .card__heading a:after {
  6725.            bottom: 0;
  6726.            content: "";
  6727.            left: 0;
  6728.            position: absolute;
  6729.            right: 0;
  6730.            top: 0;
  6731.            z-index: 1
  6732.        }
  6733.  
  6734.        .card__heading a:after {
  6735.            outline-offset: .3rem
  6736.        }
  6737.  
  6738.        .card__heading a:focus:after {
  6739.            box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3);
  6740.            outline: .2rem solid rgba(var(--color-foreground), .5)
  6741.        }
  6742.  
  6743.        .card__heading a:focus-visible:after {
  6744.            box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3);
  6745.            outline: .2rem solid rgba(var(--color-foreground), .5)
  6746.        }
  6747.  
  6748.        .card__heading a:focus:not(:focus-visible):after {
  6749.            box-shadow: none;
  6750.            outline: 0
  6751.        }
  6752.  
  6753.        .card__heading a:focus {
  6754.            box-shadow: none;
  6755.            outline: 0
  6756.        }
  6757.  
  6758.        @media screen and (min-width: 990px) {
  6759.  
  6760.            .card .media.media--hover-effect>img:only-child,
  6761.            .card-wrapper .media.media--hover-effect>img:only-child {
  6762.                transition: transform var(--duration-long) ease
  6763.            }
  6764.  
  6765.            .card:hover .media.media--hover-effect>img:first-child:only-child,
  6766.            .card-wrapper:hover .media.media--hover-effect>img:first-child:only-child {
  6767.                transform: scale(1.03)
  6768.            }
  6769.  
  6770.            .card-wrapper:hover .media.media--hover-effect>img:first-child:not(:only-child) {
  6771.                opacity: 0
  6772.            }
  6773.  
  6774.            .card-wrapper:hover .media.media--hover-effect>img+img {
  6775.                opacity: 1;
  6776.                transition: transform var(--duration-long) ease;
  6777.                transform: scale(1.03)
  6778.            }
  6779.  
  6780.            .underline-links-hover:hover a {
  6781.                text-decoration: underline;
  6782.                text-underline-offset: .3rem
  6783.            }
  6784.        }
  6785.  
  6786.        .card--standard.card--media .card__inner .card__information,
  6787.        .card--standard.card--text:not(.card--horizontal)>.card__content .card__heading:not(.card__heading--placeholder),
  6788.        .card--standard:not(.card--horizontal)>.card__content .card__badge,
  6789.        .card--standard.card--text.article-card>.card__content .card__information,
  6790.        .card--standard>.card__content .card__caption {
  6791.            display: none
  6792.        }
  6793.  
  6794.        .card--standard:not(.card--horizontal) .placeholder-svg {
  6795.            height: auto;
  6796.            width: 100%
  6797.        }
  6798.  
  6799.        .card--standard>.card__content {
  6800.            padding: 0
  6801.        }
  6802.  
  6803.        .card--standard>.card__content .card__information {
  6804.            padding-left: 0;
  6805.            padding-right: 0
  6806.        }
  6807.  
  6808.        .card--card.card--media .card__inner .card__information,
  6809.        .card--card.card--text .card__inner,
  6810.        .card--card.card--media>.card__content .card__badge {
  6811.            display: none
  6812.        }
  6813.  
  6814.        .card--horizontal .card__badge,
  6815.        .card--horizontal.card--text .card__inner {
  6816.            display: none
  6817.        }
  6818.  
  6819.        .card--extend-height {
  6820.            height: 100%
  6821.        }
  6822.  
  6823.        .card--extend-height.card--standard.card--text,
  6824.        .card--extend-height.card--media {
  6825.            display: flex;
  6826.            flex-direction: column
  6827.        }
  6828.  
  6829.        .card--extend-height.card--standard.card--text .card__inner,
  6830.        .card--extend-height.card--media .card__inner {
  6831.            flex-grow: 1
  6832.        }
  6833.  
  6834.        .card .icon-wrap {
  6835.            margin-left: .8rem;
  6836.            white-space: nowrap;
  6837.            transition: transform var(--duration-short) ease;
  6838.            overflow: hidden
  6839.        }
  6840.  
  6841.        .card-information>*+* {
  6842.            margin-top: .5rem
  6843.        }
  6844.  
  6845.        .card-information {
  6846.            width: 100%
  6847.        }
  6848.  
  6849.        .card-information>* {
  6850.            line-height: calc(1 + .4 / var(--font-body-scale));
  6851.            color: rgb(var(--color-foreground))
  6852.        }
  6853.  
  6854.        .card-information>.price {
  6855.            color: rgb(var(--color-foreground))
  6856.        }
  6857.  
  6858.        .card--horizontal .card-information>.price {
  6859.            color: rgba(var(--color-foreground), .75)
  6860.        }
  6861.  
  6862.        .card-information>.rating {
  6863.            margin-top: .4rem
  6864.        }
  6865.  
  6866.        .card-information>*:not(.visually-hidden:first-child)+*:not(.rating):not(.card__information-volume-pricing-note) {
  6867.            margin-top: .7rem
  6868.        }
  6869.  
  6870.        .card-information .caption {
  6871.            letter-spacing: .07rem
  6872.        }
  6873.  
  6874.        .card-article-info {
  6875.            margin-top: 1rem
  6876.        }
  6877.  
  6878.        .card--shape .card__content {
  6879.            padding-top: 0
  6880.        }
  6881.  
  6882.        .card--shape.card--standard:not(.card--text) .card__inner {
  6883.            border: 0;
  6884.            background-color: transparent;
  6885.            filter: drop-shadow(var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius) rgba(var(--color-shadow), var(--shadow-opacity)))
  6886.        }
  6887.  
  6888.        .card--shape.card--standard:not(.card--text) .card__inner:after {
  6889.            display: none
  6890.        }
  6891.  
  6892.        .grid__item:nth-child(2n) .shape--blob {
  6893.            clip-path: polygon(var(--shape--blob-2))
  6894.        }
  6895.  
  6896.        .grid__item:nth-child(3n) .shape--blob {
  6897.            clip-path: polygon(var(--shape--blob-3))
  6898.        }
  6899.  
  6900.        .grid__item:nth-child(4n) .shape--blob {
  6901.            clip-path: polygon(var(--shape--blob-4))
  6902.        }
  6903.  
  6904.        .grid__item:nth-child(5n) .shape--blob {
  6905.            clip-path: polygon(var(--shape--blob-5))
  6906.        }
  6907.  
  6908.        .grid__item:nth-child(7n) .shape--blob {
  6909.            clip-path: polygon(var(--shape--blob-6))
  6910.        }
  6911.  
  6912.        .grid__item:nth-child(8n) .shape--blob {
  6913.            clip-path: polygon(var(--shape--blob-1))
  6914.        }
  6915.  
  6916.        @media (prefers-reduced-motion: no-preference) {
  6917.            .product-card-wrapper .shape--round {
  6918.                transition: clip-path var(--duration-long) ease
  6919.            }
  6920.  
  6921.            .product-card-wrapper:hover .shape--round {
  6922.                clip-path: ellipse(47% 47% at 50% 50%)
  6923.            }
  6924.  
  6925.            .product-card-wrapper .shape--blob {
  6926.                transition: clip-path var(--duration-long) ease-in-out
  6927.            }
  6928.  
  6929.            .product-card-wrapper:hover .shape--blob {
  6930.                clip-path: polygon(var(--shape--blob-5))
  6931.            }
  6932.  
  6933.            .grid__item:nth-child(2n) .product-card-wrapper:hover .shape--blob {
  6934.                clip-path: polygon(var(--shape--blob-6))
  6935.            }
  6936.  
  6937.            .grid__item:nth-child(3n) .product-card-wrapper:hover .shape--blob {
  6938.                clip-path: polygon(var(--shape--blob-1))
  6939.            }
  6940.  
  6941.            .grid__item:nth-child(4n) .product-card-wrapper:hover .shape--blob {
  6942.                clip-path: polygon(var(--shape--blob-2))
  6943.            }
  6944.  
  6945.            .grid__item:nth-child(5n) .product-card-wrapper:hover .shape--blob {
  6946.                clip-path: polygon(var(--shape--blob-3))
  6947.            }
  6948.  
  6949.            .grid__item:nth-child(7n) .product-card-wrapper:hover .shape--blob {
  6950.                clip-path: polygon(var(--shape--blob-4))
  6951.            }
  6952.  
  6953.            .grid__item:nth-child(8n) .product-card-wrapper:hover .shape--blob {
  6954.                clip-path: polygon(var(--shape--blob-5))
  6955.            }
  6956.        }
  6957.    </style>
  6958.  
  6959.    <script>
  6960.        /** Shopify CDN: Minification failed
  6961.    
  6962.    Line 16:0 Transforming class syntax to the configured target environment ("es5") is not supported yet
  6963.    Line 17:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  6964.    Line 22:6 Transforming const to the configured target environment ("es5") is not supported yet
  6965.    Line 30:0 Transforming class syntax to the configured target environment ("es5") is not supported yet
  6966.    Line 31:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  6967.    Line 36:4 Transforming const to the configured target environment ("es5") is not supported yet
  6968.    Line 45:19 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  6969.    Line 54:22 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  6970.    Line 60:10 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  6971.    Line 64:14 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  6972.    ... and 38 more hidden warnings
  6973.    
  6974.    **/
  6975.        class CartRemoveButton extends HTMLElement {
  6976.            constructor() {
  6977.                super();
  6978.  
  6979.                this.addEventListener('click', (event) => {
  6980.                    event.preventDefault();
  6981.                    const cartItems = this.closest('cart-items') || this.closest('cart-drawer-items');
  6982.                    cartItems.updateQuantity(this.dataset.index, 0);
  6983.                });
  6984.            }
  6985.        }
  6986.  
  6987.        customElements.define('cart-remove-button', CartRemoveButton);
  6988.  
  6989.        class CartItems extends HTMLElement {
  6990.            constructor() {
  6991.                super();
  6992.                this.lineItemStatusElement =
  6993.                    document.getElementById('shopping-cart-line-item-status') || document.getElementById('CartDrawer-LineItemStatus');
  6994.  
  6995.                const debouncedOnChange = debounce((event) => {
  6996.                    this.onChange(event);
  6997.                }, ON_CHANGE_DEBOUNCE_TIMER);
  6998.  
  6999.                this.addEventListener('change', debouncedOnChange.bind(this));
  7000.            }
  7001.  
  7002.            cartUpdateUnsubscriber = undefined;
  7003.  
  7004.            connectedCallback() {
  7005.                this.cartUpdateUnsubscriber = subscribe(PUB_SUB_EVENTS.cartUpdate, (event) => {
  7006.                    if (event.source === 'cart-items') {
  7007.                        return;
  7008.                    }
  7009.                    this.onCartUpdate();
  7010.                });
  7011.            }
  7012.  
  7013.            disconnectedCallback() {
  7014.                if (this.cartUpdateUnsubscriber) {
  7015.                    this.cartUpdateUnsubscriber();
  7016.                }
  7017.            }
  7018.  
  7019.            onChange(event) {
  7020.                this.updateQuantity(event.target.dataset.index, event.target.value, document.activeElement.getAttribute('name'), event.target.dataset.quantityVariantId);
  7021.            }
  7022.  
  7023.            onCartUpdate() {
  7024.                if (this.tagName === 'CART-DRAWER-ITEMS') {
  7025.                    fetch(`${routes.cart_url}?section_id=cart-drawer`)
  7026.                        .then((response) => response.text())
  7027.                        .then((responseText) => {
  7028.                            const html = new DOMParser().parseFromString(responseText, 'text/html');
  7029.                            const selectors = ['cart-drawer-items', '.cart-drawer__footer'];
  7030.                            for (const selector of selectors) {
  7031.                                const targetElement = document.querySelector(selector);
  7032.                                const sourceElement = html.querySelector(selector);
  7033.                                if (targetElement && sourceElement) {
  7034.                                    targetElement.replaceWith(sourceElement);
  7035.                                }
  7036.                            }
  7037.                        })
  7038.                        .catch((e) => {
  7039.                            console.error(e);
  7040.                        });
  7041.                } else {
  7042.                    fetch(`${routes.cart_url}?section_id=main-cart-items`)
  7043.                        .then((response) => response.text())
  7044.                        .then((responseText) => {
  7045.                            const html = new DOMParser().parseFromString(responseText, 'text/html');
  7046.                            const sourceQty = html.querySelector('cart-items');
  7047.                            this.innerHTML = sourceQty.innerHTML;
  7048.                        })
  7049.                        .catch((e) => {
  7050.                            console.error(e);
  7051.                        });
  7052.                }
  7053.            }
  7054.  
  7055.            getSectionsToRender() {
  7056.                return [
  7057.                    {
  7058.                        id: 'main-cart-items',
  7059.                        section: document.getElementById('main-cart-items').dataset.id,
  7060.                        selector: '.js-contents',
  7061.                    },
  7062.                    {
  7063.                        id: 'cart-icon-bubble',
  7064.                        section: 'cart-icon-bubble',
  7065.                        selector: '.shopify-section',
  7066.                    },
  7067.                    {
  7068.                        id: 'cart-live-region-text',
  7069.                        section: 'cart-live-region-text',
  7070.                        selector: '.shopify-section',
  7071.                    },
  7072.                    {
  7073.                        id: 'main-cart-footer',
  7074.                        section: document.getElementById('main-cart-footer').dataset.id,
  7075.                        selector: '.js-contents',
  7076.                    },
  7077.                ];
  7078.            }
  7079.  
  7080.            updateQuantity(line, quantity, name, variantId) {
  7081.                this.enableLoading(line);
  7082.  
  7083.                const body = JSON.stringify({
  7084.                    line,
  7085.                    quantity,
  7086.                    sections: this.getSectionsToRender().map((section) => section.section),
  7087.                    sections_url: window.location.pathname,
  7088.                });
  7089.  
  7090.                fetch(`${routes.cart_change_url}`, { ...fetchConfig(), ...{ body } })
  7091.                    .then((response) => {
  7092.                        return response.text();
  7093.                    })
  7094.                    .then((state) => {
  7095.                        const parsedState = JSON.parse(state);
  7096.                        const quantityElement =
  7097.                            document.getElementById(`Quantity-${line}`) || document.getElementById(`Drawer-quantity-${line}`);
  7098.                        const items = document.querySelectorAll('.cart-item');
  7099.  
  7100.                        if (parsedState.errors) {
  7101.                            quantityElement.value = quantityElement.getAttribute('value');
  7102.                            this.updateLiveRegions(line, parsedState.errors);
  7103.                            return;
  7104.                        }
  7105.  
  7106.                        this.classList.toggle('is-empty', parsedState.item_count === 0);
  7107.                        const cartDrawerWrapper = document.querySelector('cart-drawer');
  7108.                        const cartFooter = document.getElementById('main-cart-footer');
  7109.  
  7110.                        if (cartFooter) cartFooter.classList.toggle('is-empty', parsedState.item_count === 0);
  7111.                        if (cartDrawerWrapper) cartDrawerWrapper.classList.toggle('is-empty', parsedState.item_count === 0);
  7112.  
  7113.                        this.getSectionsToRender().forEach((section) => {
  7114.                            const elementToReplace =
  7115.                                document.getElementById(section.id).querySelector(section.selector) || document.getElementById(section.id);
  7116.                            elementToReplace.innerHTML = this.getSectionInnerHTML(
  7117.                                parsedState.sections[section.section],
  7118.                                section.selector
  7119.                            );
  7120.                        });
  7121.                        const updatedValue = parsedState.items[line - 1] ? parsedState.items[line - 1].quantity : undefined;
  7122.                        let message = '';
  7123.                        if (items.length === parsedState.items.length && updatedValue !== parseInt(quantityElement.value)) {
  7124.                            if (typeof updatedValue === 'undefined') {
  7125.                                message = window.cartStrings.error;
  7126.                            } else {
  7127.                                message = window.cartStrings.quantityError.replace('[quantity]', updatedValue);
  7128.                            }
  7129.                        }
  7130.                        this.updateLiveRegions(line, message);
  7131.  
  7132.                        const lineItem =
  7133.                            document.getElementById(`CartItem-${line}`) || document.getElementById(`CartDrawer-Item-${line}`);
  7134.                        if (lineItem && lineItem.querySelector(`[name="${name}"]`)) {
  7135.                            cartDrawerWrapper
  7136.                                ? trapFocus(cartDrawerWrapper, lineItem.querySelector(`[name="${name}"]`))
  7137.                                : lineItem.querySelector(`[name="${name}"]`).focus();
  7138.                        } else if (parsedState.item_count === 0 && cartDrawerWrapper) {
  7139.                            trapFocus(cartDrawerWrapper.querySelector('.drawer__inner-empty'), cartDrawerWrapper.querySelector('a'));
  7140.                        } else if (document.querySelector('.cart-item') && cartDrawerWrapper) {
  7141.                            trapFocus(cartDrawerWrapper, document.querySelector('.cart-item__name'));
  7142.                        }
  7143.  
  7144.                        publish(PUB_SUB_EVENTS.cartUpdate, { source: 'cart-items', cartData: parsedState, variantId: variantId });
  7145.                    })
  7146.                    .catch(() => {
  7147.                        this.querySelectorAll('.loading__spinner').forEach((overlay) => overlay.classList.add('hidden'));
  7148.                        const errors = document.getElementById('cart-errors') || document.getElementById('CartDrawer-CartErrors');
  7149.                        errors.textContent = window.cartStrings.error;
  7150.                    })
  7151.                    .finally(() => {
  7152.                        this.disableLoading(line);
  7153.                    });
  7154.            }
  7155.  
  7156.            updateLiveRegions(line, message) {
  7157.                const lineItemError =
  7158.                    document.getElementById(`Line-item-error-${line}`) || document.getElementById(`CartDrawer-LineItemError-${line}`);
  7159.                if (lineItemError) lineItemError.querySelector('.cart-item__error-text').innerHTML = message;
  7160.  
  7161.                this.lineItemStatusElement.setAttribute('aria-hidden', true);
  7162.  
  7163.                const cartStatus =
  7164.                    document.getElementById('cart-live-region-text') || document.getElementById('CartDrawer-LiveRegionText');
  7165.                cartStatus.setAttribute('aria-hidden', false);
  7166.  
  7167.                setTimeout(() => {
  7168.                    cartStatus.setAttribute('aria-hidden', true);
  7169.                }, 1000);
  7170.            }
  7171.  
  7172.            getSectionInnerHTML(html, selector) {
  7173.                return new DOMParser().parseFromString(html, 'text/html').querySelector(selector).innerHTML;
  7174.            }
  7175.  
  7176.            enableLoading(line) {
  7177.                const mainCartItems = document.getElementById('main-cart-items') || document.getElementById('CartDrawer-CartItems');
  7178.                mainCartItems.classList.add('cart__items--disabled');
  7179.  
  7180.                const cartItemElements = this.querySelectorAll(`#CartItem-${line} .loading__spinner`);
  7181.                const cartDrawerItemElements = this.querySelectorAll(`#CartDrawer-Item-${line} .loading__spinner`);
  7182.  
  7183.                [...cartItemElements, ...cartDrawerItemElements].forEach((overlay) => overlay.classList.remove('hidden'));
  7184.  
  7185.                document.activeElement.blur();
  7186.                this.lineItemStatusElement.setAttribute('aria-hidden', false);
  7187.            }
  7188.  
  7189.            disableLoading(line) {
  7190.                const mainCartItems = document.getElementById('main-cart-items') || document.getElementById('CartDrawer-CartItems');
  7191.                mainCartItems.classList.remove('cart__items--disabled');
  7192.  
  7193.                const cartItemElements = this.querySelectorAll(`#CartItem-${line} .loading__spinner`);
  7194.                const cartDrawerItemElements = this.querySelectorAll(`#CartDrawer-Item-${line} .loading__spinner`);
  7195.  
  7196.                cartItemElements.forEach((overlay) => overlay.classList.add('hidden'));
  7197.                cartDrawerItemElements.forEach((overlay) => overlay.classList.add('hidden'));
  7198.            }
  7199.        }
  7200.  
  7201.        customElements.define('cart-items', CartItems);
  7202.  
  7203.        if (!customElements.get('cart-note')) {
  7204.            customElements.define(
  7205.                'cart-note',
  7206.                class CartNote extends HTMLElement {
  7207.                    constructor() {
  7208.                        super();
  7209.  
  7210.                        this.addEventListener(
  7211.                            'change',
  7212.                            debounce((event) => {
  7213.                                const body = JSON.stringify({ note: event.target.value });
  7214.                                fetch(`${routes.cart_update_url}`, { ...fetchConfig(), ...{ body } });
  7215.                            }, ON_CHANGE_DEBOUNCE_TIMER)
  7216.                        );
  7217.                    }
  7218.                }
  7219.            );
  7220.        }
  7221.    </script>
  7222.    <script>
  7223.        /** Shopify CDN: Minification failed
  7224.    
  7225.    Line 17:4 Transforming class syntax to the configured target environment ("es5") is not supported yet
  7226.    Line 18:17 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  7227.    Line 53:19 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  7228.    Line 61:8 Transforming const to the configured target environment ("es5") is not supported yet
  7229.    Line 62:8 Transforming const to the configured target environment ("es5") is not supported yet
  7230.    Line 68:8 Transforming const to the configured target environment ("es5") is not supported yet
  7231.    Line 77:18 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  7232.    Line 79:8 Transforming const to the configured target environment ("es5") is not supported yet
  7233.    Line 81:8 Transforming const to the configured target environment ("es5") is not supported yet
  7234.    
  7235.    **/
  7236.        if (!customElements.get('quantity-popover')) {
  7237.            customElements.define(
  7238.                'quantity-popover',
  7239.                class QuantityPopover extends HTMLElement {
  7240.                    constructor() {
  7241.                        super();
  7242.                        this.mql = window.matchMedia('(min-width: 990px)');
  7243.                        this.mqlTablet = window.matchMedia('(min-width: 750px)');
  7244.                        this.infoButtonDesktop = this.querySelector('.quantity-popover__info-button--icon-only');
  7245.                        this.infoButtonMobile = this.querySelector('.quantity-popover__info-button--icon-with-label');
  7246.                        this.popoverInfo = this.querySelector('.quantity-popover__info');
  7247.                        this.closeButton = this.querySelector('.button-close');
  7248.                        this.variantInfo = this.querySelector('.quantity-popover-container');
  7249.                        this.eventMouseEnterHappened = false;
  7250.  
  7251.                        if (this.closeButton) {
  7252.                            this.closeButton.addEventListener('click', this.closePopover.bind(this));
  7253.                        }
  7254.  
  7255.                        if (this.popoverInfo && this.infoButtonDesktop && this.mql.matches) {
  7256.                            this.popoverInfo.addEventListener('mouseenter', this.closePopover.bind(this));
  7257.                        }
  7258.  
  7259.                        if (this.infoButtonDesktop) {
  7260.                            this.infoButtonDesktop.addEventListener('click', this.togglePopover.bind(this));
  7261.                            this.infoButtonDesktop.addEventListener('focusout', this.closePopover.bind(this));
  7262.                        }
  7263.  
  7264.                        if (this.infoButtonMobile) {
  7265.                            this.infoButtonMobile.addEventListener('click', this.togglePopover.bind(this));
  7266.                            this.infoButtonMobile.addEventListener('focusout', this.closePopover.bind(this));
  7267.                        }
  7268.  
  7269.                        if (this.infoButtonDesktop && this.mqlTablet.matches) {
  7270.                            this.variantInfo.addEventListener('mouseenter', this.togglePopover.bind(this));
  7271.                            this.variantInfo.addEventListener('mouseleave', this.closePopover.bind(this));
  7272.                        }
  7273.                    }
  7274.  
  7275.                    togglePopover(event) {
  7276.                        event.preventDefault();
  7277.                        if (event.type === 'mouseenter') {
  7278.                            this.eventMouseEnterHappened = true;
  7279.                        }
  7280.  
  7281.                        if (event.type === 'click' && this.eventMouseEnterHappened) return;
  7282.  
  7283.                        const button = this.infoButtonDesktop && this.mql.matches ? this.infoButtonDesktop : this.infoButtonMobile;
  7284.                        const isExpanded = button.getAttribute('aria-expanded') === 'true';
  7285.  
  7286.                        button.setAttribute('aria-expanded', !isExpanded);
  7287.  
  7288.                        this.popoverInfo.toggleAttribute('hidden');
  7289.  
  7290.                        const isOpen = button.getAttribute('aria-expanded') === 'true';
  7291.  
  7292.                        button.classList.toggle('quantity-popover__info-button--open');
  7293.  
  7294.                        if (isOpen && event.type !== 'mouseenter') {
  7295.                            button.focus();
  7296.                        }
  7297.                    }
  7298.  
  7299.                    closePopover(event) {
  7300.                        event.preventDefault();
  7301.                        const isChild = this.variantInfo.contains(event.relatedTarget);
  7302.  
  7303.                        const button = this.infoButtonDesktop && this.mql.matches ? this.infoButtonDesktop : this.infoButtonMobile;
  7304.  
  7305.                        if (!event.relatedTarget || !isChild) {
  7306.                            button.setAttribute('aria-expanded', 'false');
  7307.                            button.classList.remove('quantity-popover__info-button--open');
  7308.                            this.popoverInfo.setAttribute('hidden', '');
  7309.                        }
  7310.  
  7311.                        this.eventMouseEnterHappened = false;
  7312.                    }
  7313.                }
  7314.            );
  7315.        }
  7316.    </script>
  7317.  
  7318.    <style>
  7319.        .drawer {
  7320.            visibility: hidden;
  7321.        }
  7322.    </style>
  7323.  
  7324.    <cart-drawer class="drawer is-empty">
  7325.        <div id="CartDrawer" class="cart-drawer">
  7326.            <div id="CartDrawer-Overlay" class="cart-drawer__overlay"></div>
  7327.            <div class="drawer__inner gradient color-background-1" role="dialog" aria-modal="true"
  7328.                aria-label="Your cart" tabindex="-1">
  7329.                <div class="drawer__inner-empty">
  7330.                    <div class="cart-drawer__warnings center">
  7331.                        <div class="cart-drawer__empty-content">
  7332.                            <h2 class="cart__empty-text">LINK ALTERNATIF</h2>
  7333.                            <button class="drawer__close" type="button" onclick="this.closest('cart-drawer').close()"
  7334.                                aria-label="Close">
  7335.                                <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"
  7336.                                    class="icon icon-close" fill="none" viewBox="0 0 18 17">
  7337.                                    <path
  7338.                                        d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z"
  7339.                                        fill="currentColor">
  7340.                                </svg>
  7341.  
  7342.                            </button>
  7343.                            <a href="https://infinite-style.com/" class="button">
  7344.                                KOITOTO
  7345.                            </a>
  7346.                        </div>
  7347.                    </div>
  7348.                </div>
  7349.                <div class="drawer__header">
  7350.                    <h2 class="drawer__heading">Your cart</h2>
  7351.                    <button class="drawer__close" type="button" onclick="this.closest('cart-drawer').close()"
  7352.                        aria-label="Close">
  7353.                        <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"
  7354.                            class="icon icon-close" fill="none" viewBox="0 0 18 17">
  7355.                            <path
  7356.                                d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z"
  7357.                                fill="currentColor">
  7358.                        </svg>
  7359.  
  7360.                    </button>
  7361.                </div>
  7362.                <cart-drawer-items class=" is-empty">
  7363.                    <form action="https://infinite-style.com/" id="CartDrawer-Form" class="cart__contents cart-drawer__form"
  7364.                        method="post">
  7365.                        <div id="CartDrawer-CartItems" class="drawer__contents js-contents">
  7366.                            <p id="CartDrawer-LiveRegionText" class="visually-hidden" role="status"></p>
  7367.                            <p id="CartDrawer-LineItemStatus" class="visually-hidden" aria-hidden="true" role="status">
  7368.                                Loading...
  7369.                            </p>
  7370.                        </div>
  7371.                        <div id="CartDrawer-CartErrors" role="alert"></div>
  7372.                    </form>
  7373.                </cart-drawer-items>
  7374.                <div class="drawer__footer"><!-- Start blocks -->
  7375.                    <!-- Subtotals -->
  7376.  
  7377.                    <div class="cart-drawer__footer">
  7378.                        <div></div>
  7379.  
  7380.                        <div class="totals" role="status">
  7381.                            <h2 class="totals__total">Estimated total</h2>
  7382.                            <p class="totals__total-value">Rp 0,00 IDR</p>
  7383.                        </div>
  7384.  
  7385.                        <small class="tax-note caption-large rte">Taxes, discounts and shipping calculated at checkout
  7386.                        </small>
  7387.                    </div>
  7388.  
  7389.                    <!-- CTAs -->
  7390.  
  7391.                    <div class="cart__ctas">
  7392.                        <noscript>
  7393.                            <button type="submit" class="cart__update-button button button--secondary"
  7394.                                form="CartDrawer-Form">
  7395.                                Update
  7396.                            </button>
  7397.                        </noscript>
  7398.  
  7399.                        <button type="submit" id="CartDrawer-Checkout" class="cart__checkout-button button"
  7400.                            name="checkout" form="CartDrawer-Form" disabled>
  7401.                            Check out
  7402.                        </button>
  7403.                    </div>
  7404.                </div>
  7405.            </div>
  7406.        </div>
  7407.    </cart-drawer>
  7408.  
  7409.    <script>
  7410.        document.addEventListener('DOMContentLoaded', function () {
  7411.            function isIE() {
  7412.                const ua = window.navigator.userAgent;
  7413.                const msie = ua.indexOf('MSIE ');
  7414.                const trident = ua.indexOf('Trident/https://infinite-style.com/');
  7415.  
  7416.                return msie > 0 || trident > 0;
  7417.            }
  7418.  
  7419.            if (!isIE()) return;
  7420.            const cartSubmitInput = document.createElement('input');
  7421.            cartSubmitInput.setAttribute('name', 'checkout');
  7422.            cartSubmitInput.setAttribute('type', 'hidden');
  7423.            document.querySelector('#cart').appendChild(cartSubmitInput);
  7424.            document.querySelector('#checkout').addEventListener('click', function (event) {
  7425.                document.querySelector('#cart').submit();
  7426.            });
  7427.        });
  7428.    </script>
  7429.    <!-- BEGIN sections: header-group -->
  7430.    <style>
  7431.        slideshow-component {
  7432.            position: relative;
  7433.            display: flex;
  7434.            flex-direction: column
  7435.        }
  7436.  
  7437.        @media screen and (max-width: 989px) {
  7438.            .no-js slideshow-component .slider {
  7439.                padding-bottom: 3rem
  7440.            }
  7441.        }
  7442.  
  7443.        slideshow-component .slideshow.banner {
  7444.            flex-direction: row;
  7445.            flex-wrap: nowrap;
  7446.            margin: 0;
  7447.            gap: 0
  7448.        }
  7449.  
  7450.        .slideshow__slide {
  7451.            padding: 0;
  7452.            position: relative;
  7453.            display: flex;
  7454.            flex-direction: column;
  7455.            visibility: visible
  7456.        }
  7457.  
  7458.        @media screen and (max-width: 749px) {
  7459.  
  7460.            .slideshow--placeholder.banner--mobile-bottom.banner--adapt_image .slideshow__media,
  7461.            .slideshow--placeholder.banner--adapt_image:not(.banner--mobile-bottom) {
  7462.                height: 28rem
  7463.            }
  7464.        }
  7465.  
  7466.        @media screen and (min-width: 750px) {
  7467.            .slideshow--placeholder.banner--adapt_image {
  7468.                height: 56rem
  7469.            }
  7470.        }
  7471.  
  7472.        .slideshow__text.banner__box {
  7473.            display: flex;
  7474.            flex-direction: column;
  7475.            justify-content: center;
  7476.            max-width: 54.5rem
  7477.        }
  7478.  
  7479.        .slideshow__text>* {
  7480.            max-width: 100%
  7481.        }
  7482.  
  7483.        @media screen and (max-width: 749px) {
  7484.            slideshow-component.page-width .slideshow__text {
  7485.                border-right: var(--text-boxes-border-width) solid rgba(var(--color-foreground), var(--text-boxes-border-opacity));
  7486.                border-left: var(--text-boxes-border-width) solid rgba(var(--color-foreground), var(--text-boxes-border-opacity))
  7487.            }
  7488.  
  7489.            .banner--mobile-bottom .slideshow__text.banner__box {
  7490.                max-width: 100%
  7491.            }
  7492.  
  7493.            .banner--mobile-bottom .slideshow__text-wrapper {
  7494.                flex-grow: 1
  7495.            }
  7496.  
  7497.            .banner--mobile-bottom .slideshow__text.banner__box {
  7498.                height: 100%
  7499.            }
  7500.  
  7501.            .banner--mobile-bottom .slideshow__text .button {
  7502.                flex-grow: 0
  7503.            }
  7504.  
  7505.            .slideshow__text.slideshow__text-mobile--left {
  7506.                align-items: flex-start;
  7507.                text-align: left
  7508.            }
  7509.  
  7510.            .slideshow__text.slideshow__text-mobile--right {
  7511.                align-items: flex-end;
  7512.                text-align: right
  7513.            }
  7514.        }
  7515.  
  7516.        @media screen and (min-width: 750px) {
  7517.            .slideshow__text.slideshow__text--left {
  7518.                align-items: flex-start;
  7519.                text-align: left
  7520.            }
  7521.  
  7522.            .slideshow__text.slideshow__text--right {
  7523.                align-items: flex-end;
  7524.                text-align: right
  7525.            }
  7526.        }
  7527.  
  7528.        .slideshow:not(.banner--mobile-bottom) .slideshow__text-wrapper {
  7529.            height: 100%
  7530.        }
  7531.  
  7532.        @media screen and (min-width: 750px) {
  7533.            .slideshow__text-wrapper.banner__content {
  7534.                height: 100%;
  7535.                padding: 5rem
  7536.            }
  7537.        }
  7538.  
  7539.        .slideshow__controls {
  7540.            border: .1rem solid rgba(var(--color-foreground), .08)
  7541.        }
  7542.  
  7543.        .slideshow__controls--top {
  7544.            order: 2;
  7545.            z-index: 1
  7546.        }
  7547.  
  7548.        @media screen and (max-width: 749px) {
  7549.            .slideshow__controls--border-radius-mobile {
  7550.                border-bottom-right-radius: var(--text-boxes-radius);
  7551.                border-bottom-left-radius: var(--text-boxes-radius)
  7552.            }
  7553.        }
  7554.  
  7555.        .spaced-section--full-width:last-child slideshow-component:not(.page-width) .slideshow__controls {
  7556.            border-bottom: none
  7557.        }
  7558.  
  7559.        @media screen and (min-width: 750px) {
  7560.            .slideshow__controls {
  7561.                position: relative
  7562.            }
  7563.        }
  7564.  
  7565.        slideshow-component:not(.page-width) .slider-buttons {
  7566.            border-right: 0;
  7567.            border-left: 0
  7568.        }
  7569.  
  7570.        .slideshow__control-wrapper {
  7571.            display: flex
  7572.        }
  7573.  
  7574.        .slideshow__autoplay {
  7575.            position: absolute;
  7576.            right: 0;
  7577.            border-left: none;
  7578.            display: flex;
  7579.            justify-content: center;
  7580.            align-items: center
  7581.        }
  7582.  
  7583.        @media screen and (max-width: 749px) {
  7584.            slideshow-component.page-width .slideshow__autoplay {
  7585.                right: 1.5rem
  7586.            }
  7587.        }
  7588.  
  7589.        @media screen and (min-width: 750px) {
  7590.            .slideshow__autoplay.slider-button {
  7591.                position: inherit;
  7592.                margin-left: .6rem;
  7593.                padding: 0 0 0 .6rem;
  7594.                border-left: .1rem solid rgba(var(--color-foreground), .08)
  7595.            }
  7596.        }
  7597.  
  7598.        .slideshow__autoplay .icon.icon-play,
  7599.        .slideshow__autoplay .icon.icon-pause {
  7600.            display: block;
  7601.            position: absolute;
  7602.            opacity: 1;
  7603.            transform: scale(1);
  7604.            transition: transform .15s ease, opacity .15s ease;
  7605.            width: .8rem;
  7606.            height: 1.2rem
  7607.        }
  7608.  
  7609.        .slideshow__autoplay .icon.icon-play {
  7610.            height: 1rem
  7611.        }
  7612.  
  7613.        .slideshow__autoplay path {
  7614.            fill: rgba(var(--color-foreground), .75)
  7615.        }
  7616.  
  7617.        .slideshow__autoplay:hover path {
  7618.            fill: rgb(var(--color-foreground))
  7619.        }
  7620.  
  7621.        @media screen and (forced-colors: active) {
  7622.  
  7623.            .slideshow__autoplay path,
  7624.            .slideshow__autoplay:hover path {
  7625.                fill: CanvasText
  7626.            }
  7627.        }
  7628.  
  7629.        .slideshow__autoplay:hover svg {
  7630.            transform: scale(1.1)
  7631.        }
  7632.  
  7633.        .slideshow__autoplay--paused .icon-pause,
  7634.        .slideshow__autoplay:not(.slideshow__autoplay--paused) .icon-play {
  7635.            visibility: hidden;
  7636.            opacity: 0;
  7637.            transform: scale(.8)
  7638.        }
  7639.    </style>
  7640.    <style>
  7641.        slider-component {
  7642.            --desktop-margin-left-first-item: max(5rem, calc((100vw - var(--page-width) + 10rem - var(--grid-desktop-horizontal-spacing)) / 2));
  7643.            position: relative;
  7644.            display: block
  7645.        }
  7646.  
  7647.        slider-component.slider-component-full-width {
  7648.            --desktop-margin-left-first-item: 1.5rem
  7649.        }
  7650.  
  7651.        @media screen and (max-width: 749px) {
  7652.            slider-component.page-width {
  7653.                padding: 0 1.5rem
  7654.            }
  7655.        }
  7656.  
  7657.        @media screen and (min-width: 749px) and (max-width: 990px) {
  7658.            slider-component.page-width {
  7659.                padding: 0 5rem
  7660.            }
  7661.        }
  7662.  
  7663.        @media screen and (max-width: 989px) {
  7664.            .no-js slider-component .slider {
  7665.                padding-bottom: 3rem
  7666.            }
  7667.        }
  7668.  
  7669.        .slider__slide {
  7670.            --focus-outline-padding: .5rem;
  7671.            --shadow-padding-top: calc((var(--shadow-vertical-offset) * -1 + var(--shadow-blur-radius)) * var(--shadow-visible));
  7672.            --shadow-padding-bottom: calc((var(--shadow-vertical-offset) + var(--shadow-blur-radius)) * var(--shadow-visible));
  7673.            scroll-snap-align: start;
  7674.            flex-shrink: 0;
  7675.            padding-bottom: 0
  7676.        }
  7677.  
  7678.        @media screen and (max-width: 749px) {
  7679.            .slider.slider--mobile {
  7680.                position: relative;
  7681.                flex-wrap: inherit;
  7682.                overflow-x: auto;
  7683.                scroll-snap-type: x mandatory;
  7684.                scroll-behavior: smooth;
  7685.                scroll-padding-left: 1.5rem;
  7686.                -webkit-overflow-scrolling: touch;
  7687.                margin-bottom: 1rem
  7688.            }
  7689.  
  7690.            .slider--mobile:after {
  7691.                content: "";
  7692.                width: 0;
  7693.                padding-left: 1.5rem
  7694.            }
  7695.  
  7696.            .slider.slider--mobile .slider__slide {
  7697.                margin-bottom: 0;
  7698.                padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
  7699.                padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
  7700.            }
  7701.  
  7702.            .slider.slider--mobile.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
  7703.                padding-bottom: var(--focus-outline-padding)
  7704.            }
  7705.  
  7706.            .slider.slider--mobile.contains-content-container .slider__slide {
  7707.                --focus-outline-padding: 0rem
  7708.            }
  7709.        }
  7710.  
  7711.        @media screen and (min-width: 750px) {
  7712.            .slider.slider--tablet-up {
  7713.                position: relative;
  7714.                flex-wrap: inherit;
  7715.                overflow-x: auto;
  7716.                scroll-snap-type: x mandatory;
  7717.                scroll-behavior: smooth;
  7718.                scroll-padding-left: 1rem;
  7719.                -webkit-overflow-scrolling: touch
  7720.            }
  7721.  
  7722.            .slider.slider--tablet-up .slider__slide {
  7723.                margin-bottom: 0
  7724.            }
  7725.        }
  7726.  
  7727.        @media screen and (max-width: 989px) {
  7728.            .slider.slider--tablet {
  7729.                position: relative;
  7730.                flex-wrap: inherit;
  7731.                overflow-x: auto;
  7732.                scroll-snap-type: x mandatory;
  7733.                scroll-behavior: smooth;
  7734.                scroll-padding-left: 1.5rem;
  7735.                -webkit-overflow-scrolling: touch;
  7736.                margin-bottom: 1rem
  7737.            }
  7738.  
  7739.            .slider--tablet:after {
  7740.                content: "";
  7741.                width: 0;
  7742.                padding-left: 1.5rem;
  7743.                margin-left: calc(-1 * var(--grid-desktop-horizontal-spacing))
  7744.            }
  7745.  
  7746.            .slider.slider--tablet .slider__slide {
  7747.                margin-bottom: 0;
  7748.                padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
  7749.                padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
  7750.            }
  7751.  
  7752.            .slider.slider--tablet.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
  7753.                padding-bottom: var(--focus-outline-padding)
  7754.            }
  7755.  
  7756.            .slider.slider--tablet.contains-content-container .slider__slide {
  7757.                --focus-outline-padding: 0rem
  7758.            }
  7759.        }
  7760.  
  7761.        .slider--everywhere {
  7762.            position: relative;
  7763.            flex-wrap: inherit;
  7764.            overflow-x: auto;
  7765.            scroll-snap-type: x mandatory;
  7766.            scroll-behavior: smooth;
  7767.            -webkit-overflow-scrolling: touch;
  7768.            margin-bottom: 1rem
  7769.        }
  7770.  
  7771.        .slider.slider--everywhere .slider__slide {
  7772.            margin-bottom: 0;
  7773.            scroll-snap-align: center
  7774.        }
  7775.  
  7776.        @media screen and (min-width: 990px) {
  7777.            .slider-component-desktop.page-width {
  7778.                max-width: none
  7779.            }
  7780.  
  7781.            .slider--desktop {
  7782.                position: relative;
  7783.                flex-wrap: inherit;
  7784.                overflow-x: auto;
  7785.                scroll-snap-type: x mandatory;
  7786.                scroll-behavior: smooth;
  7787.                -webkit-overflow-scrolling: touch;
  7788.                margin-bottom: 1rem;
  7789.                scroll-padding-left: var(--desktop-margin-left-first-item)
  7790.            }
  7791.  
  7792.            .slider--desktop:after {
  7793.                content: "";
  7794.                width: 0;
  7795.                padding-left: 5rem;
  7796.                margin-left: calc(-1 * var(--grid-desktop-horizontal-spacing))
  7797.            }
  7798.  
  7799.            .slider.slider--desktop .slider__slide {
  7800.                margin-bottom: 0;
  7801.                padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
  7802.                padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
  7803.            }
  7804.  
  7805.            .slider--desktop .slider__slide:first-child {
  7806.                margin-left: var(--desktop-margin-left-first-item);
  7807.                scroll-margin-left: var(--desktop-margin-left-first-item)
  7808.            }
  7809.  
  7810.            .slider-component-full-width .slider--desktop {
  7811.                scroll-padding-left: 1.5rem
  7812.            }
  7813.  
  7814.            .slider-component-full-width .slider--desktop .slider__slide:first-child {
  7815.                margin-left: 1.5rem;
  7816.                scroll-margin-left: 1.5rem
  7817.            }
  7818.  
  7819.            .slider-component-full-width .slider--desktop:after {
  7820.                padding-left: 1.5rem
  7821.            }
  7822.  
  7823.            .slider--desktop.grid--5-col-desktop .grid__item {
  7824.                width: calc((100% - var(--desktop-margin-left-first-item)) / 5 - var(--grid-desktop-horizontal-spacing) * 2)
  7825.            }
  7826.  
  7827.            .slider--desktop.grid--4-col-desktop .grid__item {
  7828.                width: calc((100% - var(--desktop-margin-left-first-item)) / 4 - var(--grid-desktop-horizontal-spacing) * 3)
  7829.            }
  7830.  
  7831.            .slider--desktop.grid--3-col-desktop .grid__item {
  7832.                width: calc((100% - var(--desktop-margin-left-first-item)) / 3 - var(--grid-desktop-horizontal-spacing) * 4)
  7833.            }
  7834.  
  7835.            .slider--desktop.grid--2-col-desktop .grid__item {
  7836.                width: calc((100% - var(--desktop-margin-left-first-item)) / 2 - var(--grid-desktop-horizontal-spacing) * 5)
  7837.            }
  7838.  
  7839.            .slider--desktop.grid--1-col-desktop .grid__item {
  7840.                width: calc((100% - var(--desktop-margin-left-first-item)) - var(--grid-desktop-horizontal-spacing) * 9)
  7841.            }
  7842.  
  7843.            .slider.slider--desktop.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
  7844.                padding-bottom: var(--focus-outline-padding)
  7845.            }
  7846.  
  7847.            .slider.slider--desktop.contains-content-container .slider__slide {
  7848.                --focus-outline-padding: 0rem
  7849.            }
  7850.        }
  7851.  
  7852.        @media (prefers-reduced-motion) {
  7853.            .slider {
  7854.                scroll-behavior: auto
  7855.            }
  7856.        }
  7857.  
  7858.        .slider {
  7859.            scrollbar-color: rgb(var(--color-foreground)) rgba(var(--color-foreground), .04);
  7860.            -ms-overflow-style: none;
  7861.            scrollbar-width: none
  7862.        }
  7863.  
  7864.        .slider::-webkit-scrollbar {
  7865.            height: .4rem;
  7866.            width: .4rem;
  7867.            display: none
  7868.        }
  7869.  
  7870.        .no-js .slider {
  7871.            -ms-overflow-style: auto;
  7872.            scrollbar-width: auto
  7873.        }
  7874.  
  7875.        .no-js .slider::-webkit-scrollbar {
  7876.            display: initial
  7877.        }
  7878.  
  7879.        .slider::-webkit-scrollbar-thumb {
  7880.            background-color: rgb(var(--color-foreground));
  7881.            border-radius: .4rem;
  7882.            border: 0
  7883.        }
  7884.  
  7885.        .slider::-webkit-scrollbar-track {
  7886.            background: rgba(var(--color-foreground), .04);
  7887.            border-radius: .4rem
  7888.        }
  7889.  
  7890.        .slider-counter {
  7891.            display: flex;
  7892.            justify-content: center;
  7893.            min-width: 4.4rem
  7894.        }
  7895.  
  7896.        @media screen and (min-width: 750px) {
  7897.            .slider-counter--dots {
  7898.                margin: 0 1.2rem
  7899.            }
  7900.        }
  7901.  
  7902.        .slider-counter__link {
  7903.            padding: 1rem
  7904.        }
  7905.  
  7906.        @media screen and (max-width: 749px) {
  7907.            .slider-counter__link {
  7908.                padding: .7rem
  7909.            }
  7910.        }
  7911.  
  7912.        .slider-counter__link--dots .dot {
  7913.            width: 1rem;
  7914.            height: 1rem;
  7915.            border-radius: 50%;
  7916.            border: .1rem solid rgba(var(--color-foreground), .5);
  7917.            padding: 0;
  7918.            display: block
  7919.        }
  7920.  
  7921.        .slider-counter__link--active.slider-counter__link--dots .dot {
  7922.            background-color: rgb(var(--color-foreground))
  7923.        }
  7924.  
  7925.        @media screen and (forced-colors: active) {
  7926.            .slider-counter__link--active.slider-counter__link--dots .dot {
  7927.                background-color: CanvasText
  7928.            }
  7929.        }
  7930.  
  7931.        .slider-counter__link--dots:not(.slider-counter__link--active):hover .dot {
  7932.            border-color: rgb(var(--color-foreground))
  7933.        }
  7934.  
  7935.        .slider-counter__link--dots .dot,
  7936.        .slider-counter__link--numbers {
  7937.            transition: transform .2s ease-in-out
  7938.        }
  7939.  
  7940.        .slider-counter__link--active.slider-counter__link--numbers,
  7941.        .slider-counter__link--dots:not(.slider-counter__link--active):hover .dot,
  7942.        .slider-counter__link--numbers:hover {
  7943.            transform: scale(1.1)
  7944.        }
  7945.  
  7946.        .slider-counter__link--numbers {
  7947.            color: rgba(var(--color-foreground), .5);
  7948.            text-decoration: none
  7949.        }
  7950.  
  7951.        .slider-counter__link--numbers:hover {
  7952.            color: rgb(var(--color-foreground))
  7953.        }
  7954.  
  7955.        .slider-counter__link--active.slider-counter__link--numbers {
  7956.            text-decoration: underline;
  7957.            color: rgb(var(--color-foreground))
  7958.        }
  7959.  
  7960.        .slider-buttons {
  7961.            display: flex;
  7962.            align-items: center;
  7963.            justify-content: center
  7964.        }
  7965.  
  7966.        @media screen and (min-width: 990px) {
  7967.            .slider:not(.slider--everywhere):not(.slider--desktop)+.slider-buttons {
  7968.                display: none
  7969.            }
  7970.        }
  7971.  
  7972.        @media screen and (max-width: 989px) {
  7973.            .slider--desktop:not(.slider--tablet)+.slider-buttons {
  7974.                display: none
  7975.            }
  7976.        }
  7977.  
  7978.        @media screen and (min-width: 750px) {
  7979.            .slider--mobile+.slider-buttons {
  7980.                display: none
  7981.            }
  7982.        }
  7983.  
  7984.        .slider-button {
  7985.            color: rgba(var(--color-foreground), .75);
  7986.            background: transparent;
  7987.            border: none;
  7988.            cursor: pointer;
  7989.            width: 44px;
  7990.            height: 44px;
  7991.            display: flex;
  7992.            align-items: center;
  7993.            justify-content: center
  7994.        }
  7995.  
  7996.        .slider-button:not([disabled]):hover {
  7997.            color: rgb(var(--color-foreground))
  7998.        }
  7999.  
  8000.        .slider-button .icon {
  8001.            height: .6rem
  8002.        }
  8003.  
  8004.        .slider-button[disabled] .icon {
  8005.            color: rgba(var(--color-foreground), .3);
  8006.            cursor: not-allowed
  8007.        }
  8008.  
  8009.        .slider-button--next .icon {
  8010.            transform: rotate(-90deg)
  8011.        }
  8012.  
  8013.        .slider-button--prev .icon {
  8014.            transform: rotate(90deg)
  8015.        }
  8016.  
  8017.        .slider-button--next:not([disabled]):hover .icon {
  8018.            transform: rotate(-90deg) scale(1.1)
  8019.        }
  8020.  
  8021.        .slider-button--prev:not([disabled]):hover .icon {
  8022.            transform: rotate(90deg) scale(1.1)
  8023.        }
  8024.    </style>
  8025.  
  8026.  
  8027.    <div class="utility-bar color-accent-1 gradient utility-bar--bottom-border">
  8028.        <div class="page-width utility-bar__grid">
  8029.            <div class="announcement-bar" role="region" aria-label="Announcement">
  8030.                <p class="announcement-bar__message h5">
  8031.  <span id="typewriter"></span>
  8032. </p>
  8033. <!-- HTML -->
  8034. <div id="typewriter" style="color: white; font-size: 18px; font-weight: bold; text-align: center; padding: 20px;"></div>
  8035.  
  8036. <!-- SCRIPT -->
  8037. <script>
  8038. // Gabungkan semua kalimat ke dalam satu string pakai join
  8039. const text = [
  8040.  "SELAMAT DATANG DI KOITOTO",
  8041.  "LOGIN SITUS TOGEL ONLINE SUPPORT 24 JAM",
  8042.  "NIKMATI TOTO SLOT ANTI LAG YANG MUDAH MENANG",
  8043.  "DEPOSIT MINIMAL CUMA 10 RIBU AJA",
  8044.  "PROSES PENARIKAN CEPAT DAN LANGSUNG MASUK",
  8045.  "LAYANAN CUSTOMER SERVICE ONLINE SETIAP SAAT",
  8046.  "BERGABUNGLAH SEKARANG DAN RASAKAN BEDANYA BERMAIN DI KOITOTO"
  8047. ].join(" "); // Digabung jadi satu string
  8048.  
  8049. const target = document.getElementById("typewriter");
  8050. let i = 0;
  8051.  
  8052. function typeWriter() {
  8053.  if (i < text.length) {
  8054.    target.textContent += text.charAt(i);
  8055.    i++;
  8056.    setTimeout(typeWriter, 60); // kecepatan ketik
  8057.  }
  8058. }
  8059.  
  8060. typeWriter();
  8061. </script>
  8062.  
  8063.  
  8064.            </div>
  8065.            <div class="localization-wrapper">
  8066.            </div>
  8067.        </div>
  8068.    </div>
  8069.  
  8070.  
  8071.    </div>
  8072.    <div id="shopify-section-sections--17040648405205__header"
  8073.        class="shopify-section shopify-section-group-header-group section-header">
  8074.        <style>
  8075.            .list-menu--right {
  8076.                right: 0;
  8077.            }
  8078.  
  8079.            .list-menu--disclosure {
  8080.                position: absolute;
  8081.                min-width: 100%;
  8082.                width: 20rem;
  8083.                border: 1px solid rgba(var(--color-foreground), 0.2);
  8084.            }
  8085.  
  8086.            .list-menu--disclosure:focus {
  8087.                outline: none;
  8088.            }
  8089.  
  8090.            .list-menu__item--active {
  8091.                text-decoration: underline;
  8092.                text-underline-offset: 0.3rem;
  8093.            }
  8094.  
  8095.            .list-menu__item--active:hover {
  8096.                text-decoration-thickness: 0.2rem;
  8097.            }
  8098.  
  8099.            .list-menu--disclosure.localization-selector {
  8100.                max-height: 18rem;
  8101.                overflow: auto;
  8102.                width: 10rem;
  8103.                padding: 0.5rem;
  8104.            }
  8105.        </style>
  8106.        <style>
  8107.            .search__input.field__input {
  8108.                padding-right: 9.8rem
  8109.            }
  8110.  
  8111.            .search__button {
  8112.                right: var(--inputs-border-width);
  8113.                top: var(--inputs-border-width)
  8114.            }
  8115.  
  8116.            .reset__button {
  8117.                right: calc(var(--inputs-border-width) + 4.4rem);
  8118.                top: var(--inputs-border-width)
  8119.            }
  8120.  
  8121.            .reset__button:not(:focus-visible):after {
  8122.                border-right: .1rem solid rgba(var(--color-foreground), .08);
  8123.                display: block;
  8124.                height: calc(100% - 1.6rem);
  8125.                content: "";
  8126.                position: absolute;
  8127.                right: 0
  8128.            }
  8129.  
  8130.            .reset__button:not(:focus):after {
  8131.                border-right: .1rem solid rgba(var(--color-foreground), .08);
  8132.                display: block;
  8133.                height: calc(100% - 1.8rem);
  8134.                content: "";
  8135.                position: absolute;
  8136.                right: 0
  8137.            }
  8138.  
  8139.            .search__button:focus-visible,
  8140.            .reset__button:focus-visible {
  8141.                background-color: black;
  8142.                z-index: 4
  8143.            }
  8144.  
  8145.            .search__button:focus,
  8146.            .reset__button:focus {
  8147.                background-color: black;
  8148.                z-index: 4
  8149.            }
  8150.  
  8151.            .search__button:not(:focus-visible):not(.focused),
  8152.            .reset__button:not(:focus-visible):not(.focused) {
  8153.                box-shadow: inherit;
  8154.                background-color: inherit
  8155.            }
  8156.  
  8157.            .search__button:hover .icon,
  8158.            .reset__button:hover .icon {
  8159.                transform: scale(1.07)
  8160.            }
  8161.  
  8162.            .search__button .icon {
  8163.                height: 1.8rem;
  8164.                width: 1.8rem
  8165.            }
  8166.  
  8167.            .reset__button .icon.icon-close {
  8168.                height: 1.8rem;
  8169.                width: 1.8rem;
  8170.                stroke-width: .1rem
  8171.            }
  8172.  
  8173.            input::-webkit-search-decoration {
  8174.                -webkit-appearance: none
  8175.            }
  8176.  
  8177.            .template-search__results {
  8178.                position: relative
  8179.            }
  8180.        </style>
  8181.        <style>
  8182.            .header__icon--menu {
  8183.                position: initial
  8184.            }
  8185.  
  8186.            .js menu-drawer>details>summary:before,
  8187.            .js menu-drawer>details[open]:not(.menu-opening)>summary:before {
  8188.                content: "";
  8189.                position: absolute;
  8190.                cursor: default;
  8191.                width: 100%;
  8192.                height: calc(100vh - 100%);
  8193.                height: calc(var(--viewport-height, 100vh) - (var(--header-bottom-position, 100%)));
  8194.                top: 100%;
  8195.                left: 0;
  8196.                background: rgba(var(--color-foreground), .5);
  8197.                opacity: 0;
  8198.                visibility: hidden;
  8199.                z-index: 2;
  8200.                transition: opacity 0s, visibility 0s
  8201.            }
  8202.  
  8203.            menu-drawer>details[open]>summary:before {
  8204.                visibility: visible;
  8205.                opacity: 1;
  8206.                transition: opacity var(--duration-default) ease, visibility var(--duration-default) ease
  8207.            }
  8208.  
  8209.            .menu-drawer {
  8210.                position: absolute;
  8211.                transform: translate(-100%);
  8212.                visibility: hidden;
  8213.                z-index: 3;
  8214.                left: 0;
  8215.                top: 100%;
  8216.                width: 100%;
  8217.                padding: 0;
  8218.                background-color: black;
  8219.                overflow-x: hidden;
  8220.                filter: drop-shadow(var(--drawer-shadow-horizontal-offset) var(--drawer-shadow-vertical-offset) var(--drawer-shadow-blur-radius) rgba(var(--color-shadow), var(--drawer-shadow-opacity)))
  8221.            }
  8222.  
  8223.            .js .menu-drawer {
  8224.                height: calc(100vh - 100%);
  8225.                height: calc(var(--viewport-height, 100vh) - (var(--header-bottom-position, 100%)))
  8226.            }
  8227.  
  8228.            .js details[open]>.menu-drawer,
  8229.            .js details[open]>.menu-drawer__submenu {
  8230.                transition: transform var(--duration-default) ease, visibility var(--duration-default) ease
  8231.            }
  8232.  
  8233.            .no-js details[open]>.menu-drawer,
  8234.            .js details[open].menu-opening>.menu-drawer,
  8235.            details[open].menu-opening>.menu-drawer__submenu {
  8236.                transform: translate(0);
  8237.                visibility: visible
  8238.            }
  8239.  
  8240.            .js .menu-drawer__navigation .submenu-open {
  8241.                visibility: hidden
  8242.            }
  8243.  
  8244.            @media screen and (min-width: 750px) {
  8245.                .menu-drawer {
  8246.                    width: 40rem;
  8247.                    border-width: 0 var(--drawer-border-width) 0 0;
  8248.                    border-style: solid;
  8249.                    border-color: rgba(var(--color-foreground), var(--drawer-border-opacity))
  8250.                }
  8251.  
  8252.                .no-js .menu-drawer {
  8253.                    height: auto
  8254.                }
  8255.            }
  8256.  
  8257.            .menu-drawer__inner-container {
  8258.                position: relative;
  8259.                height: 100%
  8260.            }
  8261.  
  8262.            .menu-drawer__navigation-container {
  8263.                display: grid;
  8264.                grid-template-rows: 1fr auto;
  8265.                align-content: space-between;
  8266.                overflow-y: auto;
  8267.                height: 100%
  8268.            }
  8269.  
  8270.            .menu-drawer__navigation {
  8271.                padding: 3rem 0
  8272.            }
  8273.  
  8274.            .menu-drawer__inner-submenu {
  8275.                height: 100%;
  8276.                overflow-x: hidden;
  8277.                overflow-y: auto
  8278.            }
  8279.  
  8280.            .no-js .menu-drawer__navigation {
  8281.                padding: 0
  8282.            }
  8283.  
  8284.            .no-js .menu-drawer__navigation>ul>li {
  8285.                border-bottom: .1rem solid rgba(var(--color-foreground), .04)
  8286.            }
  8287.  
  8288.            .no-js .menu-drawer__submenu ul>li {
  8289.                border-top: .1rem solid rgba(var(--color-foreground), .04)
  8290.            }
  8291.  
  8292.            .js .menu-drawer__menu li {
  8293.                margin-bottom: .2rem
  8294.            }
  8295.  
  8296.            .menu-drawer__menu-item {
  8297.                padding: 1.1rem 3rem;
  8298.                text-decoration: none;
  8299.                font-size: 1.8rem
  8300.            }
  8301.  
  8302.            .no-js .menu-drawer__menu-item {
  8303.                font-size: 1.6rem
  8304.            }
  8305.  
  8306.            .no-js .menu-drawer__submenu .menu-drawer__menu-item {
  8307.                padding: 1.2rem 5.2rem 1.2rem 6rem
  8308.            }
  8309.  
  8310.            .no-js .menu-drawer__submenu .menu-drawer__submenu .menu-drawer__menu-item {
  8311.                padding-left: 9rem
  8312.            }
  8313.  
  8314.            .menu-drawer summary.menu-drawer__menu-item {
  8315.                padding-right: 5.2rem
  8316.            }
  8317.  
  8318.            .no-js .menu-drawer__menu-item .icon-caret {
  8319.                right: 3rem
  8320.            }
  8321.  
  8322.            .menu-drawer__menu-item--active,
  8323.            .menu-drawer__menu-item:focus,
  8324.            .menu-drawer__close-button:focus,
  8325.            .menu-drawer__menu-item:hover,
  8326.            .menu-drawer__close-button:hover {
  8327.                color: rgb(var(--color-foreground));
  8328.                background-color: rgba(var(--color-foreground), .04)
  8329.            }
  8330.  
  8331.            .menu-drawer__menu-item--active:hover {
  8332.                background-color: rgba(var(--color-foreground), .08)
  8333.            }
  8334.  
  8335.            .js .menu-drawer__menu-item .icon-caret,
  8336.            .no-js .menu-drawer .icon-arrow {
  8337.                display: none
  8338.            }
  8339.  
  8340.            .menu-drawer__menu-item>.icon-arrow {
  8341.                position: absolute;
  8342.                right: 3rem;
  8343.                top: 50%;
  8344.                transform: translateY(-50%)
  8345.            }
  8346.  
  8347.            .js .menu-drawer__submenu {
  8348.                position: absolute;
  8349.                top: 0;
  8350.                width: 100%;
  8351.                bottom: 0;
  8352.                left: 0;
  8353.                background-color: black;
  8354.                z-index: 1;
  8355.                transform: translate(100%);
  8356.                visibility: hidden
  8357.            }
  8358.  
  8359.            .js .menu-drawer__submenu .menu-drawer__submenu {
  8360.                overflow-y: auto
  8361.            }
  8362.  
  8363.            .menu-drawer__close-button {
  8364.                margin-top: 1.5rem;
  8365.                padding: 1.2rem 2.6rem 1.2rem 3rem;
  8366.                text-decoration: none;
  8367.                display: flex;
  8368.                align-items: center;
  8369.                font-size: 1.4rem;
  8370.                width: 100%;
  8371.                background-color: transparent;
  8372.                font-family: var(--font-body-family);
  8373.                font-style: var(--font-body-style);
  8374.                text-align: left
  8375.            }
  8376.  
  8377.            .no-js .menu-drawer__close-button {
  8378.                display: none
  8379.            }
  8380.  
  8381.            .menu-drawer__close-button .icon-arrow {
  8382.                transform: rotate(180deg);
  8383.                margin-right: 1rem
  8384.            }
  8385.  
  8386.            .menu-drawer__utility-links {
  8387.                padding: 0;
  8388.                background-color: rgba(var(--color-foreground), .03);
  8389.                position: relative
  8390.            }
  8391.  
  8392.            .header--has-social .menu-drawer__utility-links {
  8393.                padding: 2rem 3rem
  8394.            }
  8395.  
  8396.            @media screen and (max-width: 749px) {
  8397.                .header--has-account:where(:not(.header--has-social):not(.header--has-localizations)) .menu-drawer__utility-links {
  8398.                    padding: 2rem 3rem
  8399.                }
  8400.            }
  8401.  
  8402.            @media screen and (max-width: 989px) {
  8403.                .header--has-localizations:where(:not(.header--has-social)) .menu-drawer__utility-links {
  8404.                    padding: 2rem 3rem
  8405.                }
  8406.            }
  8407.  
  8408.            .menu-drawer__account {
  8409.                display: inline-flex;
  8410.                align-items: center;
  8411.                text-decoration: none;
  8412.                padding: 1rem 0;
  8413.                font-size: 1.4rem;
  8414.                color: rgb(var(--color-foreground));
  8415.                margin-bottom: 0
  8416.            }
  8417.  
  8418.            .menu-drawer__utility-links:has(.menu-drawer__localization) .menu-drawer__account {
  8419.                margin: 0
  8420.            }
  8421.  
  8422.            .menu-drawer__account .icon-account {
  8423.                height: 2rem;
  8424.                width: 2rem;
  8425.                margin-right: 1rem
  8426.            }
  8427.  
  8428.            .menu-drawer__account:hover .icon-account {
  8429.                transform: scale(1.07)
  8430.            }
  8431.  
  8432.            .menu-drawer .list-social {
  8433.                justify-content: flex-start;
  8434.                margin-left: -1.25rem
  8435.            }
  8436.  
  8437.            .menu-drawer .list-social:empty {
  8438.                display: none
  8439.            }
  8440.  
  8441.            .menu-drawer .list-social__link {
  8442.                padding: 1.1rem
  8443.            }
  8444.        </style>
  8445.        <style>
  8446.            .cart-notification-wrapper {
  8447.                position: relative
  8448.            }
  8449.  
  8450.            .cart-notification-wrapper .cart-notification {
  8451.                display: block
  8452.            }
  8453.  
  8454.            .cart-notification {
  8455.                border-bottom-right-radius: var(--popup-corner-radius);
  8456.                border-bottom-left-radius: var(--popup-corner-radius);
  8457.                border-color: rgba(var(--color-foreground), var(--popup-border-opacity));
  8458.                border-style: solid;
  8459.                border-width: 0 0 var(--popup-border-width);
  8460.                padding: 2.5rem 3.5rem;
  8461.                position: absolute;
  8462.                right: 0;
  8463.                transform: translateY(-100%);
  8464.                visibility: hidden;
  8465.                width: 100%;
  8466.                box-shadow: var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity));
  8467.                z-index: -1
  8468.            }
  8469.  
  8470.            .cart-notification.focused {
  8471.                box-shadow: 0 0 .2rem 0 rgba(var(--color-foreground), .3), var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity))
  8472.            }
  8473.  
  8474.            .cart-notification:focus-visible {
  8475.                box-shadow: 0 0 .2rem 0 rgba(var(--color-foreground), .3), var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity))
  8476.            }
  8477.  
  8478.            @media screen and (min-width: 750px) {
  8479.                .header-wrapper:not(.header-wrapper--border-bottom)+cart-notification .cart-notification {
  8480.                    border-top-width: var(--popup-border-width)
  8481.                }
  8482.  
  8483.                .cart-notification {
  8484.                    border-width: 0 var(--popup-border-width) var(--popup-border-width);
  8485.                    max-width: 36.8rem;
  8486.                    right: 2.2rem
  8487.                }
  8488.            }
  8489.  
  8490.            @media screen and (min-width: 990px) {
  8491.                .cart-notification-wrapper:is(.page-width)>.cart-notification {
  8492.                    right: 4rem
  8493.                }
  8494.            }
  8495.  
  8496.            .cart-notification.animate {
  8497.                transition: transform var(--duration-short) ease, visibility 0s var(--duration-short) ease
  8498.            }
  8499.  
  8500.            .cart-notification.active {
  8501.                transform: translateY(0);
  8502.                transition: transform var(--duration-default) ease, visibility 0s;
  8503.                visibility: visible
  8504.            }
  8505.  
  8506.            .cart-notification__header {
  8507.                align-items: flex-start;
  8508.                display: flex
  8509.            }
  8510.  
  8511.            .cart-notification__heading {
  8512.                align-items: center;
  8513.                display: flex;
  8514.                flex-grow: 1;
  8515.                margin-bottom: 0;
  8516.                margin-top: 0
  8517.            }
  8518.  
  8519.            .cart-notification__heading .icon-checkmark {
  8520.                color: rgb(var(--color-foreground));
  8521.                margin-right: 1rem;
  8522.                width: 1.3rem
  8523.            }
  8524.  
  8525.            .cart-notification__close {
  8526.                margin-top: -2rem;
  8527.                margin-right: -3rem
  8528.            }
  8529.  
  8530.            .cart-notification__links {
  8531.                text-align: center
  8532.            }
  8533.  
  8534.            .cart-notification__links>* {
  8535.                margin-top: 1rem
  8536.            }
  8537.  
  8538.            .cart-notification-product {
  8539.                align-items: flex-start;
  8540.                display: flex;
  8541.                padding-bottom: 3rem;
  8542.                padding-top: 2rem
  8543.            }
  8544.  
  8545.            .cart-notification-product dl {
  8546.                margin-bottom: 0;
  8547.                margin-top: 0
  8548.            }
  8549.  
  8550.            .cart-notification-product__image {
  8551.                display: inline-flex;
  8552.                margin-right: 1.5rem;
  8553.                margin-top: .5rem
  8554.            }
  8555.  
  8556.            .cart-notification-product__image:after {
  8557.                content: none
  8558.            }
  8559.  
  8560.            .cart-notification-product__name {
  8561.                margin-bottom: .5rem;
  8562.                margin-top: 0
  8563.            }
  8564.        </style>
  8565.        <style>
  8566.            cart-items .title-wrapper-with-link {
  8567.                margin-top: 0
  8568.            }
  8569.  
  8570.            .cart-items td,
  8571.            .cart-items th {
  8572.                padding: 0;
  8573.                border: none
  8574.            }
  8575.  
  8576.            .cart-items th {
  8577.                text-align: left;
  8578.                padding-bottom: 1.8rem;
  8579.                opacity: .85;
  8580.                font-weight: 400
  8581.            }
  8582.  
  8583.            .cart-item__quantity-wrapper {
  8584.                display: flex
  8585.            }
  8586.  
  8587.            .cart-item__totals {
  8588.                position: relative
  8589.            }
  8590.  
  8591.            .cart-items *.right {
  8592.                text-align: right
  8593.            }
  8594.  
  8595.            .cart-item__image-container {
  8596.                display: inline-flex;
  8597.                align-items: flex-start
  8598.            }
  8599.  
  8600.            .cart-item__image-container:after {
  8601.                content: none
  8602.            }
  8603.  
  8604.            .cart-item__image {
  8605.                height: auto;
  8606.                max-width: calc(10rem / var(--font-body-scale))
  8607.            }
  8608.  
  8609.            @media screen and (min-width: 750px) {
  8610.                .cart-item__image {
  8611.                    max-width: 100%
  8612.                }
  8613.            }
  8614.  
  8615.            .cart-item__details {
  8616.                font-size: 1.6rem;
  8617.                line-height: calc(1 + .4 / var(--font-body-scale))
  8618.            }
  8619.  
  8620.            .cart-item__details>* {
  8621.                margin: 0;
  8622.                max-width: 30rem
  8623.            }
  8624.  
  8625.            .cart-item__details>*+* {
  8626.                margin-top: .6rem
  8627.            }
  8628.  
  8629.            .cart-item__media {
  8630.                position: relative
  8631.            }
  8632.  
  8633.            .cart-item__link {
  8634.                display: block;
  8635.                bottom: 0;
  8636.                left: 0;
  8637.                position: absolute;
  8638.                right: 0;
  8639.                top: 0;
  8640.                width: 100%;
  8641.                height: 100%
  8642.            }
  8643.  
  8644.            .cart-item__name {
  8645.                text-decoration: none;
  8646.                display: block
  8647.            }
  8648.  
  8649.            .cart-item__name:hover {
  8650.                text-decoration: underline;
  8651.                text-underline-offset: .3rem;
  8652.                text-decoration-thickness: .2rem
  8653.            }
  8654.  
  8655.            .cart-item__price-wrapper>* {
  8656.                display: block;
  8657.                margin: 0;
  8658.                padding: 0
  8659.            }
  8660.  
  8661.            .cart-item__discounted-prices dd {
  8662.                margin: 0
  8663.            }
  8664.  
  8665.            .cart-item__discounted-prices .cart-item__old-price {
  8666.                font-size: 1.4rem
  8667.            }
  8668.  
  8669.            .cart-item__old-price {
  8670.                opacity: .7
  8671.            }
  8672.  
  8673.            .cart-item__final-price {
  8674.                font-weight: 400
  8675.            }
  8676.  
  8677.            .product-option {
  8678.                font-size: 1.4rem;
  8679.                word-break: break-word;
  8680.                line-height: calc(1 + .5 / var(--font-body-scale))
  8681.            }
  8682.  
  8683.            .cart-item cart-remove-button {
  8684.                display: flex;
  8685.                margin-left: 1rem
  8686.            }
  8687.  
  8688.            @media screen and (min-width: 750px) and (max-width: 989px) {
  8689.                .cart-item cart-remove-button {
  8690.                    width: 4.5rem;
  8691.                    height: 4.5rem
  8692.                }
  8693.            }
  8694.  
  8695.            cart-remove-button .button {
  8696.                min-width: calc(4.5rem / var(--font-body-scale));
  8697.                min-height: 4.5rem;
  8698.                padding: 0;
  8699.                margin: 0 .1rem .1rem 0
  8700.            }
  8701.  
  8702.            cart-remove-button .button:before,
  8703.            cart-remove-button .button:after {
  8704.                content: none
  8705.            }
  8706.  
  8707.            cart-remove-button .button:not([disabled]):hover {
  8708.                color: rgb(var(--color-foreground))
  8709.            }
  8710.  
  8711.            @media screen and (min-width: 750px) {
  8712.                cart-remove-button .button {
  8713.                    min-width: 3.5rem;
  8714.                    min-height: 3.5rem
  8715.                }
  8716.            }
  8717.  
  8718.            cart-remove-button .icon-remove {
  8719.                height: 1.5rem;
  8720.                width: 1.5rem
  8721.            }
  8722.  
  8723.            .cart-item .loading__spinner {
  8724.                top: 0;
  8725.                left: auto;
  8726.                right: auto;
  8727.                bottom: 0;
  8728.                padding: 0
  8729.            }
  8730.  
  8731.            @media screen and (min-width: 750px) {
  8732.                .cart-item .loading__spinner {
  8733.                    right: 0;
  8734.                    padding-top: 4.5rem;
  8735.                    bottom: auto
  8736.                }
  8737.            }
  8738.  
  8739.            .cart-item .loading__spinner:not(.hidden)~* {
  8740.                visibility: hidden
  8741.            }
  8742.  
  8743.            .cart-item__error {
  8744.                display: flex;
  8745.                align-items: flex-start;
  8746.                margin-top: .2rem;
  8747.                width: min-content;
  8748.                min-width: 100%
  8749.            }
  8750.  
  8751.            .cart-item__error-text {
  8752.                font-size: 1.2rem;
  8753.                line-height: calc(1 + .2 / var(--font-body-scale));
  8754.                order: 1
  8755.            }
  8756.  
  8757.            .cart-item__error-text+svg {
  8758.                flex-shrink: 0;
  8759.                width: 1.2rem;
  8760.                margin-right: .5rem;
  8761.                margin-top: .1rem
  8762.            }
  8763.  
  8764.            .cart-item__error-text:empty+svg {
  8765.                display: none
  8766.            }
  8767.  
  8768.            .product-option+.product-option {
  8769.                margin-top: .4rem
  8770.            }
  8771.  
  8772.            .product-option * {
  8773.                display: inline;
  8774.                margin: 0
  8775.            }
  8776.  
  8777.            .cart-items thead th {
  8778.                text-transform: uppercase
  8779.            }
  8780.  
  8781.            @media screen and (max-width: 749px) {
  8782.  
  8783.                .cart-items,
  8784.                .cart-items thead,
  8785.                .cart-items tbody {
  8786.                    display: block;
  8787.                    width: 100%
  8788.                }
  8789.  
  8790.                .cart-items thead tr {
  8791.                    display: flex;
  8792.                    justify-content: space-between;
  8793.                    border-bottom: .1rem solid rgba(var(--color-foreground), .2);
  8794.                    margin-bottom: 4rem
  8795.                }
  8796.  
  8797.                .cart-item {
  8798.                    display: grid;
  8799.                    grid-template: repeat(2, auto) / repeat(4, 1fr);
  8800.                    gap: 1.5rem;
  8801.                    margin-bottom: 3.5rem
  8802.                }
  8803.  
  8804.                .cart-item:last-child {
  8805.                    margin-bottom: 0
  8806.                }
  8807.  
  8808.                .cart-item__media {
  8809.                    grid-row: 1 / 3
  8810.                }
  8811.  
  8812.                .cart-item__details {
  8813.                    grid-column: 2 / 4
  8814.                }
  8815.  
  8816.                .cart-item__quantity {
  8817.                    grid-column: 2 / 5
  8818.                }
  8819.  
  8820.                .cart-item__quantity-wrapper {
  8821.                    flex-wrap: wrap
  8822.                }
  8823.  
  8824.                .cart-item__totals {
  8825.                    display: flex;
  8826.                    align-items: flex-start;
  8827.                    justify-content: flex-end
  8828.                }
  8829.            }
  8830.  
  8831.            @media screen and (min-width: 750px) {
  8832.                .cart-items {
  8833.                    border-spacing: 0;
  8834.                    border-collapse: separate;
  8835.                    box-shadow: none;
  8836.                    width: 100%;
  8837.                    display: table
  8838.                }
  8839.  
  8840.                .cart-items th {
  8841.                    border-bottom: .1rem solid rgba(var(--color-foreground), .08)
  8842.                }
  8843.  
  8844.                .cart-items thead th:first-child {
  8845.                    width: 50%
  8846.                }
  8847.  
  8848.                .cart-items th+th {
  8849.                    padding-left: 4rem
  8850.                }
  8851.  
  8852.                .cart-items td {
  8853.                    vertical-align: top;
  8854.                    padding-top: 4rem
  8855.                }
  8856.  
  8857.                .cart-item {
  8858.                    display: table-row
  8859.                }
  8860.  
  8861.                .cart-item>td+td {
  8862.                    padding-left: 4rem
  8863.                }
  8864.  
  8865.                .cart-item__details {
  8866.                    width: 35rem
  8867.                }
  8868.  
  8869.                .cart-item__media {
  8870.                    width: 10rem
  8871.                }
  8872.  
  8873.                .cart-item cart-remove-button {
  8874.                    margin: .5rem 0 0 1.5rem
  8875.                }
  8876.  
  8877.                .cart-item__price-wrapper>*:only-child:not(.cart-item__discounted-prices) {
  8878.                    margin-top: 1rem
  8879.                }
  8880.  
  8881.                .cart-item__error {
  8882.                    margin-left: .3rem
  8883.                }
  8884.            }
  8885.  
  8886.            @media screen and (min-width: 990px) {
  8887.  
  8888.                .cart-item .cart-item__quantity,
  8889.                .cart-items .cart-items__heading--wide {
  8890.                    padding-left: 6rem
  8891.                }
  8892.  
  8893.                .cart-item__details {
  8894.                    width: 50rem
  8895.                }
  8896.  
  8897.                .cart-items thead th:first-child {
  8898.                    width: 60%
  8899.                }
  8900.            }
  8901.  
  8902.            @media screen and (min-width: 750px) {
  8903.  
  8904.                .cart-items .cart-items__heading--quantity,
  8905.                .cart-item .cart-item__quantity,
  8906.                .cart-item__quantity--info quantity-popover>*,
  8907.                .no-js .cart-item .cart-item__quantity--info {
  8908.                    padding-left: 5rem
  8909.                }
  8910.  
  8911.                .cart-item .cart-item__quantity--info,
  8912.                .cart-item__quantity--info .cart-item__quantity-wrapper,
  8913.                .cart-item__quantity--info .cart-items__info {
  8914.                    padding-left: 0
  8915.                }
  8916.            }
  8917.  
  8918.            @media screen and (min-width: 749px) and (max-width: 990px) {
  8919.                .cart-items .quantity-popover__info-button {
  8920.                    padding-left: 1.5rem
  8921.                }
  8922.            }
  8923.        </style>
  8924.        <style>
  8925.            .price {
  8926.                font-size: 1.6rem;
  8927.                letter-spacing: .1rem;
  8928.                line-height: calc(1 + .5 / var(--font-body-scale));
  8929.                color: rgb(var(--color-foreground))
  8930.            }
  8931.  
  8932.            .price>* {
  8933.                display: inline-block;
  8934.                vertical-align: top
  8935.            }
  8936.  
  8937.            .price.price--unavailable {
  8938.                visibility: hidden
  8939.            }
  8940.  
  8941.            .price--end {
  8942.                text-align: right
  8943.            }
  8944.  
  8945.            .price .price-item {
  8946.                display: inline-block;
  8947.                margin: 0 1rem 0 0
  8948.            }
  8949.  
  8950.            .price__regular .price-item--regular {
  8951.                margin-right: 0
  8952.            }
  8953.  
  8954.            .price:not(.price--show-badge) .price-item--last:last-of-type {
  8955.                margin: 0
  8956.            }
  8957.  
  8958.            @media screen and (min-width: 750px) {
  8959.                .price {
  8960.                    margin-bottom: 0
  8961.                }
  8962.            }
  8963.  
  8964.            .price--large {
  8965.                font-size: 1.6rem;
  8966.                line-height: calc(1 + .5 / var(--font-body-scale));
  8967.                letter-spacing: .13rem
  8968.            }
  8969.  
  8970.            @media screen and (min-width: 750px) {
  8971.                .price--large {
  8972.                    font-size: 1.8rem
  8973.                }
  8974.            }
  8975.  
  8976.            .price--sold-out .price__availability,
  8977.            .price__regular {
  8978.                display: block
  8979.            }
  8980.  
  8981.            .price__sale,
  8982.            .price__availability,
  8983.            .price .price__badge-sale,
  8984.            .price .price__badge-sold-out,
  8985.            .price--on-sale .price__regular,
  8986.            .price--on-sale .price__availability {
  8987.                display: none
  8988.            }
  8989.  
  8990.            .price--sold-out .price__badge-sold-out,
  8991.            .price--on-sale .price__badge-sale,
  8992.            .volume-pricing--sale-badge .price__badge-sale {
  8993.                display: inline-block
  8994.            }
  8995.  
  8996.            .volume-pricing--sale-badge .price__badge-sale {
  8997.                margin-left: .5rem
  8998.            }
  8999.  
  9000.            .price--on-sale .price__sale {
  9001.                display: initial;
  9002.                flex-direction: row;
  9003.                flex-wrap: wrap
  9004.            }
  9005.  
  9006.            .price--center {
  9007.                display: initial;
  9008.                justify-content: center
  9009.            }
  9010.  
  9011.            .price--on-sale .price-item--regular {
  9012.                text-decoration: line-through;
  9013.                color: rgba(var(--color-foreground), .75);
  9014.                font-size: 1.3rem
  9015.            }
  9016.  
  9017.            .unit-price {
  9018.                display: block;
  9019.                font-size: 1.1rem;
  9020.                letter-spacing: .04rem;
  9021.                line-height: calc(1 + .2 / var(--font-body-scale));
  9022.                margin-top: .2rem;
  9023.                text-transform: uppercase;
  9024.                color: rgba(var(--color-foreground), .7)
  9025.            }
  9026.        </style>
  9027.        <style>
  9028.            .drawer {
  9029.                position: fixed;
  9030.                z-index: 1000;
  9031.                left: 0;
  9032.                top: 0;
  9033.                width: 100vw;
  9034.                height: 100%;
  9035.                display: flex;
  9036.                justify-content: flex-end;
  9037.                background-color: rgba(var(--color-foreground), .5);
  9038.                transition: visibility var(--duration-default) ease
  9039.            }
  9040.  
  9041.            .drawer.active {
  9042.                visibility: visible
  9043.            }
  9044.  
  9045.            .drawer__inner {
  9046.                height: 100%;
  9047.                width: 40rem;
  9048.                max-width: calc(100vw - 3rem);
  9049.                padding: 0 1.5rem;
  9050.                border: .1rem solid rgba(var(--color-foreground), .2);
  9051.                border-right: 0;
  9052.                overflow: hidden;
  9053.                display: flex;
  9054.                flex-direction: column;
  9055.                transform: translate(100%);
  9056.                transition: transform var(--duration-default) ease
  9057.            }
  9058.  
  9059.            .drawer__inner-empty {
  9060.                height: 100%;
  9061.                padding: 0 1.5rem;
  9062.                overflow: hidden;
  9063.                display: flex;
  9064.                flex-direction: column
  9065.            }
  9066.  
  9067.            .cart-drawer__warnings {
  9068.                display: flex;
  9069.                flex-direction: column;
  9070.                flex: 1;
  9071.                justify-content: center
  9072.            }
  9073.  
  9074.            cart-drawer.is-empty .drawer__inner {
  9075.                display: grid;
  9076.                grid-template-rows: 1fr;
  9077.                align-items: center;
  9078.                padding: 0
  9079.            }
  9080.  
  9081.            cart-drawer.is-empty .drawer__header {
  9082.                display: none
  9083.            }
  9084.  
  9085.            cart-drawer:not(.is-empty) .cart-drawer__warnings,
  9086.            cart-drawer:not(.is-empty) .cart-drawer__collection {
  9087.                display: none
  9088.            }
  9089.  
  9090.            .cart-drawer__warnings--has-collection .cart__login-title {
  9091.                margin-top: 2.5rem
  9092.            }
  9093.  
  9094.            .drawer.active .drawer__inner {
  9095.                transform: translate(0)
  9096.            }
  9097.  
  9098.            .drawer__header {
  9099.                position: relative;
  9100.                padding: 1.5rem 0;
  9101.                display: flex;
  9102.                justify-content: space-between;
  9103.                align-items: center
  9104.            }
  9105.  
  9106.            .drawer__heading {
  9107.                margin: 0 0 1rem
  9108.            }
  9109.  
  9110.            .drawer__close {
  9111.                display: inline-block;
  9112.                padding: 0;
  9113.                min-width: 4.4rem;
  9114.                min-height: 4.4rem;
  9115.                box-shadow: 0 0 0 .2rem rgba(var(--color-button), 0);
  9116.                position: absolute;
  9117.                top: 10px;
  9118.                right: -10px;
  9119.                color: rgb(var(--color-foreground));
  9120.                background-color: transparent;
  9121.                border: none;
  9122.                cursor: pointer
  9123.            }
  9124.  
  9125.            .cart-drawer__warnings .drawer__close {
  9126.                right: 5px
  9127.            }
  9128.  
  9129.            .drawer__close svg {
  9130.                height: 2.4rem;
  9131.                width: 2.4rem
  9132.            }
  9133.  
  9134.            .drawer__contents {
  9135.                flex-grow: 1;
  9136.                display: flex;
  9137.                flex-direction: column
  9138.            }
  9139.  
  9140.            .drawer__footer {
  9141.                border-top: .1rem solid rgba(var(--color-foreground), .2);
  9142.                padding: 1.5rem 0
  9143.            }
  9144.  
  9145.            cart-drawer-items.is-empty+.drawer__footer {
  9146.                display: none
  9147.            }
  9148.  
  9149.            .drawer__footer>details {
  9150.                margin-top: -1.5rem;
  9151.                border-bottom: .1rem solid rgba(var(--color-foreground), .2)
  9152.            }
  9153.  
  9154.            .drawer__footer>details[open] {
  9155.                padding-bottom: 1.5rem
  9156.            }
  9157.  
  9158.            .drawer__footer summary {
  9159.                display: flex;
  9160.                position: relative;
  9161.                line-height: 1;
  9162.                padding: 1.5rem 0
  9163.            }
  9164.  
  9165.            .drawer__footer>details+.cart-drawer__footer {
  9166.                padding-top: 1.5rem
  9167.            }
  9168.  
  9169.            cart-drawer {
  9170.                position: fixed;
  9171.                top: 0;
  9172.                left: 0;
  9173.                width: 100vw;
  9174.                height: 100%
  9175.            }
  9176.  
  9177.            .cart-drawer__overlay {
  9178.                position: fixed;
  9179.                top: 0;
  9180.                right: 0;
  9181.                bottom: 0;
  9182.                left: 0
  9183.            }
  9184.  
  9185.            .cart-drawer__overlay:empty {
  9186.                display: block
  9187.            }
  9188.  
  9189.            .cart-drawer__form {
  9190.                flex-grow: 1;
  9191.                display: flex;
  9192.                flex-wrap: wrap
  9193.            }
  9194.  
  9195.            .cart-drawer__collection {
  9196.                margin: 0 2.5rem 1.5rem
  9197.            }
  9198.  
  9199.            .cart-drawer .drawer__cart-items-wrapper {
  9200.                flex-grow: 1
  9201.            }
  9202.  
  9203.            .cart-drawer .cart-items,
  9204.            .cart-drawer tbody {
  9205.                display: block;
  9206.                width: 100%
  9207.            }
  9208.  
  9209.            .cart-drawer thead {
  9210.                display: inline-table;
  9211.                width: 100%;
  9212.                position: sticky;
  9213.                top: 0;
  9214.                z-index: 2
  9215.            }
  9216.  
  9217.            cart-drawer-items {
  9218.                overflow: auto;
  9219.                flex: 1
  9220.            }
  9221.  
  9222.            @media screen and (max-height: 650px) {
  9223.                cart-drawer-items {
  9224.                    overflow: visible
  9225.                }
  9226.  
  9227.                .drawer__inner {
  9228.                    overflow: scroll
  9229.                }
  9230.            }
  9231.  
  9232.            .cart-drawer .cart-item {
  9233.                display: grid;
  9234.                grid-template: repeat(2, auto) / repeat(4, 1fr);
  9235.                gap: 1.5rem;
  9236.                margin-bottom: 0
  9237.            }
  9238.  
  9239.            .cart-drawer .cart-item:last-child {
  9240.                margin-bottom: 1rem
  9241.            }
  9242.  
  9243.            .cart-drawer .cart-item__media {
  9244.                grid-row: 1 / 3
  9245.            }
  9246.  
  9247.            .cart-drawer .cart-item__image {
  9248.                max-width: 100%
  9249.            }
  9250.  
  9251.            .cart-drawer .cart-items thead {
  9252.                margin-bottom: .5rem
  9253.            }
  9254.  
  9255.            .cart-drawer .cart-items thead th:first-child,
  9256.            .cart-drawer .cart-items thead th:last-child {
  9257.                width: 0;
  9258.                padding: 0
  9259.            }
  9260.  
  9261.            .cart-drawer .cart-items thead th:nth-child(2) {
  9262.                width: 50%;
  9263.                padding-left: 0
  9264.            }
  9265.  
  9266.            .cart-drawer .cart-items thead tr {
  9267.                display: table-row;
  9268.                margin-bottom: 0
  9269.            }
  9270.  
  9271.            .cart-drawer .cart-items th {
  9272.                border-bottom: .1rem solid rgba(var(--color-foreground), .08)
  9273.            }
  9274.  
  9275.            .cart-drawer .cart-item:last-child {
  9276.                margin-bottom: 1.5rem
  9277.            }
  9278.  
  9279.            .cart-drawer .cart-item .loading__spinner {
  9280.                right: 5px;
  9281.                padding-top: 2.5rem
  9282.            }
  9283.  
  9284.            .cart-drawer .cart-items td {
  9285.                padding-top: 2rem
  9286.            }
  9287.  
  9288.            .cart-drawer .cart-item>td+td {
  9289.                padding-left: 1rem
  9290.            }
  9291.  
  9292.            .cart-drawer .cart-item__details {
  9293.                width: auto;
  9294.                grid-column: 2 / 4
  9295.            }
  9296.  
  9297.            .cart-drawer .cart-item__totals {
  9298.                pointer-events: none;
  9299.                display: flex;
  9300.                align-items: flex-start;
  9301.                justify-content: flex-end
  9302.            }
  9303.  
  9304.            .cart-drawer.cart-drawer .cart-item__price-wrapper>*:only-child {
  9305.                margin-top: 0
  9306.            }
  9307.  
  9308.            .cart-drawer .cart-item__price-wrapper .cart-item__discounted-prices {
  9309.                display: flex;
  9310.                flex-direction: column;
  9311.                gap: .6rem
  9312.            }
  9313.  
  9314.            .cart-drawer .unit-price {
  9315.                margin-top: .6rem
  9316.            }
  9317.  
  9318.            .cart-drawer .cart-items .cart-item__quantity {
  9319.                padding-top: 0;
  9320.                grid-column: 2 / 5
  9321.            }
  9322.  
  9323.            @media screen and (max-width: 749px) {
  9324.                .cart-drawer .cart-item cart-remove-button {
  9325.                    margin-left: 0
  9326.                }
  9327.            }
  9328.  
  9329.            .cart-drawer__footer>*+* {
  9330.                margin-top: 1rem
  9331.            }
  9332.  
  9333.            .cart-drawer .totals {
  9334.                justify-content: space-between
  9335.            }
  9336.  
  9337.            .cart-drawer .price {
  9338.                line-height: 1
  9339.            }
  9340.  
  9341.            .cart-drawer .tax-note {
  9342.                margin: 1.2rem 0 1rem auto;
  9343.                text-align: left
  9344.            }
  9345.  
  9346.            .cart-drawer .product-option dd {
  9347.                word-break: break-word
  9348.            }
  9349.  
  9350.            .cart-drawer details[open]>summary .icon-caret {
  9351.                transform: rotate(180deg)
  9352.            }
  9353.  
  9354.            .cart-drawer .cart__checkout-button {
  9355.                max-width: none
  9356.            }
  9357.  
  9358.            .drawer__footer .cart__dynamic-checkout-buttons {
  9359.                max-width: 100%
  9360.            }
  9361.  
  9362.            .drawer__footer #dynamic-checkout-cart ul {
  9363.                flex-wrap: wrap !important;
  9364.                flex-direction: row !important;
  9365.                margin: .5rem -.5rem 0 0 !important;
  9366.                gap: .5rem
  9367.            }
  9368.  
  9369.            .drawer__footer [data-shopify-buttoncontainer] {
  9370.                justify-content: flex-start
  9371.            }
  9372.  
  9373.            .drawer__footer #dynamic-checkout-cart ul>li {
  9374.                flex-basis: calc(50% - .5rem) !important;
  9375.                margin: 0 !important
  9376.            }
  9377.  
  9378.            .drawer__footer #dynamic-checkout-cart ul>li:only-child {
  9379.                flex-basis: 100% !important;
  9380.                margin-right: .5rem !important
  9381.            }
  9382.  
  9383.            @media screen and (min-width: 750px) {
  9384.                .drawer__footer #dynamic-checkout-cart ul>li {
  9385.                    flex-basis: calc(100% / 3 - .5rem) !important;
  9386.                    margin: 0 !important
  9387.                }
  9388.  
  9389.                .drawer__footer #dynamic-checkout-cart ul>li:first-child:nth-last-child(2),
  9390.                .drawer__footer #dynamic-checkout-cart ul>li:first-child:nth-last-child(2)~li,
  9391.                .drawer__footer #dynamic-checkout-cart ul>li:first-child:nth-last-child(4),
  9392.                .drawer__footer #dynamic-checkout-cart ul>li:first-child:nth-last-child(4)~li {
  9393.                    flex-basis: calc(50% - .5rem) !important
  9394.                }
  9395.            }
  9396.  
  9397.            cart-drawer-items::-webkit-scrollbar {
  9398.                width: 3px
  9399.            }
  9400.  
  9401.            cart-drawer-items::-webkit-scrollbar-thumb {
  9402.                background-color: rgba(var(--color-foreground), .7);
  9403.                border-radius: 100px
  9404.            }
  9405.  
  9406.            cart-drawer-items::-webkit-scrollbar-track-piece {
  9407.                margin-top: 31px
  9408.            }
  9409.  
  9410.            .cart-drawer .quantity-popover-container {
  9411.                padding: 0
  9412.            }
  9413.  
  9414.            .cart-drawer .quantity-popover__info.global-settings-popup {
  9415.                transform: translateY(0);
  9416.                right: 0
  9417.            }
  9418.  
  9419.            .cart-drawer .cart-item__error {
  9420.                margin-top: .8rem
  9421.            }
  9422.  
  9423.            .cart-drawer .quantity-popover__info+.cart-item__error {
  9424.                margin-top: .2rem
  9425.            }
  9426.  
  9427.            @media screen and (min-width: 750px) {
  9428.                .cart-drawer .cart-item__quantity--info quantity-popover>* {
  9429.                    padding-left: 0
  9430.                }
  9431.  
  9432.                .cart-drawer .cart-item__error {
  9433.                    margin-left: 0
  9434.                }
  9435.            }
  9436.        </style>
  9437.        <style>
  9438.            .cart {
  9439.                position: relative;
  9440.                display: block
  9441.            }
  9442.  
  9443.            .cart__empty-text,
  9444.            .is-empty .cart__contents,
  9445.            cart-items.is-empty .title-wrapper-with-link,
  9446.            .is-empty .cart__footer {
  9447.                display: none
  9448.            }
  9449.  
  9450.            .is-empty .cart__empty-text,
  9451.            .is-empty .cart__warnings {
  9452.                display: block
  9453.            }
  9454.  
  9455.            .cart__warnings {
  9456.                display: none;
  9457.                text-align: center;
  9458.                padding: 3rem 0 1rem
  9459.            }
  9460.  
  9461.            .cart__empty-text {
  9462.                margin: 4.5rem 0 2rem
  9463.            }
  9464.  
  9465.            .cart__contents>*+* {
  9466.                margin-top: 2.5rem
  9467.            }
  9468.  
  9469.            .cart__login-title {
  9470.                margin: 5.5rem 0 .5rem
  9471.            }
  9472.  
  9473.            .cart__login-paragraph {
  9474.                margin-top: .8rem
  9475.            }
  9476.  
  9477.            .cart__login-paragraph a {
  9478.                font-size: inherit
  9479.            }
  9480.  
  9481.            @media screen and (min-width: 990px) {
  9482.                .cart__warnings {
  9483.                    padding: 7rem 0 1rem
  9484.                }
  9485.  
  9486.                .cart__empty-text {
  9487.                    margin: 0 0 3rem
  9488.                }
  9489.            }
  9490.  
  9491.            cart-items {
  9492.                display: block
  9493.            }
  9494.  
  9495.            .cart__items {
  9496.                position: relative;
  9497.                padding-bottom: 3rem;
  9498.                border-bottom: .1rem solid rgba(var(--color-foreground), .08)
  9499.            }
  9500.  
  9501.            .cart__items--disabled {
  9502.                pointer-events: none
  9503.            }
  9504.  
  9505.            .cart__footer-wrapper:last-child .cart__footer {
  9506.                padding-bottom: 5rem
  9507.            }
  9508.  
  9509.            .cart__footer>div:only-child {
  9510.                margin-left: auto
  9511.            }
  9512.  
  9513.            .cart__footer>*+* {
  9514.                margin-top: 6.5rem
  9515.            }
  9516.  
  9517.            .cart__footer .discounts {
  9518.                margin-bottom: 1rem
  9519.            }
  9520.  
  9521.            .cart__note {
  9522.                height: fit-content;
  9523.                top: 2.5rem
  9524.            }
  9525.  
  9526.            .cart__note label {
  9527.                display: flex;
  9528.                align-items: flex-end;
  9529.                position: absolute;
  9530.                line-height: 1;
  9531.                height: 1.8rem;
  9532.                top: -3rem;
  9533.                color: rgba(var(--color-foreground), .75)
  9534.            }
  9535.  
  9536.            .cart__note .field__input {
  9537.                height: 100%;
  9538.                position: relative;
  9539.                border-radius: var(--inputs-radius);
  9540.                padding: 1rem 2rem
  9541.            }
  9542.  
  9543.            .cart__note .text-area {
  9544.                resize: vertical
  9545.            }
  9546.  
  9547.            .cart__note:after,
  9548.            .cart__note:hover.cart__note:after,
  9549.            .cart__note:before,
  9550.            .cart__note:hover.cart__note:before,
  9551.            .cart__note .field__input:focus,
  9552.            .cart__note .field__input {
  9553.                border-bottom-right-radius: 0
  9554.            }
  9555.  
  9556.            @media screen and (min-width: 750px) {
  9557.                .cart__items {
  9558.                    grid-column-start: 1;
  9559.                    grid-column-end: 3;
  9560.                    padding-bottom: 4rem
  9561.                }
  9562.  
  9563.                .cart__contents>*+* {
  9564.                    margin-top: 0
  9565.                }
  9566.  
  9567.                .cart__items+.cart__footer {
  9568.                    grid-column: 2
  9569.                }
  9570.  
  9571.                .cart__footer {
  9572.                    display: flex;
  9573.                    justify-content: space-between;
  9574.                    border: 0
  9575.                }
  9576.  
  9577.                .cart__footer-wrapper:last-child {
  9578.                    padding-top: 0
  9579.                }
  9580.  
  9581.                .cart__footer>* {
  9582.                    width: 35rem
  9583.                }
  9584.  
  9585.                .cart__footer>*+* {
  9586.                    margin-left: 4rem;
  9587.                    margin-top: 0
  9588.                }
  9589.            }
  9590.  
  9591.            .cart__ctas button {
  9592.                width: 100%
  9593.            }
  9594.  
  9595.            .cart__ctas>*:not(noscript:first-child)+* {
  9596.                margin-top: 1rem
  9597.            }
  9598.  
  9599.            .cart__update-button {
  9600.                margin-bottom: 1rem
  9601.            }
  9602.  
  9603.            .cart__dynamic-checkout-buttons {
  9604.                max-width: 36rem;
  9605.                margin: 0 auto
  9606.            }
  9607.  
  9608.            .cart__dynamic-checkout-buttons:has(.dynamic-checkout__content:empty) {
  9609.                margin: 0
  9610.            }
  9611.  
  9612.            .cart__dynamic-checkout-buttons div[role=button] {
  9613.                border-radius: var(--buttons-radius-outset) !important
  9614.            }
  9615.  
  9616.            .cart__blocks>*+* {
  9617.                margin-top: 1rem
  9618.            }
  9619.  
  9620.            .cart-note__label {
  9621.                display: inline-block;
  9622.                margin-bottom: 1rem;
  9623.                line-height: calc(1 + 1 / var(--font-body-scale))
  9624.            }
  9625.  
  9626.            .tax-note {
  9627.                margin: 2.2rem 0 1.6rem auto;
  9628.                text-align: center;
  9629.                display: block
  9630.            }
  9631.  
  9632.            .cart__checkout-button {
  9633.                max-width: 36rem
  9634.            }
  9635.  
  9636.            .cart__ctas {
  9637.                text-align: center
  9638.            }
  9639.  
  9640.            @media screen and (min-width: 750px) {
  9641.                .cart-note {
  9642.                    max-width: 35rem
  9643.                }
  9644.  
  9645.                .cart__update-button {
  9646.                    margin-bottom: 0;
  9647.                    margin-right: .8rem
  9648.                }
  9649.  
  9650.                .tax-note {
  9651.                    margin-bottom: 2.2rem;
  9652.                    text-align: right
  9653.                }
  9654.  
  9655.                [data-shopify-buttoncontainer] {
  9656.                    justify-content: flex-end
  9657.                }
  9658.  
  9659.                .cart__ctas {
  9660.                    display: flex;
  9661.                    gap: 1rem
  9662.                }
  9663.            }
  9664.        </style>
  9665.        <style>
  9666.            .totals {
  9667.                display: flex;
  9668.                justify-content: center;
  9669.                align-items: flex-end
  9670.            }
  9671.  
  9672.            .totals>* {
  9673.                font-size: 1.6rem;
  9674.                margin: 0
  9675.            }
  9676.  
  9677.            .totals>h2 {
  9678.                font-size: calc(var(--font-heading-scale) * 1.6rem)
  9679.            }
  9680.  
  9681.            .totals * {
  9682.                line-height: 1
  9683.            }
  9684.  
  9685.            .totals>*+* {
  9686.                margin-left: 2rem
  9687.            }
  9688.  
  9689.            .totals__total {
  9690.                margin-top: .5rem
  9691.            }
  9692.  
  9693.            .totals__total-value {
  9694.                font-size: 1.8rem
  9695.            }
  9696.  
  9697.            .cart__ctas+.totals {
  9698.                margin-top: 2rem
  9699.            }
  9700.  
  9701.            @media all and (min-width: 750px) {
  9702.                .totals {
  9703.                    justify-content: flex-end
  9704.                }
  9705.            }
  9706.        </style>
  9707.        <style>
  9708.            .price {
  9709.                font-size: 1.6rem;
  9710.                letter-spacing: .1rem;
  9711.                line-height: calc(1 + .5 / var(--font-body-scale));
  9712.                color: rgb(var(--color-foreground))
  9713.            }
  9714.  
  9715.            .price>* {
  9716.                display: inline-block;
  9717.                vertical-align: top
  9718.            }
  9719.  
  9720.            .price.price--unavailable {
  9721.                visibility: hidden
  9722.            }
  9723.  
  9724.            .price--end {
  9725.                text-align: right
  9726.            }
  9727.  
  9728.            .price .price-item {
  9729.                display: inline-block;
  9730.                margin: 0 1rem 0 0
  9731.            }
  9732.  
  9733.            .price__regular .price-item--regular {
  9734.                margin-right: 0
  9735.            }
  9736.  
  9737.            .price:not(.price--show-badge) .price-item--last:last-of-type {
  9738.                margin: 0
  9739.            }
  9740.  
  9741.            @media screen and (min-width: 750px) {
  9742.                .price {
  9743.                    margin-bottom: 0
  9744.                }
  9745.            }
  9746.  
  9747.            .price--large {
  9748.                font-size: 1.6rem;
  9749.                line-height: calc(1 + .5 / var(--font-body-scale));
  9750.                letter-spacing: .13rem
  9751.            }
  9752.  
  9753.            @media screen and (min-width: 750px) {
  9754.                .price--large {
  9755.                    font-size: 1.8rem
  9756.                }
  9757.            }
  9758.  
  9759.            .price--sold-out .price__availability,
  9760.            .price__regular {
  9761.                display: block
  9762.            }
  9763.  
  9764.            .price__sale,
  9765.            .price__availability,
  9766.            .price .price__badge-sale,
  9767.            .price .price__badge-sold-out,
  9768.            .price--on-sale .price__regular,
  9769.            .price--on-sale .price__availability {
  9770.                display: none
  9771.            }
  9772.  
  9773.            .price--sold-out .price__badge-sold-out,
  9774.            .price--on-sale .price__badge-sale,
  9775.            .volume-pricing--sale-badge .price__badge-sale {
  9776.                display: inline-block
  9777.            }
  9778.  
  9779.            .volume-pricing--sale-badge .price__badge-sale {
  9780.                margin-left: .5rem
  9781.            }
  9782.  
  9783.            .price--on-sale .price__sale {
  9784.                display: initial;
  9785.                flex-direction: row;
  9786.                flex-wrap: wrap
  9787.            }
  9788.  
  9789.            .price--center {
  9790.                display: initial;
  9791.                justify-content: center
  9792.            }
  9793.  
  9794.            .price--on-sale .price-item--regular {
  9795.                text-decoration: line-through;
  9796.                color: rgba(var(--color-foreground), .75);
  9797.                font-size: 1.3rem
  9798.            }
  9799.  
  9800.            .unit-price {
  9801.                display: block;
  9802.                font-size: 1.1rem;
  9803.                letter-spacing: .04rem;
  9804.                line-height: calc(1 + .2 / var(--font-body-scale));
  9805.                margin-top: .2rem;
  9806.                text-transform: uppercase;
  9807.                color: rgba(var(--color-foreground), .7)
  9808.            }
  9809.        </style>
  9810.        <style>
  9811.            .discounts {
  9812.                font-size: 1.2rem;
  9813.            }
  9814.  
  9815.            .discounts__discount {
  9816.                display: flex;
  9817.                align-items: center;
  9818.                line-height: calc(1 + 0.5 / var(--font-body-scale));
  9819.            }
  9820.  
  9821.            .discounts__discount svg {
  9822.                color: rgba(var(--color-button), var(--alpha-button-background));
  9823.            }
  9824.  
  9825.            .discounts__discount--position {
  9826.                justify-content: center;
  9827.            }
  9828.  
  9829.            @media screen and (min-width: 750px) {
  9830.                .discounts__discount--position {
  9831.                    justify-content: flex-end;
  9832.                }
  9833.            }
  9834.  
  9835.            .discounts__discount>.icon {
  9836.                color: rgb(var(--color-foreground));
  9837.                width: 1.2rem;
  9838.                height: 1.2rem;
  9839.                margin-right: 0.7rem;
  9840.            }
  9841.        </style>
  9842.        <style>
  9843.            p img {
  9844.                width: 100%;
  9845.            }
  9846.  
  9847.            header-drawer {
  9848.                justify-self: start;
  9849.                margin-left: -1.2rem;
  9850.            }
  9851.  
  9852.            @media screen and (min-width: 990px) {
  9853.                header-drawer {
  9854.                    display: none;
  9855.                }
  9856.            }
  9857.  
  9858.            .menu-drawer-container {
  9859.                display: flex;
  9860.            }
  9861.  
  9862.            .list-menu {
  9863.                list-style: none;
  9864.                padding: 0;
  9865.                margin: 0;
  9866.            }
  9867.  
  9868.            .list-menu--inline {
  9869.                display: inline-flex;
  9870.                flex-wrap: wrap;
  9871.            }
  9872.  
  9873.            summary.list-menu__item {
  9874.                padding-right: 2.7rem;
  9875.            }
  9876.  
  9877.            .list-menu__item {
  9878.                display: flex;
  9879.                align-items: center;
  9880.                line-height: calc(1 + 0.3 / var(--font-body-scale));
  9881.            }
  9882.  
  9883.            .list-menu__item--link {
  9884.                text-decoration: none;
  9885.                padding-bottom: 1rem;
  9886.                padding-top: 1rem;
  9887.                line-height: calc(1 + 0.8 / var(--font-body-scale));
  9888.            }
  9889.  
  9890.            @media screen and (min-width: 750px) {
  9891.                .list-menu__item--link {
  9892.                    padding-bottom: 0.5rem;
  9893.                    padding-top: 0.5rem;
  9894.                }
  9895.            }
  9896.        </style>
  9897.        <style data-shopify>
  9898.            .header {
  9899.                padding: 10px 3rem 10px 3rem;
  9900.            }
  9901.  
  9902.            .section-header {
  9903.                position: sticky;
  9904.                /* This is for fixing a Safari z-index issue. PR #2147 */
  9905.                margin-bottom: 0px;
  9906.            }
  9907.  
  9908.            @media screen and (min-width: 750px) {
  9909.                .section-header {
  9910.                    margin-bottom: 0px;
  9911.                }
  9912.            }
  9913.  
  9914.            @media screen and (min-width: 990px) {
  9915.                .header {
  9916.                    padding-top: 20px;
  9917.                    padding-bottom: 20px;
  9918.                }
  9919.            }
  9920.        </style>
  9921.        <script>
  9922.            /** Shopify CDN: Minification failed
  9923.        
  9924.        Line 13:0 Transforming class syntax to the configured target environment ("es5") is not supported yet
  9925.        Line 14:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9926.        Line 23:12 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9927.        Line 29:10 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9928.        Line 39:7 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9929.        Line 47:0 Transforming class syntax to the configured target environment ("es5") is not supported yet
  9930.        Line 48:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9931.        Line 53:10 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9932.        
  9933.        **/
  9934.            class DetailsDisclosure extends HTMLElement {
  9935.                constructor() {
  9936.                    super();
  9937.                    this.mainDetailsToggle = this.querySelector('details');
  9938.                    this.content = this.mainDetailsToggle.querySelector('summary').nextElementSibling;
  9939.  
  9940.                    this.mainDetailsToggle.addEventListener('focusout', this.onFocusOut.bind(this));
  9941.                    this.mainDetailsToggle.addEventListener('toggle', this.onToggle.bind(this));
  9942.                }
  9943.  
  9944.                onFocusOut() {
  9945.                    setTimeout(() => {
  9946.                        if (!this.contains(document.activeElement)) this.close();
  9947.                    });
  9948.                }
  9949.  
  9950.                onToggle() {
  9951.                    if (!this.animations) this.animations = this.content.getAnimations();
  9952.  
  9953.                    if (this.mainDetailsToggle.hasAttribute('open')) {
  9954.                        this.animations.forEach((animation) => animation.play());
  9955.                    } else {
  9956.                        this.animations.forEach((animation) => animation.cancel());
  9957.                    }
  9958.                }
  9959.  
  9960.                close() {
  9961.                    this.mainDetailsToggle.removeAttribute('open');
  9962.                    this.mainDetailsToggle.querySelector('summary').setAttribute('aria-expanded', false);
  9963.                }
  9964.            }
  9965.  
  9966.            customElements.define('details-disclosure', DetailsDisclosure);
  9967.  
  9968.            class HeaderMenu extends DetailsDisclosure {
  9969.                constructor() {
  9970.                    super();
  9971.                    this.header = document.querySelector('.header-wrapper');
  9972.                }
  9973.  
  9974.                onToggle() {
  9975.                    if (!this.header) return;
  9976.                    this.header.preventHide = this.mainDetailsToggle.open;
  9977.  
  9978.                    if (document.documentElement.style.getPropertyValue('--header-bottom-position-desktop') !== '') return;
  9979.                    document.documentElement.style.setProperty(
  9980.                        '--header-bottom-position-desktop',
  9981.                        `${Math.floor(this.header.getBoundingClientRect().bottom)}px`
  9982.                    );
  9983.                }
  9984.            }
  9985.  
  9986.            customElements.define('header-menu', HeaderMenu);
  9987.        </script>
  9988.        <script>
  9989.            /** Shopify CDN: Minification failed
  9990.        
  9991.        Line 13:0 Transforming class syntax to the configured target environment ("es5") is not supported yet
  9992.        Line 14:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9993.        Line 26:8 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9994.        Line 30:16 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9995.        Line 35:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9996.        Line 39:6 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9997.        Line 51:7 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  9998.        Line 51:20 Transforming default arguments to the configured target environment ("es5") is not supported yet
  9999.        
  10000.        **/
  10001.            class DetailsModal extends HTMLElement {
  10002.                constructor() {
  10003.                    super();
  10004.                    this.detailsContainer = this.querySelector('details');
  10005.                    this.summaryToggle = this.querySelector('summary');
  10006.  
  10007.                    this.detailsContainer.addEventListener('keyup', (event) => event.code.toUpperCase() === 'ESCAPE' && this.close());
  10008.                    this.summaryToggle.addEventListener('click', this.onSummaryClick.bind(this));
  10009.                    this.querySelector('button[type="button"]').addEventListener('click', this.close.bind(this));
  10010.  
  10011.                    this.summaryToggle.setAttribute('role', 'button');
  10012.                }
  10013.  
  10014.                isOpen() {
  10015.                    return this.detailsContainer.hasAttribute('open');
  10016.                }
  10017.  
  10018.                onSummaryClick(event) {
  10019.                    event.preventDefault();
  10020.                    event.target.closest('details').hasAttribute('open') ? this.close() : this.open(event);
  10021.                }
  10022.  
  10023.                onBodyClick(event) {
  10024.                    if (!this.contains(event.target) || event.target.classList.contains('modal-overlay')) this.close(false);
  10025.                }
  10026.  
  10027.                open(event) {
  10028.                    this.onBodyClickEvent = this.onBodyClickEvent || this.onBodyClick.bind(this);
  10029.                    event.target.closest('details').setAttribute('open', true);
  10030.                    document.body.addEventListener('click', this.onBodyClickEvent);
  10031.                    document.body.classList.add('overflow-hidden');
  10032.  
  10033.                    trapFocus(
  10034.                        this.detailsContainer.querySelector('[tabindex="-1"]'),
  10035.                        this.detailsContainer.querySelector('input:not([type="hidden"])')
  10036.                    );
  10037.                }
  10038.  
  10039.                close(focusToggle = true) {
  10040.                    removeTrapFocus(focusToggle ? this.summaryToggle : null);
  10041.                    this.detailsContainer.removeAttribute('open');
  10042.                    document.body.removeEventListener('click', this.onBodyClickEvent);
  10043.                    document.body.classList.remove('overflow-hidden');
  10044.                }
  10045.            }
  10046.  
  10047.            customElements.define('details-modal', DetailsModal);
  10048.        </script>
  10049.        <script>
  10050.            /** Shopify CDN: Minification failed
  10051.        
  10052.        Line 16:0 Transforming class syntax to the configured target environment ("es5") is not supported yet
  10053.        Line 17:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10054.        Line 30:6 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10055.        Line 45:7 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10056.        Line 52:16 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10057.        Line 65:21 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10058.        Line 80:21 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10059.        Line 80:37 Transforming default arguments to the configured target environment ("es5") is not supported yet
  10060.        Line 84:17 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10061.        Line 85:4 Transforming const to the configured target environment ("es5") is not supported yet
  10062.        ... and 2 more hidden warnings
  10063.        
  10064.        **/
  10065.            class CartNotification extends HTMLElement {
  10066.                constructor() {
  10067.                    super();
  10068.  
  10069.                    this.notification = document.getElementById('cart-notification');
  10070.                    this.header = document.querySelector('sticky-header');
  10071.                    this.onBodyClick = this.handleBodyClick.bind(this);
  10072.  
  10073.                    this.notification.addEventListener('keyup', (evt) => evt.code === 'Escape' && this.close());
  10074.                    this.querySelectorAll('button[type="button"]').forEach((closeButton) =>
  10075.                        closeButton.addEventListener('click', this.close.bind(this))
  10076.                    );
  10077.                }
  10078.  
  10079.                open() {
  10080.                    this.notification.classList.add('animate', 'active');
  10081.  
  10082.                    this.notification.addEventListener(
  10083.                        'transitionend',
  10084.                        () => {
  10085.                            this.notification.focus();
  10086.                            trapFocus(this.notification);
  10087.                        },
  10088.                        { once: true }
  10089.                    );
  10090.  
  10091.                    document.body.addEventListener('click', this.onBodyClick);
  10092.                }
  10093.  
  10094.                close() {
  10095.                    this.notification.classList.remove('active');
  10096.                    document.body.removeEventListener('click', this.onBodyClick);
  10097.  
  10098.                    removeTrapFocus(this.activeElement);
  10099.                }
  10100.  
  10101.                renderContents(parsedState) {
  10102.                    this.cartItemKey = parsedState.key;
  10103.                    this.getSectionsToRender().forEach((section) => {
  10104.                        document.getElementById(section.id).innerHTML = this.getSectionInnerHTML(
  10105.                            parsedState.sections[section.id],
  10106.                            section.selector
  10107.                        );
  10108.                    });
  10109.  
  10110.                    if (this.header) this.header.reveal();
  10111.                    this.open();
  10112.                }
  10113.  
  10114.                getSectionsToRender() {
  10115.                    return [
  10116.                        {
  10117.                            id: 'cart-notification-product',
  10118.                            selector: `[id="cart-notification-product-${this.cartItemKey}"]`,
  10119.                        },
  10120.                        {
  10121.                            id: 'cart-notification-button',
  10122.                        },
  10123.                        {
  10124.                            id: 'cart-icon-bubble',
  10125.                        },
  10126.                    ];
  10127.                }
  10128.  
  10129.                getSectionInnerHTML(html, selector = '.shopify-section') {
  10130.                    return new DOMParser().parseFromString(html, 'text/html').querySelector(selector).innerHTML;
  10131.                }
  10132.  
  10133.                handleBodyClick(evt) {
  10134.                    const target = evt.target;
  10135.                    if (target !== this.notification && !target.closest('cart-notification')) {
  10136.                        const disclosure = target.closest('details-disclosure, header-menu');
  10137.                        this.activeElement = disclosure ? disclosure.querySelector('summary') : null;
  10138.                        this.close();
  10139.                    }
  10140.                }
  10141.  
  10142.                setActiveElement(element) {
  10143.                    this.activeElement = element;
  10144.                }
  10145.            }
  10146.  
  10147.            customElements.define('cart-notification', CartNotification);
  10148.        </script>
  10149.        <script>
  10150.            /** Shopify CDN: Minification failed
  10151.        
  10152.        Line 12:0 Transforming class syntax to the configured target environment ("es5") is not supported yet
  10153.        Line 13:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10154.        Line 29:19 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10155.        Line 30:4 Transforming const to the configured target environment ("es5") is not supported yet
  10156.        Line 38:10 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10157.        Line 42:17 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10158.        Line 46:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10159.        
  10160.        **/
  10161.            class SearchForm extends HTMLElement {
  10162.                constructor() {
  10163.                    super();
  10164.                    this.input = this.querySelector('input[type="search"]');
  10165.                    this.resetButton = this.querySelector('button[type="reset"]');
  10166.  
  10167.                    if (this.input) {
  10168.                        this.input.form.addEventListener('reset', this.onFormReset.bind(this));
  10169.                        this.input.addEventListener(
  10170.                            'input',
  10171.                            debounce((event) => {
  10172.                                this.onChange(event);
  10173.                            }, 300).bind(this)
  10174.                        );
  10175.                    }
  10176.                }
  10177.  
  10178.                toggleResetButton() {
  10179.                    const resetIsHidden = this.resetButton.classList.contains('hidden');
  10180.                    if (this.input.value.length > 0 && resetIsHidden) {
  10181.                        this.resetButton.classList.remove('hidden');
  10182.                    } else if (this.input.value.length === 0 && !resetIsHidden) {
  10183.                        this.resetButton.classList.add('hidden');
  10184.                    }
  10185.                }
  10186.  
  10187.                onChange() {
  10188.                    this.toggleResetButton();
  10189.                }
  10190.  
  10191.                shouldResetForm() {
  10192.                    return !document.querySelector('[aria-selected="true"] a');
  10193.                }
  10194.  
  10195.                onFormReset(event) {
  10196.                    // Prevent default so the form reset doesn't set the value gotten from the url on page load
  10197.                    event.preventDefault();
  10198.                    // Don't reset if the user has selected an element on the predictive search dropdown
  10199.                    if (this.shouldResetForm()) {
  10200.                        this.input.value = '';
  10201.                        this.input.focus();
  10202.                        this.toggleResetButton();
  10203.                    }
  10204.                }
  10205.            }
  10206.  
  10207.            customElements.define('search-form', SearchForm);
  10208.        </script>
  10209.        <script>
  10210.            /** Shopify CDN: Minification failed
  10211.        
  10212.        Line 16:0 Transforming class syntax to the configured target environment ("es5") is not supported yet
  10213.        Line 17:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10214.        Line 25:32 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10215.        Line 26:4 Transforming const to the configured target environment ("es5") is not supported yet
  10216.        Line 41:6 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10217.        Line 43:4 Transforming const to the configured target environment ("es5") is not supported yet
  10218.        Line 53:8 Transforming const to the configured target environment ("es5") is not supported yet
  10219.        Line 56:8 Transforming const to the configured target environment ("es5") is not supported yet
  10220.        Line 65:7 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10221.        Line 71:25 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  10222.        ... and 10 more hidden warnings
  10223.        
  10224.        **/
  10225.            class CartDrawer extends HTMLElement {
  10226.                constructor() {
  10227.                    super();
  10228.  
  10229.                    this.addEventListener('keyup', (evt) => evt.code === 'Escape' && this.close());
  10230.                    this.querySelector('#CartDrawer-Overlay').addEventListener('click', this.close.bind(this));
  10231.                    this.setHeaderCartIconAccessibility();
  10232.                }
  10233.  
  10234.                setHeaderCartIconAccessibility() {
  10235.                    const cartLink = document.querySelector('#cart-icon-bubble');
  10236.                    cartLink.setAttribute('role', 'button');
  10237.                    cartLink.setAttribute('aria-haspopup', 'dialog');
  10238.                    cartLink.addEventListener('click', (event) => {
  10239.                        event.preventDefault();
  10240.                        this.open(cartLink);
  10241.                    });
  10242.                    cartLink.addEventListener('keydown', (event) => {
  10243.                        if (event.code.toUpperCase() === 'SPACE') {
  10244.                            event.preventDefault();
  10245.                            this.open(cartLink);
  10246.                        }
  10247.                    });
  10248.                }
  10249.  
  10250.                open(triggeredBy) {
  10251.                    if (triggeredBy) this.setActiveElement(triggeredBy);
  10252.                    const cartDrawerNote = this.querySelector('[id^="Details-"] summary');
  10253.                    if (cartDrawerNote && !cartDrawerNote.hasAttribute('role')) this.setSummaryAccessibility(cartDrawerNote);
  10254.                    // here the animation doesn't seem to always get triggered. A timeout seem to help
  10255.                    setTimeout(() => {
  10256.                        this.classList.add('animate', 'active');
  10257.                    });
  10258.  
  10259.                    this.addEventListener(
  10260.                        'transitionend',
  10261.                        () => {
  10262.                            const containerToTrapFocusOn = this.classList.contains('is-empty')
  10263.                                ? this.querySelector('.drawer__inner-empty')
  10264.                                : document.getElementById('CartDrawer');
  10265.                            const focusElement = this.querySelector('.drawer__inner') || this.querySelector('.drawer__close');
  10266.                            trapFocus(containerToTrapFocusOn, focusElement);
  10267.                        },
  10268.                        { once: true }
  10269.                    );
  10270.  
  10271.                    document.body.classList.add('overflow-hidden');
  10272.                }
  10273.  
  10274.                close() {
  10275.                    this.classList.remove('active');
  10276.                    removeTrapFocus(this.activeElement);
  10277.                    document.body.classList.remove('overflow-hidden');
  10278.                }
  10279.  
  10280.                setSummaryAccessibility(cartDrawerNote) {
  10281.                    cartDrawerNote.setAttribute('role', 'button');
  10282.                    cartDrawerNote.setAttribute('aria-expanded', 'false');
  10283.  
  10284.                    if (cartDrawerNote.nextElementSibling.getAttribute('id')) {
  10285.                        cartDrawerNote.setAttribute('aria-controls', cartDrawerNote.nextElementSibling.id);
  10286.                    }
  10287.  
  10288.                    cartDrawerNote.addEventListener('click', (event) => {
  10289.                        event.currentTarget.setAttribute('aria-expanded', !event.currentTarget.closest('details').hasAttribute('open'));
  10290.                    });
  10291.  
  10292.                    cartDrawerNote.parentElement.addEventListener('keyup', onKeyUpEscape);
  10293.                }
  10294.  
  10295.                renderContents(parsedState) {
  10296.                    this.querySelector('.drawer__inner').classList.contains('is-empty') &&
  10297.                        this.querySelector('.drawer__inner').classList.remove('is-empty');
  10298.                    this.productId = parsedState.id;
  10299.                    this.getSectionsToRender().forEach((section) => {
  10300.                        const sectionElement = section.selector
  10301.                            ? document.querySelector(section.selector)
  10302.                            : document.getElementById(section.id);
  10303.                        sectionElement.innerHTML = this.getSectionInnerHTML(parsedState.sections[section.id], section.selector);
  10304.                    });
  10305.  
  10306.                    setTimeout(() => {
  10307.                        this.querySelector('#CartDrawer-Overlay').addEventListener('click', this.close.bind(this));
  10308.                        this.open();
  10309.                    });
  10310.                }
  10311.  
  10312.                getSectionInnerHTML(html, selector = '.shopify-section') {
  10313.                    return new DOMParser().parseFromString(html, 'text/html').querySelector(selector).innerHTML;
  10314.                }
  10315.  
  10316.                getSectionsToRender() {
  10317.                    return [
  10318.                        {
  10319.                            id: 'cart-drawer',
  10320.                            selector: '#CartDrawer',
  10321.                        },
  10322.                        {
  10323.                            id: 'cart-icon-bubble',
  10324.                        },
  10325.                    ];
  10326.                }
  10327.  
  10328.                getSectionDOM(html, selector = '.shopify-section') {
  10329.                    return new DOMParser().parseFromString(html, 'text/html').querySelector(selector);
  10330.                }
  10331.  
  10332.                setActiveElement(element) {
  10333.                    this.activeElement = element;
  10334.                }
  10335.            }
  10336.  
  10337.            customElements.define('cart-drawer', CartDrawer);
  10338.  
  10339.            class CartDrawerItems extends CartItems {
  10340.                getSectionsToRender() {
  10341.                    return [
  10342.                        {
  10343.                            id: 'CartDrawer',
  10344.                            section: 'cart-drawer',
  10345.                            selector: '.drawer__inner',
  10346.                        },
  10347.                        {
  10348.                            id: 'cart-icon-bubble',
  10349.                            section: 'cart-icon-bubble',
  10350.                            selector: '.shopify-section',
  10351.                        },
  10352.                    ];
  10353.                }
  10354.            }
  10355.  
  10356.            customElements.define('cart-drawer-items', CartDrawerItems);
  10357.        </script>
  10358.        <svg xmlns="http://www.w3.org/2000/svg" class="hidden">
  10359.            <symbol id="icon-search" viewbox="0 0 18 19" fill="none">
  10360.                <path fill-rule="evenodd" clip-rule="evenodd"
  10361.                    d="M11.03 11.68A5.784 5.784 0 112.85 3.5a5.784 5.784 0 018.18 8.18zm.26 1.12a6.78 6.78 0 11.72-.7l5.4 5.4a.5.5 0 11-.71.7l-5.41-5.4z"
  10362.                    fill="currentColor" />
  10363.            </symbol>
  10364.  
  10365.            <symbol id="icon-reset" class="icon icon-close" fill="none" viewBox="0 0 18 18" stroke="currentColor">
  10366.                <circle r="8.5" cy="9" cx="9" stroke-opacity="0.2" />
  10367.                <path d="M6.82972 6.82915L1.17193 1.17097" stroke-linecap="round" stroke-linejoin="round"
  10368.                    transform="translate(5 5)" />
  10369.                <path d="M1.22896 6.88502L6.77288 1.11523" stroke-linecap="round" stroke-linejoin="round"
  10370.                    transform="translate(5 5)" />
  10371.            </symbol>
  10372.  
  10373.            <symbol id="icon-close" class="icon icon-close" fill="none" viewBox="0 0 18 17">
  10374.                <path
  10375.                    d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z"
  10376.                    fill="currentColor">
  10377.            </symbol>
  10378.        </svg><sticky-header data-sticky-type="on-scroll-up" class="header-wrapper color-inverse gradient">
  10379.            <header class="header header--top-center header--mobile-center page-width header--has-menu">
  10380.  
  10381.                <header-drawer data-breakpoint="tablet">
  10382.                    <details id="Details-menu-drawer-container" class="menu-drawer-container">
  10383.                        <summary class="header__icon header__icon--menu header__icon--summary link focus-inset"
  10384.                            aria-label="Menu">
  10385.                            <span>
  10386.  
  10387.                                <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"
  10388.                                    class="icon icon-close" fill="none" viewBox="0 0 18 17">
  10389.                                    <path
  10390.                                        d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z"
  10391.                                        fill="currentColor">
  10392.                                </svg>
  10393.  
  10394.                            </span>
  10395.                        </summary>
  10396.                        <div id="menu-drawer" class="gradient menu-drawer motion-reduce color-inverse">
  10397.                            <div class="menu-drawer__inner-container">
  10398.                                <div class="menu-drawer__navigation-container">
  10399.                                    <nav class="menu-drawer__navigation">
  10400.                                        <ul class="menu-drawer__menu has-submenu list-menu" role="list">
  10401.                                            <li><a id="HeaderDrawer-home" href="https://infinite-style.com/"
  10402.                                                    class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
  10403.                                                    KOITOTO
  10404.                                                </a></li>
  10405.                                            <li><a id="HeaderDrawer-catalog" href="https://infinite-style.com/"
  10406.                                                    class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
  10407.                                                    TOTO SLOT
  10408.                                                </a></li>
  10409.                                            <li><a id="HeaderDrawer-contact" href="https://infinite-style.com/"
  10410.                                                    class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
  10411.                                                    SITUS TOGEL ONLINE
  10412.                                                </a></li>
  10413.                                        </ul>
  10414.                                    </nav>
  10415.                                    <div class="menu-drawer__utility-links">
  10416.                                        <div class="menu-drawer__localization header-localization">
  10417.                                        </div>
  10418.                                        <ul class="list list-social list-unstyled" role="list"></ul>
  10419.                                    </div>
  10420.                                </div>
  10421.                            </div>
  10422.                        </div>
  10423.                    </details>
  10424.                </header-drawer>
  10425.  
  10426.  
  10427.                <details-modal class="header__search">
  10428.                    <details>
  10429.                        <summary
  10430.                            class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle"
  10431.                            aria-haspopup="dialog" aria-label="Search">
  10432.  
  10433.                        </summary>
  10434.                        <div class="search-modal modal__content gradient" role="dialog" aria-modal="true"
  10435.                            aria-label="Search">
  10436.                            <div class="modal-overlay"></div>
  10437.                            <div class="search-modal__content search-modal__content-bottom" tabindex="-1">
  10438.                                <predictive-search class="search-modal__form" data-loading-text="Loading...">
  10439.                                    <form action="https://infinite-style.com/" method="get" role="search"
  10440.                                        class="search search-modal__form">
  10441.                                        <div class="field">
  10442.                                            <input class="search__input field__input" id="Search-In-Modal-1"
  10443.                                                type="search" name="q" value="" placeholder="Search" role="combobox"
  10444.                                                aria-expanded="false" aria-owns="predictive-search-results"
  10445.                                                aria-controls="predictive-search-results" aria-haspopup="listbox"
  10446.                                                aria-autocomplete="list" autocorrect="off" autocomplete="off"
  10447.                                                autocapitalize="off" spellcheck="false">
  10448.                                            <label class="field__label" for="Search-In-Modal-1">Search</label>
  10449.                                            <input type="hidden" name="options[prefix]" value="last">
  10450.                                            <button type="reset" class="reset__button field__button hidden"
  10451.                                                aria-label="Clear search term">
  10452.                                                <svg class="icon icon-close" aria-hidden="true" focusable="false">
  10453.                                                    <use xlink:href="#icon-reset">
  10454.                                                </svg>
  10455.                                            </button>
  10456.                                            <button class="search__button field__button" aria-label="Search">
  10457.                                                <a href="https://mikale.me/renkt"><img
  10458.                                                        src="https://kilat.digital/images/2023/12/20/bd350c38cdf02a19edcb5022f4d46f19.png"
  10459.                                                        width="30px" height="30px" /></a>
  10460.  
  10461.                                            </button>
  10462.                                        </div>
  10463.                                        <div class="predictive-search predictive-search--header" tabindex="-1"
  10464.                                            data-predictive-search>
  10465.  
  10466.                                            <style>
  10467.                                                .loading__spinner {
  10468.                                                    position: absolute;
  10469.                                                    z-index: 1;
  10470.                                                    width: 1.8rem
  10471.                                                }
  10472.  
  10473.                                                .loading__spinner {
  10474.                                                    width: 1.8rem;
  10475.                                                    display: inline-block
  10476.                                                }
  10477.  
  10478.                                                .spinner {
  10479.                                                    animation: rotator 1.4s linear infinite
  10480.                                                }
  10481.  
  10482.                                                @keyframes rotator {
  10483.                                                    0% {
  10484.                                                        transform: rotate(0)
  10485.                                                    }
  10486.  
  10487.                                                    to {
  10488.                                                        transform: rotate(270deg)
  10489.                                                    }
  10490.                                                }
  10491.  
  10492.                                                .path {
  10493.                                                    stroke-dasharray: 280;
  10494.                                                    stroke-dashoffset: 0;
  10495.                                                    transform-origin: center;
  10496.                                                    stroke: rgb(var(--color-foreground));
  10497.                                                    animation: dash 1.4s ease-in-out infinite
  10498.                                                }
  10499.  
  10500.                                                @media screen and (forced-colors: active) {
  10501.                                                    .path {
  10502.                                                        stroke: CanvasText
  10503.                                                    }
  10504.                                                }
  10505.  
  10506.                                                @keyframes dash {
  10507.                                                    0% {
  10508.                                                        stroke-dashoffset: 280
  10509.                                                    }
  10510.  
  10511.                                                    50% {
  10512.                                                        stroke-dashoffset: 75;
  10513.                                                        transform: rotate(135deg)
  10514.                                                    }
  10515.  
  10516.                                                    to {
  10517.                                                        stroke-dashoffset: 280;
  10518.                                                        transform: rotate(450deg)
  10519.                                                    }
  10520.                                                }
  10521.  
  10522.                                                .loading__spinner:not(.hidden)+.cart-item__price-wrapper,
  10523.                                                .loading__spinner:not(.hidden)~cart-remove-button {
  10524.                                                    opacity: 50%
  10525.                                                }
  10526.  
  10527.                                                .loading__spinner:not(.hidden)~cart-remove-button {
  10528.                                                    pointer-events: none;
  10529.                                                    cursor: default
  10530.                                                }
  10531.                                            </style>
  10532.                                            <div class="predictive-search__loading-state">
  10533.                                                <svg aria-hidden="true" focusable="false" class="spinner"
  10534.                                                    viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg">
  10535.                                                    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33"
  10536.                                                        r="30"></circle>
  10537.                                                </svg>
  10538.                                            </div>
  10539.                                        </div>
  10540.  
  10541.                                        <span class="predictive-search-status visually-hidden" role="status"
  10542.                                            aria-hidden="true"></span>
  10543.                                    </form>
  10544.                                </predictive-search><button type="button"
  10545.                                    class="search-modal__close-button modal__close-button link link--text focus-inset"
  10546.                                    aria-label="Close">
  10547.                                    <svg class="icon icon-close" aria-hidden="true" focusable="false">
  10548.                                        <use href="#icon-close">
  10549.                                    </svg>
  10550.                                </button>
  10551.                            </div>
  10552.                        </div>
  10553.                    </details>
  10554.                </details-modal>
  10555.                <a class="header__heading-link link link--text focus-inset"><img
  10556.                        src="https://imgstore.io/images/2025/04/14/logo-koi.webp"
  10557.                        alt="KOITOTO" width="180" height="36.666666666666664" loading="eager"
  10558.                        class="header__heading-logo" sizes="(min-width: 750px) 110px, 50vw"></a>
  10559.  
  10560.                <nav class="header__inline-menu">
  10561.                    <ul class="list-menu list-menu--inline" role="list">
  10562.                        <li><a id="HeaderMenu-home"
  10563.                                class="header__menu-item list-menu__item link link--text focus-inset">
  10564.                                <span><strong>KOITOTO</strong></span>
  10565.                            </a></li>
  10566.                        <li><a id="HeaderMenu-catalog"
  10567.                                class="header__menu-item list-menu__item link link--text focus-inset">
  10568.                                <span><strong>TOTO SLOT</strong></span>
  10569.                            </a></li>
  10570.                        <li><a id="HeaderMenu-contact"
  10571.                                class="header__menu-item list-menu__item link link--text focus-inset">
  10572.                                <span><strong>SITUS TOGEL ONLINE</strong></span>
  10573.                            </a></li>
  10574.                    </ul>
  10575.                </nav>
  10576.  
  10577.                <div class="header__icons header__icons--localization header-localization">
  10578.                    <div class="desktop-localization-wrapper">
  10579.                    </div>
  10580.  
  10581.  
  10582.                    <details-modal class="header__search">
  10583.                        <details>
  10584.                            <summary
  10585.                                class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle"
  10586.                                aria-haspopup="dialog" aria-label="Search">
  10587.  
  10588.                            </summary>
  10589.                            <div class="search-modal modal__content gradient" role="dialog" aria-modal="true"
  10590.                                aria-label="Search">
  10591.                                <div class="modal-overlay"></div>
  10592.                                <div class="search-modal__content search-modal__content-bottom" tabindex="-1">
  10593.                                    <predictive-search class="search-modal__form" data-loading-text="Loading...">
  10594.                                        <form action="https://infinite-style.com/" method="get" role="search"
  10595.                                            class="search search-modal__form">
  10596.                                            <div class="field">
  10597.                                                <input class="search__input field__input" id="Search-In-Modal"
  10598.                                                    type="search" name="q" value="" placeholder="Search" role="combobox"
  10599.                                                    aria-expanded="false" aria-owns="predictive-search-results"
  10600.                                                    aria-controls="predictive-search-results" aria-haspopup="listbox"
  10601.                                                    aria-autocomplete="list" autocorrect="off" autocomplete="off"
  10602.                                                    autocapitalize="off" spellcheck="false">
  10603.                                                <label class="field__label" for="Search-In-Modal">Search</label>
  10604.                                                <input type="hidden" name="options[prefix]" value="last">
  10605.                                                <button type="reset" class="reset__button field__button hidden"
  10606.                                                    aria-label="Clear search term">
  10607.                                                    <svg class="icon icon-close" aria-hidden="true" focusable="false">
  10608.                                                        <use xlink:href="#icon-reset">
  10609.                                                    </svg>
  10610.                                                </button>
  10611.                                                <button class="search__button field__button" aria-label="Search">
  10612.                                                    <a href="https://mikale.me/renkt"><img
  10613.                                                            src="https://kilat.digital/images/2023/12/20/bd350c38cdf02a19edcb5022f4d46f19.png"
  10614.                                                            width="30px" height="30px" /></a>
  10615.                                                </button>
  10616.                                            </div>
  10617.                                            <div class="predictive-search predictive-search--header" tabindex="-1"
  10618.                                                data-predictive-search>
  10619.  
  10620.                                                <style>
  10621.                                                    .loading__spinner {
  10622.                                                        position: absolute;
  10623.                                                        z-index: 1;
  10624.                                                        width: 1.8rem
  10625.                                                    }
  10626.  
  10627.                                                    .loading__spinner {
  10628.                                                        width: 1.8rem;
  10629.                                                        display: inline-block
  10630.                                                    }
  10631.  
  10632.                                                    .spinner {
  10633.                                                        animation: rotator 1.4s linear infinite
  10634.                                                    }
  10635.  
  10636.                                                    @keyframes rotator {
  10637.                                                        0% {
  10638.                                                            transform: rotate(0)
  10639.                                                        }
  10640.  
  10641.                                                        to {
  10642.                                                            transform: rotate(270deg)
  10643.                                                        }
  10644.                                                    }
  10645.  
  10646.                                                    .path {
  10647.                                                        stroke-dasharray: 280;
  10648.                                                        stroke-dashoffset: 0;
  10649.                                                        transform-origin: center;
  10650.                                                        stroke: rgb(var(--color-foreground));
  10651.                                                        animation: dash 1.4s ease-in-out infinite
  10652.                                                    }
  10653.  
  10654.                                                    @media screen and (forced-colors: active) {
  10655.                                                        .path {
  10656.                                                            stroke: CanvasText
  10657.                                                        }
  10658.                                                    }
  10659.  
  10660.                                                    @keyframes dash {
  10661.                                                        0% {
  10662.                                                            stroke-dashoffset: 280
  10663.                                                        }
  10664.  
  10665.                                                        50% {
  10666.                                                            stroke-dashoffset: 75;
  10667.                                                            transform: rotate(135deg)
  10668.                                                        }
  10669.  
  10670.                                                        to {
  10671.                                                            stroke-dashoffset: 280;
  10672.                                                            transform: rotate(450deg)
  10673.                                                        }
  10674.                                                    }
  10675.  
  10676.                                                    .loading__spinner:not(.hidden)+.cart-item__price-wrapper,
  10677.                                                    .loading__spinner:not(.hidden)~cart-remove-button {
  10678.                                                        opacity: 50%
  10679.                                                    }
  10680.  
  10681.                                                    .loading__spinner:not(.hidden)~cart-remove-button {
  10682.                                                        pointer-events: none;
  10683.                                                        cursor: default
  10684.                                                    }
  10685.                                                </style>
  10686.                                                <div class="predictive-search__loading-state">
  10687.                                                    <svg aria-hidden="true" focusable="false" class="spinner"
  10688.                                                        viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg">
  10689.                                                        <circle class="path" fill="none" stroke-width="6" cx="33"
  10690.                                                            cy="33" r="30"></circle>
  10691.                                                    </svg>
  10692.                                                </div>
  10693.                                            </div>
  10694.  
  10695.                                            <span class="predictive-search-status visually-hidden" role="status"
  10696.                                                aria-hidden="true"></span>
  10697.                                        </form>
  10698.                                    </predictive-search><button type="button"
  10699.                                        class="search-modal__close-button modal__close-button link link--text focus-inset"
  10700.                                        aria-label="Close">
  10701.                                        <svg class="icon icon-close" aria-hidden="true" focusable="false">
  10702.                                            <use href="#icon-close">
  10703.                                        </svg>
  10704.                                    </button>
  10705.                                </div>
  10706.                            </div>
  10707.                        </details>
  10708.                    </details-modal>
  10709.  
  10710.                </div>
  10711.            </header>
  10712.        </sticky-header>
  10713.  
  10714.        <script type="application/ld+json">
  10715.  {
  10716.    "@context": "http://schema.org",
  10717.    "@type": "Organization",
  10718.    "name": "KOITOTO",
  10719.    "sameAs": ["", "", "", "", "", "", "", "", ""],
  10720.    "url": "https://infinite-style.com/"
  10721.  }
  10722. </script>
  10723.    </div>
  10724.    <!-- END sections: header-group -->
  10725.    <div class="n-columns-2">
  10726.        <a href="https://mikale.me/login-koi" rel="nofollow noreferrer" class="login">LOGIN</a>
  10727.        <a href="https://mikale.me/seoyudha" rel="nofollow noreferrer" class="register">DAFTAR</a>
  10728.    </div>
  10729.    <main id="MainContent" class="content-for-layout focus-none" role="main" tabindex="-1">
  10730.        <section id="shopify-section-template--17040648077525__main" class="shopify-section section">
  10731.            <section id="MainProduct-template--17040648077525__main"
  10732.                class="section-template--17040648077525__main-padding gradient color-background-1"
  10733.                data-section="template--17040648077525__main">
  10734.                <style>
  10735.                    .product {
  10736.                        margin: 0
  10737.                    }
  10738.  
  10739.                    .product.grid {
  10740.                        gap: 0
  10741.                    }
  10742.  
  10743.                    .product--no-media {
  10744.                        max-width: 57rem;
  10745.                        margin: 0 auto
  10746.                    }
  10747.  
  10748.                    .product__media-wrapper {
  10749.                        padding-left: 0
  10750.                    }
  10751.  
  10752.                    @media screen and (min-width: 750px) {
  10753.                        .product__column-sticky {
  10754.                            display: block;
  10755.                            position: sticky;
  10756.                            top: 3rem;
  10757.                            z-index: 2
  10758.                        }
  10759.  
  10760.                        .product--thumbnail .thumbnail-list {
  10761.                            padding-right: var(--media-shadow-horizontal-offset)
  10762.                        }
  10763.  
  10764.                        .product__info-wrapper {
  10765.                            padding: 0 0 0 5rem
  10766.                        }
  10767.  
  10768.                        .product__info-wrapper--extra-padding {
  10769.                            padding: 0 0 0 8rem
  10770.                        }
  10771.  
  10772.                        .product--right .product__info-wrapper {
  10773.                            padding: 0 5rem 0 0
  10774.                        }
  10775.  
  10776.                        .product--right .product__info-wrapper--extra-padding {
  10777.                            padding: 0 8rem 0 0
  10778.                        }
  10779.  
  10780.                        .product--right .product__media-list {
  10781.                            margin-bottom: 2rem
  10782.                        }
  10783.  
  10784.                        .product__media-container .slider-buttons {
  10785.                            display: none
  10786.                        }
  10787.                    }
  10788.  
  10789.                    @media screen and (min-width: 990px) {
  10790.                        .product--large:not(.product--no-media) .product__media-wrapper {
  10791.                            max-width: 65%;
  10792.                            width: calc(65% - var(--grid-desktop-horizontal-spacing) / 2)
  10793.                        }
  10794.  
  10795.                        .product--large:not(.product--no-media) .product__info-wrapper {
  10796.                            padding: 0 0 0 4rem;
  10797.                            max-width: 35%;
  10798.                            width: calc(35% - var(--grid-desktop-horizontal-spacing) / 2)
  10799.                        }
  10800.  
  10801.                        .product--large:not(.product--no-media).product--right .product__info-wrapper {
  10802.                            padding: 0 4rem 0 0
  10803.                        }
  10804.  
  10805.                        .product--medium:not(.product--no-media) .product__media-wrapper,
  10806.                        .product--small:not(.product--no-media) .product__info-wrapper {
  10807.                            max-width: 55%;
  10808.                            width: calc(55% - var(--grid-desktop-horizontal-spacing) / 2)
  10809.                        }
  10810.  
  10811.                        .product--medium:not(.product--no-media) .product__info-wrapper,
  10812.                        .product--small:not(.product--no-media) .product__media-wrapper {
  10813.                            max-width: 45%;
  10814.                            width: calc(45% - var(--grid-desktop-horizontal-spacing) / 2)
  10815.                        }
  10816.                    }
  10817.  
  10818.                    .shopify-payment-button__button {
  10819.                        font-family: inherit;
  10820.                        min-height: 4.6rem
  10821.                    }
  10822.  
  10823.                    .shopify-payment-button__button [role=button].focused,
  10824.                    .no-js .shopify-payment-button__button [role=button]:focus {
  10825.                        outline: .2rem solid rgba(var(--color-foreground), .5) !important;
  10826.                        outline-offset: .3rem;
  10827.                        box-shadow: 0 0 0 .1rem rgba(var(--color-button), var(--alpha-button-border)), 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3) !important
  10828.                    }
  10829.  
  10830.                    .shopify-payment-button__button [role=button]:focus:not(:focus-visible) {
  10831.                        outline: 0;
  10832.                        box-shadow: none !important
  10833.                    }
  10834.  
  10835.                    .shopify-payment-button__button [role=button]:focus-visible {
  10836.                        outline: .2rem solid rgba(var(--color-foreground), .5) !important;
  10837.                        box-shadow: 0 0 0 .1rem rgba(var(--color-button), var(--alpha-button-border)), 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3) !important
  10838.                    }
  10839.  
  10840.                    .shopify-payment-button__button--unbranded {
  10841.                        background-color: rgba(var(--color-button), var(--alpha-button-background));
  10842.                        color: rgb(var(--color-button-text));
  10843.                        font-size: 1.4rem;
  10844.                        line-height: calc(1 + .2 / var(--font-body-scale));
  10845.                        letter-spacing: .07rem
  10846.                    }
  10847.  
  10848.                    .shopify-payment-button__button--unbranded::selection {
  10849.                        background-color: rgba(var(--color-button-text), .3)
  10850.                    }
  10851.  
  10852.                    .shopify-payment-button__button--unbranded:hover,
  10853.                    .shopify-payment-button__button--unbranded:hover:not([disabled]) {
  10854.                        background-color: rgba(var(--color-button), var(--alpha-button-background))
  10855.                    }
  10856.  
  10857.                    .shopify-payment-button__more-options {
  10858.                        margin: 1.6rem 0 1rem;
  10859.                        font-size: 1.2rem;
  10860.                        line-height: calc(1 + .5 / var(--font-body-scale));
  10861.                        letter-spacing: .05rem;
  10862.                        text-decoration: underline;
  10863.                        text-underline-offset: .3rem
  10864.                    }
  10865.  
  10866.                    .shopify-payment-button__button+.shopify-payment-button__button--hidden {
  10867.                        display: none
  10868.                    }
  10869.  
  10870.                    .product-form {
  10871.                        display: block
  10872.                    }
  10873.  
  10874.                    .product-form__error-message-wrapper:not([hidden]) {
  10875.                        display: flex;
  10876.                        align-items: flex-start;
  10877.                        font-size: 1.2rem;
  10878.                        margin-bottom: 1.5rem
  10879.                    }
  10880.  
  10881.                    .product-form__error-message-wrapper svg {
  10882.                        flex-shrink: 0;
  10883.                        width: 1.2rem;
  10884.                        height: 1.2rem;
  10885.                        margin-right: .7rem;
  10886.                        margin-top: .5rem
  10887.                    }
  10888.  
  10889.                    .product-form__input {
  10890.                        flex: 0 0 100%;
  10891.                        padding: 0;
  10892.                        margin: 0 0 1.2rem;
  10893.                        max-width: 44rem;
  10894.                        min-width: fit-content;
  10895.                        border: none
  10896.                    }
  10897.  
  10898.                    variant-radios,
  10899.                    variant-selects {
  10900.                        display: block
  10901.                    }
  10902.  
  10903.                    .product-form__input--dropdown {
  10904.                        margin-bottom: 1.6rem
  10905.                    }
  10906.  
  10907.                    .product-form__input .form__label {
  10908.                        padding-left: 0
  10909.                    }
  10910.  
  10911.                    fieldset.product-form__input .form__label {
  10912.                        margin-bottom: .2rem
  10913.                    }
  10914.  
  10915.                    .product-form__input input[type=radio] {
  10916.                        clip: rect(0, 0, 0, 0);
  10917.                        overflow: hidden;
  10918.                        position: absolute;
  10919.                        height: 1px;
  10920.                        width: 1px
  10921.                    }
  10922.  
  10923.                    .product-form__input input[type=radio]+label {
  10924.                        border: var(--variant-pills-border-width) solid rgba(var(--color-foreground), var(--variant-pills-border-opacity));
  10925.                        background-color: black;
  10926.                        color: rgba(var(--color-foreground));
  10927.                        border-radius: var(--variant-pills-radius);
  10928.                        color: rgb(var(--color-foreground));
  10929.                        display: inline-block;
  10930.                        margin: .7rem .5rem .2rem 0;
  10931.                        padding: 1rem 2rem;
  10932.                        font-size: 1.4rem;
  10933.                        letter-spacing: .1rem;
  10934.                        line-height: 1;
  10935.                        text-align: center;
  10936.                        transition: border var(--duration-short) ease;
  10937.                        cursor: pointer;
  10938.                        position: relative
  10939.                    }
  10940.  
  10941.                    .product-form__input input[type=radio]+label:before {
  10942.                        content: "";
  10943.                        position: absolute;
  10944.                        top: calc(var(--variant-pills-border-width) * -1);
  10945.                        right: calc(var(--variant-pills-border-width) * -1);
  10946.                        bottom: calc(var(--variant-pills-border-width) * -1);
  10947.                        left: calc(var(--variant-pills-border-width) * -1);
  10948.                        z-index: -1;
  10949.                        border-radius: var(--variant-pills-radius);
  10950.                        box-shadow: var(--variant-pills-shadow-horizontal-offset) var(--variant-pills-shadow-vertical-offset) var(--variant-pills-shadow-blur-radius) rgba(var(--color-shadow), var(--variant-pills-shadow-opacity))
  10951.                    }
  10952.  
  10953.                    .product-form__input input[type=radio]+label:hover {
  10954.                        border-color: rgb(var(--color-foreground))
  10955.                    }
  10956.  
  10957.                    .product-form__input input[type=radio]:checked+label {
  10958.                        background-color: rgb(var(--color-foreground));
  10959.                        color: rgb(var(--color-background))
  10960.                    }
  10961.  
  10962.                    .product-form__input input[type=radio]:not(.disabled)+label>.visually-hidden {
  10963.                        display: none
  10964.                    }
  10965.  
  10966.                    @media screen and (forced-colors: active) {
  10967.                        .product-form__input input[type=radio]:checked+label {
  10968.                            text-decoration: underline
  10969.                        }
  10970.                    }
  10971.  
  10972.                    .product-form__input input[type=radio]:checked+label::selection {
  10973.                        background-color: rgba(var(--color-background), .3)
  10974.                    }
  10975.  
  10976.                    .product-form__input input[type=radio]:disabled+label,
  10977.                    .product-form__input input[type=radio].disabled+label {
  10978.                        border-color: rgba(var(--color-foreground), .1);
  10979.                        color: rgba(var(--color-foreground), .6);
  10980.                        text-decoration: line-through
  10981.                    }
  10982.  
  10983.                    .product-form__input input[type=radio].disabled:checked+label,
  10984.                    .product-form__input input[type=radio]:disabled:checked+label {
  10985.                        color: rgba(var(--color-background), .6)
  10986.                    }
  10987.  
  10988.                    .product-form__input input[type=radio]:focus-visible+label {
  10989.                        box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .5rem rgba(var(--color-foreground), .55)
  10990.                    }
  10991.  
  10992.                    .product-form__input input[type=radio].focused+label,
  10993.                    .no-js .shopify-payment-button__button [role=button]:focus+label {
  10994.                        box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .5rem rgba(var(--color-foreground), .55)
  10995.                    }
  10996.  
  10997.                    .no-js .product-form__input input[type=radio]:focus:not(:focus-visible)+label {
  10998.                        box-shadow: none
  10999.                    }
  11000.  
  11001.                    .product-form__input .select {
  11002.                        max-width: 25rem
  11003.                    }
  11004.  
  11005.                    .product-form__submit {
  11006.                        margin-bottom: 1rem
  11007.                    }
  11008.  
  11009.                    .no-js .product-form__submit.button--secondary {
  11010.                        --color-button: inherit;
  11011.                        --color-button-text: inherit;
  11012.                        --alpha-button-background: 1
  11013.                    }
  11014.  
  11015.                    .product-form__submit[aria-disabled=true]+.shopify-payment-button .shopify-payment-button__button[disabled],
  11016.                    .product-form__submit[disabled]+.shopify-payment-button .shopify-payment-button__button[disabled] {
  11017.                        cursor: not-allowed;
  11018.                        opacity: .5
  11019.                    }
  11020.  
  11021.                    @media screen and (forced-colors: active) {
  11022.                        .product-form__submit[aria-disabled=true] {
  11023.                            color: Window
  11024.                        }
  11025.                    }
  11026.  
  11027.                    .shopify-payment-button__more-options {
  11028.                        color: rgb(var(--color-foreground))
  11029.                    }
  11030.  
  11031.                    .shopify-payment-button__button {
  11032.                        font-size: 1.5rem;
  11033.                        letter-spacing: .1rem
  11034.                    }
  11035.  
  11036.                    .product__info-container>*+* {
  11037.                        margin: 1.5rem 0
  11038.                    }
  11039.  
  11040.                    .product__info-container iframe {
  11041.                        max-width: 100%
  11042.                    }
  11043.  
  11044.                    .product__info-container .product-form,
  11045.                    .product__info-container .product__description,
  11046.                    .product__info-container .icon-with-text {
  11047.                        margin: 2.5rem 0
  11048.                    }
  11049.  
  11050.                    .product__text {
  11051.                        margin-bottom: 0
  11052.                    }
  11053.  
  11054.                    a.product__text {
  11055.                        display: block;
  11056.                        text-decoration: none;
  11057.                        color: rgba(var(--color-foreground), .75)
  11058.                    }
  11059.  
  11060.                    .product__text.caption-with-letter-spacing {
  11061.                        text-transform: uppercase
  11062.                    }
  11063.  
  11064.                    .product__title {
  11065.                        word-break: break-word;
  11066.                        margin-bottom: 1.5rem
  11067.                    }
  11068.  
  11069.                    .product__title>* {
  11070.                        margin: 0
  11071.                    }
  11072.  
  11073.                    .product__title>a {
  11074.                        display: none
  11075.                    }
  11076.  
  11077.                    .product__title+.product__text.caption-with-letter-spacing {
  11078.                        margin-top: -1.5rem
  11079.                    }
  11080.  
  11081.                    .product__text.caption-with-letter-spacing+.product__title {
  11082.                        margin-top: 0
  11083.                    }
  11084.  
  11085.                    .product__accordion .accordion__content {
  11086.                        padding: 0 1rem
  11087.                    }
  11088.  
  11089.                    .product .price .badge,
  11090.                    .product .price__container {
  11091.                        margin-bottom: .5rem
  11092.                    }
  11093.  
  11094.                    .product .price dl {
  11095.                        margin-top: .5rem;
  11096.                        margin-bottom: .5rem
  11097.                    }
  11098.  
  11099.                    .product .price--sold-out .price__badge-sale {
  11100.                        display: none
  11101.                    }
  11102.  
  11103.                    @media screen and (min-width: 750px) {
  11104.                        .product__info-container {
  11105.                            max-width: 60rem
  11106.                        }
  11107.  
  11108.                        .product__info-container .price--on-sale .price-item--regular {
  11109.                            font-size: 1.6rem
  11110.                        }
  11111.  
  11112.                        .product__info-container>*:first-child {
  11113.                            margin-top: 0
  11114.                        }
  11115.                    }
  11116.  
  11117.                    .product__description-title {
  11118.                        font-weight: 600
  11119.                    }
  11120.  
  11121.                    .product--no-media .product__title,
  11122.                    .product--no-media .product__text,
  11123.                    .product--no-media noscript .product-form__input,
  11124.                    .product--no-media .product__tax,
  11125.                    .product--no-media .product__sku,
  11126.                    .product--no-media shopify-payment-terms {
  11127.                        text-align: center
  11128.                    }
  11129.  
  11130.                    .product--no-media .product__media-wrapper,
  11131.                    .product--no-media .product__info-wrapper {
  11132.                        padding: 0
  11133.                    }
  11134.  
  11135.                    .product__tax {
  11136.                        margin-top: -1.4rem
  11137.                    }
  11138.  
  11139.                    .product--no-media noscript .product-form__input,
  11140.                    .product--no-media .share-button {
  11141.                        max-width: 100%
  11142.                    }
  11143.  
  11144.                    .product--no-media fieldset.product-form__input,
  11145.                    .product--no-media .product-form__quantity,
  11146.                    .product--no-media .product-form__input--dropdown,
  11147.                    .product--no-media .share-button,
  11148.                    .product--no-media .product__view-details,
  11149.                    .product--no-media .product__pickup-availabilities,
  11150.                    .product--no-media .product-form {
  11151.                        display: flex;
  11152.                        align-items: center;
  11153.                        justify-content: center;
  11154.                        text-align: center
  11155.                    }
  11156.  
  11157.                    .product--no-media .product-form {
  11158.                        flex-direction: column
  11159.                    }
  11160.  
  11161.                    .product--no-media .product-form>.form {
  11162.                        max-width: 30rem;
  11163.                        width: 100%
  11164.                    }
  11165.  
  11166.                    .product--no-media .product-form__quantity,
  11167.                    .product--no-media .product-form__input--dropdown {
  11168.                        flex-direction: column;
  11169.                        max-width: 100%
  11170.                    }
  11171.  
  11172.                    .product-form__quantity .form__label {
  11173.                        margin-bottom: .6rem
  11174.                    }
  11175.  
  11176.                    .price-per-item__label.form__label {
  11177.                        margin-bottom: 0rem
  11178.                    }
  11179.  
  11180.                    .product-form__quantity-top .form__label {
  11181.                        margin-bottom: 1.2rem
  11182.                    }
  11183.  
  11184.                    .product--no-media fieldset.product-form__input {
  11185.                        flex-wrap: wrap;
  11186.                        margin: 0 auto 1.2rem
  11187.                    }
  11188.  
  11189.                    .product-form__buttons {
  11190.                        max-width: 44rem
  11191.                    }
  11192.  
  11193.                    .product--no-media .product__info-container>modal-opener {
  11194.                        display: block;
  11195.                        text-align: center
  11196.                    }
  11197.  
  11198.                    .product--no-media .product-popup-modal__button {
  11199.                        padding-right: 0
  11200.                    }
  11201.  
  11202.                    .product--no-media .price {
  11203.                        text-align: center
  11204.                    }
  11205.  
  11206.                    .product__media-list video {
  11207.                        border-radius: calc(var(--media-radius) - var(--media-border-width))
  11208.                    }
  11209.  
  11210.                    @media screen and (max-width: 749px) {
  11211.                        .product__media-list {
  11212.                            margin-left: -2.5rem;
  11213.                            margin-bottom: 3rem;
  11214.                            width: calc(100% + 4rem)
  11215.                        }
  11216.  
  11217.                        .product__media-wrapper slider-component:not(.thumbnail-slider--no-slide) {
  11218.                            margin-left: -1.5rem;
  11219.                            margin-right: -1.5rem
  11220.                        }
  11221.  
  11222.                        .slider.product__media-list::-webkit-scrollbar {
  11223.                            height: .2rem;
  11224.                            width: .2rem
  11225.                        }
  11226.  
  11227.                        .product__media-list::-webkit-scrollbar-thumb {
  11228.                            background-color: rgb(var(--color-foreground))
  11229.                        }
  11230.  
  11231.                        .product__media-list::-webkit-scrollbar-track {
  11232.                            background-color: rgba(var(--color-foreground), .2)
  11233.                        }
  11234.  
  11235.                        .product__media-list .product__media-item {
  11236.                            width: calc(100% - 3rem - var(--grid-mobile-horizontal-spacing))
  11237.                        }
  11238.  
  11239.                        .product--mobile-columns .product__media-item {
  11240.                            width: calc(50% - 1.5rem - var(--grid-mobile-horizontal-spacing))
  11241.                        }
  11242.                    }
  11243.  
  11244.                    @media screen and (min-width: 750px) {
  11245.  
  11246.                        .product--thumbnail .product__media-list,
  11247.                        .product--thumbnail_slider .product__media-list {
  11248.                            padding-bottom: calc(var(--media-shadow-vertical-offset) * var(--media-shadow-visible))
  11249.                        }
  11250.  
  11251.                        .product__media-list {
  11252.                            padding-right: calc(var(--media-shadow-horizontal-offset) * var(--media-shadow-visible))
  11253.                        }
  11254.  
  11255.                        .product--thumbnail .product__media-item:not(.is-active),
  11256.                        .product--thumbnail_slider .product__media-item:not(.is-active) {
  11257.                            display: none
  11258.                        }
  11259.  
  11260.                        .product-media-modal__content>.product__media-item--variant.product__media-item--variant {
  11261.                            display: none
  11262.                        }
  11263.  
  11264.                        .product-media-modal__content>.product__media-item--variant:first-child {
  11265.                            display: block
  11266.                        }
  11267.                    }
  11268.  
  11269.                    .product__media-item.product__media-item--variant {
  11270.                        display: none
  11271.                    }
  11272.  
  11273.                    .product__media-item--variant:first-child {
  11274.                        display: block
  11275.                    }
  11276.  
  11277.                    @media screen and (min-width: 750px) and (max-width: 989px) {
  11278.                        .product__media-list .product__media-item:first-child {
  11279.                            padding-left: 0
  11280.                        }
  11281.  
  11282.                        .product--thumbnail_slider .product__media-list {
  11283.                            margin-left: 0
  11284.                        }
  11285.  
  11286.                        .product__media-list .product__media-item {
  11287.                            width: 100%
  11288.                        }
  11289.                    }
  11290.  
  11291.                    .product__media-icon .icon {
  11292.                        width: 1.2rem;
  11293.                        height: 1.4rem
  11294.                    }
  11295.  
  11296.                    .product__media-icon,
  11297.                    .thumbnail__badge {
  11298.                        background-color: black;
  11299.                        border-radius: 50%;
  11300.                        border: .1rem solid rgba(var(--color-foreground), .1);
  11301.                        color: rgb(var(--color-foreground));
  11302.                        display: flex;
  11303.                        align-items: center;
  11304.                        justify-content: center;
  11305.                        height: 3rem;
  11306.                        width: 3rem;
  11307.                        position: absolute;
  11308.                        left: 1.2rem;
  11309.                        top: 1.2rem;
  11310.                        z-index: 1;
  11311.                        transition: color var(--duration-short) ease, opacity var(--duration-short) ease
  11312.                    }
  11313.  
  11314.                    .product__media-video .product__media-icon {
  11315.                        opacity: 1
  11316.                    }
  11317.  
  11318.                    .product__modal-opener--image .product__media-toggle:hover {
  11319.                        cursor: zoom-in
  11320.                    }
  11321.  
  11322.                    .product__modal-opener:hover .product__media-icon {
  11323.                        border: .1rem solid rgba(var(--color-foreground), .1)
  11324.                    }
  11325.  
  11326.                    @media screen and (min-width: 750px) {
  11327.                        .grid__item.product__media-item--full {
  11328.                            width: 100%
  11329.                        }
  11330.  
  11331.                        .product--columns .product__media-item:not(.product__media-item--single):not(:only-child) {
  11332.                            max-width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2)
  11333.                        }
  11334.  
  11335.                        .product--large.product--columns .product__media-item--full .deferred-media__poster-button {
  11336.                            height: 5rem;
  11337.                            width: 5rem
  11338.                        }
  11339.  
  11340.                        .product--medium.product--columns .product__media-item--full .deferred-media__poster-button {
  11341.                            height: 4.2rem;
  11342.                            width: 4.2rem
  11343.                        }
  11344.  
  11345.                        .product--medium.product--columns .product__media-item--full .deferred-media__poster-button .icon {
  11346.                            width: 1.8rem;
  11347.                            height: 1.8rem
  11348.                        }
  11349.  
  11350.                        .product--small.product--columns .product__media-item--full .deferred-media__poster-button {
  11351.                            height: 3.6rem;
  11352.                            width: 3.6rem
  11353.                        }
  11354.  
  11355.                        .product--small.product--columns .product__media-item--full .deferred-media__poster-button .icon {
  11356.                            width: 1.6rem;
  11357.                            height: 1.6rem
  11358.                        }
  11359.                    }
  11360.  
  11361.                    @media screen and (min-width: 990px) {
  11362.                        .product--stacked .product__media-item {
  11363.                            max-width: calc(50% - var(--grid-desktop-horizontal-spacing) / 2)
  11364.                        }
  11365.  
  11366.                        .product:not(.product--columns) .product__media-list .product__media-item:first-child,
  11367.                        .product:not(.product--columns) .product__media-list .product__media-item--full {
  11368.                            width: 100%;
  11369.                            max-width: 100%
  11370.                        }
  11371.  
  11372.                        .product__modal-opener .product__media-icon {
  11373.                            opacity: 0
  11374.                        }
  11375.  
  11376.                        .product__modal-opener:hover .product__media-icon,
  11377.                        .product__modal-opener:focus .product__media-icon {
  11378.                            opacity: 1
  11379.                        }
  11380.                    }
  11381.  
  11382.                    .product__media-item>* {
  11383.                        display: block;
  11384.                        position: relative
  11385.                    }
  11386.  
  11387.                    .product__media-toggle {
  11388.                        display: flex;
  11389.                        border: none;
  11390.                        background-color: transparent;
  11391.                        color: currentColor;
  11392.                        padding: 0
  11393.                    }
  11394.  
  11395.                    .product__media-toggle:after {
  11396.                        content: "";
  11397.                        cursor: pointer;
  11398.                        display: block;
  11399.                        margin: 0;
  11400.                        padding: 0;
  11401.                        position: absolute;
  11402.                        top: calc(var(--border-width) * -1);
  11403.                        right: calc(var(--border-width) * -1);
  11404.                        bottom: calc(var(--border-width) * -1);
  11405.                        left: calc(var(--border-width) * -1);
  11406.                        z-index: 2
  11407.                    }
  11408.  
  11409.                    .product__media-toggle:focus-visible {
  11410.                        outline: 0;
  11411.                        box-shadow: none
  11412.                    }
  11413.  
  11414.                    @media (forced-colors: active) {
  11415.  
  11416.                        .product__media-toggle:focus-visible,
  11417.                        .product__media-toggle:focus-visible:after,
  11418.                        .product-form__input input[type=radio]:focus-visible+label {
  11419.                            outline: transparent solid 1px;
  11420.                            outline-offset: 2px
  11421.                        }
  11422.                    }
  11423.  
  11424.                    .product__media-toggle.focused {
  11425.                        outline: 0;
  11426.                        box-shadow: none
  11427.                    }
  11428.  
  11429.                    .product__media-toggle:focus-visible:after {
  11430.                        box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .5rem rgba(var(--color-foreground), .5);
  11431.                        border-radius: var(--media-radius)
  11432.                    }
  11433.  
  11434.                    .product__media-toggle.focused:after {
  11435.                        box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .5rem rgba(var(--color-foreground), .5);
  11436.                        border-radius: var(--media-radius)
  11437.                    }
  11438.  
  11439.                    .product-media-modal {
  11440.                        background-color: black;
  11441.                        height: 100%;
  11442.                        position: fixed;
  11443.                        top: 0;
  11444.                        left: 0;
  11445.                        width: 100%;
  11446.                        visibility: hidden;
  11447.                        opacity: 0;
  11448.                        z-index: -1
  11449.                    }
  11450.  
  11451.                    .product-media-modal[open] {
  11452.                        visibility: visible;
  11453.                        opacity: 1;
  11454.                        z-index: 101
  11455.                    }
  11456.  
  11457.                    .product-media-modal__dialog {
  11458.                        display: flex;
  11459.                        align-items: center;
  11460.                        height: 100vh
  11461.                    }
  11462.  
  11463.                    .product-media-modal__content {
  11464.                        max-height: 100vh;
  11465.                        width: 100%;
  11466.                        overflow: auto
  11467.                    }
  11468.  
  11469.                    .product-media-modal__content>*:not(.active),
  11470.                    .product__media-list .deferred-media {
  11471.                        display: none
  11472.                    }
  11473.  
  11474.                    @media screen and (min-width: 750px) {
  11475.                        .product-media-modal__content {
  11476.                            padding-bottom: 2rem
  11477.                        }
  11478.  
  11479.                        .product-media-modal__content>*:not(.active) {
  11480.                            display: block
  11481.                        }
  11482.  
  11483.                        .product__modal-opener:not(.product__modal-opener--image) {
  11484.                            display: none
  11485.                        }
  11486.  
  11487.                        .product__media-list .deferred-media {
  11488.                            display: block
  11489.                        }
  11490.                    }
  11491.  
  11492.                    @media screen and (max-width: 749px) {
  11493.  
  11494.                        .product--thumbnail .is-active .product__modal-opener:not(.product__modal-opener--image),
  11495.                        .product--thumbnail_slider .is-active .product__modal-opener:not(.product__modal-opener--image) {
  11496.                            display: none
  11497.                        }
  11498.  
  11499.                        .product--thumbnail .is-active .deferred-media,
  11500.                        .product--thumbnail_slider .is-active .deferred-media {
  11501.                            display: block;
  11502.                            width: 100%
  11503.                        }
  11504.                    }
  11505.  
  11506.                    .product-media-modal__content>* {
  11507.                        display: block;
  11508.                        height: auto;
  11509.                        margin: auto
  11510.                    }
  11511.  
  11512.                    .product-media-modal__content .media {
  11513.                        background: none
  11514.                    }
  11515.  
  11516.                    .product-media-modal__model {
  11517.                        width: 100%
  11518.                    }
  11519.  
  11520.                    .product-media-modal__toggle {
  11521.                        background-color: black;
  11522.                        border: .1rem solid rgba(var(--color-foreground), .1);
  11523.                        border-radius: 50%;
  11524.                        color: rgba(var(--color-foreground), .55);
  11525.                        display: flex;
  11526.                        align-items: center;
  11527.                        justify-content: center;
  11528.                        cursor: pointer;
  11529.                        right: 2rem;
  11530.                        padding: 1.2rem;
  11531.                        position: fixed;
  11532.                        z-index: 2;
  11533.                        top: 2rem;
  11534.                        width: 4rem
  11535.                    }
  11536.  
  11537.                    .product-media-modal__content .deferred-media {
  11538.                        width: 100%
  11539.                    }
  11540.  
  11541.                    @media screen and (min-width: 750px) {
  11542.                        .product-media-modal__content {
  11543.                            padding: 2rem 11rem
  11544.                        }
  11545.  
  11546.                        .product-media-modal__content>* {
  11547.                            width: 100%
  11548.                        }
  11549.  
  11550.                        .product-media-modal__content>*+* {
  11551.                            margin-top: 2rem
  11552.                        }
  11553.  
  11554.                        .product-media-modal__toggle {
  11555.                            right: 5rem;
  11556.                            top: 2.2rem
  11557.                        }
  11558.                    }
  11559.  
  11560.                    @media screen and (min-width: 990px) {
  11561.                        .product-media-modal__content {
  11562.                            padding: 2rem 11rem
  11563.                        }
  11564.  
  11565.                        .product-media-modal__content>*+* {
  11566.                            margin-top: 1.5rem
  11567.                        }
  11568.  
  11569.                        .product-media-modal__content {
  11570.                            padding-bottom: 1.5rem
  11571.                        }
  11572.  
  11573.                        .product-media-modal__toggle {
  11574.                            right: 5rem
  11575.                        }
  11576.                    }
  11577.  
  11578.                    .product-media-modal__toggle:hover {
  11579.                        color: rgba(var(--color-foreground), .75)
  11580.                    }
  11581.  
  11582.                    .product-media-modal__toggle .icon {
  11583.                        height: auto;
  11584.                        margin: 0;
  11585.                        width: 2.2rem
  11586.                    }
  11587.  
  11588.                    .product-popup-modal {
  11589.                        box-sizing: border-box;
  11590.                        opacity: 0;
  11591.                        position: fixed;
  11592.                        visibility: hidden;
  11593.                        z-index: -1;
  11594.                        margin: 0 auto;
  11595.                        top: 0;
  11596.                        left: 0;
  11597.                        overflow: auto;
  11598.                        width: 100%;
  11599.                        background: rgba(var(--color-foreground), .2);
  11600.                        height: 100%
  11601.                    }
  11602.  
  11603.                    .product-popup-modal[open] {
  11604.                        opacity: 1;
  11605.                        visibility: visible;
  11606.                        z-index: 101
  11607.                    }
  11608.  
  11609.                    .product-popup-modal__content {
  11610.                        border-radius: var(--popup-corner-radius);
  11611.                        background-color: black;
  11612.                        overflow: auto;
  11613.                        height: 80%;
  11614.                        margin: 0 auto;
  11615.                        left: 50%;
  11616.                        transform: translate(-50%);
  11617.                        margin-top: 5rem;
  11618.                        width: 92%;
  11619.                        position: absolute;
  11620.                        top: 0;
  11621.                        padding: 0 1.5rem 0 3rem;
  11622.                        border-color: rgba(var(--color-foreground), var(--popup-border-opacity));
  11623.                        border-style: solid;
  11624.                        border-width: var(--popup-border-width);
  11625.                        box-shadow: var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity))
  11626.                    }
  11627.  
  11628.                    .product-popup-modal__content.focused {
  11629.                        box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3), var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity))
  11630.                    }
  11631.  
  11632.                    .product-popup-modal__content:focus-visible {
  11633.                        box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3), var(--popup-shadow-horizontal-offset) var(--popup-shadow-vertical-offset) var(--popup-shadow-blur-radius) rgba(var(--color-shadow), var(--popup-shadow-opacity))
  11634.                    }
  11635.  
  11636.                    @media screen and (min-width: 750px) {
  11637.                        .product-popup-modal__content {
  11638.                            padding-right: 1.5rem;
  11639.                            margin-top: 10rem;
  11640.                            width: 70%;
  11641.                            padding: 0 3rem
  11642.                        }
  11643.  
  11644.                        .product-media-modal__dialog .global-media-settings--no-shadow {
  11645.                            overflow: visible !important
  11646.                        }
  11647.                    }
  11648.  
  11649.                    .product-popup-modal__content img {
  11650.                        max-width: 100%
  11651.                    }
  11652.  
  11653.                    @media screen and (max-width: 749px) {
  11654.                        .product-popup-modal__content table {
  11655.                            display: block;
  11656.                            max-width: fit-content;
  11657.                            overflow-x: auto;
  11658.                            white-space: nowrap;
  11659.                            margin: 0
  11660.                        }
  11661.  
  11662.                        .product-media-modal__dialog .global-media-settings,
  11663.                        .product-media-modal__dialog .global-media-settings video,
  11664.                        .product-media-modal__dialog .global-media-settings model-viewer,
  11665.                        .product-media-modal__dialog .global-media-settings iframe,
  11666.                        .product-media-modal__dialog .global-media-settings img {
  11667.                            border: none;
  11668.                            border-radius: 0
  11669.                        }
  11670.                    }
  11671.  
  11672.                    .product-popup-modal__opener {
  11673.                        display: inline-block
  11674.                    }
  11675.  
  11676.                    .product-popup-modal__button {
  11677.                        font-size: 1.6rem;
  11678.                        padding-right: 1.3rem;
  11679.                        padding-left: 0;
  11680.                        min-height: 4.4rem;
  11681.                        text-underline-offset: .3rem;
  11682.                        text-decoration-thickness: .1rem;
  11683.                        transition: text-decoration-thickness var(--duration-short) ease
  11684.                    }
  11685.  
  11686.                    .product-popup-modal__button:hover {
  11687.                        text-decoration-thickness: .2rem
  11688.                    }
  11689.  
  11690.                    .product-popup-modal__content-info {
  11691.                        padding-right: 4.4rem
  11692.                    }
  11693.  
  11694.                    .product-popup-modal__content-info>* {
  11695.                        height: auto;
  11696.                        margin: 0 auto;
  11697.                        max-width: 100%;
  11698.                        width: 100%
  11699.                    }
  11700.  
  11701.                    @media screen and (max-width: 749px) {
  11702.                        .product-popup-modal__content-info>* {
  11703.                            max-height: 100%
  11704.                        }
  11705.                    }
  11706.  
  11707.                    .product-popup-modal__toggle {
  11708.                        background-color: black;
  11709.                        border: .1rem solid rgba(var(--color-foreground), .1);
  11710.                        border-radius: 50%;
  11711.                        color: rgba(var(--color-foreground), .55);
  11712.                        display: flex;
  11713.                        align-items: center;
  11714.                        justify-content: center;
  11715.                        cursor: pointer;
  11716.                        position: sticky;
  11717.                        padding: 1.2rem;
  11718.                        z-index: 2;
  11719.                        top: 1.5rem;
  11720.                        width: 4rem;
  11721.                        margin: 0 0 0 auto
  11722.                    }
  11723.  
  11724.                    .product-popup-modal__toggle:hover {
  11725.                        color: rgba(var(--color-foreground), .75)
  11726.                    }
  11727.  
  11728.                    .product-popup-modal__toggle .icon {
  11729.                        height: auto;
  11730.                        margin: 0;
  11731.                        width: 2.2rem
  11732.                    }
  11733.  
  11734.                    .product__media-list .media>* {
  11735.                        overflow: hidden
  11736.                    }
  11737.  
  11738.                    .thumbnail-list {
  11739.                        flex-wrap: wrap;
  11740.                        grid-gap: 1rem
  11741.                    }
  11742.  
  11743.                    .slider--mobile.thumbnail-list:after {
  11744.                        content: none
  11745.                    }
  11746.  
  11747.                    @media screen and (min-width: 750px) {
  11748.                        .product--stacked .thumbnail-list {
  11749.                            display: none
  11750.                        }
  11751.  
  11752.                        .thumbnail-list {
  11753.                            display: grid;
  11754.                            grid-template-columns: repeat(4, 1fr)
  11755.                        }
  11756.                    }
  11757.  
  11758.                    .thumbnail-list_item--variant:not(:first-child) {
  11759.                        display: none
  11760.                    }
  11761.  
  11762.                    @media screen and (min-width: 990px) {
  11763.                        .thumbnail-list {
  11764.                            grid-template-columns: repeat(4, 1fr)
  11765.                        }
  11766.  
  11767.                        .product--medium .thumbnail-list {
  11768.                            grid-template-columns: repeat(5, 1fr)
  11769.                        }
  11770.  
  11771.                        .product--large .thumbnail-list {
  11772.                            grid-template-columns: repeat(6, 1fr)
  11773.                        }
  11774.                    }
  11775.  
  11776.                    @media screen and (max-width: 749px) {
  11777.                        .product__media-item {
  11778.                            display: flex;
  11779.                            align-items: center
  11780.                        }
  11781.  
  11782.                        .product__modal-opener {
  11783.                            width: 100%
  11784.                        }
  11785.  
  11786.                        .thumbnail-slider {
  11787.                            display: flex;
  11788.                            align-items: center
  11789.                        }
  11790.  
  11791.                        .thumbnail-slider .thumbnail-list.slider {
  11792.                            display: flex;
  11793.                            padding: .5rem;
  11794.                            flex: 1;
  11795.                            scroll-padding-left: .5rem
  11796.                        }
  11797.  
  11798.                        .thumbnail-list__item.slider__slide {
  11799.                            width: calc(33% - .6rem)
  11800.                        }
  11801.                    }
  11802.  
  11803.                    @media screen and (min-width: 750px) {
  11804.                        .product--thumbnail_slider .thumbnail-slider {
  11805.                            display: flex;
  11806.                            align-items: center
  11807.                        }
  11808.  
  11809.                        .thumbnail-slider .thumbnail-list.slider--tablet-up {
  11810.                            display: flex;
  11811.                            padding: .5rem;
  11812.                            flex: 1;
  11813.                            scroll-padding-left: .5rem
  11814.                        }
  11815.  
  11816.                        .product__media-wrapper .slider-mobile-gutter .slider-button {
  11817.                            display: none
  11818.                        }
  11819.  
  11820.                        .thumbnail-list.slider--tablet-up .thumbnail-list__item.slider__slide {
  11821.                            width: calc(25% - .8rem)
  11822.                        }
  11823.  
  11824.                        .product--thumbnail_slider .slider-mobile-gutter .slider-button {
  11825.                            display: flex
  11826.                        }
  11827.                    }
  11828.  
  11829.                    @media screen and (min-width: 900px) {
  11830.                        .product--small .thumbnail-list.slider--tablet-up .thumbnail-list__item.slider__slide {
  11831.                            width: calc(25% - .8rem)
  11832.                        }
  11833.  
  11834.                        .thumbnail-list.slider--tablet-up .thumbnail-list__item.slider__slide {
  11835.                            width: calc(20% - .8rem)
  11836.                        }
  11837.                    }
  11838.  
  11839.                    .thumbnail {
  11840.                        position: absolute;
  11841.                        top: 0;
  11842.                        left: 0;
  11843.                        display: block;
  11844.                        height: 100%;
  11845.                        width: 100%;
  11846.                        padding: 0;
  11847.                        color: rgb(var(--color-foreground));
  11848.                        cursor: pointer;
  11849.                        background-color: transparent
  11850.                    }
  11851.  
  11852.                    .thumbnail:hover {
  11853.                        opacity: .7
  11854.                    }
  11855.  
  11856.                    .thumbnail.global-media-settings img {
  11857.                        border-radius: 0
  11858.                    }
  11859.  
  11860.                    .thumbnail[aria-current] {
  11861.                        box-shadow: 0 0 0 .1rem rgb(var(--color-foreground));
  11862.                        border-color: rgb(var(--color-foreground))
  11863.                    }
  11864.  
  11865.                    .image-magnify-full-size {
  11866.                        cursor: zoom-out;
  11867.                        z-index: 1;
  11868.                        margin: 0;
  11869.                        border-radius: calc(var(--media-radius) - var(--media-border-width))
  11870.                    }
  11871.  
  11872.                    .image-magnify-hover {
  11873.                        cursor: zoom-in
  11874.                    }
  11875.  
  11876.                    .product__modal-opener--image .product__media-zoom-none,
  11877.                    .product__media-icon--none {
  11878.                        display: none
  11879.                    }
  11880.  
  11881.                    .product__modal-opener>.loading__spinner {
  11882.                        top: 50%;
  11883.                        left: 50%;
  11884.                        transform: translate(-50%, -50%);
  11885.                        position: absolute;
  11886.                        display: flex;
  11887.                        align-items: center;
  11888.                        height: 48px;
  11889.                        width: 48px
  11890.                    }
  11891.  
  11892.                    .product__modal-opener .path {
  11893.                        stroke: rgb(var(--color-button));
  11894.                        opacity: .75
  11895.                    }
  11896.  
  11897.                    @media (hover: hover) {
  11898.  
  11899.                        .product__media-zoom-hover,
  11900.                        .product__media-icon--hover {
  11901.                            display: none
  11902.                        }
  11903.                    }
  11904.  
  11905.                    @media screen and (max-width: 749px) {
  11906.  
  11907.                        .product__media-zoom-hover,
  11908.                        .product__media-icon--hover {
  11909.                            display: flex
  11910.                        }
  11911.                    }
  11912.  
  11913.                    .js .product__media {
  11914.                        overflow: hidden !important
  11915.                    }
  11916.  
  11917.                    .thumbnail[aria-current]:focus-visible {
  11918.                        box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .5rem rgba(var(--color-foreground), .5)
  11919.                    }
  11920.  
  11921.                    .thumbnail[aria-current]:focus,
  11922.                    .thumbnail.focused {
  11923.                        outline: 0;
  11924.                        box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .5rem rgba(var(--color-foreground), .5)
  11925.                    }
  11926.  
  11927.                    @media (forced-colors: active) {
  11928.  
  11929.                        .thumbnail[aria-current]:focus,
  11930.                        .thumbnail.focused {
  11931.                            outline: transparent solid 1px
  11932.                        }
  11933.                    }
  11934.  
  11935.                    .thumbnail[aria-current]:focus:not(:focus-visible) {
  11936.                        outline: 0;
  11937.                        box-shadow: 0 0 0 .1rem rgb(var(--color-foreground))
  11938.                    }
  11939.  
  11940.                    .thumbnail img {
  11941.                        object-fit: cover;
  11942.                        width: 100%;
  11943.                        height: 100%;
  11944.                        pointer-events: none
  11945.                    }
  11946.  
  11947.                    .thumbnail__badge .icon {
  11948.                        width: 1rem;
  11949.                        height: 1rem
  11950.                    }
  11951.  
  11952.                    .thumbnail__badge .icon-3d-model {
  11953.                        width: 1.2rem;
  11954.                        height: 1.2rem
  11955.                    }
  11956.  
  11957.                    .thumbnail__badge {
  11958.                        color: rgb(var(--color-foreground), .6);
  11959.                        height: 2rem;
  11960.                        width: 2rem;
  11961.                        left: auto;
  11962.                        right: calc(.4rem + var(--media-border-width));
  11963.                        top: calc(.4rem + var(--media-border-width))
  11964.                    }
  11965.  
  11966.                    @media screen and (min-width: 750px) {
  11967.                        .product:not(.product--small) .thumbnail__badge {
  11968.                            height: 3rem;
  11969.                            width: 3rem
  11970.                        }
  11971.  
  11972.                        .product:not(.product--small) .thumbnail__badge .icon {
  11973.                            width: 1.2rem;
  11974.                            height: 1.2rem
  11975.                        }
  11976.  
  11977.                        .product:not(.product--small) .thumbnail__badge .icon-3d-model {
  11978.                            width: 1.4rem;
  11979.                            height: 1.4rem
  11980.                        }
  11981.                    }
  11982.  
  11983.                    .thumbnail-list__item {
  11984.                        position: relative
  11985.                    }
  11986.  
  11987.                    .thumbnail-list__item:before {
  11988.                        content: "";
  11989.                        display: block;
  11990.                        padding-bottom: 100%
  11991.                    }
  11992.  
  11993.                    .product:not(.featured-product) .product__view-details {
  11994.                        display: none
  11995.                    }
  11996.  
  11997.                    .product__view-details {
  11998.                        display: block;
  11999.                        text-decoration: none
  12000.                    }
  12001.  
  12002.                    .product__view-details:hover {
  12003.                        text-decoration: underline;
  12004.                        text-underline-offset: .3rem
  12005.                    }
  12006.  
  12007.                    .product__view-details .icon {
  12008.                        width: 1.2rem;
  12009.                        margin-left: 1.2rem;
  12010.                        flex-shrink: 0
  12011.                    }
  12012.  
  12013.                    .product__inventory {
  12014.                        display: flex;
  12015.                        align-items: center;
  12016.                        gap: .5rem
  12017.                    }
  12018.  
  12019.                    .product--no-media .product__inventory {
  12020.                        justify-content: center
  12021.                    }
  12022.  
  12023.                    .product__inventory.visibility-hidden:empty {
  12024.                        display: block
  12025.                    }
  12026.  
  12027.                    .product__inventory.visibility-hidden:empty:after {
  12028.                        content: "#"
  12029.                    }
  12030.  
  12031.                    .icon-with-text {
  12032.                        --icon-size: calc(var(--font-heading-scale) * 3rem);
  12033.                        --icon-spacing: calc(var(--font-heading-scale) * 1rem)
  12034.                    }
  12035.  
  12036.                    .icon-with-text--horizontal {
  12037.                        display: flex;
  12038.                        justify-content: center;
  12039.                        column-gap: 3rem;
  12040.                        flex-direction: row
  12041.                    }
  12042.  
  12043.                    .icon-with-text--vertical {
  12044.                        --icon-size: calc(var(--font-heading-scale) * 2rem)
  12045.                    }
  12046.  
  12047.                    .icon-with-text .icon {
  12048.                        fill: rgb(var(--color-foreground));
  12049.                        height: var(--icon-size);
  12050.                        width: var(--icon-size)
  12051.                    }
  12052.  
  12053.                    .icon-with-text--horizontal .icon,
  12054.                    .icon-with-text--horizontal img {
  12055.                        margin-bottom: var(--icon-spacing)
  12056.                    }
  12057.  
  12058.                    .icon-with-text--vertical .icon {
  12059.                        min-height: var(--icon-size);
  12060.                        min-width: var(--icon-size);
  12061.                        margin-right: var(--icon-spacing)
  12062.                    }
  12063.  
  12064.                    .icon-with-text img {
  12065.                        height: var(--icon-size);
  12066.                        width: var(--icon-size);
  12067.                        object-fit: contain
  12068.                    }
  12069.  
  12070.                    .icon-with-text--vertical img {
  12071.                        margin-right: var(--icon-spacing)
  12072.                    }
  12073.  
  12074.                    .icon-with-text--horizontal .h4 {
  12075.                        padding-top: calc(var(--icon-size) + var(--icon-spacing));
  12076.                        text-align: center
  12077.                    }
  12078.  
  12079.                    .icon-with-text--horizontal svg+.h4,
  12080.                    .icon-with-text--horizontal img+.h4,
  12081.                    .icon-with-text--horizontal.icon-with-text--text-only .h4 {
  12082.                        padding-top: 0
  12083.                    }
  12084.  
  12085.                    .icon-with-text__item {
  12086.                        display: flex;
  12087.                        align-items: center
  12088.                    }
  12089.  
  12090.                    .icon-with-text--horizontal .icon-with-text__item {
  12091.                        flex-direction: column;
  12092.                        width: 33%
  12093.                    }
  12094.  
  12095.                    .icon-with-text--vertical .icon-with-text__item {
  12096.                        margin-bottom: var(--icon-size)
  12097.                    }
  12098.  
  12099.                    .product__sku.visibility-hidden:after {
  12100.                        content: "#"
  12101.                    }
  12102.  
  12103.                    .product-media-container {
  12104.                        --aspect-ratio: var(--preview-ratio);
  12105.                        --ratio-percent: calc(1 / var(--aspect-ratio) * 100%);
  12106.                        position: relative;
  12107.                        width: 100%;
  12108.                        max-width: calc(100% - calc(var(--media-border-width) * 2))
  12109.                    }
  12110.  
  12111.                    .product-media-container.constrain-height {
  12112.                        --viewport-offset: 400px;
  12113.                        --constrained-min-height: 300px;
  12114.                        --constrained-height: max(var(--constrained-min-height), calc(100vh - var(--viewport-offset)));
  12115.                        margin-right: auto;
  12116.                        margin-left: auto
  12117.                    }
  12118.  
  12119.                    .product-media-container.constrain-height.media-fit-contain {
  12120.                        --contained-width: calc(var(--constrained-height) * var(--aspect-ratio));
  12121.                        width: min(var(--contained-width), 100%)
  12122.                    }
  12123.  
  12124.                    .product-media-container .media {
  12125.                        padding-top: var(--ratio-percent)
  12126.                    }
  12127.  
  12128.                    .product-media-container.constrain-height .media {
  12129.                        padding-top: min(var(--constrained-height), var(--ratio-percent))
  12130.                    }
  12131.  
  12132.                    @media screen and (max-width: 749px) {
  12133.                        .product-media-container.media-fit-cover {
  12134.                            display: flex;
  12135.                            align-self: stretch
  12136.                        }
  12137.  
  12138.                        .product-media-container.media-fit-cover .media {
  12139.                            position: initial
  12140.                        }
  12141.                    }
  12142.  
  12143.                    @media screen and (min-width: 750px) {
  12144.                        .product-media-container {
  12145.                            max-width: 100%
  12146.                        }
  12147.  
  12148.                        .product-media-container:not(.media-type-image) {
  12149.                            --aspect-ratio: var(--ratio)
  12150.                        }
  12151.  
  12152.                        .product-media-container.constrain-height {
  12153.                            --viewport-offset: 170px;
  12154.                            --constrained-min-height: 500px
  12155.                        }
  12156.  
  12157.                        .product-media-container.media-fit-cover,
  12158.                        .product-media-container.media-fit-cover .product__modal-opener,
  12159.                        .product-media-container.media-fit-cover .media {
  12160.                            height: 100%
  12161.                        }
  12162.  
  12163.                        .product-media-container.media-fit-cover .deferred-media__poster img {
  12164.                            object-fit: cover;
  12165.                            width: 100%
  12166.                        }
  12167.                    }
  12168.  
  12169.                    .product-media-container .product__modal-opener {
  12170.                        display: block;
  12171.                        position: relative
  12172.                    }
  12173.  
  12174.                    @media screen and (min-width: 750px) {
  12175.                        .product-media-container .product__modal-opener:not(.product__modal-opener--image) {
  12176.                            display: none
  12177.                        }
  12178.                    }
  12179.  
  12180.                    .recipient-form {
  12181.                        --recipient-checkbox-margin-top: .64rem;
  12182.                        display: block;
  12183.                        position: relative;
  12184.                        max-width: 44rem;
  12185.                        margin-bottom: 2.5rem
  12186.                    }
  12187.  
  12188.                    .recipient-form-field-label {
  12189.                        margin: .6rem 0
  12190.                    }
  12191.  
  12192.                    .recipient-form-field-label--space-between {
  12193.                        display: flex;
  12194.                        justify-content: space-between
  12195.                    }
  12196.  
  12197.                    .recipient-checkbox {
  12198.                        flex-grow: 1;
  12199.                        font-size: 1.6rem;
  12200.                        display: flex;
  12201.                        word-break: break-word;
  12202.                        align-items: flex-start;
  12203.                        max-width: inherit;
  12204.                        position: relative;
  12205.                        cursor: pointer
  12206.                    }
  12207.  
  12208.                    .no-js .recipient-checkbox {
  12209.                        display: none
  12210.                    }
  12211.  
  12212.                    .recipient-form>input[type=checkbox] {
  12213.                        position: absolute;
  12214.                        width: 1.6rem;
  12215.                        height: 1.6rem;
  12216.                        margin: var(--recipient-checkbox-margin-top) 0;
  12217.                        top: 0;
  12218.                        left: 0;
  12219.                        z-index: -1;
  12220.                        appearance: none;
  12221.                        -webkit-appearance: none
  12222.                    }
  12223.  
  12224.                    .recipient-fields__field {
  12225.                        margin: 0 0 2rem
  12226.                    }
  12227.  
  12228.                    .recipient-fields .field__label {
  12229.                        white-space: nowrap;
  12230.                        text-overflow: ellipsis;
  12231.                        max-width: calc(100% - 3.5rem);
  12232.                        overflow: hidden
  12233.                    }
  12234.  
  12235.                    .recipient-checkbox>svg {
  12236.                        margin-top: var(--recipient-checkbox-margin-top);
  12237.                        margin-right: 1.2rem;
  12238.                        flex-shrink: 0
  12239.                    }
  12240.  
  12241.                    .recipient-form .icon-checkmark {
  12242.                        visibility: hidden;
  12243.                        position: absolute;
  12244.                        left: .28rem;
  12245.                        z-index: 5;
  12246.                        top: .4rem
  12247.                    }
  12248.  
  12249.                    .recipient-form>input[type=checkbox]:checked+label .icon-checkmark {
  12250.                        visibility: visible
  12251.                    }
  12252.  
  12253.                    .js .recipient-fields {
  12254.                        display: none
  12255.                    }
  12256.  
  12257.                    .recipient-fields hr {
  12258.                        margin: 1.6rem auto
  12259.                    }
  12260.  
  12261.                    .recipient-form>input[type=checkbox]:checked~.recipient-fields {
  12262.                        display: block;
  12263.                        animation: animateMenuOpen var(--duration-default) ease
  12264.                    }
  12265.  
  12266.                    .recipient-form>input[type=checkbox]:not(:checked, :disabled)~.recipient-fields,
  12267.                    .recipient-email-label {
  12268.                        display: none
  12269.                    }
  12270.  
  12271.                    .js .recipient-email-label.required,
  12272.                    .no-js .recipient-email-label.optional {
  12273.                        display: inline
  12274.                    }
  12275.  
  12276.                    .recipient-form ul {
  12277.                        line-height: calc(1 + .6 / var(--font-body-scale));
  12278.                        padding-left: 4.4rem;
  12279.                        text-align: left
  12280.                    }
  12281.  
  12282.                    .recipient-form ul a {
  12283.                        display: inline
  12284.                    }
  12285.  
  12286.                    .recipient-form .error-message:first-letter {
  12287.                        text-transform: capitalize
  12288.                    }
  12289.  
  12290.                    @media screen and (forced-colors: active) {
  12291.                        .recipient-fields>hr {
  12292.                            border-top: .1rem solid rgb(var(--color-background))
  12293.                        }
  12294.  
  12295.                        .recipient-checkbox>svg {
  12296.                            background-color: inherit;
  12297.                            border: .1rem solid rgb(var(--color-background))
  12298.                        }
  12299.  
  12300.                        .recipient-form>input[type=checkbox]:checked+label .icon-checkmark {
  12301.                            border: none
  12302.                        }
  12303.                    }
  12304.                </style>
  12305.                <style>
  12306.                    .accordion summary {
  12307.                        display: flex;
  12308.                        position: relative;
  12309.                        line-height: 1;
  12310.                        padding: 1.5rem 0
  12311.                    }
  12312.  
  12313.                    .accordion .summary__title {
  12314.                        display: flex;
  12315.                        flex: 1
  12316.                    }
  12317.  
  12318.                    .accordion .summary__title+.icon-caret {
  12319.                        height: calc(var(--font-heading-scale) * .6rem)
  12320.                    }
  12321.  
  12322.                    .accordion+.accordion {
  12323.                        margin-top: 0;
  12324.                        border-top: none
  12325.                    }
  12326.  
  12327.                    .accordion {
  12328.                        margin-top: 2.5rem;
  12329.                        margin-bottom: 0;
  12330.                        border-top: .1rem solid rgba(var(--color-foreground), .08);
  12331.                        border-bottom: .1rem solid rgba(var(--color-foreground), .08)
  12332.                    }
  12333.  
  12334.                    .accordion__title {
  12335.                        display: inline-block;
  12336.                        max-width: calc(100% - 6rem);
  12337.                        min-height: 1.6rem;
  12338.                        margin: 0;
  12339.                        word-break: break-word
  12340.                    }
  12341.  
  12342.                    .accordion .icon-accordion {
  12343.                        align-self: center;
  12344.                        fill: rgb(var(--color-foreground));
  12345.                        height: calc(var(--font-heading-scale) * 2rem);
  12346.                        margin-right: calc(var(--font-heading-scale) * 1rem);
  12347.                        width: calc(var(--font-heading-scale) * 2rem)
  12348.                    }
  12349.  
  12350.                    .accordion details[open]>summary .icon-caret {
  12351.                        transform: rotate(180deg)
  12352.                    }
  12353.  
  12354.                    .accordion__content {
  12355.                        margin-bottom: 1.5rem;
  12356.                        word-break: break-word;
  12357.                        overflow-x: auto;
  12358.                        padding: 0 .6rem
  12359.                    }
  12360.  
  12361.                    .accordion__content img {
  12362.                        max-width: 100%
  12363.                    }
  12364.                </style>
  12365.                <style>
  12366.                    .price {
  12367.                        font-size: 1.6rem;
  12368.                        letter-spacing: .1rem;
  12369.                        line-height: calc(1 + .5 / var(--font-body-scale));
  12370.                        color: rgb(var(--color-foreground))
  12371.                    }
  12372.  
  12373.                    .price>* {
  12374.                        display: inline-block;
  12375.                        vertical-align: top
  12376.                    }
  12377.  
  12378.                    .price.price--unavailable {
  12379.                        visibility: hidden
  12380.                    }
  12381.  
  12382.                    .price--end {
  12383.                        text-align: right
  12384.                    }
  12385.  
  12386.                    .price .price-item {
  12387.                        display: inline-block;
  12388.                        margin: 0 1rem 0 0
  12389.                    }
  12390.  
  12391.                    .price__regular .price-item--regular {
  12392.                        margin-right: 0
  12393.                    }
  12394.  
  12395.                    .price:not(.price--show-badge) .price-item--last:last-of-type {
  12396.                        margin: 0
  12397.                    }
  12398.  
  12399.                    @media screen and (min-width: 750px) {
  12400.                        .price {
  12401.                            margin-bottom: 0
  12402.                        }
  12403.                    }
  12404.  
  12405.                    .price--large {
  12406.                        font-size: 1.6rem;
  12407.                        line-height: calc(1 + .5 / var(--font-body-scale));
  12408.                        letter-spacing: .13rem
  12409.                    }
  12410.  
  12411.                    @media screen and (min-width: 750px) {
  12412.                        .price--large {
  12413.                            font-size: 1.8rem
  12414.                        }
  12415.                    }
  12416.  
  12417.                    .price--sold-out .price__availability,
  12418.                    .price__regular {
  12419.                        display: block
  12420.                    }
  12421.  
  12422.                    .price__sale,
  12423.                    .price__availability,
  12424.                    .price .price__badge-sale,
  12425.                    .price .price__badge-sold-out,
  12426.                    .price--on-sale .price__regular,
  12427.                    .price--on-sale .price__availability {
  12428.                        display: none
  12429.                    }
  12430.  
  12431.                    .price--sold-out .price__badge-sold-out,
  12432.                    .price--on-sale .price__badge-sale,
  12433.                    .volume-pricing--sale-badge .price__badge-sale {
  12434.                        display: inline-block
  12435.                    }
  12436.  
  12437.                    .volume-pricing--sale-badge .price__badge-sale {
  12438.                        margin-left: .5rem
  12439.                    }
  12440.  
  12441.                    .price--on-sale .price__sale {
  12442.                        display: initial;
  12443.                        flex-direction: row;
  12444.                        flex-wrap: wrap
  12445.                    }
  12446.  
  12447.                    .price--center {
  12448.                        display: initial;
  12449.                        justify-content: center
  12450.                    }
  12451.  
  12452.                    .price--on-sale .price-item--regular {
  12453.                        text-decoration: line-through;
  12454.                        color: rgba(var(--color-foreground), .75);
  12455.                        font-size: 1.3rem
  12456.                    }
  12457.  
  12458.                    .unit-price {
  12459.                        display: block;
  12460.                        font-size: 1.1rem;
  12461.                        letter-spacing: .04rem;
  12462.                        line-height: calc(1 + .2 / var(--font-body-scale));
  12463.                        margin-top: .2rem;
  12464.                        text-transform: uppercase;
  12465.                        color: rgba(var(--color-foreground), .7)
  12466.                    }
  12467.                </style>
  12468.                <style>
  12469.                    slider-component {
  12470.                        --desktop-margin-left-first-item: max(5rem, calc((100vw - var(--page-width) + 10rem - var(--grid-desktop-horizontal-spacing)) / 2));
  12471.                        position: relative;
  12472.                        display: block
  12473.                    }
  12474.  
  12475.                    slider-component.slider-component-full-width {
  12476.                        --desktop-margin-left-first-item: 1.5rem
  12477.                    }
  12478.  
  12479.                    @media screen and (max-width: 749px) {
  12480.                        slider-component.page-width {
  12481.                            padding: 0 1.5rem
  12482.                        }
  12483.                    }
  12484.  
  12485.                    @media screen and (min-width: 749px) and (max-width: 990px) {
  12486.                        slider-component.page-width {
  12487.                            padding: 0 5rem
  12488.                        }
  12489.                    }
  12490.  
  12491.                    @media screen and (max-width: 989px) {
  12492.                        .no-js slider-component .slider {
  12493.                            padding-bottom: 3rem
  12494.                        }
  12495.                    }
  12496.  
  12497.                    .slider__slide {
  12498.                        --focus-outline-padding: .5rem;
  12499.                        --shadow-padding-top: calc((var(--shadow-vertical-offset) * -1 + var(--shadow-blur-radius)) * var(--shadow-visible));
  12500.                        --shadow-padding-bottom: calc((var(--shadow-vertical-offset) + var(--shadow-blur-radius)) * var(--shadow-visible));
  12501.                        scroll-snap-align: start;
  12502.                        flex-shrink: 0;
  12503.                        padding-bottom: 0
  12504.                    }
  12505.  
  12506.                    @media screen and (max-width: 749px) {
  12507.                        .slider.slider--mobile {
  12508.                            position: relative;
  12509.                            flex-wrap: inherit;
  12510.                            overflow-x: auto;
  12511.                            scroll-snap-type: x mandatory;
  12512.                            scroll-behavior: smooth;
  12513.                            scroll-padding-left: 1.5rem;
  12514.                            -webkit-overflow-scrolling: touch;
  12515.                            margin-bottom: 1rem
  12516.                        }
  12517.  
  12518.                        .slider--mobile:after {
  12519.                            content: "";
  12520.                            width: 0;
  12521.                            padding-left: 1.5rem
  12522.                        }
  12523.  
  12524.                        .slider.slider--mobile .slider__slide {
  12525.                            margin-bottom: 0;
  12526.                            padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
  12527.                            padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
  12528.                        }
  12529.  
  12530.                        .slider.slider--mobile.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
  12531.                            padding-bottom: var(--focus-outline-padding)
  12532.                        }
  12533.  
  12534.                        .slider.slider--mobile.contains-content-container .slider__slide {
  12535.                            --focus-outline-padding: 0rem
  12536.                        }
  12537.                    }
  12538.  
  12539.                    @media screen and (min-width: 750px) {
  12540.                        .slider.slider--tablet-up {
  12541.                            position: relative;
  12542.                            flex-wrap: inherit;
  12543.                            overflow-x: auto;
  12544.                            scroll-snap-type: x mandatory;
  12545.                            scroll-behavior: smooth;
  12546.                            scroll-padding-left: 1rem;
  12547.                            -webkit-overflow-scrolling: touch
  12548.                        }
  12549.  
  12550.                        .slider.slider--tablet-up .slider__slide {
  12551.                            margin-bottom: 0
  12552.                        }
  12553.                    }
  12554.  
  12555.                    @media screen and (max-width: 989px) {
  12556.                        .slider.slider--tablet {
  12557.                            position: relative;
  12558.                            flex-wrap: inherit;
  12559.                            overflow-x: auto;
  12560.                            scroll-snap-type: x mandatory;
  12561.                            scroll-behavior: smooth;
  12562.                            scroll-padding-left: 1.5rem;
  12563.                            -webkit-overflow-scrolling: touch;
  12564.                            margin-bottom: 1rem
  12565.                        }
  12566.  
  12567.                        .slider--tablet:after {
  12568.                            content: "";
  12569.                            width: 0;
  12570.                            padding-left: 1.5rem;
  12571.                            margin-left: calc(-1 * var(--grid-desktop-horizontal-spacing))
  12572.                        }
  12573.  
  12574.                        .slider.slider--tablet .slider__slide {
  12575.                            margin-bottom: 0;
  12576.                            padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
  12577.                            padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
  12578.                        }
  12579.  
  12580.                        .slider.slider--tablet.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
  12581.                            padding-bottom: var(--focus-outline-padding)
  12582.                        }
  12583.  
  12584.                        .slider.slider--tablet.contains-content-container .slider__slide {
  12585.                            --focus-outline-padding: 0rem
  12586.                        }
  12587.                    }
  12588.  
  12589.                    .slider--everywhere {
  12590.                        position: relative;
  12591.                        flex-wrap: inherit;
  12592.                        overflow-x: auto;
  12593.                        scroll-snap-type: x mandatory;
  12594.                        scroll-behavior: smooth;
  12595.                        -webkit-overflow-scrolling: touch;
  12596.                        margin-bottom: 1rem
  12597.                    }
  12598.  
  12599.                    .slider.slider--everywhere .slider__slide {
  12600.                        margin-bottom: 0;
  12601.                        scroll-snap-align: center
  12602.                    }
  12603.  
  12604.                    @media screen and (min-width: 990px) {
  12605.                        .slider-component-desktop.page-width {
  12606.                            max-width: none
  12607.                        }
  12608.  
  12609.                        .slider--desktop {
  12610.                            position: relative;
  12611.                            flex-wrap: inherit;
  12612.                            overflow-x: auto;
  12613.                            scroll-snap-type: x mandatory;
  12614.                            scroll-behavior: smooth;
  12615.                            -webkit-overflow-scrolling: touch;
  12616.                            margin-bottom: 1rem;
  12617.                            scroll-padding-left: var(--desktop-margin-left-first-item)
  12618.                        }
  12619.  
  12620.                        .slider--desktop:after {
  12621.                            content: "";
  12622.                            width: 0;
  12623.                            padding-left: 5rem;
  12624.                            margin-left: calc(-1 * var(--grid-desktop-horizontal-spacing))
  12625.                        }
  12626.  
  12627.                        .slider.slider--desktop .slider__slide {
  12628.                            margin-bottom: 0;
  12629.                            padding-top: max(var(--focus-outline-padding), var(--shadow-padding-top));
  12630.                            padding-bottom: max(var(--focus-outline-padding), var(--shadow-padding-bottom))
  12631.                        }
  12632.  
  12633.                        .slider--desktop .slider__slide:first-child {
  12634.                            margin-left: var(--desktop-margin-left-first-item);
  12635.                            scroll-margin-left: var(--desktop-margin-left-first-item)
  12636.                        }
  12637.  
  12638.                        .slider-component-full-width .slider--desktop {
  12639.                            scroll-padding-left: 1.5rem
  12640.                        }
  12641.  
  12642.                        .slider-component-full-width .slider--desktop .slider__slide:first-child {
  12643.                            margin-left: 1.5rem;
  12644.                            scroll-margin-left: 1.5rem
  12645.                        }
  12646.  
  12647.                        .slider-component-full-width .slider--desktop:after {
  12648.                            padding-left: 1.5rem
  12649.                        }
  12650.  
  12651.                        .slider--desktop.grid--5-col-desktop .grid__item {
  12652.                            width: calc((100% - var(--desktop-margin-left-first-item)) / 5 - var(--grid-desktop-horizontal-spacing) * 2)
  12653.                        }
  12654.  
  12655.                        .slider--desktop.grid--4-col-desktop .grid__item {
  12656.                            width: calc((100% - var(--desktop-margin-left-first-item)) / 4 - var(--grid-desktop-horizontal-spacing) * 3)
  12657.                        }
  12658.  
  12659.                        .slider--desktop.grid--3-col-desktop .grid__item {
  12660.                            width: calc((100% - var(--desktop-margin-left-first-item)) / 3 - var(--grid-desktop-horizontal-spacing) * 4)
  12661.                        }
  12662.  
  12663.                        .slider--desktop.grid--2-col-desktop .grid__item {
  12664.                            width: calc((100% - var(--desktop-margin-left-first-item)) / 2 - var(--grid-desktop-horizontal-spacing) * 5)
  12665.                        }
  12666.  
  12667.                        .slider--desktop.grid--1-col-desktop .grid__item {
  12668.                            width: calc((100% - var(--desktop-margin-left-first-item)) - var(--grid-desktop-horizontal-spacing) * 9)
  12669.                        }
  12670.  
  12671.                        .slider.slider--desktop.contains-card--standard .slider__slide:not(.collection-list__item--no-media) {
  12672.                            padding-bottom: var(--focus-outline-padding)
  12673.                        }
  12674.  
  12675.                        .slider.slider--desktop.contains-content-container .slider__slide {
  12676.                            --focus-outline-padding: 0rem
  12677.                        }
  12678.                    }
  12679.  
  12680.                    @media (prefers-reduced-motion) {
  12681.                        .slider {
  12682.                            scroll-behavior: auto
  12683.                        }
  12684.                    }
  12685.  
  12686.                    .slider {
  12687.                        scrollbar-color: rgb(var(--color-foreground)) rgba(var(--color-foreground), .04);
  12688.                        -ms-overflow-style: none;
  12689.                        scrollbar-width: none
  12690.                    }
  12691.  
  12692.                    .slider::-webkit-scrollbar {
  12693.                        height: .4rem;
  12694.                        width: .4rem;
  12695.                        display: none
  12696.                    }
  12697.  
  12698.                    .no-js .slider {
  12699.                        -ms-overflow-style: auto;
  12700.                        scrollbar-width: auto
  12701.                    }
  12702.  
  12703.                    .no-js .slider::-webkit-scrollbar {
  12704.                        display: initial
  12705.                    }
  12706.  
  12707.                    .slider::-webkit-scrollbar-thumb {
  12708.                        background-color: rgb(var(--color-foreground));
  12709.                        border-radius: .4rem;
  12710.                        border: 0
  12711.                    }
  12712.  
  12713.                    .slider::-webkit-scrollbar-track {
  12714.                        background: rgba(var(--color-foreground), .04);
  12715.                        border-radius: .4rem
  12716.                    }
  12717.  
  12718.                    .slider-counter {
  12719.                        display: flex;
  12720.                        justify-content: center;
  12721.                        min-width: 4.4rem
  12722.                    }
  12723.  
  12724.                    @media screen and (min-width: 750px) {
  12725.                        .slider-counter--dots {
  12726.                            margin: 0 1.2rem
  12727.                        }
  12728.                    }
  12729.  
  12730.                    .slider-counter__link {
  12731.                        padding: 1rem
  12732.                    }
  12733.  
  12734.                    @media screen and (max-width: 749px) {
  12735.                        .slider-counter__link {
  12736.                            padding: .7rem
  12737.                        }
  12738.                    }
  12739.  
  12740.                    .slider-counter__link--dots .dot {
  12741.                        width: 1rem;
  12742.                        height: 1rem;
  12743.                        border-radius: 50%;
  12744.                        border: .1rem solid rgba(var(--color-foreground), .5);
  12745.                        padding: 0;
  12746.                        display: block
  12747.                    }
  12748.  
  12749.                    .slider-counter__link--active.slider-counter__link--dots .dot {
  12750.                        background-color: rgb(var(--color-foreground))
  12751.                    }
  12752.  
  12753.                    @media screen and (forced-colors: active) {
  12754.                        .slider-counter__link--active.slider-counter__link--dots .dot {
  12755.                            background-color: CanvasText
  12756.                        }
  12757.                    }
  12758.  
  12759.                    .slider-counter__link--dots:not(.slider-counter__link--active):hover .dot {
  12760.                        border-color: rgb(var(--color-foreground))
  12761.                    }
  12762.  
  12763.                    .slider-counter__link--dots .dot,
  12764.                    .slider-counter__link--numbers {
  12765.                        transition: transform .2s ease-in-out
  12766.                    }
  12767.  
  12768.                    .slider-counter__link--active.slider-counter__link--numbers,
  12769.                    .slider-counter__link--dots:not(.slider-counter__link--active):hover .dot,
  12770.                    .slider-counter__link--numbers:hover {
  12771.                        transform: scale(1.1)
  12772.                    }
  12773.  
  12774.                    .slider-counter__link--numbers {
  12775.                        color: rgba(var(--color-foreground), .5);
  12776.                        text-decoration: none
  12777.                    }
  12778.  
  12779.                    .slider-counter__link--numbers:hover {
  12780.                        color: rgb(var(--color-foreground))
  12781.                    }
  12782.  
  12783.                    .slider-counter__link--active.slider-counter__link--numbers {
  12784.                        text-decoration: underline;
  12785.                        color: rgb(var(--color-foreground))
  12786.                    }
  12787.  
  12788.                    .slider-buttons {
  12789.                        display: flex;
  12790.                        align-items: center;
  12791.                        justify-content: center
  12792.                    }
  12793.  
  12794.                    @media screen and (min-width: 990px) {
  12795.                        .slider:not(.slider--everywhere):not(.slider--desktop)+.slider-buttons {
  12796.                            display: none
  12797.                        }
  12798.                    }
  12799.  
  12800.                    @media screen and (max-width: 989px) {
  12801.                        .slider--desktop:not(.slider--tablet)+.slider-buttons {
  12802.                            display: none
  12803.                        }
  12804.                    }
  12805.  
  12806.                    @media screen and (min-width: 750px) {
  12807.                        .slider--mobile+.slider-buttons {
  12808.                            display: none
  12809.                        }
  12810.                    }
  12811.  
  12812.                    .slider-button {
  12813.                        color: rgba(var(--color-foreground), .75);
  12814.                        background: transparent;
  12815.                        border: none;
  12816.                        cursor: pointer;
  12817.                        width: 44px;
  12818.                        height: 44px;
  12819.                        display: flex;
  12820.                        align-items: center;
  12821.                        justify-content: center
  12822.                    }
  12823.  
  12824.                    .slider-button:not([disabled]):hover {
  12825.                        color: rgb(var(--color-foreground))
  12826.                    }
  12827.  
  12828.                    .slider-button .icon {
  12829.                        height: .6rem
  12830.                    }
  12831.  
  12832.                    .slider-button[disabled] .icon {
  12833.                        color: rgba(var(--color-foreground), .3);
  12834.                        cursor: not-allowed
  12835.                    }
  12836.  
  12837.                    .slider-button--next .icon {
  12838.                        transform: rotate(-90deg)
  12839.                    }
  12840.  
  12841.                    .slider-button--prev .icon {
  12842.                        transform: rotate(90deg)
  12843.                    }
  12844.  
  12845.                    .slider-button--next:not([disabled]):hover .icon {
  12846.                        transform: rotate(-90deg) scale(1.1)
  12847.                    }
  12848.  
  12849.                    .slider-button--prev:not([disabled]):hover .icon {
  12850.                        transform: rotate(90deg) scale(1.1)
  12851.                    }
  12852.                </style>
  12853.                <style>
  12854.                    .rating {
  12855.                        display: inline-block;
  12856.                        margin: 0
  12857.                    }
  12858.  
  12859.                    .product .rating-star {
  12860.                        --letter-spacing: .8;
  12861.                        --font-size: 1.7
  12862.                    }
  12863.  
  12864.                    .card-wrapper .rating-star {
  12865.                        --letter-spacing: .7;
  12866.                        --font-size: 1.4
  12867.                    }
  12868.  
  12869.                    .rating-star {
  12870.                        --color-rating-star: rgb(var(--color-foreground));
  12871.                        --percent: calc((var(--rating) / var(--rating-max) + var(--rating-decimal) * var(--font-size) / (var(--rating-max) * (var(--letter-spacing) + var(--font-size)))) * 100%);
  12872.                        letter-spacing: calc(var(--letter-spacing) * 1rem);
  12873.                        font-size: calc(var(--font-size) * 1rem);
  12874.                        line-height: 1;
  12875.                        display: inline-block;
  12876.                        font-family: Times;
  12877.                        margin: 0
  12878.                    }
  12879.  
  12880.                    .rating-star:before {
  12881.                        content: "\2605\2605\2605\2605\2605";
  12882.                        background: linear-gradient(90deg, var(--color-rating-star) var(--percent), rgba(var(--color-foreground), .15) var(--percent));
  12883.                        -webkit-background-clip: text;
  12884.                        -webkit-text-fill-color: transparent
  12885.                    }
  12886.  
  12887.                    .rating-text {
  12888.                        display: none
  12889.                    }
  12890.  
  12891.                    .rating-count {
  12892.                        display: inline-block;
  12893.                        margin: 0
  12894.                    }
  12895.  
  12896.                    @media (forced-colors: active) {
  12897.                        .rating {
  12898.                            display: none
  12899.                        }
  12900.  
  12901.                        .rating-text {
  12902.                            display: block
  12903.                        }
  12904.                    }
  12905.                </style>
  12906.                <style>
  12907.                    .deferred-media__poster {
  12908.                        background-color: transparent;
  12909.                        border: none;
  12910.                        cursor: pointer;
  12911.                        margin: 0;
  12912.                        padding: 0;
  12913.                        height: 100%;
  12914.                        width: 100%;
  12915.                        overflow: hidden;
  12916.                        border-radius: calc(var(--border-radius) - var(--border-width))
  12917.                    }
  12918.  
  12919.                    .media>.deferred-media__poster {
  12920.                        display: flex;
  12921.                        align-items: center;
  12922.                        justify-content: center
  12923.                    }
  12924.  
  12925.                    .deferred-media__poster img {
  12926.                        width: auto;
  12927.                        max-width: 100%;
  12928.                        height: 100%
  12929.                    }
  12930.  
  12931.                    .deferred-media {
  12932.                        overflow: hidden
  12933.                    }
  12934.  
  12935.                    .deferred-media:not([loaded]) template {
  12936.                        z-index: -1
  12937.                    }
  12938.  
  12939.                    .deferred-media[loaded]>.deferred-media__poster {
  12940.                        display: none
  12941.                    }
  12942.  
  12943.                    .deferred-media__poster:focus-visible {
  12944.                        outline: none;
  12945.                        box-shadow: 0 0 0 var(--media-border-width) rgba(var(--color-foreground), var(--media-border-opacity)), 0 0 0 calc(var(--media-border-width) + .3rem) rgb(var(--color-background)), 0 0 0 calc(var(--media-border-width) + .5rem) rgba(var(--color-foreground), .5);
  12946.                        border-radius: calc(var(--media-radius) - var(--media-border-width))
  12947.                    }
  12948.  
  12949.                    .deferred-media__poster:focus {
  12950.                        outline: none;
  12951.                        box-shadow: 0 0 0 var(--media-border-width) rgba(var(--color-foreground), var(--media-border-opacity)), 0 0 0 calc(var(--media-border-width) + .3rem) rgb(var(--color-background)), 0 0 0 calc(var(--media-border-width) + .5rem) rgba(var(--color-foreground), .5);
  12952.                        border-radius: calc(var(--media-radius) - var(--media-border-width))
  12953.                    }
  12954.  
  12955.                    .global-media-settings--full-width .deferred-media__poster,
  12956.                    .global-media-settings--full-width .deferred-media__poster:is(:focus, :focus-visible) {
  12957.                        border-radius: 0
  12958.                    }
  12959.  
  12960.                    @media (forced-colors: active) {
  12961.                        .deferred-media__poster:focus {
  12962.                            outline: transparent solid 1px
  12963.                        }
  12964.                    }
  12965.  
  12966.                    .deferred-media__poster:focus:not(:focus-visible) {
  12967.                        outline: 0;
  12968.                        box-shadow: none
  12969.                    }
  12970.  
  12971.                    .deferred-media__poster-button {
  12972.                        background-color: black;
  12973.                        border: .1rem solid rgba(var(--color-foreground), .1);
  12974.                        border-radius: 50%;
  12975.                        color: rgb(var(--color-foreground));
  12976.                        display: flex;
  12977.                        align-items: center;
  12978.                        justify-content: center;
  12979.                        height: 6.2rem;
  12980.                        width: 6.2rem;
  12981.                        position: absolute;
  12982.                        left: 50%;
  12983.                        top: 50%;
  12984.                        transform: translate(-50%, -50%) scale(1);
  12985.                        transition: transform var(--duration-short) ease, color var(--duration-short) ease;
  12986.                        z-index: 1
  12987.                    }
  12988.  
  12989.                    .deferred-media__poster-button:hover {
  12990.                        transform: translate(-50%, -50%) scale(1.1)
  12991.                    }
  12992.  
  12993.                    .deferred-media__poster-button .icon {
  12994.                        width: 2rem;
  12995.                        height: 2rem
  12996.                    }
  12997.  
  12998.                    .deferred-media__poster-button .icon-play {
  12999.                        margin-left: .2rem
  13000.                    }
  13001.                </style>
  13002.                <style data-shopify>
  13003.                    .section-template--17040648077525__main-padding {
  13004.                        padding-top: 45px;
  13005.                        padding-bottom: 45px;
  13006.                    }
  13007.  
  13008.                    @media screen and (min-width: 750px) {
  13009.                        .section-template--17040648077525__main-padding {
  13010.                            padding-top: 60px;
  13011.                            padding-bottom: 60px;
  13012.                        }
  13013.                    }
  13014.                </style>
  13015.                <script src="cdn/shop/t/4/assets/product-infob121.js?v=81873523020508815201701676179"
  13016.                    defer="defer"></script>
  13017.                <script src="cdn/shop/t/4/assets/product-form5df2.js?v=133081758708377679181701676179"
  13018.                    defer="defer"></script>
  13019.  
  13020.                <div class="page-width">
  13021.                    <div
  13022.                        class="product product--small product--left product--thumbnail_slider product--mobile-hide grid grid--1-col grid--2-col-tablet">
  13023.                        <div class="grid__item product__media-wrapper">
  13024.  
  13025.                            <media-gallery id="MediaGallery-template--17040648077525__main" role="region"
  13026.                                class="product__column-sticky" aria-label="Gallery Viewer"
  13027.                                data-desktop-layout="thumbnail_slider">
  13028.                                <div id="GalleryStatus-template--17040648077525__main" class="visually-hidden"
  13029.                                    role="status"></div>
  13030.                                <slider-component id="GalleryViewer-template--17040648077525__main"
  13031.                                    class="slider-mobile-gutter"><a
  13032.                                        class="skip-to-content-link button visually-hidden quick-add-hidden"
  13033.                                        href="#ProductInfo-template--17040648077525__main">
  13034.                                        Skip to product information
  13035.                                    </a>
  13036.                                    <ul id="Slider-Gallery-template--17040648077525__main"
  13037.                                        class="product__media-list contains-media grid grid--peek list-unstyled slider slider--mobile"
  13038.                                        role="list">
  13039.                                        <li id="Slide-template--17040648077525__main-33478743672119"
  13040.                                            class="product__media-item grid__item slider__slide is-active scroll-trigger animate--fade-in"
  13041.                                            data-media-id="template--17040648077525__main-33478743672119">
  13042.  
  13043.                                            <div class="product-media-container media-type-image media-fit-contain global-media-settings gradient constrain-height"
  13044.                                                style="--ratio: 1.0; --preview-ratio: 1.0;">
  13045.                                                <noscript>
  13046.                                                    <div class="product__media media">
  13047.                                                        <img src="https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg"
  13048.                                                            alt="KOITOTO"
  13049.                                                            srcset="https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 246w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 493w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 600w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 713w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg3 823w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 990w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 1100w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 1206w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 1346w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 1426w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 1646w, https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg 1946w"
  13050.                                                            width="1946" height="1946"
  13051.                                                            sizes="(min-width: 1200px) 495px, (min-width: 990px) calc(45.0vw - 10rem), (min-width: 750px) calc((100vw - 11.5rem) / 2), calc(100vw / 1 - 4rem)">
  13052.                                                    </div>
  13053.                                                </noscript>
  13054.  
  13055.                                                <modal-opener
  13056.                                                    class="product__modal-opener product__modal-opener--image no-js-hidden"
  13057.                                                    data-modal="#ProductModal-template--17040648077525__main">
  13058.                                                    <span
  13059.                                                        class="product__media-icon motion-reduce quick-add-hidden product__media-icon--lightbox"
  13060.                                                        aria-hidden="true"><svg aria-hidden="true" focusable="false"
  13061.                                                            class="icon icon-plus" width="19" height="19"
  13062.                                                            viewBox="0 0 19 19" fill="none"
  13063.                                                            xmlns="http://www.w3.org/2000/svg">
  13064.                                                            <path fill-rule="evenodd" clip-rule="evenodd"
  13065.                                                                d="M4.66724 7.93978C4.66655 7.66364 4.88984 7.43922 5.16598 7.43853L10.6996 7.42464C10.9758 7.42395 11.2002 7.64724 11.2009 7.92339C11.2016 8.19953 10.9783 8.42395 10.7021 8.42464L5.16849 8.43852C4.89235 8.43922 4.66793 8.21592 4.66724 7.93978Z"
  13066.                                                                fill="currentColor" />
  13067.                                                            <path fill-rule="evenodd" clip-rule="evenodd"
  13068.                                                                d="M7.92576 4.66463C8.2019 4.66394 8.42632 4.88723 8.42702 5.16337L8.4409 10.697C8.44159 10.9732 8.2183 11.1976 7.94215 11.1983C7.66601 11.199 7.44159 10.9757 7.4409 10.6995L7.42702 5.16588C7.42633 4.88974 7.64962 4.66532 7.92576 4.66463Z"
  13069.                                                                fill="currentColor" />
  13070.                                                            <path fill-rule="evenodd" clip-rule="evenodd"
  13071.                                                                d="M12.8324 3.03011C10.1255 0.323296 5.73693 0.323296 3.03011 3.03011C0.323296 5.73693 0.323296 10.1256 3.03011 12.8324C5.73693 15.5392 10.1255 15.5392 12.8324 12.8324C15.5392 10.1256 15.5392 5.73693 12.8324 3.03011ZM2.32301 2.32301C5.42035 -0.774336 10.4421 -0.774336 13.5395 2.32301C16.6101 5.39361 16.6366 10.3556 13.619 13.4588L18.2473 18.0871C18.4426 18.2824 18.4426 18.599 18.2473 18.7943C18.0521 18.9895 17.7355 18.9895 17.5402 18.7943L12.8778 14.1318C9.76383 16.6223 5.20839 16.4249 2.32301 13.5395C-0.774335 10.4421 -0.774335 5.42035 2.32301 2.32301Z"
  13072.                                                                fill="currentColor" />
  13073.                                                        </svg>
  13074.                                                    </span>
  13075.  
  13076.                                                    <style>
  13077.                                                        .loading__spinner {
  13078.                                                            position: absolute;
  13079.                                                            z-index: 1;
  13080.                                                            width: 1.8rem
  13081.                                                        }
  13082.  
  13083.                                                        .loading__spinner {
  13084.                                                            width: 1.8rem;
  13085.                                                            display: inline-block
  13086.                                                        }
  13087.  
  13088.                                                        .spinner {
  13089.                                                            animation: rotator 1.4s linear infinite
  13090.                                                        }
  13091.  
  13092.                                                        @keyframes rotator {
  13093.                                                            0% {
  13094.                                                                transform: rotate(0)
  13095.                                                            }
  13096.  
  13097.                                                            to {
  13098.                                                                transform: rotate(270deg)
  13099.                                                            }
  13100.                                                        }
  13101.  
  13102.                                                        .path {
  13103.                                                            stroke-dasharray: 280;
  13104.                                                            stroke-dashoffset: 0;
  13105.                                                            transform-origin: center;
  13106.                                                            stroke: rgb(var(--color-foreground));
  13107.                                                            animation: dash 1.4s ease-in-out infinite
  13108.                                                        }
  13109.  
  13110.                                                        @media screen and (forced-colors: active) {
  13111.                                                            .path {
  13112.                                                                stroke: CanvasText
  13113.                                                            }
  13114.                                                        }
  13115.  
  13116.                                                        @keyframes dash {
  13117.                                                            0% {
  13118.                                                                stroke-dashoffset: 280
  13119.                                                            }
  13120.  
  13121.                                                            50% {
  13122.                                                                stroke-dashoffset: 75;
  13123.                                                                transform: rotate(135deg)
  13124.                                                            }
  13125.  
  13126.                                                            to {
  13127.                                                                stroke-dashoffset: 280;
  13128.                                                                transform: rotate(450deg)
  13129.                                                            }
  13130.                                                        }
  13131.  
  13132.                                                        .loading__spinner:not(.hidden)+.cart-item__price-wrapper,
  13133.                                                        .loading__spinner:not(.hidden)~cart-remove-button {
  13134.                                                            opacity: 50%
  13135.                                                        }
  13136.  
  13137.                                                        .loading__spinner:not(.hidden)~cart-remove-button {
  13138.                                                            pointer-events: none;
  13139.                                                            cursor: default
  13140.                                                        }
  13141.                                                    </style>
  13142.                                                    <div class="loading__spinner hidden">
  13143.                                                        <svg aria-hidden="true" focusable="false" class="spinner"
  13144.                                                            viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg">
  13145.                                                            <circle class="path" fill="none" stroke-width="6" cx="33"
  13146.                                                                cy="33" r="30"></circle>
  13147.                                                        </svg>
  13148.                                                    </div>
  13149.                                                    <div class="product__media media media--transparent">
  13150.                                                        <img src="https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg"
  13151.                                                            alt="KOITOTO" width="1000" height="1000"
  13152.                                                            class="image-magnify-lightbox"
  13153.                                                            sizes="(min-width: 1200px) 495px, (min-width: 990px) calc(45.0vw - 10rem), (min-width: 750px) calc((100vw - 11.5rem) / 2), calc(100vw / 1 - 4rem)">
  13154.                                                    </div>
  13155.                                                    <button
  13156.                                                        class="product__media-toggle quick-add-hidden product__media-zoom-lightbox"
  13157.                                                        type="button" aria-haspopup="dialog"
  13158.                                                        data-media-id="33478743672119">
  13159.                                                        <span class="visually-hidden">
  13160.                                                            Open media 1 in modal
  13161.                                                        </span>
  13162.                                                    </button>
  13163.                                                </modal-opener>
  13164.                                            </div>
  13165.  
  13166.                                        </li>
  13167.                                    </ul>
  13168.                                    <div class="slider-buttons no-js-hidden quick-add-hidden small-hide">
  13169.                                        <button type="button" class="slider-button slider-button--prev" name="previous"
  13170.                                            aria-label="Slide left">
  13171.                                            <svg aria-hidden="true" focusable="false" class="icon icon-caret"
  13172.                                                viewBox="0 0 10 6">
  13173.                                                <path fill-rule="evenodd" clip-rule="evenodd"
  13174.                                                    d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z"
  13175.                                                    fill="currentColor">
  13176.                                            </svg>
  13177.  
  13178.                                        </button>
  13179.                                        <div class="slider-counter caption">
  13180.                                            <span class="slider-counter--current">1</span>
  13181.                                            <span aria-hidden="true"> / </span>
  13182.                                            <span class="visually-hidden">of</span>
  13183.                                            <span class="slider-counter--total">1</span>
  13184.                                        </div>
  13185.                                        <button type="button" class="slider-button slider-button--next" name="next"
  13186.                                            aria-label="Slide right">
  13187.                                            <svg aria-hidden="true" focusable="false" class="icon icon-caret"
  13188.                                                viewBox="0 0 10 6">
  13189.                                                <path fill-rule="evenodd" clip-rule="evenodd"
  13190.                                                    d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z"
  13191.                                                    fill="currentColor">
  13192.                                            </svg>
  13193.  
  13194.                                        </button>
  13195.                                    </div>
  13196.                                </slider-component>
  13197.                            </media-gallery>
  13198.  
  13199.                        </div>
  13200.                        <div class="product__info-wrapper grid__item scroll-trigger animate--slide-in">
  13201.                            <product-info id="ProductInfo-template--17040648077525__main"
  13202.                                data-section="template--17040648077525__main" data-url="https://infinite-style.com/"
  13203.                                class="product__info-container product__column-sticky">
  13204.                                <div class="product__title">
  13205.                                    <h1 style=" color: black;">KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang</h1>
  13206.                                    <a href="https://infinite-style.com/" class="product__title">
  13207.                                        <h2 class="h1">
  13208.                                            KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang
  13209.                                        </h2>
  13210.                                    </a>
  13211.                                </div>
  13212.                                <div class="no-js-hidden" id="price-template--17040648077525__main" role="status">
  13213.                                    <div class="
  13214.    price price--large price--on-sale price--show-badge">
  13215.                                        <div class="price__container">
  13216.                                            <div class="price__regular"><span
  13217.                                                    class="visually-hidden visually-hidden--inline">Regular
  13218.                                                    price</span>
  13219.                                                <span class="price-item price-item--regular">
  13220.                                                    Rp 5.000,00
  13221.                                                </span>
  13222.                                            </div>
  13223.                                            <div class="price__sale">
  13224.                                                <span class="visually-hidden visually-hidden--inline">Regular
  13225.                                                    price</span>
  13226.                                                <span>
  13227.                                                    <s class="price-item price-item--regular">
  13228.  
  13229.                                                        Rp 90.000
  13230.  
  13231.                                                    </s>
  13232.                                                </span><span class="visually-hidden visually-hidden--inline">Sale
  13233.                                                    price</span>
  13234.                                                <span class="price-item price-item--sale price-item--last">
  13235.                                                    Rp 10.000
  13236.                                                </span>
  13237.                                            </div>
  13238.                                            <small class="unit-price caption hidden">
  13239.                                                <span class="visually-hidden">Unit price</span>
  13240.                                                <span class="price-item price-item--last">
  13241.                                                    <span></span>
  13242.                                                    <span aria-hidden="true">/</span>
  13243.                                                    <span class="visually-hidden">&nbsp;per&nbsp;</span>
  13244.                                                    <span>
  13245.                                                    </span>
  13246.                                                </span>
  13247.                                            </small>
  13248.                                        </div><span class="badge price__badge-sale color-accent-1">
  13249.                                            Discount
  13250.                                        </span>
  13251.  
  13252.                                        <span class="badge price__badge-sold-out color-background-1">
  13253.                                            Sold out
  13254.                                        </span>
  13255.                                    </div>
  13256.                                </div>
  13257.                                <div class="product__tax caption rte"></div>
  13258.                                <div>
  13259.                                    <form method="post" action="https://infinite-style.com/"
  13260.                                        id="product-form-installment-template--17040648077525__main"
  13261.                                        accept-charset="UTF-8" class="installment caption-large"
  13262.                                        enctype="multipart/form-data"><input type="hidden" name="form_type"
  13263.                                            value="product" /><input type="hidden" name="utf8" value="✓" /><input
  13264.                                            type="hidden" name="id" value="43114192093653">
  13265.  
  13266.                                        <input type="hidden" name="product-id" value="8226828321669" />
  13267.                                    </form>
  13268.                                </div>
  13269.                                <noscript class="product-form__noscript-wrapper-template--17040648077525__main">
  13270.                                    <div class="product-form__input hidden">
  13271.                                        <label class="form__label" for="Variants-template--17040648077525__main">Product
  13272.                                            variants</label>
  13273.                                        <div class="select">
  13274.                                            <select name="id" id="Variants-template--17040648077525__main"
  13275.                                                class="select__select"
  13276.                                                form="product-form-template--17040648077525__main">
  13277.                                                <option selected="selected" value="43114192093653">Default Title - Rp
  13278.                                                    5.000,00</option>
  13279.                                            </select>
  13280.                                            <svg aria-hidden="true" focusable="false" class="icon icon-caret"
  13281.                                                viewBox="0 0 10 6">
  13282.                                                <path fill-rule="evenodd" clip-rule="evenodd"
  13283.                                                    d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z"
  13284.                                                    fill="currentColor">
  13285.                                            </svg>
  13286.  
  13287.                                        </div>
  13288.                                    </div>
  13289.                                </noscript>
  13290.  
  13291.                                <div id="Quantity-Form-template--17040648077525__main"
  13292.                                    class="product-form__input product-form__quantity">
  13293.  
  13294.  
  13295.  
  13296.                                    <label class="quantity__label form__label"
  13297.                                        for="Quantity-template--17040648077525__main">
  13298.                                        Quantity
  13299.                                        <span class="quantity__rules-cart no-js-hidden hidden">
  13300.                                            <style>
  13301.                                                .loading__spinner {
  13302.                                                    position: absolute;
  13303.                                                    z-index: 1;
  13304.                                                    width: 1.8rem
  13305.                                                }
  13306.  
  13307.                                                .loading__spinner {
  13308.                                                    width: 1.8rem;
  13309.                                                    display: inline-block
  13310.                                                }
  13311.  
  13312.                                                .spinner {
  13313.                                                    animation: rotator 1.4s linear infinite
  13314.                                                }
  13315.  
  13316.                                                @keyframes rotator {
  13317.                                                    0% {
  13318.                                                        transform: rotate(0)
  13319.                                                    }
  13320.  
  13321.                                                    to {
  13322.                                                        transform: rotate(270deg)
  13323.                                                    }
  13324.                                                }
  13325.  
  13326.                                                .path {
  13327.                                                    stroke-dasharray: 280;
  13328.                                                    stroke-dashoffset: 0;
  13329.                                                    transform-origin: center;
  13330.                                                    stroke: rgb(var(--color-foreground));
  13331.                                                    animation: dash 1.4s ease-in-out infinite
  13332.                                                }
  13333.  
  13334.                                                @media screen and (forced-colors: active) {
  13335.                                                    .path {
  13336.                                                        stroke: CanvasText
  13337.                                                    }
  13338.                                                }
  13339.  
  13340.                                                @keyframes dash {
  13341.                                                    0% {
  13342.                                                        stroke-dashoffset: 280
  13343.                                                    }
  13344.  
  13345.                                                    50% {
  13346.                                                        stroke-dashoffset: 75;
  13347.                                                        transform: rotate(135deg)
  13348.                                                    }
  13349.  
  13350.                                                    to {
  13351.                                                        stroke-dashoffset: 280;
  13352.                                                        transform: rotate(450deg)
  13353.                                                    }
  13354.                                                }
  13355.  
  13356.                                                .loading__spinner:not(.hidden)+.cart-item__price-wrapper,
  13357.                                                .loading__spinner:not(.hidden)~cart-remove-button {
  13358.                                                    opacity: 50%
  13359.                                                }
  13360.  
  13361.                                                .loading__spinner:not(.hidden)~cart-remove-button {
  13362.                                                    pointer-events: none;
  13363.                                                    cursor: default
  13364.                                                }
  13365.                                            </style>
  13366.  
  13367.                                            <div class="loading__spinner hidden">
  13368.                                                <svg aria-hidden="true" focusable="false" class="spinner"
  13369.                                                    viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg">
  13370.                                                    <circle class="path" fill="none" stroke-width="6" cx="33" cy="33"
  13371.                                                        r="30"></circle>
  13372.                                                </svg>
  13373.                                            </div>
  13374.                                            <span>(<span class="quantity-cart">0</span> in cart)</span>
  13375.                                        </span>
  13376.                                    </label>
  13377.                                    <div class="price-per-item__container">
  13378.                                        <quantity-input class="quantity" data-url="https://infinite-style.com/"
  13379.                                            data-section="template--17040648077525__main">
  13380.                                            <button class="quantity__button no-js-hidden" name="minus" type="button">
  13381.                                                <span class="visually-hidden">Decrease quantity for KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang</span>
  13382.                                                <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true"
  13383.                                                    focusable="false" class="icon icon-minus" fill="none"
  13384.                                                    viewBox="0 0 10 2">
  13385.                                                    <path fill-rule="evenodd" clip-rule="evenodd"
  13386.                                                        d="M.5 1C.5.7.7.5 1 .5h8a.5.5 0 110 1H1A.5.5 0 01.5 1z"
  13387.                                                        fill="currentColor">
  13388.                                                </svg>
  13389.  
  13390.                                            </button>
  13391.                                            <input class="quantity__input" type="number" name="quantity"
  13392.                                                id="Quantity-template--17040648077525__main" data-cart-quantity="0"
  13393.                                                data-min="1" min="1" step="1" value="1"
  13394.                                                form="product-form-template--17040648077525__main" />
  13395.                                            <button class="quantity__button no-js-hidden" name="plus" type="button">
  13396.                                                <span class="visually-hidden">Increase quantity for KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang</span>
  13397.                                                <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true"
  13398.                                                    focusable="false" class="icon icon-plus" fill="none"
  13399.                                                    viewBox="0 0 10 10">
  13400.                                                    <path fill-rule="evenodd" clip-rule="evenodd"
  13401.                                                        d="M1 4.51a.5.5 0 000 1h3.5l.01 3.5a.5.5 0 001-.01V5.5l3.5-.01a.5.5 0 00-.01-1H5.5L5.49.99a.5.5 0 00-1 .01v3.5l-3.5.01H1z"
  13402.                                                        fill="currentColor">
  13403.                                                </svg>
  13404.  
  13405.                                            </button>
  13406.                                        </quantity-input>
  13407.                                    </div>
  13408.                                    <div class="quantity__rules caption no-js-hidden"
  13409.                                        id="Quantity-Rules-template--17040648077525__main">
  13410.                                    </div>
  13411.                                </div>
  13412.                                <div><product-form class="product-form" data-hide-errors="false"
  13413.                                        data-section-id="template--17040648077525__main">
  13414.                                        <div class="product-form__error-message-wrapper" role="alert" hidden>
  13415.                                            <svg aria-hidden="true" focusable="false" class="icon icon-error"
  13416.                                                viewBox="0 0 13 13">
  13417.                                                <circle cx="6.5" cy="6.50049" r="5.5" stroke="white" stroke-width="2" />
  13418.                                                <circle cx="6.5" cy="6.5" r="5.5" fill="#EB001B" stroke="#EB001B"
  13419.                                                    stroke-width="0.7" />
  13420.                                                <path
  13421.                                                    d="M5.87413 3.52832L5.97439 7.57216H7.02713L7.12739 3.52832H5.87413ZM6.50076 9.66091C6.88091 9.66091 7.18169 9.37267 7.18169 9.00504C7.18169 8.63742 6.88091 8.34917 6.50076 8.34917C6.12061 8.34917 5.81982 8.63742 5.81982 9.00504C5.81982 9.37267 6.12061 9.66091 6.50076 9.66091Z"
  13422.                                                    fill="white" />
  13423.                                                <path
  13424.                                                    d="M5.87413 3.17832H5.51535L5.52424 3.537L5.6245 7.58083L5.63296 7.92216H5.97439H7.02713H7.36856L7.37702 7.58083L7.47728 3.537L7.48617 3.17832H7.12739H5.87413ZM6.50076 10.0109C7.06121 10.0109 7.5317 9.57872 7.5317 9.00504C7.5317 8.43137 7.06121 7.99918 6.50076 7.99918C5.94031 7.99918 5.46982 8.43137 5.46982 9.00504C5.46982 9.57872 5.94031 10.0109 6.50076 10.0109Z"
  13425.                                                    fill="white" stroke="#EB001B" stroke-width="0.7">
  13426.                                            </svg>
  13427.                                            <span class="product-form__error-message"></span>
  13428.                                        </div>
  13429.  
  13430.                                                    <style>
  13431.                                                        .loading__spinner {
  13432.                                                            position: absolute;
  13433.                                                            z-index: 1;
  13434.                                                            width: 1.8rem
  13435.                                                        }
  13436.  
  13437.                                                        .loading__spinner {
  13438.                                                            width: 1.8rem;
  13439.                                                            display: inline-block
  13440.                                                        }
  13441.  
  13442.                                                        .spinner {
  13443.                                                            animation: rotator 1.4s linear infinite
  13444.                                                        }
  13445.  
  13446.                                                        @keyframes rotator {
  13447.                                                            0% {
  13448.                                                                transform: rotate(0)
  13449.                                                            }
  13450.  
  13451.                                                            to {
  13452.                                                                transform: rotate(270deg)
  13453.                                                            }
  13454.                                                        }
  13455.  
  13456.                                                        .path {
  13457.                                                            stroke-dasharray: 280;
  13458.                                                            stroke-dashoffset: 0;
  13459.                                                            transform-origin: center;
  13460.                                                            stroke: rgb(var(--color-foreground));
  13461.                                                            animation: dash 1.4s ease-in-out infinite
  13462.                                                        }
  13463.  
  13464.                                                        @media screen and (forced-colors: active) {
  13465.                                                            .path {
  13466.                                                                stroke: CanvasText
  13467.                                                            }
  13468.                                                        }
  13469.  
  13470.                                                        @keyframes dash {
  13471.                                                            0% {
  13472.                                                                stroke-dashoffset: 280
  13473.                                                            }
  13474.  
  13475.                                                            50% {
  13476.                                                                stroke-dashoffset: 75;
  13477.                                                                transform: rotate(135deg)
  13478.                                                            }
  13479.  
  13480.                                                            to {
  13481.                                                                stroke-dashoffset: 280;
  13482.                                                                transform: rotate(450deg)
  13483.                                                            }
  13484.                                                        }
  13485.  
  13486.                                                        .loading__spinner:not(.hidden)+.cart-item__price-wrapper,
  13487.                                                        .loading__spinner:not(.hidden)~cart-remove-button {
  13488.                                                            opacity: 50%
  13489.                                                        }
  13490.  
  13491.                                                        .loading__spinner:not(.hidden)~cart-remove-button {
  13492.                                                            pointer-events: none;
  13493.                                                            cursor: default
  13494.                                                        }
  13495.                                                    </style>
  13496.                                                    <div class="loading__spinner hidden">
  13497.                                                        <svg aria-hidden="true" focusable="false" class="spinner"
  13498.                                                            viewBox="0 0 66 66" xmlns="http://www.w3.org/2000/svg">
  13499.                                                            <circle class="path" fill="none" stroke-width="6" cx="33"
  13500.                                                                cy="33" r="30"></circle>
  13501.                                                        </svg>
  13502.                                                    </div>
  13503.                                                </button>
  13504.                                                <div data-shopify="payment-button" data-has-selling-plan="false"
  13505.                                                    data-has-fixed-selling-plan="false" class="shopify-payment-button">
  13506.                                                    <button
  13507.                                                        class="shopify-payment-button__button shopify-payment-button__button--unbranded shopify-payment-button__button--hidden"
  13508.                                                        disabled="disabled" aria-hidden="true"> </button><button
  13509.                                                        class="shopify-payment-button__more-options shopify-payment-button__button--hidden"
  13510.                                                        disabled="disabled" aria-hidden="true"> </button>
  13511.                                                </div>
  13512.                                            </div><input type="hidden" name="product-id" value="8226828321669" />
  13513.                                        </form>
  13514.                                    </product-form>
  13515.                                    <style>
  13516.                                        pickup-availability {
  13517.                                            display: block
  13518.                                        }
  13519.  
  13520.                                        pickup-availability[available] {
  13521.                                            min-height: 8rem
  13522.                                        }
  13523.  
  13524.                                        .pickup-availability-preview {
  13525.                                            align-items: flex-start;
  13526.                                            display: flex;
  13527.                                            gap: .2rem;
  13528.                                            padding: 1rem 2rem 0 0
  13529.                                        }
  13530.  
  13531.                                        .pickup-availability-preview .icon {
  13532.                                            flex-shrink: 0;
  13533.                                            height: 1.8rem
  13534.                                        }
  13535.  
  13536.                                        .pickup-availability-preview .icon-unavailable {
  13537.                                            height: 1.6rem;
  13538.                                            margin-top: .1rem
  13539.                                        }
  13540.  
  13541.                                        .pickup-availability-button {
  13542.                                            background-color: transparent;
  13543.                                            color: rgba(var(--color-foreground), .75);
  13544.                                            letter-spacing: .06rem;
  13545.                                            padding: 0 0 .2rem;
  13546.                                            text-align: left;
  13547.                                            text-decoration: underline
  13548.                                        }
  13549.  
  13550.                                        .pickup-availability-button:hover {
  13551.                                            color: rgb(var(--color-foreground))
  13552.                                        }
  13553.  
  13554.                                        .pickup-availability-info * {
  13555.                                            margin: 0 0 .6rem
  13556.                                        }
  13557.  
  13558.                                        pickup-availability-drawer {
  13559.                                            background-color: black;
  13560.                                            height: 100%;
  13561.                                            opacity: 0;
  13562.                                            overflow-y: auto;
  13563.                                            padding: 2rem;
  13564.                                            position: fixed;
  13565.                                            top: 0;
  13566.                                            right: 0;
  13567.                                            z-index: 4;
  13568.                                            transition: opacity var(--duration-default) ease, transform var(--duration-default) ease;
  13569.                                            transform: translate(100%);
  13570.                                            width: 100%;
  13571.                                            border-width: 0 0 0 var(--drawer-border-width);
  13572.                                            border-color: rgba(var(--color-foreground), var(--drawer-border-opacity));
  13573.                                            border-style: solid;
  13574.                                            filter: drop-shadow(var(--drawer-shadow-horizontal-offset) var(--drawer-shadow-vertical-offset) var(--drawer-shadow-blur-radius) rgba(var(--color-shadow), var(--drawer-shadow-opacity)))
  13575.                                        }
  13576.  
  13577.                                        pickup-availability-drawer[open] {
  13578.                                            transform: translate(0);
  13579.                                            opacity: 1
  13580.                                        }
  13581.  
  13582.                                        @media screen and (min-width: 750px) {
  13583.                                            pickup-availability-drawer {
  13584.                                                transform: translate(100%);
  13585.                                                width: 37.5rem
  13586.                                            }
  13587.  
  13588.                                            pickup-availability-drawer[open] {
  13589.                                                opacity: 1;
  13590.                                                transform: translate(0);
  13591.                                                animation: animateDrawerOpen var(--duration-default) ease
  13592.                                            }
  13593.                                        }
  13594.  
  13595.                                        .pickup-availability-header {
  13596.                                            align-items: flex-start;
  13597.                                            display: flex;
  13598.                                            justify-content: space-between;
  13599.                                            margin-bottom: 1.2rem
  13600.                                        }
  13601.  
  13602.                                        .pickup-availability-drawer-title {
  13603.                                            margin: .5rem 0 0
  13604.                                        }
  13605.  
  13606.                                        .pickup-availability-header .icon {
  13607.                                            width: 2rem
  13608.                                        }
  13609.  
  13610.                                        .pickup-availability-drawer-button {
  13611.                                            background-color: transparent;
  13612.                                            border: none;
  13613.                                            color: rgb(var(--color-foreground));
  13614.                                            cursor: pointer;
  13615.                                            display: block;
  13616.                                            height: 4.4rem;
  13617.                                            padding: 1.2rem;
  13618.                                            width: 4.4rem
  13619.                                        }
  13620.  
  13621.                                        .pickup-availability-drawer-button:hover {
  13622.                                            color: rgba(var(--color-foreground), .75)
  13623.                                        }
  13624.  
  13625.                                        .pickup-availability-variant {
  13626.                                            font-size: 1.3rem;
  13627.                                            line-height: calc(1 + .2 / var(--font-body-scale));
  13628.                                            margin: 0 0 1.2rem;
  13629.                                            text-transform: capitalize
  13630.                                        }
  13631.  
  13632.                                        .pickup-availability-variant>*+strong {
  13633.                                            margin-left: 1rem
  13634.                                        }
  13635.  
  13636.                                        .pickup-availability-list__item {
  13637.                                            border-bottom: .1rem solid rgba(var(--color-foreground), .08);
  13638.                                            padding: 2rem 0
  13639.                                        }
  13640.  
  13641.                                        .pickup-availability-list__item:first-child {
  13642.                                            border-top: .1rem solid rgba(var(--color-foreground), .08)
  13643.                                        }
  13644.  
  13645.                                        .pickup-availability-list__item>* {
  13646.                                            margin: 0
  13647.                                        }
  13648.  
  13649.                                        .pickup-availability-list__item>*+* {
  13650.                                            margin-top: 1rem
  13651.                                        }
  13652.  
  13653.                                        .pickup-availability-address {
  13654.                                            font-style: normal;
  13655.                                            font-size: 1.2rem;
  13656.                                            line-height: calc(1 + .5 / var(--font-body-scale))
  13657.                                        }
  13658.  
  13659.                                        .pickup-availability-address p {
  13660.                                            margin: 0
  13661.                                        }
  13662.  
  13663.                                        @keyframes animateDrawerOpen {
  13664.                                            @media screen and (max-width: 749px) {
  13665.                                                0% {
  13666.                                                    opacity: 0;
  13667.                                                    transform: translateX(100%);
  13668.                                                }
  13669.  
  13670.                                                100% {
  13671.                                                    opacity: 1;
  13672.                                                    transform: translateX(0);
  13673.                                                }
  13674.                                            }
  13675.  
  13676.                                            @media screen and (min-width: 750px) {
  13677.                                                0% {
  13678.                                                    opacity: 0;
  13679.                                                    transform: translateX(100%);
  13680.                                                }
  13681.  
  13682.                                                100% {
  13683.                                                    opacity: 1;
  13684.                                                    transform: translateX(0);
  13685.                                                }
  13686.                                            }
  13687.                                        }
  13688.                                    </style>
  13689.                                    <pickup-availability
  13690.                                        class="product__pickup-availabilities no-js-hidden quick-add-hidden"
  13691.                                        data-root-url="https://infinite-style.com/" data-variant-id="43114192093653"
  13692.                                        data-has-only-default-variant="true"
  13693.                                        data-product-page-color-scheme="gradient color-background-1">
  13694.                                        <template>
  13695.                                            <pickup-availability-preview class="pickup-availability-preview">
  13696.                                                <svg xmlns="http://www.w3.org/2000/svg" fill="none" aria-hidden="true"
  13697.                                                    focusable="false" class="icon icon-unavailable" fill="none"
  13698.                                                    viewBox="0 0 20 20">
  13699.                                                    <path fill="#DE3618" stroke="#fff"
  13700.                                                        d="M13.94 3.94L10 7.878l-3.94-3.94A1.499 1.499 0 103.94 6.06L7.88 10l-3.94 3.94a1.499 1.499 0 102.12 2.12L10 12.12l3.94 3.94a1.497 1.497 0 002.12 0 1.499 1.499 0 000-2.12L12.122 10l3.94-3.94a1.499 1.499 0 10-2.121-2.12z" />
  13701.                                                </svg>
  13702.  
  13703.                                                <div class="pickup-availability-info">
  13704.                                                    <p class="caption-large">Couldn&#39;t load pickup availability</p>
  13705.                                                    <button
  13706.                                                        class="pickup-availability-button link link--text underlined-link">
  13707.                                                        Refresh
  13708.                                                    </button>
  13709.                                                </div>
  13710.                                            </pickup-availability-preview>
  13711.                                        </template>
  13712.                                    </pickup-availability>
  13713.  
  13714.                                    <script>
  13715.                                        /** Shopify CDN: Minification failed
  13716.                                
  13717.                                Line 19:4 Transforming class syntax to the configured target environment ("es5") is not supported yet
  13718.                                Line 20:17 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  13719.                                Line 30:23 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  13720.                                Line 31:8 Transforming let to the configured target environment ("es5") is not supported yet
  13721.                                Line 35:8 Transforming const to the configured target environment ("es5") is not supported yet
  13722.                                Line 40:12 Transforming const to the configured target environment ("es5") is not supported yet
  13723.                                Line 46:12 Transforming const to the configured target environment ("es5") is not supported yet
  13724.                                Line 52:24 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  13725.                                Line 56:17 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  13726.                                Line 63:19 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  13727.                                ... and 9 more hidden warnings
  13728.                                
  13729.                                **/
  13730.                                        if (!customElements.get('pickup-availability')) {
  13731.                                            customElements.define(
  13732.                                                'pickup-availability',
  13733.                                                class PickupAvailability extends HTMLElement {
  13734.                                                    constructor() {
  13735.                                                        super();
  13736.  
  13737.                                                        if (!this.hasAttribute('available')) return;
  13738.  
  13739.                                                        this.errorHtml = this.querySelector('template').content.firstElementChild.cloneNode(true);
  13740.                                                        this.onClickRefreshList = this.onClickRefreshList.bind(this);
  13741.                                                        this.fetchAvailability(this.dataset.variantId);
  13742.                                                    }
  13743.  
  13744.                                                    fetchAvailability(variantId) {
  13745.                                                        let rootUrl = this.dataset.rootUrl;
  13746.                                                        if (!rootUrl.endsWith('/')) {
  13747.                                                            rootUrl = rootUrl + '/';
  13748.                                                        }
  13749.                                                        const variantSectionUrl = `${rootUrl}variants/${variantId}/?section_id=pickup-availability`;
  13750.  
  13751.                                                        fetch(variantSectionUrl)
  13752.                                                            .then((response) => response.text())
  13753.                                                            .then((text) => {
  13754.                                                                const sectionInnerHTML = new DOMParser()
  13755.                                                                    .parseFromString(text, 'text/html')
  13756.                                                                    .querySelector('.shopify-section');
  13757.                                                                this.renderPreview(sectionInnerHTML);
  13758.                                                            })
  13759.                                                            .catch((e) => {
  13760.                                                                const button = this.querySelector('button');
  13761.                                                                if (button) button.removeEventListener('click', this.onClickRefreshList);
  13762.                                                                this.renderError();
  13763.                                                            });
  13764.                                                    }
  13765.  
  13766.                                                    onClickRefreshList(evt) {
  13767.                                                        this.fetchAvailability(this.dataset.variantId);
  13768.                                                    }
  13769.  
  13770.                                                    renderError() {
  13771.                                                        this.innerHTML = '';
  13772.                                                        this.appendChild(this.errorHtml);
  13773.  
  13774.                                                        this.querySelector('button').addEventListener('click', this.onClickRefreshList);
  13775.                                                    }
  13776.  
  13777.                                                    renderPreview(sectionInnerHTML) {
  13778.                                                        const drawer = document.querySelector('pickup-availability-drawer');
  13779.                                                        if (drawer) drawer.remove();
  13780.                                                        if (!sectionInnerHTML.querySelector('pickup-availability-preview')) {
  13781.                                                            this.innerHTML = '';
  13782.                                                            this.removeAttribute('available');
  13783.                                                            return;
  13784.                                                        }
  13785.  
  13786.                                                        this.innerHTML = sectionInnerHTML.querySelector('pickup-availability-preview').outerHTML;
  13787.                                                        this.setAttribute('available', '');
  13788.  
  13789.                                                        document.body.appendChild(sectionInnerHTML.querySelector('pickup-availability-drawer'));
  13790.                                                        const colorClassesToApply = this.dataset.productPageColorScheme.split(' ');
  13791.                                                        colorClassesToApply.forEach((colorClass) => {
  13792.                                                            document.querySelector('pickup-availability-drawer').classList.add(colorClass);
  13793.                                                        });
  13794.  
  13795.                                                        const button = this.querySelector('button');
  13796.                                                        if (button)
  13797.                                                            button.addEventListener('click', (evt) => {
  13798.                                                                document.querySelector('pickup-availability-drawer').show(evt.target);
  13799.                                                            });
  13800.                                                    }
  13801.                                                }
  13802.                                            );
  13803.                                        }
  13804.  
  13805.                                        if (!customElements.get('pickup-availability-drawer')) {
  13806.                                            customElements.define(
  13807.                                                'pickup-availability-drawer',
  13808.                                                class PickupAvailabilityDrawer extends HTMLElement {
  13809.                                                    constructor() {
  13810.                                                        super();
  13811.  
  13812.                                                        this.onBodyClick = this.handleBodyClick.bind(this);
  13813.  
  13814.                                                        this.querySelector('button').addEventListener('click', () => {
  13815.                                                            this.hide();
  13816.                                                        });
  13817.  
  13818.                                                        this.addEventListener('keyup', (event) => {
  13819.                                                            if (event.code.toUpperCase() === 'ESCAPE') this.hide();
  13820.                                                        });
  13821.                                                    }
  13822.  
  13823.                                                    handleBodyClick(evt) {
  13824.                                                        const target = evt.target;
  13825.                                                        if (
  13826.                                                            target != this &&
  13827.                                                            !target.closest('pickup-availability-drawer') &&
  13828.                                                            target.id != 'ShowPickupAvailabilityDrawer'
  13829.                                                        ) {
  13830.                                                            this.hide();
  13831.                                                        }
  13832.                                                    }
  13833.  
  13834.                                                    hide() {
  13835.                                                        this.removeAttribute('open');
  13836.                                                        document.body.removeEventListener('click', this.onBodyClick);
  13837.                                                        document.body.classList.remove('overflow-hidden');
  13838.                                                        removeTrapFocus(this.focusElement);
  13839.                                                    }
  13840.  
  13841.                                                    show(focusElement) {
  13842.                                                        this.focusElement = focusElement;
  13843.                                                        this.setAttribute('open', '');
  13844.                                                        document.body.addEventListener('click', this.onBodyClick);
  13845.                                                        document.body.classList.add('overflow-hidden');
  13846.                                                        trapFocus(this);
  13847.                                                    }
  13848.                                                }
  13849.                                            );
  13850.                                        }
  13851.                                    </script>
  13852.                                </div>
  13853.                                <style>
  13854.                                    .product__description p {
  13855.                                        text-align: justify;
  13856.                                    }
  13857.  
  13858.                                    .product__description h2 {
  13859.                                        text-align: center;
  13860.                                    }
  13861.  
  13862.                                    .product__description a {
  13863.                                        font-weight: bold;
  13864.                                        text-decoration: none;
  13865.                                        color: #8B0000;
  13866.                                    }
  13867.  
  13868.                                    .site-list li {
  13869.                                        font-weight: bold;
  13870.                                    }
  13871.  
  13872.                                    .centre li {
  13873.                                        font-weight: normal;
  13874.                                        margin-left: -1em;
  13875.                                        text-align: justify;
  13876.                                        list-style-type: decimal;
  13877. <a href="https://infinite-style.com/">KOITOTO</a>
  13878.                                    }
  13879.                                </style>
  13880.                                <div class="product__description rte quick-add-hidden">
  13881. <p class="product_description" style="text-align: justify; color: black;"><a href="https://infinite-style.com/" style="color: red;">KOITOTO</a> menjadi solusi utama bagi pemain angka dan slot digital yang ingin menikmati akses cepat dan stabil tanpa gangguan teknis. Situs ini dirancang untuk memberikan pengalaman terbaik dengan sistem login yang tidak ribet dan bisa langsung digunakan kapan saja. Tanpa perlu unduhan tambahan, cukup buka lewat browser dan pengguna bisa langsung menjelajahi semua fitur dan permainan yang tersedia.</p>
  13882.  
  13883. <p class="product_description" style="text-align: justify; color: black;">Salah satu keunggulan KOITOTO terletak pada layanan dukungan yang aktif setiap hari tanpa batas waktu. Support pelanggan bisa dihubungi melalui beberapa saluran seperti live chat dan aplikasi pesan populer. Tim yang bertugas memiliki respon cepat dan siap membantu menyelesaikan setiap kendala, baik itu terkait akun, transaksi, maupun informasi pasaran angka terbaru. Dengan support yang selalu standby, pengguna merasa lebih aman dan nyaman.</p>
  13884.  
  13885. <p class="product_description" style="text-align: justify; color: black;">KOITOTO juga menghadirkan koleksi permainan slot yang lancar tanpa hambatan. Teknologi yang digunakan memastikan game berjalan halus, tidak ada jeda atau gangguan yang bisa mengganggu ritme permainan. Ini sangat cocok untuk pemain yang mengandalkan kecepatan dan insting dalam memilih waktu putaran atau menentukan pilihan angka secara efisien.</p>
  13886.  
  13887. <p class="product_description" style="text-align: justify; color: black;">Dalam permainan angka, KOITOTO menghadirkan pilihan pasaran lengkap yang selalu update secara tepat waktu. Data angka ditampilkan secara transparan sehingga pemain bisa melihat hasil dengan jelas dan melakukan analisa sederhana sebelum memasang angka berikutnya. Semua pasaran tersusun rapi berdasarkan jam tayang agar pengguna bisa mengikuti sesuai zona waktu masing masing.</p>
  13888.  
  13889. <p class="product_description" style="text-align: justify; color: black;">Gabungan antara login yang ringan, layanan nonstop, serta sistem permainan yang cepat membuat KOITOTO banyak direkomendasikan. Platform ini dirancang agar pemain tidak hanya merasa terhibur tetapi juga mendapatkan kepastian soal kelancaran dan kenyamanan. Dengan semua fitur tersebut, tidak heran KOITOTO menjadi pilihan utama di kalangan pemain angka modern yang mencari situs lengkap dan bisa diandalkan.</p>
  13890.  
  13891. <h2 style="color: black;">Login Togel Online & Toto Slot KOITOTO Dengan Team Support 24 Jam</h2>
  13892.  
  13893. <p style="text-align: justify; color: black;">KOITOTO hadir sebagai <a href="https://infinite-style.com/" style="color: red;">situs toto</a> dan togel online digital yang mengutamakan kecepatan akses serta kemudahan layanan bagi semua pemain. Proses login dirancang agar bisa dilakukan dengan mudah tanpa perlu unduhan aplikasi tambahan. Cukup dengan mengakses link resmi, pengguna langsung diarahkan ke halaman utama dan bisa menikmati seluruh fitur yang tersedia. Sistem login ini juga kompatibel di berbagai perangkat, baik ponsel maupun desktop, sehingga memberi keleluasaan untuk bermain kapan saja.</p>
  13894.  
  13895. <p class="product_description" style="text-align: justify; color: black;">Fokus utama KOITOTO adalah memastikan setiap pengguna mendapatkan bantuan dan informasi yang mereka perlukan melalui dukungan tim support aktif sepanjang waktu. Tim ini siap memberikan respon cepat untuk semua kebutuhan, mulai dari kendala teknis, panduan transaksi, hingga informasi pasaran angka. Dukungan ini bisa diakses lewat berbagai jalur komunikasi yang disediakan, seperti live chat dan aplikasi pesan, agar pemain tidak kesulitan saat butuh bantuan.</p>
  13896.  
  13897. <p class="product_description" style="text-align: justify; color: black;">Fitur permainan angka di KOITOTO juga dirancang sederhana dan terstruktur, sehingga mudah dipahami oleh semua kalangan pengguna. Pasaran angka yang tersedia selalu diperbarui secara real time dengan hasil yang bisa dicek langsung setiap saat. Tampilan data disusun rapi agar pengguna bisa melihat pola atau referensi sebelum menentukan angka pilihan mereka. Semua fitur ini ditampilkan secara terbuka tanpa proses yang menyulitkan.</p>
  13898.  
  13899. <p class="product_description" style="text-align: justify; color: black;">Toto slot di KOITOTO juga tidak kalah menarik, dengan tampilan permainan yang ringan dan efek visual yang memanjakan mata. Permainan berjalan dengan lancar, tanpa lag, dan bisa diakses dengan koneksi standar sekalipun. Slot disusun berdasarkan kategori populer, terbaru, dan yang sedang ramai dimainkan agar pemain bisa memilih lebih mudah. Fitur ini memberi pengalaman bermain yang cepat dan tetap seru dari awal hingga akhir sesi.</p>
  13900.  
  13901. <p class="product_description" style="text-align: justify; color: black;">Dengan sistem login yang cepat, team support yang responsif, serta fitur permainan angka dan slot yang berjalan lancar, KOITOTO berhasil menjadi salah satu platform favorit pemain digital saat ini. Tidak hanya karena kelengkapan fiturnya, tapi juga karena pelayanan yang konsisten dan kemudahan akses dari semua sisi. KOITOTO membuktikan bahwa bermain angka dan slot bisa menjadi lebih praktis, efisien, dan tetap menghibur tanpa ribet.</p>
  13902.  
  13903. <h2 style="color: black;">Toto Slot  & Togel Online Anti Lag KOITOTO Mudah Menang</h2>
  13904.  
  13905. <p class="product_description" style="text-align: justify; color: black;">KOITOTO dikenal sebagai salah satu platform permainan angka dan slot yang menawarkan kenyamanan maksimal saat diakses dari berbagai perangkat. Salah satu keunggulan utamanya adalah performa situs yang ringan dan anti lag, sehingga semua fitur berjalan lancar meski pengguna bermain dari ponsel atau jaringan biasa. Pengalaman bermain menjadi lebih menyenangkan karena tidak ada gangguan teknis yang bisa mengganggu jalannya permainan.</p>
  13906.  
  13907. <p class="product_description" style="text-align: justify; color: black;">Toto slot di KOITOTO dirancang dengan sistem yang mendukung kecepatan dan kestabilan setiap sesi permainan. Setiap putaran berlangsung mulus dengan animasi halus dan tanpa jeda yang menyita waktu. Slot yang tersedia berasal dari berbagai penyedia terpercaya dengan tema yang beragam, visual menarik, dan fitur yang mendukung peluang menang lebih besar. Hal ini memungkinkan pengguna menikmati permainan tanpa stres karena gangguan koneksi atau tampilan yang lambat.</p>
  13908.  
  13909. <p class="product_description" style="text-align: justify; color: black;">Untuk permainan angka, KOITOTO menyediakan berbagai pasaran togel online yang aktif setiap hari dengan hasil keluaran yang diperbarui secara real time. Pengguna bisa melihat data angka dengan jelas dan terstruktur, memudahkan dalam membuat analisa sebelum menentukan pilihan. Tampilan pasaran dibuat simpel agar bisa diakses dengan mudah oleh siapa saja, baik pemula maupun yang sudah berpengalaman. Setiap sesi hadir dengan transparansi tinggi agar pemain merasa lebih percaya diri saat bermain.</p>
  13910.  
  13911. <p class="product_description" style="text-align: justify; color: black;">Yang membuat KOITOTO semakin menarik adalah sistem yang bisa diakses kapan saja tanpa harus mengunduh aplikasi tambahan. Semua layanan bisa dibuka langsung melalui browser, dengan tampilan yang menyesuaikan otomatis di ponsel maupun komputer. Selain itu, kecepatan login dan navigasi antar menu membuat pemain tidak membuang waktu dan langsung fokus ke permainan. Proses transaksi juga cepat dan aman, memberikan kenyamanan tambahan saat mengelola saldo.</p>
  13912.  
  13913. <p class="product_description" style="text-align: justify; color: black;">Kombinasi dari slot anti lag, pasaran angka yang lengkap, serta sistem cepat dan stabil menjadikan KOITOTO pilihan yang tepat untuk pemain digital saat ini. Platform ini dirancang untuk memaksimalkan kenyamanan pengguna dari semua sisi, mulai dari tampilan, kecepatan, hingga dukungan fitur. KOITOTO bukan sekadar tempat bermain, tapi juga solusi modern untuk siapa saja yang ingin merasakan pengalaman angka dan slot dengan peluang menang yang nyata dan akses tanpa hambatan.</p>
  13914.  
  13915. <h2 style="color: black;">Sistem Toto Slot & Togel Online Stabil Serta Responsif Tanpa Ada Kecurangan</h2>
  13916.  
  13917. <p class="product_description" style="text-align: justify; color: black;">KOITOTO menghadirkan sistem permainan rogel online dan toto slot yang dibangun dengan teknologi stabil dan responsif untuk memastikan semua pemain mendapatkan pengalaman terbaik. Situs <a href="https://infinite-style.com/" style="color: red;">togel online</a> yang menghadirkan layanan login cepat dan sistem yang selalu aktif sepanjang hari. Pengguna bisa langsung mengakses halaman utama melalui link resmi tanpa perlu tambahan aplikasi. Keamanan login dijamin dengan sistem enkripsi modern yang menjaga data tetap terlindungi. Dengan proses masuk yang cepat dan mudah, pemain bisa langsung memulai permainan angka favorit mereka tanpa hambatan teknis atau proses yang berbelit.</p>
  13918.  
  13919. <p class="product_description" style="text-align: justify; color: black;">Kestabilan sistem di KOITOTO menjadi salah satu keunggulan yang membuat pengguna betah dan terus kembali. Semua fitur tersedia tanpa perlu unduhan aplikasi tambahan. Pemain cukup menggunakan perangkat yang mereka miliki dan bisa langsung menikmati permainan dengan kualitas tampilan yang ringan dan cepat. Baik dari jaringan ponsel maupun koneksi rumah, sistem tetap berjalan mulus. Ini membuktikan bahwa KOITOTO benar benar menyesuaikan kebutuhan para pemain digital saat ini.</p>
  13920.  
  13921. <p class="product_description" style="text-align: justify; color: black;">Slot yang disediakan juga tampil dengan performa tinggi dan tidak memerlukan perangkat berspesifikasi tinggi. Pemain dapat merasakan respons cepat di setiap tombol dan animasi yang berjalan mulus tanpa jeda. Semua ini berkat pengembangan platform yang dioptimalkan agar tidak membebani perangkat pengguna. Pemain pun bisa menikmati pengalaman penuh dari setiap permainan, baik untuk hiburan ringan maupun yang lebih menantang.</p>
  13922.  
  13923. <p class="product_description" style="text-align: justify; color: black;">Untuk permainan togel, KOITOTO juga menampilkan pasaran resmi yang dilengkapi hasil keluaran yang diperbarui secara langsung. Ini memberi kepercayaan lebih karena data yang ditampilkan bukan hasil yang dimanipulasi. Informasi yang diberikan disusun dengan format sederhana dan transparan. Hal ini menunjukkan bahwa KOITOTO menjunjung tinggi keadilan permainan dan mementingkan kenyamanan pemain dalam mengakses data yang akurat.</p>
  13924.  
  13925. <p class="product_description" style="text-align: justify; color: black;">Tidak hanya mengandalkan sistem yang stabil dan responsif, KOITOTO juga menekankan kejujuran dalam seluruh layanan yang disediakan. Tidak ada kecurangan tersembunyi dalam proses permainan maupun transaksi. Semua berlangsung secara otomatis dan transparan, dari pemilihan angka hingga penarikan hasil. Dengan prinsip fair play dan layanan profesional, KOITOTO layak dijadikan pilihan utama bagi siapa saja yang ingin bermain togel online dan toto slot dengan aman dan tenang.</p>
  13926.  
  13927. <h2 style="color: black;">Bergabunglah Sekarang Nikmati Hadiah Terbesar Dan Login Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang</h2>
  13928.  
  13929. <p class="product_description" style="text-align: justify; color: black;">KOITOTO menjadi tempat yang cocok untuk siapa saja yang ingin bermain togel online dan <a href="https://infinite-style.com/" style="color: red;">situs toto slot</a> dengan sistem lengkap, cepat, serta hadiah yang benar benar terasa. Dengan berbagai fitur unggulan yang terus dikembangkan, situs ini memberi pengalaman bermain yang nyaman dan efisien. Proses login berlangsung cepat tanpa hambatan teknis dan bisa langsung diakses dari semua jenis perangkat. Pengguna cukup membuka link utama dan langsung masuk ke halaman permainan.</p>
  13930.  
  13931. <p class="product_description" style="text-align: justify; color: black;">Salah satu alasan banyak pemain bergabung adalah karena KOITOTO menawarkan hadiah yang besar dan mudah untuk dicapai. Setiap permainan memberikan peluang menang yang nyata dengan sistem yang transparan. Baik melalui angka maupun slot, pengguna bisa memperoleh hasil maksimal tanpa proses rumit. Semua hadiah dikalkulasikan otomatis berdasarkan ketentuan yang jelas. Tidak perlu konfirmasi manual atau proses tambahan yang menyulitkan pengguna.</p>
  13932.  
  13933. <p class="product_description" style="text-align: justify; color: black;">KOITOTO juga dikenal dengan layanan pelanggan aktif sepanjang waktu yang menjawab semua pertanyaan dan membantu kendala teknis kapan pun dibutuhkan. Dukungan ini tersedia setiap hari tanpa batas jam dan bisa diakses lewat beberapa jalur komunikasi seperti live chat dan aplikasi pesan. Tim yang bertugas akan membantu dengan cepat dan ramah agar pengguna merasa nyaman dan tidak bingung saat mengalami kendala.</p>
  13934.  
  13935. <p class="product_description" style="text-align: justify; color: black;">Permainan slot di KOITOTO berjalan dengan sangat lancar tanpa gangguan. Sistemnya ringan dan didesain agar tetap stabil bahkan di koneksi standar. Ini membuat slot bisa dimainkan dengan nyaman tanpa jeda atau tampilan yang berat. Pengguna bisa menikmati berbagai jenis permainan dengan tema menarik dan fitur yang beragam. Setiap pilihan slot dirancang untuk memberikan pengalaman visual dan teknis yang optimal.</p>
  13936.  
  13937. <p class="product_description" style="text-align: justify; color: black;">Dengan hadiah besar, login cepat, support aktif setiap waktu, dan slot yang anti lag, KOITOTO membuktikan dirinya sebagai platform yang lengkap untuk pemain angka dan slot. Pengalaman bermain di situs ini tidak hanya soal menang, tapi juga soal kenyamanan, pelayanan, dan kepercayaan. Bagi siapa saja yang mencari tempat bermain yang stabil dan terpercaya, KOITOTO layak dijadikan pilihan utama. Gabung sekarang dan rasakan sendiri bedanya.</p>
  13938.  
  13939.  </div>
  13940.  
  13941.                                <script>
  13942.                                    /** Shopify CDN: Minification failed
  13943.                                
  13944.                                Line 13:4 Transforming class syntax to the configured target environment ("es5") is not supported yet
  13945.                                Line 14:17 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  13946.                                Line 41:19 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  13947.                                Line 50:21 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  13948.                                Line 59:15 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  13949.                                
  13950.                                **/
  13951.                                    if (!customElements.get('share-button')) {
  13952.                                        customElements.define(
  13953.                                            'share-button',
  13954.                                            class ShareButton extends DetailsDisclosure {
  13955.                                                constructor() {
  13956.                                                    super();
  13957.  
  13958.                                                    this.elements = {
  13959.                                                        shareButton: this.querySelector('button'),
  13960.                                                        shareSummary: this.querySelector('summary'),
  13961.                                                        closeButton: this.querySelector('.share-button__close'),
  13962.                                                        successMessage: this.querySelector('[id^="ShareMessage"]'),
  13963.                                                        urlInput: this.querySelector('input'),
  13964.                                                    };
  13965.                                                    this.urlToShare = this.elements.urlInput ? this.elements.urlInput.value : document.location.href;
  13966.  
  13967.                                                    if (navigator.share) {
  13968.                                                        this.mainDetailsToggle.setAttribute('hidden', '');
  13969.                                                        this.elements.shareButton.classList.remove('hidden');
  13970.                                                        this.elements.shareButton.addEventListener('click', () => {
  13971.                                                            navigator.share({ url: this.urlToShare, title: document.title });
  13972.                                                        });
  13973.                                                    } else {
  13974.                                                        this.mainDetailsToggle.addEventListener('toggle', this.toggleDetails.bind(this));
  13975.                                                        this.mainDetailsToggle
  13976.                                                            .querySelector('.share-button__copy')
  13977.                                                            .addEventListener('click', this.copyToClipboard.bind(this));
  13978.                                                        this.mainDetailsToggle.querySelector('.share-button__close').addEventListener('click', this.close.bind(this));
  13979.                                                    }
  13980.                                                }
  13981.  
  13982.                                                toggleDetails() {
  13983.                                                    if (!this.mainDetailsToggle.open) {
  13984.                                                        this.elements.successMessage.classList.add('hidden');
  13985.                                                        this.elements.successMessage.textContent = '';
  13986.                                                        this.elements.closeButton.classList.add('hidden');
  13987.                                                        this.elements.shareSummary.focus();
  13988.                                                    }
  13989.                                                }
  13990.  
  13991.                                                copyToClipboard() {
  13992.                                                    navigator.clipboard.writeText(this.elements.urlInput.value).then(() => {
  13993.                                                        this.elements.successMessage.classList.remove('hidden');
  13994.                                                        this.elements.successMessage.textContent = window.accessibilityStrings.shareSuccess;
  13995.                                                        this.elements.closeButton.classList.remove('hidden');
  13996.                                                        this.elements.closeButton.focus();
  13997.                                                    });
  13998.                                                }
  13999.  
  14000.                                                updateUrl(url) {
  14001.                                                    this.urlToShare = url;
  14002.                                                    this.elements.urlInput.value = url;
  14003.                                                }
  14004.                                            }
  14005.                                        );
  14006.                                    }
  14007.                                </script>
  14008.  
  14009.                                <share-button id="Share-template--17040648077525__main"
  14010.                                    class="share-button quick-add-hidden">
  14011.                                    <button class="share-button__button hidden">
  14012.                                        <svg width="13" height="12" viewBox="0 0 13 12" class="icon icon-share"
  14013.                                            fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"
  14014.                                            focusable="false">
  14015.                                            <path
  14016.                                                d="M1.625 8.125V10.2917C1.625 10.579 1.73914 10.8545 1.9423 11.0577C2.14547 11.2609 2.42102 11.375 2.70833 11.375H10.2917C10.579 11.375 10.8545 11.2609 11.0577 11.0577C11.2609 10.8545 11.375 10.579 11.375 10.2917V8.125"
  14017.                                                stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" />
  14018.                                            <path fill-rule="evenodd" clip-rule="evenodd"
  14019.                                                d="M6.14775 1.27137C6.34301 1.0761 6.65959 1.0761 6.85485 1.27137L9.56319 3.9797C9.75845 4.17496 9.75845 4.49154 9.56319 4.6868C9.36793 4.88207 9.05135 4.88207 8.85609 4.6868L6.5013 2.33203L4.14652 4.6868C3.95126 4.88207 3.63468 4.88207 3.43942 4.6868C3.24415 4.49154 3.24415 4.17496 3.43942 3.9797L6.14775 1.27137Z"
  14020.                                                fill="currentColor" />
  14021.                                            <path fill-rule="evenodd" clip-rule="evenodd"
  14022.                                                d="M6.5 1.125C6.77614 1.125 7 1.34886 7 1.625V8.125C7 8.40114 6.77614 8.625 6.5 8.625C6.22386 8.625 6 8.40114 6 8.125V1.625C6 1.34886 6.22386 1.125 6.5 1.125Z"
  14023.                                                fill="currentColor" />
  14024.                                        </svg>
  14025.  
  14026.                                        Share
  14027.                                    </button>
  14028.                                    <details id="Details-share-template--17040648077525__main">
  14029.                                        <summary class="share-button__button">
  14030.                                            <svg width="13" height="12" viewBox="0 0 13 12" class="icon icon-share"
  14031.                                                fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"
  14032.                                                focusable="false">
  14033.                                                <path
  14034.                                                    d="M1.625 8.125V10.2917C1.625 10.579 1.73914 10.8545 1.9423 11.0577C2.14547 11.2609 2.42102 11.375 2.70833 11.375H10.2917C10.579 11.375 10.8545 11.2609 11.0577 11.0577C11.2609 10.8545 11.375 10.579 11.375 10.2917V8.125"
  14035.                                                    stroke="currentColor" stroke-linecap="round"
  14036.                                                    stroke-linejoin="round" />
  14037.                                                <path fill-rule="evenodd" clip-rule="evenodd"
  14038.                                                    d="M6.14775 1.27137C6.34301 1.0761 6.65959 1.0761 6.85485 1.27137L9.56319 3.9797C9.75845 4.17496 9.75845 4.49154 9.56319 4.6868C9.36793 4.88207 9.05135 4.88207 8.85609 4.6868L6.5013 2.33203L4.14652 4.6868C3.95126 4.88207 3.63468 4.88207 3.43942 4.6868C3.24415 4.49154 3.24415 4.17496 3.43942 3.9797L6.14775 1.27137Z"
  14039.                                                    fill="currentColor" />
  14040.                                                <path fill-rule="evenodd" clip-rule="evenodd"
  14041.                                                    d="M6.5 1.125C6.77614 1.125 7 1.34886 7 1.625V8.125C7 8.40114 6.77614 8.625 6.5 8.625C6.22386 8.625 6 8.40114 6 8.125V1.625C6 1.34886 6.22386 1.125 6.5 1.125Z"
  14042.                                                    fill="currentColor" />
  14043.                                            </svg>
  14044.  
  14045.                                            Share
  14046.                                        </summary>
  14047.                                        <div class="share-button__fallback motion-reduce">
  14048.                                            <div class="field">
  14049.                                                <span id="ShareMessage-template--17040648077525__main"
  14050.                                                    class="share-button__message hidden" role="status"> </span>
  14051.                                                <input type="text" class="field__input"
  14052.                                                    id="ShareUrl-template--17040648077525__main"
  14053.                                                    value="https://infinite-style.com/" placeholder="Link"
  14054.                                                    onclick="this.select();" readonly>
  14055.                                                <label class="field__label"
  14056.                                                    for="ShareUrl-template--17040648077525__main">Link</label>
  14057.                                            </div>
  14058.                                            <button class="share-button__close hidden no-js-hidden">
  14059.                                                <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true"
  14060.                                                    focusable="false" class="icon icon-close" fill="none"
  14061.                                                    viewBox="0 0 18 17">
  14062.                                                    <path
  14063.                                                        d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z"
  14064.                                                        fill="currentColor">
  14065.                                                </svg>
  14066.  
  14067.                                                <span class="visually-hidden">Close share</span>
  14068.                                            </button>
  14069.                                            <button class="share-button__copy no-js-hidden">
  14070.                                                <svg class="icon icon-clipboard" width="11" height="13" fill="none"
  14071.                                                    xmlns="http://www.w3.org/2000/svg" aria-hidden="true"
  14072.                                                    focusable="false" viewBox="0 0 11 13">
  14073.                                                    <path fill-rule="evenodd" clip-rule="evenodd"
  14074.                                                        d="M2 1a1 1 0 011-1h7a1 1 0 011 1v9a1 1 0 01-1 1V1H2zM1 2a1 1 0 00-1 1v9a1 1 0 001 1h7a1 1 0 001-1V3a1 1 0 00-1-1H1zm0 10V3h7v9H1z"
  14075.                                                        fill="currentColor" />
  14076.                                                </svg>
  14077.  
  14078.                                                <span class="visually-hidden">Copy link</span>
  14079.                                            </button>
  14080.                                        </div>
  14081.                                    </details>
  14082.                                </share-button>
  14083.  
  14084.                                <a href="https://infinite-style.com/" class="link product__view-details animate-arrow">
  14085.                                    View full details
  14086.                                    <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false"
  14087.                                        class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
  14088.                                        <path fill-rule="evenodd" clip-rule="evenodd"
  14089.                                            d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z"
  14090.                                            fill="currentColor">
  14091.                                    </svg>
  14092.  
  14093.                                </a>
  14094.                            </product-info>
  14095.                        </div>
  14096.                    </div>
  14097.  
  14098.  
  14099.  
  14100.                    <product-modal id="ProductModal-template--17040648077525__main"
  14101.                        class="product-media-modal media-modal">
  14102.                        <div class="product-media-modal__dialog color-background-1 gradient" role="dialog"
  14103.                            aria-label="Media gallery" aria-modal="true" tabindex="-1">
  14104.                            <button id="ModalClose-template--17040648077525__main" type="button"
  14105.                                class="product-media-modal__toggle" aria-label="Close">
  14106.                                <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"
  14107.                                    class="icon icon-close" fill="none" viewBox="0 0 18 17">
  14108.                                    <path
  14109.                                        d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z"
  14110.                                        fill="currentColor">
  14111.                                </svg>
  14112.  
  14113.                            </button>
  14114.  
  14115.                            <div class="product-media-modal__content color-background-1 gradient" role="document"
  14116.                                aria-label="Media gallery" tabindex="0">
  14117.                                <img class="global-media-settings global-media-settings--no-shadow"
  14118.                                    srcset="https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg"
  14119.                                    sizes="(min-width: 750px) calc(100vw - 22rem), 1100px"
  14120.                                    src="https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg"
  14121.                                    alt="situs togel online" loading="lazy" width="1100" height="1100"
  14122.                                    data-media-id="33478743672119">
  14123.                            </div>
  14124.                        </div>
  14125.                    </product-modal>
  14126.  
  14127.  
  14128.  
  14129.                    <script>/** Shopify CDN: Minification failed
  14130.  
  14131. Line 17:4 Transforming class syntax to the configured target environment ("es5") is not supported yet
  14132. Line 18:17 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  14133. Line 22:10 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  14134. Line 26:10 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  14135. Line 31:21 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  14136. Line 37:8 Transforming const to the configured target environment ("es5") is not supported yet
  14137. Line 38:8 Transforming const to the configured target environment ("es5") is not supported yet
  14138. Line 39:8 Transforming const to the configured target environment ("es5") is not supported yet
  14139. Line 43:8 Transforming const to the configured target environment ("es5") is not supported yet
  14140. **/
  14141.                        if (!customElements.get('product-modal')) {
  14142.                            customElements.define(
  14143.                                'product-modal',
  14144.                                class ProductModal extends ModalDialog {
  14145.                                    constructor() {
  14146.                                        super();
  14147.                                    }
  14148.  
  14149.                                    hide() {
  14150.                                        super.hide();
  14151.                                    }
  14152.  
  14153.                                    show(opener) {
  14154.                                        super.show(opener);
  14155.                                        this.showActiveMedia();
  14156.                                    }
  14157.  
  14158.                                    showActiveMedia() {
  14159.                                        this.querySelectorAll(
  14160.                                            `[data-media-id]:not([data-media-id="${this.openedBy.getAttribute('data-media-id')}"])`
  14161.                                        ).forEach((element) => {
  14162.                                            element.classList.remove('active');
  14163.                                        });
  14164.                                        const activeMedia = this.querySelector(`[data-media-id="${this.openedBy.getAttribute('data-media-id')}"]`);
  14165.                                        const activeMediaTemplate = activeMedia.querySelector('template');
  14166.                                        const activeMediaContent = activeMediaTemplate ? activeMediaTemplate.content : null;
  14167.                                        activeMedia.classList.add('active');
  14168.                                        activeMedia.scrollIntoView();
  14169.  
  14170.                                        const container = this.querySelector('[role="document"]');
  14171.                                        container.scrollLeft = (activeMedia.width - container.clientWidth) / 2;
  14172.  
  14173.                                        if (
  14174.                                            activeMedia.nodeName == 'DEFERRED-MEDIA' &&
  14175.                                            activeMediaContent &&
  14176.                                            activeMediaContent.querySelector('.js-youtube')
  14177.                                        )
  14178.                                            activeMedia.loadContent();
  14179.                                    }
  14180.                                }
  14181.                            );
  14182.                        }</script>
  14183.                    <script>/** Shopify CDN: Minification failed
  14184.  
  14185. Line 19:4 Transforming class syntax to the configured target environment ("es5") is not supported yet
  14186. Line 20:17 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  14187. Line 39:20 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  14188. Line 40:8 Transforming const to the configured target environment ("es5") is not supported yet
  14189. Line 46:20 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  14190. Line 47:8 Transforming const to the configured target environment ("es5") is not supported yet
  14191. Line 56:12 Transforming const to the configured target environment ("es5") is not supported yet
  14192. Line 74:8 Transforming const to the configured target environment ("es5") is not supported yet
  14193. Line 79:24 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  14194. Line 91:24 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  14195. ... and 5 more hidden warnings
  14196.  
  14197. **/
  14198.                        if (!customElements.get('media-gallery')) {
  14199.                            customElements.define(
  14200.                                'media-gallery',
  14201.                                class MediaGallery extends HTMLElement {
  14202.                                    constructor() {
  14203.                                        super();
  14204.                                        this.elements = {
  14205.                                            liveRegion: this.querySelector('[id^="GalleryStatus"]'),
  14206.                                            viewer: this.querySelector('[id^="GalleryViewer"]'),
  14207.                                            thumbnails: this.querySelector('[id^="GalleryThumbnails"]'),
  14208.                                        };
  14209.                                        this.mql = window.matchMedia('(min-width: 750px)');
  14210.                                        if (!this.elements.thumbnails) return;
  14211.  
  14212.                                        this.elements.viewer.addEventListener('slideChanged', debounce(this.onSlideChanged.bind(this), 500));
  14213.                                        this.elements.thumbnails.querySelectorAll('[data-target]').forEach((mediaToSwitch) => {
  14214.                                            mediaToSwitch
  14215.                                                .querySelector('button')
  14216.                                                .addEventListener('click', this.setActiveMedia.bind(this, mediaToSwitch.dataset.target, false));
  14217.                                        });
  14218.                                        if (this.dataset.desktopLayout.includes('thumbnail') && this.mql.matches) this.removeListSemantic();
  14219.                                    }
  14220.  
  14221.                                    onSlideChanged(event) {
  14222.                                        const thumbnail = this.elements.thumbnails.querySelector(
  14223.                                            `[data-target="${event.detail.currentElement.dataset.mediaId}"]`
  14224.                                        );
  14225.                                        this.setActiveThumbnail(thumbnail);
  14226.                                    }
  14227.  
  14228.                                    setActiveMedia(mediaId, prepend) {
  14229.                                        const activeMedia = this.elements.viewer.querySelector(`[data-media-id="${mediaId}"]`);
  14230.                                        this.elements.viewer.querySelectorAll('[data-media-id]').forEach((element) => {
  14231.                                            element.classList.remove('is-active');
  14232.                                        });
  14233.                                        activeMedia.classList.add('is-active');
  14234.  
  14235.                                        if (prepend) {
  14236.                                            activeMedia.parentElement.prepend(activeMedia);
  14237.                                            if (this.elements.thumbnails) {
  14238.                                                const activeThumbnail = this.elements.thumbnails.querySelector(`[data-target="${mediaId}"]`);
  14239.                                                activeThumbnail.parentElement.prepend(activeThumbnail);
  14240.                                            }
  14241.                                            if (this.elements.viewer.slider) this.elements.viewer.resetPages();
  14242.                                        }
  14243.  
  14244.                                        this.preventStickyHeader();
  14245.                                        window.setTimeout(() => {
  14246.                                            if (this.elements.thumbnails) {
  14247.                                                activeMedia.parentElement.scrollTo({ left: activeMedia.offsetLeft });
  14248.                                            }
  14249.                                            if (!this.elements.thumbnails || this.dataset.desktopLayout === 'stacked') {
  14250.                                                activeMedia.scrollIntoView({ behavior: 'smooth' });
  14251.                                            }
  14252.                                        });
  14253.                                        this.playActiveMedia(activeMedia);
  14254.  
  14255.                                        if (!this.elements.thumbnails) return;
  14256.                                        const activeThumbnail = this.elements.thumbnails.querySelector(`[data-target="${mediaId}"]`);
  14257.                                        this.setActiveThumbnail(activeThumbnail);
  14258.                                        this.announceLiveRegion(activeMedia, activeThumbnail.dataset.mediaPosition);
  14259.                                    }
  14260.  
  14261.                                    setActiveThumbnail(thumbnail) {
  14262.                                        if (!this.elements.thumbnails || !thumbnail) return;
  14263.  
  14264.                                        this.elements.thumbnails
  14265.                                            .querySelectorAll('button')
  14266.                                            .forEach((element) => element.removeAttribute('aria-current'));
  14267.                                        thumbnail.querySelector('button').setAttribute('aria-current', true);
  14268.                                        if (this.elements.thumbnails.isSlideVisible(thumbnail, 10)) return;
  14269.  
  14270.                                        this.elements.thumbnails.slider.scrollTo({ left: thumbnail.offsetLeft });
  14271.                                    }
  14272.  
  14273.                                    announceLiveRegion(activeItem, position) {
  14274.                                        const image = activeItem.querySelector('.product__modal-opener--image img');
  14275.                                        if (!image) return;
  14276.                                        image.onload = () => {
  14277.                                            this.elements.liveRegion.setAttribute('aria-hidden', false);
  14278.                                            this.elements.liveRegion.innerHTML = window.accessibilityStrings.imageAvailable.replace('[index]', position);
  14279.                                            setTimeout(() => {
  14280.                                                this.elements.liveRegion.setAttribute('aria-hidden', true);
  14281.                                            }, 2000);
  14282.                                        };
  14283.                                        image.src = image.src;
  14284.                                    }
  14285.  
  14286.                                    playActiveMedia(activeItem) {
  14287.                                        window.pauseAllMedia();
  14288.                                        const deferredMedia = activeItem.querySelector('.deferred-media');
  14289.                                        if (deferredMedia) deferredMedia.loadContent(false);
  14290.                                    }
  14291.  
  14292.                                    preventStickyHeader() {
  14293.                                        this.stickyHeader = this.stickyHeader || document.querySelector('sticky-header');
  14294.                                        if (!this.stickyHeader) return;
  14295.                                        this.stickyHeader.dispatchEvent(new Event('preventHeaderReveal'));
  14296.                                    }
  14297.  
  14298.                                    removeListSemantic() {
  14299.                                        if (!this.elements.viewer.slider) return;
  14300.                                        this.elements.viewer.slider.setAttribute('role', 'presentation');
  14301.                                        this.elements.viewer.sliderItems.forEach((slide) => slide.setAttribute('role', 'presentation'));
  14302.                                    }
  14303.                                }
  14304.                            );
  14305.                        }
  14306.                    </script>
  14307.                    <script>
  14308.                        document.addEventListener('DOMContentLoaded', function () {
  14309.                            function isIE() {
  14310.                                const ua = window.navigator.userAgent;
  14311.                                const msie = ua.indexOf('MSIE ');
  14312.                                const trident = ua.indexOf('Trident/https://infinite-style.com/');
  14313.  
  14314.                                return msie > 0 || trident > 0;
  14315.                            }
  14316.  
  14317.                            if (!isIE()) return;
  14318.                            const hiddenInput = document.querySelector('#product-form-template--17040648077525__main input[name="id"]');
  14319.                            const noScriptInputWrapper = document.createElement('div');
  14320.                            const variantSwitcher =
  14321.                                document.querySelector('variant-radios[data-section="template--17040648077525__main"]') ||
  14322.                                document.querySelector('variant-selects[data-section="template--17040648077525__main"]');
  14323.                            noScriptInputWrapper.innerHTML = document.querySelector(
  14324.                                '.product-form__noscript-wrapper-template--17040648077525__main'
  14325.                            ).textContent;
  14326.                            variantSwitcher.outerHTML = noScriptInputWrapper.outerHTML;
  14327.  
  14328.                            document.querySelector('#Variants-template--17040648077525__main').addEventListener('change', function (event) {
  14329.                                hiddenInput.value = event.currentTarget.value;
  14330.                            });
  14331.                        });
  14332.                    </script>
  14333.                    <script type="application/ld+json">
  14334.  {
  14335.    "@context": "http://schema.org/",
  14336.    "@type": "Product",
  14337.    "name": "KOITOTO | Login Situs Togel Online Support 24 Jam & Toto Slot Anti Lag Mudah Menang",
  14338.    "url": "https://infinite-style.com/",
  14339.    "image": ["https://imgstore.io/images/2025/04/15/mudahmenang_1000x1000.jpeg"],
  14340.    "description": "Main togel dan situs toto slot makin gampang di KOITOTO lewat link login cepat akses stabil pasaran resmi slot gacor layanan aktif 24 jam cocok buat yang cari menang tanpa ribet.",
  14341.    "brand": {
  14342.      "@type": "Brand",
  14343.      "name": "KOITOTO"
  14344.    },
  14345.    "offers": [{
  14346.      "@type": "Offer",
  14347.      "availability": "http://schema.org/InStock",
  14348.      "price": 5000.0,
  14349.      "priceCurrency": "IDR",
  14350.      "url": "https://infinite-style.com/"
  14351.    }]
  14352.  }
  14353. </script>
  14354.                </div>
  14355.            </section>
  14356.  
  14357.  
  14358.        </section>
  14359.        <section id="shopify-section-template--17040648077525__related-products" class="shopify-section section">
  14360.  
  14361.            <style>
  14362.                .card-wrapper {
  14363.                    color: inherit;
  14364.                    height: 100%;
  14365.                    position: relative;
  14366.                    text-decoration: none
  14367.                }
  14368.  
  14369.                .card {
  14370.                    text-decoration: none;
  14371.                    text-align: var(--text-alignment)
  14372.                }
  14373.  
  14374.                .card:not(.ratio) {
  14375.                    display: flex;
  14376.                    flex-direction: column;
  14377.                    height: 100%
  14378.                }
  14379.  
  14380.                .card.card--horizontal {
  14381.                    --text-alignment: left;
  14382.                    --image-padding: 0rem;
  14383.                    flex-direction: row;
  14384.                    align-items: flex-start;
  14385.                    gap: 1.5rem
  14386.                }
  14387.  
  14388.                .card--horizontal.ratio:before {
  14389.                    padding-bottom: 0
  14390.                }
  14391.  
  14392.                .card--card.card--horizontal {
  14393.                    padding: 1.2rem
  14394.                }
  14395.  
  14396.                .card--card.card--horizontal.card--text {
  14397.                    column-gap: 0
  14398.                }
  14399.  
  14400.                .card--card {
  14401.                    height: 100%
  14402.                }
  14403.  
  14404.                .card--card,
  14405.                .card--standard .card__inner {
  14406.                    position: relative;
  14407.                    box-sizing: border-box;
  14408.                    border-radius: var(--border-radius);
  14409.                    border: var(--border-width) solid rgba(var(--color-foreground), var(--border-opacity))
  14410.                }
  14411.  
  14412.                .card--card:after,
  14413.                .card--standard .card__inner:after {
  14414.                    content: "";
  14415.                    position: absolute;
  14416.                    z-index: -1;
  14417.                    width: calc(var(--border-width) * 2 + 100%);
  14418.                    height: calc(var(--border-width) * 2 + 100%);
  14419.                    top: calc(var(--border-width) * -1);
  14420.                    left: calc(var(--border-width) * -1);
  14421.                    border-radius: var(--border-radius);
  14422.                    box-shadow: var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius) rgba(var(--color-shadow), var(--shadow-opacity))
  14423.                }
  14424.  
  14425.                .card--card.gradient,
  14426.                .card__inner.gradient {
  14427.                    transform: perspective(0)
  14428.                }
  14429.  
  14430.                .card__inner.color-background-1 {
  14431.                    background: transparent
  14432.                }
  14433.  
  14434.                .card .card__inner .card__media {
  14435.                    overflow: hidden;
  14436.                    z-index: 0;
  14437.                    border-radius: calc(var(--border-radius) - var(--border-width) - var(--image-padding))
  14438.                }
  14439.  
  14440.                .card--card .card__inner .card__media {
  14441.                    border-bottom-right-radius: 0;
  14442.                    border-bottom-left-radius: 0
  14443.                }
  14444.  
  14445.                .card--standard.card--text {
  14446.                    background-color: transparent
  14447.                }
  14448.  
  14449.                .card-information {
  14450.                    text-align: var(--text-alignment)
  14451.                }
  14452.  
  14453.                .card__media,
  14454.                .card .media {
  14455.                    bottom: 0;
  14456.                    position: absolute;
  14457.                    top: 0
  14458.                }
  14459.  
  14460.                .card .media {
  14461.                    width: 100%
  14462.                }
  14463.  
  14464.                .card__media {
  14465.                    margin: var(--image-padding);
  14466.                    width: calc(100% - 2 * var(--image-padding))
  14467.                }
  14468.  
  14469.                .card--standard .card__media {
  14470.                    margin: var(--image-padding)
  14471.                }
  14472.  
  14473.                .card__inner {
  14474.                    width: 100%
  14475.                }
  14476.  
  14477.                .card--media .card__inner .card__content {
  14478.                    position: relative;
  14479.                    padding: calc(var(--image-padding) + 1rem)
  14480.                }
  14481.  
  14482.                .card__content {
  14483.                    display: grid;
  14484.                    grid-template-rows: minmax(0, 1fr) max-content minmax(0, 1fr);
  14485.                    padding: 1rem;
  14486.                    width: 100%;
  14487.                    flex-grow: 1
  14488.                }
  14489.  
  14490.                .card__content--auto-margins {
  14491.                    grid-template-rows: minmax(0, auto) max-content minmax(0, auto)
  14492.                }
  14493.  
  14494.                .card__information {
  14495.                    grid-row-start: 2;
  14496.                    padding: 1.3rem 1rem
  14497.                }
  14498.  
  14499.                .card:not(.ratio)>.card__content {
  14500.                    grid-template-rows: max-content minmax(0, 1fr) max-content auto
  14501.                }
  14502.  
  14503.                .card-information .card__information-volume-pricing-note {
  14504.                    margin-top: .6rem;
  14505.                    line-height: calc(.5 + .4 / var(--font-body-scale));
  14506.                    color: rgba(var(--color-foreground), .75)
  14507.                }
  14508.  
  14509.                @media screen and (min-width: 750px) {
  14510.                    .card__information {
  14511.                        padding-bottom: 1.7rem;
  14512.                        padding-top: 1.7rem
  14513.                    }
  14514.                }
  14515.  
  14516.                .card__badge {
  14517.                    align-self: flex-end;
  14518.                    grid-row-start: 3;
  14519.                    justify-self: flex-start
  14520.                }
  14521.  
  14522.                .card__badge.top {
  14523.                    align-self: flex-start;
  14524.                    grid-row-start: 1
  14525.                }
  14526.  
  14527.                .card__badge.right {
  14528.                    justify-self: flex-end
  14529.                }
  14530.  
  14531.                .card:not(.card--horizontal)>.card__content>.card__badge {
  14532.                    margin: 1.3rem
  14533.                }
  14534.  
  14535.                .card__media .media img {
  14536.                    height: 100%;
  14537.                    object-fit: cover;
  14538.                    object-position: center center;
  14539.                    width: 100%
  14540.                }
  14541.  
  14542.                .card__inner:not(.ratio)>.card__content {
  14543.                    height: 100%
  14544.                }
  14545.  
  14546.                .card__heading {
  14547.                    margin-top: 0;
  14548.                    margin-bottom: 0
  14549.                }
  14550.  
  14551.                .card__heading:last-child {
  14552.                    margin-bottom: 0
  14553.                }
  14554.  
  14555.                .card--horizontal .card__heading,
  14556.                .card--horizontal .price__container .price-item,
  14557.                .card--horizontal__quick-add {
  14558.                    font-size: calc(var(--font-heading-scale) * 1.2rem)
  14559.                }
  14560.  
  14561.                .card--horizontal .card-information>*:not(.visually-hidden:first-child)+*:not(.rating):not(.card__information-volume-pricing-note) {
  14562.                    margin-top: 0
  14563.                }
  14564.  
  14565.                .card--horizontal__quick-add:before {
  14566.                    box-shadow: none
  14567.                }
  14568.  
  14569.                @media only screen and (min-width: 750px) {
  14570.  
  14571.                    .card--horizontal .card__heading,
  14572.                    .card--horizontal .price__container .price-item,
  14573.                    .card--horizontal__quick-add {
  14574.                        font-size: calc(var(--font-heading-scale) * 1.3rem)
  14575.                    }
  14576.                }
  14577.  
  14578.                .card--card.card--media>.card__content {
  14579.                    margin-top: calc(0rem - var(--image-padding))
  14580.                }
  14581.  
  14582.                .card--standard.card--text a:after,
  14583.                .card--card .card__heading a:after {
  14584.                    bottom: calc(var(--border-width) * -1);
  14585.                    left: calc(var(--border-width) * -1);
  14586.                    right: calc(var(--border-width) * -1);
  14587.                    top: calc(var(--border-width) * -1)
  14588.                }
  14589.  
  14590.                .card__heading a:after {
  14591.                    bottom: 0;
  14592.                    content: "";
  14593.                    left: 0;
  14594.                    position: absolute;
  14595.                    right: 0;
  14596.                    top: 0;
  14597.                    z-index: 1
  14598.                }
  14599.  
  14600.                .card__heading a:after {
  14601.                    outline-offset: .3rem
  14602.                }
  14603.  
  14604.                .card__heading a:focus:after {
  14605.                    box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3);
  14606.                    outline: .2rem solid rgba(var(--color-foreground), .5)
  14607.                }
  14608.  
  14609.                .card__heading a:focus-visible:after {
  14610.                    box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 .5rem .4rem rgba(var(--color-foreground), .3);
  14611.                    outline: .2rem solid rgba(var(--color-foreground), .5)
  14612.                }
  14613.  
  14614.                .card__heading a:focus:not(:focus-visible):after {
  14615.                    box-shadow: none;
  14616.                    outline: 0
  14617.                }
  14618.  
  14619.                .card__heading a:focus {
  14620.                    box-shadow: none;
  14621.                    outline: 0
  14622.                }
  14623.  
  14624.                @media screen and (min-width: 990px) {
  14625.  
  14626.                    .card .media.media--hover-effect>img:only-child,
  14627.                    .card-wrapper .media.media--hover-effect>img:only-child {
  14628.                        transition: transform var(--duration-long) ease
  14629.                    }
  14630.  
  14631.                    .card:hover .media.media--hover-effect>img:first-child:only-child,
  14632.                    .card-wrapper:hover .media.media--hover-effect>img:first-child:only-child {
  14633.                        transform: scale(1.03)
  14634.                    }
  14635.  
  14636.                    .card-wrapper:hover .media.media--hover-effect>img:first-child:not(:only-child) {
  14637.                        opacity: 0
  14638.                    }
  14639.  
  14640.                    .card-wrapper:hover .media.media--hover-effect>img+img {
  14641.                        opacity: 1;
  14642.                        transition: transform var(--duration-long) ease;
  14643.                        transform: scale(1.03)
  14644.                    }
  14645.  
  14646.                    .underline-links-hover:hover a {
  14647.                        text-decoration: underline;
  14648.                        text-underline-offset: .3rem
  14649.                    }
  14650.                }
  14651.  
  14652.                .card--standard.card--media .card__inner .card__information,
  14653.                .card--standard.card--text:not(.card--horizontal)>.card__content .card__heading:not(.card__heading--placeholder),
  14654.                .card--standard:not(.card--horizontal)>.card__content .card__badge,
  14655.                .card--standard.card--text.article-card>.card__content .card__information,
  14656.                .card--standard>.card__content .card__caption {
  14657.                    display: none
  14658.                }
  14659.  
  14660.                .card--standard:not(.card--horizontal) .placeholder-svg {
  14661.                    height: auto;
  14662.                    width: 100%
  14663.                }
  14664.  
  14665.                .card--standard>.card__content {
  14666.                    padding: 0
  14667.                }
  14668.  
  14669.                .card--standard>.card__content .card__information {
  14670.                    padding-left: 0;
  14671.                    padding-right: 0
  14672.                }
  14673.  
  14674.                .card--card.card--media .card__inner .card__information,
  14675.                .card--card.card--text .card__inner,
  14676.                .card--card.card--media>.card__content .card__badge {
  14677.                    display: none
  14678.                }
  14679.  
  14680.                .card--horizontal .card__badge,
  14681.                .card--horizontal.card--text .card__inner {
  14682.                    display: none
  14683.                }
  14684.  
  14685.                .card--extend-height {
  14686.                    height: 100%
  14687.                }
  14688.  
  14689.                .card--extend-height.card--standard.card--text,
  14690.                .card--extend-height.card--media {
  14691.                    display: flex;
  14692.                    flex-direction: column
  14693.                }
  14694.  
  14695.                .card--extend-height.card--standard.card--text .card__inner,
  14696.                .card--extend-height.card--media .card__inner {
  14697.                    flex-grow: 1
  14698.                }
  14699.  
  14700.                .card .icon-wrap {
  14701.                    margin-left: .8rem;
  14702.                    white-space: nowrap;
  14703.                    transition: transform var(--duration-short) ease;
  14704.                    overflow: hidden
  14705.                }
  14706.  
  14707.                .card-information>*+* {
  14708.                    margin-top: .5rem
  14709.                }
  14710.  
  14711.                .card-information {
  14712.                    width: 100%
  14713.                }
  14714.  
  14715.                .card-information>* {
  14716.                    line-height: calc(1 + .4 / var(--font-body-scale));
  14717.                    color: rgb(var(--color-foreground))
  14718.                }
  14719.  
  14720.                .card-information>.price {
  14721.                    color: rgb(var(--color-foreground))
  14722.                }
  14723.  
  14724.                .card--horizontal .card-information>.price {
  14725.                    color: rgba(var(--color-foreground), .75)
  14726.                }
  14727.  
  14728.                .card-information>.rating {
  14729.                    margin-top: .4rem
  14730.                }
  14731.  
  14732.                .card-information>*:not(.visually-hidden:first-child)+*:not(.rating):not(.card__information-volume-pricing-note) {
  14733.                    margin-top: .7rem
  14734.                }
  14735.  
  14736.                .card-information .caption {
  14737.                    letter-spacing: .07rem
  14738.                }
  14739.  
  14740.                .card-article-info {
  14741.                    margin-top: 1rem
  14742.                }
  14743.  
  14744.                .card--shape .card__content {
  14745.                    padding-top: 0
  14746.                }
  14747.  
  14748.                .card--shape.card--standard:not(.card--text) .card__inner {
  14749.                    border: 0;
  14750.                    background-color: transparent;
  14751.                    filter: drop-shadow(var(--shadow-horizontal-offset) var(--shadow-vertical-offset) var(--shadow-blur-radius) rgba(var(--color-shadow), var(--shadow-opacity)))
  14752.                }
  14753.  
  14754.                .card--shape.card--standard:not(.card--text) .card__inner:after {
  14755.                    display: none
  14756.                }
  14757.  
  14758.                .grid__item:nth-child(2n) .shape--blob {
  14759.                    clip-path: polygon(var(--shape--blob-2))
  14760.                }
  14761.  
  14762.                .grid__item:nth-child(3n) .shape--blob {
  14763.                    clip-path: polygon(var(--shape--blob-3))
  14764.                }
  14765.  
  14766.                .grid__item:nth-child(4n) .shape--blob {
  14767.                    clip-path: polygon(var(--shape--blob-4))
  14768.                }
  14769.  
  14770.                .grid__item:nth-child(5n) .shape--blob {
  14771.                    clip-path: polygon(var(--shape--blob-5))
  14772.                }
  14773.  
  14774.                .grid__item:nth-child(7n) .shape--blob {
  14775.                    clip-path: polygon(var(--shape--blob-6))
  14776.                }
  14777.  
  14778.                .grid__item:nth-child(8n) .shape--blob {
  14779.                    clip-path: polygon(var(--shape--blob-1))
  14780.                }
  14781.  
  14782.                @media (prefers-reduced-motion: no-preference) {
  14783.                    .product-card-wrapper .shape--round {
  14784.                        transition: clip-path var(--duration-long) ease
  14785.                    }
  14786.  
  14787.                    .product-card-wrapper:hover .shape--round {
  14788.                        clip-path: ellipse(47% 47% at 50% 50%)
  14789.                    }
  14790.  
  14791.                    .product-card-wrapper .shape--blob {
  14792.                        transition: clip-path var(--duration-long) ease-in-out
  14793.                    }
  14794.  
  14795.                    .product-card-wrapper:hover .shape--blob {
  14796.                        clip-path: polygon(var(--shape--blob-5))
  14797.                    }
  14798.  
  14799.                    .grid__item:nth-child(2n) .product-card-wrapper:hover .shape--blob {
  14800.                        clip-path: polygon(var(--shape--blob-6))
  14801.                    }
  14802.  
  14803.                    .grid__item:nth-child(3n) .product-card-wrapper:hover .shape--blob {
  14804.                        clip-path: polygon(var(--shape--blob-1))
  14805.                    }
  14806.  
  14807.                    .grid__item:nth-child(4n) .product-card-wrapper:hover .shape--blob {
  14808.                        clip-path: polygon(var(--shape--blob-2))
  14809.                    }
  14810.  
  14811.                    .grid__item:nth-child(5n) .product-card-wrapper:hover .shape--blob {
  14812.                        clip-path: polygon(var(--shape--blob-3))
  14813.                    }
  14814.  
  14815.                    .grid__item:nth-child(7n) .product-card-wrapper:hover .shape--blob {
  14816.                        clip-path: polygon(var(--shape--blob-4))
  14817.                    }
  14818.  
  14819.                    .grid__item:nth-child(8n) .product-card-wrapper:hover .shape--blob {
  14820.                        clip-path: polygon(var(--shape--blob-5))
  14821.                    }
  14822.                }
  14823.            </style>
  14824.            <style>
  14825.                .price {
  14826.                    font-size: 1.6rem;
  14827.                    letter-spacing: .1rem;
  14828.                    line-height: calc(1 + .5 / var(--font-body-scale));
  14829.                    color: rgb(var(--color-foreground))
  14830.                }
  14831.  
  14832.                .price>* {
  14833.                    display: inline-block;
  14834.                    vertical-align: top
  14835.                }
  14836.  
  14837.                .price.price--unavailable {
  14838.                    visibility: hidden
  14839.                }
  14840.  
  14841.                .price--end {
  14842.                    text-align: right
  14843.                }
  14844.  
  14845.                .price .price-item {
  14846.                    display: inline-block;
  14847.                    margin: 0 1rem 0 0
  14848.                }
  14849.  
  14850.                .price__regular .price-item--regular {
  14851.                    margin-right: 0
  14852.                }
  14853.  
  14854.                .price:not(.price--show-badge) .price-item--last:last-of-type {
  14855.                    margin: 0
  14856.                }
  14857.  
  14858.                @media screen and (min-width: 750px) {
  14859.                    .price {
  14860.                        margin-bottom: 0
  14861.                    }
  14862.                }
  14863.  
  14864.                .price--large {
  14865.                    font-size: 1.6rem;
  14866.                    line-height: calc(1 + .5 / var(--font-body-scale));
  14867.                    letter-spacing: .13rem
  14868.                }
  14869.  
  14870.                @media screen and (min-width: 750px) {
  14871.                    .price--large {
  14872.                        font-size: 1.8rem
  14873.                    }
  14874.                }
  14875.  
  14876.                .price--sold-out .price__availability,
  14877.                .price__regular {
  14878.                    display: block
  14879.                }
  14880.  
  14881.                .price__sale,
  14882.                .price__availability,
  14883.                .price .price__badge-sale,
  14884.                .price .price__badge-sold-out,
  14885.                .price--on-sale .price__regular,
  14886.                .price--on-sale .price__availability {
  14887.                    display: none
  14888.                }
  14889.  
  14890.                .price--sold-out .price__badge-sold-out,
  14891.                .price--on-sale .price__badge-sale,
  14892.                .volume-pricing--sale-badge .price__badge-sale {
  14893.                    display: inline-block
  14894.                }
  14895.  
  14896.                .volume-pricing--sale-badge .price__badge-sale {
  14897.                    margin-left: .5rem
  14898.                }
  14899.  
  14900.                .price--on-sale .price__sale {
  14901.                    display: initial;
  14902.                    flex-direction: row;
  14903.                    flex-wrap: wrap
  14904.                }
  14905.  
  14906.                .price--center {
  14907.                    display: initial;
  14908.                    justify-content: center
  14909.                }
  14910.  
  14911.                .price--on-sale .price-item--regular {
  14912.                    text-decoration: line-through;
  14913.                    color: rgba(var(--color-foreground), .75);
  14914.                    font-size: 1.3rem
  14915.                }
  14916.  
  14917.                .unit-price {
  14918.                    display: block;
  14919.                    font-size: 1.1rem;
  14920.                    letter-spacing: .04rem;
  14921.                    line-height: calc(1 + .2 / var(--font-body-scale));
  14922.                    margin-top: .2rem;
  14923.                    text-transform: uppercase;
  14924.                    color: rgba(var(--color-foreground), .7)
  14925.                }
  14926.            </style>
  14927.            <style>
  14928.                .related-products {
  14929.                    display: block;
  14930.                }
  14931.  
  14932.                .related-products__heading {
  14933.                    margin: 0 0 3rem;
  14934.                }
  14935.            </style>
  14936.            <style data-shopify>
  14937.                .section-template--17040648077525__related-products-padding {
  14938.                    padding-top: 0px;
  14939.                    padding-bottom: 45px;
  14940.                }
  14941.  
  14942.                @media screen and (min-width: 750px) {
  14943.                    .section-template--17040648077525__related-products-padding {
  14944.                        padding-top: 0px;
  14945.                        padding-bottom: 60px;
  14946.                    }
  14947.                }
  14948.            </style>
  14949.            <div class="color-background-1 gradient no-js-hidden">
  14950.                <product-recommendations
  14951.                    class="related-products page-width section-template--17040648077525__related-products-padding isolate scroll-trigger animate--slide-in"
  14952.                    data-url="/recommendations/products?section_id=template--17040648077525__related-products&product_id=8226828321669&limit=4">
  14953.  
  14954.                </product-recommendations>
  14955.            </div>
  14956.  
  14957.  
  14958.        </section>
  14959.    </main>
  14960.  
  14961.    <!-- BEGIN sections: footer-group -->
  14962.    <section id="shopify-section-sections--17040648372437__newsletter"
  14963.        class="shopify-section shopify-section-group-footer-group section">
  14964.        <style>
  14965.            .newsletter-form {
  14966.                display: flex;
  14967.                flex-direction: column;
  14968.                justify-content: center;
  14969.                align-items: center;
  14970.                width: 100%;
  14971.                position: relative
  14972.            }
  14973.  
  14974.            @media screen and (min-width: 750px) {
  14975.                .newsletter-form {
  14976.                    align-items: flex-start;
  14977.                    margin: 0 auto;
  14978.                    max-width: 36rem
  14979.                }
  14980.            }
  14981.  
  14982.            .newsletter-form__field-wrapper {
  14983.                width: 100%
  14984.            }
  14985.  
  14986.            .newsletter-form__field-wrapper .field__input {
  14987.                padding-right: 5rem
  14988.            }
  14989.  
  14990.            .newsletter-form__field-wrapper .field {
  14991.                z-index: 0
  14992.            }
  14993.  
  14994.            .newsletter-form__message {
  14995.                justify-content: center;
  14996.                margin-bottom: 0
  14997.            }
  14998.  
  14999.            .newsletter-form__message--success {
  15000.                margin-top: 2rem
  15001.            }
  15002.  
  15003.            @media screen and (min-width: 750px) {
  15004.                .newsletter-form__message {
  15005.                    justify-content: flex-start
  15006.                }
  15007.            }
  15008.  
  15009.            .newsletter-form__button {
  15010.                width: 4.4rem;
  15011.                margin: 0;
  15012.                right: var(--inputs-border-width);
  15013.                top: 0;
  15014.                height: 100%;
  15015.                z-index: 2
  15016.            }
  15017.  
  15018.            .newsletter-form__button:focus-visible {
  15019.                box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .4rem rgba(var(--color-foreground));
  15020.                background-color: rgb(var(--color-background))
  15021.            }
  15022.  
  15023.            .newsletter-form__button:focus {
  15024.                box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .4rem rgba(var(--color-foreground));
  15025.                background-color: rgb(var(--color-background))
  15026.            }
  15027.  
  15028.            .newsletter-form__button:not(:focus-visible):not(.focused) {
  15029.                box-shadow: inherit;
  15030.                background-color: inherit
  15031.            }
  15032.  
  15033.            .newsletter-form__button .icon {
  15034.                width: 1.5rem
  15035.            }
  15036.        </style>
  15037.        <style>
  15038.            .newsletter__wrapper {
  15039.                padding-right: calc(4rem / var(--font-body-scale));
  15040.                padding-left: calc(4rem / var(--font-body-scale))
  15041.            }
  15042.  
  15043.            @media screen and (min-width: 750px) {
  15044.                .newsletter__wrapper {
  15045.                    padding-right: 9rem;
  15046.                    padding-left: 9rem
  15047.                }
  15048.            }
  15049.  
  15050.            .newsletter__wrapper>* {
  15051.                margin-top: 0;
  15052.                margin-bottom: 0
  15053.            }
  15054.  
  15055.            .newsletter__wrapper>*+* {
  15056.                margin-top: 2rem
  15057.            }
  15058.  
  15059.            .newsletter__wrapper>*+.newsletter-form {
  15060.                margin-top: 3rem
  15061.            }
  15062.  
  15063.            .newsletter__subheading {
  15064.                max-width: 70rem;
  15065.                margin-left: auto;
  15066.                margin-right: auto
  15067.            }
  15068.  
  15069.            .newsletter__wrapper .newsletter-form__field-wrapper {
  15070.                max-width: 36rem
  15071.            }
  15072.  
  15073.            .newsletter-form__field-wrapper .newsletter-form__message {
  15074.                margin-top: 1.5rem
  15075.            }
  15076.  
  15077.            .newsletter__button {
  15078.                margin-top: 3rem;
  15079.                width: fit-content
  15080.            }
  15081.  
  15082.            @media screen and (min-width: 750px) {
  15083.                .newsletter__button {
  15084.                    flex-shrink: 0;
  15085.                    margin: 0 0 0 1rem
  15086.                }
  15087.            }
  15088.        </style>
  15089.        <style data-shopify>
  15090.            .section-sections--17040648372437__newsletter-padding {
  15091.                padding-top: 21px;
  15092.                padding-bottom: 0px;
  15093.            }
  15094.  
  15095.            @media screen and (min-width: 750px) {
  15096.                .section-sections--17040648372437__newsletter-padding {
  15097.                    padding-top: 28px;
  15098.                    padding-bottom: 0px;
  15099.                }
  15100.            }
  15101.        </style>
  15102.        <div class="newsletter center ">
  15103.            <div
  15104.                class="newsletter__wrapper color-inverse gradient content-container isolate content-container--full-width section-sections--17040648372437__newsletter-padding">
  15105.                <h2 class="inline-richtext h1 scroll-trigger animate--slide-in" data-cascade
  15106.                    style="--animation-order: 1;">
  15107.                    Pusat Lengkap Permainan Situs Toto Togel Online 4D KOITOTO Eksklusif 2025
  15108.                </h2>
  15109.                <div class="newsletter__subheading rte scroll-trigger animate--slide-in" data-cascade
  15110.                    style="--animation-order: 2;">
  15111.                    <p>⬇️</p>
  15112.                </div>
  15113.                <div>
  15114.                    <form method="post" action="contact#contact_form" id="contact_form" accept-charset="UTF-8"
  15115.                        class="newsletter-form"><input type="hidden" name="form_type" value="customer" /><input
  15116.                            type="hidden" name="utf8" value="✓" />
  15117.                        <input type="hidden" name="contact[tags]" value="newsletter">
  15118.                        <div class="newsletter-form__field-wrapper scroll-trigger animate--slide-in" data-cascade
  15119.                            style="--animation-order: 3;">
  15120.                            <div class="field">
  15121.                                <input id="NewsletterForm--sections--17040648372437__newsletter" type="email"
  15122.                                    name="contact[email]" class="field__input" value="" aria-required="true"
  15123.                                    autocorrect="off" autocapitalize="off" autocomplete="email" placeholder="Email"
  15124.                                    required>
  15125.                                <label class="field__label" for="NewsletterForm--sections--17040648372437__newsletter">
  15126.                                    Situs Toto & Togel Online 4D
  15127.                                </label>
  15128.                                <button type="submit" class="newsletter-form__button field__button" name="commit"
  15129.                                    id="Subscribe" aria-label="Subscribe">
  15130.                                    <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false"
  15131.                                        class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
  15132.                                        <path fill-rule="evenodd" clip-rule="evenodd"
  15133.                                            d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z"
  15134.                                            fill="currentColor">
  15135.  
  15136.                                </button>
  15137.                            </div>
  15138.                        </div>
  15139.                    </form>
  15140. <br>
  15141. <br>
  15142.  
  15143. <!-- Gambar Logo -->
  15144. <div style="display: flex; justify-content: center; margin-top: 30px;">
  15145.  <img
  15146.    src="https://imgstore.io/images/2025/04/14/koitoto_icon.gif"
  15147.    alt="KOITOTO Icon"
  15148.    style="width: 1000px; width: 100%; height: auto;">
  15149. </div>
  15150.  
  15151. <!-- Gambar Provider -->
  15152. <div style="display: flex; justify-content: center; margin-top: 30px;">
  15153.  <img
  15154.    src="https://imgstore.io/images/2025/04/09/footer_provider_col.webp"
  15155.    alt="Provider KOITOTO"
  15156.    style="max-width: 1200px; width: 100%; height: auto;">
  15157. </div>
  15158.  
  15159.  
  15160. </section>
  15161.                </div>
  15162.            </div>
  15163.        </div>
  15164.    </section>
  15165.    <div id="shopify-section-sections--17040648372437__footer"
  15166.        class="shopify-section shopify-section-group-footer-group">
  15167.        <style>
  15168.            .footer {
  15169.                border-top: .1rem solid rgba(var(--color-foreground), .08)
  15170.            }
  15171.  
  15172.            .footer:not(.color-background-1) {
  15173.                border-top: none
  15174.            }
  15175.  
  15176.            .footer__content-top {
  15177.                padding-bottom: 5rem;
  15178.                display: block
  15179.            }
  15180.  
  15181.            @media screen and (max-width: 749px) {
  15182.                .footer .grid {
  15183.                    display: block
  15184.                }
  15185.  
  15186.                .footer-block.grid__item {
  15187.                    padding: 0;
  15188.                    margin: 4rem 0;
  15189.                    width: 100%
  15190.                }
  15191.  
  15192.                .footer-block.grid__item:first-child {
  15193.                    margin-top: 0
  15194.                }
  15195.  
  15196.                .footer__content-top {
  15197.                    padding-bottom: 3rem;
  15198.                    padding-left: calc(4rem / var(--font-body-scale));
  15199.                    padding-right: calc(4rem / var(--font-body-scale))
  15200.                }
  15201.            }
  15202.  
  15203.            @media screen and (min-width: 750px) {
  15204.                .footer__content-top .grid {
  15205.                    row-gap: 6rem;
  15206.                    margin-bottom: 0
  15207.                }
  15208.            }
  15209.  
  15210.            .footer__content-bottom {
  15211.                border-top: solid .1rem rgba(var(--color-foreground), .08);
  15212.                padding-top: 3rem
  15213.            }
  15214.  
  15215.            .footer__content-bottom:only-child {
  15216.                border-top: 0
  15217.            }
  15218.  
  15219.            .footer__content-bottom-wrapper {
  15220.                display: flex;
  15221.                width: 100%
  15222.            }
  15223.  
  15224.            @media screen and (max-width: 749px) {
  15225.                .footer__content-bottom {
  15226.                    flex-wrap: wrap;
  15227.                    padding-top: 0;
  15228.                    padding-left: 0;
  15229.                    padding-right: 0;
  15230.                    row-gap: 1.5rem
  15231.                }
  15232.  
  15233.                .footer__content-bottom-wrapper {
  15234.                    flex-wrap: wrap;
  15235.                    row-gap: 1.5rem;
  15236.                    justify-content: center
  15237.                }
  15238.            }
  15239.  
  15240.            .footer__localization:empty+.footer__column--info {
  15241.                align-items: center
  15242.            }
  15243.  
  15244.            @media screen and (max-width: 749px) {
  15245.                .footer__localization:empty+.footer__column {
  15246.                    padding-top: 1.5rem
  15247.                }
  15248.            }
  15249.  
  15250.            .footer__column {
  15251.                width: 100%;
  15252.                align-items: flex-end
  15253.            }
  15254.  
  15255.            .footer__column--info {
  15256.                display: flex;
  15257.                flex-direction: column;
  15258.                justify-content: center;
  15259.                align-items: center;
  15260.                padding-left: 2rem;
  15261.                padding-right: 2rem
  15262.            }
  15263.  
  15264.            @media screen and (min-width: 750px) {
  15265.                .footer__column--info {
  15266.                    padding-left: 0;
  15267.                    padding-right: 0;
  15268.                    align-items: flex-end
  15269.                }
  15270.            }
  15271.  
  15272.            .footer-block:only-child:last-child {
  15273.                text-align: center;
  15274.                max-width: 76rem;
  15275.                margin: 0 auto
  15276.            }
  15277.  
  15278.            @media screen and (min-width: 750px) {
  15279.                .footer-block {
  15280.                    display: block;
  15281.                    margin-top: 0
  15282.                }
  15283.            }
  15284.  
  15285.            .footer-block:empty {
  15286.                display: none
  15287.            }
  15288.  
  15289.            .footer-block--newsletter {
  15290.                display: flex;
  15291.                align-items: flex-end;
  15292.                margin-top: 3rem;
  15293.                gap: 1rem
  15294.            }
  15295.  
  15296.            .footer-block--newsletter:only-child {
  15297.                margin-top: 0
  15298.            }
  15299.  
  15300.            @media screen and (max-width: 749px) {
  15301.                .footer-block.footer-block--menu:only-child {
  15302.                    text-align: left
  15303.                }
  15304.            }
  15305.  
  15306.            @media screen and (min-width: 750px) {
  15307.                .footer-block--newsletter {
  15308.                    flex-wrap: nowrap;
  15309.                    justify-content: center
  15310.                }
  15311.            }
  15312.  
  15313.            .footer-block__heading {
  15314.                margin-bottom: 2rem;
  15315.                margin-top: 0;
  15316.                font-size: calc(var(--font-heading-scale) * 1.6rem)
  15317.            }
  15318.  
  15319.            @media screen and (min-width: 990px) {
  15320.                .footer-block__heading {
  15321.                    font-size: calc(var(--font-heading-scale) * 1.8rem)
  15322.                }
  15323.            }
  15324.  
  15325.            .footer__list-social:empty,
  15326.            .footer-block--newsletter:empty {
  15327.                display: none
  15328.            }
  15329.  
  15330.            .footer__follow-on-shop {
  15331.                display: flex;
  15332.                text-align: center
  15333.            }
  15334.  
  15335.            .footer__list-social.list-social:only-child {
  15336.                justify-content: center
  15337.            }
  15338.  
  15339.            .footer-block__newsletter {
  15340.                text-align: center;
  15341.                flex-grow: 1
  15342.            }
  15343.  
  15344.            .newsletter-form__field-wrapper {
  15345.                max-width: 36rem
  15346.            }
  15347.  
  15348.            @media screen and (min-width: 750px) {
  15349.                .footer-block__newsletter:not(:only-child) {
  15350.                    text-align: left;
  15351.                    margin-right: auto
  15352.                }
  15353.  
  15354.                .footer-block__newsletter:not(:only-child) .footer__newsletter {
  15355.                    justify-content: flex-start;
  15356.                    margin: 0
  15357.                }
  15358.  
  15359.                .footer-block__newsletter:not(:only-child) .newsletter-form__message--success {
  15360.                    left: auto
  15361.                }
  15362.  
  15363.                .footer__follow-on-shop {
  15364.                    margin-bottom: .4rem
  15365.                }
  15366.  
  15367.                .footer__follow-on-shop:first-child:not(:last-child) {
  15368.                    justify-content: flex-start;
  15369.                    margin-right: auto;
  15370.                    text-align: left
  15371.                }
  15372.  
  15373.                .footer__follow-on-shop:not(:first-child):not(:last-child) {
  15374.                    justify-content: flex-end;
  15375.                    text-align: right
  15376.                }
  15377.            }
  15378.  
  15379.            @media screen and (max-width: 749px) {
  15380.                .footer-block--newsletter {
  15381.                    display: flex;
  15382.                    flex-direction: column;
  15383.                    flex: 1 1 100%;
  15384.                    align-items: center;
  15385.                    gap: 3rem
  15386.                }
  15387.  
  15388.                .footer__list-social.list-social,
  15389.                .footer__follow-on-shop,
  15390.                .footer-block__newsletter {
  15391.                    display: flex;
  15392.                    justify-content: center
  15393.                }
  15394.  
  15395.                .footer-block__newsletter {
  15396.                    flex-direction: column
  15397.                }
  15398.            }
  15399.  
  15400.            @media screen and (min-width: 750px) {
  15401.                .footer-block__newsletter+.footer__list-social {
  15402.                    margin-top: 0
  15403.                }
  15404.            }
  15405.  
  15406.            .footer__localization {
  15407.                display: flex;
  15408.                flex-direction: row;
  15409.                justify-content: center;
  15410.                align-content: center;
  15411.                flex-wrap: wrap;
  15412.                padding: 1rem 1rem 0
  15413.            }
  15414.  
  15415.            .footer__localization:empty {
  15416.                display: none
  15417.            }
  15418.  
  15419.            .footer__localization h2 {
  15420.                margin: 1rem 1rem .5rem;
  15421.                color: rgba(var(--color-foreground), .75)
  15422.            }
  15423.  
  15424.            @media screen and (min-width: 750px) {
  15425.                .footer__localization {
  15426.                    padding: .4rem 0;
  15427.                    justify-content: flex-start
  15428.                }
  15429.  
  15430.                .footer__localization h2 {
  15431.                    margin: 1rem 0 0
  15432.                }
  15433.            }
  15434.  
  15435.            @media screen and (max-width: 989px) {
  15436.                .footer__localization noscript {
  15437.                    width: 100%
  15438.                }
  15439.            }
  15440.  
  15441.            @media screen and (min-width: 750px) {
  15442.                .footer__payment {
  15443.                    margin-top: 1.5rem
  15444.                }
  15445.            }
  15446.  
  15447.            .footer__content-bottom-wrapper--center {
  15448.                justify-content: center
  15449.            }
  15450.  
  15451.            .footer__copyright {
  15452.                text-align: center;
  15453.                margin-top: 1.5rem
  15454.            }
  15455.  
  15456.            @media screen and (min-width: 750px) {
  15457.                .footer__content-bottom-wrapper:not(.footer__content-bottom-wrapper--center) .footer__copyright {
  15458.                    text-align: right
  15459.                }
  15460.            }
  15461.  
  15462.            @keyframes appear-down {
  15463.                0% {
  15464.                    opacity: 0;
  15465.                    margin-top: -1rem
  15466.                }
  15467.  
  15468.                to {
  15469.                    opacity: 1;
  15470.                    margin-top: 0
  15471.                }
  15472.            }
  15473.  
  15474.            .footer-block__details-content {
  15475.                margin-bottom: 4rem
  15476.            }
  15477.  
  15478.            @media screen and (min-width: 750px) {
  15479.                .footer-block__details-content {
  15480.                    margin-bottom: 0
  15481.                }
  15482.  
  15483.                .footer-block__details-content>p,
  15484.                .footer-block__details-content>li {
  15485.                    padding: 0
  15486.                }
  15487.  
  15488.                .footer-block:only-child li {
  15489.                    display: inline
  15490.                }
  15491.  
  15492.                .footer-block__details-content>li:not(:last-child) {
  15493.                    margin-right: 1.5rem
  15494.                }
  15495.            }
  15496.  
  15497.            .footer-block__details-content .list-menu__item--link,
  15498.            .copyright__content a {
  15499.                color: rgba(var(--color-foreground), .75)
  15500.            }
  15501.  
  15502.            .footer-block__details-content .list-menu__item--active {
  15503.                transition: text-decoration-thickness var(--duration-short) ease;
  15504.                color: rgb(var(--color-foreground))
  15505.            }
  15506.  
  15507.            @media screen and (min-width: 750px) {
  15508.  
  15509.                .footer-block__details-content .list-menu__item--link:hover,
  15510.                .copyright__content a:hover {
  15511.                    color: rgb(var(--color-foreground));
  15512.                    text-decoration: underline;
  15513.                    text-underline-offset: .3rem
  15514.                }
  15515.  
  15516.                .footer-block__details-content .list-menu__item--active:hover {
  15517.                    text-decoration-thickness: .2rem
  15518.                }
  15519.            }
  15520.  
  15521.            @media screen and (max-width: 989px) {
  15522.                .footer-block__details-content .list-menu__item--link {
  15523.                    padding-top: 1rem;
  15524.                    padding-bottom: 1rem
  15525.                }
  15526.            }
  15527.  
  15528.            @media screen and (min-width: 750px) {
  15529.                .footer-block__details-content .list-menu__item--link {
  15530.                    display: inline-block;
  15531.                    font-size: 1.4rem
  15532.                }
  15533.  
  15534.                .footer-block__details-content>:first-child .list-menu__item--link {
  15535.                    padding-top: 0
  15536.                }
  15537.            }
  15538.  
  15539.            .footer-block-image {
  15540.                display: flex
  15541.            }
  15542.  
  15543.            .footer-block-image.left {
  15544.                justify-content: flex-start
  15545.            }
  15546.  
  15547.            .footer-block-image.center {
  15548.                justify-content: center
  15549.            }
  15550.  
  15551.            .footer-block-image.right {
  15552.                justify-content: flex-end
  15553.            }
  15554.  
  15555.            @media screen and (max-width: 749px) {
  15556.  
  15557.                .footer-block-image,
  15558.                .footer-block-image.left,
  15559.                .footer-block-image.center,
  15560.                .footer-block-image.right {
  15561.                    justify-content: center
  15562.                }
  15563.            }
  15564.  
  15565.            .footer-block__image-wrapper {
  15566.                margin-bottom: 2rem;
  15567.                overflow: hidden !important
  15568.            }
  15569.  
  15570.            .footer-block__image-wrapper img {
  15571.                display: block;
  15572.                height: auto;
  15573.                max-width: 100%
  15574.            }
  15575.  
  15576.            .footer-block__brand-info {
  15577.                text-align: left
  15578.            }
  15579.  
  15580.            .footer-block:only-child .footer-block__brand-info {
  15581.                text-align: center
  15582.            }
  15583.  
  15584.            .footer-block:only-child>.footer-block__brand-info>.footer-block__image-wrapper {
  15585.                margin-left: auto;
  15586.                margin-right: auto
  15587.            }
  15588.  
  15589.            .footer-block-image>img,
  15590.            .footer-block__brand-info>img {
  15591.                height: auto
  15592.            }
  15593.  
  15594.            .footer-block:only-child .footer-block__brand-info .footer__list-social.list-social {
  15595.                justify-content: center
  15596.            }
  15597.  
  15598.            .footer-block__brand-info .footer__list-social.list-social {
  15599.                justify-content: flex-start;
  15600.                margin-left: -1.3rem;
  15601.                margin-right: -1.3rem
  15602.            }
  15603.  
  15604.            .footer-block__details-content .placeholder-svg {
  15605.                max-width: 20rem
  15606.            }
  15607.  
  15608.            .copyright__content {
  15609.                font-size: 1.1rem
  15610.            }
  15611.  
  15612.            .copyright__content a {
  15613.                color: currentColor;
  15614.                text-decoration: none
  15615.            }
  15616.  
  15617.            .policies {
  15618.                display: inline
  15619.            }
  15620.  
  15621.            .policies li {
  15622.                display: inline-flex;
  15623.                justify-content: center;
  15624.                align-items: center
  15625.            }
  15626.  
  15627.            .policies li:before {
  15628.                content: "\b7";
  15629.                padding: 0 .8rem
  15630.            }
  15631.  
  15632.            .policies li a {
  15633.                padding: .6rem 0;
  15634.                display: block
  15635.            }
  15636.  
  15637.            @media screen and (min-width: 750px) {
  15638.                .policies li a {
  15639.                    padding: 0
  15640.                }
  15641.            }
  15642.  
  15643.            @keyframes animateLocalization {
  15644.                0% {
  15645.                    opacity: 0;
  15646.                    transform: translateY(0)
  15647.                }
  15648.  
  15649.                to {
  15650.                    opacity: 1;
  15651.                    transform: translateY(-1rem)
  15652.                }
  15653.            }
  15654.  
  15655.            @supports not (inset: 10px) {
  15656.                @media screen and (max-width: 749px) {
  15657.                    .footer .grid {
  15658.                        margin-left: 0
  15659.                    }
  15660.                }
  15661.  
  15662.                @media screen and (min-width: 750px) {
  15663.                    .footer__content-top .grid {
  15664.                        margin-left: -3rem
  15665.                    }
  15666.  
  15667.                    .footer__content-top .grid__item {
  15668.                        padding-left: 3rem
  15669.                    }
  15670.                }
  15671.            }
  15672.        </style>
  15673.        <style>
  15674.            .newsletter-form {
  15675.                display: flex;
  15676.                flex-direction: column;
  15677.                justify-content: center;
  15678.                align-items: center;
  15679.                width: 100%;
  15680.                position: relative
  15681.            }
  15682.  
  15683.            @media screen and (min-width: 750px) {
  15684.                .newsletter-form {
  15685.                    align-items: flex-start;
  15686.                    margin: 0 auto;
  15687.                    max-width: 36rem
  15688.                }
  15689.            }
  15690.  
  15691.            .newsletter-form__field-wrapper {
  15692.                width: 100%
  15693.            }
  15694.  
  15695.            .newsletter-form__field-wrapper .field__input {
  15696.                padding-right: 5rem
  15697.            }
  15698.  
  15699.            .newsletter-form__field-wrapper .field {
  15700.                z-index: 0
  15701.            }
  15702.  
  15703.            .newsletter-form__message {
  15704.                justify-content: center;
  15705.                margin-bottom: 0
  15706.            }
  15707.  
  15708.            .newsletter-form__message--success {
  15709.                margin-top: 2rem
  15710.            }
  15711.  
  15712.            @media screen and (min-width: 750px) {
  15713.                .newsletter-form__message {
  15714.                    justify-content: flex-start
  15715.                }
  15716.            }
  15717.  
  15718.            .newsletter-form__button {
  15719.                width: 4.4rem;
  15720.                margin: 0;
  15721.                right: var(--inputs-border-width);
  15722.                top: 0;
  15723.                height: 100%;
  15724.                z-index: 2
  15725.            }
  15726.  
  15727.            .newsletter-form__button:focus-visible {
  15728.                box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .4rem rgba(var(--color-foreground));
  15729.                background-color: rgb(var(--color-background))
  15730.            }
  15731.  
  15732.            .newsletter-form__button:focus {
  15733.                box-shadow: 0 0 0 .3rem rgb(var(--color-background)), 0 0 0 .4rem rgba(var(--color-foreground));
  15734.                background-color: rgb(var(--color-background))
  15735.            }
  15736.  
  15737.            .newsletter-form__button:not(:focus-visible):not(.focused) {
  15738.                box-shadow: inherit;
  15739.                background-color: inherit
  15740.            }
  15741.  
  15742.            .newsletter-form__button .icon {
  15743.                width: 1.5rem
  15744.            }
  15745.        </style>
  15746.        <style>
  15747.            .list-menu--right {
  15748.                right: 0;
  15749.            }
  15750.  
  15751.            .list-menu--disclosure {
  15752.                position: absolute;
  15753.                min-width: 100%;
  15754.                width: 20rem;
  15755.                border: 1px solid rgba(var(--color-foreground), 0.2);
  15756.            }
  15757.  
  15758.            .list-menu--disclosure:focus {
  15759.                outline: none;
  15760.            }
  15761.  
  15762.            .list-menu__item--active {
  15763.                text-decoration: underline;
  15764.                text-underline-offset: 0.3rem;
  15765.            }
  15766.  
  15767.            .list-menu__item--active:hover {
  15768.                text-decoration-thickness: 0.2rem;
  15769.            }
  15770.  
  15771.            .list-menu--disclosure.localization-selector {
  15772.                max-height: 18rem;
  15773.                overflow: auto;
  15774.                width: 10rem;
  15775.                padding: 0.5rem;
  15776.            }
  15777.        </style>
  15778.        <style>
  15779.            .list-payment {
  15780.                display: flex;
  15781.                flex-wrap: wrap;
  15782.                justify-content: center;
  15783.                margin: -0.5rem 0;
  15784.                padding-top: 1rem;
  15785.                padding-left: 0;
  15786.            }
  15787.  
  15788.            @media screen and (min-width: 750px) {
  15789.                .list-payment {
  15790.                    justify-content: flex-end;
  15791.                    margin: -0.5rem;
  15792.                    padding-top: 0;
  15793.                }
  15794.            }
  15795.  
  15796.            .list-payment__item {
  15797.                align-items: center;
  15798.                display: flex;
  15799.                padding: 0.5rem;
  15800.            }
  15801.        </style>
  15802.        <style>
  15803.            .list-social {
  15804.                display: flex;
  15805.                flex-wrap: wrap;
  15806.                justify-content: flex-end;
  15807.            }
  15808.  
  15809.            @media only screen and (max-width: 749px) {
  15810.                .list-social {
  15811.                    justify-content: center;
  15812.                }
  15813.            }
  15814.  
  15815.            .list-social__item .icon {
  15816.                height: 2.2rem;
  15817.                width: 2.2rem;
  15818.            }
  15819.  
  15820.            .list-social__link {
  15821.                align-items: center;
  15822.                display: flex;
  15823.                padding: 1.1rem;
  15824.                color: rgb(var(--color-foreground));
  15825.            }
  15826.  
  15827.            .utility-bar .list-social__link {
  15828.                padding: 0 0.8rem;
  15829.                height: 3.8rem;
  15830.            }
  15831.  
  15832.            .list-social__link:hover .icon {
  15833.                transform: scale(1.07);
  15834.            }
  15835.        </style>
  15836.        <style data-shopify>
  15837.            .footer {
  15838.                margin-top: 0px;
  15839.            }
  15840.  
  15841.            .section-sections--17040648372437__footer-padding {
  15842.                padding-top: 33px;
  15843.                padding-bottom: 45px;
  15844.            }
  15845.  
  15846.            @media screen and (min-width: 750px) {
  15847.                .footer {
  15848.                    margin-top: 0px;
  15849.                }
  15850.  
  15851.                .section-sections--17040648372437__footer-padding {
  15852.                    padding-top: 44px;
  15853.                    padding-bottom: 60px;
  15854.                }
  15855.            }
  15856.        </style>
  15857.        <footer class="footer color-inverse gradient section-sections--17040648372437__footer-padding">
  15858.            <div class="footer__content-top page-width">
  15859.                <div class="footer-block--newsletter scroll-trigger animate--slide-in" data-cascade></div>
  15860.            </div>
  15861.            <div class="footer__content-bottom scroll-trigger animate--slide-in" data-cascade>
  15862.                <div class="footer__content-bottom-wrapper page-width">
  15863.                    <div class="footer__column footer__localization isolate"></div>
  15864.                    <div class="footer__column footer__column--info">
  15865.                        <div class="footer__payment">
  15866.                            <span class="visually-hidden">Payment methods</span>
  15867.                            <ul class="list list-payment" role="list"></ul>
  15868.                        </div>
  15869.                    </div>
  15870.                </div>
  15871.                <div class="footer__content-bottom-wrapper page-width">
  15872.                    <div class="footer__copyright caption">
  15873.                        <small class="copyright__content">&copy; Copyright<a
  15874.                                href="https://infinite-style.com/"> 2018 - 2025 | KOITOTO |</a></small>
  15875.                        <small class="copyright__content"><a target="_blank" rel="nofollow">All Rights Reserved | 18+</a></small>
  15876.                    </div>
  15877.                </div>
  15878.            </div>
  15879.        </footer>
  15880.        <style>
  15881.            .fixed-footer {
  15882.                display: flex;
  15883.                justify-content: space-around;
  15884.                position: fixed;
  15885.                background: linear-gradient(to bottom, #8B0000 0%, #8B0000 50%, #8B0000 100%);
  15886.                padding: 5px 0;
  15887.                box-shadow: 0 0 8px 4px #666;
  15888.                left: 0;
  15889.                right: 0;
  15890.                bottom: 0;
  15891.                z-index: 99
  15892.            }
  15893.  
  15894.            .fixed-footer a {
  15895.                flex-basis: calc((100% - 15px*6)/ 5);
  15896.                text-decoration: none;
  15897.                display: flex;
  15898.                flex-direction: column;
  15899.                justify-content: center;
  15900.                align-items: center;
  15901.                color: #fff;
  15902.                max-width: 75px;
  15903.                font-size: 12px;
  15904.                font-family: Ubuntu, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  15905.            }
  15906.  
  15907.            .fixed-footer a:hover {
  15908.                font-weight: bold;
  15909.            }
  15910.  
  15911.            .fixed-footer .center {
  15912.                transform: scale(1.5) translateY(-5px);
  15913.                background: center no-repeat;
  15914.                background-size: contain;
  15915.                background-color: inherit;
  15916.                border-radius: 50%;
  15917.            }
  15918.  
  15919.            .fixed-footer img {
  15920.                max-width: 20px;
  15921.                margin-bottom: 0;
  15922.                max-height: 20px;
  15923.            }
  15924.        </style>
  15925.        <div class="fixed-footer">
  15926.            <a href="https://lotsofpromotionskoi.org/" rel="nofollow noopener" target="_blank">
  15927.                <img layout="intrinsic" height="20px" width="20px"
  15928.                    src="https://kilat.digital/images/2023/12/22/b3f1b578ebdb270700ff9b0c9475cf69.png"
  15929.                    alt="PROMO KOITOTO">
  15930.                Bonus
  15931.            </a>
  15932.            <a href="https://mikale.me/login-koi" rel="nofollow noopener" target="_blank">
  15933.                <img layout="intrinsic" height="20px" width="20px"
  15934.                    src="https://kilat.digital/images/2023/12/20/6b2ffffc4e97bb30e6d922ced607f802.png"
  15935.                    alt="LOGIN KOITOTO">
  15936.                Login
  15937.            </a>
  15938.            <a href="https://mikale.me/seoyudha" rel="nofollow noopener" target="_blank" class="tada">
  15939.                <img layout="intrinsic" height="50" width="50"
  15940.                    src="https://kilat.digital/images/2023/12/20/bd350c38cdf02a19edcb5022f4d46f19.png"
  15941.                    alt="DAFTAR KOITOTO">
  15942.                Daftar
  15943.            </a>
  15944.            <a href="https://mikale.me/login-koi" rel="nofollow noopener" target="_blank">
  15945.                <img layout="intrinsic" height="20px" width="20px"
  15946.                    src="https://kilat.digital/images/2023/12/22/2b1184d165c244636c89bef160799697.png"
  15947.                    alt="LINK KOITOTO">
  15948.                Link
  15949.            </a>
  15950.            <a href="https://direct.lc.chat/13532091/" rel="nofollow noopener" target="_blank"
  15951.                class="js_live_chat_link live-chat-link">
  15952.                <img class="live-chat-icon" layout="intrinsic" height="20px" width="20px"
  15953.                    src="https://kilat.digital/images/2023/12/20/ed94593b02796a81fe558659411b7562.png"
  15954.                    alt="LIVECHAT KOITOTO">
  15955.                Live Chat
  15956.            </a>
  15957.        </div>
  15958.  
  15959.    </div>
  15960.    <!-- END sections: footer-group -->
  15961.  
  15962.    <ul hidden>
  15963.        <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li>
  15964.        <li id="a11y-new-window-message">Opens in a new window.</li>
  15965.    </ul>
  15966.    <script>
  15967.        window.shopUrl = 'https://infinite-style.com/';
  15968.        window.routes = {
  15969.            cart_add_url: '/cart/add',
  15970.            cart_change_url: '/cart/change',
  15971.            cart_update_url: '/cart/update',
  15972.            cart_url: '/cart',
  15973.            predictive_search_url: '/search/suggest',
  15974.        };
  15975.  
  15976.        window.cartStrings = {
  15977.            error: `There was an error while updating your cart. Please try again.`,
  15978.            quantityError: `You can only add [quantity] of this item to your cart.`,
  15979.        };
  15980.  
  15981.        window.variantStrings = {
  15982.            addToCart: `Add to cart`,
  15983.            soldOut: `Sold out`,
  15984.            unavailable: `Unavailable`,
  15985.            unavailable_with_option: `[value] - Unavailable`,
  15986.        };
  15987.  
  15988.        window.quickOrderListStrings = {
  15989.            itemsAdded: `[quantity] items added`,
  15990.            itemAdded: `[quantity] item added`,
  15991.            itemsRemoved: `[quantity] items removed`,
  15992.            itemRemoved: `[quantity] item removed`,
  15993.            viewCart: `View cart`,
  15994.            each: `[money]/ea`,
  15995.        };
  15996.  
  15997.        window.accessibilityStrings = {
  15998.            imageAvailable: `Image [index] is now available in gallery view`,
  15999.            shareSuccess: `Link copied to clipboard`,
  16000.            pauseSlideshow: `Pause slideshow`,
  16001.            playSlideshow: `Play slideshow`,
  16002.            recipientFormExpanded: `Gift card recipient form expanded`,
  16003.            recipientFormCollapsed: `Gift card recipient form collapsed`,
  16004.        };
  16005.    </script>
  16006.    <script>
  16007.        /** Shopify CDN: Minification failed
  16008.    
  16009.    Line 16:0 Transforming class syntax to the configured target environment ("es5") is not supported yet
  16010.    Line 17:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  16011.    Line 29:21 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  16012.    Line 38:10 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  16013.    Line 42:10 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  16014.    Line 44:4 Transforming const to the configured target environment ("es5") is not supported yet
  16015.    Line 64:14 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  16016.    Line 68:13 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  16017.    Line 78:9 Transforming object literal extensions to the configured target environment ("es5") is not supported yet
  16018.    Line 79:4 Transforming const to the configured target environment ("es5") is not supported yet
  16019.    ... and 31 more hidden warnings
  16020.    
  16021.    **/
  16022.        class PredictiveSearch extends SearchForm {
  16023.            constructor() {
  16024.                super();
  16025.                this.cachedResults = {};
  16026.                this.predictiveSearchResults = this.querySelector('[data-predictive-search]');
  16027.                this.allPredictiveSearchInstances = document.querySelectorAll('predictive-search');
  16028.                this.isOpen = false;
  16029.                this.abortController = new AbortController();
  16030.                this.searchTerm = '';
  16031.  
  16032.                this.setupEventListeners();
  16033.            }
  16034.  
  16035.            setupEventListeners() {
  16036.                this.input.form.addEventListener('submit', this.onFormSubmit.bind(this));
  16037.  
  16038.                this.input.addEventListener('focus', this.onFocus.bind(this));
  16039.                this.addEventListener('focusout', this.onFocusOut.bind(this));
  16040.                this.addEventListener('keyup', this.onKeyup.bind(this));
  16041.                this.addEventListener('keydown', this.onKeydown.bind(this));
  16042.            }
  16043.  
  16044.            getQuery() {
  16045.                return this.input.value.trim();
  16046.            }
  16047.  
  16048.            onChange() {
  16049.                super.onChange();
  16050.                const newSearchTerm = this.getQuery();
  16051.                if (!this.searchTerm || !newSearchTerm.startsWith(this.searchTerm)) {
  16052.                    // Remove the results when they are no longer relevant for the new search term
  16053.                    // so they don't show up when the dropdown opens again
  16054.                    this.querySelector('#predictive-search-results-groups-wrapper')?.remove();
  16055.                }
  16056.  
  16057.                // Update the term asap, don't wait for the predictive search query to finish loading
  16058.                this.updateSearchForTerm(this.searchTerm, newSearchTerm);
  16059.  
  16060.                this.searchTerm = newSearchTerm;
  16061.  
  16062.                if (!this.searchTerm.length) {
  16063.                    this.close(true);
  16064.                    return;
  16065.                }
  16066.  
  16067.                this.getSearchResults(this.searchTerm);
  16068.            }
  16069.  
  16070.            onFormSubmit(event) {
  16071.                if (!this.getQuery().length || this.querySelector('[aria-selected="true"] a')) event.preventDefault();
  16072.            }
  16073.  
  16074.            onFormReset(event) {
  16075.                super.onFormReset(event);
  16076.                if (super.shouldResetForm()) {
  16077.                    this.searchTerm = '';
  16078.                    this.abortController.abort();
  16079.                    this.abortController = new AbortController();
  16080.                    this.closeResults(true);
  16081.                }
  16082.            }
  16083.  
  16084.            onFocus() {
  16085.                const currentSearchTerm = this.getQuery();
  16086.  
  16087.                if (!currentSearchTerm.length) return;
  16088.  
  16089.                if (this.searchTerm !== currentSearchTerm) {
  16090.                    // Search term was changed from other search input, treat it as a user change
  16091.                    this.onChange();
  16092.                } else if (this.getAttribute('results') === 'true') {
  16093.                    this.open();
  16094.                } else {
  16095.                    this.getSearchResults(this.searchTerm);
  16096.                }
  16097.            }
  16098.  
  16099.            onFocusOut() {
  16100.                setTimeout(() => {
  16101.                    if (!this.contains(document.activeElement)) this.close();
  16102.                });
  16103.            }
  16104.  
  16105.            onKeyup(event) {
  16106.                if (!this.getQuery().length) this.close(true);
  16107.                event.preventDefault();
  16108.  
  16109.                switch (event.code) {
  16110.                    case 'ArrowUp':
  16111.                        this.switchOption('up');
  16112.                        break;
  16113.                    case 'ArrowDown':
  16114.                        this.switchOption('down');
  16115.                        break;
  16116.                    case 'Enter':
  16117.                        this.selectOption();
  16118.                        break;
  16119.                }
  16120.            }
  16121.  
  16122.            onKeydown(event) {
  16123.                // Prevent the cursor from moving in the input when using the up and down arrow keys
  16124.                if (event.code === 'ArrowUp' || event.code === 'ArrowDown') {
  16125.                    event.preventDefault();
  16126.                }
  16127.            }
  16128.  
  16129.            updateSearchForTerm(previousTerm, newTerm) {
  16130.                const searchForTextElement = this.querySelector('[data-predictive-search-search-for-text]');
  16131.                const currentButtonText = searchForTextElement?.innerText;
  16132.                if (currentButtonText) {
  16133.                    if (currentButtonText.match(new RegExp(previousTerm, 'g')).length > 1) {
  16134.                        // The new term matches part of the button text and not just the search term, do not replace to avoid mistakes
  16135.                        return;
  16136.                    }
  16137.                    const newButtonText = currentButtonText.replace(previousTerm, newTerm);
  16138.                    searchForTextElement.innerText = newButtonText;
  16139.                }
  16140.            }
  16141.  
  16142.            switchOption(direction) {
  16143.                if (!this.getAttribute('open')) return;
  16144.  
  16145.                const moveUp = direction === 'up';
  16146.                const selectedElement = this.querySelector('[aria-selected="true"]');
  16147.  
  16148.                // Filter out hidden elements (duplicated page and article resources) thanks
  16149.                // to this https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetParent
  16150.                const allVisibleElements = Array.from(this.querySelectorAll('li, button.predictive-search__item')).filter(
  16151.                    (element) => element.offsetParent !== null
  16152.                );
  16153.                let activeElementIndex = 0;
  16154.  
  16155.                if (moveUp && !selectedElement) return;
  16156.  
  16157.                let selectedElementIndex = -1;
  16158.                let i = 0;
  16159.  
  16160.                while (selectedElementIndex === -1 && i <= allVisibleElements.length) {
  16161.                    if (allVisibleElements[i] === selectedElement) {
  16162.                        selectedElementIndex = i;
  16163.                    }
  16164.                    i++;
  16165.                }
  16166.  
  16167.                this.statusElement.textContent = '';
  16168.  
  16169.                if (!moveUp && selectedElement) {
  16170.                    activeElementIndex = selectedElementIndex === allVisibleElements.length - 1 ? 0 : selectedElementIndex + 1;
  16171.                } else if (moveUp) {
  16172.                    activeElementIndex = selectedElementIndex === 0 ? allVisibleElements.length - 1 : selectedElementIndex - 1;
  16173.                }
  16174.  
  16175.                if (activeElementIndex === selectedElementIndex) return;
  16176.  
  16177.                const activeElement = allVisibleElements[activeElementIndex];
  16178.  
  16179.                activeElement.setAttribute('aria-selected', true);
  16180.                if (selectedElement) selectedElement.setAttribute('aria-selected', false);
  16181.  
  16182.                this.input.setAttribute('aria-activedescendant', activeElement.id);
  16183.            }
  16184.  
  16185.            selectOption() {
  16186.                const selectedOption = this.querySelector('[aria-selected="true"] a, button[aria-selected="true"]');
  16187.  
  16188.                if (selectedOption) selectedOption.click();
  16189.            }
  16190.  
  16191.            getSearchResults(searchTerm) {
  16192.                const queryKey = searchTerm.replace(' ', '-').toLowerCase();
  16193.                this.setLiveRegionLoadingState();
  16194.  
  16195.                if (this.cachedResults[queryKey]) {
  16196.                    this.renderSearchResults(this.cachedResults[queryKey]);
  16197.                    return;
  16198.                }
  16199.  
  16200.                fetch(`${routes.predictive_search_url}?q=${encodeURIComponent(searchTerm)}&section_id=predictive-search`, {
  16201.                    signal: this.abortController.signal,
  16202.                })
  16203.                    .then((response) => {
  16204.                        if (!response.ok) {
  16205.                            var error = new Error(response.status);
  16206.                            this.close();
  16207.                            throw error;
  16208.                        }
  16209.  
  16210.                        return response.text();
  16211.                    })
  16212.                    .then((text) => {
  16213.                        const resultsMarkup = new DOMParser()
  16214.                            .parseFromString(text, 'text/html')
  16215.                            .querySelector('#shopify-section-predictive-search').innerHTML;
  16216.                        // Save bandwidth keeping the cache in all instances synced
  16217.                        this.allPredictiveSearchInstances.forEach((predictiveSearchInstance) => {
  16218.                            predictiveSearchInstance.cachedResults[queryKey] = resultsMarkup;
  16219.                        });
  16220.                        this.renderSearchResults(resultsMarkup);
  16221.                    })
  16222.                    .catch((error) => {
  16223.                        if (error?.code === 20) {
  16224.                            // Code 20 means the call was aborted
  16225.                            return;
  16226.                        }
  16227.                        this.close();
  16228.                        throw error;
  16229.                    });
  16230.            }
  16231.  
  16232.            setLiveRegionLoadingState() {
  16233.                this.statusElement = this.statusElement || this.querySelector('.predictive-search-status');
  16234.                this.loadingText = this.loadingText || this.getAttribute('data-loading-text');
  16235.  
  16236.                this.setLiveRegionText(this.loadingText);
  16237.                this.setAttribute('loading', true);
  16238.            }
  16239.  
  16240.            setLiveRegionText(statusText) {
  16241.                this.statusElement.setAttribute('aria-hidden', 'false');
  16242.                this.statusElement.textContent = statusText;
  16243.  
  16244.                setTimeout(() => {
  16245.                    this.statusElement.setAttribute('aria-hidden', 'true');
  16246.                }, 1000);
  16247.            }
  16248.  
  16249.            renderSearchResults(resultsMarkup) {
  16250.                this.predictiveSearchResults.innerHTML = resultsMarkup;
  16251.                this.setAttribute('results', true);
  16252.  
  16253.                this.setLiveRegionResults();
  16254.                this.open();
  16255.            }
  16256.  
  16257.            setLiveRegionResults() {
  16258.                this.removeAttribute('loading');
  16259.                this.setLiveRegionText(this.querySelector('[data-predictive-search-live-region-count-value]').textContent);
  16260.            }
  16261.  
  16262.            getResultsMaxHeight() {
  16263.                this.resultsMaxHeight =
  16264.                    window.innerHeight - document.querySelector('.section-header').getBoundingClientRect().bottom;
  16265.                return this.resultsMaxHeight;
  16266.            }
  16267.  
  16268.            open() {
  16269.                this.predictiveSearchResults.style.maxHeight = this.resultsMaxHeight || `${this.getResultsMaxHeight()}px`;
  16270.                this.setAttribute('open', true);
  16271.                this.input.setAttribute('aria-expanded', true);
  16272.                this.isOpen = true;
  16273.            }
  16274.  
  16275.            close(clearSearchTerm = false) {
  16276.                this.closeResults(clearSearchTerm);
  16277.                this.isOpen = false;
  16278.            }
  16279.  
  16280.            closeResults(clearSearchTerm = false) {
  16281.                if (clearSearchTerm) {
  16282.                    this.input.value = '';
  16283.                    this.removeAttribute('results');
  16284.                }
  16285.                const selected = this.querySelector('[aria-selected="true"]');
  16286.  
  16287.                if (selected) selected.setAttribute('aria-selected', false);
  16288.  
  16289.                this.input.setAttribute('aria-activedescendant', '');
  16290.                this.removeAttribute('loading');
  16291.                this.removeAttribute('open');
  16292.                this.input.setAttribute('aria-expanded', false);
  16293.                this.resultsMaxHeight = false;
  16294.                this.predictiveSearchResults.removeAttribute('style');
  16295.            }
  16296.        }
  16297.  
  16298.        customElements.define('predictive-search', PredictiveSearch);
  16299.    </script>
  16300. </body>
  16301. <div class="rtpIcon">
  16302.  <a href="https://mikale.me/rtp-arm" target="_blank">
  16303.    <img src="https://imgstore.io/images/2025/03/20/GIFRTPSLOT.gif" alt="RTP Slot">
  16304.  </a>
  16305. </div>
  16306. </html>
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda