/* Controlled visual-regression fixes. Keeps the established Riva design system. */
html,body{max-width:100%;overflow-x:hidden}
.skip-link{position:fixed;inset-block-start:1rem;inset-inline-start:1rem;z-index:100000;padding:.75rem 1rem;background:#14343d;color:#fff;border-radius:.5rem;transform:translateY(-200%)}
.skip-link:focus{transform:none;outline:3px solid #fff;outline-offset:3px}
#mainContent{scroll-margin-block-start:6rem}
body .floating-field>span{color:#485d63!important}
body .riva-service-copy>span{color:#485d63!important}
.payment-card-image img:not([src]),.receipt-preview-shell img:not([src]){display:none!important}

/* The existing homepage slider stays intact; prices are never shown inside it. */
.home-page .hero .premium-price,
.home-page .hero .premium-price--hero,
.home-page .hero .product-price,
.home-page .hero .price,
.home-page .product-slider .premium-price,
.home-page .product-slider .product-price{display:none!important;visibility:hidden!important}

/* Restore compact product cards without replacing their original visual style. */
body .products-grid{align-items:stretch!important}
body .products-grid .product-card{height:100%!important}
body .products-grid .product-info{
  box-sizing:border-box!important;
  flex:0 0 184px!important;
  height:184px!important;
  min-height:184px!important;
  padding:13px 14px 14px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:40px 20px 40px 44px!important;
  gap:5px!important;
  align-content:start!important;
  justify-items:stretch!important;
}

/* Final contact-page ordering and readable showroom details. */
.premium-contact-showroom{
  position:relative;
  overflow:hidden;
  margin:0 0 32px;
  padding:clamp(28px,5vw,54px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:36px;
  align-items:stretch;
  border:1px solid rgba(20,52,61,.12);
  border-radius:26px;
  background:linear-gradient(145deg,#fff 0%,#fbf8f8 58%,#f5f7f6 100%);
  box-shadow:0 18px 44px rgba(20,52,61,.08);
}
.contact-support-section,
.contact-form-section{
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
  margin:0 0 32px!important;
}
.contact-support-section .contact-social-card,
.contact-form-section .contact-form-card{
  width:100%;
  min-width:0;
}
.contact-support-section .contact-social-card{
  padding:clamp(26px,4vw,42px);
}
.contact-form-section .contact-form-card{
  padding:clamp(24px,4vw,38px);
}
.contact-support-section .contact-social-links,
.contact-form-section .form-grid{min-width:0}
.premium-contact-showroom:before{
  content:'';
  position:absolute;
  top:0;
  right:clamp(28px,5vw,54px);
  width:72px;
  height:4px;
  border-radius:0 0 8px 8px;
  background:#96546a;
}
.contact-showroom-intro{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.contact-showroom-intro h2{
  margin:0 0 18px;
  color:#14343d;
  font-size:clamp(1.35rem,2.4vw,2rem);
  line-height:1.65;
  text-align:right;
}
.contact-showroom-address{
  display:grid;
  gap:5px;
  margin:0;
  padding:20px 22px;
  border:1px solid rgba(150,84,106,.13);
  border-radius:18px;
  background:rgba(255,255,255,.82);
  box-shadow:0 10px 25px rgba(20,52,61,.05);
  color:#5f747a;
  font-style:normal;
  line-height:1.9;
}
.contact-showroom-address strong{
  color:#14343d;
  font-size:1.02rem;
}
.contact-showroom-place{
  width:max-content;
  padding:2px 10px;
  border-radius:999px;
  background:rgba(150,84,106,.1);
  color:#824d5d;
  font-size:.82rem;
  font-weight:750;
}
.premium-contact-details h3{
  margin:0 0 2px;
  display:flex;
  align-items:center;
  gap:8px;
  color:#14343d;
}
.premium-contact-details h3:before{
  content:'';
  width:7px;
  height:7px;
  flex:0 0 7px;
  border-radius:50%;
  background:#96546a;
}
.premium-contact-details h3:not(:first-child){margin-top:10px}
.premium-contact-details{
  display:grid;
  align-content:center;
  gap:12px;
}
.premium-contact-details p{
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin:0;
  padding:10px 13px;
  border:1px solid rgba(20,52,61,.08);
  border-radius:13px;
  background:rgba(255,255,255,.74);
}
.premium-contact-details p b{white-space:nowrap}
.premium-contact-phones{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.premium-contact-phones a{
  min-width:148px;
  padding:9px 15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#14343d;
  color:#fff;
  font-weight:700;
}

/* Compact shared size guide trigger and on-demand modal. */
.product-size-guide{
  width:100%;
  margin:10px 0 0;
}
.product-size-guide__trigger{
  width:100%;
  min-height:60px;
  padding:9px 13px;
  display:flex;
  align-items:center;
  gap:11px;
  border:1px solid rgba(20,52,61,.12);
  border-radius:17px;
  background:#fff;
  color:#14343d;
  box-shadow:0 10px 24px rgba(20,52,61,.07);
  cursor:pointer;
  text-align:right;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
.product-size-guide__trigger:hover{
  transform:translateY(-2px);
  border-color:rgba(150,84,106,.3);
  box-shadow:0 14px 28px rgba(20,52,61,.1);
}
.product-size-guide__icon{
  width:38px;
  height:38px;
  flex:0 0 38px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:rgba(150,84,106,.1);
  color:#96546a;
}
.product-size-guide__icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.product-size-guide__copy{min-width:0;display:flex;flex:1;flex-direction:column}
.product-size-guide__copy strong{font-size:.92rem;line-height:1.6}
.product-size-guide__copy small{color:#788c98;font-size:.68rem;line-height:1.6}
.product-size-guide__arrow{color:#96546a;font-size:1.1rem;line-height:1}
.product-size-guide-modal[hidden]{display:none!important}
.product-size-guide-modal{
  position:fixed;
  inset:0;
  z-index:140;
  padding:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(20,52,61,.64);
  backdrop-filter:blur(7px);
}
.product-size-guide-modal__dialog{
  position:relative;
  width:min(100%,620px);
  max-height:calc(100dvh - 36px);
  padding:20px;
  overflow:auto;
  border:1px solid rgba(255,255,255,.55);
  border-radius:24px;
  background:#fff;
  box-shadow:0 28px 80px rgba(9,28,34,.32);
  animation:size-guide-enter .24s ease both;
}
.product-size-guide-modal__dialog h2{margin:0 0 14px;color:#14343d;font-size:1.15rem;text-align:center}
.product-size-guide-modal__close{
  position:sticky;
  top:0;
  z-index:2;
  width:38px;
  height:38px;
  margin:0 0 -38px auto;
  display:grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:#14343d;
  color:#fff;
  font-size:1.35rem;
  line-height:1;
  cursor:pointer;
}
.product-size-guide-modal__image{width:min(100%,500px);height:auto;margin:auto;border-radius:14px}
body.size-guide-open{overflow:hidden!important}
@keyframes size-guide-enter{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:760px){
  .premium-contact-showroom{
    margin-bottom:24px;
    padding:28px 22px;
    grid-template-columns:1fr;
    gap:25px;
  }
  .contact-showroom-intro h2{text-align:center}
  .contact-showroom-address{text-align:right}
  .premium-contact-details p{align-items:center}
  .contact-support-section,
  .contact-form-section{margin-bottom:22px!important}
  .contact-support-section .contact-social-card,
  .contact-form-section .contact-form-card{padding:22px 18px}
  .contact-support-section .contact-social-links{gap:10px}
  .contact-support-section .contact-social-links a{min-width:0;padding:12px}
  .premium-contact-phones a{flex:1 1 100%;width:100%}
  .product-size-guide{margin-top:10px}
  .product-size-guide__trigger{width:100%;min-height:58px}
  .product-size-guide-modal{padding:10px}
  .product-size-guide-modal__dialog{max-height:calc(100dvh - 20px);padding:16px;border-radius:20px}
  .product-size-guide-modal__image{border-radius:11px}
}
@media(max-width:360px){
  .premium-contact-details p{
    align-items:flex-start;
    flex-direction:column;
    gap:2px;
  }
}
body .products-grid .product-info>*{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;justify-self:stretch!important}
body .products-grid .product-info>a{height:40px!important;min-height:40px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}
body .products-grid .product-info h3{margin:0!important;font-size:15px!important;line-height:1.55!important;text-align:center!important}
body .products-grid .product-card-colors{height:20px!important;min-height:20px!important;display:flex!important;align-items:center!important;justify-content:center!important}
body .products-grid .premium-price--card{height:40px!important;min-height:40px!important;display:flex!important;align-items:center!important;justify-content:center!important;transform:none!important}
body .products-grid .premium-price--card:before,
body .products-grid .premium-price--card:after{display:none!important;content:none!important;animation:none!important}
body .products-grid .choice-btn{height:44px!important;min-height:44px!important;width:100%!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}
body .product-card.is-out-of-stock .product-media img{filter:none!important;opacity:1!important}
body .stock-badge.out-of-stock,
body .choice-btn.disabled{background:#788C98!important;color:#fff!important}

/* The About copy stays in a contained, readable panel. */
.about-content-panel{padding:clamp(26px,4vw,54px)!important}
.about-content-panel .about-copy{width:min(100%,66ch)!important;max-width:66ch!important;margin-inline:auto!important;padding:0!important;direction:rtl!important;text-align:right!important}
.about-content-panel .about-copy p:not(.about-latin){text-align:justify!important;text-align-last:right!important;line-height:2.05!important;letter-spacing:0!important;word-spacing:normal!important;margin:0 0 1.15rem!important}

/* Complete, identical footer treatment on every customer page. */
.footer .footer-grid{align-items:start}
.footer .footer-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)!important}
.footer .footer-grid>div:nth-child(2){order:1}
.footer .footer-grid>div:nth-child(3){order:2}
.footer .footer-grid>div:first-child{
  order:3;
  grid-column:1/-1;
  width:100%;
  margin-top:8px;
  padding:24px 0 30px;
  border-top:1px solid rgba(20,52,61,.12);
}
.footer .social-row{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;flex-wrap:wrap!important}
.footer .social-dot{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;padding:6px!important;display:grid!important;place-items:center!important;background:#fff!important;border:1px solid rgba(20,52,61,.22)!important;border-radius:50%!important;overflow:hidden!important}
.footer .social-dot:before,.footer .social-dot:after{display:none!important;content:none!important}
.footer .social-dot img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;filter:none!important;transform:none!important;opacity:1!important}
.footer-showroom-summary{margin-top:14px;padding-top:12px;border-top:1px solid rgba(20,52,61,.12);font-size:12px;line-height:1.9}
.footer-showroom-summary strong{display:block;color:#14343D}
.footer-showroom-summary a{display:inline-block;margin:4px 5px 0;color:#14343D;font-weight:800;direction:ltr}

/* Catalog favorites, a clean desktop shop, and compact policy notices. */
.favorite-button{position:absolute;top:14px;left:14px;z-index:8;width:42px;height:42px;padding:0;border:1px solid rgba(20,52,61,.18);border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:#8f4e64;box-shadow:0 8px 22px rgba(20,52,61,.13);cursor:pointer;transition:transform .2s ease,background .2s ease,color .2s ease}
.favorite-button:hover{transform:translateY(-2px)}
.favorite-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.favorite-button.is-favorite{background:#8f4e64;color:#fff}
.favorite-button.is-favorite svg{fill:currentColor}
.favorite-button--detail{position:static;width:100%;height:48px;margin:12px 0 0;border-radius:999px;box-shadow:none;display:flex;align-items:center;justify-content:center}
.favorite-button--detail:after{content:'افزودن به علاقه‌مندی‌ها';margin-right:9px;font-weight:800;font-size:14px}
.favorite-button--detail.is-favorite:after{content:'ذخیره‌شده در علاقه‌مندی‌ها'}
.return-policy-notice{width:min(1180px,calc(100% - 32px));margin:0 auto 34px;padding:20px 24px;border:1px solid rgba(143,78,100,.2);border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(194,164,161,.16));box-shadow:0 12px 30px rgba(20,52,61,.08);direction:rtl;text-align:right}
.return-policy-notice h2{margin:0 0 8px;color:#14343D;font-size:19px}
.return-policy-notice p{margin:5px 0;line-height:1.95;color:#5e6263}
.return-policy-notice a{color:#8f4e64;font-weight:900;text-decoration:underline;text-underline-offset:4px}
.checkout-return-policy{width:100%;margin:0 0 22px;padding:16px 18px;border-radius:16px}
.checkout-return-policy h2{font-size:16px}.checkout-return-policy p{font-size:13px}
.return-policy-answer ol{margin:10px 0 0;padding-right:22px}.return-policy-answer li{margin:9px 0;line-height:2}
.account-favorites-list{display:grid;gap:12px}
.account-favorite-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px;border:1px solid rgba(20,52,61,.12);border-radius:16px;background:#fff}
.account-favorite-card>a{display:flex;align-items:center;gap:12px;min-width:0;color:inherit}
.account-favorite-card img{width:64px;height:78px;object-fit:cover;border-radius:12px}
.account-favorite-card span{display:grid;gap:5px}.account-favorite-card small{color:#8f4e64;font-weight:800}
.account-favorite-card>button{border:0;border-radius:999px;padding:8px 13px;background:rgba(143,78,100,.12);color:#8f4e64;cursor:pointer}
.riva-footer-logo-card img{transform:none!important;width:min(260px,100%)!important;height:auto!important;max-height:110px!important;object-fit:contain!important;image-rendering:auto!important}
@media(min-width:1101px){body:has(.shop-shell) .shop-shell{display:block!important}body:has(.shop-shell) .filter-panel{display:none!important}body:has(.shop-shell) .sort-bar{max-width:none!important}body:has(.shop-shell) .products-grid{width:100%!important}}

/* Riva Ghalb stone-color swatches. */
.color-selectors .color-swatch.is-rose-gold{background:#DEA193!important}
.product-color-dot.is-rose-gold{background:#DEA193!important}
.color-selectors .color-swatch.is-black{background:#171717!important}
.product-color-dot.is-black{background:#171717!important;border-color:#171717!important}
.color-selectors .color-swatch.is-custom,.product-color-dot.is-custom{background:var(--product-swatch,#9C7A46)!important}

/* FAQ uses the existing Riva card language and native accessible disclosure controls. */
.faq-main{width:min(920px,calc(100% - 32px));margin:0 auto 76px}
.faq-hero{margin-bottom:24px;text-align:center}
.faq-hero h1{margin:0 0 8px;color:#14343d;font-size:clamp(1.75rem,4vw,2.65rem)}
.faq-hero p{margin:0;color:#788c98}
.faq-list{display:grid;gap:13px}
.faq-item{overflow:hidden;border:1px solid rgba(123,140,152,.24);border-radius:18px;background:rgba(230,223,217,.74);box-shadow:0 12px 30px rgba(20,52,61,.08)}
.faq-item summary{position:relative;min-height:68px;padding:18px 58px 18px 22px;display:flex;align-items:center;color:#14343d;font-weight:800;cursor:pointer;list-style:none;transition:background .22s ease,color .22s ease}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:focus-visible{outline:3px solid rgba(130,77,93,.38);outline-offset:-3px}
.faq-item summary:before{content:'+';position:absolute;right:19px;top:50%;width:28px;height:28px;display:grid;place-items:center;transform:translateY(-50%);border-radius:50%;background:#824d5d;color:#fff;font-size:20px;line-height:1;transition:transform .22s ease,background .22s ease}
.faq-item[open] summary{background:rgba(194,164,161,.28)}
.faq-item[open] summary:before{content:'−';background:#14343d}
.faq-answer{padding:0 22px 22px;color:#526970;line-height:2;text-align:justify;text-align-last:right}
.faq-answer p{margin:0}

/* Shared product fullscreen gallery; the existing thumbnail gallery remains unchanged. */
.gallery-main{cursor:zoom-in}
.gallery-main #mainImage{cursor:zoom-in}
.gallery-main #mainImage:focus-visible,.zoom-badge:focus-visible{outline:3px solid #824d5d;outline-offset:-4px}
.zoom-badge{cursor:pointer;z-index:4}
.product-lightbox[hidden]{display:none!important}
.product-lightbox{position:fixed;z-index:1000;inset:0;padding:clamp(12px,2.5vw,28px);display:grid;place-items:center;background:rgba(10,24,29,.92);overscroll-behavior:contain}
.product-lightbox__dialog{position:relative;width:100%;height:100%;display:grid;grid-template-columns:56px minmax(0,1fr) 56px;grid-template-rows:minmax(0,1fr) auto;align-items:center;gap:12px;direction:ltr}
.product-lightbox__stage{grid-column:2;min-width:0;min-height:0;height:100%;display:grid;place-items:center;touch-action:pan-y}
.product-lightbox__image{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 120px);object-fit:contain;object-position:center;border-radius:12px;box-shadow:0 24px 70px rgba(0,0,0,.36);user-select:none;-webkit-user-drag:none}
.product-lightbox__close,.product-lightbox__nav{border:1px solid rgba(255,255,255,.3);background:rgba(230,223,217,.94);color:#14343d;box-shadow:0 10px 26px rgba(0,0,0,.22);cursor:pointer}
.product-lightbox__close{position:absolute;z-index:2;top:0;right:0;width:48px;height:48px;border-radius:50%;font-size:27px;line-height:1}
.product-lightbox__nav{width:52px;height:52px;border-radius:50%;font-size:30px;line-height:1}
.product-lightbox__prev{grid-column:1;grid-row:1}
.product-lightbox__next{grid-column:3;grid-row:1}
.product-lightbox__counter{grid-column:1/-1;grid-row:2;justify-self:center;margin:0;padding:5px 13px;border-radius:999px;background:rgba(230,223,217,.94);color:#14343d;font-weight:800;direction:rtl}
.product-lightbox__nav[hidden]{display:none!important}
body.product-lightbox-open{overflow:hidden!important}

@media(max-width:600px){
  .faq-main{width:min(100% - 22px,920px);margin-bottom:56px}
  .faq-item{border-radius:16px}
  .faq-item summary{min-height:64px;padding:16px 52px 16px 16px;font-size:.95rem;line-height:1.85}
  .faq-answer{padding:0 16px 18px;font-size:.9rem;line-height:1.95}
  .product-lightbox{padding:10px 8px calc(18px + env(safe-area-inset-bottom,0px))}
  .product-lightbox__dialog{grid-template-columns:46px minmax(0,1fr) 46px;gap:5px}
  .product-lightbox__image{max-height:calc(100dvh - 106px);border-radius:9px}
  .product-lightbox__nav{width:44px;height:44px;font-size:25px}
  .product-lightbox__close{top:2px;right:2px;width:44px;height:44px}
}

/* Shop additions use the existing page/card language instead of a new theme. */
.premium-shop-hero{margin:0 0 26px;padding:32px 40px;border-radius:18px;background:#fff;border:1px solid rgba(140,114,77,.12);box-shadow:0 14px 34px rgba(82,72,62,.1);text-align:center}
.premium-shop-hero .premium-kicker{font-size:12px;color:#8c724d;letter-spacing:.18em}
.premium-shop-hero h1{margin:5px 0 8px;font-size:36px;color:#3b352f}
.premium-shop-hero p{max-width:680px;margin:0 auto;color:#777}
.premium-shop-tools{margin:0 0 22px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-radius:18px;background:#fff;border:1px solid rgba(140,114,77,.12);box-shadow:0 12px 28px rgba(82,72,62,.08)}
.premium-shop-tools p{margin:2px 0 0;color:#777}
.premium-shop-search{display:flex;gap:8px;width:min(100%,440px)}
.premium-shop-search input{min-width:0;flex:1;height:44px;padding:0 15px;border:1px solid #e3ddd8;border-radius:24px;background:#faf8f6}
.premium-shop-search button{height:44px;padding:0 20px;border:0;border-radius:24px;background:#824d5d;color:#fff;cursor:pointer}
.page-shop .products-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(min-width:901px){
  body .products-grid{
    width:100%!important;
    max-width:1120px!important;
    margin-inline:auto!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    column-gap:clamp(22px,2.4vw,34px)!important;
    row-gap:clamp(28px,3vw,42px)!important;
  }
  body .products-grid .product-card{width:100%!important;max-width:none!important}
  body .products-grid .product-picture-wrap{aspect-ratio:4/5!important;height:auto!important;min-height:0!important}
  body .products-grid .product-media,
  body .products-grid .product-media img{width:100%!important;height:100%!important}
  body .products-grid .product-media img{display:block!important;object-fit:cover!important;object-position:center!important}
  body .products-grid .product-info{
    flex-basis:172px!important;
    height:172px!important;
    min-height:172px!important;
    padding:12px 14px 13px!important;
    grid-template-rows:38px 18px 38px 42px!important;
  }
  body .products-grid .product-info>a{height:38px!important;min-height:38px!important}
  body .products-grid .product-card-colors{height:18px!important;min-height:18px!important}
  body .products-grid .premium-price--card{height:38px!important;min-height:38px!important}
  body .products-grid .choice-btn{height:42px!important;min-height:42px!important}
}

/* Showroom information remains present but visually restrained. */
.premium-home-showroom{margin:54px 0;padding:30px 34px;display:grid;grid-template-columns:1fr 1fr;gap:28px;border-radius:18px;background:#fff;border:1px solid rgba(140,114,77,.12);box-shadow:0 14px 34px rgba(82,72,62,.09)}
.premium-home-showroom h2{margin:6px 0 10px;font-size:26px}.premium-home-showroom h3{margin:6px 0 12px}.premium-home-showroom address{font-style:normal;color:#6f665f;line-height:2}.premium-home-showroom-hours p{display:flex;justify-content:space-between;gap:14px;margin:8px 0;padding-bottom:8px;border-bottom:1px solid #eee}.premium-home-showroom-phones{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.premium-home-showroom-phones a{padding:7px 12px;border-radius:22px;background:#f4ece5;color:#6f5532;font-weight:800}

@media(max-width:900px){
  .premium-shop-tools{display:grid}.premium-shop-search{width:100%}
  .premium-home-showroom{grid-template-columns:1fr}
  .page-shop .products-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* Accessible controls and readable muted text, preserving the Riva palette. */
.filter-option-button{
  inline-size:100%;
  min-block-size:44px;
  padding-block:8px;
  padding-inline:10px;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  text-align:start;
  cursor:pointer;
}
.filter-option-button:focus-visible,
.product-size-guide__trigger:focus-visible,
.auth-box a:focus-visible{
  outline:3px solid rgba(150,84,106,.38);
  outline-offset:2px;
}
.product-options-title{margin:0 0 10px;color:#14343d;font-weight:800}
.auth-box p a{text-decoration:underline;text-underline-offset:3px}
.page-kicker,
.breadcrumb,
.product-summary .latin,
.product-buy-card .coming,
.premium-price__main span,
.product-size-guide__copy small,
.color-selectors>small,
.custom-length-selectors>small,
.auth-box label span{color:#52666c}
body .footer .footer-brand-copy p,
body .footer .footer-connect p,
body .footer .footer-links a,
body .footer .footer-info-strip span,
body .footer .footer-info-strip a,
body .footer .copyright{color:#52666c!important}

@media(max-width:900px){
  body .footer .footer-links a{min-height:44px!important}
}
@media(max-width:700px){
  body .products-grid .product-info{flex-basis:150px!important;height:150px!important;min-height:150px!important;padding:9px 6px 5px!important;grid-template-rows:34px 16px 30px 40px!important;gap:5px!important}
  body .products-grid .product-info>a{height:34px!important;min-height:34px!important}
  body .products-grid .product-info h3{font-size:13px!important}
  body .products-grid .product-card-colors{height:16px!important;min-height:16px!important}
  body .products-grid .premium-price--card{height:30px!important;min-height:30px!important}
  body .products-grid .choice-btn{height:40px!important;min-height:40px!important;font-size:11px!important}
  .about-content-panel{padding:24px 20px!important}.about-content-panel .about-copy p:not(.about-latin){line-height:1.95!important}
  .premium-shop-hero{padding:28px 22px}.premium-shop-hero h1{font-size:30px}.premium-shop-tools{padding:14px}.premium-shop-search button{padding-inline:15px}
  .premium-home-showroom{margin:42px 0;padding:24px 20px;gap:20px}.premium-home-showroom-hours p{font-size:12px}
  .page-shop .products-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:360px){body .products-grid .product-info{padding-inline:4px!important}body .products-grid .product-info h3{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}

.mobile-site-nav{display:none}

/* One canonical mobile navigation component. Its markup is present in every page,
   so layout and labels never depend on page-specific headers or JavaScript timing. */
@media(max-width:900px){
  body{padding-bottom:calc(102px + env(safe-area-inset-bottom,0px))!important}
  .site-header{display:none!important}
  .mobile-site-nav{
    position:fixed;
    z-index:70;
    width:min(calc(100% - 10px),500px)!important;
    height:86px;
    right:5px!important;
    left:5px!important;
    bottom:calc(5px + env(safe-area-inset-bottom,0px))!important;
    margin:0 auto!important;
    padding:5px;
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    direction:rtl;
    align-items:stretch;
    border-radius:23px!important;
    background:rgba(255,255,255,.98)!important;
    border:1px solid rgba(20,52,61,.08)!important;
    box-shadow:0 10px 28px rgba(20,52,61,.14)!important;
    overflow:hidden!important;
  }
  .mobile-site-nav__item{
    position:relative;
    min-width:0;
    height:76px;
    padding:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:0;
    border-radius:20px;
    color:#96546a;
    text-align:center;
    -webkit-tap-highlight-color:transparent;
  }
  .mobile-site-nav__icon{
    width:29px;
    height:29px;
    display:grid;
    place-items:center;
    flex:0 0 29px;
    color:inherit;
    opacity:1;
  }
  .mobile-site-nav__icon svg,
  .mobile-site-nav__icon img{width:29px;height:29px;display:block;object-fit:contain}
  .mobile-site-nav__icon svg{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
  .mobile-site-nav__icon--about{
    width:31px;
    height:31px;
    flex-basis:31px;
    background:currentColor;
    -webkit-mask:url('../Logo/riva-wing-logo-filled-mask.png') center/contain no-repeat;
    mask:url('../Logo/riva-wing-logo-filled-mask.png') center/contain no-repeat;
  }
  .mobile-site-nav__icon--about img{display:none}
  .mobile-site-nav__item[aria-current="page"]{
    color:#fff;
    background:linear-gradient(145deg,#a35f75 0%,#754256 100%);
    border:1px solid rgba(255,255,255,.34);
    box-shadow:0 9px 19px rgba(86,48,63,.34),inset 0 1px 0 rgba(255,255,255,.22);
  }
  .mobile-site-nav__cart-count{
    position:absolute;
    top:11px;
    left:calc(50% - 20px);
    min-width:16px;
    height:16px;
    padding:0 3px;
    display:grid;
    place-items:center;
    border:2px solid #fff;
    border-radius:999px;
    background:#a35f75;
    color:#fff;
    font-size:8px;
    font-weight:800;
    line-height:1;
    box-shadow:0 3px 8px rgba(86,48,63,.22);
  }
  .mobile-site-nav__item[aria-current="page"] .mobile-site-nav__cart-count{background:#fff;color:#824d5d;border-color:rgba(255,255,255,.72)}

  .mobile-home-topbar{
    width:min(calc(100% - 24px),500px)!important;
    height:62px!important;
    right:auto!important;
    left:auto!important;
    margin:0 auto!important;
    padding:6px 10px!important;
    display:grid!important;
    grid-template-columns:46px minmax(0,1fr) 46px!important;
    align-items:center!important;
    gap:8px!important;
    border-radius:19px!important;
    border:1px solid rgba(20,52,61,.1)!important;
    box-shadow:0 10px 26px rgba(20,52,61,.11)!important;
  }
  .mobile-home-topbar>a{display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important}
  .mobile-home-topbar img{width:min(138px,42vw)!important;height:48px!important;margin:auto!important;object-fit:contain!important}
  .mobile-home-topbar button{width:44px!important;height:44px!important;margin:auto!important;border-radius:50%!important}
  .mobile-home-topbar button{
    background:#824d5d!important;
    background-image:none!important;
    border:1px solid rgba(130,77,93,.2)!important;
    box-shadow:0 6px 16px rgba(130,77,93,.18)!important;
  }
  .riva-support-button,
  body.home-page .riva-support-button{
    bottom:calc(112px + env(safe-area-inset-bottom,0px))!important;
  }

  .mobile-home-menu-panel,
  .mobile-home-menu-panel.open{
    width:min(calc(100% - 40px),320px)!important;
    max-width:320px!important;
    padding:16px!important;
    border-radius:20px 0 0 20px!important;
    background:rgba(255,255,255,.985)!important;
    border-color:rgba(20,52,61,.1)!important;
    box-shadow:-18px 0 48px rgba(20,52,61,.16)!important;
  }
  .mobile-menu-head{padding:0 0 14px!important;border-color:rgba(20,52,61,.1)!important}
  .mobile-menu-head img{width:126px!important;height:44px!important;margin:auto 0!important}
  .mobile-menu-close{width:42px!important;height:42px!important;border-radius:14px!important;background:#f5f0ed!important;color:#824d5d!important;box-shadow:none!important}
  .mobile-home-menu-panel>.mobile-menu-actions{display:grid!important}
  .mobile-home-menu-panel>a{
    min-height:48px!important;
    padding:0 15px!important;
    border-radius:14px!important;
    background:#fff!important;
    color:#14343d!important;
    border:1px solid rgba(20,52,61,.1)!important;
    box-shadow:none!important;
    font-size:14px!important;
  }
  .mobile-menu-actions a{background:#824d5d!important;color:#fff!important}

  .about-main{
    width:min(100%,560px)!important;
    padding:6px 12px 38px!important;
  }
  .about-showcase{
    width:100%!important;
    margin:10px auto 46px!important;
    padding:0!important;
    display:flex!important;
    flex-direction:column!important;
    gap:22px!important;
    direction:rtl!important;
    overflow:visible!important;
  }
  .about-video-card{
    position:relative!important;
    width:min(100%,390px)!important;
    height:auto!important;
    max-height:none!important;
    aspect-ratio:704/1280!important;
    margin:0 auto!important;
    border-radius:24px!important;
    overflow:hidden!important;
    background:#f3e8e4!important;
    box-shadow:0 18px 42px rgba(35,27,20,.15)!important;
  }
  .about-feature-video{
    width:100%!important;
    height:100%!important;
    display:block!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#f3e8e4!important;
  }
  .about-video-shade{display:none!important}
  .about-content-panel{
    position:relative!important;
    overflow:hidden!important;
    width:100%!important;
    margin:0 auto!important;
    padding:28px 22px 24px!important;
    display:block!important;
    color:#14343d!important;
    border-radius:26px!important;
    background:linear-gradient(145deg,#fff8fa 0%,#f8e9ee 56%,#efd9e1 100%)!important;
    border:1px solid rgba(150,84,106,.2)!important;
    box-shadow:0 18px 40px rgba(91,48,64,.12)!important;
  }
  .about-content-panel:before{
    content:'';
    position:absolute;
    top:0;
    right:24px;
    width:70px;
    height:4px;
    border-radius:0 0 8px 8px;
    background:#96546a;
  }
  .about-wing-logo{width:62px!important;margin:0 auto 12px!important}
  .about-content-panel .about-copy{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    text-align:right!important;
  }
  .about-content-panel .about-copy h1{
    margin:0 0 9px!important;
    color:#14343d!important;
    font-size:clamp(1.35rem,6vw,1.7rem)!important;
    line-height:1.75!important;
    text-align:center!important;
  }
  .about-content-panel .about-copy .about-latin{
    margin:0 0 18px!important;
    color:#96546a!important;
    text-align:center!important;
    letter-spacing:.12em!important;
  }
  .about-content-panel .about-copy p:not(.about-latin){
    margin:0 0 16px!important;
    color:#344e55!important;
    font-size:.9rem!important;
    line-height:2.05!important;
    text-align:justify!important;
    text-align-last:right!important;
    letter-spacing:0!important;
    word-spacing:normal!important;
  }
  .about-content-panel .about-cta{
    width:min(100%,210px)!important;
    min-height:48px!important;
    margin:19px auto 0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:999px!important;
  }

  .footer{padding-bottom:12px!important}
  .footer .footer-grid{grid-template-columns:1fr!important;gap:26px!important;text-align:center!important}
  .footer .footer-grid>div{width:100%!important;min-width:0!important}
  .footer .footer-grid>div:nth-child(3){order:1!important}
  .footer .footer-grid>div:nth-child(2){order:2!important}
  .footer .footer-grid>div:first-child{order:3!important;padding-bottom:36px!important}
  .footer-showroom-summary{max-width:420px;margin:14px auto 0!important}
  .favorite-button{top:10px;left:10px;width:38px;height:38px}
  .product-picture-wrap{position:relative!important}
  .product-picture-wrap>.favorite-button{top:8px!important;left:8px!important;z-index:20!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;pointer-events:auto!important;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
  .product-picture-wrap>.favorite-button:active{transform:scale(.94)}
  .favorite-button--detail{width:100%!important;height:48px!important;min-height:48px!important;touch-action:manipulation}
  .return-policy-notice{width:calc(100% - 22px);padding:17px;margin-bottom:24px;border-radius:17px}
  .return-policy-notice h2{font-size:17px}.return-policy-notice p{font-size:13px}
  .account-favorite-card{align-items:flex-start}.account-favorite-card>button{flex:0 0 auto}
}

@media(max-width:360px){
  .mobile-site-nav{width:calc(100% - 10px)!important;right:5px!important;left:5px!important;padding-inline:5px}
  .mobile-home-topbar{width:calc(100% - 16px)!important;right:auto!important;left:auto!important;padding-inline:8px!important}
}

/* Scoped responsive corrections: About mark, footer logo, and RTL sort caret. */
@media(max-width:700px){
  .about-content-panel .about-wing-logo{
    width:92px!important;
    height:auto!important;
    max-width:30vw!important;
    display:block!important;
    position:relative!important;
    right:auto!important;
    left:12px!important;
    margin:0 auto 16px!important;
  }
}

@media(min-width:901px){
  .riva-footer-logo-card img{
    width:min(190px,100%)!important;
    height:auto!important;
    max-height:82px!important;
    object-fit:contain!important;
    object-position:center!important;
  }

  .sort-select{
    -webkit-appearance:none!important;
    appearance:none!important;
    padding:10px 18px 10px 46px!important;
    background-color:rgba(230,223,217,.44)!important;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.25 6 6.25 11 1.25' fill='none' stroke='%2314343D' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"),linear-gradient(135deg,rgba(255,255,255,.48),rgba(194,164,161,.12))!important;
    background-repeat:no-repeat,no-repeat!important;
    background-position:left 16px center,center!important;
    background-size:12px 8px,100% 100%!important;
  }
}
body .riva-service-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;direction:rtl!important;gap:0!important;border:1px solid rgba(20,52,61,.2);border-radius:18px;overflow:hidden}
body .riva-service-item{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:14px!important;padding:24px 12px!important;min-width:0;border:0!important;border-inline-end:1px solid rgba(20,52,61,.2)!important;text-align:center}
body .riva-service-item:last-child{border-inline-end:0!important}
body .riva-service-item::before,body .riva-service-item::after{display:none!important}
body .riva-service-copy{display:flex;flex-direction:column;gap:6px;min-width:0;text-align:center!important}
body .riva-service-copy strong,body .riva-service-copy span{white-space:normal!important;line-height:1.8!important;height:auto!important;margin:0!important}
body .back-top{display:grid!important;place-items:center!important;padding:0!important;cursor:pointer;z-index:80}
body .back-top::before,body .back-top::after{display:none!important}
.back-top svg,.riva-sort svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
body .site-header .cart-summary{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;min-height:46px;padding:5px 12px!important;line-height:1.5;flex-shrink:0}
body .cart-icon-wrap{position:relative;display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px}
body .cart-icon-wrap img{width:28px!important;height:28px!important;object-fit:contain}
body .cart-total{white-space:nowrap;font-size:13px}
.riva-sort{width:min(100%,290px);min-width:0;color:#14343d}
.riva-sort summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:10px 18px;border:1px solid rgba(20,52,61,.25);border-radius:26px;cursor:pointer;background:#e6dfd9}
.riva-sort summary::-webkit-details-marker{display:none}
.riva-sort svg{transition:transform .2s ease}
.riva-sort[open] svg{transform:rotate(180deg)}
.riva-sort fieldset{display:grid;gap:4px;margin:8px 0 0;padding:8px;border:1px solid rgba(20,52,61,.2);border-radius:16px;background:#f5f0eb;min-width:0}
.riva-sort legend{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}
.riva-sort label{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 10px;cursor:pointer;border-radius:10px}
.riva-sort label:has(:checked){background:#e6dfd9}
.riva-sort input{accent-color:#824d5d}
.riva-sort summary:focus-visible,.riva-sort label:focus-within{outline:2px solid #824d5d;outline-offset:3px}
body .sort-bar{align-items:flex-start!important;overflow:visible!important;height:auto!important}
#mainImage{touch-action:pan-y;user-select:none;-webkit-user-drag:none;cursor:grab}
#mainImage:active,.product-lightbox__stage:active{cursor:grabbing}
body .mobile-search-toggle{position:relative!important}
body .mobile-search-toggle[aria-expanded="true"]::before,body .mobile-search-toggle[aria-expanded="true"]::after{content:""!important;position:absolute!important;inset:auto!important;left:50%!important;top:50%!important;width:21px!important;height:2px!important;border:0!important;border-radius:2px!important;background:currentColor!important;mask:none!important;-webkit-mask:none!important;transform-origin:center!important}
body .mobile-search-toggle[aria-expanded="true"]::before{transform:translate(-50%,-50%) rotate(45deg)!important}
body .mobile-search-toggle[aria-expanded="true"]::after{transform:translate(-50%,-50%) rotate(-45deg)!important}
@media(max-width:900px){
  body .mobile-site-nav{height:58px!important;padding:4px!important;border-radius:18px!important}
  body .mobile-site-nav__item{height:48px!important;border-radius:14px!important}
  body{padding-bottom:calc(74px + env(safe-area-inset-bottom,0px))!important}
  body .back-top{bottom:calc(80px + env(safe-area-inset-bottom,0px))!important}
  body .riva-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body .riva-service-item{border-bottom:1px solid rgba(20,52,61,.2)!important}
  body .riva-service-item:nth-child(2n){border-inline-end:0!important}
  body .riva-service-item:last-child{grid-column:1/-1;border-bottom:0!important}
  .riva-sort{width:100%}
}
@media(prefers-reduced-motion:reduce){.riva-sort svg{transition:none}}
body.home-page .mobile-search-toggle[aria-expanded="true"]::before,body.home-page .mobile-search-toggle[aria-expanded="true"]::after{inset:auto!important;left:50%!important;top:50%!important;background:currentColor!important;transform-origin:center!important}
body.home-page .mobile-search-toggle[aria-expanded="true"]::before{transform:translate(-50%,-50%) rotate(45deg)!important}
body.home-page .mobile-search-toggle[aria-expanded="true"]::after{transform:translate(-50%,-50%) rotate(-45deg)!important}
body.home-page #hero .slide-background--1{background:radial-gradient(circle at 18% 22%,rgba(255,255,255,.42),transparent 31%),linear-gradient(115deg,#b7aca4 0%,#d7c9bf 42%,#f4ece5 100%)!important}
body.home-page #hero .slide-background--2{background:radial-gradient(circle at 22% 24%,rgba(255,255,255,.46),transparent 30%),linear-gradient(115deg,#b3bbb9 0%,#d7dad6 45%,#f5f0ea 100%)!important}
body.home-page #hero .slide-background--3{background:radial-gradient(circle at 20% 24%,rgba(255,255,255,.42),transparent 31%),linear-gradient(115deg,#a79c93 0%,#cdbda9 44%,#f4ece5 100%)!important}

/* Product purchase order: price, size guide, then size selection. */
.product-buy-card .product-size-guide{margin:14px 0 18px!important}

/* Shared professional footer. */
.footer-brand-copy,.footer-links,.footer-connect{min-width:0}
.footer-eyebrow{display:block;color:#bda778;font:700 .72rem/1.4 var(--font-english);letter-spacing:.2em;direction:ltr;text-align:right}
.footer-brand-copy h2,.footer-links h3,.footer-connect h3{margin:8px 0 14px}
.footer-brand-copy p,.footer-connect p{margin:0;line-height:2}
.footer-links>div{display:grid;gap:5px}
.footer-links a{display:block}
.footer-shop-link,.footer-contact-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;margin-top:18px;border-radius:999px}

@media(min-width:901px){
  .riva-footer-brand{
    height:112px!important;
    display:grid!important;
    place-items:center!important;
    background-color:#d7bbc3!important;
    background-image:radial-gradient(circle at 12% 25%,rgba(255,255,255,.28),transparent 24%),linear-gradient(120deg,#cdaab5,#ead7dc 52%,#c7a2ae)!important;
    background-size:auto!important;
    overflow:hidden!important;
  }
  .riva-footer-brand:before,.riva-footer-brand:after{content:'';position:absolute;border:1px solid rgba(255,255,255,.32);border-radius:50%;pointer-events:none}
  .riva-footer-brand:before{width:230px;height:230px;right:7%;top:-150px}
  .riva-footer-brand:after{width:170px;height:170px;left:12%;bottom:-118px}
  .riva-footer-logo-card{position:relative;z-index:1;display:grid;place-items:center}
  .riva-footer-logo-card img{width:min(164px,100%)!important;max-height:68px!important;filter:drop-shadow(0 7px 16px rgba(74,35,49,.13))!important}
  .footer{
    position:relative!important;
    padding:58px 0 0!important;
    overflow:hidden!important;
    border-top:0!important;
    background:#14343d!important;
    color:rgba(255,255,255,.72)!important;
  }
  .footer:before{content:'';position:absolute;top:0;right:0;left:0;height:1px;background:linear-gradient(90deg,transparent,rgba(215,189,131,.72),transparent)}
  .footer .footer-grid{
    grid-template-columns:minmax(0,1.45fr) minmax(180px,.72fr) minmax(240px,1fr)!important;
    gap:clamp(18px,2.2vw,30px)!important;
    align-items:stretch!important;
    text-align:right!important;
  }
  .footer .footer-grid>section,.footer .footer-grid>nav{
    order:initial!important;
    grid-column:auto!important;
    width:auto!important;
    min-height:270px!important;
    margin:0!important;
    padding:28px 30px!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:24px!important;
    background:rgba(255,255,255,.035)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
  }
  .footer-brand-copy{position:relative;overflow:hidden;background:radial-gradient(circle at 12% 100%,rgba(215,189,131,.12),transparent 42%),rgba(255,255,255,.035)!important}
  .footer-brand-copy:after{content:'';position:absolute;left:-46px;bottom:-66px;width:160px;height:160px;border:1px solid rgba(215,189,131,.14);border-radius:50%;pointer-events:none}
  .footer-brand-copy h2{color:#fff!important;font-size:clamp(1.65rem,2.4vw,2.2rem);line-height:1.45}
  .footer-brand-copy p{max-width:42ch;color:rgba(255,255,255,.68)!important}
  .footer-links h3,.footer-connect h3{color:#fff!important;font-size:1rem}
  .footer-links>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px}
  .footer-links a{position:relative;width:100%;min-height:40px;padding:7px 14px;display:flex;align-items:center;border-radius:12px;color:rgba(255,255,255,.72)!important;background:rgba(255,255,255,.025);transition:color .18s ease,background .18s ease,transform .18s ease}
  .footer-links a:before{content:'';width:5px;height:5px;margin-inline-end:9px;border-radius:50%;background:#bda778;flex:0 0 5px}
  .footer-links a:hover{color:#fff!important;background:rgba(255,255,255,.075);transform:translateX(-3px)}
  body .footer .footer-shop-link,body .footer .footer-contact-link{min-height:44px;padding:8px 18px;border:1px solid rgba(215,189,131,.42);background:rgba(255,255,255,.06);color:#fff!important;font-weight:800;transition:background .18s ease,border-color .18s ease,transform .18s ease}
  .footer-shop-link:hover,.footer-contact-link:hover{transform:translateY(-2px);border-color:#d7bd83;background:rgba(215,189,131,.13)}
  .footer-connect p{color:rgba(255,255,255,.64)!important}
  .footer .social-row{justify-content:flex-start!important;margin-top:22px!important;padding-top:20px!important;border-top:1px solid rgba(255,255,255,.08)!important}
  body .footer .social-dot,body .footer .social-dot[href*="wa.me"]{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;padding:7px!important;border-color:rgba(255,255,255,.18)!important;background:rgba(255,255,255,.09)!important;transition:transform .18s ease,background .18s ease,border-color .18s ease!important}
  body .footer .social-dot img{width:100%!important;height:100%!important;object-fit:contain!important}
  .footer .social-dot:hover{transform:translateY(-3px)!important;border-color:rgba(215,189,131,.65)!important;background:#fff!important}
  .footer a:focus-visible{outline:2px solid #d7bd83!important;outline-offset:4px!important}
  .footer .copyright{margin-top:48px;padding:18px 16px!important;border-top:1px solid rgba(255,255,255,.1)!important;color:rgba(255,255,255,.48)!important;background:rgba(7,25,30,.22)}
}

@media(max-width:900px){
  .footer .footer-grid{grid-template-columns:1fr!important;gap:28px!important;text-align:center!important}
  .footer .footer-grid>section,.footer .footer-grid>nav{width:100%!important}
  .footer-eyebrow{text-align:center}
  .footer-brand-copy p,.footer-connect p{max-width:44ch;margin-inline:auto}
  .footer-links>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 14px}
  .footer .social-row{justify-content:center!important}
}

/* Reference-led Riva footer: ornamental band, three columns and contact strip. */
body .riva-footer-brand{
  height:92px!important;
  margin-top:clamp(54px,7vw,92px)!important;
  overflow:visible!important;
  border-radius:28px 28px 0 0!important;
  background-color:#c2a4a1!important;
  background-image:radial-gradient(circle at 16px 16px,rgba(255,255,255,.24) 0 2px,transparent 3px),radial-gradient(circle at 32px 32px,rgba(255,255,255,.17) 0 3px,transparent 4px),linear-gradient(135deg,transparent 44%,rgba(255,255,255,.14) 45% 49%,transparent 50%)!important;
  background-size:82px 48px!important;
}
body .riva-footer-logo-card{
  position:absolute!important;
  z-index:2!important;
  top:0!important;
  right:50%!important;
  width:132px!important;
  height:92px!important;
  padding:16px 30px 20px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:0 0 66px 66px!important;
  background:#f8f5f3!important;
  transform:translateX(50%)!important;
  box-shadow:0 8px 20px rgba(20,52,61,.07)!important;
}
body .riva-footer-logo-card img{width:58px!important;height:58px!important;max-height:none!important;object-fit:contain!important;filter:none!important}
body .footer{
  padding:50px 0 0!important;
  border:0!important;
  background:#f8f5f3!important;
  color:#526970!important;
}
body .footer:before{content:none!important}
body .footer .footer-grid{
  grid-template-columns:minmax(220px,.86fr) minmax(360px,1.45fr) minmax(220px,.86fr)!important;
  gap:clamp(34px,5vw,76px)!important;
  align-items:start!important;
  text-align:right!important;
}
body .footer .footer-grid>section,body .footer .footer-grid>nav{
  min-height:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body .footer .footer-links{order:1!important}
body .footer .footer-brand-copy{order:2!important;overflow:visible!important;text-align:center!important}
body .footer .footer-connect{order:3!important}
body .footer .footer-main-logo{width:clamp(168px,15vw,220px)!important;height:auto!important;margin:0 auto 12px!important;object-fit:contain!important}
body .footer .footer-brand-copy:after{content:none!important}
body .footer .footer-brand-copy h2{margin:0!important;color:#14343d!important;font-size:clamp(1.22rem,1.7vw,1.55rem)!important;line-height:1.6!important}
body .footer .footer-eyebrow{margin:1px 0 12px!important;color:#96546a!important;font-size:.64rem!important;letter-spacing:.22em!important;text-align:center!important}
body .footer .footer-brand-copy p{max-width:52ch!important;margin-inline:auto!important;color:#64777d!important;font-size:.9rem!important;line-height:2.05!important}
body .footer .footer-links h3,body .footer .footer-connect h3{
  position:relative!important;
  margin:0 0 20px!important;
  padding-bottom:12px!important;
  color:#14343d!important;
  font-size:1rem!important;
}
body .footer .footer-links h3:after,body .footer .footer-connect h3:after{content:'';position:absolute;right:0;bottom:0;width:52px;height:1px;background:#c2a4a1}
body .footer .footer-links>div{display:grid!important;grid-template-columns:1fr!important;gap:2px!important}
body .footer .footer-links a{
  width:max-content!important;
  min-height:32px!important;
  padding:2px 15px 2px 0!important;
  color:#65777d!important;
  background:transparent!important;
  border-radius:0!important;
  font-size:.86rem!important;
}
body .footer .footer-links a:before{width:5px!important;height:5px!important;margin:0!important;position:absolute!important;right:0!important;top:50%!important;transform:translateY(-50%)!important;background:#c2a4a1!important}
body .footer .footer-links a:hover{color:#96546a!important;background:transparent!important;transform:translateX(-4px)!important}
body .footer .footer-connect p{max-width:30ch!important;margin:0!important;color:#65777d!important;font-size:.86rem!important;line-height:2!important}
body .footer .footer-shop-link,body .footer .footer-contact-link{
  min-height:44px!important;
  padding:7px 17px!important;
  border:1px solid rgba(150,84,106,.28)!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#824d5d!important;
  box-shadow:0 8px 20px rgba(20,52,61,.06)!important;
}
body .footer .footer-shop-link:hover,body .footer .footer-shop-link:focus-visible{border-color:#d7bd83!important;background:#d7bd83!important;color:#14343d!important;transform:translateY(-2px)!important}
body .footer .footer-contact-link:hover{border-color:#96546a!important;background:#96546a!important;color:#fff!important;transform:translateY(-2px)!important}
body .footer .footer-connect .footer-contact-link{margin-top:16px!important}
body .footer .social-row{
  margin:19px 0 0!important;
  padding:0!important;
  justify-content:flex-start!important;
  gap:9px!important;
  border:0!important;
}
body .footer .social-dot,body .footer .social-dot[href*="wa.me"]{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:#14343d!important;
  color:#fff!important;
  box-shadow:0 7px 17px rgba(20,52,61,.16)!important;
}
body .footer .social-dot svg{width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.75!important;stroke-linecap:round!important;stroke-linejoin:round!important}
body .footer .social-dot svg .social-dot__fill{fill:currentColor!important;stroke:none!important}
body .footer .social-dot:hover{background:#485d63!important;color:#fff!important;transform:translateY(-3px)!important}
body .footer .footer-info-strip{
  margin-top:44px!important;
  padding:16px 20px!important;
  display:grid!important;
  grid-template-columns:1.35fr 1fr 1fr!important;
  gap:0!important;
  border:1px solid rgba(20,52,61,.08)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 18px 42px rgba(20,52,61,.08)!important;
}
body .footer .footer-info-strip article{min-width:0;min-height:82px;padding:8px 24px;display:flex;align-items:center;gap:15px;border-inline-end:1px solid rgba(20,52,61,.11)}
body .footer .footer-info-strip article:last-child{border-inline-end:0}
body .footer .footer-info-icon{width:48px;height:48px;flex:0 0 48px;display:grid;place-items:center;border-radius:50%;background:#c2a4a1;color:#fff}
body .footer .footer-info-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body .footer .footer-info-strip article>div{min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:3px 7px}
body .footer .footer-info-strip strong{width:100%;display:block;color:#14343d;font-size:.78rem}
body .footer .footer-info-strip span,body .footer .footer-info-strip a{color:#65777d!important;font-size:.78rem;line-height:1.75}
body .footer .footer-info-strip a:hover{color:#96546a!important}
body .footer .footer-info-separator{color:#c2a4a1!important}
body .footer .copyright{margin-top:30px!important;padding:16px!important;border-top:1px solid rgba(20,52,61,.08)!important;background:#fff!important;color:#87969a!important;font-size:.78rem!important}

@media(max-width:900px){
  body .riva-footer-brand{height:76px!important;margin-top:52px!important;border-radius:22px 22px 0 0!important}
  body .riva-footer-logo-card{width:112px!important;height:76px!important;padding:13px 27px 17px!important;border-radius:0 0 56px 56px!important}
  body .riva-footer-logo-card img{width:48px!important;height:48px!important}
  body .footer{padding-top:38px!important}
  body .footer .footer-grid{grid-template-columns:1fr!important;gap:34px!important;text-align:center!important}
  body .footer .footer-links{order:2!important}
  body .footer .footer-brand-copy{order:1!important}
  body .footer .footer-connect{order:3!important}
  body .footer .footer-main-logo{width:170px!important}
  body .footer .footer-links h3:after,body .footer .footer-connect h3:after{right:50%!important;transform:translateX(50%)!important}
  body .footer .footer-links>div{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px 12px!important}
  body .footer .footer-links a{width:100%!important;min-height:44px!important;padding:7px 12px!important;justify-content:center!important;border:1px solid rgba(20,52,61,.08)!important;border-radius:12px!important;background:#fff!important}
  body .footer .footer-links a:before{position:static!important;transform:none!important;margin-inline-end:8px!important}
  body .footer .footer-connect p{margin-inline:auto!important}
  body .footer .social-row{justify-content:center!important}
  body .footer .footer-info-strip{grid-template-columns:1fr!important;margin-top:34px!important;padding:8px 16px!important}
  body .footer .footer-info-strip article{min-height:78px;padding:13px 4px;border-inline-end:0;border-bottom:1px solid rgba(20,52,61,.09)}
  body .footer .footer-info-strip article:last-child{border-bottom:0}
  body .footer .footer-info-icon{width:44px;height:44px;flex-basis:44px}
}

body .footer .footer-brand-copy p,
body .footer .footer-connect p,
body .footer .footer-links a,
body .footer .footer-info-strip span,
body .footer .footer-info-strip a,
body .footer .copyright{color:#485d63!important}
.product-info h2{margin:0 0 6px;font-size:17px;font-weight:500}
.breadcrumb,
.product-summary .latin,
.product-buy-card .coming,
.premium-price__main span,
.color-selectors>small,
.custom-length-selectors>small,
.page-kicker,
.auth-box label span{color:#485d63!important}
.auth-box p a{text-decoration:underline!important;text-underline-offset:3px}
body .breadcrumb{color:#485d63!important}
#otpRequestForm .floating-field span{color:#485d63!important}
.auth-switch a{text-decoration:underline!important;text-underline-offset:3px}
.cart-price-box,
.cart-quantity-box,
.cart-subtotal,
.summary-row{color:#53666c!important}

@media(max-width:900px){
  body.home-page .product-slider{
    height:clamp(760px,195vw,820px)!important;
    min-height:760px!important;
  }
  body.home-page .product-slider .slide-layout{
    grid-template-rows:68% 32%!important;
    grid-template-columns:minmax(0,1fr)!important;
    justify-items:center;
  }
  body.home-page .product-slider .model-image{
    max-width:min(92vw,360px)!important;
    margin-inline:auto!important;
    inset:auto!important;
    transform:none!important;
  }
  body.home-page .product-slider .product-slide:nth-child(1) .model-image,
  body.home-page .product-slider .product-slide:nth-child(4) .model-image{
    max-width:min(112vw,410px)!important;
  }
}

body .qty{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:124px;flex-shrink:0;direction:ltr}
body .qty button{width:44px!important;height:44px!important;min-width:44px;flex:0 0 44px;padding:0!important;display:grid;place-items:center}
body .qty>span{min-width:24px;text-align:center}
.cart-line>div{min-width:0}
.cart-line .qty{margin-block-start:8px}
.color-selectors .color-swatch.is-unavailable{opacity:.65;cursor:pointer}
.color-selectors .color-swatch.is-unavailable.selected{opacity:1}
.color-stock-notice:not(:empty){margin:12px 0 0;padding:9px 12px;border:1px solid rgba(143,78,100,.28);border-radius:10px;background:rgba(143,78,100,.09);color:#7b3d51;font-size:14px;font-weight:700}
@media(max-width:900px){
  body.home-page .product-slider .product-content{inset:auto!important;transform:none!important;align-items:center!important;text-align:center!important;margin-inline:auto!important;min-width:0;overflow-wrap:anywhere}
  body.home-page .product-slider .product-visual{margin-inline:auto!important;padding-inline:0!important;min-width:0}
  body.home-page .product-slider .model-circle{inset-inline-start:50%!important;inset-inline-end:auto!important;transform:translateX(50%)!important}
  body .premium-cart-item{grid-template-columns:minmax(0,1fr) minmax(134px,1fr);grid-template-areas:"img info" "price qty" "subtotal subtotal";gap:16px 12px}
  body .premium-cart-item>*{min-width:0}
  body .premium-cart-item .cart-product-image{grid-area:img}
  body .premium-cart-item .cart-product-info{grid-area:info}
  body .premium-cart-item .cart-price-box{grid-area:price;overflow-wrap:anywhere}
  body .premium-cart-item .cart-quantity-box{grid-area:qty;justify-items:end}
  body .premium-cart-item .cart-subtotal{grid-area:subtotal}
}

body:has(.shop-shell) .filter-panel{padding:14px;overflow:hidden}
body:has(.shop-shell) .filter-title{display:block;margin:0;padding:0;background:transparent!important;color:#14343d;font-size:16px;line-height:1.6;font-weight:800}
body:has(.shop-shell) .filter-group{min-width:0;margin-block-start:12px}
body:has(.shop-shell) .filter-group-label{display:block;margin-block-end:6px;color:#14343d;font-size:13px;font-weight:700}
body:has(.shop-shell) .filter-options{display:flex;flex-wrap:nowrap;gap:6px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scroll-padding-inline:8px;overscroll-behavior-inline:contain}
body:has(.shop-shell) .filter-option-button{inline-size:auto;flex:0 0 auto;min-block-size:44px;padding-block:7px;padding-inline:10px;border:1px solid rgba(20,52,61,.15);border-radius:11px;background:#fff;color:#14343d;font-size:12px;line-height:1.5;text-align:center;white-space:nowrap}
body:has(.shop-shell) .filter-option-button.active{border-color:#96546a;background:#f8f1ea;color:#653b4a;font-weight:800}
@media(max-width:900px){body:has(.shop-shell) .riva-support-button{inset-inline-start:auto!important;inset-inline-end:14px!important}}
.shipping-collect-note{margin:14px 0 0;color:#485d63;font-size:.86rem;line-height:1.8}
@media(min-width:901px){
  body .riva-footer-brand{height:4px!important;min-height:0!important;margin-top:40px!important;padding:0!important;border-radius:0!important;background:#c2a4a1!important}
  body .riva-footer-logo-card{display:none!important}
  body .footer{padding-block:32px 0!important;background:#14343d!important;color:#e4e9e7!important}
  body .footer .footer-grid{width:min(1120px,calc(100% - 80px));grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) minmax(0,.9fr)!important;gap:clamp(28px,4vw,56px)!important;padding-block:0!important}
  body .footer .footer-brand-copy{order:1!important;display:grid;grid-template-columns:80px minmax(0,1fr);grid-template-areas:"logo heading" "logo eyebrow" "copy copy" "action action";column-gap:16px;row-gap:8px;align-items:center;text-align:start!important}
  body .footer .footer-main-logo{grid-area:logo;width:80px!important;margin:0!important;filter:brightness(0) invert(1)}
  body .footer .footer-brand-copy h2{grid-area:heading;align-self:end;font-size:1.1rem!important;color:#fff!important}
  body .footer .footer-eyebrow{grid-area:eyebrow;align-self:start;text-align:start!important;margin:0!important;color:#d7bd83!important}
  body .footer .footer-brand-copy p{grid-area:copy;margin:4px 0!important;line-height:1.9!important;font-size:.84rem!important;color:#d4ddda!important}
  body .footer .footer-shop-link{grid-area:action;justify-self:start;margin-block-start:4px;min-height:44px!important;background:#d7bd83!important;border-color:#d7bd83!important;color:#14343d!important;box-shadow:none!important}
  body .footer .footer-links{order:2!important}
  body .footer .footer-connect{order:3!important}
  body .footer .footer-links h3,body .footer .footer-connect h3{margin-bottom:12px!important;padding-bottom:10px!important;color:#fff!important;font-size:.92rem!important}
  body .footer .footer-links h3:after,body .footer .footer-connect h3:after{inset-inline-start:0;right:auto;background:#c2a4a1}
  body .footer .footer-links>div{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 16px!important}
  body .footer .footer-links a{min-height:44px!important;padding-inline:0!important;color:#d4ddda!important;font-size:.82rem!important;transform:none!important}
  body .footer .footer-links a:before{display:none!important}
  body .footer .footer-links a:hover{color:#d7bd83!important}
  body .footer .footer-connect p{color:#d4ddda!important;line-height:1.9!important;font-size:.82rem!important}
  body .footer .social-row{margin-top:16px!important;gap:10px!important}
  body .footer .social-dot,body .footer .social-dot[href*="wa.me"]{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;background:#254750!important;color:#fff!important;box-shadow:none!important}
  body .footer .social-dot:hover{background:#d7bd83!important;color:#14343d!important}
  body .footer .footer-connect .footer-contact-link{margin-top:12px!important;min-height:44px!important;padding-inline:0!important;background:transparent!important;border:0!important;border-radius:0!important;color:#d7bd83!important;box-shadow:none!important}
  body .footer .footer-connect .footer-contact-link:hover{color:#fff!important;transform:none!important}
  body .footer .copyright{margin-top:24px!important;padding:12px!important;background:transparent!important;border-top-color:rgba(255,255,255,.14)!important;color:#d4ddda!important;font-size:.72rem!important}
  body .footer a:focus-visible{outline-color:#d7bd83!important}
}
@media(max-width:600px){
  body .sort-bar{display:flex!important;align-items:center!important;flex-wrap:nowrap!important;gap:8px;padding:10px 12px!important;min-height:64px!important}
  body .sort-bar>span{flex:0 0 auto;min-width:0;white-space:nowrap;font-size:.8rem;line-height:1.5}
  body .sort-bar .sort-select{flex:1 1 auto;min-width:0;max-width:100%;min-height:44px;font-size:.8rem}
}
.riva-registration-prompt{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-block:20px;padding:20px;border-radius:20px;background:#f5eee8;color:#14343d}
.riva-registration-prompt>div{flex:1 1 260px;min-width:0}
.riva-registration-prompt p{margin-block:8px 0;line-height:1.8}
.riva-registration-prompt a{display:inline-flex;align-items:center;justify-content:center;min-height:44px}
.auth-form input{min-height:48px;font-size:1rem}
.auth-form :focus-visible,.riva-registration-prompt a:focus-visible{outline:2px solid #14343d;outline-offset:4px}
.auth-form button:disabled{opacity:.65;cursor:wait}
