:root{--paper:#FBF4EA;--paper2:#F5E9DA;--card:#FFFBF5;--ink:#2E1F19;--ink2:#5C4A3F;--muted:#8C7B6E;--line:#E6D9C6;--acc:#7A2430;--acc-d:#5B1A22;--cream:#EAD6B3;--peach:#F6D9C8;--peach2:#F9E7DA;--gold:#C9A961;--gold2:#E7C77E;--tg:#2AABEE;--r:20px;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:Manrope,Inter,-apple-system,"Segoe UI",Roboto,sans-serif;--book:Lora,Georgia,serif;--gut:clamp(16px,4vw,48px)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);font-family:var(--sans);color:var(--ink);line-height:1.55;overflow-x:hidden;position:relative}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:9;opacity:.07;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .3 0 0 0 0 .2 0 0 0 0 .1 0 0 0 .7 0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E")}
h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0;letter-spacing:-.005em;color:var(--ink)}
h1{font-size:clamp(37px,8.8vw,66px);line-height:1}h1 em{font-style:italic;font-weight:500;color:var(--acc-d)}
h2{font-size:clamp(32px,5.4vw,46px);line-height:1.06}
h3{font-size:25px;line-height:1.15}
p{margin:0}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 var(--gut);position:relative}
.center{text-align:center}
.kicker{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--acc);margin-bottom:12px}
.muted{color:var(--muted)}.small{font-size:14px}.xs{font-size:12.5px}
[data-lang="uz"] .ru,[data-lang="uz"] .en{display:none!important}[data-lang="ru"] .uz,[data-lang="ru"] .en{display:none!important}[data-lang="en"] .uz,[data-lang="en"] .ru{display:none!important}
/* top */
.top{position:absolute;top:0;left:0;right:0;z-index:6;display:flex;justify-content:space-between;align-items:center;padding:16px var(--gut)}
.top.solid{position:relative;background:transparent}
.brand{font-family:var(--serif);font-weight:700;font-size:27px;color:var(--acc-d);text-decoration:none;letter-spacing:.01em;line-height:1}
.lang{display:flex;gap:2px;background:rgba(255,253,249,.94);border-radius:999px;padding:3px;border:1px solid rgba(255,255,255,.9)}
.lang button{border:0;background:transparent;padding:6px 10px;border-radius:999px;font-size:13px;font-weight:700;color:var(--muted);display:flex;align-items:center;gap:5px;font-family:inherit;cursor:pointer}
.lang button.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.14)}
.lang .f{font-size:15px;line-height:1}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:16px;padding:17px 28px;font-weight:800;font-size:16px;text-decoration:none;cursor:pointer;font-family:inherit;letter-spacing:.01em;transition:transform .18s ease,box-shadow .18s ease,background .18s}
.btn.primary{background:var(--acc);color:#FFF6EA;box-shadow:0 12px 28px rgba(91,26,34,.28)}
.btn.primary:hover{background:var(--acc-d);transform:translateY(-1px);box-shadow:0 16px 34px rgba(91,26,34,.32)}
.btn.primary:active{transform:translateY(0) scale(.99)}
.btn.tg{background:var(--tg);color:#fff;box-shadow:0 12px 28px rgba(42,171,238,.3)}
.btn.block{width:100%}
.btn .ar{display:inline-block;animation:bob 1.6s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(4px)}}
/* ---------- hero ---------- */
.hero{position:relative;overflow:hidden;background:radial-gradient(130% 90% at 50% -20%,#F4D3C0 0%,#FAEEE2 50%,var(--paper) 100%);padding:92px 0 44px}
.hero canvas.amb{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.hero .wrap{display:grid;gap:30px;align-items:center;z-index:1}
.hero .txt{text-align:center;order:1}.hero .vis{order:0;display:flex;justify-content:center}
@media(min-width:900px){.hero{padding:128px 0 84px}.hero .wrap{grid-template-columns:1.05fr .95fr;gap:48px}.hero .txt{text-align:left;order:0}.hero .vis{order:1;justify-content:flex-end}}
.lead{font-family:var(--serif);font-style:italic;font-weight:500;font-size:clamp(21px,4.8vw,28px);color:var(--acc-d);margin:0 0 14px;line-height:1.22}
.sub{font-size:clamp(16px,2.7vw,19px);color:var(--ink2);max-width:540px;margin:18px auto 26px;line-height:1.55}
@media(min-width:900px){.sub{margin-left:0}}
.revstack{position:relative;margin:28px auto 0;max-width:520px;padding-bottom:22px}
@media(min-width:900px){.revstack{margin-left:0}}
.revstack .ghost{position:absolute;left:0;right:0;top:0;bottom:22px;border-radius:18px;border:1px solid rgba(255,255,255,.95);box-shadow:0 6px 18px rgba(90,30,20,.09);transform-origin:50% 60%;overflow:hidden}
.revstack .ghost::before,.revstack .ghost::after{content:"";position:absolute;left:78px;right:22px;height:7px;border-radius:4px;background:rgba(122,31,43,.07)}
.revstack .ghost::before{bottom:34px}.revstack .ghost::after{bottom:18px;right:46%}
.revstack .g1{background:#FFF6EC;transform:translate(5px,10px) rotate(1.8deg);z-index:2}
.revstack .g2{background:#FBEDDF;transform:translate(-6px,17px) rotate(-2.4deg);z-index:1}
.revstack .g3{background:#F6E4D2;transform:translate(3px,24px) rotate(3.2deg) scale(.97);z-index:0}
.herorev{position:relative;z-index:3;text-align:left;display:flex;gap:14px;align-items:flex-start;padding:16px 18px;background:rgba(255,253,249,.9);border:1px solid #fff;border-radius:18px;box-shadow:0 14px 34px rgba(90,30,20,.12)}
.herorev .ava{flex:0 0 46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#F2C9B4,#D9A48E);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;color:#5B1A22;font-size:22px}
.herorev .st{color:var(--gold);font-size:12px;letter-spacing:2.5px;line-height:1}
.herorev q{display:block;font-family:var(--serif);font-size:clamp(18px,3.8vw,21px);line-height:1.28;quotes:none;font-style:italic;margin:6px 0 6px;color:var(--ink)}
.herorev .who{font-size:13px;color:var(--muted);font-weight:600}
/* hero book v6 — closed hardcover, 3D */
.stage{--w:150px;--h:230px;--d:20px;position:relative;width:calc(var(--w) + 150px);height:calc(var(--h) + 64px);display:flex;align-items:center;justify-content:center;perspective:1200px;perspective-origin:50% 25%;flex:0 0 auto;touch-action:pan-y}
@media(min-width:600px){.stage{--w:184px;--h:282px;--d:24px}}
@media(min-width:900px){.stage{--w:250px;--h:383px;--d:32px;width:calc(var(--w) + 190px);height:calc(var(--h) + 90px)}}
@media(min-width:1100px){.stage{--w:270px;--h:414px;--d:34px}}
.bfloat{position:relative;transform-style:preserve-3d;animation:bfloat 6.5s ease-in-out infinite;z-index:2}
@keyframes bfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.book3d{position:relative;width:var(--w);height:var(--h);transform-style:preserve-3d;transform:rotateX(var(--rx,-7deg)) rotateY(var(--ry,27deg)) rotateZ(-1.2deg);will-change:transform}
.book3d>div{position:absolute;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.b-front{inset:0;transform:translateZ(calc(var(--d) / 2));border-radius:2px 7px 7px 2px;overflow:hidden;color:var(--cream);display:flex;flex-direction:column;align-items:center;font-size:calc(var(--w) * .066);padding:13% 11% 9%;
  background:radial-gradient(130% 70% at 25% 0%,rgba(255,225,200,.13),transparent 60%),repeating-linear-gradient(45deg,rgba(255,255,255,.018) 0 2px,rgba(0,0,0,.02) 2px 4px),linear-gradient(140deg,#5A1620 0%,#71202B 48%,#4A1219 100%);
  box-shadow:inset 3px 0 4px rgba(0,0,0,.45),inset -1px -1px 0 rgba(255,255,255,.07)}
.b-front::before{content:"";position:absolute;left:7%;top:0;bottom:0;width:2px;background:linear-gradient(90deg,rgba(0,0,0,.38),rgba(255,255,255,.09));pointer-events:none}
.b-front .frame{position:absolute;inset:5.5% 5.5% 5.5% 9%;border:1px solid rgba(234,214,179,.5);border-radius:2px 5px 5px 2px;pointer-events:none}
.b-front .frame::after{content:"";position:absolute;inset:3px;border:.5px solid rgba(234,214,179,.28);border-radius:1px 4px 4px 1px}
.b-photo{position:relative;width:60%;aspect-ratio:4/5;padding:2px;border-radius:999px 999px 4px 4px;background:linear-gradient(160deg,#F5E2B3,#B98A3E 42%,#F0D9A5 68%,#9C7232);box-shadow:0 3px 10px rgba(0,0,0,.35);margin-left:3%}
.b-photo img{width:100%;height:100%;object-fit:cover;object-position:55% 22%;border-radius:999px 999px 3px 3px;display:block;filter:sepia(.12) saturate(.92) contrast(.98) brightness(1.03)}
.b-name{margin:10% 0 0 3%;font-family:var(--serif);font-weight:700;font-size:1.62em;line-height:1.02;text-align:center;letter-spacing:.005em;background:linear-gradient(100deg,#B98D47 0%,#F7E6BA 22%,#C9A15A 40%,#F7E6BA 60%,#B48A44 80%,#F1DDAA 100%);background-size:260% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:foil 7s linear infinite}
.b-sub{font-family:var(--book);font-style:italic;font-size:.88em;color:rgba(246,234,215,.86);margin:.45em 0 0 3%}
.b-heart{width:1.05em;height:1.05em;color:var(--gold);margin:auto 0 0 3%;opacity:.95}
.b-sheen{position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 30%,rgba(255,236,205,.0) 38%,rgba(255,236,205,.26) 47%,rgba(255,255,255,.06) 53%,transparent 64%);background-size:260% 100%;background-position:130% 0;animation:sheen 7.5s cubic-bezier(.45,0,.2,1) infinite;mix-blend-mode:screen}
@keyframes sheen{0%,58%{background-position:130% 0}88%,100%{background-position:-70% 0}}
@keyframes foil{to{background-position:-260% 0}}
.b-back{inset:0;transform:rotateY(180deg) translateZ(calc(var(--d) / 2));background:radial-gradient(130% 70% at 75% 0%,rgba(255,225,200,.1),transparent 60%),linear-gradient(220deg,#5A1620 0%,#6A1D27 50%,#4A1219 100%);border-radius:7px 2px 2px 7px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:.4em;padding-bottom:12%;color:#E9CF98;font-size:calc(var(--w) * .07);box-shadow:inset -3px 0 4px rgba(0,0,0,.4)}
.b-back svg{width:1.2em;height:1.2em}.b-back b{font-family:var(--serif);font-weight:700;letter-spacing:.04em}
.stage{cursor:grab;user-select:none;-webkit-user-select:none}.stage.grab{cursor:grabbing}.stage img{-webkit-user-drag:none;pointer-events:none}
.b-spine{left:calc(50% - var(--d) / 2);top:0;width:var(--d);height:100%;transform:rotateY(-90deg) translateZ(calc(var(--w) / 2));background:linear-gradient(90deg,#3B0D13 0%,#5B1821 30%,#6A1D27 55%,#45111A 100%);border-radius:3px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:12% 0 7%;overflow:hidden}
.b-spine::before,.b-spine::after{content:"";position:absolute;left:0;right:0;height:1px;background:rgba(234,214,179,.45)}
.b-spine::before{top:5%}.b-spine::after{bottom:5%}
.b-spine .sn{writing-mode:vertical-rl;font-family:var(--serif);font-weight:700;font-size:calc(var(--d) * .46);letter-spacing:.06em;color:#E9CF98;white-space:nowrap;line-height:1}
.b-spine .sl{font-family:var(--serif);font-weight:700;font-size:calc(var(--d) * .5);color:#E9CF98;line-height:1}
.b-pages{left:calc(50% - var(--d) / 2 + 1px);top:2%;width:calc(var(--d) - 2px);height:96%;transform:rotateY(90deg) translateZ(calc(var(--w) / 2 - 4px));background:repeating-linear-gradient(90deg,#FFFBF2 0 1px,#E8DAC2 1px 2px);box-shadow:inset 0 0 6px rgba(120,80,40,.25)}
.b-top{left:2%;top:calc(50% - var(--d) / 2 + 1px);width:calc(96% - 4px);height:calc(var(--d) - 2px);transform:rotateX(90deg) translateZ(calc(var(--h) / 2 - 3px));background:repeating-linear-gradient(0deg,#FFFBF2 0 1px,#E6D7BE 1px 2px)}
.b-shadow{position:absolute;left:50%;bottom:4px;width:calc(var(--w) * 1.25);height:calc(var(--w) * .22);transform:translateX(-46%);background:radial-gradient(closest-side,rgba(70,25,15,.34),rgba(70,25,15,0));animation:bshadow 6.5s ease-in-out infinite;z-index:1}
@keyframes bshadow{0%,100%{transform:translateX(-46%) scale(1);opacity:1}50%{transform:translateX(-46%) scale(.9);opacity:.75}}
.vchip{position:absolute;z-index:3;left:0;bottom:12%;display:flex;align-items:center;gap:9px;padding:8px 13px 8px 8px;border-radius:999px;background:rgba(255,253,248,.97);border:1px solid #fff;box-shadow:0 10px 26px rgba(90,30,20,.16);color:var(--ink);text-decoration:none;animation:chip 6.5s ease-in-out infinite}
@keyframes chip{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
.vchip .pl{position:relative;flex:0 0 30px;height:30px;border-radius:50%;background:var(--acc);color:#fff;display:flex;align-items:center;justify-content:center}
.vchip .pl::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(122,31,43,.45);animation:ping 2.6s ease-out infinite}
.vchip .pl svg{width:14px;height:14px;margin-left:2px}
@keyframes ping{0%{transform:scale(1);opacity:1}70%,100%{transform:scale(1.8);opacity:0}}
.vchip .wv{display:flex;align-items:center;gap:2px;height:22px}
.vchip .wv i{display:block;width:2.5px;height:100%;border-radius:2px;background:var(--acc);transform-origin:center;animation:wv 1.1s ease-in-out infinite}
.vchip .wv i:nth-child(3n){animation-duration:.9s}.vchip .wv i:nth-child(4n+1){animation-duration:1.3s}
.vchip .wv i:nth-child(1){animation-delay:-.1s}.vchip .wv i:nth-child(2){animation-delay:-.5s}.vchip .wv i:nth-child(3){animation-delay:-.3s}.vchip .wv i:nth-child(4){animation-delay:-.8s}.vchip .wv i:nth-child(5){animation-delay:-.2s}.vchip .wv i:nth-child(6){animation-delay:-.6s}.vchip .wv i:nth-child(7){animation-delay:-.4s}.vchip .wv i:nth-child(8){animation-delay:-.9s}.vchip .wv i:nth-child(9){animation-delay:-.15s}.vchip .wv i:nth-child(10){animation-delay:-.7s}.vchip .wv i:nth-child(11){animation-delay:-.35s}.vchip .wv i:nth-child(12){animation-delay:-.55s}
@keyframes wv{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
.vchip .tx{display:flex;flex-direction:column;line-height:1.15}
.vchip .tx b{font-size:13px;font-weight:800}.vchip .tx small{font-size:11px;color:var(--muted);font-weight:600}
@media(min-width:900px){.vchip{left:-6px;bottom:16%;padding:10px 16px 10px 10px}.vchip .pl{flex-basis:36px;height:36px}.vchip .tx b{font-size:14px}}
@media(prefers-reduced-motion:reduce){.bfloat,.b-shadow,.vchip,.vchip .pl::after,.vchip .wv i,.b-sheen,.b-name{animation:none}}
/* ---------- sections ---------- */
.sec{padding:clamp(44px,7vw,92px) 0;position:relative}
.sec.alt{background:var(--paper2)}
.sec .hint{color:var(--muted);font-size:15px;margin-top:10px}
/* ---------- sample book ---------- */
.bkw{position:relative;max-width:720px;margin:34px auto 0;padding:0 8px}
.bkw .table{position:absolute;left:10%;right:10%;bottom:-26px;height:60px;background:radial-gradient(ellipse at center,rgba(60,20,10,.22),rgba(60,20,10,0) 70%);pointer-events:none}
.bk{position:relative;width:100%;-webkit-tap-highlight-color:transparent}
.bk .stf__parent{margin:0 auto}
.bk canvas.fx{position:absolute;left:-12%;top:-12%;width:124%;height:124%;pointer-events:none;z-index:60}
.sp{font-size:10.5px;background:#FFFDF8;border:1px solid #e6dbc9;padding:1.25em 1.05em 1em;font-family:var(--book);line-height:1.45;color:var(--ink);overflow:hidden}
.sp>.in{display:flex;flex-direction:column;height:100%;position:relative;text-align:left}
.sp.cover>.in,.sp.backcov>.in,.sp.dedp>.in,.sp.arch>.in,.sp.colophon>.in,.sp.pic .cap{text-align:center}
@media(min-width:600px){.sp{font-size:12.5px}}@media(min-width:900px){.sp{font-size:14px}}
.sp.--left{box-shadow:inset -10px 0 12px -10px rgba(0,0,0,.28);border-radius:3px 0 0 3px}
.sp.--right{box-shadow:inset 10px 0 12px -10px rgba(0,0,0,.28),8px 12px 24px rgba(60,20,10,.18);border-radius:0 3px 3px 0}
.sp.cover,.sp.backcov{background:linear-gradient(135deg,#4E141B 0%,#6E1F2A 55%,#5B1A22 100%);color:var(--cream);text-align:center;border-color:#3b0f14;position:relative}
.sp.cover>.in,.sp.backcov>.in,.sp.dedp>.in,.sp.arch>.in,.sp.colophon>.in{align-items:center;justify-content:center}
.sp.cover.--right{border-radius:0 8px 8px 0}.sp.backcov.--left{border-radius:8px 0 0 8px}
.sp.cover::before,.sp.backcov::before{content:"";position:absolute;inset:.85em;border:1px solid rgba(234,214,179,.55);border-radius:3px 7px 7px 3px;pointer-events:none}
.sp.cover::after,.sp.backcov::after{content:"";position:absolute;inset:1.15em;border:.5px solid rgba(234,214,179,.3);border-radius:2px 6px 6px 2px;pointer-events:none}
.sp.cover .t{font-size:1.5em;line-height:1.15;font-weight:600}
.sp.cover .s{font-style:italic;margin-top:.5em;opacity:.92;font-size:1em}
.hs{margin-top:1.9em;display:flex;flex-direction:column;align-items:center;gap:.2em;color:var(--gold)}
.hs svg{width:1.35em;height:1.35em;animation:beat 2.6s ease-in-out infinite}
@keyframes beat{0%,100%{transform:scale(1)}12%{transform:scale(1.18)}24%{transform:scale(1)}}
.sig{font-family:Caveat,cursive;font-size:1.65em;line-height:1;color:var(--cream);font-weight:600}
.sp.cover .y{position:absolute;bottom:1.5em;left:0;right:0;font-family:var(--sans);font-size:.8em;opacity:.8;font-weight:600}
.sp.backcov .bm{font-family:var(--serif);font-size:1.5em;font-weight:700;margin-top:.5em}
.sp.backcov .hint{position:absolute;bottom:1.6em;left:0;right:0;font-family:var(--sans);font-size:.8em;opacity:.75;color:var(--cream);margin:0}
.sp .by{font-family:var(--sans);font-size:.72em;color:var(--muted);margin-bottom:.5em;letter-spacing:.07em;text-transform:uppercase;font-weight:700}
.sp .chap{font-size:1.22em;font-weight:600;line-height:1.2;margin-bottom:.45em}
.sp .body{flex:1 1 auto;min-height:0;overflow:hidden;font-size:.95em;-webkit-mask:linear-gradient(#000 88%,transparent);mask:linear-gradient(#000 88%,transparent)}
.sp p{margin:0 0 .55em}
.sp p.dc::first-letter{float:left;font-size:2.5em;line-height:.82;padding:.1em .12em 0 0;color:var(--acc);font-weight:600;font-family:var(--serif)}
.sp .orn{text-align:center;color:var(--gold);font-size:1.35em;margin-top:.5em}
.sp .foot{flex:0 0 auto;display:flex;align-items:flex-end;justify-content:space-between;margin-top:.5em}
.sp .qrw{text-align:center;font-family:var(--sans);font-size:.72em;color:var(--muted);line-height:1.2;font-weight:600}
.sp .qrw canvas{position:static!important;width:5.4em!important;height:5.4em!important;display:block;margin:0 auto .2em;border:1px solid #e3d9c8;padding:.3em;background:#fff;border-radius:.5em}
.sp .listen{display:inline-flex;align-items:center;gap:.5em;border:1px solid var(--acc);color:var(--acc);border-radius:999px;padding:.4em .9em;font-family:var(--sans);font-size:.9em;font-weight:800;background:#fff;cursor:pointer;margin-bottom:1.1em}
.sp .listen .w{display:inline-block;width:3em;height:.85em;background:repeating-linear-gradient(90deg,var(--acc) 0 1.5px,transparent 1.5px 3.5px);mask:linear-gradient(90deg,#000 0 var(--p,0%),rgba(0,0,0,.25) var(--p,0%));-webkit-mask:linear-gradient(90deg,#000 0 var(--p,0%),rgba(0,0,0,.25) var(--p,0%))}
.sp.pic{padding:1em}
.sp.pic img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block;border:.3em solid #fff;box-shadow:0 .2em .6em rgba(0,0,0,.2)}
.sp.pic .cap{font-family:var(--sans);font-size:.8em;color:var(--muted);margin-top:.7em;font-style:italic;line-height:1.3}
.sp .ded{text-align:center;font-style:italic;font-size:1.1em;line-height:1.5}
.sp .ded .sig{display:block;color:var(--acc-d);font-size:1.5em;margin-top:.8em;font-weight:500}
.sp .ttl{text-align:center;font-size:1.25em;font-weight:600;margin:.4em 0 .8em;letter-spacing:.02em}
.toc{font-size:1em}
.toc div{display:flex;gap:.7em;padding:.35em .2em;border-bottom:1px dotted #d8ccb8}
.toc div i{font-style:normal;color:var(--acc);width:1.7em;flex:0 0 1.7em;font-family:var(--sans);font-size:.85em;padding-top:.15em;font-weight:700}
.tree{display:grid;gap:.85em;font-family:var(--sans);font-size:.76em;text-align:center;margin-top:.3em;font-weight:600}
.tree .lv{display:flex;justify-content:center;gap:.45em;flex-wrap:wrap;position:relative}
.tree .lv+.lv::before{content:"";position:absolute;top:-.85em;left:50%;width:1px;height:.85em;background:#b9a98f}
.tree .lv>span{border:1px solid #d8ccb8;border-radius:.6em;padding:.35em .55em;background:#fff;white-space:nowrap}
.tree .lv>span>span{border:0;background:transparent;padding:0}
.tree .lv>.me{background:var(--acc);color:#fff;border-color:var(--acc);font-weight:800}
.sp.arch{text-align:center}
.sp.arch canvas{position:static!important;width:7.5em!important;height:7.5em!important;display:block;margin:.4em auto .7em;border:1px solid #e3d9c8;padding:.35em;background:#fff;border-radius:.7em}
.sp.arch p{font-size:.9em;line-height:1.4;color:var(--ink2)}
.badge{display:inline-flex;align-items:center;gap:.45em;border:1px solid #d8ccb8;border-radius:999px;padding:.3em .8em .3em .45em;font-family:var(--sans);font-size:.78em;font-weight:800;color:var(--ink);margin-top:.6em;background:#fff}
.badge .ar{width:1.6em;height:1.6em;border-radius:50%;background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.85em;font-weight:800}
.sp.colophon{text-align:center;font-family:var(--sans);font-size:.85em;color:var(--muted);font-weight:600}
.sp.colophon b{display:block;font-family:var(--serif);font-size:1.5em;color:var(--acc-d);margin-bottom:.3em}
.fbctl{display:flex;justify-content:space-between;align-items:center;max-width:720px;margin:22px auto 0;padding:0 8px}
.fbctl button{border:1.5px solid var(--line);background:#fff;border-radius:999px;width:46px;height:46px;font-size:22px;color:var(--ink);cursor:pointer;transition:transform .15s,border-color .15s;line-height:1}
.fbctl button:hover{border-color:var(--acc);transform:scale(1.05)}
.dots{display:flex;gap:6px}.dots i{width:7px;height:7px;border-radius:50%;background:#d8cbb9;transition:background .2s}.dots i.on{background:var(--acc)}
/* ---------- steps ---------- */
.steps{display:grid;gap:18px;margin-top:30px}
@media(min-width:760px){.steps{grid-template-columns:repeat(3,1fr);gap:24px}}
.step{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:0 12px 34px rgba(60,20,10,.07)}
.step .ill{position:relative;aspect-ratio:4/3;overflow:hidden}
.step .ill img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s ease}
.step:hover .ill img{transform:scale(1.04)}
.step .ill.z img{transform:scale(1.6);transform-origin:92% 100%;object-position:50% 100%}.step:hover .ill.z img{transform:scale(1.66)}
.step .ill .n{position:absolute;left:14px;top:14px;width:36px;height:36px;border-radius:50%;background:var(--acc);color:#fff;font-family:var(--serif);font-weight:700;font-size:20px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 14px rgba(91,26,34,.35)}
.step .tx{padding:20px 22px 24px}
.step h3{margin-bottom:8px}
.step p{color:var(--ink2);font-size:15.5px}
/* ---------- pitch ---------- */
.pitch{display:grid;gap:24px;margin-top:30px}
@media(min-width:900px){.pitch{grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}}
.incl{display:grid;gap:15px}
.incl>div{display:flex;gap:14px;align-items:flex-start;font-size:16.5px;line-height:1.45;color:var(--ink)}
.incl .ck{flex:0 0 26px;height:26px;border-radius:50%;background:var(--acc);display:flex;align-items:center;justify-content:center;margin-top:1px}
.incl .ck svg{width:13px;height:13px;stroke:#fff;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.pcard{background:#fff;border:1px solid var(--line);border-radius:26px;padding:30px 26px 26px;text-align:center;box-shadow:0 24px 60px rgba(60,20,10,.1);position:relative}
.pcard::before{content:"";position:absolute;inset:9px;border:1px solid var(--gold);border-radius:19px;opacity:.55;pointer-events:none}
.pcard .pt{font-family:var(--serif);font-size:22px;color:var(--acc-d);font-weight:600}
.price{font-family:var(--serif);font-size:58px;font-weight:600;line-height:1;margin:10px 0 4px;color:var(--ink)}
.price small{font-size:22px;font-weight:500}
.pcard .pn{font-size:14px;color:var(--muted);margin-bottom:18px;font-weight:600}
.pcard .note{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.4}
/* ---------- faq ---------- */
.faq{max-width:720px;margin:0 auto}
.faq details{border-bottom:1px solid var(--line);padding:14px 0}
.faq summary{font-weight:700;cursor:pointer;list-style:none;font-size:17px;display:flex;justify-content:space-between;gap:12px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--acc);font-size:22px;font-weight:400;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq p{font-size:15.5px;color:var(--ink2);margin-top:8px}
/* ---------- footer ---------- */
.ftr{padding:28px var(--gut) 34px;text-align:center;font-size:12.5px;color:var(--muted)}
.ftr a{color:inherit}
/* ---------- life ---------- */
.rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.1s}.rv.d2{transition-delay:.2s}.rv.d3{transition-delay:.3s}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.hs svg{animation:none}}
/* ---------- checkout / success ---------- */
.co{max-width:1040px;margin:0 auto;padding:28px var(--gut) 60px;display:grid;gap:24px}
@media(min-width:860px){.co{grid-template-columns:.9fr 1.1fr;gap:44px;align-items:start;padding-top:40px}}
.card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 14px 40px rgba(60,20,10,.07)}
.sum{display:flex;gap:18px;align-items:flex-start}
.minicov{flex:0 0 84px;height:116px;border-radius:3px 7px 7px 3px;background:linear-gradient(135deg,#4E141B 0%,#6E1F2A 55%,#5B1A22 100%);color:var(--cream);position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-family:var(--book);font-size:9px;line-height:1.2;box-shadow:6px 8px 18px rgba(60,20,10,.3)}
.minicov::before{content:"";position:absolute;inset:6px;border:1px solid rgba(234,214,179,.55);border-radius:2px 5px 5px 2px}
.minicov b{font-size:10.5px;display:block;margin-bottom:3px}
.minicov .sig{font-size:11px;margin-top:8px;color:var(--gold2)}
.sum h3{font-size:24px;margin-bottom:4px}
.sum ul{margin:8px 0 0;padding:0;list-style:none;color:var(--ink2);font-size:14.5px;display:grid;gap:4px}
.sum ul li::before{content:"— ";color:var(--gold)}
.sum .pr{font-family:var(--serif);font-size:30px;font-weight:600;margin-top:12px}
label{display:block;font-size:13px;font-weight:800;color:var(--ink2);margin:16px 0 6px;letter-spacing:.02em}
label:first-child{margin-top:0}
input{width:100%;border:1.5px solid var(--line);border-radius:14px;padding:14px 16px;font-size:16px;background:#FFFDF9;font-family:inherit;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}
input:focus{border-color:var(--acc);box-shadow:0 0 0 4px rgba(122,36,48,.1)}
.seg{display:flex;gap:4px;background:var(--paper2);border-radius:14px;padding:4px}
.seg button{flex:1;border:0;background:transparent;border-radius:11px;padding:11px 6px;font-weight:700;font-size:14px;color:var(--muted);font-family:inherit;cursor:pointer}
.seg button.on{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.12)}
.pay{display:grid;gap:10px;margin-top:22px}
@media(min-width:480px){.pay{grid-template-columns:1fr 1fr}}
.pay a{display:flex;align-items:center;justify-content:center;gap:10px;border-radius:16px;padding:16px;font-weight:800;color:#fff;text-decoration:none;font-size:17px;transition:transform .15s,filter .15s}
.pay a:hover{transform:translateY(-1px);filter:brightness(1.05)}
.pay .payme{background:#00B8B8}.pay .click{background:#0F8FE5}
.pay a i{font-style:normal;font-size:12px;font-weight:700;opacity:.9;background:rgba(255,255,255,.22);padding:3px 8px;border-radius:999px}
.legal{font-size:12.5px;color:var(--muted);margin-top:14px;line-height:1.45}
.legal a{color:var(--acc)}
.ok{max-width:520px;margin:0 auto;padding:40px var(--gut) 60px;text-align:center}
.ok .ck{width:84px;height:84px;border-radius:50%;background:#E8EFE9;margin:0 auto 18px;display:flex;align-items:center;justify-content:center}
.ok .ck svg{width:44px;height:44px;stroke:#5E7A5A;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:draw .7s .2s ease forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.ok h2{margin-bottom:10px}
.ok p{color:var(--ink2);font-size:17px}
.ok .btn{margin-top:26px}
.ok .steps3{margin-top:30px;text-align:left;display:grid;gap:12px}
.ok .steps3 div{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:var(--ink2)}
.ok .steps3 i{flex:0 0 26px;height:26px;border-radius:50%;background:var(--peach2);color:var(--acc-d);font-style:normal;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
/* demo nav */
.nav{display:flex;gap:8px;overflow:auto;padding:10px var(--gut);border-top:1px solid var(--line);background:#fff;position:relative;z-index:10}
.nav a{white-space:nowrap;font-size:12px;color:var(--muted);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-weight:600}
.nav a.on{color:var(--ink);border-color:var(--ink)}

@media(pointer:coarse){body::before{mix-blend-mode:normal;opacity:.045}}
/* ---------- review fixes 07.11 ---------- */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
@media(max-width:359px){.lang .f{display:none}.lang button{padding:6px 9px}.brand{font-size:24px}} /* 320px: switcher was 10px wider than the screen */
@media(pointer:coarse){body::before{mix-blend-mode:normal}} /* full-screen multiply overlay repaints every scroll frame in WKWebView */
/* ---------- founder review 07.11 (2) ---------- */
/* step 1: Telegram chat instead of a stock photo */
.step .ill.tgm{display:flex;flex-direction:column;background:linear-gradient(165deg,#DCE7C8,#BFD3AA);font-family:var(--sans)}
.tg-top{display:flex;gap:9px;align-items:center;padding:9px 14px 9px 62px;background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.06)}
.tg-av{flex:0 0 30px;height:30px;border-radius:50%;background:var(--acc);color:#F6E7CB;display:flex;align-items:center;justify-content:center;font:italic 700 16px var(--serif)}
.tg-top b{display:block;font-size:13.5px;line-height:1.1;color:var(--ink)}.tg-top small{font-size:11px;color:#8A9AA6}
.tg-body{flex:1;display:flex;flex-direction:column;justify-content:flex-end;gap:7px;padding:10px 12px 12px}
.tg-m{max-width:84%;padding:7px 11px;border-radius:14px;font-size:13px;line-height:1.35;color:#1F2A33;box-shadow:0 1px 1px rgba(0,0,0,.12)}
.tg-m.in{align-self:flex-start;background:#fff;border-bottom-left-radius:4px}.tg-m.in b{color:var(--acc);font-size:12px}
.tg-m.out{align-self:flex-end;background:#EFFDDE;border-bottom-right-radius:4px}
.tg-m.voice{display:flex;align-items:center;gap:8px;padding:7px 10px}
.tg-m.voice .pl{flex:0 0 30px;height:30px;border-radius:50%;background:#55A64F;color:#fff;font-style:normal;font-size:11px;display:flex;align-items:center;justify-content:center;padding-left:2px}
.tg-m.voice .wv{display:flex;align-items:center;gap:2px;height:20px}.tg-m.voice .wv i{display:block;width:2.5px;border-radius:2px;background:#7DBF73}
.tg-m.voice small{font-size:11px;color:#5E9A57}
.tg-m.tg-ok{font-size:12px;color:#4A5A66}
/* trust strip under the price */
.trust{margin-top:18px;padding-top:16px;border-top:1px dashed var(--line);display:grid;gap:9px;text-align:left;font-size:13px;line-height:1.35;color:var(--ink2)}
.trust>div{display:flex;gap:10px;align-items:flex-start}.trust svg{flex:0 0 18px;width:18px;height:18px;color:var(--acc);margin-top:1px}
/* tour hint: show that it moves */
.bt-hint{font-weight:600;color:var(--ink2)}
.bt-hint .bt-ic{animation:hintb 1.5s ease-in-out infinite}
@keyframes hintb{0%,100%{transform:translateY(-2px)}50%{transform:translateY(4px)}}
@media(prefers-reduced-motion:reduce){.bt-hint .bt-ic{animation:none}}
/* returning buyer */
.retbar{position:fixed;left:12px;right:12px;bottom:12px;z-index:30;display:flex;align-items:center;gap:6px;max-width:560px;margin:0 auto;background:var(--acc-d);border-radius:16px;box-shadow:0 14px 34px rgba(60,20,10,.3)}
.retbar a{flex:1;padding:13px 4px 13px 16px;color:#F6E7CB;font-size:14px;font-weight:700;text-decoration:none;line-height:1.3}
.retbar button{flex:0 0 40px;height:40px;border:0;background:transparent;color:#F6E7CB;font-size:22px;cursor:pointer}
/* copies stepper */
.qty{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:16px 0 4px;padding:12px 14px;border:1px solid var(--line,#E8D9C8);border-radius:14px;background:rgba(255,253,249,.7);text-align:left}
.qty .ql{display:flex;flex-direction:column;gap:3px;min-width:0}
.qty .ql b{font-size:15px}
.qty .ql small{font-size:12.5px;line-height:1.35;color:var(--muted,#7A6A60)}
.qty .qs{display:flex;align-items:center;gap:4px;flex:0 0 auto}
.qty button{width:40px;height:40px;border-radius:50%;border:1px solid var(--line,#E0CDB8);background:#fff;font-size:22px;line-height:1;color:var(--ink,#3B2A22);cursor:pointer;display:flex;align-items:center;justify-content:center;touch-action:manipulation;transition:transform .12s,background .15s}
.qty button:active{transform:scale(.92)}
.qty button:disabled{opacity:.35;cursor:default}
.qty output{min-width:28px;text-align:center;font-family:var(--serif);font-size:24px;font-weight:600}
.sum .qty{margin-top:14px}
.herorev .st.src{letter-spacing:.3px;font-size:12px;font-weight:700;text-transform:none;color:var(--gold)}
.co>div,.sum>div{min-width:0}.sum>div:last-child{flex:1}
@media(max-width:420px){.sum .qty{flex-wrap:wrap}.sum .qty .qs{margin-left:auto}}
