/* Revunda v3 storefront layer. Loaded after gripeo.css. Logical properties (RTL-safe); CJK: no tracking, taller leading, system CJK fallbacks. */
@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/assets/fonts/newsreader-latin-wght-normal.woff2) format("woff2")}
:root{--bg:#F7F4EE;--plate:#ECE7DE;--ink:#1D1C1A;--ink2:#5C5850;--ink3:#6E695F;--line:#E2DCD1;--acc:#C2552D;--card:#FFFDF9;
--sans:Geist,ui-sans-serif,system-ui,-apple-system,"Segoe UI","Noto Sans","Hiragino Sans","PingFang SC","Microsoft YaHei","Noto Sans CJK SC","Noto Sans Arabic",sans-serif;
--read:Newsreader,"Iowan Old Style",Georgia,"Noto Serif","Noto Serif CJK SC","Songti SC","Noto Naskh Arabic",serif;--w:1320px}
body{background:var(--bg);color:var(--ink);font-size:17px}
.gh{background:rgba(247,244,238,.92);border-block-end-color:var(--line)}
@supports(backdrop-filter:blur(1px)){.gh{background:rgba(247,244,238,.82)}}
.logo{width:119px;height:28px}
.gh nav a[aria-current]{box-shadow:inset 0 -1.5px 0 var(--ink)}
.btn,.audit-box button{border-radius:999px;min-height:54px;font-size:1rem;font-weight:500;padding-inline:26px}
.btn:hover,.audit-box button:hover{background:#000}
.gf{background:var(--plate);border:0;margin-block-start:96px}
.gf .disc{border-color:#D6CFC2}
/* layout primitives */
main.v3 .wrap,.wrap{max-width:var(--w)}
.flow>section{margin-block:0;padding-block:72px;border-block-start:1px solid var(--line)}
@media(min-width:1000px){.flow>section{padding-block:104px}}
.sec-h{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;margin-block-end:32px}
.sec-h h2{margin:0;font-size:clamp(1.6rem,1.2rem + 1.4vw,2.3rem);letter-spacing:-.03em}
.sec-h p{flex-basis:100%;margin:6px 0 0;max-width:60ch;color:var(--ink2);font:400 1.1rem/1.6 var(--read)}
.sec-h a,.cnt{font-size:.92rem;color:var(--ink2)}
.lead{font:400 clamp(1.18rem,1.05rem + .5vw,1.42rem)/1.55 var(--read);color:var(--ink);max-width:58ch;letter-spacing:0}
.vh{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* crumbs */
.crumbs{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;padding-block:20px 18px;font-size:.86rem;color:var(--ink2)}
.crumbs a{color:var(--ink2);text-decoration:none}.crumbs a:hover{color:var(--ink)}
.crumbs .langs{margin-inline-start:auto;display:inline-flex;gap:14px}.crumbs .langs p{margin:0;display:inline}
/* PDP */
.pdp{display:grid;gap:28px;padding-block-end:48px}
@media(min-width:1000px){.pdp{grid-template-columns:minmax(0,1.35fr) minmax(360px,1fr);gap:64px;align-items:start;padding-block-end:96px}}
.gal{display:grid;gap:12px;min-width:0}
@media(min-width:1000px){.gal{grid-template-columns:72px minmax(0,1fr);gap:20px;align-items:start}}
.slides{list-style:none;margin:0;padding:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;scrollbar-width:none;border-radius:18px}
.slides::-webkit-scrollbar{display:none}
.slides li{flex:0 0 100%;scroll-snap-align:center;background:var(--plate);border-radius:18px;overflow:hidden;aspect-ratio:1/1;display:grid;place-items:center}
.slides img{width:100%;height:100%;object-fit:contain}
@media(min-width:1000px){.slides{display:grid;grid-template-columns:1fr 1fr;overflow:visible;gap:14px}.slides li{aspect-ratio:4/5}.slides li:first-child{grid-column:1/-1;aspect-ratio:1/1}.slides li{scroll-margin-block-start:90px}}
.thumbs{display:flex;gap:8px;order:2;overflow-x:auto;scrollbar-width:none}
@media(min-width:1000px){.thumbs{order:0;flex-direction:column;position:sticky;inset-block-start:90px}}
.thumbs a{flex:0 0 60px;inline-size:60px;block-size:60px;border-radius:10px;overflow:hidden;background:var(--plate);border:1px solid var(--line);display:block}
@media(min-width:1000px){.thumbs a{inline-size:72px;block-size:72px;flex-basis:auto}}
.thumbs a:hover,.thumbs a:focus-visible{border-color:var(--ink)}
.thumbs img{width:100%;height:100%;object-fit:cover}
.bc{min-width:0}
@media(min-width:1000px){.bc{position:sticky;inset-block-start:84px;padding-block-start:8px}}
.bc .eyebrow{font:500 .78rem/1.3 var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--ink2);margin:0 0 12px}
.pn{font-size:clamp(2rem,1.5rem + 2vw,3.1rem);line-height:1.02;letter-spacing:-.04em;margin:0 0 12px;font-weight:500}
.bc .tag{font:400 1.12rem/1.5 var(--read);color:var(--ink2);margin:0 0 24px;max-width:40ch}
.pr{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding-block:18px;border-block:1px solid var(--line);margin-block-end:18px}
.pr b{font:500 2.1rem/1 var(--sans);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.pr span{font-size:.85rem;color:var(--ink2);text-transform:none;letter-spacing:0;font-family:var(--sans)}
.bc .launch{border-block-start:0!important;padding:12px 14px!important;margin:0 0 18px!important;background:var(--plate)!important;border-radius:12px!important;font-size:.86rem;color:var(--ink2)}
.bc .launch [data-cd],.bc .launch [data-oc],.bc .launch [data-orders]{font-family:var(--sans);font-size:.86rem}
.bc .btns{display:grid;gap:10px}.bc .btn{width:100%;margin:0}
.bc .btns .btn+.btn{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.bc .btns .btn+.btn:hover{background:var(--ink);color:#fff}
.bc .audit-box{border:0;padding:0;margin:0;background:none}
.bc small{display:block;margin-block-start:10px}
.assure{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px;font-size:.9rem;color:var(--ink2)}
.assure li{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-inline-start:26px;position:relative}
.assure li::before{content:"";position:absolute;inset-inline-start:2px;inset-block-start:.45em;inline-size:12px;block-size:7px;border-inline-start:1.5px solid var(--ink);border-block-end:1.5px solid var(--ink);transform:rotate(-45deg)}
[dir=rtl] .assure li::before{transform:rotate(45deg) scaleX(-1)}
.assure b{color:var(--ink);font-weight:500}
.pm{display:inline-flex;gap:5px}.pm i{font:600 .62rem/1 var(--sans);font-style:normal;letter-spacing:.02em;border:1px solid #CFC7B8;border-radius:4px;padding:4px 5px;color:var(--ink2);background:var(--card)}
.dl{display:inline-flex;gap:6px;margin-block-start:20px;font-weight:500;color:var(--ink);text-decoration:underline;text-underline-offset:.25em}
/* reading sections */
.rd-c{max-width:65ch;margin-inline:auto;font:400 1.15rem/1.65 var(--read)}
.rd-c h2{font-family:var(--sans);font-size:1.5rem;margin:1.6em 0 .6em}.rd-c h2:first-child{margin-block-start:0}
.rd-c li{margin:.4em 0}.rd-c p,.rd-c li{color:var(--ink)}
.rd-c .box{background:var(--card);border-color:var(--line);font-family:var(--sans);font-size:1rem}
.rd-c table{font-family:var(--sans)}
.more .rd-c{max-width:65ch}
/* excerpts */
.qs{display:grid;gap:20px}
@media(min-width:900px){.qs{grid-template-columns:repeat(3,1fr);gap:24px}}
.qs figure{margin:0;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.qs blockquote{margin:0}.qs p{font:400 1.12rem/1.55 var(--read);margin:0}
.qs figcaption{font-size:.8rem;color:var(--ink2)}
/* specs */
.spec-b{display:grid;gap:40px}
@media(min-width:1000px){.spec-b{grid-template-columns:1.2fr 1fr;gap:64px}}
.inc{list-style:none;padding:0;margin:0;counter-reset:i}
.inc li{counter-increment:i;padding-block:16px;padding-inline-start:44px;border-block-start:1px solid var(--line);position:relative;line-height:1.5}
.inc li::before{content:counter(i,decimal-leading-zero);position:absolute;inset-inline-start:0;inset-block-start:17px;font:500 .8rem var(--sans);color:var(--ink3);font-variant-numeric:tabular-nums}
.spec table{display:table;border:0;border-block-start:1px solid var(--ink);font-size:.95rem;margin:0;background:none}
.spec th{font:500 .9rem var(--sans);text-transform:none;letter-spacing:0;color:var(--ink);inline-size:38%;padding-block:16px}
.spec td{color:var(--ink2);padding-block:16px}
/* how */
.how ol{list-style:none;padding:0;margin:0;display:grid;gap:16px;counter-reset:h}
@media(min-width:900px){.how ol{grid-template-columns:repeat(3,1fr);gap:24px}}
.how li{counter-increment:h;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px;line-height:1.55}
.how li::before{content:counter(h);display:grid;place-items:center;inline-size:34px;block-size:34px;border-radius:50%;border:1px solid var(--ink);font:500 .9rem var(--sans);margin-block-end:28px}
/* quiet note */
.note{text-align:start}
.note h2{font-size:1rem;letter-spacing:0;text-transform:none;font-weight:600;margin:0 0 12px;max-width:65ch;margin-inline:auto}
.note p{max-width:65ch;margin-inline:auto;font:400 1.15rem/1.65 var(--read);color:var(--ink2)}
/* faq */
.acc{max-width:820px;border-block-start:1px solid var(--ink)}
.acc details{border-color:var(--line)}
.acc summary{font-size:1.05rem;padding-block:22px;padding-inline-end:44px}
.acc summary::before,.acc summary::after{inset-inline-end:4px;right:auto}
.acc details p{font:400 1.08rem/1.6 var(--read)}
/* product cards */
.grid3{list-style:none;padding:0;margin:0;display:grid;gap:36px 20px;grid-template-columns:1fr}
@media(min-width:620px){.grid3{grid-template-columns:1fr 1fr}}
@media(min-width:1000px){.grid3{grid-template-columns:repeat(3,1fr);gap:56px 24px}}
.pc a{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);block-size:100%}
.ph{display:block;background:var(--plate);border-radius:18px;overflow:hidden;aspect-ratio:1/1;margin-block-end:18px}
.ph img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.pc a:hover .ph img{transform:scale(1.03)}
.pc-cat{font:500 .76rem/1.3 var(--sans);text-transform:uppercase;letter-spacing:.06em;color:var(--ink2);margin-block-end:6px}
.pc-n{font:500 1.35rem/1.15 var(--sans);letter-spacing:-.025em;margin-block-end:8px}
.pc-l{color:var(--ink2);font-size:.95rem;line-height:1.5;flex:1}
.pc-f{display:flex;justify-content:space-between;align-items:center;margin-block-start:16px;padding-block-start:14px;border-block-start:1px solid var(--line)}
.pc-p{font:500 1.05rem var(--sans);font-variant-numeric:tabular-nums}
.pc-b{font-size:.9rem;font-weight:500;border:1px solid var(--ink);border-radius:999px;padding:8px 16px;transition:background .2s,color .2s}
.pc a:hover .pc-b{background:var(--ink);color:#fff}
[dir=rtl] .pc-b span,[dir=rtl] .sec-h a{display:inline-block;transform:scaleX(-1)}
/* home */
.sh{padding-block:56px 40px;display:grid;gap:28px}
@media(min-width:1000px){.sh{grid-template-columns:1.4fr 1fr;align-items:end;padding-block:96px 64px;gap:64px}}
.sh h1{font-size:clamp(2.6rem,1.4rem + 4.6vw,5.2rem);line-height:.98;letter-spacing:-.05em;max-width:14ch;margin:0 0 24px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips a{border:1px solid #CFC7B8;border-radius:999px;padding:9px 16px;font-size:.92rem;text-decoration:none;color:var(--ink);background:var(--card)}
.chips a:hover{border-color:var(--ink)}
.shop{padding-block-end:24px}
.more2{display:grid;gap:16px}
@media(min-width:900px){.more2{grid-template-columns:repeat(3,1fr);gap:24px}}
.tile{display:flex;flex-direction:column;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px;text-decoration:none;color:var(--ink)}
.tile:hover{border-color:var(--ink)}.tile b{font-size:1.2rem;font-weight:500;letter-spacing:-.02em}.tile span:last-child{color:var(--ink2);font-size:.95rem}
.tile .eyebrow{margin:0 0 6px}
/* mobile buy bar */
.mbar{background:rgba(247,244,238,.96);border-color:var(--line)}
.mbar .btn{border-radius:999px}
/* prose / thanks on warm ground */
.prose,.ty{font-size:1.05rem}
.prose p,.prose li{font-family:var(--read);font-size:1.15rem;line-height:1.65}
.prose .box,.prose .cta,.prose .card{background:var(--card);border-color:var(--line)}
.prose .box p,.prose .cta p,.prose .card p{font-family:var(--sans);font-size:1rem}
.cta{background:var(--card);border:1px solid var(--line)}
/* motion: gentle reveal where supported */
@supports (animation-timeline:view()){@media(prefers-reduced-motion:no-preference){.pc,.qs figure,.how li{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}}}
@keyframes rise{from{transform:translateY(20px)}to{transform:none}}
/* CJK + RTL safety */
:lang(zh),:lang(ja),:lang(ko){letter-spacing:0!important;line-break:strict;word-break:normal}
:lang(zh) h1,:lang(ja) h1,:lang(ko) h1,:lang(zh) h2,:lang(ja) h2,:lang(ko) h2,:lang(zh) .pn,:lang(ja) .pn,:lang(ko) .pn{letter-spacing:0!important;line-height:1.25}
:lang(zh) .lead,:lang(ja) .lead,:lang(ko) .lead,:lang(zh) .rd-c,:lang(ja) .rd-c,:lang(ko) .rd-c{font-family:var(--sans);line-height:1.85}
:lang(ar) h1,:lang(ar) h2,:lang(ar) .pn,:lang(ar) .pc-n{letter-spacing:0!important;line-height:1.3}
:lang(ar) .lead,:lang(ar) .rd-c,:lang(ar) .qs p{font-family:var(--sans);line-height:1.8}
.bc .tag{border:0;padding:0;background:none;text-transform:none;letter-spacing:0;font-size:1.12rem;display:block}
.pc-f{gap:12px}.pc-p{min-width:0}
/* featured subscription card (home) */
.feat{display:grid;gap:20px;margin-block-start:56px;text-decoration:none;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:22px;padding:16px;overflow:hidden}
.feat .ph{margin:0}
.feat-b{display:flex;flex-direction:column;padding:8px 8px 4px}
.feat .pc-n{font-size:clamp(1.5rem,1.1rem + 1.4vw,2.2rem)}
.feat .pc-l{font:400 1.12rem/1.55 var(--read);color:var(--ink2);max-width:42ch;flex:0}
.feat .pc-f{margin-block-start:28px}
.feat:hover .pc-b{background:var(--ink);color:#fff}.feat:hover .ph img{transform:scale(1.03)}
@media(min-width:760px){.feat{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:40px;padding:20px}.feat .ph{aspect-ratio:4/3}.feat-b{padding-inline-end:24px}}
.cap{font-size:.82rem;color:var(--ink2);margin:16px 0 0}
.pr b.pr-l{font-size:clamp(1.35rem,1.1rem + 1vw,1.75rem);letter-spacing:-.025em}
/* Cyrillic: Geist covers it via an extra subset; reading text falls back to Literata (Newsreader has no Cyrillic) */
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/geist-cyrillic-wght-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(/assets/fonts/literata-cyrillic-wght-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
:root{--read:Newsreader,Literata,"Iowan Old Style",Georgia,"Noto Serif","Noto Serif CJK SC","Songti SC","Noto Naskh Arabic",serif}
/* long strings (es/ru): hyphenate prose, let buttons/cards wrap instead of overflowing */
:lang(es) .rd-c,:lang(ru) .rd-c,:lang(es) .lead,:lang(ru) .lead,:lang(es) .pc-l,:lang(ru) .pc-l,:lang(es) .qs p,:lang(ru) .qs p,:lang(es) .acc p,:lang(ru) .acc p,:lang(es) .tag,:lang(ru) .tag{hyphens:auto;-webkit-hyphens:auto}
.pn,.pc-n,.sh h1,.sec-h h2{overflow-wrap:break-word;hyphens:manual}
:lang(ru) .sh h1,:lang(ru) .pn{letter-spacing:-.03em}
:lang(ru) .sh h1{font-size:clamp(2.2rem,1.2rem + 4vw,4.4rem)}
.btn,.audit-box button,.mbar .btn{white-space:normal;text-align:center;line-height:1.25;padding-block:12px;height:auto}
.pc-f{flex-wrap:wrap}.pc-b{white-space:nowrap}
.chips a,.gh nav a{white-space:nowrap}
.mbar span{min-width:0}.mbar .btn{flex:1 1 auto;min-width:0;font-size:.95rem}
/* header language selector (built from the footer list by JS; footer list stays as the no-JS fallback) */
.gh .wrap{gap:16px}.lsw-slot{margin-inline-start:auto;flex:0 0 auto}
.gh nav+.lsw-slot{margin-inline-start:12px}
.lsw{position:relative}
.lsw summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid #CFC7B8;border-radius:999px;font:500 .82rem/1 var(--sans);color:var(--ink);background:var(--card)}
.lsw summary::-webkit-details-marker{display:none}
.lsw summary:hover,.lsw[open] summary{border-color:var(--ink)}
.lsw summary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.lsw ul{position:absolute;inset-inline-end:0;inset-block-start:calc(100% + 8px);z-index:60;margin:0;padding:6px;list-style:none;min-width:180px;background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 32px rgba(29,28,26,.12)}
.lsw li a{display:flex;justify-content:space-between;align-items:center;min-height:40px;padding:0 12px;border-radius:9px;color:var(--ink);text-decoration:none;font:400 .95rem var(--sans)}
.lsw li a:hover{background:var(--plate)}
.lsw li a[aria-current]{font-weight:600}.lsw li a[aria-current]::after{content:"✓";font-weight:400}
@media(max-width:899px){.gh .wrap{flex-wrap:wrap}.gh .wrap>a:first-child{order:0}.lsw-slot{order:1;margin-inline-start:auto}.gh nav{order:2;flex-basis:100%}}
/* footer language list in v3 style */
body .gx-lang-bar{background:var(--plate);padding:0 0 28px;text-align:start;font:400 .9rem var(--sans)}
body .gx-lang-bar .gx-lang{display:block;max-width:var(--w);margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
body .gx-lang summary{display:none}
body .gx-lang ul{position:static;display:flex;flex-wrap:wrap;gap:4px 18px;columns:auto;min-width:0;padding:16px 0 0;border:0;border-block-start:1px solid #D6CFC2;border-radius:0;box-shadow:none;background:none}
body .gx-lang li a{padding:6px 0;color:var(--ink2)}body .gx-lang li a[aria-current]{color:var(--ink);font-weight:600}
.lsw summary::before,.lsw summary::after{content:none!important;display:none!important}
/* launch-price end condition: quiet line under the price */
.lp{margin:8px 0 0;font:400 .8rem/1.45 var(--sans);color:var(--ink2);letter-spacing:0}
.pc .lp{margin-block-start:10px}
.feat+.lp{margin-block-start:12px;padding-inline:4px}
.bc .lp{margin:-6px 0 16px}
.spec td .lp{margin-block-start:4px}
.gh .logo{width:119px;height:28px;display:block}@media(max-width:899px){.gh .logo{width:111px;height:26px}}.gf .logo{width:111px;height:26px}
@media(max-width:899px){.gh nav+.lsw-slot,.lsw-slot{margin-inline-start:auto}.gh .wrap{align-items:center;column-gap:12px}}
.lsw{border:0!important;padding:0!important;margin:0!important}

.trust{list-style:none;display:flex;flex-wrap:wrap;gap:8px 18px;padding:0;margin:4px 0 6px;font-size:15px}.trust li::before{content:"✓ ";color:#C2552D;font-weight:700}.try{margin:4px 0 28px;font-size:15px}.faqh details{border-top:1px solid #0001;padding:10px 0}.faqh summary{cursor:pointer;font-weight:600}.faqh{margin:32px 0}
.xs{margin-top:16px;padding:12px 14px;border:1px solid #0002;border-radius:10px;font-size:15px;line-height:1.45}.xs a{font-weight:600}
