/** Shopify CDN: Minification failed

Line 16:2 Unexpected "{"
Line 16:3 Expected identifier but found "%"
Line 31:2 Unexpected "{"
Line 31:3 Expected identifier but found "%"

**/
/* START_SECTION:story-intro-section (INDEX:88) */
.leivas-story-intro {
    position: relative;
    overflow: hidden;
    background: #0a0a0a;
  }

  {% if section.settings.enable_header_overlay %}
    /* Pulls this section up underneath the (now-transparent) header instead
       of leaving a gap — --header-h is set at runtime by header-new.liquid's
       overlay script. This section isn't a full 100vh like Roastery intro
       (it's min-height: 62vh, above the 749px breakpoint), so its height
       also needs to grow by the same amount to keep the next section from
       peeking into view before any scrolling — same trick as Hero Banner. */
    .leivas-story-intro[data-header-overlay] {
      margin-top: calc(var(--header-h, 0px) * -1);
    }
    @media screen and (min-width: 750px) {
      .leivas-story-intro[data-header-overlay] .leivas-story-intro__grid {
        min-height: calc(62vh + var(--header-h, 0px));
      }
    }
  {% endif %}

  .leivas-story-intro__container {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 40px;
  }

  .leivas-story-intro__grid {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 40px;
    min-height: 62vh;
    padding: 152px 0 88px;
  }

  .leivas-story-intro__main { max-width: 640px; }

  .leivas-story-intro__eyebrow-row {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 22px;
  }
  .leivas-story-intro__eyebrow {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #e3bc79;
  }
  .leivas-story-intro__rule {
    flex: 0 0 46px;
    height: 1px;
    background: linear-gradient(90deg, #e3bc79, rgba(230, 188, 121, 0));
  }

  .leivas-story-intro__title {
    font-weight: 800;
    letter-spacing: -0.03em;
    line-height: 1.04;
    font-size: clamp(38px, 5.6vw, 66px);
    color: #c6a15b;
    margin: 0 0 26px;
  }

  .leivas-story-intro__text {
    font-size: 17px;
    line-height: 1.7;
    color: #b4b0a8;
    max-width: 54ch;
    margin: 0 0 32px;
  }

  .leivas-story-intro__badge {
    display: inline-flex;
    align-items: center;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #e3bc79;
    padding: 11px 20px;
    border: 1px solid rgba(230, 188, 121, 0.35);
    border-radius: 999px;
  }

  .leivas-story-intro__aside {
    justify-self: end;
    align-self: start;
    margin-top: 6px;
    text-align: right;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #8c8579;
    line-height: 1.8;
  }
  .leivas-story-intro__aside-rule {
    display: block;
    width: 32px;
    height: 1px;
    background: rgba(230, 188, 121, 0.4);
    margin: 0 0 14px auto;
  }

  @media screen and (max-width: 900px) {
    .leivas-story-intro__grid { grid-template-columns: 1fr; }
    .leivas-story-intro__aside { display: none; }
  }
  @media screen and (max-width: 749px) {
    .leivas-story-intro__container { padding: 0 20px; }
    .leivas-story-intro__grid { min-height: auto; padding: 124px 0 64px; }
  }

  [data-reveal-item] {
    opacity: 0;
    transform: translateY(16px);
    transition: opacity 0.7s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
  }
  [data-reveal-item].is-visible {
    opacity: 1;
    transform: none;
  }

  @media (prefers-reduced-motion: reduce) {
    [data-reveal-item] {
      transition: none;
      opacity: 1;
      transform: none;
    }
  }
/* END_SECTION:story-intro-section */
/* START_SECTION:story-photo-section (INDEX:89) */
.leivas-story-photo {
    position: relative;
    overflow: hidden;
    background: #0a0a0a;
    width: 100%;
    max-height: 92vh;
  }
  .leivas-story-photo[data-reveal-item] {
    opacity: 0;
    transform: scale(1.06) translateY(18px);
    transition: opacity 1.1s cubic-bezier(0.22, 0.61, 0.36, 1), transform 1.1s cubic-bezier(0.22, 0.61, 0.36, 1);
  }
  .leivas-story-photo[data-reveal-item].is-visible {
    opacity: 1;
    transform: scale(1) translateY(0);
  }

  .leivas-story-photo__img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1) rotate(0deg) translate3d(0, 0, 0);
    transition: transform 0.9s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform;
  }

  .leivas-story-photo__placeholder {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #141414;
  }
  .leivas-story-photo__placeholder-svg { height: 60%; width: auto; opacity: 0.35; }

  .leivas-story-photo__veil {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 10, 10, 0.1) 0%, rgba(10, 10, 10, 0) 34%, rgba(10, 10, 10, 0.4) 100%);
  }

  @media (prefers-reduced-motion: reduce) {
    .leivas-story-photo[data-reveal-item] {
      transition: none;
      opacity: 1;
      transform: none;
    }
  }
/* END_SECTION:story-photo-section */
/* START_SECTION:story-video-section (INDEX:90) */
.leivas-video {
    position: relative;
    background: #0a0a0a;
  }

  .leivas-video__frame {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #0a0a0a;
  }
  @media (pointer: fine) {
    .leivas-video__frame:not(.is-playing) { cursor: none; }
  }

  .leivas-video__facade { position: absolute; inset: 0; }
  .leivas-video__frame.is-playing .leivas-video__facade { display: none; }

  .leivas-video__poster {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: contrast(1.04) brightness(0.82) saturate(0.96);
    transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1), filter 0.6s ease;
  }
  .leivas-video__frame:hover .leivas-video__poster {
    transform: scale(1.03);
    filter: contrast(1.05) brightness(0.7) saturate(0.98);
  }

  .leivas-video__poster--placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #141414;
  }
  .leivas-video__placeholder-svg { height: 60%; width: auto; opacity: 0.35; }

  .leivas-video__veil {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(10, 10, 10, 0.55) 0%, rgba(10, 10, 10, 0.05) 32%, rgba(10, 10, 10, 0.1) 60%, rgba(10, 10, 10, 0.6) 100%);
  }

  .leivas-video__caption {
    position: absolute;
    left: 6vw;
    bottom: 56px;
    z-index: 2;
    color: #fff;
    max-width: 460px;
    pointer-events: none;
  }
  .leivas-video__eyebrow { color: #e3bc79; margin-bottom: 10px; }
  .leivas-video__line { font-size: 17px; line-height: 1.5; color: rgba(255, 255, 255, 0.82); margin: 0; }

  .leivas-video__trigger {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 92px;
    height: 92px;
    border-radius: 50%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(10, 10, 10, 0.28);
    border: 1px solid rgba(255, 255, 255, 0.4);
    backdrop-filter: blur(2px);
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), background 0.35s ease, border-color 0.35s ease;
  }
  .leivas-video__trigger:focus-visible { outline: 2px solid #c6a15b; outline-offset: 3px; }
  .leivas-video__frame:hover .leivas-video__trigger {
    transform: translate(-50%, -50%) scale(1.08);
    background: rgba(10, 10, 10, 0.4);
    border-color: rgba(255, 255, 255, 0.7);
  }

  .leivas-video__trigger-ring {
    position: absolute;
    inset: -1px;
    border-radius: 50%;
    border: 1px solid rgba(230, 188, 121, 0.5);
    animation: leivas-video-pulse 2.6s ease-out infinite;
  }
  .leivas-video__trigger-icon { width: 26px; height: 26px; fill: #fff; margin-left: 4px; }

  @keyframes leivas-video-pulse {
    0% { transform: scale(1); opacity: 0.8; }
    100% { transform: scale(1.45); opacity: 0; }
  }

  .leivas-video__cursor {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 84px;
    height: 84px;
    border-radius: 50%;
    background: #c6a15b;
    color: #0a0a0a;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
    will-change: transform;
  }
  .leivas-video__cursor.is-active { opacity: 1; }
  @media (pointer: coarse) {
    .leivas-video__cursor { display: none; }
  }

  .leivas-video__iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    /* No native controls are shown, but the provider still toggles
       play/pause on a direct click regardless — for YouTube that brings
       back its title/branding card. All play/pause/mute control instead
       flows through our own buttons via postMessage, so a direct click
       here can never trigger that. */
    pointer-events: none;
  }

  /* Shown only while paused — covers the iframe entirely so YouTube's own
     branded pause card (title, channel, logo) never becomes visible;
     clicking anywhere on it resumes playback. */
  .leivas-video__pause-cover {
    position: absolute;
    inset: 0;
    z-index: 4;
    display: block;
    width: 100%;
    border: 0;
    padding: 0;
    background: rgba(10, 10, 10, 0.86);
  }

  .leivas-video__controls {
    position: absolute;
    right: 20px;
    bottom: 20px;
    z-index: 5;
    display: flex;
    gap: 10px;
  }
  .leivas-video__control-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(10, 10, 10, 0.55);
    border: 1px solid rgba(255, 255, 255, 0.25);
    backdrop-filter: blur(3px);
    transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
  }
  .leivas-video__control-btn:hover {
    background: rgba(10, 10, 10, 0.75);
    border-color: rgba(255, 255, 255, 0.45);
    transform: scale(1.06);
  }
  .leivas-video__control-btn:focus-visible { outline: 2px solid #c6a15b; outline-offset: 2px; }
  .leivas-video__control-btn svg { width: 18px; height: 18px; fill: #fff; }

  @media (prefers-reduced-motion: reduce) {
    .leivas-video__trigger-ring { animation: none; }
  }

  @media (max-width: 749px) {
    .leivas-video__trigger { width: 56px; height: 56px; }
    .leivas-video__trigger-icon { width: 18px; height: 18px; }
    .leivas-video__caption { left: 16px; right: 16px; bottom: auto; top: 14px; max-width: none; }
    .leivas-video__line { display: none; }
  }
/* END_SECTION:story-video-section */
/* START_SECTION:subscription-builder-section (INDEX:91) */
.leivas-sub-builder { background: #ffffff; padding: 80px 0; max-width: 100%; overflow-x: hidden; }
  @media (max-width: 749px) {
    .leivas-sub-builder { padding: 56px 0; }
  }

  .leivas-sub-builder__head {
    text-align: center; max-width: 560px; margin: 0 auto 32px; padding: 0 20px;
    opacity: 0; transform: translateY(16px); transition: opacity 0.7s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
  }
  .leivas-sub-builder__head.is-visible { opacity: 1; transform: none; }
  .leivas-sub-builder__eyebrow { font-size: 11px; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; color: #8a6e42; margin-bottom: 14px; }
  .leivas-sub-builder__heading { font-weight: 700; letter-spacing: -0.03em; line-height: 1.06; font-size: clamp(28px, 3.4vw, 46px); color: #0a0a0a; margin: 0; }
  .leivas-sub-builder__text { margin-top: 16px; font-size: 15.5px; line-height: 1.6; color: #6e6e6b; }

  .leivas-sub-builder__roasts {
    display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; margin-bottom: 20px; padding: 0 20px;
    opacity: 0; transform: translateY(16px); transition: opacity 0.7s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.7s cubic-bezier(0.22, 0.61, 0.36, 1);
  }
  .leivas-sub-builder__roasts.is-visible { opacity: 1; transform: none; }
  .leivas-sub-builder .leivas-sub-builder__roast {
    padding: 12px 22px; border: 1px solid #e8e7e4 !important; background: #ffffff !important; opacity: 1 !important;
    display: flex; align-items: baseline; gap: 8px; cursor: pointer;
    transition: border-color 0.2s ease, background 0.2s ease;
  }
  .leivas-sub-builder__roast-label { font-size: 14px; font-weight: 700; color: #0a0a0a !important; }
  .leivas-sub-builder__roast-count { font-size: 12px; color: #6e6e6b !important; }
  .leivas-sub-builder .leivas-sub-builder__roast.is-selected { background: #0a0a0a !important; border-color: #0a0a0a !important; }
  .leivas-sub-builder__roast.is-selected .leivas-sub-builder__roast-label { color: #ffffff !important; }
  .leivas-sub-builder__roast.is-selected .leivas-sub-builder__roast-count { color: #b4b0a8 !important; }

  .leivas-sub-builder__picker { display: none; justify-content: center; gap: 12px; flex-wrap: wrap; margin-bottom: 32px; padding: 0 20px; }
  .leivas-sub-builder__picker.is-active { display: flex; }
  .leivas-sub-builder .leivas-sub-builder__pick {
    width: 140px; padding: 12px; background: #ffffff !important; border: 1px solid #e8e7e4 !important; opacity: 1 !important; cursor: pointer;
    display: flex; flex-direction: column; align-items: center; text-align: center; gap: 3px;
    transition: border-color 0.2s ease, transform 0.2s ease;
  }
  .leivas-sub-builder__pick:hover { transform: translateY(-3px); }
  .leivas-sub-builder .leivas-sub-builder__pick.is-selected { border-color: #0a0a0a !important; box-shadow: 0 0 0 1px #0a0a0a; }
  .leivas-sub-builder__pick-img { width: 60px; height: 60px; background-size: cover; background-position: center; margin-bottom: 6px; }
  .leivas-sub-builder__pick-name { font-size: 12.5px; font-weight: 700; letter-spacing: -0.01em; line-height: 1.25; color: #0a0a0a !important; }
  .leivas-sub-builder__pick-price { font-size: 11.5px; color: #6e6e6b !important; }

  .leivas-sub-builder__panel {
    background: #ffffff; border: 1px solid #e8e7e4;
    display: grid; grid-template-columns: 1fr 1.15fr; align-items: start; gap: 0;
    max-width: 920px; margin: 0 auto; min-height: 120px;
  }
  @media (max-width: 849px) {
    .leivas-sub-builder__panel { grid-template-columns: minmax(0, 1fr); margin: 0 20px; }
  }
  .leivas-sub-builder__noscript { padding: 32px; font-size: 14px; color: #6e6e6b; }
  .leivas-sub-builder__error { padding: 32px; font-size: 14px; color: #b3441f; grid-column: 1 / -1; }

  .leivas-sub-builder__gallery { display: flex; gap: 14px; padding: 32px; }
  @media (max-width: 849px) { .leivas-sub-builder__gallery { padding: 24px; } }
  @media (max-width: 549px) { .leivas-sub-builder__gallery { flex-direction: column-reverse; gap: 12px; } }

  .leivas-sub-builder__thumbs { display: flex; flex-direction: column; gap: 10px; flex: none; }
  @media (max-width: 549px) { .leivas-sub-builder__thumbs { flex-direction: row; overflow-x: auto; } }
  .leivas-sub-builder__thumb {
    width: 56px; height: 56px; flex: none; padding: 4px; cursor: pointer;
    border: 1px solid #e8e7e4; background: #ffffff; transition: border-color 0.2s ease;
  }
  .leivas-sub-builder__thumb.is-selected { border-color: #0a0a0a; }
  .leivas-sub-builder__thumb img { width: 100%; height: 100%; object-fit: cover; }

  .leivas-sub-builder__media { flex: 1 1 auto; display: flex; align-items: center; justify-content: center; min-width: 0; }
  .leivas-sub-builder__media img { width: 100%; max-width: 320px; height: auto; }

  .leivas-sub-builder__config { padding: 32px 40px 36px; min-width: 0; }
  @media (max-width: 549px) { .leivas-sub-builder__config { padding: 28px 22px 32px; } }

  .leivas-sub-builder__name { font-size: 22px; font-weight: 700; letter-spacing: -0.02em; color: #0a0a0a; margin: 0; }
  .leivas-sub-builder__notes { margin-top: 6px; font-size: 14px; color: #6e6e6b; }

  .leivas-sub-builder__fields-row { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 20px; max-width: 360px; }
  .leivas-sub-builder__fields-row .leivas-sub-builder__field:only-child { grid-column: 1 / -1; max-width: 170px; }
  .leivas-sub-builder__field label {
    display: block; margin-bottom: 6px; font-size: 11px; font-weight: 700;
    letter-spacing: 0.08em; text-transform: uppercase; color: #3a3a38;
  }
  .leivas-sub-builder__field select {
    width: 100%; height: 42px; padding: 0 30px 0 12px; border: 1px solid #e8e7e4; background: #ffffff;
    font-size: 13.5px; appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%233A3A38' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat; background-position: right 10px center;
  }
  .leivas-sub-builder__field select:focus { outline: none; border-color: #0a0a0a; }
  .leivas-sub-builder__field select { color: #0a0a0a !important; }

  .leivas-sub-builder__plans { margin-top: 22px; }
  .leivas-sub-builder .leivas-sub-builder__plan { position: relative; border: 1px solid #0a0a0a; background: #ffffff !important; overflow: hidden; }
  .leivas-sub-builder__plan-hit { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; width: 100%; padding: 16px 18px; }
  .leivas-sub-builder__plan-label-group { flex: 1 1 auto; min-width: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
  .leivas-sub-builder__plan-label { font-size: 14.5px; font-weight: 700; color: #0a0a0a !important; }
  .leivas-sub-builder__plan-price { flex: none; margin-left: auto; font-size: 14.5px; font-weight: 700; white-space: nowrap; color: #0a0a0a !important; }
  .leivas-sub-builder__was { font-weight: 500; color: #9a9a97 !important; text-decoration: line-through; margin-right: 4px; }
  .leivas-sub-builder__save-tag {
    flex: none; background: #c6a15b !important; color: #0a0a0a !important;
    font-size: 10px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; padding: 3px 8px;
  }

  .leivas-sub-builder__plan-body { padding: 0 18px 20px; }
  .leivas-sub-builder__perks { list-style: none; display: flex; flex-direction: column; gap: 6px; margin: 0 0 18px; padding: 0; }
  .leivas-sub-builder__perks li { font-size: 13px; color: #6e6e6b; padding-left: 18px; position: relative; }
  .leivas-sub-builder__perks li::before { content: '✓'; position: absolute; left: 0; color: #8a6e42; font-weight: 700; }

  .leivas-sub-builder__cadence-label { font-size: 11.5px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: #3a3a38; margin-bottom: 10px; }
  .leivas-sub-builder__cadence-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
  @media (max-width: 549px) { .leivas-sub-builder__cadence-grid { grid-template-columns: repeat(2, 1fr); } }
  .leivas-sub-builder .leivas-sub-builder__cadence {
    position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px;
    padding: 10px 6px; border: 1px solid #e8e7e4 !important; background: #f4f4f2 !important; opacity: 1 !important; cursor: pointer;
  }
  .leivas-sub-builder__cadence span { font-size: 12.5px; font-weight: 700; color: #0a0a0a !important; }
  .leivas-sub-builder__cadence em { font-style: normal; font-size: 10px; color: #6e6e6b !important; }
  .leivas-sub-builder .leivas-sub-builder__cadence.is-selected { background: #0a0a0a !important; border-color: #0a0a0a !important; }
  .leivas-sub-builder__cadence.is-selected span, .leivas-sub-builder__cadence.is-selected em { color: #ffffff !important; }

  .leivas-sub-builder__one-time-note { margin-top: 22px; font-size: 13px; color: #6e6e6b; }

  .leivas-sub-builder__buy-row { margin-top: 22px; display: flex; gap: 12px; align-items: stretch; }
  .leivas-sub-builder__stepper { display: flex; align-items: center; border: 1px solid #e8e7e4; }
  .leivas-sub-builder__stepper button { width: 44px; font-size: 17px; background: none; border: none; cursor: pointer; }
  .leivas-sub-builder__stepper span { width: 36px; text-align: center; font-size: 14px; }
  .leivas-sub-builder .leivas-sub-builder__add {
    flex: 1 1 auto; height: 54px; border: none !important; cursor: pointer;
    background: #0a0a0a !important; color: #ffffff !important; opacity: 1 !important;
    font-size: 13px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase;
    transition: background 0.2s ease; box-shadow: none !important;
  }
  .leivas-sub-builder .leivas-sub-builder__add:hover { background: #2a2a28 !important; }
  .leivas-sub-builder .leivas-sub-builder__add:disabled { background: #9a9a97 !important; color: #ffffff !important; cursor: not-allowed; }

  .leivas-sub-builder__empty { text-align: center; padding: 60px 20px; color: #6e6e6b; font-size: 14px; }

  .leivas-sub-builder__confirm {
    margin-top: 14px; padding: 12px 14px; background: #f4f4f2; border: 1px solid #e8e7e4;
    align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap;
  }
  .leivas-sub-builder__confirm:not([hidden]) { display: flex; }
  .leivas-sub-builder__confirm p { font-size: 13px; color: #0a0a0a !important; margin: 0; }
  .leivas-sub-builder__confirm a {
    font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase;
    color: #0a0a0a !important; border-bottom: 1px solid #0a0a0a; white-space: nowrap;
  }
/* END_SECTION:subscription-builder-section */
