/*
Theme Name: Rovina
Description: متجر روفينا للعناية بالبشرة والشعر والأطفال — قالب عربي RTL مبني على Astra.
Author: Rovina
Template: astra
Version: 1.0.0
Text Domain: rovina
*/

:root{
  --rv-primary:#d11d7a; --rv-primary-2:#8e24aa; --rv-grad:linear-gradient(135deg,#e0319a 0%,#8e24aa 100%);
  --rv-dark:#2a0d33; --rv-dark-2:#43124f;
  --rv-ink:#2b2730; --rv-muted:#6f6a76; --rv-bg:#ffffff; --rv-soft:#fdf4fa; --rv-line:#f1dcea;
  --rv-green:#18b39a; --rv-orange:#f5982b; --rv-red:#e0466f; --rv-purple:#9b4fd6; --rv-blue:#2b9fe0;
  --rv-radius:18px; --rv-shadow:0 10px 30px rgba(141,36,170,.10); --rv-shadow-h:0 18px 44px rgba(141,36,170,.20);
  --rv-max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Cairo',sans-serif;color:var(--rv-ink);background:var(--rv-bg);margin:0;line-height:1.7;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.rv-container{max-width:var(--rv-max);margin:0 auto;padding:0 20px}
.rv-btn{display:inline-flex;align-items:center;gap:8px;background:var(--rv-grad);color:#fff;border:none;border-radius:999px;padding:13px 30px;font-family:inherit;font-weight:700;font-size:15px;cursor:pointer;transition:.25s;box-shadow:0 8px 20px rgba(209,29,122,.28)}
.rv-btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(209,29,122,.4);color:#fff}
.rv-btn.ghost{background:#fff;color:var(--rv-primary);border:2px solid var(--rv-primary);box-shadow:none}
.rv-btn.ghost:hover{background:var(--rv-primary);color:#fff}
.rv-sec{padding:64px 0}
.rv-sec-head{text-align:center;max-width:680px;margin:0 auto 40px}
.rv-sec-head .kicker{color:var(--rv-primary);font-weight:700;letter-spacing:.5px;font-size:14px;margin-bottom:8px}
.rv-sec-head h2{font-size:34px;font-weight:800;margin:0 0 10px;color:var(--rv-dark)}
.rv-sec-head p{color:var(--rv-muted);margin:0;font-size:16px}

/* HEADER */
.rv-header{position:sticky;top:0;z-index:1000;background:transparent;transition:.3s}
.rv-header.scrolled{background:#fff;box-shadow:0 6px 24px rgba(0,0,0,.08)}
.rv-header .rv-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0}
.rv-logo{display:flex;flex-direction:column;line-height:1;flex-shrink:0;align-items:center;text-align:center}
.rv-logo .word{font-size:30px;font-weight:900;letter-spacing:1px;width:-moz-fit-content;width:fit-content;color:var(--rv-primary)}
@supports ((-webkit-background-clip:text) or (background-clip:text)){.rv-logo .word{background:var(--rv-grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}}
.rv-logo .tag{font-size:9px;font-weight:700;letter-spacing:3px;color:var(--rv-purple);margin-top:2px}
.rv-header.transparent .rv-logo .tag{color:#f3d6ee}
.rv-nav{display:flex;gap:8px;align-items:center}
.rv-nav a{font-weight:600;font-size:15px;padding:8px 14px;border-radius:999px;color:var(--rv-ink);transition:.2s;white-space:nowrap}
.rv-header.transparent .rv-nav a{color:#fff}
.rv-nav a:hover{color:var(--rv-primary);background:var(--rv-soft)}
.rv-header.transparent .rv-nav a:hover{background:rgba(255,255,255,.15);color:#fff}
.rv-actions{display:flex;align-items:center;gap:6px}
.rv-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;cursor:pointer;color:var(--rv-ink);transition:.2s;background:transparent;border:none;position:relative}
.rv-header.transparent .rv-icon{color:#fff}
.rv-icon:hover{background:var(--rv-soft);color:var(--rv-primary)}
.rv-icon svg{width:22px;height:22px}
.rv-cart-count{position:absolute;top:4px;left:4px;background:var(--rv-primary);color:#fff;font-size:11px;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:grid;place-items:center;padding:0 4px}
.rv-burger{display:none}
.rv-search-bar{max-height:0;overflow:hidden;transition:.3s;background:#fff}
.rv-search-bar.open{max-height:90px}
.rv-search-bar form{display:flex;gap:10px;padding:14px 0}
.rv-search-bar input{flex:1;border:2px solid var(--rv-line);border-radius:999px;padding:12px 20px;font-family:inherit;font-size:15px;outline:none}
.rv-search-bar input:focus{border-color:var(--rv-primary)}

/* HERO */
.rv-hero{position:relative;overflow:hidden}
.rv-slide{position:relative;min-height:520px;display:none;align-items:center;overflow:hidden}
.rv-slide.active{display:flex;animation:rvfade .7s ease}
@keyframes rvfade{from{opacity:0}to{opacity:1}}
.rv-slide .bottles{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.rv-slide .b{position:absolute;border-radius:50%;filter:blur(6px)}
.rv-slide .b1{width:360px;height:360px;background:rgba(255,255,255,.16);right:-70px;top:-90px}
.rv-slide .b2{width:240px;height:240px;background:rgba(255,255,255,.10);left:8%;bottom:-80px}
.rv-slide .b3{width:170px;height:170px;background:rgba(255,255,255,.12);left:34%;top:26%}
.rv-slide .inner{position:relative;z-index:2;max-width:var(--rv-max);margin:0 auto;padding:64px 72px;width:100%}
.rv-slide .copy{max-width:600px;color:#fff}
.rv-slide .copy .eyebrow{display:inline-block;background:rgba(255,255,255,.20);padding:7px 18px;border-radius:999px;font-weight:700;font-size:13px;letter-spacing:1px;margin-bottom:20px;backdrop-filter:blur(4px)}
.rv-slide .copy h1{font-size:50px;line-height:1.18;font-weight:900;margin:0 0 16px;text-shadow:0 2px 18px rgba(0,0,0,.18)}
.rv-slide .copy p{font-size:19px;line-height:1.8;opacity:.96;margin:0 0 30px;max-width:520px}
.rv-slide .copy .rv-btn.ghost{background:#fff;color:var(--rv-primary);border:none;box-shadow:0 10px 26px rgba(0,0,0,.18)}
.rv-slide .copy .rv-btn.ghost:hover{transform:translateY(-2px)}
.rv-dots{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:9px;z-index:5}
.rv-dots span{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.5);cursor:pointer;transition:.25s}
.rv-dots span.active{background:#fff;width:30px;border-radius:6px}
.rv-hero-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:6;width:50px;height:50px;border-radius:50%;background:#fff;border:none;color:var(--rv-primary);font-size:28px;font-weight:700;line-height:1;cursor:pointer;display:grid;place-items:center;box-shadow:0 8px 24px rgba(0,0,0,.18);transition:.2s;padding:0}
.rv-hero-arrow:hover{background:var(--rv-primary);color:#fff;transform:translateY(-50%) scale(1.08)}
.rv-hero-arrow.prev{right:22px}
.rv-hero-arrow.next{left:22px}
@media(max-width:768px){.rv-slide{min-height:430px}.rv-slide .inner{padding:40px 24px}.rv-slide .copy h1{font-size:31px}.rv-slide .copy p{font-size:16px}.rv-hero-arrow{width:42px;height:42px;font-size:23px}.rv-hero-arrow.prev{right:10px}.rv-hero-arrow.next{left:10px}}

/* MARQUEE */
.rv-marquee{background:var(--rv-grad);color:#fff;overflow:hidden;padding:14px 0}
.rv-marquee .track{display:flex;gap:50px;width:max-content;animation:rvscroll 22s linear infinite}
.rv-marquee .track span{font-weight:700;font-size:16px;white-space:nowrap;display:flex;align-items:center;gap:8px}
@keyframes rvscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* PRODUCT TABS + GRID */
.rv-tabs-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:30px}
.rv-tabs{display:flex;gap:8px;background:var(--rv-soft);padding:6px;border-radius:999px}
.rv-tab{border:none;background:transparent;font-family:inherit;font-weight:700;font-size:15px;padding:10px 22px;border-radius:999px;cursor:pointer;color:var(--rv-muted);transition:.2s}
.rv-tab.active{background:var(--rv-grad);color:#fff;box-shadow:0 6px 16px rgba(209,29,122,.3)}
.rv-shopall{color:var(--rv-primary);font-weight:700}
.rv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.rv-card{background:#fff;border:1px solid var(--rv-line);border-radius:var(--rv-radius);overflow:hidden;transition:.28s;position:relative;display:flex;flex-direction:column}
.rv-card:hover{transform:translateY(-8px);box-shadow:var(--rv-shadow-h);border-color:transparent}
.rv-card .badge{position:absolute;top:14px;right:14px;background:var(--rv-red);color:#fff;font-weight:800;font-size:13px;padding:5px 11px;border-radius:999px;z-index:2}
.rv-card .thumb{aspect-ratio:1;overflow:hidden;background:var(--rv-soft)}
.rv-card .thumb img{width:100%;height:100%;object-fit:cover;transition:.4s}
.rv-card:hover .thumb img{transform:scale(1.06)}
.rv-card .body{padding:16px 16px 18px;display:flex;flex-direction:column;flex:1}
.rv-card .type{color:var(--rv-primary);font-size:12px;font-weight:700;margin-bottom:4px}
.rv-card .name{font-weight:700;font-size:15px;line-height:1.5;margin:0 0 12px;min-height:46px;color:var(--rv-ink)}
.rv-card .price{display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.rv-card .price .now{font-size:19px;font-weight:800;color:var(--rv-dark)}
.rv-card .price .was{font-size:14px;color:#b6aebd;text-decoration:line-through}
.rv-card .add{margin-top:auto;width:100%;justify-content:center;padding:11px}
.rv-card .add.added{background:var(--rv-green)}

/* REVIEWS */
.rv-scroller{display:flex;gap:20px;overflow-x:auto;padding:10px 4px 20px;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}
.rv-scroller::-webkit-scrollbar{display:none}
.rv-review{flex:0 0 340px;scroll-snap-align:start;background:#fff;border:2px solid var(--rv-soft);border-radius:22px;padding:24px;box-shadow:var(--rv-shadow)}
.rv-review .stars{color:#f5b301;font-size:16px;margin-bottom:10px;letter-spacing:2px}
.rv-review .txt{color:var(--rv-ink);margin:0 0 16px;font-size:15px}
.rv-review .hr-badge{display:inline-block;background:#eafaf4;color:var(--rv-green);font-size:12px;font-weight:700;padding:4px 12px;border-radius:999px;margin-bottom:14px}
.rv-review .who{display:flex;align-items:center;gap:12px}
.rv-review .who .av{width:46px;height:46px;border-radius:50%;background:var(--rv-grad);color:#fff;display:grid;place-items:center;font-weight:800;font-size:18px}
.rv-review .who b{display:block;font-size:14px}
.rv-review .who span{font-size:12px;color:var(--rv-muted)}

/* DERMA BANNER */
.rv-derma{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;border-radius:26px;overflow:hidden;box-shadow:var(--rv-shadow);min-height:340px}
.rv-derma .pic{background:linear-gradient(135deg,#cfeee9,#a7d8ef);position:relative;display:grid;place-items:center}
.rv-derma .pic .lab{font-size:120px;opacity:.85}
.rv-derma .txt{background:var(--rv-grad);color:#fff;padding:54px 48px;display:flex;flex-direction:column;justify-content:center}
.rv-derma .txt .small{font-size:16px;opacity:.9;font-weight:600}
.rv-derma .txt h2{font-size:40px;font-weight:900;margin:8px 0 0;line-height:1.25}

/* CATEGORIES */
.rv-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.rv-cat{position:relative;border-radius:22px;overflow:hidden;min-height:280px;display:flex;align-items:flex-end;padding:26px;color:#fff;transition:.3s}
.rv-cat:hover{transform:translateY(-6px);box-shadow:var(--rv-shadow-h)}
.rv-cat.skin{background:linear-gradient(160deg,#18b39a,#0a8f9e)}
.rv-cat.hair{background:linear-gradient(160deg,#2b9fe0,#2456c4)}
.rv-cat.baby{background:linear-gradient(160deg,#e0319a,#9b4fd6)}
.rv-cat .ic{position:absolute;top:24px;left:24px;font-size:46px;opacity:.5}
.rv-cat h3{font-size:24px;font-weight:800;margin:0}
.rv-cat span{opacity:.92;font-size:14px}
.rv-cat .go{margin-top:10px;font-weight:700;font-size:14px;display:inline-flex;gap:6px;align-items:center}

/* ROUTINES */
.rv-routine{flex:0 0 300px;scroll-snap-align:start;background:#fff;border:1px solid var(--rv-line);border-radius:22px;overflow:hidden;box-shadow:var(--rv-shadow);transition:.28s}
.rv-routine:hover{transform:translateY(-6px);box-shadow:var(--rv-shadow-h)}
.rv-routine .top{height:150px;display:grid;place-items:center;font-size:64px;color:#fff}
.rv-routine .top.a{background:linear-gradient(135deg,#18b39a,#0a8f9e)}
.rv-routine .top.b{background:linear-gradient(135deg,#2b9fe0,#2456c4)}
.rv-routine .top.c{background:linear-gradient(135deg,#e0319a,#8e24aa)}
.rv-routine .top.d{background:linear-gradient(135deg,#9b4fd6,#6a3fc0)}
.rv-routine .info{padding:20px}
.rv-routine .info h3{margin:0 0 8px;font-size:18px;font-weight:800;color:var(--rv-dark)}
.rv-routine .info p{margin:0 0 16px;color:var(--rv-muted);font-size:14px}

/* SERVICE FEATURES */
.rv-feats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.rv-feat{text-align:center;padding:30px 18px;border-radius:20px;background:var(--rv-soft);transition:.25s}
.rv-feat:hover{background:#fff;box-shadow:var(--rv-shadow);transform:translateY(-4px)}
.rv-feat .ic{font-size:38px;margin-bottom:10px}
.rv-feat b{display:block;font-size:16px;color:var(--rv-dark);margin-bottom:4px}
.rv-feat span{font-size:13px;color:var(--rv-muted)}

/* DERMA OPINIONS + INFLUENCERS share card */
.rv-quote{flex:0 0 330px;scroll-snap-align:start;background:#fff;border:2px solid var(--rv-soft);border-radius:22px;padding:26px;box-shadow:var(--rv-shadow)}
.rv-quote .mark{font-size:46px;color:var(--rv-line);line-height:.6;font-weight:900}
.rv-quote p{font-size:15px;color:var(--rv-ink);margin:6px 0 18px}
.rv-quote .who{display:flex;align-items:center;gap:12px}
.rv-quote .who .av{width:50px;height:50px;border-radius:50%;background:var(--rv-grad);color:#fff;display:grid;place-items:center;font-weight:800}
.rv-quote .who b{display:block;font-size:14px}
.rv-quote .who span{font-size:12px;color:var(--rv-primary);font-weight:600}
.rv-quote .stars{color:#f5b301;font-size:14px;margin-top:2px}

/* SHINE SECTION */
.rv-shine{text-align:center;background:radial-gradient(circle at 50% 0%,var(--rv-soft),#fff 60%)}
.rv-shine .kicker{color:var(--rv-primary);font-weight:800;font-size:18px;margin-bottom:6px}
.rv-shine h2{font-size:38px;font-weight:900;color:var(--rv-dark);max-width:760px;margin:0 auto 14px;line-height:1.3}
.rv-shine p{color:var(--rv-muted);max-width:560px;margin:0 auto 36px;font-size:16px}

/* FOOTER */
.rv-footer{background:var(--rv-grad);color:#fff;padding:56px 0 0;margin-top:30px}
.rv-footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:32px}
.rv-footer h4{font-size:17px;font-weight:800;margin:0 0 16px}
.rv-footer .word{font-size:26px;font-weight:900;letter-spacing:1px;color:#fff}
.rv-footer .tag{font-size:9px;letter-spacing:3px;color:#f3d6ee;margin:2px 0 14px}
.rv-footer p{opacity:.92;font-size:14px;line-height:1.8}
.rv-footer ul{list-style:none;padding:0;margin:0}
.rv-footer ul li{margin-bottom:10px}
.rv-footer ul a{opacity:.92;font-size:14px;transition:.2s}
.rv-footer ul a:hover{opacity:1;padding-right:5px}
.rv-footer .more{display:inline-block;margin-top:12px;border:2px solid rgba(255,255,255,.6);padding:8px 20px;border-radius:999px;font-weight:700;font-size:14px}
.rv-news{display:flex;gap:8px;margin:14px 0 8px}
.rv-news input{flex:1;border:none;border-radius:999px;padding:12px 18px;font-family:inherit;outline:none;color:var(--rv-ink)}
.rv-news button{background:var(--rv-dark);color:#fff;border:none;border-radius:999px;padding:0 22px;font-family:inherit;font-weight:700;cursor:pointer}
.rv-footer .tiny{font-size:12px;opacity:.8}
.rv-footer .bottom{border-top:1px solid rgba(255,255,255,.25);margin-top:40px;padding:22px 0;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px}
.rv-social{display:flex;gap:10px}
.rv-social a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.18);display:grid;place-items:center;transition:.2s}
.rv-social a:hover{background:#fff;color:var(--rv-primary)}
.rv-social svg{width:18px;height:18px}

/* generic page wrap */
.rv-page{max-width:var(--rv-max);margin:0 auto;padding:46px 20px;min-height:50vh}
.rv-page h1.entry-title,.rv-page .entry-title{color:var(--rv-dark)}
.woocommerce span.onsale{background:var(--rv-primary)!important}
.woocommerce .button,.woocommerce a.button,.woocommerce button.button{background:var(--rv-grad)!important;color:#fff!important;border-radius:999px!important}
.woocommerce ul.products li.product .price{color:var(--rv-dark)}

/* RESPONSIVE */
@media(max-width:1024px){.rv-grid{grid-template-columns:repeat(3,1fr)}.rv-feats{grid-template-columns:repeat(2,1fr)}.rv-slide .copy h1{font-size:38px}.rv-footer .cols{grid-template-columns:1fr 1fr}}
@media(max-width:768px){
 .rv-nav{display:none;position:absolute;top:100%;right:0;left:0;background:#fff;flex-direction:column;align-items:stretch;padding:10px;box-shadow:0 12px 30px rgba(0,0,0,.12)}
 .rv-nav.open{display:flex}
 .rv-nav a{color:var(--rv-ink)!important}
 .rv-burger{display:grid}
 .rv-header,.rv-header.transparent{background:#fff}
 .rv-header.transparent .rv-logo .tag{color:var(--rv-purple)}
 .rv-header.transparent .rv-icon{color:var(--rv-ink)}
 .rv-grid{grid-template-columns:repeat(2,1fr);gap:14px}
 .rv-derma,.rv-cats{grid-template-columns:1fr}
 .rv-slide{min-height:480px}
 .rv-slide .copy h1{font-size:30px}
 .rv-slide .copy p{font-size:17px}
 .rv-slide .bottles{opacity:.25}
 .rv-sec{padding:46px 0}
 .rv-sec-head h2{font-size:26px}
 .rv-footer .cols{grid-template-columns:1fr}
 .rv-card .name{min-height:auto}
}
@media(max-width:480px){.rv-grid{grid-template-columns:1fr 1fr;gap:12px}.rv-feats{grid-template-columns:1fr}}

.rv-cart-count[data-count="0"]{display:none}

/* ===== INNER PAGES ===== */
.rv-phero{background:var(--rv-grad);color:#fff;text-align:center;padding:64px 20px 56px}
.rv-phero .crumb{font-size:13px;opacity:.9;margin-bottom:10px}
.rv-phero .crumb a{color:#fff}
.rv-phero h1{font-size:38px;font-weight:900;margin:0 0 8px}
.rv-phero p{margin:0;opacity:.95;font-size:17px}
.rv-about{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.rv-about h2{font-size:30px;font-weight:900;color:var(--rv-dark);margin:0 0 14px}
.rv-about p{color:var(--rv-muted);font-size:16px;margin:0 0 14px;line-height:1.9}
.rv-about .pic{background:var(--rv-grad);border-radius:26px;min-height:320px;display:grid;place-items:center;color:#fff;font-size:96px;box-shadow:var(--rv-shadow)}
.rv-cta-band{background:var(--rv-soft);border-radius:26px;text-align:center;padding:48px 24px}
.rv-cta-band h2{font-size:28px;font-weight:900;color:var(--rv-dark);margin:0 0 10px}
.rv-cta-band p{color:var(--rv-muted);margin:0 0 22px}
.rv-contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px;align-items:start}
.rv-cinfo{background:var(--rv-grad);color:#fff;border-radius:24px;padding:34px}
.rv-cinfo h3{margin:0 0 20px;font-size:22px;font-weight:800}
.rv-cinfo .row{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px}
.rv-cinfo .row .ic{font-size:22px;flex-shrink:0}
.rv-cinfo .row b{display:block;font-size:15px;margin-bottom:2px}
.rv-cinfo .row span{opacity:.92;font-size:14px}
.rv-cinfo .soc{display:flex;gap:10px;margin-top:8px}
.rv-cinfo .soc a{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.18);display:grid;place-items:center;font-size:17px;color:#fff}
.rv-cinfo .soc a:hover{background:#fff;color:var(--rv-primary)}
.rv-form{background:#fff;border:2px solid var(--rv-soft);border-radius:24px;padding:30px;box-shadow:var(--rv-shadow)}
.rv-form .fld{margin-bottom:16px}
.rv-form label{display:block;font-weight:700;font-size:14px;margin-bottom:6px;color:var(--rv-dark)}
.rv-form input,.rv-form textarea{width:100%;border:2px solid var(--rv-line);border-radius:14px;padding:13px 16px;font-family:inherit;font-size:15px;outline:none;transition:.2s}
.rv-form input:focus,.rv-form textarea:focus{border-color:var(--rv-primary)}
.rv-form textarea{min-height:130px;resize:vertical}
.rv-form .hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.rv-notice{border-radius:14px;padding:14px 18px;margin-bottom:22px;font-weight:700}
.rv-notice.ok{background:#eafaf4;color:var(--rv-green)}
.rv-notice.err{background:#fdeef2;color:var(--rv-red)}
.rv-row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:768px){.rv-about,.rv-contact-grid,.rv-row2{grid-template-columns:1fr}.rv-phero{padding:48px 20px 40px}.rv-phero h1{font-size:28px}.rv-about .pic{min-height:220px;font-size:70px}}
/* ===== PRODUCT ARCHIVE (shop + categories) ===== */
.rv-catnav{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:32px}
.rv-catnav a{padding:9px 20px;border-radius:999px;background:var(--rv-soft);color:var(--rv-muted);font-weight:700;font-size:14px;transition:.2s}
.rv-catnav a:hover{color:var(--rv-primary)}
.rv-catnav a.active{background:var(--rv-grad);color:#fff;box-shadow:0 6px 16px rgba(209,29,122,.3)}
.rv-pagination{display:flex;justify-content:center;margin-top:38px}
.rv-pagination ul.page-numbers{display:flex;gap:8px;border:none;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.rv-pagination ul.page-numbers li{margin:0}
.rv-pagination a.page-numbers,.rv-pagination span.page-numbers{display:inline-grid;place-items:center;min-width:42px;height:42px;padding:0 12px;border-radius:12px;background:var(--rv-soft);color:var(--rv-ink);font-weight:700;text-decoration:none}
.rv-pagination a.page-numbers:hover{color:var(--rv-primary)}
.rv-pagination span.current{background:var(--rv-grad)!important;color:#fff!important}
/* ===== SHOP LAYOUT (sidebar + sort) ===== */
.rv-shop{display:grid;grid-template-columns:260px 1fr;gap:30px;align-items:start}
.rv-side{background:#fff;border:1px solid var(--rv-line);border-radius:20px;padding:22px;position:sticky;top:90px}
.rv-side .rv-fgroup{margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--rv-line)}
.rv-side .rv-fgroup:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}
.rv-side h4{margin:0 0 14px;font-size:15px;font-weight:800;color:var(--rv-dark)}
.rv-catlist{display:flex;flex-direction:column;gap:6px}
.rv-catlist a{font-size:14px;font-weight:600;color:var(--rv-muted);padding:8px 12px;border-radius:10px;transition:.2s}
.rv-catlist a:hover{background:var(--rv-soft);color:var(--rv-primary)}
.rv-catlist a.active{background:var(--rv-grad);color:#fff}
.rv-price-row{display:flex;align-items:center;gap:8px}
.rv-price-row input{width:100%;border:2px solid var(--rv-line);border-radius:10px;padding:9px 10px;font-family:inherit;font-size:14px;outline:none}
.rv-price-row input:focus{border-color:var(--rv-primary)}
.rv-price-row span{color:var(--rv-muted)}
.rv-check{display:flex;align-items:center;gap:9px;cursor:pointer;font-size:14px;font-weight:600;color:var(--rv-ink)}
.rv-check input{width:18px;height:18px;accent-color:var(--rv-primary)}
.rv-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-bottom:22px;background:var(--rv-soft);border-radius:14px;padding:12px 18px}
.rv-toolbar .cnt{font-weight:700;color:var(--rv-dark);font-size:14px}
.rv-toolbar .cnt b{color:var(--rv-primary)}
.rv-sortwrap{display:flex;align-items:center;gap:8px}
.rv-sortwrap label{font-size:13px;color:var(--rv-muted);font-weight:700}
.rv-sortwrap select{border:2px solid var(--rv-line);border-radius:10px;padding:8px 12px;font-family:inherit;font-size:14px;font-weight:600;color:var(--rv-ink);background:#fff;cursor:pointer;outline:none}
.rv-sortwrap select:focus{border-color:var(--rv-primary)}
.rv-filter-toggle{display:none}
.rv-empty{text-align:center;color:var(--rv-muted);padding:50px 0;grid-column:1/-1}
@media(max-width:992px){.rv-shop{grid-template-columns:1fr}.rv-side{position:static;display:none}.rv-side.open{display:block}.rv-filter-toggle{display:inline-flex}}
/* ===== CART DRAWER ===== */
.rv-drawer-overlay{position:fixed;inset:0;background:rgba(42,26,46,.45);opacity:0;visibility:hidden;transition:.3s;z-index:99998}
.rv-drawer-overlay.open{opacity:1;visibility:visible}
.rv-drawer{position:fixed;top:0;bottom:0;left:0;width:390px;max-width:92vw;background:#fff;z-index:99999;transform:translateX(-100%);transition:transform .34s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:0 0 60px rgba(0,0,0,.22)}
.rv-drawer.open{transform:translateX(0)}
.rv-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;background:var(--rv-grad)}
.rv-drawer-head h3{margin:0;color:#fff;font-size:19px;font-weight:800}
.rv-drawer-close{background:#fff!important;border:none!important;color:var(--rv-primary)!important;width:38px!important;height:38px!important;min-width:38px!important;max-width:38px!important;padding:0!important;margin:0!important;border-radius:50%!important;font-size:22px;font-weight:700;cursor:pointer;line-height:1;display:grid!important;place-items:center;box-shadow:0 4px 14px rgba(0,0,0,.18);flex:0 0 auto;box-sizing:border-box!important}
.rv-drawer-close:hover{background:#ffe6f3}
.rv-drawer-dyn{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}
.rv-drawer-items{flex:1;overflow-y:auto;padding:8px 18px}
.rv-ditem{display:flex;gap:12px;align-items:center;padding:14px 26px 14px 0;border-bottom:1px solid var(--rv-line);position:relative}
.rv-ditem-thumb img{width:64px;height:64px;object-fit:cover;border-radius:12px;display:block}
.rv-ditem-info{flex:1}
.rv-ditem-info .nm{display:block;font-weight:700;font-size:14px;color:var(--rv-dark);margin-bottom:5px;line-height:1.4}
.rv-ditem-info .pr{color:var(--rv-muted);font-size:13px}
.rv-ditem-rm{position:absolute;top:14px;left:0;color:var(--rv-muted);font-size:22px;text-decoration:none;line-height:1;width:24px;height:24px;text-align:center}
.rv-ditem-rm:hover{color:#e0319a}
.rv-drawer-foot{padding:18px 20px;border-top:1px solid var(--rv-line);background:var(--rv-soft)}
.rv-drawer-foot .row{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:15px;font-weight:700;color:var(--rv-dark)}
.rv-drawer-foot .row b{color:var(--rv-primary);font-size:19px}
.rv-btn.block{display:block;width:100%;text-align:center;margin-bottom:10px}
.rv-btn.ghost.block{background:transparent;border:2px solid var(--rv-primary);color:var(--rv-primary)}
.rv-drawer-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:50px 30px;color:var(--rv-muted);text-align:center}
.rv-drawer-empty .ic{width:80px;height:80px;border-radius:50%;background:var(--rv-soft);display:grid;place-items:center;font-size:30px;color:var(--rv-primary)}
@media(max-width:480px){.rv-drawer{width:100%;max-width:100%}}
/* SINGLE PRODUCT */
.single-product div.product{max-width:var(--rv-max);margin:36px auto 10px;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:48px}
.single-product div.product .woocommerce-product-gallery{margin:0!important;width:100%!important;background:var(--rv-soft);border-radius:24px;padding:18px;box-shadow:0 16px 40px rgba(209,29,122,.10)}
.single-product div.product .woocommerce-product-gallery img{border-radius:16px}
.single-product div.product .woocommerce-product-gallery__trigger{background:#fff;border-radius:50%;box-shadow:0 4px 12px rgba(0,0,0,.12)}
.single-product div.product .summary{margin:0!important;width:100%!important;display:flex;flex-direction:column}
.single-product .product_title{font-size:34px!important;font-weight:900!important;color:var(--rv-dark)!important;line-height:1.3;margin:0 0 14px!important}
.single-product .summary .price{color:var(--rv-primary)!important;font-size:28px!important;font-weight:900!important;margin:0 0 18px!important}
.single-product .summary .price del{color:var(--rv-muted)!important;font-size:19px!important;font-weight:600!important;opacity:.7;margin-left:8px}
.single-product .summary .price ins{text-decoration:none}
.single-product .woocommerce-product-details__short-description{color:var(--rv-muted);font-size:16px;line-height:1.9;margin-bottom:22px;border-bottom:1px solid var(--rv-line);padding-bottom:20px}
.single-product .summary form.cart{display:flex;align-items:center;gap:12px;margin:0 0 22px!important}
.single-product .summary form.cart .quantity{display:inline-flex}
.single-product .summary form.cart .quantity input.qty{width:72px;height:54px;border:2px solid var(--rv-line);border-radius:14px;text-align:center;font-size:16px;font-weight:700;color:var(--rv-dark);background:#fff}
.single-product .summary form.cart button.single_add_to_cart_button{background:var(--rv-grad)!important;color:#fff!important;border:none!important;border-radius:999px!important;padding:16px 44px!important;font-size:16px!important;font-weight:700!important;box-shadow:0 12px 28px rgba(209,29,122,.30);transition:.2s;cursor:pointer}
.single-product .summary form.cart button.single_add_to_cart_button:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(209,29,122,.40)}
.single-product .summary .product_meta{font-size:14px;color:var(--rv-muted);border-top:1px solid var(--rv-line);padding-top:18px;line-height:2}
.single-product .summary .product_meta a{color:var(--rv-primary);text-decoration:none}
.single-product .summary .product_meta .sku_wrapper,.single-product .summary .product_meta .posted_in{display:block}
.single-product span.onsale{background:var(--rv-grad)!important;color:#fff!important;border-radius:999px!important;padding:7px 16px!important;font-weight:700!important;min-height:auto!important;min-width:auto!important;line-height:1.4!important;top:14px!important;right:14px!important;left:auto!important;position:absolute;z-index:3}
.single-product .woocommerce-tabs{grid-column:1/-1;max-width:var(--rv-max);margin:50px auto 0;padding:0 20px}
.single-product .woocommerce-tabs ul.tabs{border:none!important;padding:0!important;display:flex;gap:10px;flex-wrap:wrap;margin:0 0 24px!important}
.single-product .woocommerce-tabs ul.tabs:before{display:none!important}
.single-product .woocommerce-tabs ul.tabs li{background:var(--rv-soft)!important;border:none!important;border-radius:999px!important;margin:0!important;padding:0!important}
.single-product .woocommerce-tabs ul.tabs li:before,.single-product .woocommerce-tabs ul.tabs li:after{display:none!important}
.single-product .woocommerce-tabs ul.tabs li a{color:var(--rv-muted)!important;font-weight:700!important;padding:11px 24px!important;display:block}
.single-product .woocommerce-tabs ul.tabs li.active{background:var(--rv-grad)!important}
.single-product .woocommerce-tabs ul.tabs li.active a{color:#fff!important}
.single-product .woocommerce-tabs .panel{background:#fff;border:1px solid var(--rv-line);border-radius:20px;padding:30px;color:var(--rv-dark);line-height:1.9}
.single-product .woocommerce-tabs .panel h2{color:var(--rv-dark);font-weight:800;font-size:22px}
.single-product .woocommerce-tabs .panel ul{padding-right:20px}
.single-product .related.products,.single-product .upsells.products{max-width:var(--rv-max);margin:60px auto 30px;padding:0 20px}
.single-product .related.products>h2,.single-product .upsells.products>h2{font-size:28px;font-weight:900;color:var(--rv-dark);margin-bottom:24px;text-align:center}
@media(max-width:860px){.single-product div.product{grid-template-columns:1fr;gap:26px}.single-product .product_title{font-size:27px!important}}
/* RELATED BIGGER */
.single-product .related.products>h2,.single-product .upsells.products>h2{font-size:32px!important;margin-bottom:34px!important}
.single-product .related.products ul.products,.single-product .upsells.products ul.products{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:30px!important;margin:0!important}
.single-product .related.products ul.products li.product,.single-product .upsells.products ul.products li.product{width:auto!important;margin:0!important;float:none!important;background:#fff;border:1px solid var(--rv-line);border-radius:22px;padding:16px;box-shadow:0 12px 30px rgba(209,29,122,.08);transition:.25s;text-align:center}
.single-product .related.products ul.products li.product:hover,.single-product .upsells.products ul.products li.product:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(209,29,122,.16)}
.single-product .related.products ul.products li.product a img,.single-product .upsells.products ul.products li.product a img{border-radius:16px!important;margin-bottom:14px!important;width:100%!important;height:auto!important}
.single-product .related.products ul.products li.product .woocommerce-loop-product__title,.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title{font-size:17px!important;font-weight:700!important;color:var(--rv-dark)!important;padding:0 6px!important}
.single-product .related.products ul.products li.product .price,.single-product .upsells.products ul.products li.product .price{color:var(--rv-primary)!important;font-weight:800!important;font-size:18px!important;display:block;margin:8px 0 12px}
.single-product .related.products ul.products li.product .price del,.single-product .upsells.products ul.products li.product .price del{color:var(--rv-muted)!important;font-weight:600!important;font-size:14px!important;opacity:.7}
.single-product .related.products ul.products li.product .button,.single-product .upsells.products ul.products li.product .button{background:var(--rv-grad)!important;color:#fff!important;border-radius:999px!important;padding:11px 26px!important;font-weight:700!important;font-size:14px!important;display:inline-block;border:none!important}
.single-product .related.products ul.products li.product .onsale,.single-product .upsells.products ul.products li.product .onsale{background:var(--rv-grad)!important;color:#fff!important;border-radius:999px!important;padding:5px 13px!important;min-height:auto!important;min-width:auto!important;line-height:1.4!important;top:22px!important;right:22px!important;left:auto!important}
@media(max-width:860px){.single-product .related.products ul.products,.single-product .upsells.products ul.products{grid-template-columns:repeat(2,1fr)!important;gap:18px!important}}
@media(max-width:480px){.single-product .related.products ul.products,.single-product .upsells.products ul.products{grid-template-columns:1fr!important}}
/* RELATED FIX */
.single-product .related.products ul.products li.product,.single-product .upsells.products ul.products li.product{display:flex!important;flex-direction:column;height:100%}
.single-product .related.products ul.products li.product>a:first-of-type,.single-product .upsells.products ul.products li.product>a:first-of-type{flex:0 0 auto}
.single-product .related.products ul.products li.product .price,.single-product .upsells.products ul.products li.product .price{margin-top:auto}
.single-product .related.products ul.products li.product .woocommerce-loop-product__title,.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title{min-height:46px;display:flex;align-items:center;justify-content:center}
.single-product .related.products ul.products li.product .button,.single-product .upsells.products ul.products li.product .button{white-space:nowrap;width:auto;margin:0 auto!important}
.single-product .related.products ul.products li.product a img,.single-product .upsells.products ul.products li.product a img{aspect-ratio:1/1;object-fit:cover}
/* WC LOOP GRID */
.woocommerce ul.products:not(.related ul.products):not(.upsells ul.products){display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin:0}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important}
@media(max-width:1024px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr)!important}}
@media(max-width:768px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important;gap:14px!important}.rv-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:480px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)!important;gap:12px!important}.rv-grid{grid-template-columns:repeat(2,1fr)!important}}
/* RELATED REASSERT */
@media(max-width:768px){.single-product .related.products ul.products,.single-product .upsells.products ul.products{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:480px){.single-product .related.products ul.products,.single-product .upsells.products ul.products{grid-template-columns:1fr!important}}

/* MOBILE HEADER FIX */
@media(min-width:769px){#rvBurger{display:none!important}}
@media(max-width:768px){
  .rv-header .rv-bar{gap:6px;padding:10px 0;flex-wrap:nowrap;position:relative}
  .rv-logo .word{font-size:23px}
  .rv-logo .tag{font-size:6.5px;letter-spacing:1.5px}
  .rv-actions{gap:0}
  .rv-icon{width:38px;height:38px}
  #rvBurger{display:grid!important}
  .rv-nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;background:#fff;gap:0;padding:0 16px;max-height:0;overflow:hidden;box-shadow:0 16px 30px rgba(0,0,0,.12);transition:max-height .3s ease,padding .3s ease;z-index:1001}
  .rv-nav.open{max-height:78vh;overflow:auto;padding:8px 16px;border-top:1px solid var(--rv-line)}
  .rv-nav a{padding:13px 6px;border-bottom:1px solid var(--rv-line);font-size:16px;border-radius:0;text-align:right}
  .rv-nav a:last-child{border-bottom:none}
}
/* DRAWER HEAD MOBILE */
@media(max-width:480px){.rv-drawer-head{padding:16px 18px}.rv-drawer-head h3{font-size:18px}}

/* HERO ARROW CHEVRON FIX */
.rv-hero-arrow{font-size:0!important}
.rv-hero-arrow::before{content:'';display:block;width:11px;height:11px;border-top:3px solid currentColor;border-right:3px solid currentColor;border-radius:1px;box-sizing:border-box}
.rv-hero-arrow.prev::before{transform:rotate(-135deg);position:relative;right:-2px}
.rv-hero-arrow.next::before{transform:rotate(45deg);position:relative;left:-2px}
@media(max-width:768px){.rv-hero-arrow::before{width:9px;height:9px;border-top-width:2.5px;border-right-width:2.5px}}
/* ICON BTN RESET */
button.rv-icon{padding:0!important;box-sizing:border-box!important;min-width:0!important}

/* SCROLL REVEAL */
@media (prefers-reduced-motion: no-preference){
  .rv-reveal{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.2,.6,.2,1),transform .7s cubic-bezier(.2,.6,.2,1);will-change:opacity,transform}
  .rv-reveal.rv-in{opacity:1;transform:none}
  .rv-reveal.d1{transition-delay:.08s}.rv-reveal.d2{transition-delay:.16s}.rv-reveal.d3{transition-delay:.24s}.rv-reveal.d4{transition-delay:.32s}
}
.rv-hero,.rv-hero *{opacity:1!important}
/* THANK YOU */
.rv-thankyou{max-width:760px;margin:10px auto 34px;background:var(--rv-grad);color:#fff;border-radius:26px;padding:48px 36px;text-align:center;box-shadow:0 20px 50px rgba(209,29,122,.22)}
.rv-ty-check{width:84px;height:84px;border-radius:50%;background:rgba(255,255,255,.18);display:grid;place-items:center;margin:0 auto 22px}
.rv-ty-check svg{width:44px;height:44px;stroke:#fff;stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round}
.rv-thankyou h1{color:#fff;font-size:32px;font-weight:900;margin:0 0 12px}
.rv-thankyou p{color:#ffe6f3;font-size:17px;line-height:1.9;margin:0 auto 26px;max-width:520px}
.rv-ty-meta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:28px}
.rv-ty-meta>div{background:rgba(255,255,255,.14);border-radius:16px;padding:14px 26px;min-width:150px}
.rv-ty-meta span{display:block;font-size:13px;color:#ffe6f3;margin-bottom:4px}
.rv-ty-meta b{font-size:19px;font-weight:800;color:#fff}
.rv-thankyou .rv-btn{background:#fff!important;color:var(--rv-primary)!important;box-shadow:0 10px 24px rgba(0,0,0,.16)}
.woocommerce-order .woocommerce-thankyou-order-received{display:none}
.woocommerce-order .woocommerce-order-overview{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;list-style:none;max-width:760px;margin:0 auto 26px;padding:0;border:none}
.woocommerce-order .woocommerce-order-overview li{background:var(--rv-soft);border-radius:14px;padding:12px 20px;border:none!important;font-size:13px;color:var(--rv-muted);text-align:center}
.woocommerce-order .woocommerce-order-overview li strong{display:block;color:var(--rv-dark);font-size:15px;margin-top:4px}
.woocommerce-order table.shop_table{max-width:760px;margin:0 auto 26px;border-radius:16px;overflow:hidden;border:1px solid var(--rv-line)!important}
.woocommerce-order table.shop_table th,.woocommerce-order table.shop_table td{padding:14px}
.woocommerce-order h2{max-width:760px;margin:24px auto 12px;color:var(--rv-dark);font-weight:800}
.woocommerce-order .woocommerce-customer-details{max-width:760px;margin:0 auto}
/* MOBILE LOGO+FOOTER */
html,body{max-width:100%;overflow-x:hidden}
@media(max-width:768px){
  .rv-header .rv-bar{padding-left:8px;padding-right:12px}
  .rv-logo{padding-inline-end:4px}
  .rv-logo .word{font-size:22px}
  .rv-logo .tag{font-size:6px;letter-spacing:1px;white-space:nowrap}
  .rv-footer .cols{grid-template-columns:1fr!important;gap:30px;text-align:center}
  .rv-footer .cols>div{display:flex;flex-direction:column;align-items:center}
  .rv-footer ul{align-items:center}
  .rv-footer ul a:hover{padding-right:0}
  .rv-footer .more{margin-left:auto;margin-right:auto}
  .rv-news{justify-content:center;width:100%;max-width:330px;margin-left:auto;margin-right:auto}
}