  @font-face {
    font-family: "Calibre";
    font-display: swap;
    src: url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Light.woff2?v=1738856457") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Light.woff?v=1743525082") format("woff");
    font-weight: 300;
  }
  @font-face {
    font-family: "Calibre";
    font-display: swap;
    src: url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Regular.woff2?v=1738856457") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Regular.woff?v=1743525082") format("woff");
    font-weight: 400;
  }
  @font-face {
    font-family: "Calibre";
    font-display: swap;
    src: url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Medium.woff2?v=1738856457") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Medium.woff?v=1743525082") format("woff");
    font-weight: 500;
  }
  @font-face {
    font-family: "Calibre";
    font-display: swap;
    src: url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Medium.woff2?v=1738856457") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Medium.woff?v=1743525082") format("woff");
    font-weight: 700;
  }
  @font-face {
    font-family: "Calibre";
    font-style: italic;
    font-display: swap;
    src: url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Regular.woff2?v=1738856457") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Regular.woff?v=1743525082") format("woff");
    font-weight: 400;
  }

  @font-face {
    font-family: "Calibre";
    font-style: italic;
    font-display: swap;
    src: url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Medium.woff2?v=1738856457") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/CalibreWeb-Medium.woff?v=1743525082") format("woff");
    font-weight: 500;
  }

  @font-face {
    font-family: "NewKansas-Thin";
    font-display: swap;
    src: url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/NewKansas-Thin.woff2?v=1764093912") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/NewKansas-Thin.woff?v=1764094132") format("woff");
    font-weight: 300;
  }

  @font-face {
    font-family: "NewKansas-Regular";
    font-display: swap;
    src: url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/NewKansas-Regular.woff2?v=1764094132") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/NewKansas-Regular.woff?v=1764094061") format("woff");
    font-weight: 400;
  }

  @font-face {
    font-family: "NewKansas-Medium";
    font-display: swap;
    src: url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/NewKansas-Medium.woff2?v=1738856457") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/NewKansas-Medium.woff?v=1743525093") format("woff");
    font-weight: 500;
  }

  @font-face {
    font-family: "NewKansas-SemiBold";
    font-display: swap;
    src: url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/NewKansas-SemiBold.woff2?v=1738856576") format("woff2"),
    url("https://cdn.shopify.com/s/files/1/0608/2268/3729/files/NewKansas-SemiBold.woff?v=1743525093") format("woff");
    font-weight: 600;
  }

  :root {
    /**
     * ---------------------------------------------------------------------
     * SPACING VARIABLES
     *
     * We are using a spacing inspired from frameworks like Tailwind CSS.
     * ---------------------------------------------------------------------
     */
    --spacing-0-5: 0.125rem; /* 2px */
    --spacing-1: 0.25rem; /* 4px */
    --spacing-1-5: 0.375rem; /* 6px */
    --spacing-2: 0.5rem; /* 8px */
    --spacing-2-5: 0.625rem; /* 10px */
    --spacing-3: 0.75rem; /* 12px */
    --spacing-3-5: 0.875rem; /* 14px */
    --spacing-4: 1rem; /* 16px */
    --spacing-4-5: 1.125rem; /* 18px */
    --spacing-5: 1.25rem; /* 20px */
    --spacing-5-5: 1.375rem; /* 22px */
    --spacing-6: 1.5rem; /* 24px */
    --spacing-6-5: 1.625rem; /* 26px */
    --spacing-7: 1.75rem; /* 28px */
    --spacing-7-5: 1.875rem; /* 30px */
    --spacing-8: 2rem; /* 32px */
    --spacing-8-5: 2.125rem; /* 34px */
    --spacing-9: 2.25rem; /* 36px */
    --spacing-9-5: 2.375rem; /* 38px */
    --spacing-10: 2.5rem; /* 40px */
    --spacing-11: 2.75rem; /* 44px */
    --spacing-12: 3rem; /* 48px */
    --spacing-14: 3.5rem; /* 56px */
    --spacing-16: 4rem; /* 64px */
    --spacing-18: 4.5rem; /* 72px */
    --spacing-20: 5rem; /* 80px */
    --spacing-24: 6rem; /* 96px */
    --spacing-28: 7rem; /* 112px */
    --spacing-32: 8rem; /* 128px */
    --spacing-36: 9rem; /* 144px */
    --spacing-40: 10rem; /* 160px */
    --spacing-44: 11rem; /* 176px */
    --spacing-48: 12rem; /* 192px */
    --spacing-52: 13rem; /* 208px */
    --spacing-56: 14rem; /* 224px */
    --spacing-60: 15rem; /* 240px */
    --spacing-64: 16rem; /* 256px */
    --spacing-72: 18rem; /* 288px */
    --spacing-80: 20rem; /* 320px */
    --spacing-96: 24rem; /* 384px */

    /* Container */
    --container-max-width: 1600px;
    --container-narrow-max-width: 1350px;
    --container-gutter: var(--spacing-5);
    --section-outer-spacing-block: var(--spacing-8);
    --section-inner-max-spacing-block: var(--spacing-8);
    --section-inner-spacing-inline: var(--container-gutter);
    --section-stack-spacing-block: var(--spacing-8);

    /* Grid gutter */
    --grid-gutter: var(--spacing-5);

    /* Product list settings */
    --product-list-row-gap: var(--spacing-8);
    --product-list-column-gap: var(--grid-gutter);

    /* Form settings */
    --input-gap: var(--spacing-2);
    --input-height: 2.625rem;
    --input-padding-inline: var(--spacing-4);

    /* Other sizes */
    --sticky-area-height: calc(var(--sticky-announcement-bar-enabled, 0) * var(--announcement-bar-height, 0px) + var(--sticky-header-enabled, 0) * var(--header-height, 0px));

    /* RTL support */
    --transform-logical-flip: 1;
    --transform-origin-start: left;
    --transform-origin-end: right;

    /**
     * ---------------------------------------------------------------------
     * TYPOGRAPHY
     * ---------------------------------------------------------------------
     */

    /* Font properties */
    --heading-font-family: Calibre, sans-serif;
    --heading-font-family-kansas-m: NewKansas-Medium, sans-serif;
    --heading-font-family-kansas-sb: NewKansas-SemiBold, sans-serif;
    --heading-font-weight: 600;
    --heading-font-style: normal;
    --heading-text-transform: normal;
    --heading-letter-spacing: -0.01em;
    --subheading-font-weight: 500;
    --text-font-family: Calibre, sans-serif;
    --text-font-weight: 400;
    --text-font-weight-medium: 500;
    --text-font-style: normal;
    --text-letter-spacing: 0.0em;

    /* Font sizes */
    --text-h0: 2.75rem;
    --text-h1: 2rem;
    --text-h2: 1.75rem;
    --text-h3: 1.375rem;
    --text-h4: 1.125rem;
    --text-h5: 1.125rem;
    --text-h6: 1rem;
    --text-xs: 0.8125rem;
    --text-sm: 0.875rem;
    --text-base: 1.0rem;
    --text-lg: 1.25rem;
    --text-title: 1.125rem; 
    --text-subtitle: 1rem; 
    /**
     * ---------------------------------------------------------------------
     * COLORS
     * ---------------------------------------------------------------------
     */

    /* Color settings */--accent: 1 33 105;
    --text-primary: 30 48 110;
    --background-primary: 255 255 255;
    --dialog-background: 255 255 255;
    --border-color: var(--text-color, var(--text-primary)) / 0.12;

    /* Button colors */
    --button-background-primary: 1 33 105;
    --button-text-primary: 255 255 255;
    --button-background-secondary: 60 97 158;
    --button-text-secondary: 255 255 255;
    --button-background-danger: 203 55 42;
    --button-text-danger: 255 255 255;
    
    /* Status colors */
    --success-background: 238 241 235;
    --success-text: 112 138 92;
    --warning-background: 252 240 227;
    --warning-text: 227 126 22;
    --error-background: 245 229 229;
    --error-text: 170 40 38;

    /* Product colors */
    --on-sale-text: 0 112 110;
    --on-sale-badge-background: 0 112 110;
    --on-sale-badge-text: 255 255 255;
    --sold-out-badge-background: 82 82 82;
    --sold-out-badge-text: 255 255 255;
    --primary-badge-background: 0 112 111;
    --primary-badge-text: 255 255 255;
    --star-color: 255 183 74;
    --product-card-background: 255 255 255;
    --product-card-text: 21 21 21;

    /* Header colors */
    --header-background: 255 255 255;
    --header-text: 1 33 105;

    /* Footer colors */
    --footer-background: 30 48 110;
    --footer-text: 255 255 255;

    --color-text-blue: #526699;
    --color-light-gray: #E4E6EE;
    --color-light-gray-2: #F5F7FD;

    /* Rounded variables (used for border radius) */
    --rounded-xs: 0.25rem;
    --rounded-sm: 0.375rem;
    --rounded: 0.75rem;
    --rounded-lg: 1.5rem;
    --rounded-full: 9999px;

    --rounded-button: 2.0rem;
    --rounded-input: 0.5rem;

    /* Box shadow */
    --shadow-sm: 0 2px 8px rgb(var(--text-primary) / 0.1);
    --shadow: 0 5px 15px rgb(var(--text-primary) / 0.1);
    --shadow-md: 0 5px 30px rgb(var(--text-primary) / 0.1);
    --shadow-block: 0px 18px 50px rgb(var(--text-primary) / 0.1);

    /**
     * ---------------------------------------------------------------------
     * OTHER
     * ---------------------------------------------------------------------
     */

    --cursor-close-svg-url: url(//casper.com/cdn/shop/t/1745/assets/cursor-close.svg?v=147174565022153725511783964658);
    --cursor-zoom-in-svg-url: url(//casper.com/cdn/shop/t/1745/assets/cursor-zoom-in.svg?v=154953035094101115921783964658);
    --cursor-zoom-out-svg-url: url(//casper.com/cdn/shop/t/1745/assets/cursor-zoom-out.svg?v=16155520337305705181783964658);
    --checkmark-svg-url: url(//casper.com/cdn/shop/t/1745/assets/checkmark.svg?v=77552481021870063511783964658);
  }

  [dir="rtl"]:root {
    /* RTL support */
    --transform-logical-flip: -1;
    --transform-origin-start: right;
    --transform-origin-end: left;
  }

  @media screen and (min-width: 700px) {
    :root {
      /* Typography (font size) */
      --text-h0: 3.5rem;
      --text-h1: 2.5rem;
      --text-h2: 2rem;
      --text-h3: 1.625rem;
      --text-h4: 1.375rem;
      --text-h5: 1.125rem;
      --text-h6: 1rem;

      --text-xs: 0.875rem;
      --text-sm: 1.0rem;
      --text-base: 1.125rem;
      --text-lg: 1.375rem;

      /* Spacing */
      --container-gutter: 2rem;
      --section-outer-spacing-block: var(--spacing-12);
      --section-inner-max-spacing-block: var(--spacing-10);
      --section-inner-spacing-inline: var(--spacing-14);
      --section-stack-spacing-block: var(--spacing-10);

      /* Grid gutter */
      --grid-gutter: var(--spacing-6);

      /* Product list settings */
      --product-list-row-gap: var(--spacing-12);

      /* Form settings */
      --input-gap: 1rem;
      --input-height: 3.125rem;
      --input-padding-inline: var(--spacing-5);
    }
  }

  @media screen and (min-width: 1000px) {
    :root {
      /* Spacing settings */
      --container-gutter: var(--spacing-12);
      --section-outer-spacing-block: var(--spacing-14);
      --section-inner-max-spacing-block: var(--spacing-12);
      --section-inner-spacing-inline: var(--spacing-18);
      --section-stack-spacing-block: var(--spacing-10);
    }
  }

  @media screen and (min-width: 1150px) {
    :root {
      /* Spacing settings */
      --container-gutter: var(--spacing-12);
      --section-outer-spacing-block: var(--spacing-14);
      --section-inner-max-spacing-block: var(--spacing-12);
      --section-inner-spacing-inline: var(--spacing-18);
      --section-stack-spacing-block: var(--spacing-12);
    }
  }

  @media screen and (min-width: 1400px) {
    :root {
      /* Typography (font size) */
      --text-h0: 4.5rem;
      --text-h1: 3.5rem;
      --text-h2: 2.75rem;
      --text-h3: 2rem;
      --text-h4: 1.75rem;
      --text-h5: 1.375rem;
      --text-h6: 1.25rem;

      --section-outer-spacing-block: var(--spacing-16);
      --section-inner-max-spacing-block: var(--spacing-14);
      --section-inner-spacing-inline: var(--spacing-20);
    }
  }

  @media screen and (min-width: 1600px) {
    :root {
      --section-outer-spacing-block: var(--spacing-16);
      --section-inner-max-spacing-block: var(--spacing-16);
      --section-inner-spacing-inline: var(--spacing-24);
    }
  }

  /**
   * ---------------------------------------------------------------------
   * LIQUID DEPENDANT CSS
   *
   * Our main CSS is Liquid free, but some very specific features depend on
   * theme settings, so we have them here
   * ---------------------------------------------------------------------
   */@media screen and (pointer: fine) {
        .button:not([disabled]):hover, .btn:not([disabled]):hover, .shopify-payment-button__button--unbranded:not([disabled]):hover {
          --button-background-opacity: 0.85;
        }

        .button--subdued:not([disabled]):hover {
          --button-background: var(--text-color) / .05 !important;
        }
      }