/** Shopify CDN: Minification failed

Line 34:0 All "@import" rules must come first

**/
/* ==========================================================================
   Cervana Advertorial Page - Cyan Theme
   ========================================================================== */

/* --------------------------------------------------------------------------
   Hide Theme Header & Footer for Advertorial Pages
   -------------------------------------------------------------------------- */
.cv-adv-page ~ header,
.cv-adv-page ~ footer,
body:has(.cv-adv-page) header.header,
body:has(.cv-adv-page) footer.footer,
body:has(.cv-adv-page) .shopify-section-header,
body:has(.cv-adv-page) .shopify-section-footer,
body:has(.cv-adv-page) #shopify-section-header,
body:has(.cv-adv-page) #shopify-section-footer,
body:has(.cv-adv-page) .section-header,
body:has(.cv-adv-page) .section-footer,
body:has(.cv-adv-page) #header,
body:has(.cv-adv-page) #footer,
body:has(.cv-adv-page) .site-header,
body:has(.cv-adv-page) .site-footer,
body:has(.cv-adv-page) .announcement-bar {
  display: none !important;
}

/* --------------------------------------------------------------------------
   Google Fonts Import
   -------------------------------------------------------------------------- */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Open+Sans:wght@400;600&display=swap');

/* --------------------------------------------------------------------------
   CSS Variables - Cervana Cyan/Blue Theme (with white background like ClearOrigin)
   -------------------------------------------------------------------------- */
:root {
  /* Primary Colors - Cervana Cyan */
  --cv-adv-primary: hsl(199, 100%, 36%);        /* #0090D9 - main cyan */
  --cv-adv-primary-dark: hsl(239, 92%, 19%);    /* #0F1F5C - navy */

  /* Background Colors - White (matching ClearOrigin) */
  --cv-adv-bg: hsl(0, 0%, 100%);                /* white background */
  --cv-adv-bg-alt: hsl(0, 0%, 98%);             /* very light gray bg */
  --cv-adv-bg-card: hsl(0, 0%, 100%);           /* white */

  /* Text Colors - Same as ClearOrigin */
  --cv-adv-text-dark: hsl(210, 25%, 10%);       /* dark text (ClearOrigin match) */
  --cv-adv-text-gray: hsl(210, 12%, 35%);       /* gray text (ClearOrigin match) */

  /* Accent Colors - Cervana Cyan */
  --cv-adv-accent: hsl(199, 100%, 36%);         /* #0090D9 - cyan */
  --cv-adv-accent-highlight: hsl(199, 100%, 45%);/* lighter cyan */
  --cv-adv-accent-green: hsl(145, 63%, 38%);    /* green */
  --cv-adv-accent-gold: hsl(199, 80%, 50%);     /* #1AA1DC - gold accent */

  /* Utility Colors */
  --cv-adv-border: hsl(210, 20%, 90%);          /* light gray border */
  --cv-adv-warning: hsl(199, 100%, 36%);        /* same as primary */

  /* Font */
  --cv-adv-font-sans: 'DM Sans', system-ui, -apple-system, sans-serif;
  --cv-adv-font-open: 'Open Sans', system-ui, sans-serif;
}

/* --------------------------------------------------------------------------
   Base Reset & Page Wrapper
   Matches: min-h-screen bg-mbs-bg pb-20 md:pb-0 font-sans
   -------------------------------------------------------------------------- */
.cv-adv-page {
  min-height: 100vh;
  background-color: var(--cv-adv-bg);
  font-family: var(--cv-adv-font-sans);
  color: var(--cv-adv-text-dark);
  line-height: 1.6;
  padding-bottom: 5rem; /* pb-20 = 5rem for mobile sticky */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (min-width: 768px) {
  .cv-adv-page {
    padding-bottom: 0; /* md:pb-0 */
  }
}

.cv-adv-page *,
.cv-adv-page *::before,
.cv-adv-page *::after {
  box-sizing: border-box;
}

/* --------------------------------------------------------------------------
   Header Bar
   Matches: bg-vyzn-text-dark py-3 font-sans
   -------------------------------------------------------------------------- */
.cv-adv-header {
  background-color: var(--cv-adv-text-dark);
  padding: 0.75rem 0; /* py-3 */
}

.cv-adv-header__inner {
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1rem; /* px-4 */
}

.cv-adv-header__label {
  font-size: 0.75rem; /* text-xs */
  font-weight: 600; /* font-semibold */
  text-transform: uppercase;
  letter-spacing: 0.05em; /* tracking-wide */
  color: white;
}

@media (min-width: 640px) {
  .cv-adv-header__label {
    font-size: 0.875rem; /* sm:text-sm */
  }
}

.cv-adv-header__trending {
  display: flex;
  align-items: center;
  gap: 0.5rem; /* gap-2 */
}

.cv-adv-header__flag {
  height: 1rem; /* h-4 */
  width: 1.5rem; /* w-6 */
  object-fit: cover;
}

.cv-adv-header__trending-text {
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: white;
}

@media (min-width: 640px) {
  .cv-adv-header__trending-text {
    font-size: 0.875rem;
  }
}

/* --------------------------------------------------------------------------
   Urgency Banner
   Matches: bg-mbs-accent-gold/10 border border-mbs-warning rounded-lg
   -------------------------------------------------------------------------- */
.cv-adv-urgency {
  background-color: hsla(189, 100%, 42%, 0.15); /* MBS periwinkle/15 */
  border: 1px solid var(--cv-adv-warning);
  border-radius: 0.5rem; /* rounded-lg */
  max-width: 1280px;
  margin: 1rem auto; /* center aligned with container */
  padding: 0.75rem 1rem; /* py-3 px-4 */
}

.cv-adv-urgency__message {
  font-size: 0.875rem; /* text-sm */
  color: var(--cv-adv-text-dark);
  margin: 0;
}

@media (min-width: 768px) {
  .cv-adv-urgency__message {
    font-size: 1rem; /* md:text-base */
  }
}

.cv-adv-urgency__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.25rem; /* w-5 */
  height: 1.25rem; /* h-5 */
  border-radius: 9999px;
  background-color: var(--cv-adv-warning);
  color: white;
  font-size: 0.75rem; /* text-xs */
  font-weight: 700;
  margin-right: 0.25rem;
}

.cv-adv-urgency__label {
  font-weight: 700;
  color: var(--cv-adv-warning);
}

/* --------------------------------------------------------------------------
   Container & Layout
   Matches: container mx-auto px-4 py-6
            flex flex-col lg:flex-row lg:gap-8
   -------------------------------------------------------------------------- */
.cv-adv-container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 1.5rem 1rem; /* py-6 px-4 */
}

.cv-adv-layout {
  display: flex;
  flex-direction: column;
}

@media (min-width: 1024px) {
  .cv-adv-layout {
    flex-direction: row;
    gap: 2rem; /* lg:gap-8 */
  }
}

/* --------------------------------------------------------------------------
   Main Article Column
   Matches: flex-1 max-w-3xl
   -------------------------------------------------------------------------- */
.cv-adv-main {
  flex: 1;
  max-width: 48rem; /* max-w-3xl = 768px */
}

/* --------------------------------------------------------------------------
   Article Header
   Matches: space-y-4 font-sans
   -------------------------------------------------------------------------- */
.cv-adv-article-header {
  display: flex;
  flex-direction: column;
  gap: 1rem; /* space-y-4 */
}

.cv-adv-article-header__title {
  font-weight: 700;
  font-size: 1.5rem; /* text-2xl */
  color: var(--cv-adv-text-dark);
  text-transform: uppercase;
  letter-spacing: -0.02em; /* tracking-tight */
  line-height: 1.25; /* leading-tight */
  margin: 0;
}

@media (min-width: 768px) {
  .cv-adv-article-header__title {
    font-size: 1.875rem; /* md:text-3xl */
  }
}

@media (min-width: 1024px) {
  .cv-adv-article-header__title {
    font-size: 2.25rem; /* lg:text-4xl */
  }
}

.cv-adv-article-header__subtitle {
  font-size: 1rem; /* text-base */
  font-style: italic;
  color: var(--cv-adv-text-gray);
  margin: 0;
}

@media (min-width: 768px) {
  .cv-adv-article-header__subtitle {
    font-size: 1.125rem; /* md:text-lg */
  }
}

.cv-adv-article-header__highlight {
  background-color: hsla(189, 100%, 42%, 0.3); /* MBS periwinkle/30 */
  padding: 0 0.25rem; /* px-1 */
}

.cv-adv-article-header__lead {
  font-size: 1.125rem; /* text-lg */
  color: var(--cv-adv-text-dark);
  line-height: 1.625; /* leading-relaxed */
  font-weight: 500;
  border-left: 4px solid var(--cv-adv-primary);
  padding-left: 1rem; /* pl-4 */
  padding-top: 0.5rem; /* py-2 */
  padding-bottom: 0.5rem;
  margin: 0;
}

@media (min-width: 768px) {
  .cv-adv-article-header__lead {
    font-size: 1.25rem; /* md:text-xl */
  }
}

/* Star Rating */
.cv-adv-article-header__rating {
  display: flex;
  align-items: center;
  gap: 0.5rem; /* gap-2 */
}

.cv-adv-article-header__stars {
  display: flex;
}

.cv-adv-article-header__star {
  height: 1.25rem; /* h-5 */
  width: 1.25rem; /* w-5 */
  fill: var(--cv-adv-accent-green);
  color: var(--cv-adv-accent-green);
}

.cv-adv-article-header__rating-text {
  font-size: 0.875rem; /* text-sm */
  font-weight: 600;
  color: var(--cv-adv-text-dark);
  text-transform: uppercase;
}

/* Author Info */
.cv-adv-article-header__author {
  display: flex;
  align-items: center;
  gap: 0.75rem; /* gap-3 */
  padding-top: 0.5rem; /* pt-2 */
}

.cv-adv-article-header__avatar {
  height: 2.5rem; /* h-10 */
  width: 2.5rem; /* w-10 */
  border-radius: 9999px;
  object-fit: cover;
}

.cv-adv-article-header__author-info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 0.5rem; /* gap-x-2 */
  row-gap: 0.25rem; /* gap-y-1 */
}

.cv-adv-article-header__author-label {
  font-size: 0.875rem;
  color: var(--cv-adv-text-gray);
}

.cv-adv-article-header__author-name {
  font-size: 0.875rem;
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-article-header__verified {
  height: 1rem; /* h-4 */
  width: 1rem; /* w-4 */
  fill: var(--cv-adv-accent-green);
  color: white;
}

.cv-adv-article-header__meta {
  font-size: 0.875rem;
  color: var(--cv-adv-text-gray);
  font-style: italic;
}

/* --------------------------------------------------------------------------
   Article Body - Images
   Matches: my-6 w-full rounded-lg object-cover
   -------------------------------------------------------------------------- */
.cv-adv-image {
  margin: 1.5rem 0; /* my-6 */
}

.cv-adv-image__img {
  width: 100%;
  border-radius: 0.5rem; /* rounded-lg */
  object-fit: cover;
}

.cv-adv-image__caption {
  margin-top: 0.5rem; /* mt-2 */
  text-align: center;
  font-size: 0.875rem; /* text-sm */
  font-style: italic;
  color: #666;
  font-family: var(--cv-adv-font-open);
}

/* --------------------------------------------------------------------------
   Article Body - Video
   Same sizing as images
   -------------------------------------------------------------------------- */
.cv-adv-video {
  margin: 1.5rem 0; /* my-6 - same as images */
}

.cv-adv-video__player {
  width: 100%;
  max-width: 100%;
  border-radius: 0.5rem; /* rounded-lg - same as images */
  object-fit: cover;
  display: block;
}

/* --------------------------------------------------------------------------
   Article Body - Text Content
   -------------------------------------------------------------------------- */
.cv-adv-body {
  margin-top: 1.5rem;
}

.cv-adv-body p {
  margin: 0 0 1.25rem 0; /* mb-5 */
  font-size: 1.0625rem; /* slightly larger than 1rem (17px vs 16px) */
  line-height: 1.7;
  color: var(--cv-adv-text-dark);
}

.cv-adv-body p:last-child {
  margin-bottom: 0;
}

.cv-adv-body strong {
  font-weight: 700;
}

/* Headings within body */
.cv-adv-body h2,
.cv-adv-body__heading {
  font-size: 1.5rem; /* text-2xl */
  font-weight: 700;
  color: var(--cv-adv-text-dark);
  margin: 3rem 0 1.5rem 0; /* mt-12 mb-6 */
  text-transform: uppercase;
  letter-spacing: 0.025em;
}

@media (min-width: 768px) {
  .cv-adv-body h2,
  .cv-adv-body__heading {
    font-size: 1.875rem; /* md:text-3xl */
  }
}

.cv-adv-body__heading--centered {
  text-align: center;
}

/* Subheadings */
.cv-adv-body__subheading {
  font-size: 1.125rem; /* text-lg */
  font-weight: 700;
  color: var(--cv-adv-text-dark);
  margin: 2rem 0 1rem 0; /* mt-8 mb-4 */
}

/* Author intro section - "Hey, I'm Rachel" with image left, text right */
.cv-adv-author-intro {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  margin: 2rem 0;
}

@media (min-width: 768px) {
  .cv-adv-author-intro {
    flex-direction: row;
    align-items: flex-start;
    gap: 2rem;
  }
}

.cv-adv-author-intro__image {
  width: 100%;
  max-width: 280px;
  height: auto;
  aspect-ratio: 1 / 1;
  border-radius: 0.5rem;
  object-fit: cover;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  .cv-adv-author-intro__image {
    width: 280px;
    max-width: none;
  }
}

.cv-adv-author-intro__text {
  flex: 1;
  min-width: 0;
}

/* Custom Lists - matches Lovable my-4 pl-4 [&_p]:mb-1 */
.cv-adv-list {
  margin: 1rem 0; /* my-4 */
  padding-left: 1rem; /* pl-4 */
}

.cv-adv-list__item {
  margin-bottom: 0.25rem; /* mb-1 */
  font-size: 1.0625rem; /* slightly larger */
  line-height: 1.7;
  color: var(--cv-adv-text-dark);
}

/* Quote blocks */
.cv-adv-quote {
  margin: 1.5rem 0;
  padding-left: 1rem;
  border-left: 3px solid var(--cv-adv-primary);
  font-style: italic;
  color: var(--cv-adv-text-gray);
}

/* Centered paragraph */
.cv-adv-body__paragraph--centered {
  text-align: center;
}

/* --------------------------------------------------------------------------
   Testimonials
   Matches: my-8 rounded-lg border-l-4 border-vyzn-primary bg-vyzn-bg-alt p-6
   -------------------------------------------------------------------------- */
.cv-adv-testimonial {
  margin: 2rem 0; /* my-8 */
  border-radius: 0.5rem; /* rounded-lg */
  border-left: 4px solid var(--cv-adv-primary);
  background-color: var(--cv-adv-bg-alt);
  padding: 1.5rem; /* p-6 */
}

.cv-adv-testimonial__title {
  margin: 0 0 0.75rem 0; /* mb-3 */
  font-size: 1.125rem; /* text-lg */
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-testimonial__quote {
  margin: 0 0 1rem 0; /* mb-4 */
  color: var(--cv-adv-text-gray);
  line-height: 1.625; /* leading-relaxed */
}

.cv-adv-testimonial__author {
  display: flex;
  align-items: center;
  gap: 0.75rem; /* gap-3 */
}

.cv-adv-testimonial__avatar {
  height: 3rem; /* h-12 */
  width: 3rem; /* w-12 */
  border-radius: 9999px;
  object-fit: cover;
}

.cv-adv-testimonial__author-info {
  display: flex;
  flex-direction: column;
}

.cv-adv-testimonial__author-name {
  font-weight: 600;
  color: var(--cv-adv-text-dark);
}

.cv-adv-testimonial__verified {
  font-size: 0.875rem; /* text-sm */
  color: var(--cv-adv-accent-green);
}

/* --------------------------------------------------------------------------
   CTA Section - Clean Minimal Design
   -------------------------------------------------------------------------- */
.cv-adv-cta {
  margin: 2rem 0;
  padding: 1.5rem;
  text-align: center;
  background: white;
  border-radius: 1rem;
  border: 1px solid #e5e7eb;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}

@media (min-width: 768px) {
  .cv-adv-cta {
    padding: 2rem;
    text-align: left;
  }
}

/* Inner wrapper for two-column layout */
.cv-adv-cta__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
}

@media (min-width: 768px) {
  .cv-adv-cta__inner {
    flex-direction: row;
    align-items: flex-start;
    gap: 2rem;
  }
}

/* Content column */
.cv-adv-cta__content {
  flex: 1;
}

@media (min-width: 768px) {
  .cv-adv-cta__content {
    text-align: left;
  }
}

/* Clean variant */
.cv-adv-cta--clean {
  background: white;
}

/* Price Block */
.cv-adv-cta__price-block {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 0.5rem;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  .cv-adv-cta__price-block {
    justify-content: flex-start;
  }
}

.cv-adv-cta__price-main {
  font-size: 2rem;
  font-weight: 800;
  color: var(--cv-adv-primary);
  line-height: 1;
}

.cv-adv-cta__price-was {
  font-size: 1rem;
  color: #9ca3af;
  text-decoration: line-through;
}

.cv-adv-cta__price-badge {
  background: #059669;
  color: white;
  font-size: 0.6875rem;
  font-weight: 700;
  padding: 0.25rem 0.625rem;
  border-radius: 9999px;
  text-transform: uppercase;
  letter-spacing: 0.025em;
}

/* Perks line */
.cv-adv-cta__perks {
  font-size: 0.8125rem;
  color: #6b7280;
  margin: 0 0 0.75rem 0;
  letter-spacing: 0.01em;
}

/* Stock note */
.cv-adv-cta__stock {
  font-size: 0.75rem;
  color: #9ca3af;
  margin: 0;
}

/* Image Wrapper - adds visual prominence */
.cv-adv-cta__image-wrapper {
  background: linear-gradient(135deg, #f8fafc 0%, #e2e8f0 100%);
  border-radius: 1rem;
  padding: 1rem;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 144, 217, 0.1);
}

/* Product Image - larger and more prominent */
.cv-adv-cta__product-image {
  width: 180px;
  height: 180px;
  object-fit: contain;
  flex-shrink: 0;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
}

@media (min-width: 768px) {
  .cv-adv-cta__image-wrapper {
    padding: 1.25rem;
  }

  .cv-adv-cta__product-image {
    width: 200px;
    height: 200px;
  }
}

/* Bonus text - larger and more prominent */
.cv-adv-cta__bonus {
  font-size: 0.9375rem;
  color: #059669;
  margin: 0 0 1rem 0;
  line-height: 1.5;
}

.cv-adv-cta__bonus strong {
  color: var(--cv-adv-text-dark);
}

/* Bottom CTA - positioned after comments section */
.cv-adv-cta--bottom {
  max-width: 100%;
  margin: 2.5rem 0;
}

.cv-adv-cta__headline {
  margin: 0 0 0.5rem 0; /* mb-2 */
  font-size: 0.75rem; /* text-xs */
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em; /* tracking-wider */
  color: var(--cv-adv-text-dark);
}

.cv-adv-cta__subheadline {
  margin: 0 0 1rem 0; /* mb-4 */
  font-size: 1.125rem; /* text-lg */
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-cta__discount {
  margin: 0 0 1rem 0; /* mb-4 */
  font-size: 0.875rem; /* text-sm */
  color: var(--cv-adv-text-gray);
}

/* Countdown Timer */
.cv-adv-cta__countdown {
  margin-bottom: 1.5rem; /* mb-6 */
  display: flex;
  justify-content: center;
  gap: 1rem; /* gap-4 */
}

.cv-adv-cta__countdown-item {
  text-align: center;
}

.cv-adv-cta__countdown-number {
  font-size: 1.875rem; /* text-3xl */
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-cta__countdown-label {
  font-size: 0.75rem; /* text-xs */
  text-transform: uppercase;
  color: var(--cv-adv-text-gray);
}

/* CTA Button */
.cv-adv-cta__button {
  display: inline-block;
  margin-bottom: 0.75rem;
  width: 100%;
  max-width: 20rem;
  border-radius: 0.625rem;
  background-color: var(--cv-adv-primary);
  padding: 0.875rem 1.5rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 600;
  color: white;
  text-decoration: none;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(0, 144, 217, 0.25);
}

.cv-adv-cta__button:hover {
  background-color: hsl(199, 100%, 32%);
  box-shadow: 0 4px 12px rgba(0, 144, 217, 0.35);
  transform: translateY(-1px);
}

.cv-adv-cta__button:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(0, 144, 217, 0.25);
}

.cv-adv-cta__guarantee {
  margin: 0 0 1rem 0; /* mb-4 */
  font-size: 0.875rem; /* text-sm */
  color: var(--cv-adv-text-gray);
}

.cv-adv-cta__secondary-link {
  display: inline-block;
  font-size: 0.875rem; /* text-sm */
  font-weight: 600;
  color: var(--cv-adv-primary);
  text-decoration: none;
  transition: all 0.2s ease;
}

.cv-adv-cta__secondary-link:hover {
  color: hsl(199, 100%, 30%);
  text-decoration: underline;
}

.cv-adv-cta__trust-badges {
  margin-top: 1rem; /* mt-4 */
  display: flex;
  justify-content: center;
  gap: 1rem; /* gap-4 */
}

.cv-adv-cta__trust-badge {
  height: 2.5rem; /* h-10 */
  width: auto;
  object-fit: contain;
}

/* Pricing Display */
.cv-adv-cta__pricing {
  margin-bottom: 1.5rem;
}

.cv-adv-cta__price-current {
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--cv-adv-primary);
  line-height: 1;
}

.cv-adv-cta__price-original {
  font-size: 1.25rem;
  color: var(--cv-adv-text-gray);
  text-decoration: line-through;
  margin-left: 0.75rem;
}

.cv-adv-cta__price-save {
  display: inline-block;
  background-color: #dc2626;
  color: white;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  margin-left: 0.75rem;
  text-transform: uppercase;
}

/* Offer Items List */
.cv-adv-cta__offer-list {
  text-align: left;
  max-width: 24rem;
  margin: 0 auto 1.5rem auto;
}

.cv-adv-cta__offer-item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.5rem 0;
  border-bottom: 1px solid rgba(0, 144, 217, 0.15);
}

.cv-adv-cta__offer-item:last-child {
  border-bottom: none;
}

.cv-adv-cta__offer-check {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  color: #16a34a;
  margin-top: 0.125rem;
}

.cv-adv-cta__offer-text {
  flex: 1;
  font-size: 0.9375rem;
  color: var(--cv-adv-text-dark);
}

.cv-adv-cta__offer-bonus {
  display: inline-block;
  background-color: #16a34a;
  color: white;
  font-size: 0.625rem;
  font-weight: 700;
  padding: 0.125rem 0.5rem;
  border-radius: 9999px;
  margin-left: 0.5rem;
  text-transform: uppercase;
}

.cv-adv-cta__offer-value {
  display: block;
  font-size: 0.75rem;
  color: var(--cv-adv-text-gray);
  margin-top: 0.125rem;
}

/* Scarcity/Stock Indicator */
.cv-adv-cta__scarcity {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  margin-bottom: 1rem;
  padding: 0.75rem 1rem;
  background-color: #fef3c7;
  border: 1px solid #f59e0b;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: #92400e;
}

.cv-adv-cta__scarcity-icon {
  width: 1rem;
  height: 1rem;
  color: #f59e0b;
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}

.cv-adv-cta__scarcity-text strong {
  font-weight: 700;
}

/* Urgency Ribbon */
.cv-adv-cta__ribbon {
  background: linear-gradient(90deg, #dc2626, #ef4444);
  color: white;
  padding: 0.75rem 1rem;
  font-size: 0.8125rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  border-radius: 0.75rem 0.75rem 0 0;
  margin: -1.5rem -1.5rem 1.5rem -1.5rem;
  text-align: center;
}

@media (min-width: 768px) {
  .cv-adv-cta__ribbon {
    margin: -2rem -2rem 1.5rem -2rem;
  }
}

.cv-adv-cta__ribbon-icon {
  margin-right: 0.5rem;
}

/* Two-Column Offer Grid */
.cv-adv-cta__offer-grid {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 1.25rem;
  align-items: center;
  margin-bottom: 1.5rem;
  text-align: left;
}

@media (max-width: 480px) {
  .cv-adv-cta__offer-grid {
    grid-template-columns: 1fr;
    text-align: center;
  }
  .cv-adv-cta__product-col {
    display: flex;
    justify-content: center;
  }
  .cv-adv-cta__product-img {
    max-width: 120px;
  }
}

/* Product Image */
.cv-adv-cta__product-img {
  width: 100%;
  height: auto;
  border-radius: 0.5rem;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

/* Label */
.cv-adv-cta__label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--cv-adv-text-gray);
  margin: 0 0 0.25rem 0;
}

/* Compact Timer */
.cv-adv-cta__timer-compact {
  font-size: 1.125rem;
  font-weight: 700;
  color: #dc2626;
  margin-top: 0.5rem;
}

.cv-adv-cta__timer-compact span {
  font-family: monospace;
}

/* Includes Section */
.cv-adv-cta__includes {
  background: rgba(0, 144, 217, 0.08);
  border-radius: 0.5rem;
  padding: 1rem;
  margin-bottom: 1rem;
}

.cv-adv-cta__includes-header {
  font-size: 0.6875rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--cv-adv-text-dark);
  margin: 0 0 0.75rem 0;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid rgba(0, 144, 217, 0.2);
}

/* Item Rows */
.cv-adv-cta__item-row {
  display: flex;
  align-items: center;
  padding: 0.375rem 0;
  font-size: 0.8125rem;
}

.cv-adv-cta__item-check {
  color: #16a34a;
  font-weight: 700;
  margin-right: 0.5rem;
  flex-shrink: 0;
}

.cv-adv-cta__item-name {
  flex: 1;
  color: var(--cv-adv-text-dark);
}

.cv-adv-cta__item-value {
  color: var(--cv-adv-text-gray);
  font-size: 0.75rem;
  text-align: right;
  flex-shrink: 0;
}

.cv-adv-cta__item-value--free {
  background: #16a34a;
  color: white;
  padding: 0.125rem 0.5rem;
  border-radius: 9999px;
  font-weight: 700;
  font-size: 0.625rem;
}

.cv-adv-cta__item-value--free small {
  display: block;
  font-size: 0.5625rem;
  opacity: 0.9;
  margin-top: 0.125rem;
}

/* Stock Warning */
.cv-adv-cta__stock-warning {
  background: #fef3c7;
  border: 1px solid #f59e0b;
  border-radius: 0.5rem;
  padding: 0.75rem 1rem;
  font-size: 0.8125rem;
  color: #92400e;
  margin-bottom: 1.25rem;
  text-align: center;
}

.cv-adv-cta__stock-icon {
  margin-right: 0.5rem;
}

/* Trust Line */
.cv-adv-cta__trust-line {
  font-size: 0.75rem;
  color: var(--cv-adv-text-gray);
  margin: 0 0 0.5rem 0;
}

/* --------------------------------------------------------------------------
   Comments Section
   Matches: mt-10 font-sans
   -------------------------------------------------------------------------- */
.cv-adv-comments {
  margin-top: 2.5rem; /* mt-10 */
}

.cv-adv-comments__title {
  margin: 0 0 1.5rem 0; /* mb-6 */
  font-size: 1.25rem; /* text-xl */
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

/* Comment Input */
.cv-adv-comments__input-wrapper {
  display: flex;
  gap: 0.75rem; /* gap-3 */
  margin-bottom: 1.5rem; /* mb-6 */
}

.cv-adv-comments__input-avatar {
  height: 2.25rem; /* h-9 */
  width: 2.25rem; /* w-9 */
  flex-shrink: 0;
  border-radius: 9999px;
  object-fit: cover;
}

.cv-adv-comments__input {
  flex: 1;
  border-radius: 9999px;
  background-color: var(--cv-adv-bg-alt);
  padding: 0.5rem 1rem; /* py-2 px-4 */
  font-size: 0.875rem; /* text-sm */
  color: var(--cv-adv-text-gray);
  border: none;
  outline: none;
  font-family: var(--cv-adv-font-sans);
}

.cv-adv-comments__input::placeholder {
  color: var(--cv-adv-text-gray);
}

.cv-adv-comments__input:focus {
  outline: none;
  box-shadow: 0 0 0 1px var(--cv-adv-primary);
}

/* Comments List */
.cv-adv-comments__list {
  display: flex;
  flex-direction: column;
  gap: 1rem; /* space-y-4 */
}

/* Single Comment */
.cv-adv-comment {
  display: flex;
  gap: 0.75rem; /* gap-3 */
}

.cv-adv-comment--reply {
  margin-left: 3rem; /* ml-12 */
}

.cv-adv-comment__avatar {
  height: 2.25rem; /* h-9 */
  width: 2.25rem; /* w-9 */
  flex-shrink: 0;
  border-radius: 9999px;
  object-fit: cover;
}

.cv-adv-comment__content {
  flex: 1;
}

.cv-adv-comment__bubble {
  border-radius: 1rem; /* rounded-2xl */
  background-color: var(--cv-adv-bg-alt);
  padding: 0.75rem 1rem; /* py-3 px-4 */
}

.cv-adv-comment__author {
  font-weight: 700;
  color: var(--cv-adv-text-dark);
  font-size: 0.875rem; /* text-sm */
  margin: 0;
}

.cv-adv-comment__text {
  font-size: 0.875rem; /* text-sm */
  color: var(--cv-adv-text-dark);
  line-height: 1.625; /* leading-relaxed */
  margin: 0;
}

.cv-adv-comment__actions {
  display: flex;
  align-items: center;
  gap: 1rem; /* gap-4 */
  margin-top: 0.25rem; /* mt-1 */
  margin-left: 0.75rem; /* ml-3 */
  font-size: 0.75rem; /* text-xs */
  color: var(--cv-adv-text-gray);
}

.cv-adv-comment__action-btn {
  font-weight: 600;
  cursor: pointer;
  border: none;
  background: none;
  padding: 0;
  color: var(--cv-adv-text-gray);
  font-family: var(--cv-adv-font-sans);
}

.cv-adv-comment__action-btn:hover {
  text-decoration: underline;
}

.cv-adv-comment__likes {
  display: flex;
  align-items: center;
  gap: 0.25rem; /* gap-1 */
  margin-left: auto;
}

.cv-adv-comment__like-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1rem; /* w-4 */
  height: 1rem; /* h-4 */
  border-radius: 9999px;
  background-color: var(--cv-adv-primary);
}

.cv-adv-comment__like-icon svg {
  height: 0.625rem; /* h-2.5 */
  width: 0.625rem; /* w-2.5 */
  fill: white;
  color: white;
}

/* --------------------------------------------------------------------------
   References Section
   Matches: mt-12 border-t border-vyzn-border pt-8
   -------------------------------------------------------------------------- */
.cv-adv-references {
  margin-top: 3rem; /* mt-12 */
  border-top: 1px solid var(--cv-adv-border);
  padding-top: 2rem; /* pt-8 */
}

.cv-adv-references__title {
  margin: 0 0 1rem 0; /* mb-4 */
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-references__list {
  display: flex;
  flex-direction: column;
  gap: 0.25rem; /* space-y-1 */
}

.cv-adv-references__link {
  display: block;
  font-size: 0.75rem; /* text-xs */
  color: var(--cv-adv-primary);
  word-wrap: break-word;
  text-decoration: none;
}

.cv-adv-references__link:hover {
  text-decoration: underline;
}

.cv-adv-references__disclaimer {
  margin-top: 1.5rem; /* mt-6 */
  font-size: 0.75rem; /* text-xs */
  color: var(--cv-adv-text-gray);
  line-height: 1.625; /* leading-relaxed */
}

.cv-adv-references__disclaimer strong {
  font-weight: 700;
}

/* --------------------------------------------------------------------------
   Sidebar
   Matches: hidden lg:block lg:w-80 xl:w-96
            sticky top-6
   -------------------------------------------------------------------------- */
.cv-adv-sidebar {
  display: none;
}

@media (min-width: 1024px) {
  .cv-adv-sidebar {
    display: block;
    width: 20rem; /* lg:w-80 = 320px */
    flex-shrink: 0;
  }
}

@media (min-width: 1280px) {
  .cv-adv-sidebar {
    width: 24rem; /* xl:w-96 = 384px */
  }
}

.cv-adv-sidebar__sticky {
  position: sticky;
  top: 1.5rem; /* top-6 */
}

.cv-adv-sidebar__cards {
  display: flex;
  flex-direction: column;
  gap: 1.5rem; /* space-y-6 */
}

/* Sidebar Card */
.cv-adv-sidebar-card {
  border-radius: 0.5rem; /* rounded-lg */
  border: 1px solid var(--cv-adv-border);
  background-color: var(--cv-adv-bg-card);
  padding: 1.5rem; /* p-6 */
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05); /* shadow-sm */
}

.cv-adv-sidebar-card__title {
  margin: 0 0 1rem 0; /* mb-4 */
  text-align: center;
  font-size: 0.875rem; /* text-sm */
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em; /* tracking-wide */
  color: var(--cv-adv-text-dark);
}

.cv-adv-sidebar-card__image {
  display: block;
  margin: 0 auto 1rem auto; /* mx-auto mb-4 */
  height: 10rem; /* h-40 */
  width: auto;
  object-fit: contain;
}

.cv-adv-sidebar-card__cta {
  display: block;
  width: 100%;
  border-radius: 0.375rem; /* rounded-md */
  background-color: var(--cv-adv-primary);
  padding: 0.75rem; /* py-3 */
  text-align: center;
  font-weight: 700;
  text-transform: uppercase;
  color: white;
  text-decoration: none;
  transition: all 0.2s ease;
  box-shadow: 0 2px 4px rgba(0, 144, 217, 0.2);
}

.cv-adv-sidebar-card__cta:hover {
  background-color: hsl(199, 100%, 30%); /* Darker cyan, same hue */
  box-shadow: 0 6px 12px -3px rgba(0, 144, 217, 0.4);
  transform: translateY(-1px);
}

/* Reviews Card */
.cv-adv-sidebar-reviews__title {
  margin: 0 0 1rem 0; /* mb-4 */
  text-align: center;
  font-size: 1.125rem; /* text-lg */
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-sidebar-reviews__overall {
  margin-bottom: 1rem; /* mb-4 */
  text-align: center;
}

.cv-adv-sidebar-reviews__score {
  font-size: 1.25rem; /* text-xl */
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-sidebar-reviews__count {
  font-size: 0.875rem; /* text-sm */
  color: var(--cv-adv-text-gray);
}

/* Rating Breakdown */
.cv-adv-sidebar-reviews__breakdown {
  display: flex;
  flex-direction: column;
  gap: 0.5rem; /* space-y-2 */
}

.cv-adv-sidebar-reviews__row {
  display: flex;
  align-items: center;
  gap: 0.5rem; /* gap-2 */
}

.cv-adv-sidebar-reviews__star-label {
  width: 3rem; /* w-12 */
  font-size: 0.875rem; /* text-sm */
  font-weight: 500;
  color: var(--cv-adv-primary);
}

.cv-adv-sidebar-reviews__bar-container {
  flex: 1;
  height: 0.75rem; /* h-3 */
  background-color: var(--cv-adv-bg-alt);
  border-radius: 9999px;
  overflow: hidden;
}

.cv-adv-sidebar-reviews__bar {
  height: 100%;
  background-color: var(--cv-adv-accent-gold);
  border-radius: 9999px;
}

.cv-adv-sidebar-reviews__percentage {
  width: 2.5rem; /* w-10 */
  text-align: right;
  font-size: 0.875rem; /* text-sm */
  font-weight: 500;
  color: var(--cv-adv-primary);
}

/* By Feature */
.cv-adv-sidebar-reviews__by-feature {
  margin-top: 1.5rem; /* mt-6 */
}

.cv-adv-sidebar-reviews__by-feature-title {
  margin: 0 0 0.75rem 0; /* mb-3 */
  text-align: center;
  font-size: 1rem;
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-sidebar-reviews__feature-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem; /* space-y-2 */
}

.cv-adv-sidebar-reviews__feature-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.cv-adv-sidebar-reviews__feature-name {
  font-size: 0.875rem; /* text-sm */
  color: var(--cv-adv-text-dark);
}

.cv-adv-sidebar-reviews__feature-rating {
  display: flex;
  align-items: center;
  gap: 0.25rem; /* gap-1 */
}

.cv-adv-sidebar-reviews__feature-star {
  height: 1rem; /* h-4 */
  width: 1rem; /* w-4 */
}

.cv-adv-sidebar-reviews__feature-star--filled {
  fill: var(--cv-adv-accent-gold);
  color: var(--cv-adv-accent-gold);
}

.cv-adv-sidebar-reviews__feature-star--empty {
  fill: var(--cv-adv-border);
  color: var(--cv-adv-border);
}

.cv-adv-sidebar-reviews__feature-number {
  font-size: 0.875rem; /* text-sm */
  font-weight: 500;
  color: var(--cv-adv-text-dark);
}

/* --------------------------------------------------------------------------
   Mobile Sticky CTA
   Matches: fixed bottom-0 left-0 right-0 z-50 border-t border-vyzn-border
            bg-vyzn-bg-card p-4 shadow-lg md:hidden
   -------------------------------------------------------------------------- */
.cv-adv-mobile-sticky {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 50;
  border-top: 1px solid var(--cv-adv-border);
  background-color: var(--cv-adv-bg-card);
  padding: 1rem; /* p-4 */
  box-shadow: 0 -4px 6px -1px rgba(0, 0, 0, 0.1); /* shadow-lg upward */
}

@media (min-width: 768px) {
  .cv-adv-mobile-sticky {
    display: none; /* md:hidden */
  }
}

.cv-adv-mobile-sticky__button {
  display: block;
  width: 100%;
  border-radius: 0.5rem; /* rounded-lg */
  background-color: var(--cv-adv-primary);
  padding: 0.75rem; /* py-3 */
  text-align: center;
  font-weight: 700;
  text-transform: uppercase;
  color: white;
  text-decoration: none;
}

/* --------------------------------------------------------------------------
   Utility Classes
   -------------------------------------------------------------------------- */
.cv-adv-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/* SVG Icons inline */
.cv-adv-icon {
  display: inline-block;
  vertical-align: middle;
}

/* --------------------------------------------------------------------------
   Animations
   -------------------------------------------------------------------------- */
@keyframes cv-adv-fade-in {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.cv-adv-animate-in {
  animation: cv-adv-fade-in 0.4s ease forwards;
}

/* --------------------------------------------------------------------------
   Star Rating Components (used in article header and sidebar)
   -------------------------------------------------------------------------- */
.cv-adv-stars {
  display: flex;
  gap: 0.125rem;
}

.cv-adv-star {
  color: var(--cv-adv-border);
  font-size: 1rem;
}

.cv-adv-star--filled {
  color: var(--cv-adv-accent-gold);
}

/* Reviews Card Simplified (for new advertorial pages) */
.cv-adv-product-card {
  border-radius: 0.5rem;
  border: 1px solid var(--cv-adv-border);
  background-color: var(--cv-adv-bg-card);
  padding: 1.5rem;
  text-align: center;
  margin-bottom: 1.5rem;
}

.cv-adv-product-card__image {
  display: block;
  margin: 0 auto 1rem auto;
  height: 10rem;
  width: auto;
  object-fit: contain;
}

.cv-adv-product-card__name {
  margin: 0 0 0.25rem 0;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-product-card__tagline {
  margin: 0 0 1rem 0;
  font-size: 0.875rem;
  color: var(--cv-adv-text-gray);
}

.cv-adv-product-card__cta {
  display: block;
  width: 100%;
  border-radius: 0.375rem;
  background-color: var(--cv-adv-primary);
  padding: 0.75rem;
  text-align: center;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.875rem;
  color: white;
  text-decoration: none;
  transition: background-color 0.15s;
}

.cv-adv-product-card__cta:hover {
  background-color: var(--cv-adv-primary-dark);
}

.cv-adv-reviews-card {
  border-radius: 0.5rem;
  border: 1px solid var(--cv-adv-border);
  background-color: var(--cv-adv-bg-card);
  padding: 1.5rem;
}

.cv-adv-reviews-card__title {
  margin: 0 0 1rem 0;
  text-align: center;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-reviews-card__summary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin-bottom: 1rem;
}

.cv-adv-reviews-card__score {
  font-size: 2rem;
  font-weight: 700;
  color: var(--cv-adv-text-dark);
}

.cv-adv-reviews-card__count {
  font-size: 0.75rem;
  color: var(--cv-adv-text-gray);
  display: block;
}

.cv-adv-reviews-card__breakdown {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  margin-bottom: 1.5rem;
}

.cv-adv-reviews-card__row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.75rem;
  color: var(--cv-adv-text-gray);
}

.cv-adv-reviews-card__bar {
  flex: 1;
  height: 0.5rem;
  background-color: var(--cv-adv-bg-alt);
  border-radius: 9999px;
  overflow: hidden;
}

.cv-adv-reviews-card__fill {
  height: 100%;
  background-color: var(--cv-adv-accent-gold);
  border-radius: 9999px;
}

.cv-adv-reviews-card__features {
  border-top: 1px solid var(--cv-adv-border);
  padding-top: 1rem;
}

.cv-adv-reviews-card__feature {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem 0;
  font-size: 0.875rem;
}

.cv-adv-reviews-card__feature span:first-child {
  color: var(--cv-adv-text-dark);
}

.cv-adv-reviews-card__feature span:last-child {
  color: var(--cv-adv-accent-gold);
  font-weight: 600;
}
