/* Viloria V5 — edge-to-edge boundaries, understated products and real reviews. */
/* Flow root prevents margin-collapsing at the header and footer; Astra resets can add wrapper space. */
html body .viloria-site { display: flow-root; }
html body .viloria-site > .viloria-header { margin: 0!important; border-bottom-width: 0; }
html body .viloria-site > main#primary.viloria-home,
html body .viloria-site > .viloria-search + main#primary.viloria-home {
  display:flow-root!important; margin:0!important; padding:0!important;
  border:0!important; max-width:none!important; width:100%;
}
html body .viloria-site > main#primary.viloria-home > .viloria-hero--slider {
  margin:0!important; padding:0!important; border:0!important;
  display:block; width:100%;
}
html body .viloria-site > main#primary.viloria-home > .viloria-final-cta:last-child {
  margin:0!important; margin-bottom:0!important; border:0!important;
}
html body .viloria-site > main#primary.viloria-home + footer.viloria-footer {
  margin:0!important; margin-top:0!important; border-top:0!important;
}
html body .viloria-site > main#primary.viloria-home > .viloria-ribbon {
  margin:0!important; padding:0!important; border:0!important;
}
/* Product imagery, product title and price: no floating CTA and no promotional badge. */
.viloria-product-card__sale,.viloria-product-card__view {display:none!important;}
.viloria-featured .viloria-section-heading > .viloria-link-arrow {display:none!important;}
.viloria-product-card__image {position:relative; display:block; overflow:hidden;}
.viloria-product-card__image img {transition: transform .7s cubic-bezier(.22,1,.36,1),filter .6s ease;}
.viloria-product-card:hover .viloria-product-card__image img {transform:scale(1.055); filter:saturate(1.04);}
.viloria-product-card__info h3 a {display:inline-block; transition:color .25s ease;}
.viloria-product-card__info h3 a:hover {color:#633444;}
.viloria-product-card__info h3 a:focus-visible,.viloria-product-card__image:focus-visible {outline:2px solid #633444; outline-offset:3px;}
/* Packs: final full-bleed visual directly adjoins footer. */
.viloria-final-cta__description {max-width:540px; margin:3px auto 32px; font:400 13px/1.9 var(--vi-sans); color:#fff4ef; text-shadow:0 1px 5px rgba(0,0,0,.2);}
.viloria-final-cta h2 {font-size:clamp(55px,6.9vw,103px);line-height:.91;}
/* LuxTim-inspired customer review carousel: editorial cards, photo, stars and genuine product link. */
.viloria-reviews {background:#f6f1ec; overflow:hidden; padding-block:clamp(72px,8vw,122px);}
.viloria-reviews__heading {display:flex; justify-content:space-between; gap:44px; align-items:end; padding-bottom:39px; border-bottom:1px solid rgba(99,52,68,.16); margin-bottom:34px;}
.viloria-reviews__heading h2 {font:500 clamp(54px,6.2vw,94px)/.86 var(--vi-serif);letter-spacing:-.045em;color:#4a2737;margin:17px 0 0;}
.viloria-reviews__heading h2 em {font-weight:400;color:#a47e7e;}
.viloria-reviews__heading>p {max-width:320px; font:400 12px/1.9 var(--vi-sans);color:#73646b;margin:0 0 8px;}
.viloria-reviews__viewport {display:flex; overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-width:none; scroll-snap-type:x mandatory; gap:22px; padding:5px 2px 14px;scroll-behavior:smooth;}
.viloria-reviews__viewport::-webkit-scrollbar {display:none;}
.viloria-review-card {flex:0 0 clamp(282px,29vw,386px);min-width:0;display:grid;grid-template-rows:215px 1fr;background:#fffaf6;box-shadow:0 12px 32px rgba(65,31,42,.045);scroll-snap-align:start; border:1px solid rgba(99,52,68,.085); transition:transform .35s ease,box-shadow .35s ease;}
.viloria-review-card:hover {transform:translateY(-4px);box-shadow:0 20px 42px rgba(65,31,42,.09);}
.viloria-review-card__media {overflow:hidden;position:relative;background:#ded0ce;}
.viloria-review-card__media img {width:100%;height:100%;object-fit:cover;transition:transform .7s ease;}
.viloria-review-card:hover .viloria-review-card__media img {transform:scale(1.055);}
.viloria-review-card__body {padding:27px 27px 28px; min-height:236px; display:flex;flex-direction:column;}
.viloria-review-card__stars {display:flex;gap:4px;color:#cbbfc0;font-size:16px;letter-spacing:.02em;line-height:1;}
.viloria-review-card__stars .is-active {color:#b58c64;}
.viloria-review-card__quote {font:400 clamp(18px,1.6vw,23px)/1.32 var(--vi-serif);color:#452b34; margin:20px 0 26px;flex:1;}
.viloria-review-card__foot {padding-top:17px;border-top:1px solid rgba(99,52,68,.12);display:flex;flex-direction:column;gap:4px;}
.viloria-review-card__foot strong {font:650 11px/1.4 var(--vi-sans);color:#4b3039;}
.viloria-review-card__foot a {font:450 10px/1.5 var(--vi-sans);color:#9b777f;text-decoration:none;}
.viloria-review-card__foot a:hover {text-decoration:underline;}
.viloria-reviews__controls {display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px;}
.viloria-reviews__controls>span {font:650 9px/1.4 var(--vi-sans);letter-spacing:.22em;color:#806771;}
.viloria-reviews__arrows {display:flex;gap:9px;}
.viloria-reviews__arrows button {width:44px;height:44px;display:grid;place-items:center;appearance:none;background:transparent;color:#633444;border:1px solid #b79ba6;border-radius:50%;cursor:pointer;transition:background .25s,color .25s,transform .25s;}
.viloria-reviews__arrows button:hover:not(:disabled) {background:#633444;color:white;transform:translateY(-2px);}
.viloria-reviews__arrows button:disabled {opacity:.28;cursor:default;}
.viloria-reviews__arrows button:focus-visible {outline:2px solid #633444;outline-offset:3px;}
.viloria-reviews__arrows svg {width:20px;height:20px;}
.viloria-reviews__empty {background:#fffaf7;border:1px solid rgba(99,52,68,.12);padding:clamp(42px,6vw,78px);min-height:280px;display:flex;align-items:center;justify-content:space-between;gap:25px;position:relative;overflow:hidden;}
.viloria-reviews__empty-quote {font:400 155px/1 var(--vi-serif);align-self:flex-start;color:#c8a9aa;opacity:.52;}
.viloria-reviews__empty h3 {font:500 clamp(40px,4.8vw,68px)/.95 var(--vi-serif);color:#603541;margin:14px 0;}
.viloria-reviews__empty h3 em {font-weight:400;color:#a8868f;}
.viloria-reviews__empty p {font:400 12px/1.8 var(--vi-sans);color:#77676f;}
.viloria-reviews__empty-mark {font:400 260px/1 var(--vi-serif);color:rgba(99,52,68,.045);position:absolute;right:28px;bottom:-45px;pointer-events:none;}
@media(max-width:820px){.viloria-reviews__heading{display:block;}.viloria-reviews__heading>p{margin-top:20px;}.viloria-review-card{flex-basis:310px;}.viloria-final-cta__description{max-width:430px;}}
@media(max-width:480px){.viloria-reviews{padding-block:63px;}.viloria-reviews__heading h2{font-size:56px;}.viloria-review-card{flex-basis:min(82vw,330px);grid-template-rows:184px 1fr;}.viloria-review-card__body{padding:23px;min-height:220px;}.viloria-reviews__empty{padding:40px 27px;}.viloria-reviews__empty-quote{display:none;}.viloria-reviews__empty-mark{font-size:190px;}.viloria-final-cta__description{font-size:12px;}}
@media(prefers-reduced-motion:reduce){.viloria-review-card,.viloria-review-card__media img{transition:none!important;}.viloria-reviews__viewport{scroll-behavior:auto;}}
