/* ───────── Шрифти (self-hosted, тільки кирилиця + латиниця) ───────── */
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400 700;font-display:swap;src:url("../fonts/cormorant-garamond-italic-cyrillic.b554abc2d050.woff2") format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400 700;font-display:swap;src:url("../fonts/cormorant-garamond-italic-latin.3e2c4175a96d.woff2") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/cormorant-garamond-normal-cyrillic.e1df04190d1b.woff2") format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/cormorant-garamond-normal-latin.c47ff12887a3.woff2") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/manrope-normal-cyrillic.e58febde317b.woff2") format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Manrope';font-style:normal;font-weight:400 700;font-display:swap;src:url("../fonts/manrope-normal-latin.938c6e8019b6.woff2") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212,U+2215,U+FEFF,U+FFFD}

/* ───────── Токени ───────── */
:root{
  --bg:#0b0820;--bg-2:#130e2c;--bg-3:#1b1440;
  --surface:rgba(255,255,255,.045);--surface-2:rgba(255,255,255,.075);
  --line:rgba(227,184,102,.2);--line-soft:rgba(255,255,255,.09);
  --gold:#e3b866;--gold-2:#f6e2b3;--gold-deep:#b8893b;
  --violet:#9274ff;--violet-deep:#4a2fa8;--rose:#e2709f;
  --text:#eeeaf8;--muted:#aaa3c8;
  --accent:var(--gold);
  --serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;
  --sans:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --r:20px;--r-sm:12px;
  --wrap:1180px;--gutter:clamp(16px,4vw,32px);
  --shadow:0 24px 60px -24px rgba(0,0,0,.7);
}
.theme-tarot{--accent:#e3b866;--glow-a:rgba(146,116,255,.34);--glow-b:rgba(226,112,159,.2)}
.theme-numerology{--accent:#f0c97a;--glow-a:rgba(74,107,255,.3);--glow-b:rgba(146,116,255,.24)}
body{--glow-a:rgba(146,116,255,.3);--glow-b:rgba(226,112,159,.16)}

/* ───────── База ───────── */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:88px;overflow-x:clip}
body{margin:0;background:var(--bg);color:var(--text);font:400 1rem/1.65 var(--sans);min-height:100vh;
  background-image:radial-gradient(900px 600px at 12% -5%,var(--glow-a),transparent 62%),radial-gradient(800px 620px at 105% 18%,var(--glow-b),transparent 60%);
  background-attachment:scroll;background-repeat:no-repeat}
img,svg,canvas{display:block;max-width:100%}
img{height:auto}
a{color:var(--gold-2);text-decoration:none}
a:hover{color:#fff}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.12;margin:0 0 .5em;letter-spacing:.005em;text-wrap:balance}
h1{font-size:clamp(2.3rem,5.6vw,4.2rem)}
h2{font-size:clamp(1.9rem,4vw,3rem)}
h3{font-size:1.45rem}
p{margin:0 0 1em}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}
::selection{background:var(--violet-deep);color:#fff}
.wrap{width:min(var(--wrap),100% - 2*var(--gutter));margin-inline:auto}
.section{padding:clamp(56px,9vw,112px) 0;position:relative}
.section--tight{padding-top:clamp(32px,5vw,56px)}
.center{text-align:center}
.muted{color:var(--muted)}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Зоряне небо: два шари крапок, що мерехтять */
.sky{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.sky::before,.sky::after{content:"";position:absolute;inset:-10%;background-repeat:repeat;
  background-image:radial-gradient(1.2px 1.2px at 20px 30px,#fff,transparent 60%),radial-gradient(1px 1px at 140px 80px,#fff,transparent 60%),radial-gradient(1.4px 1.4px at 260px 190px,var(--gold-2),transparent 60%),radial-gradient(1px 1px at 90px 240px,#fff,transparent 60%),radial-gradient(1px 1px at 320px 40px,#cfc4ff,transparent 60%),radial-gradient(1.2px 1.2px at 200px 310px,#fff,transparent 60%);
  background-size:380px 380px;opacity:.5;animation:twinkle 7s ease-in-out infinite alternate}
.sky::after{background-size:560px 560px;background-position:120px 60px;opacity:.3;animation-duration:11s;animation-delay:-4s}
@keyframes twinkle{from{opacity:.2}to{opacity:.6}}

/* ───────── Дрібні елементи ───────── */
.eyebrow{display:inline-flex;align-items:center;gap:.6em;font-size:.78rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:1.1rem}
.eyebrow::before{content:"✦";font-size:.9em}
.center .eyebrow::after{content:"✦";font-size:.9em}
.lead{font-size:clamp(1.05rem,1.6vw,1.22rem);color:#d6d0ea;max-width:60ch}
.center .lead{margin-inline:auto}
.gold{background:linear-gradient(100deg,var(--gold-2),var(--gold) 45%,#fff3d6 70%,var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;font-style:italic}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:.95em 1.7em;border-radius:999px;border:1px solid transparent;font-weight:700;font-size:.95rem;letter-spacing:.02em;cursor:pointer;transition:transform .2s,box-shadow .25s,background .25s,color .2s;
  background:linear-gradient(135deg,#f7e3b2,var(--gold) 55%,var(--gold-deep));color:#1c1305;box-shadow:0 10px 30px -10px rgba(227,184,102,.55)}
.btn:hover{transform:translateY(-2px);color:#1c1305;box-shadow:0 16px 40px -10px rgba(227,184,102,.75)}
.btn--ghost{background:transparent;color:var(--gold-2);border-color:var(--line);box-shadow:none}
.btn--ghost:hover{background:rgba(227,184,102,.1);color:#fff;box-shadow:none;border-color:var(--gold)}
.btn--sm{padding:.65em 1.2em;font-size:.85rem}
.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.8rem}
.center .btn-row{justify-content:center}
.card{background:linear-gradient(160deg,var(--surface-2),var(--surface));border:1px solid var(--line-soft);border-radius:var(--r);padding:clamp(20px,3vw,30px);position:relative;backdrop-filter:blur(6px)}
.chip{display:inline-flex;align-items:center;gap:.4em;padding:.38em .95em;border-radius:999px;border:1px solid var(--line-soft);font-size:.85rem;color:var(--muted);background:var(--surface);transition:.2s;white-space:nowrap}
a.chip:hover,.chip.is-active{color:#1c1305;background:var(--gold);border-color:var(--gold)}
.divider{display:flex;align-items:center;gap:16px;color:var(--gold);margin:0 auto 1.4rem;max-width:260px}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--line))}
.divider::after{transform:scaleX(-1)}

/* Поява блоків під час прокрутки */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0)*90ms)}
.reveal.is-in{opacity:1;transform:none}
.no-js .reveal{opacity:1;transform:none}

/* ───────── Шапка ───────── */
.header{position:sticky;top:0;z-index:50;transition:background .3s,box-shadow .3s,border-color .3s;border-bottom:1px solid transparent}
.header.is-stuck{background:rgba(11,8,32,.82);backdrop-filter:blur(14px);border-color:var(--line-soft)}
.header__in{display:flex;align-items:center;gap:20px;height:72px}
.logo{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif);font-size:1.45rem;font-weight:600;color:#fff;letter-spacing:.02em;white-space:nowrap}
.logo svg{width:30px;height:30px;color:var(--gold);flex:none}
.nav{display:flex;align-items:center;gap:clamp(12px,2vw,26px);margin-left:auto}
.nav a{color:#d9d3ee;font-size:.93rem;font-weight:500;position:relative;padding:6px 0;white-space:nowrap}
.header__cta{flex:none;white-space:nowrap}
.nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.nav a:hover::after,.nav a[aria-current]::after{transform:scaleX(1)}
.nav a[aria-current]{color:#fff}
.lang{display:inline-flex;border:1px solid var(--line-soft);border-radius:999px;overflow:hidden;font-size:.78rem;font-weight:700;flex:none}
.lang a,.lang span{padding:.42em .8em;color:var(--muted)}
.lang span{background:var(--surface-2);color:var(--gold-2)}
.burger{display:none;width:44px;height:44px;border:1px solid var(--line-soft);border-radius:12px;background:var(--surface);cursor:pointer;position:relative;flex:none}
.burger i,.burger i::before,.burger i::after{content:"";position:absolute;left:11px;right:11px;height:2px;background:var(--gold-2);border-radius:2px;transition:.3s}
.burger i{top:21px}.burger i::before{top:-7px;left:0;right:0}.burger i::after{top:7px;left:0;right:0}
.nav-open .burger i{background:transparent}
.nav-open .burger i::before{top:0;transform:rotate(45deg)}
.nav-open .burger i::after{top:0;transform:rotate(-45deg)}
@media (min-width:1181px) and (max-width:1599px){
  .header__in{gap:14px}
  .nav{gap:14px}
  .nav a{font-size:.88rem}
  .header__cta{display:none}
}
@media (max-width:1180px){
  .burger{display:block}
  .header__cta{display:none}
  .lang{margin-left:auto}
  .nav{position:fixed;inset:72px 0 0;flex-direction:column;align-items:stretch;gap:0;padding:24px var(--gutter) 40px;background:rgba(11,8,32,.97);backdrop-filter:blur(16px);margin:0;opacity:0;transform:translateY(-12px);transition:opacity .3s,transform .35s cubic-bezier(.2,.7,.2,1),visibility .3s;overflow:auto;visibility:hidden}
  .nav a{font-family:var(--serif);font-size:1.7rem;padding:14px 0;border-bottom:1px solid var(--line-soft)}
  .nav a::after{display:none}
  .nav .btn{margin-top:24px;font-family:var(--sans);font-size:1rem;border:0}
  .nav-open .nav{transform:none;visibility:visible;opacity:1}
  .nav-open{overflow:hidden}
}
@media (min-width:1181px){.nav .btn{display:none}}
@media (min-width:1360px) and (max-width:1599px){.nav .btn{display:inline-flex;padding:.55em 1.1em;font-size:.88rem}}

/* ───────── Hero ───────── */
.hero{padding:clamp(32px,6vw,72px) 0 clamp(56px,8vw,104px);position:relative}
.hero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(28px,5vw,72px);align-items:center}
.hero__art{position:relative;display:grid;place-items:center;min-height:420px}
.hero h1{margin-bottom:.45em}
.hero__facts{display:flex;flex-wrap:wrap;gap:10px 28px;margin:2.2rem 0 0;padding:1.4rem 0 0;border-top:1px solid var(--line-soft);list-style:none}
.hero__facts li{font-size:.9rem;color:var(--muted);display:flex;flex-direction:column}
.hero__facts b{font-family:var(--serif);font-size:1.9rem;font-weight:600;color:var(--gold-2);line-height:1.1}
.fx-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.hero .wrap{position:relative;z-index:1}
@media (max-width:860px){
  .hero__grid{grid-template-columns:1fr}
  .hero__art{order:-1;min-height:0}
  .hero--home .hero__art{margin-bottom:8px}
}

/* Портрет в арці з орбітою чисел */
.portrait{position:relative;width:min(390px,78vw);aspect-ratio:3/4}
.portrait__arch{position:absolute;inset:0;border-radius:50% 50% 26px 26px/37.5% 37.5% 26px 26px;overflow:hidden;border:1px solid var(--gold);box-shadow:var(--shadow),0 0 0 8px rgba(227,184,102,.06),0 0 90px -10px rgba(146,116,255,.55);z-index:2;background:var(--bg-3)}
.portrait__arch img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;filter:saturate(.9) contrast(1.04)}
.portrait__arch::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(74,47,168,.18),transparent 38%,rgba(11,8,32,.72) 100%);mix-blend-mode:multiply}
.portrait__arch::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(120% 70% at 50% 0%,rgba(246,226,179,.16),transparent 60%);pointer-events:none}
.orbit{position:absolute;left:50%;top:44%;width:150%;aspect-ratio:1;transform:translate(-50%,-50%);z-index:1;pointer-events:none}
.orbit svg{width:100%;height:100%;animation:spin 90s linear infinite;overflow:visible}
.orbit--rev svg{animation-direction:reverse;animation-duration:140s}
.orbit text{font-family:var(--serif);font-size:15px;fill:var(--gold);letter-spacing:6px;opacity:.75}
.orbit circle{fill:none;stroke:var(--line);stroke-width:.6}
@keyframes spin{to{transform:rotate(360deg)}}
.portrait__card{position:absolute;z-index:1;bottom:6%}
.portrait__card .tcard{--w:clamp(92px,11vw,132px)}
.portrait__card--l{left:-20%;--rot:-14deg}
.portrait__card--r{right:-20%;--rot:12deg;bottom:16%}
.portrait__badge{position:absolute;z-index:3;right:-8%;top:10%;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;text-align:center;background:radial-gradient(circle at 30% 25%,#2a1f63,#120d2e);border:1px solid var(--gold);font-family:var(--serif);font-size:2.4rem;font-weight:600;color:var(--gold-2);box-shadow:0 0 40px -6px rgba(227,184,102,.5);animation:float 7s ease-in-out infinite}
@media (min-width:981px) and (max-width:1260px){.portrait__card--l{left:-9%}.portrait__card--r{right:-9%}.portrait__badge{right:-4%}}
@media (max-width:860px){.portrait{width:min(300px,64vw)}.portrait__badge{width:70px;height:70px;font-size:1.8rem}}

/* ───────── Карти Таро (CSS + SVG, без картинок) ───────── */
.tcard{--w:150px;width:var(--w);aspect-ratio:5/8;perspective:900px;flex:none}
.tcard__in{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .9s cubic-bezier(.3,.7,.2,1)}
.tcard.is-flipped .tcard__in{transform:rotateY(180deg)}
.tcard__back,.tcard__face{position:absolute;inset:0;border-radius:calc(var(--w)*.075);backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden;box-shadow:0 18px 40px -14px rgba(0,0,0,.8)}
.tcard__back{background:
  radial-gradient(circle at 50% 50%,rgba(227,184,102,.28) 0 9%,transparent 9.5%),
  repeating-conic-gradient(from 0deg at 50% 50%,rgba(227,184,102,.16) 0 4deg,transparent 4deg 15deg),
  radial-gradient(circle at 50% 50%,#3a2788,#170f3c 70%);border:1px solid var(--gold)}
.tcard__back::before{content:"";position:absolute;inset:6%;border:1px solid rgba(227,184,102,.6);border-radius:calc(var(--w)*.05)}
.tcard__back::after{content:"✦";position:absolute;inset:0;display:grid;place-items:center;color:var(--gold-2);font-size:calc(var(--w)*.2);text-shadow:0 0 18px rgba(227,184,102,.9)}
.tcard__face{transform:rotateY(180deg);background:linear-gradient(170deg,#fbf1d6,#ecd7a4);color:#2b1a54;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:9% 6%;border:1px solid var(--gold-deep);text-align:center}
.tcard__face::before{content:"";position:absolute;inset:4.5%;border:1px solid rgba(74,47,168,.45);border-radius:calc(var(--w)*.045);pointer-events:none}
.tcard__num{font-family:var(--serif);font-weight:700;font-size:calc(var(--w)*.13);letter-spacing:.08em;line-height:1}
.tcard__sym{width:52%;aspect-ratio:1;color:#4a2fa8}
.tcard__sym svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.tcard__name{font-family:var(--serif);font-weight:700;font-size:calc(var(--w)*.105);line-height:1.05;text-transform:uppercase;letter-spacing:.04em}
.tcard--face .tcard__in{transform:rotateY(180deg)}

/* Віяло карт у hero */
.fan{position:relative;width:min(460px,88vw);height:clamp(300px,42vw,400px);--mx:0;--my:0}
.fan .tcard{--w:clamp(104px,15vw,150px);position:absolute;left:50%;bottom:8%;margin-left:calc(var(--w)/-2);transform-origin:50% 135%;
  transform:rotate(0deg) translateY(30px);opacity:0;transition:transform 1.1s cubic-bezier(.2,.8,.2,1),opacity .6s;transition-delay:calc(var(--n)*110ms + 200ms)}
.fan.is-in .tcard{opacity:1;transform:rotate(calc(var(--a) + var(--mx)*3deg)) translateY(calc(var(--lift,0px) + var(--my)*-6px))}
.fan .tcard:hover{--lift:-22px;z-index:9}
.fan .tcard:nth-of-type(2){--n:0;--a:-34deg}
.fan .tcard:nth-of-type(3){--n:1;--a:-17deg}
.fan .tcard:nth-of-type(4){--n:2;--a:0deg}
.fan .tcard:nth-of-type(5){--n:3;--a:17deg}
.fan .tcard:nth-of-type(6){--n:4;--a:34deg}
.fan.is-in .tcard__in{animation:cardbob 6s ease-in-out infinite;animation-delay:calc(var(--n)*-1.1s)}
@keyframes cardbob{0%,100%{translate:0 0}50%{translate:0 -9px}}
.fan__glow{position:absolute;left:50%;bottom:0;width:80%;height:60%;transform:translateX(-50%);background:radial-gradient(closest-side,rgba(146,116,255,.5),transparent);filter:blur(30px);z-index:-1}
.floaty{animation:float 8s ease-in-out infinite;transform:rotate(var(--rot,0deg))}
@keyframes float{0%,100%{translate:0 0}50%{translate:0 -14px}}

/* Карта дня */
.cod{display:grid;grid-template-columns:auto 1fr;gap:clamp(24px,5vw,64px);align-items:center}
.cod__stage{position:relative;width:clamp(210px,28vw,290px);height:clamp(300px,40vw,400px);display:grid;place-items:center}
.cod__deck{position:relative;width:var(--w);aspect-ratio:5/8;--w:clamp(150px,20vw,200px);cursor:pointer;border:0;background:none;padding:0}
.cod__deck .tcard{--w:inherit;position:absolute;inset:0;width:100%;transition:transform .5s cubic-bezier(.3,.7,.2,1)}
.cod__deck .tcard:nth-child(1){transform:translate(-10px,10px) rotate(-5deg)}
.cod__deck .tcard:nth-child(2){transform:translate(-5px,5px) rotate(-2.5deg)}
.cod__deck .tcard:nth-child(3){transform:translate(5px,3px) rotate(3deg)}
.cod__deck:hover .tcard:nth-child(1){transform:translate(-22px,12px) rotate(-10deg)}
.cod__deck:hover .tcard:nth-child(3){transform:translate(18px,6px) rotate(8deg)}
.cod__deck:hover .tcard:nth-child(4){transform:translateY(-10px)}
.cod.is-shuffling .cod__deck .tcard{animation:shuffle .55s ease-in-out 3}
.cod.is-shuffling .cod__deck .tcard:nth-child(even){animation-direction:reverse}
@keyframes shuffle{0%,100%{translate:0 0;rotate:0deg}35%{translate:-70% -6%;rotate:-12deg}70%{translate:60% 4%;rotate:10deg}}
.cod.is-drawn .cod__deck .tcard:nth-child(4){transform:translateY(-14px) scale(1.12);z-index:5}
.cod.is-drawn .cod__deck .tcard:nth-child(-n+3){opacity:.35;filter:blur(1px)}
.cod.is-drawn .cod__deck{cursor:default}
.cod__hint{position:absolute;bottom:-6px;left:0;right:0;text-align:center;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);animation:pulse 2.2s ease-in-out infinite}
.cod.is-drawn .cod__hint,.cod.is-shuffling .cod__hint{display:none}
@keyframes pulse{50%{opacity:.35}}
.cod__result{opacity:0;transform:translateY(14px);transition:.7s .9s}
.cod.is-drawn .cod__result{opacity:1;transform:none}
.cod__result h3{font-size:clamp(1.8rem,3.4vw,2.5rem);color:var(--gold-2)}
.cod__keys{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 1rem}
@media (max-width:760px){.cod{grid-template-columns:1fr;justify-items:center;text-align:center}.cod__keys{justify-content:center}}

/* ───────── Нумерологія: цифри ───────── */
.calc{max-width:520px;width:100%}
.calc__form{display:flex;gap:10px;flex-wrap:wrap}
.calc__form input{flex:1 1 180px;min-width:0}
.calc__steps{min-height:0;margin-top:18px;display:grid;gap:8px}
.calc__row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-family:var(--serif);font-size:1.35rem;color:#dcd5f3;opacity:0;transform:translateY(8px);animation:rowin .5s forwards}
@keyframes rowin{to{opacity:1;transform:none}}
.digit{width:38px;height:44px;border-radius:10px;display:inline-grid;place-items:center;font-family:var(--serif);font-size:1.5rem;font-weight:700;background:linear-gradient(160deg,#2b2064,#191143);border:1px solid var(--line);color:var(--gold-2);opacity:0;transform:translateY(-18px) rotateX(80deg);animation:digitin .5s cubic-bezier(.2,.9,.3,1.3) forwards;animation-delay:calc(var(--n)*70ms)}
@keyframes digitin{to{opacity:1;transform:none}}
.calc__row b{color:var(--gold-2);font-size:1.6rem;margin-left:4px}
.calc__result{display:none;margin-top:22px;padding-top:22px;border-top:1px solid var(--line-soft);gap:20px;align-items:center}
.calc.is-done .calc__result{display:flex}
.calc__num{flex:none;width:112px;height:112px;border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:4rem;font-weight:700;line-height:1;color:#1c1305;background:radial-gradient(circle at 32% 28%,#fff3d2,var(--gold) 55%,var(--gold-deep));box-shadow:0 0 0 8px rgba(227,184,102,.1),0 0 60px rgba(227,184,102,.55);position:relative}
.calc.is-done .calc__num{animation:pop .7s cubic-bezier(.2,.9,.3,1.4)}
.calc__num::after{content:"";position:absolute;inset:-14px;border-radius:50%;border:1px solid var(--gold);opacity:0}
.calc.is-done .calc__num::after{animation:ring 1.4s ease-out}
@keyframes pop{from{transform:scale(.3);opacity:0}}
@keyframes ring{from{opacity:.9;transform:scale(.7)}to{opacity:0;transform:scale(1.7)}}
.calc__result h3{margin:0 0 .2em;color:var(--gold-2)}
.calc__result p{margin:0 0 .7em;font-size:.95rem;color:#d6d0ea}
@media (max-width:480px){.calc__result{flex-direction:column;text-align:center}}

.numgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;perspective:1000px}
.numchip{aspect-ratio:1;position:relative;cursor:pointer;border:0;background:none;padding:0;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.3,.7,.2,1);border-radius:var(--r)}
.numchip:hover,.numchip:focus-visible,.numchip.is-on{transform:rotateY(180deg)}
.numchip span{position:absolute;inset:0;border-radius:var(--r);display:grid;place-items:center;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:1px solid var(--line-soft);padding:14px;text-align:center}
.numchip__f{font-family:var(--serif);font-size:clamp(3.4rem,7vw,4.6rem);font-weight:600;color:var(--gold-2);background:radial-gradient(circle at 50% 30%,rgba(146,116,255,.28),rgba(255,255,255,.03));text-shadow:0 0 30px rgba(227,184,102,.45)}
.numchip__b{transform:rotateY(180deg);background:linear-gradient(160deg,#f7e3b2,var(--gold));color:#1c1305;font-size:.9rem;line-height:1.35;font-weight:600}
.numchip__b i{display:block;font-family:var(--serif);font-style:normal;font-size:1.3rem;font-weight:700;margin-bottom:4px}

/* ───────── Два шляхи (головна) ───────── */
.paths{display:grid;grid-template-columns:1fr 1fr;gap:clamp(16px,3vw,28px)}
.path{overflow:hidden;min-height:340px;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(24px,3.5vw,40px);border-radius:28px;border:1px solid var(--line);position:relative;color:var(--text);isolation:isolate;transition:transform .4s,border-color .3s}
.path:hover{transform:translateY(-6px);border-color:var(--gold);color:var(--text)}
.path--num{background:radial-gradient(120% 90% at 90% 0%,#2a3bb0 0%,#151040 55%,#0e0a26)}
.path--tarot{background:radial-gradient(120% 90% at 10% 0%,#6a2f9c 0%,#1d1147 55%,#0e0a26)}
.path h3{font-size:clamp(1.8rem,3.4vw,2.5rem);margin-bottom:.3em}
.path p{color:#d6d0ea;max-width:38ch}
.path__more{font-weight:700;color:var(--gold-2);font-size:.9rem;letter-spacing:.06em;text-transform:uppercase}
.path__more::after{content:" →";transition:margin .3s}
.path:hover .path__more::after{margin-left:8px}
.path__digits{position:absolute;inset:0;z-index:-1;font-family:var(--serif);font-weight:600;color:rgba(246,226,179,.16)}
.path__digits i{position:absolute;font-style:normal;animation:float 9s ease-in-out infinite;animation-delay:calc(var(--n)*-1.3s)}
.path__digits i:nth-child(1){--n:0;font-size:9rem;right:6%;top:-8%;color:rgba(246,226,179,.3)}
.path__digits i:nth-child(2){--n:1;font-size:4.5rem;right:38%;top:8%}
.path__digits i:nth-child(3){--n:2;font-size:6rem;right:-2%;top:42%}
.path__digits i:nth-child(4){--n:3;font-size:3rem;right:30%;top:40%}
.path__digits i:nth-child(5){--n:4;font-size:3.6rem;right:56%;top:-2%}
.path__cards{position:absolute;right:4%;top:6%;z-index:-1;display:flex}
.path__cards .tcard{--w:92px;margin-left:-34px;transition:transform .5s}
.path__cards .tcard:nth-child(1){transform:rotate(-16deg) translateY(12px)}
.path__cards .tcard:nth-child(2){transform:rotate(-2deg)}
.path__cards .tcard:nth-child(3){transform:rotate(14deg) translateY(14px)}
.path:hover .path__cards .tcard:nth-child(1){transform:rotate(-26deg) translate(-12px,14px)}
.path:hover .path__cards .tcard:nth-child(2){transform:translateY(-14px)}
.path:hover .path__cards .tcard:nth-child(3){transform:rotate(24deg) translate(12px,16px)}
@media (max-width:760px){.paths{grid-template-columns:1fr}.path{min-height:300px}}

/* ───────── Сітки ───────── */
.grid{display:grid;gap:clamp(14px,2.4vw,24px)}
.grid--3{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}
.grid--2{grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr))}
.head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:clamp(24px,4vw,44px)}
.head h2{margin:0}
.head--center{flex-direction:column;align-items:center;text-align:center}

/* Послуги */
.service{display:flex;flex-direction:column;gap:10px;transition:transform .3s,border-color .3s}
.service:hover{transform:translateY(-4px);border-color:var(--line)}
.service h3{margin:0}
.service p{color:var(--muted);font-size:.95rem;margin:0;flex:1}
.service__meta{display:flex;flex-wrap:wrap;gap:6px}
.service__meta .chip{font-size:.78rem;padding:.25em .7em}
.service__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding-top:14px;border-top:1px solid var(--line-soft)}
.service__price{font-family:var(--serif);font-size:1.5rem;font-weight:700;color:var(--gold-2);line-height:1.1}
.service__price small{font-family:var(--sans);font-size:.8rem;font-weight:500;color:var(--muted)}

/* Кроки */
.steps{counter-reset:step;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;list-style:none;padding:0;margin:0}
.steps li{counter-increment:step;padding-top:64px;position:relative}
.steps li::before{content:counter(step);position:absolute;top:0;left:0;font-family:var(--serif);font-size:3.4rem;font-weight:600;line-height:1;color:transparent;-webkit-text-stroke:1px var(--gold)}
.steps h3{font-size:1.3rem;margin-bottom:.3em}
.steps p{color:var(--muted);font-size:.95rem;margin:0}

/* Про мене */
.about{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);align-items:center}
.about__photos{position:relative;aspect-ratio:4/5;max-width:440px;width:100%}
.about__photos img{position:absolute;object-fit:cover;border-radius:22px;border:1px solid var(--line);box-shadow:var(--shadow);filter:saturate(.88)}
.about__photos img:nth-child(1){inset:0 14% 12% 0;width:86%;height:88%}
.about__photos img:nth-child(2){right:0;bottom:0;width:46%;height:44%;border-radius:50% 50% 18px 18px/42% 42% 18px 18px;border-color:var(--gold)}
.about ul{list-style:none;padding:0;margin:1.4rem 0 0;display:grid;gap:10px}
.about li{padding-left:1.8em;position:relative;color:#d6d0ea}
.about li::before{content:"✦";position:absolute;left:0;color:var(--gold)}
@media (max-width:860px){.about{grid-template-columns:1fr}.about__photos{margin-inline:auto}}

/* Відгуки */
.reviews{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px var(--gutter) 22px;margin-inline:calc(var(--gutter)*-1);scrollbar-width:thin;scrollbar-color:var(--gold-deep) transparent}
.reviews::-webkit-scrollbar{height:6px}.reviews::-webkit-scrollbar-thumb{background:var(--gold-deep);border-radius:6px}
.review{flex:0 0 min(250px,68vw);scroll-snap-align:center;margin:0}
.review button{display:block;width:100%;padding:8px;border-radius:26px;border:1px solid var(--line);background:linear-gradient(160deg,#241a55,#120d2e);cursor:zoom-in;transition:transform .35s,box-shadow .35s}
.review button:hover{transform:translateY(-6px) rotate(-1deg);box-shadow:0 26px 50px -20px rgba(146,116,255,.7)}
.review img{width:100%;aspect-ratio:9/16;object-fit:cover;object-position:top;border-radius:19px;background:#1a133d}
.review figcaption{padding:10px 6px 0;font-size:.86rem;color:var(--muted);text-align:center}
.review figcaption b{display:block;color:var(--text);font-weight:600}
.reviews--grid{flex-wrap:wrap;overflow:visible;justify-content:center;margin:0;padding:0}
.reviews--grid .review{flex-basis:min(240px,calc(50% - 8px))}
.review--text{flex:0 0 min(360px,84vw);position:relative;display:flex;flex-direction:column;gap:12px;padding:30px 26px 24px;border-radius:26px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02));transition:transform .35s,border-color .35s,box-shadow .35s}
.review--text:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 26px 50px -24px rgba(146,116,255,.6)}
.review__mark{position:absolute;top:10px;right:20px;font-family:var(--serif);font-size:4.2rem;line-height:1;color:var(--gold);opacity:.35}
.review__topic{align-self:flex-start;font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-2);padding:.35em .8em;border:1px solid var(--line-soft);border-radius:999px}
.review--text blockquote{margin:0;font-size:.98rem;line-height:1.65;color:var(--text)}
.review--text figcaption{margin-top:auto;padding:12px 0 0;border-top:1px solid var(--line-soft);text-align:left;font-size:.9rem}
.review--text figcaption b{display:inline;color:var(--gold-2);font-family:var(--serif);font-size:1.15rem}
.reviews--grid .review--text{flex-basis:min(380px,100%)}
.reviews-nav{display:flex;gap:8px}
.reviews-nav button{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--gold-2);cursor:pointer;font-size:1.1rem;transition:.2s}
.reviews-nav button:hover{background:var(--gold);color:#1c1305}
.lightbox{border:0;padding:0;background:transparent;max-width:min(92vw,560px);max-height:92vh}
.lightbox::backdrop{background:rgba(5,3,16,.88);backdrop-filter:blur(6px)}
.lightbox img{max-height:90vh;width:auto;border-radius:18px;border:1px solid var(--gold)}
.lightbox form{position:fixed;top:14px;right:14px}
.lightbox button{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:rgba(11,8,32,.8);color:#fff;font-size:1.3rem;cursor:pointer}

/* FAQ */
.faq{max-width:820px;margin-inline:auto;display:grid;gap:10px}
.faq details{border:1px solid var(--line-soft);border-radius:16px;background:var(--surface);transition:border-color .3s,background .3s}
.faq details[open]{border-color:var(--line);background:var(--surface-2)}
.faq summary{cursor:pointer;list-style:none;padding:18px 54px 18px 22px;font-family:var(--serif);font-size:1.3rem;font-weight:600;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:20px;top:50%;translate:0 -50%;font-family:var(--sans);font-size:1.5rem;font-weight:400;color:var(--gold);transition:rotate .3s}
.faq details[open] summary::after{rotate:45deg}
.faq details>div{padding:0 22px 20px;color:#d6d0ea}
.faq details>div p:last-child{margin:0}

/* Форма запису */
.booking{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,4vw,56px);border:1px solid var(--line);border-radius:32px;padding:clamp(22px,4.5vw,56px);background:radial-gradient(90% 120% at 0% 0%,rgba(146,116,255,.22),transparent 60%),linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.02));position:relative;overflow:hidden}
.booking::before{content:"";position:absolute;right:-120px;top:-120px;width:340px;height:340px;border-radius:50%;border:1px solid var(--line);box-shadow:0 0 0 40px rgba(227,184,102,.03),0 0 0 90px rgba(227,184,102,.02);pointer-events:none}
.booking__contacts{display:grid;gap:10px;margin-top:1.6rem}
.contact{display:flex;align-items:center;gap:12px;color:var(--text);font-weight:600}
.contact svg{width:40px;height:40px;padding:10px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line-soft);color:var(--gold);flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact small{display:block;font-weight:400;color:var(--muted);font-size:.8rem}
.form{display:grid;gap:14px;position:relative}
.field{display:grid;gap:6px}
.field>label,.field>span{font-size:.82rem;font-weight:600;color:var(--muted);letter-spacing:.03em}
.input,.form input[type=text],.form input[type=date],.form select,.form textarea,.calc input{width:100%;padding:.85em 1em;border-radius:14px;border:1px solid var(--line-soft);background:rgba(8,6,24,.55);color:var(--text);transition:border-color .2s,box-shadow .2s;color-scheme:dark}
.form textarea{resize:vertical;min-height:88px}
.form input:focus,.form select:focus,.form textarea:focus,.calc input:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 4px rgba(227,184,102,.14)}
.form select option{background:#17103a}
.radios{display:flex;flex-wrap:wrap;gap:8px}
.radios>div{display:contents}
.radios label{cursor:pointer;display:inline-flex;align-items:center;padding:.6em 1.1em;border-radius:999px;border:1px solid var(--line-soft);background:var(--surface);font-size:.9rem;font-weight:500;color:var(--text);transition:.2s}
.radios input{position:absolute;opacity:0;pointer-events:none}
.radios label:has(input:checked){background:var(--gold);color:#1c1305;border-color:var(--gold);font-weight:700}
.radios label:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:3px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form__note{font-size:.78rem;color:var(--muted);margin:0}
.form__msg{display:none;padding:14px 16px;border-radius:14px;font-weight:600}
.form__msg.is-ok{display:block;background:rgba(120,220,160,.12);border:1px solid rgba(120,220,160,.4);color:#b6f0cf}
.form__msg.is-err{display:block;background:rgba(240,110,130,.12);border:1px solid rgba(240,110,130,.4);color:#ffc2cc}
.form.is-sent>:not(.form__msg){display:none}
@media (max-width:860px){.booking{grid-template-columns:1fr}}

/* ───────── Блог ───────── */
.filters{display:grid;gap:14px;margin-bottom:clamp(22px,4vw,38px)}
.filters__row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.filters__topics .chip{font-size:.95rem;padding:.55em 1.3em;font-weight:600;color:var(--text)}
.filters__search{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.filters__search input[type=search]{flex:1 1 220px;min-width:0;padding:.7em 1.1em;border-radius:999px;border:1px solid var(--line-soft);background:rgba(8,6,24,.55);color:var(--text)}
.filters__search select{padding:.7em 1.1em;border-radius:999px;border:1px solid var(--line-soft);background:rgba(8,6,24,.55);color:var(--text);color-scheme:dark}
.filters__search input:focus,.filters__search select:focus{outline:0;border-color:var(--gold)}
.post{display:flex;flex-direction:column;border-radius:var(--r);overflow:hidden;border:1px solid var(--line-soft);background:linear-gradient(160deg,var(--surface-2),var(--surface));color:var(--text);transition:transform .35s,border-color .3s,box-shadow .35s}
.post:hover{transform:translateY(-6px);border-color:var(--line);box-shadow:var(--shadow);color:var(--text)}
.post__cover{aspect-ratio:16/10;position:relative;overflow:hidden;display:grid;place-items:center}
.post__cover img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.post:hover .post__cover img{transform:scale(1.05)}
.cover-art{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden}
.cover-art--numerology{background:radial-gradient(120% 100% at 80% 0%,#2a3bb0,#151040 60%,#0e0a26)}
.cover-art--tarot{background:radial-gradient(120% 100% at 20% 0%,#6a2f9c,#1d1147 60%,#0e0a26)}
.cover-art b{font-family:var(--serif);font-size:7.5rem;font-weight:600;line-height:1;color:var(--gold-2);text-shadow:0 0 50px rgba(227,184,102,.6);transition:transform .6s}
.cover-art i{position:absolute;font-family:var(--serif);font-style:normal;color:rgba(246,226,179,.16);font-size:3.4rem}
.cover-art i:nth-of-type(1){left:10%;top:8%}.cover-art i:nth-of-type(2){right:12%;bottom:6%;font-size:4.6rem}.cover-art i:nth-of-type(3){left:24%;bottom:10%;font-size:2.4rem}
.post:hover .cover-art b{transform:scale(1.12) rotate(-4deg)}
.cover-art .tcard{--w:78px;transition:transform .6s}
.cover-art .tcard+.tcard{margin-left:-26px}
.cover-art--tarot{display:flex;align-items:center;justify-content:center}
.cover-art .tcard:nth-child(1){transform:rotate(-12deg)}
.cover-art .tcard:nth-child(3){transform:rotate(12deg)}
.post:hover .cover-art .tcard:nth-child(1){transform:rotate(-22deg) translateX(-10px)}
.post:hover .cover-art .tcard:nth-child(2){transform:translateY(-10px)}
.post:hover .cover-art .tcard:nth-child(3){transform:rotate(22deg) translateX(10px)}
.post__body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.post__meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.78rem;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}
.post__meta b{color:var(--accent);font-weight:700}
.post h3{margin:0;font-size:1.5rem;line-height:1.15}
.post p{color:var(--muted);font-size:.93rem;margin:0}
.pager{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:40px}
.pager a,.pager span{min-width:44px;height:44px;padding:0 14px;display:grid;place-items:center;border-radius:999px;border:1px solid var(--line-soft);color:var(--text);font-weight:600}
.pager a:hover{border-color:var(--gold)}
.pager .is-current{background:var(--gold);color:#1c1305;border-color:var(--gold)}
.empty{text-align:center;padding:56px 20px;border:1px dashed var(--line);border-radius:var(--r);color:var(--muted)}

.crumbs{font-size:.84rem;color:var(--muted);margin-bottom:1.4rem}
.crumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 8px}
.center .crumbs ol{justify-content:center}
.crumbs li+li::before{content:"/";margin-right:8px;opacity:.5}
.crumbs li:last-child{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.toc{margin:1.8rem 0;padding:18px 22px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}
.toc b{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.toc ol{margin:.6em 0 0;padding-left:1.3em;display:grid;gap:6px}
.toc li::marker{color:var(--gold)}
.prose h2{scroll-margin-top:96px}
.sitemap{margin-top:2rem;align-items:start}
.sitemap h2{font-size:1.5rem}
.sitemap ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.95rem}
.matrix,.pyth{max-width:520px;width:100%}
.matrix__out,.pyth__out{margin-top:20px;display:grid;gap:16px}
.matrix__out[hidden],.pyth__out[hidden]{display:none}
.matrix__svg{width:min(100%,320px);margin-inline:auto;overflow:visible}
.matrix__sq,.matrix__ring{fill:none;stroke:var(--line);stroke-width:1}
.matrix__ring{stroke-dasharray:2 5}
.matrix__pt circle{fill:#1b1440;stroke:var(--gold);stroke-width:1.2}
.matrix__pt text{font-family:var(--serif);font-size:17px;font-weight:700;fill:var(--gold-2);text-anchor:middle;dominant-baseline:central}
.matrix__pt{opacity:0;animation:rowin .5s forwards;animation-delay:calc(var(--n)*110ms)}
.matrix__pt--main circle{fill:var(--gold)}.matrix__pt--main text{fill:#1c1305}
.matrix__list{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.93rem}
.matrix__list li{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start}
.matrix__list b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);font-family:var(--serif);font-size:1.1rem;color:var(--gold-2)}
.matrix__list small{display:block;color:var(--muted)}
.pyth__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.pyth__cell{border:1px solid var(--line-soft);border-radius:14px;padding:10px 8px;text-align:center;background:var(--surface);opacity:0;animation:digitin .5s forwards;animation-delay:calc(var(--n)*70ms)}
.pyth__cell b{display:block;font-family:var(--serif);font-size:1.7rem;line-height:1.1;color:var(--gold-2);min-height:1.1em}
.pyth__cell.is-empty b{color:var(--muted);opacity:.5}
.pyth__cell small{font-size:.74rem;color:var(--muted)}
.cod__answer{display:inline-block;font-family:var(--serif);font-size:2.2rem;font-weight:700;line-height:1;padding:.25em .7em;border-radius:999px;margin:0 0 .5em;background:var(--gold);color:#1c1305}
.cod__answer[hidden]{display:none}
.cod__answer.is-no{background:transparent;border:1px solid var(--rose);color:var(--rose)}
.cod__answer.is-maybe{background:transparent;border:1px solid var(--line);color:var(--gold-2)}
.crumbs a{color:var(--muted)}.crumbs a:hover{color:var(--gold-2)}
.article{max-width:780px;margin-inline:auto}
.article__cover{border-radius:24px;overflow:hidden;border:1px solid var(--line);margin:1.8rem 0;aspect-ratio:16/9}
.article__cover img{width:100%;height:100%;object-fit:cover}
.prose{font-size:1.08rem;line-height:1.8;color:#e2ddf2}
.prose h2{font-size:clamp(1.6rem,3vw,2.1rem);margin:1.8em 0 .5em;color:#fff}
.prose h3{font-size:1.4rem;margin:1.5em 0 .4em;color:var(--gold-2)}
.prose ul,.prose ol{padding-left:1.3em;margin:0 0 1.2em}
.prose li{margin-bottom:.45em}
.prose li::marker{color:var(--gold)}
.prose blockquote{margin:1.6em 0;padding:1em 1.4em;border-left:2px solid var(--gold);background:var(--surface);border-radius:0 16px 16px 0;font-family:var(--serif);font-size:1.3rem;font-style:italic;color:#fff}
.prose blockquote p:last-child{margin:0}
.prose a{text-decoration:underline;text-underline-offset:3px}
.prose img{border-radius:16px;margin:1.4em 0}
.prose strong{color:#fff}
.cta-box{margin:2.6rem 0;padding:clamp(22px,4vw,36px);border-radius:24px;border:1px solid var(--line);background:radial-gradient(100% 140% at 0% 0%,rgba(146,116,255,.25),transparent 60%),var(--surface);display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.cta-box h3{margin:0 0 .2em;font-size:1.6rem}
.cta-box p{margin:0;color:var(--muted)}

/* ───────── Посадкові ───────── */
.links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.links .chip{padding:.6em 1.2em;font-size:.92rem;color:var(--text)}
.split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(24px,5vw,64px);align-items:start}
.split aside{position:sticky;top:96px;display:grid;gap:16px}
@media (max-width:900px){.split{grid-template-columns:1fr}.split aside{position:static}}
.facts{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.facts li{display:flex;gap:12px;align-items:flex-start;font-size:.95rem;color:#d6d0ea}
.facts li::before{content:"✦";color:var(--gold);flex:none}

/* ───────── Підвал ───────── */
.footer{border-top:1px solid var(--line-soft);padding:56px 0 110px;margin-top:40px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.35));font-size:.92rem}
.footer__grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:32px}
.footer h4{font-family:var(--sans);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:1em;font-weight:700}
.footer ul{list-style:none;margin:0;padding:0;display:grid;gap:0}
.footer a{color:#cfc8e6}.footer a:hover{color:#fff}
.footer ul a{display:inline-block;padding:6px 0}
.footer__note{margin-top:36px;padding-top:22px;border-top:1px solid var(--line-soft);color:var(--muted);font-size:.8rem;display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between}
@media (max-width:860px){.footer__grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.footer__grid{grid-template-columns:1fr}}
@media (min-width:981px){.footer{padding-bottom:56px}}

/* Нижня кнопка на телефоні */
.dock{position:fixed;left:12px;right:12px;bottom:12px;z-index:40;display:none;gap:8px;padding:8px;border-radius:999px;background:rgba(17,12,44,.9);backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:var(--shadow);transform:translateY(140%);transition:transform .4s}
.dock.is-on{transform:none}
.dock .btn{flex:1;padding:.8em 1em}
@media (max-width:980px){.dock{display:flex}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
}
