/** Shopify CDN: Minification failed

Line 12:0 Unexpected "<"
Line 23:0 Unexpected "<"
Line 64:0 Unexpected "<"
Line 70:0 Unexpected "<"

**/


/* CSS from section stylesheet tags */
<style>
  #cvum-bridge label { font-weight: 600; }

  /* CSS fallback: only applies when script adds the class */
  .cvum-hide-theme-variant-labels label.single-option-radio__label,
  .cvum-hide-theme-variant-labels label[for^="SingleOptionSelector-0"],
  .cvum-hide-theme-variant-labels label[for^="ProductSelect-option-0"],
  .cvum-hide-theme-variant-labels label[for^="SingleOptionSelector-1"],
  .cvum-hide-theme-variant-labels label[for^="ProductSelect-option-1"] {
    display: none !important;
  }
</style>
<style>
  .hidden-text { font-size: 0px; }
  .additional-price-info { margin-top: 10px; }

  .notice-box { font-size: 12px; margin: 6px 0 8px; color: #c0392b; }

  .line-full, .line-dp { margin: 6px 0; display: flex; align-items: center; gap: 8px; }
  .line-full .label, .line-dp .label { font-weight: 600; font-size: 14px; }

  /* Rich text alignments */
  .line-full-rich, .line-dp-rich { align-items: flex-start; }
  .line-full-rich .full-richtext p,
  .line-dp-rich .dp-richtext p { margin: 0; }

  .price-normal { font-size: 16px; font-weight: 600; }

  /* Discounted presentation */
  .price-discounted {
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
  }
  .price-original-rotated {
    font-size: 12px;
    opacity: 0.95;
    display: inline-block;
    transform: rotate(-6deg);
    text-decoration: line-through;
    text-decoration-thickness: 2px;
    text-decoration-color: #fff; /* white slash */
    color: #fff; /* original text also white */
  }

  .small-text, .small-text-down-payment {
    font-size: 10px;
    opacity: .8;
  }

  .calc-breakdown { margin-top: 6px; font-size: 12px; line-height: 1.4; opacity: .9; }
  .calc-breakdown span { opacity: .9; }
</style>
<style>
  .hidden-text { font-size: 0px; }
  .additional-price-info { margin-top: 10px; }
  .notice-box { font-size: 12px; margin-top: 5px; color: red; }
  .small-text, .small-text-down-payment { margin-left: 5px; font-size: 10px; }
</style>
@media (min-width: 992px) {
    .author-opened-wrapper {
      display: grid;
      grid-template-columns: 1fr 1fr;
      align-items: stretch;
      overflow: auto;
    }
    .author-opened-left,
    .author-opened-right { width: auto; }
    .author-opened-left-content-wrapper {
      position: sticky;
      top: 0;
      height: auto;
      display: flex;
      flex-direction: column;
      justify-content: center;
    }
  }
  .rte { line-height: 1.6; }
  .rte p { margin: 0 0 0.75em; }
  .rte ul, .rte ol { margin: 0 0 1em 1.25em; }
  .description-texts { display: grid; gap: 12px; }
  @media (min-width: 768px){
    .description-texts { grid-template-columns: 1fr 1fr; align-items: start; }
  }
  .fixed-middle { position: fixed; left: 50%; top: 50%; transform: translate(-50%,-50%); z-index: 40; pointer-events: none; }
  .fixed-middle .btn { pointer-events: auto; }

  .portfolio-image-item { position: relative; width: 100%; }
  .portfolio-image-title { margin: 4px 2px 8px; color: #fff; }
  .portfolio-image-title p { margin: 0; font-size: 14px; font-weight: 700; line-height: 1.25; }
  .portfolio-image {
    width: 100%;
    padding-top: 100%;
    background-size: cover;
    background-position: center;
    border-radius: 6px;
    transition: filter .2s ease;
  }

  .section-authors-teasers:not(.adult-verified) .portfolio-image.is-adult { filter: blur(18px) saturate(0.85); }
  .section-authors-teasers.adult-verified .portfolio-image.is-adult { filter: none; }

  .age-gate-overlay {
    display: none;
    position: absolute; inset: 0;
    align-items: center; justify-content: center; gap: 6px;
    background: rgba(0,0,0,.45);
    border-radius: 6px;
    text-align: center;
    font-weight: 700;
    letter-spacing: .02em;
    cursor: pointer;
    border: 0;
    color: #fff;
  }
  .age-gate-overlay .age-badge { font-size: 18px; line-height: 1; }
  .age-gate-overlay .age-instruction { font-size: 12px; opacity: .85; display: block; }
  .section-authors-teasers:not(.adult-verified) .age-gate-overlay { display: flex; }
  .section-authors-teasers.adult-verified .age-gate-overlay { display: none; }

  .age-modal[hidden] { display: none !important; }
  .age-modal {
    position: fixed; inset: 0; z-index: 9999;
    background: rgba(0,0,0,.65);
    display: grid; place-items: center;
    opacity: 0; transition: opacity .15s ease;
  }
  .age-modal.open { opacity: 1; }
  .age-modal__dialog {
    background: #0b0b0b; color: #fff; border-radius: 10px;
    width: min(92vw, 420px);
    padding: 20px 18px;
    box-shadow: 0 10px 30px rgba(0,0,0,.45);
  }
  .age-modal__desc { margin: 8px 0 12px; opacity: .9; }
  .age-modal__label { display: grid; gap: 6px; margin: 10px 0 6px; }
  .age-modal__date {
    width: 100%;
    background: #111; color: #fff; border: 1px solid #2a2a2a;
    border-radius: 8px; padding: 10px 12px;
  }
  .age-modal__actions { display: flex; gap: 10px; justify-content: flex-end; margin-top: 14px; }
  .age-modal .btn {
    background: #fff; color: #000; border-radius: 8px; padding: 8px 12px; border: 0; font-weight: 700; cursor: pointer;
  }
  .age-modal .btn:hover { filter: brightness(.9); }
  .age-modal__error { color: #ff6b6b; margin: 8px 0 0; font-size: 13px; }
.text-cara {
  overflow: hidden;
  white-space: nowrap;
  text-align: center;
}

.carousel-content {
  display: inline-block;
  font-weight: bold;
  animation: slide linear infinite;
}

@keyframes slide {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
.text-carousel {
  overflow: hidden;
  white-space: nowrap;
  text-align: center;
  background-image: linear-gradient(to bottom, {{ section.settings.gradient_color_top }}, {{ section.settings.gradient_color_bottom }} 54%, transparent);
}

.carousel-content {
  display: inline-block;
  font-weight: bold;
  animation: slide linear infinite;
}

@keyframes slide {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}