/* ================================================================
   Yonelle Single Product – Figma Pixel-Perfect
   Figma nodes: 401:993 (section 1), 316:2637 (reviews), 442:5086 (video)
   Full page: 401:982
   Grid: max-width 1440px centered, scales for >1920px
   ================================================================ */

/* ── CSS Custom Properties ────────────────────────────────────── */

:root {
  --y-grid-max: 1440px;
  --y-beige-900: #272725;
  --y-beige-800: #444340;
  --y-beige-700: #716E68;
  --y-beige-500: #ABA799;
  --y-beige-200: #DBDAD6;
  --y-beige-100: #FAF9F6;
  --y-beige-000: #FFFFFF;
  --y-font-body: 'Plus Jakarta Sans', sans-serif;
  --y-font-head: 'Cormorant', serif;
}

/* ── Reset / Layout ────────────────────────────────────────────── */

.yonelle-single-product {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow-x: hidden;
}

/* ── Section 1: Gallery + Info (50/50 grid) ────────────────────── */

.yonelle-product-columns,
.yonelle-product-columns.wp-block-columns,
.yonelle-product-columns.is-layout-flex,
.wp-block-columns.yonelle-product-columns {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  flex-wrap: unset !important;
  gap: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  max-width: var(--y-grid-max, 1440px) !important;
  width: 100% !important;
  background: var(--y-beige-000);
}

.yonelle-product-columns > .wp-block-column,
.yonelle-product-columns.is-layout-flex > .wp-block-column {
  margin: 0 !important;
  flex-basis: unset !important;
  width: 100% !important;
}

/* ── Gallery Column (Left – 50%) ───────────────────────────────── */

.yonelle-product-gallery-col {
  position: relative;
  background: var(--y-beige-000);
  overflow: visible !important;
}

.yonelle-product-gallery-col .wp-block-woocommerce-product-image-gallery {
  position: sticky !important;
  top: 0 !important;
  height: 100vh !important;
  width: 100% !important;
  overflow: hidden !important;
}

.yonelle-product-gallery-col .wc-block-product-image-gallery,
.yonelle-product-gallery-col .woocommerce-product-gallery {
  height: 100% !important;
  overflow: hidden;
  margin: 0 !important;
  width: 100% !important;
  opacity: 1 !important;
}

.yonelle-product-gallery-col .woocommerce-product-gallery__image img,
.yonelle-product-gallery-col .wc-block-product-image-gallery img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  max-height: 100vh;
}

.yonelle-product-gallery-col .woocommerce-product-gallery .woocommerce-product-gallery__wrapper,
.yonelle-product-gallery-col .woocommerce-product-gallery figure.woocommerce-product-gallery__wrapper {
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.yonelle-product-gallery-col .woocommerce-product-gallery .flex-viewport {
  height: 100% !important;
  max-height: 100vh !important;
}

.yonelle-product-gallery-col .woocommerce-product-gallery__image {
  height: 100% !important;
}

.yonelle-product-gallery-col .woocommerce-product-gallery__image a {
  display: block !important;
  height: 100% !important;
}

.yonelle-product-gallery-col .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper {
  height: 100% !important;
}

.yonelle-product-gallery-col .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image {
  height: 100% !important;
}

/* Hide thumbnails, pagination dots, gallery trigger */
.yonelle-product-gallery-col .flex-control-nav,
.yonelle-product-gallery-col .flex-control-paging,
.yonelle-product-gallery-col .wc-block-product-image-gallery__thumbnails,
.yonelle-product-gallery-col .woocommerce-product-gallery__trigger,
.yonelle-product-gallery-col .woocommerce-product-gallery .flex-viewport ~ ol,
.yonelle-product-gallery-col .woocommerce-product-gallery .woocommerce-product-gallery__pagination {
  display: none !important;
}

/* Fullscreen button and all other gallery chrome */
.yonelle-product-gallery-col button[class*="fullscreen"],
.yonelle-product-gallery-col .woocommerce-product-gallery ~ *,
.yonelle-product-gallery-col .wc-block-product-image-gallery button:not(.yonelle-gallery-arrows *) {
  display: none !important;
}

/* Hide FlexSlider pagination/nav dots */
.yonelle-product-gallery-col ol,
.yonelle-product-gallery-col .flex-control-paging,
.yonelle-product-gallery-col .flex-direction-nav,
.yonelle-product-gallery-col .woocommerce-product-gallery ol.flex-control-nav {
  display: none !important;
}

/* Gallery arrows – Figma: 24px icons, centered vertically, 24px from edges */
.yonelle-gallery-arrows {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px;
  pointer-events: none;
  z-index: 10;
}

.yonelle-gallery-arrow {
  pointer-events: auto;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: rgba(255, 255, 255, 0.85);
  border-radius: 50%;
  border: none;
  padding: 0;
  transition: background 0.2s, opacity 0.2s;
  backdrop-filter: blur(4px);
}

.yonelle-gallery-arrow:hover {
  background: rgba(255, 255, 255, 1);
}

.yonelle-gallery-arrow svg {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

/* ── Badges overlay ────────────────────────────────────────────── */

.yonelle-badges {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 20;
  display: flex;
  gap: 7px;
  align-items: center;
}

.yonelle-badge {
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.24px;
  text-transform: uppercase;
  white-space: nowrap;
  padding: 4px 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.yonelle-badge--filled {
  background: var(--y-beige-900);
  color: var(--y-beige-000);
}

.yonelle-badge--outlined {
  background: transparent;
  border: 1px solid var(--y-beige-800);
  color: var(--y-beige-900);
}

/* ── Info Column (Right – 50%) ─────────────────────────────────── */

.yonelle-product-info-col {
  background-color: var(--y-beige-100) !important;
  padding: 16px 40px 80px !important;
  overflow-wrap: break-word;
  word-wrap: break-word;
  overflow-x: hidden;
}

/* ── Breadcrumbs ───────────────────────────────────────────────── */

.yonelle-breadcrumbs,
.yonelle-breadcrumbs a,
.yonelle-breadcrumbs .woocommerce-breadcrumb,
.yonelle-breadcrumbs .woocommerce-breadcrumb a {
  font-family: var(--y-font-body) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.2px !important;
  color: var(--y-beige-700) !important;
  text-decoration: none !important;
  padding: 8px 0 !important;
}

.yonelle-breadcrumbs .woocommerce-breadcrumb a:hover {
  color: var(--y-beige-900) !important;
}

.yonelle-breadcrumbs .woocommerce-breadcrumb span.breadcrumb-separator {
  margin: 0 4px;
}

/* ── Product Header Group ──────────────────────────────────────── */

.yonelle-product-header {
  gap: 8px !important;
}

.yonelle-series-name,
.yonelle-series-name a {
  font-family: var(--y-font-body) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.24px !important;
  text-transform: uppercase !important;
  color: var(--y-beige-900) !important;
  text-decoration: none !important;
}

.yonelle-product-title {
  font-family: var(--y-font-head) !important;
  font-size: 32px !important;
  font-weight: 500 !important;
  line-height: normal !important;
  color: var(--y-beige-900) !important;
  margin: 0 !important;
  padding: 0 !important;
  max-width: 443px;
}

.yonelle-product-volume {
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.24px;
  color: var(--y-beige-900);
  margin: 0;
}

/* ── Price + Points ────────────────────────────────────────────── */

.yonelle-price-row {
  display: flex;
  align-items: baseline;
  gap: 16px;
  width: 100%;
}

.yonelle-price-row .yonelle-price-amount,
.yonelle-price-row .yonelle-price-amount .price,
.yonelle-price-row .yonelle-price-amount .woocommerce-Price-amount {
  font-family: var(--y-font-body) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  letter-spacing: 0.32px !important;
  color: var(--y-beige-900) !important;
}

.yonelle-price-row .yonelle-price-amount del {
  opacity: 0.5;
}

.yonelle-price-row .yonelle-price-amount ins {
  text-decoration: none;
}

.yonelle-price-points {
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.24px;
  color: var(--y-beige-900);
  white-space: nowrap;
}

/* ── Mini-info tooltips ────────────────────────────────────────── */

.yonelle-mini-info {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
}

.yonelle-mini-info__tooltip {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px;
  background: var(--y-beige-000);
}

.yonelle-mini-info__text {
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.24px;
  color: var(--y-beige-900);
  white-space: nowrap;
}

.yonelle-icon-check,
.yonelle-icon-info {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}

/* ── Description + "Czytaj dalej" ──────────────────────────────── */

.yonelle-excerpt-wrapper {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.yonelle-excerpt-text {
  font-family: var(--y-font-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.28px;
  color: var(--y-beige-900);
  max-width: 443px;
  max-height: 42px;
  overflow: hidden;
}

.yonelle-excerpt-text--expanded {
  max-height: none;
}

.yonelle-excerpt-text p {
  margin: 0 0 8px;
}

.yonelle-excerpt-text p:last-child {
  margin-bottom: 0;
}

/* Underline link style (shared) */
.yonelle-underline-link {
  font-family: var(--y-font-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.28px;
  color: var(--y-beige-900);
  text-decoration: none;
  border: none;
  border-bottom: 1px solid var(--y-beige-900);
  background: none;
  padding: 4px 0;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
}

.yonelle-underline-link:hover {
  opacity: 0.7;
}

/* ── Add to Cart (full-width, no quantity) ─────────────────────── */

.yonelle-add-to-cart {
  width: 100%;
}

.yonelle-add-to-cart .quantity {
  display: none !important;
}

.yonelle-add-to-cart form.cart {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.yonelle-add-to-cart .single_add_to_cart_button,
.yonelle-add-to-cart .wc-block-components-product-button__button,
.yonelle-add-to-cart button[type="submit"] {
  width: 100% !important;
  background-color: var(--y-beige-900) !important;
  color: var(--y-beige-100) !important;
  border: none !important;
  border-radius: 0 !important;
  height: 40px;
  font-family: var(--y-font-body) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.28px !important;
  line-height: 1.5 !important;
  text-transform: none !important;
  cursor: pointer;
  transition: opacity 0.2s;
  padding: 8px 48px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.yonelle-add-to-cart .single_add_to_cart_button:hover {
  opacity: 0.85;
}

.yonelle-add-to-cart .stock,
.yonelle-product-buttons .stock {
  display: none !important;
}

.yonelle-product-buttons {
  width: 100% !important;
}

.yonelle-product-buttons > * {
  width: 100% !important;
}

/* ── Loyalty Button ────────────────────────────────────────────── */

.yonelle-loyalty-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 40px;
  padding: 8px 24px;
  background: var(--y-beige-000);
  border: 1px solid var(--y-beige-900);
  cursor: pointer;
  transition: opacity 0.2s;
  box-sizing: border-box;
}

.yonelle-loyalty-button:hover {
  opacity: 0.7;
}

.yonelle-loyalty-button__points {
  font-family: var(--y-font-body);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.28px;
  color: var(--y-beige-900);
  white-space: nowrap;
}

.yonelle-loyalty-button__text {
  font-family: var(--y-font-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.28px;
  color: var(--y-beige-900);
  white-space: nowrap;
}

/* ── Free Shipping ─────────────────────────────────────────────── */

.yonelle-free-shipping {
  display: flex;
  align-items: center;
  gap: 16px;
}

.yonelle-free-shipping p {
  font-family: var(--y-font-body) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.28px !important;
  color: var(--y-beige-800) !important;
  line-height: 1.5 !important;
  margin: 0 !important;
  display: flex;
  align-items: center;
  gap: 16px;
}

.yonelle-icon-truck {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}

/* ── Attribute Sections (Dla kogo / Efekty / …) ───────────────── */

.yonelle-attributes-section {
  width: 100%;
}

.yonelle-attr-row {
  display: flex;
  gap: 24px;
  padding: 24px 0;
  border-top: 1px solid var(--y-beige-200);
  width: 100%;
}

.yonelle-attr-row__label {
  flex: 1 0 0;
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.24px;
  text-transform: uppercase;
  color: var(--y-beige-900);
  min-width: 0;
}

.yonelle-attr-row__content {
  flex: 1 0 0;
  font-family: var(--y-font-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.28px;
  color: #595959;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.yonelle-attr-row__content p {
  margin: 0 0 8px;
}

.yonelle-attr-row__content p:last-child {
  margin-bottom: 0;
}

.yonelle-attr-row__content ul {
  margin: 0;
  padding-left: 21px;
  list-style-type: disc;
}

.yonelle-attr-row__content ul li {
  margin-bottom: 0;
  line-height: 1.5;
}

.yonelle-attr-row__content .yonelle-underline-link {
  align-self: flex-start;
}

/* ── Section Divider ───────────────────────────────────────────── */

.yonelle-section-divider {
  border-color: var(--y-beige-200) !important;
  margin: 0 !important;
}

/* ── Product Meta (SKU, categories, tags) ──────────────────────── */

.yonelle-product-meta {
  display: none !important;
}

/* ── Product Content Blocks (Gutenberg v2) ─────────────────────── */

.yonelle-product-content-blocks {
  width: 100%;
}

.yonelle-product-page-content {
  width: 100%;
}

.yonelle-product-page-content > section {
  width: 100%;
}

/* Fix image placeholders in Gutenberg blocks */
.yonelle-product-page-content img {
  max-width: 100%;
  height: auto;
}

.yonelle-product-page-content figure {
  margin: 0;
}

.yonelle-product-page-content .wp-block-image img[src=""],
.yonelle-product-page-content .wp-block-image img:not([src]) {
  display: block;
  min-height: 200px;
  background: var(--y-beige-200);
}

/* ── Video Section (Figma 442:5086) – 100% vw ─────────────────── */

.yonelle-video-section {
  position: relative;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--y-beige-100);
  box-sizing: border-box;
  overflow: hidden;
}

.yonelle-video-wrapper {
  position: relative;
  width: 100%;
  max-width: 902px;
  aspect-ratio: 902 / 506;
  cursor: pointer;
}

.yonelle-video-wrapper img,
.yonelle-video-wrapper video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.yonelle-video-play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 64px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  z-index: 2;
}

.yonelle-video-play svg {
  width: 40px;
  height: 40px;
}

/* ── Frequently Bought Together ────────────────────────────────── */

.yonelle-frequently-bought {
  background-color: var(--y-beige-100) !important;
  max-width: 100% !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: max(40px, calc(50vw - var(--y-grid-max) / 2)) !important;
  padding-right: max(40px, calc(50vw - var(--y-grid-max) / 2)) !important;
  box-sizing: border-box !important;
}

.yonelle-frequently-bought > h2 {
  font-family: var(--y-font-head) !important;
  font-size: 32px !important;
  font-weight: 500 !important;
  line-height: normal !important;
  color: var(--y-beige-900) !important;
  margin-bottom: 16px !important;
}

/* Fake product cards */
.yonelle-fake-products {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  width: 100%;
}

.yonelle-fake-product-card {
  background: var(--y-beige-000);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.yonelle-fake-product-card__image {
  aspect-ratio: 328 / 387;
  width: 100%;
  background: var(--y-beige-000);
  position: relative;
  overflow: hidden;
}

.yonelle-fake-product-card__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.yonelle-fake-product-card__badges {
  position: absolute;
  top: 8px;
  left: 8px;
  display: flex;
  gap: 7px;
}

.yonelle-fake-product-card__points {
  position: absolute;
  bottom: 0;
  left: 8px;
  padding: 2px 8px;
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.24px;
  color: var(--y-beige-700);
}

.yonelle-fake-product-card__info {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 0 24px 16px 16px;
}

.yonelle-fake-product-card__price {
  font-family: var(--y-font-body);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.28px;
  color: var(--y-beige-900);
}

.yonelle-fake-product-card__series {
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.24px;
  text-transform: uppercase;
  color: var(--y-beige-900);
  margin: 0;
}

.yonelle-fake-product-card__name {
  font-family: var(--y-font-body);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.32px;
  color: var(--y-beige-900);
  margin: 0;
}

.yonelle-fake-product-card__meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

/* ── Newsletter Section ────────────────────────────────────────── */

.yonelle-newsletter-section {
  width: 100vw !important;
  max-width: 100% !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  position: relative;
  overflow: hidden;
  background: url('/wp-content/uploads/2026/03/newsletter-bg.jpg') center/cover no-repeat;
  background-color: #EDE9E1;
}

.yonelle-newsletter-inner {
  display: flex;
  flex-direction: column;
  gap: 40px;
  align-items: center;
  justify-content: center;
  padding: 72px 40px;
  position: relative;
  z-index: 1;
  max-width: var(--y-grid-max, 1440px);
  margin: 0 auto;
}

.yonelle-newsletter-bg {
  position: absolute;
  inset: 0;
  object-fit: cover;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.yonelle-newsletter-txt {
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  max-width: 672px;
  text-align: center;
  color: var(--y-beige-900);
}

.yonelle-newsletter-label {
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.24px;
  text-transform: uppercase;
  margin: 0;
}

.yonelle-newsletter-title {
  font-family: var(--y-font-head);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.2;
  margin: 0;
}

.yonelle-newsletter-desc {
  font-family: var(--y-font-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.28px;
  margin: 0;
}

.yonelle-newsletter-desc strong {
  font-weight: 600;
}

.yonelle-newsletter-form {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
  max-width: 672px;
  width: 100%;
}

.yonelle-newsletter-fields {
  display: flex;
  gap: 16px;
  width: 100%;
}

.yonelle-newsletter-fields input {
  flex: 1;
  height: 45px;
  padding: 12px 16px;
  border: 1px solid var(--y-beige-200);
  background: var(--y-beige-000);
  font-family: var(--y-font-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.28px;
  color: var(--y-beige-700);
  box-sizing: border-box;
  outline: none;
}

.yonelle-newsletter-fields input:focus {
  border-color: var(--y-beige-900);
  color: var(--y-beige-900);
}

.yonelle-newsletter-submit {
  width: 100%;
  height: 40px;
  padding: 8px 48px;
  background: var(--y-beige-500);
  border: none;
  font-family: var(--y-font-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.28px;
  color: var(--y-beige-100);
  cursor: pointer;
  transition: background 0.2s;
}

.yonelle-newsletter-submit:hover {
  background: var(--y-beige-900);
}

/* ── Reviews Section – Figma 316:2637 / 401:1153 ─────────────── */

.yonelle-reviews-section {
  background: var(--y-beige-100) !important;
  max-width: 100% !important;
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: max(40px, calc(50vw - var(--y-grid-max) / 2)) !important;
  padding-right: max(40px, calc(50vw - var(--y-grid-max) / 2)) !important;
  box-sizing: border-box !important;
}

.yonelle-reviews-section > h2 {
  font-family: var(--y-font-head) !important;
  font-size: 32px !important;
  font-weight: 500 !important;
  line-height: normal !important;
  color: var(--y-beige-900) !important;
  margin-bottom: 16px !important;
}

.yonelle-reviews-figma {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  width: 100%;
}

.yonelle-reviews-figma__left {
  width: 443px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.yonelle-reviews-figma__rating-row {
  display: flex;
  gap: 16px;
  align-items: baseline;
}

.yonelle-reviews-figma__avg {
  font-family: var(--y-font-head);
  font-size: 48px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--y-beige-900);
}

.yonelle-reviews-figma__stars {
  display: flex;
  gap: 4px;
  align-items: center;
}

.yonelle-reviews-figma__stars svg {
  width: 16px;
  height: 16px;
}

.yonelle-reviews-figma__count {
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.24px;
  color: var(--y-beige-900);
  white-space: nowrap;
}

.yonelle-reviews-figma__cta-box {
  border: 1px solid var(--y-beige-200);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.yonelle-reviews-figma__cta-content {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.yonelle-reviews-figma__cta-title {
  font-family: var(--y-font-head);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  color: var(--y-beige-900);
  margin: 0;
}

.yonelle-reviews-figma__cta-desc {
  font-family: var(--y-font-body);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.32px;
  color: var(--y-beige-900);
  margin: 0;
}

.yonelle-reviews-figma__cta-actions {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
}

.yonelle-reviews-figma__write-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 40px;
  padding: 8px 48px;
  background: var(--y-beige-000);
  border: 1px solid var(--y-beige-900);
  font-family: var(--y-font-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.28px;
  color: var(--y-beige-900);
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s;
  box-sizing: border-box;
}

.yonelle-reviews-figma__write-btn:hover {
  opacity: 0.7;
}

.yonelle-reviews-figma__right {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.yonelle-reviews-figma__list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  padding-bottom: 48px;
}

.yonelle-review-card {
  background: var(--y-beige-000);
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.yonelle-review-card__date {
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.24px;
  color: var(--y-beige-700);
  text-align: right;
  margin: 0;
}

.yonelle-review-card__text {
  font-family: var(--y-font-body);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.32px;
  color: var(--y-beige-900);
  margin: 0;
}

.yonelle-review-card__meta {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.yonelle-review-card__meta p {
  font-family: var(--y-font-body);
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.28px;
  color: var(--y-beige-900);
  margin: 0;
}

.yonelle-review-card__meta p strong {
  font-weight: 600;
  margin-right: 8px;
}

.yonelle-review-card__toggle {
  align-self: flex-start;
}

.yonelle-review-card__footer {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: flex-end;
}

.yonelle-review-card__author {
  font-family: var(--y-font-body);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.24px;
  text-transform: uppercase;
  color: var(--y-beige-900);
  text-align: right;
}

.yonelle-review-card__stars {
  display: flex;
  gap: 4px;
  align-items: center;
}

.yonelle-review-card__stars svg {
  width: 16px;
  height: 16px;
}

.yonelle-reviews-figma__show-more {
  margin-top: 0;
}

.yonelle-reviews-section #reviews,
.yonelle-reviews-section .woocommerce-Reviews {
  display: none !important;
}

/* ── Responsive ────────────────────────────────────────────────── */

@media (max-width: 1024px) {
  .yonelle-mini-info__text {
    white-space: normal;
  }

  .yonelle-fake-products {
    grid-template-columns: repeat(2, 1fr);
  }

  .yonelle-video-section {
    padding: 40px;
  }
}

@media (max-width: 768px) {
  .yonelle-product-columns {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: unset !important;
  }

  .yonelle-product-columns > .wp-block-column {
    flex-basis: 100% !important;
    width: 100% !important;
  }

  .yonelle-product-gallery-col {
    min-height: auto;
  }

  .yonelle-product-gallery-col .wc-block-product-image-gallery,
  .yonelle-product-gallery-col .woocommerce-product-gallery {
    position: relative !important;
    height: auto;
    max-height: 500px;
  }

  .yonelle-product-info-col {
    padding: 16px 20px 40px !important;
  }

  .yonelle-product-title {
    font-size: 24px !important;
    max-width: 100%;
  }

  .yonelle-excerpt-text {
    max-width: 100%;
  }

  .yonelle-reviews-figma {
    flex-direction: column;
  }

  .yonelle-reviews-figma__left {
    width: 100%;
  }

  .yonelle-attr-row {
    flex-direction: column;
    gap: 8px;
  }

  .yonelle-fake-products {
    grid-template-columns: repeat(2, 1fr);
  }

  .yonelle-video-section {
    padding: 20px;
  }

  .yonelle-newsletter-fields {
    flex-direction: column;
  }
}

/* Grey placeholders for yb2 article/series cards */
.yb2-articles-series-columns-box-with-title-image__card-placeholder {
  background-color: var(--y-beige-200, #DBDAD6) !important;
  min-height: 200px;
}

/* yb2 image-left/right sections: image flush to edge, aligned bottom */
.yb2-image-small-title-title-text-linkbuyproduct-and-image-left__left {
  padding: 0 !important;
  margin: 0 !important;
  justify-content: flex-start !important;
  align-self: end !important;
}
.yb2-image-small-title-title-text-linkbuyproduct-and-image-right__right {
  padding: 0 !important;
  margin: 0 !important;
  justify-content: flex-end !important;
  align-self: end !important;
}

/* ── articles-series grid: stretch to 100% of grid container ─── */
.woocommerce.single-product .yb2-articles-series-columns-box-with-title-image__inner {
  max-width: var(--y-grid-max, 1440px) !important;
  margin: 0 auto !important;
  width: 100% !important;
}

.woocommerce.single-product .yb2-articles-series-columns-box-with-title-image__grid {
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  width: 100% !important;
}

.woocommerce.single-product .yb2-articles-series-columns-box-with-title-image__card {
  min-width: 0;
}

.woocommerce.single-product .yb2-articles-series-columns-box-with-title-image__card-img {
  max-width: 100% !important;
  width: 100% !important;
  height: auto !important;
}

.woocommerce.single-product .yb2-articles-series-columns-box-with-title-image__card-placeholder {
  max-width: 100% !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  max-height: 400px !important;
  flex: 0 0 auto !important;
}

.woocommerce.single-product .yb2-articles-series-columns-box-with-title-image__card {
  justify-content: flex-start !important;
}

/* ── Remove video section display:none (block was removed from DB) ── */
.woocommerce.single-product .yb2-video-section,
.woocommerce.single-product .wp-block-yonelle-blocks-v2-video-section {
  display: block !important;
}

/* ── Newsletter: verify rendering on product page ─── */
.woocommerce.single-product .yonelle-newsletter-block {
  background: transparent !important;
}
