/* Desktop-only: editorial reviews strip and smooth original-gallery reading.
   Keeps approved mobile layout, source data and existing gallery engine. */
@media (min-width:1024px) {
  body.is-home #reviews .july-section-content {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) max-content;
    align-items:center;
    column-gap:28px;
    row-gap:20px;
  }
  body.is-home #reviews .july-section-content > h2.mobile-only {
    grid-column:1;
    grid-row:1;
    margin:0!important;
  }
  body.is-home #reviews .july-section-content > .intro,
  body.is-home #reviews .reviews-chapters {
    display:none!important;
  }
  body.is-home #reviews .reviews-story {
    display:contents!important;
  }
  body.is-home #reviews .review-controls {
    grid-column:2;
    grid-row:1;
    display:flex!important;
    align-items:center;
    justify-self:end;
    justify-content:flex-end;
    gap:12px;
    margin:0!important;
    min-width:0;
  }
  body.is-home #reviews .reviews-hint {
    display:none!important;
  }
  body.is-home #reviews .reviews-counter {
    display:inline!important;
    margin:0 3px!important;
    color:#51495c;
    font:500 14px/1.3 Manrope,Arial,sans-serif;
    white-space:nowrap;
  }
  body.is-home #reviews .review-controls .reviews-prev,
  body.is-home #reviews .review-controls .reviews-next {
    display:grid!important;
    place-items:center;
    flex:none;
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    min-height:40px!important;
    padding:0!important;
    border:1px solid #dcd6e9!important;
    border-radius:50%!important;
    background:#fff!important;
    color:var(--stasia-blue)!important;
    box-shadow:none!important;
    text-decoration:none!important;
    font-size:0!important;
    line-height:1!important;
    cursor:pointer;
  }
  body.is-home #reviews .review-controls .reviews-prev::after,
  body.is-home #reviews .review-controls .reviews-next::after {
    display:block;
    font:500 25px/1 Arial,sans-serif;
    text-decoration:none;
  }
  body.is-home #reviews .review-controls .reviews-prev::after {content:"‹";}
  body.is-home #reviews .review-controls .reviews-next::after {content:"›";}
  body.is-home #reviews .review-controls button:disabled {
    opacity:.32!important;
    cursor:default;
  }
  body.is-home #reviews .review-controls button:not(:disabled):hover {
    background:#f7f4ff!important;
    border-color:var(--stasia-blue)!important;
  }
  body.is-home #reviews .reviews-viewport {
    grid-column:1 / -1;
    grid-row:2;
    display:flex;
    align-items:stretch;
    gap:16px!important;
    min-width:0;
    width:100%;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    scroll-behavior:smooth;
    scrollbar-width:none;
    overscroll-behavior-x:contain;
  }
  body.is-home #reviews .reviews-viewport::after {
    flex:0 0 max(0px,calc(100% - 64% - 16px))!important;
  }
  body.is-home #reviews .review-slide {
    box-sizing:border-box;
    flex:0 0 64%!important;
    width:64%!important;
    min-height:230px;
    min-width:0;
    height:auto!important;
    align-self:stretch!important;
    display:flex!important;
    flex-direction:column;
    padding:22px 24px!important;
    border:1px solid #ded7ec!important;
    border-radius:16px!important;
    background:#f3efff!important;
    scroll-snap-align:start;
    gap:0;
  }
  body.is-home #reviews .review-head {
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:4px!important;
    order:0!important;
    min-height:0!important;
    margin:0 0 12px!important;
  }
  body.is-home #reviews .review-author {
    font:700 19px/1.3 Manrope,Arial,sans-serif!important;
    color:#24212c!important;
  }
  body.is-home #reviews .review-card-stars {
    display:block!important;
    color:#d18b00!important;
    font:500 19px/1.2 Manrope,Arial,sans-serif!important;
    letter-spacing:2px;
    white-space:nowrap;
  }
  body.is-home #reviews .review-card-mark {
    display:none!important;
  }
  body.is-home #reviews .review-quote {
    order:1!important;
    display:block!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    overflow:visible!important;
    -webkit-line-clamp:unset!important;
    line-clamp:unset!important;
    font:400 17px/1.5 Manrope,Arial,sans-serif!important;
    color:#24212c!important;
  }
  body.is-home #reviews .review-expand-row {
    order:2!important;
    min-height:0!important;
    margin:auto 0 0!important;
    padding:16px 0 0!important;
  }
  body.is-home #reviews .review-original {
    color:var(--stasia-blue)!important;
    font:500 14px/1.4 Manrope,Arial,sans-serif;
    text-decoration:underline;
    text-underline-offset:3px;
  }
  /* Original reviews: existing centered Gallery pages crossfade instead of
     abruptly hiding and teleporting tiles. This changes no gallery data. */
  .review-originals-dialog .july-gallery-centered .july-gallery-photo {
    visibility:hidden!important;
    left:50%!important;
    top:0!important;
    width:min(760px,100%)!important;
    height:100%!important;
    transform:translateX(-50%)!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:opacity 340ms cubic-bezier(.22,1,.36,1), visibility 0s linear 340ms!important;
    will-change:opacity;
  }
  .review-originals-dialog .july-gallery-centered .july-gallery-photo.review-reading-pair {
    width:100%!important;
  }
  .review-originals-dialog .july-gallery-centered .july-gallery-photo[data-active=true] {
    visibility:visible!important;
    opacity:1!important;
    transition:opacity 340ms cubic-bezier(.22,1,.36,1), visibility 0s!important;
    pointer-events:auto!important;
    z-index:3!important;
  }
}
@media (min-width:1024px) and (prefers-reduced-motion:reduce) {
  .review-originals-dialog .july-gallery-centered .july-gallery-photo {
    transition:none!important;
  }
  body.is-home #reviews .reviews-viewport {scroll-behavior:auto;}
}


/* Client revision: at least two complete readable reviews in the viewport;
   next card peeks in from the right. Remove redundant counter and use
   centered vector arrows (not a font glyph shifted inside the circle). */
@media (min-width:1024px) {
  body.is-home #reviews .review-slide {
    flex:0 0 46.5%!important;
    width:46.5%!important;
    min-height:244px;
    padding:22px 22px!important;
  }
  body.is-home #reviews .reviews-viewport::after {
    flex-basis:max(0px,calc(100% - 46.5% - 16px))!important;
  }
  body.is-home #reviews .reviews-counter {
    display:none!important;
  }
  body.is-home #reviews .review-controls {
    gap:10px;
  }
  body.is-home #reviews .review-controls .reviews-prev,
  body.is-home #reviews .review-controls .reviews-next {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    padding:0!important;
    box-sizing:border-box!important;
  }
  body.is-home #reviews .review-controls .reviews-prev::after,
  body.is-home #reviews .review-controls .reviews-next::after {
    content:""!important;
    display:block!important;
    flex:none;
    width:20px;
    height:20px;
    margin:0;
    padding:0;
    font-size:0!important;
    line-height:0!important;
  }
  body.is-home #reviews .review-controls .reviews-prev::after {
    background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235015f5' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m15 18-6-6 6-6'/%3E%3C/svg%3E") center/20px 20px no-repeat;
  }
  body.is-home #reviews .review-controls .reviews-next::after {
    background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235015f5' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/20px 20px no-repeat;
  }
}


/* Exact desktop three-up review rhythm approved in Nadежда Pomorskaya's
   Culinary Studio: card width clamp(272px,29.2vw,364px), 17px gap,
   328px minimum height, native one-card-at-a-time scroll snapping.
   Anastasia's existing editorial colors, author/stars/text ordering,
   SVG controls, review data and gallery lightbox remain unchanged. */
@media (min-width:1024px) {
  body.is-home #reviews .reviews-viewport {
    gap:17px!important;
    scroll-padding-left:1px;
  }
  body.is-home #reviews .review-slide {
    flex:0 0 clamp(272px,29.2vw,364px)!important;
    width:clamp(272px,29.2vw,364px)!important;
    min-height:328px!important;
    padding:26px 25px 25px!important;
    scroll-snap-align:start;
  }
  body.is-home #reviews .reviews-viewport::after {
    flex:0 0 max(0px,calc(100% - clamp(272px,29.2vw,364px) - 6px))!important;
  }
}


/* End of gallery means Olga, no synthetic trailing review tiles.
   Three visible cards, and the last card is the final rightmost one. */
@media(min-width:1024px) {
  body.is-home #reviews .reviews-viewport::after {
    content:none!important;
    display:none!important;
    flex:none!important;
  }
}
