/* ============ Solmara Good Witch · design system ============ */
@font-face{font-family:"Gloock";src:url(../fonts/gloock.woff) format("woff");font-display:swap}
@font-face{font-family:"Crimson Pro";src:url(../fonts/crimson.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:"Crimson Pro";src:url(../fonts/crimson-italic.woff) format("woff");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Crimson Pro";src:url(../fonts/crimson-bold.woff) format("woff");font-weight:700;font-display:swap}
@font-face{font-family:"Arsenal SC";src:url(../fonts/arsenal-sc.woff) format("woff");font-display:swap}
@font-face{font-family:"Poiret One";src:url(../fonts/poiret-one.woff) format("woff");font-display:swap}
@font-face{font-family:"Outfit";src:url(../fonts/outfit.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:"Outfit";src:url(../fonts/outfit-bold.woff) format("woff");font-weight:700;font-display:swap}
@font-face{font-family:"Young Serif";src:url(../fonts/young-serif.woff) format("woff");font-display:swap}
@font-face{font-family:"Work Sans";src:url(../fonts/work-sans.woff) format("woff");font-weight:400;font-display:swap}
@font-face{font-family:"Work Sans";src:url(../fonts/work-sans-italic.woff) format("woff");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Solmara Fraktur";src:url(../fonts/solmara-fraktur.woff) format("woff");font-display:swap}

:root{
  --night:#0e0911; --plum:#170e1b; --plum-2:#241328; --plum-3:#33193a;
  --amethyst:#7a4a93; --lav:#c9a5d6; --lav-2:#a985bb;
  --gold:#dcb877; --gold-l:#f3dfaa; --gold-d:#a7803e;
  --wax:#f1e6d2; --wax-2:#e6d6ba; --ink:#2a1530;
  --rose:#c75d77;
  --text:#ece1d1; --muted:#b9a9b6;
  --line:rgba(220,184,119,.28); --line-2:rgba(220,184,119,.14);
  --f-display:"Poiret One","Outfit",sans-serif; --f-body:"Outfit",system-ui,sans-serif;
  --f-label:"Outfit",system-ui,sans-serif; --f-frak:"Solmara Fraktur","Poiret One",serif;
  --f-accent:"Solmara Fraktur","Poiret One",serif; --accent-style:normal; --soft-style:normal; --disp-stroke:.35px;
  --wrap:1240px; --pad:clamp(20px,5vw,56px);
  --sec:clamp(64px,9vw,140px);
  --r:6px; --ease:cubic-bezier(.2,.7,.1,1); --ease-in:cubic-bezier(.6,0,.4,1);
  --gold-grad:linear-gradient(180deg,#f6e2b0 0%,#dcb877 45%,#b8893f 72%,#e9cf92 100%);
  --arch:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M0 140V58C0 22 26 4 50 0c24 4 50 22 50 58v82z'/%3E%3C/svg%3E");
  --arch-line:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 140' preserveAspectRatio='none'%3E%3Cpath d='M.5 139.5V58C.5 22.4 26 4.6 50 .5c24 4.1 49.5 21.9 49.5 57.5v81.5z' fill='none' stroke='%23f3dfaa' stroke-opacity='.75' stroke-width='1' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E");
  color-scheme:dark;
}
[data-theme="ametyst"]{--night:#120a1a;--plum:#1c0f26;--plum-2:#2b1638;--plum-3:#3d1f4e;--gold:#e0bf86;--lav:#d6b6e6}
[data-theme="swieca"]{--night:#140c0a;--plum:#1d1210;--plum-2:#2b1a16;--plum-3:#3b231d;--amethyst:#8a4f5d;--lav:#e3b9a8;--lav-2:#c89a88;--muted:#c4ada3}


/* ============ skala typograficzna: osobno telefon / tablet / laptop / duży ekran ============ */
:root{
  --fs-body:1rem; --fs-lead:1.06rem;
  --fs-hero:clamp(1.95rem,1.35rem + 3vw,2.35rem);
  --fs-frak:clamp(2.7rem,2rem + 3.6vw,3.3rem);
  --fs-h2:clamp(1.6rem,1.25rem + 1.8vw,1.95rem);
  --fs-h3:1.4rem; --fs-h4:1.2rem;
  --fs-path:clamp(2.6rem,1.9rem + 3.4vw,3.1rem);
  --fs-quote:clamp(1.55rem,1.2rem + 1.8vw,1.9rem);
  --fs-stat:2rem; --fs-price:1.25rem; --fs-item:1.05rem;
}
@media (min-width:641px){:root{
  --fs-body:1.04rem; --fs-lead:1.12rem;
  --fs-hero:clamp(2.6rem,1.4rem + 3vw,3.4rem);
  --fs-frak:clamp(3.6rem,2.2rem + 3.6vw,4.6rem);
  --fs-h2:clamp(2rem,1.4rem + 1.5vw,2.5rem);
  --fs-h3:1.7rem; --fs-h4:1.35rem;
  --fs-path:clamp(3rem,2rem + 2.6vw,3.8rem);
  --fs-quote:clamp(2rem,1.4rem + 1.6vw,2.5rem);
  --fs-stat:2.4rem; --fs-price:1.4rem; --fs-item:1.1rem;
}}
@media (min-width:1024px){:root{
  --fs-body:1.08rem; --fs-lead:1.18rem;
  --fs-hero:clamp(3.3rem,1.3rem + 3.2vw,4.5rem);
  --fs-frak:clamp(4.6rem,2.2rem + 3.8vw,6.2rem);
  --fs-h2:clamp(2.4rem,1.4rem + 1.6vw,3.1rem);
  --fs-h3:clamp(1.7rem,1.2rem + .8vw,2rem); --fs-h4:1.45rem;
  --fs-path:clamp(3.8rem,2rem + 2.8vw,5rem);
  --fs-quote:clamp(2.3rem,1.4rem + 1.5vw,3rem);
  --fs-stat:2.8rem; --fs-price:1.5rem; --fs-item:1.15rem;
}}
@media (min-width:1680px){
  :root{--wrap:1400px;--fs-body:1.12rem;--fs-lead:1.24rem}
  .hero-sigil{width:min(100%,460px)}
}
@media (min-width:2200px){html{font-size:112.5%}:root{--wrap:1560px}}
/* zestawy krojów (wybór w panelu) */
[data-fonts="klasyczny"]{--f-display:"Gloock",Georgia,serif;--f-body:"Crimson Pro",Georgia,serif;--f-label:"Arsenal SC","Crimson Pro",serif;--f-accent:"Crimson Pro",Georgia,serif;--accent-style:italic;--soft-style:italic;--disp-stroke:0px}
[data-fonts="jasny"]{--f-display:"Young Serif",Georgia,serif;--f-body:"Work Sans",system-ui,sans-serif;--f-label:"Work Sans",system-ui,sans-serif;--f-accent:"Solmara Fraktur",serif;--soft-style:italic;--disp-stroke:0px}
[data-scale="mniejszy"]{font-size:93.75%}
[data-scale="wiekszy"]{font-size:106.25%}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;scroll-padding-top:90px}
body{margin:0;background:var(--night);color:var(--text);font-family:var(--f-body);font-size:var(--fs-body);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:200;opacity:.07;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
img{max-width:100%;display:block;height:auto}
a{color:inherit}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
::selection{background:var(--gold);color:var(--night)}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;z-index:300;background:var(--gold);color:var(--night);padding:10px 16px;border-radius:var(--r);font-family:var(--f-label)}
.skip:focus{top:12px}
mark.todo{background:rgba(201,165,214,.14);color:var(--lav);border:1px dashed rgba(201,165,214,.5);border-radius:3px;padding:0 .3em;font-size:.86em;font-style:normal;font-family:var(--f-label);letter-spacing:.02em}
.muted{color:var(--muted)} .small{font-size:.9rem}
.section{padding:var(--sec) 0;position:relative}

/* ---------- typografia ---------- */
.eyebrow{display:flex;align-items:center;gap:.6em;font-family:var(--f-label);font-size:.95rem;letter-spacing:.2em;color:var(--lav);margin:0 0 1.1rem;text-transform:lowercase}
.eyebrow .spark{width:.8em;height:.8em;color:var(--gold);flex:none}
.h-display{font-family:var(--f-display);font-weight:400;font-size:var(--fs-h2);line-height:1.02;letter-spacing:-.01em;margin:0 0 1.2rem;color:var(--wax);text-wrap:balance}
.h-fraktur{font-family:var(--f-frak);font-weight:400;font-size:var(--fs-frak);line-height:.86;margin:0 0 1.4rem;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.08em}
.h-fraktur .h-sub{display:block;font-family:var(--f-display);font-style:var(--soft-style);font-size:.28em;line-height:1.1;letter-spacing:.02em;margin-top:.1em;background:none;color:var(--lav);-webkit-text-fill-color:var(--lav)}
.h-sm{font-family:var(--f-display);font-weight:400;font-size:var(--fs-h4);line-height:1.15;margin:0 0 .5rem;color:var(--wax)}
.lead{font-size:var(--fs-lead);line-height:1.5;color:var(--text);max-width:40ch;margin:0}
.sec-head{margin-bottom:clamp(48px,7vw,88px);max-width:60ch}
.sec-head-center{margin-left:auto;margin-right:auto;text-align:center}
.sec-head-center .eyebrow{justify-content:center}
.sec-head-center .lead{margin:0 auto}
.fraktur{font-family:var(--f-frak);font-weight:400}

/* ozdobnik z potrójnym księżycem */
.orn{width:120px;height:30px;color:var(--gold);display:block}
.orn-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.2rem;margin-bottom:clamp(40px,6vw,72px)}
.orn-head .h-display{margin:0}

/* ---------- przyciski ---------- */
.btn{--bg:transparent;display:inline-flex;align-items:center;justify-content:center;gap:.65em;min-height:52px;padding:.8em 1.5em;border-radius:999px;font-family:var(--f-label);font-size:1.02rem;letter-spacing:.12em;text-decoration:none;border:1px solid transparent;cursor:pointer;transition:transform .35s var(--ease),background .3s,color .3s,box-shadow .35s,border-color .3s;white-space:nowrap;position:relative;isolation:isolate}
.btn i{font-size:.95em}
.btn-gold{background:var(--gold-grad);color:#1b0f17;box-shadow:0 0 0 1px rgba(255,236,190,.35) inset,0 10px 30px -12px rgba(220,184,119,.6)}
.btn-gold:hover{box-shadow:0 0 0 1px rgba(255,236,190,.6) inset,0 14px 40px -10px rgba(240,200,120,.75),0 0 60px -10px rgba(240,190,110,.5)}
.btn-ghost{border-color:var(--line);color:var(--wax);background:rgba(23,14,27,.35);backdrop-filter:blur(6px)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-l)}
.btn-link{background:none;border:0;color:var(--lav);padding-inline:.4em}
.btn-link:hover{color:var(--gold-l)}
.btn-sm{min-height:44px;padding:.55em 1.15em;font-size:.95rem}
.btn-block{width:100%}
.btn:active{transform:scale(.97)}

/* ---------- topbar / belka / nawigacja ---------- */
.topbar{background:#08050a;border-bottom:1px solid var(--line-2);font-family:var(--f-label);font-size:.85rem;letter-spacing:.08em;color:var(--muted)}
.topbar-in{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:38px}
.topbar p{margin:0;display:flex;gap:.5em;align-items:center}
.topbar-panel{color:var(--gold);text-decoration:none;display:inline-flex;gap:.5em;align-items:center;border:1px solid var(--line);border-radius:999px;padding:.2em .9em;transition:background .3s}
.topbar-panel:hover{background:rgba(220,184,119,.12)}
.announce{background:linear-gradient(90deg,var(--plum-2),var(--plum-3),var(--plum-2));color:var(--wax);font-size:1rem;border-bottom:1px solid var(--line-2)}
.announce-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.35em .7em;min-height:42px;padding-block:.35em;text-align:center}
.announce a{color:var(--gold-l);font-family:var(--f-label);letter-spacing:.08em;text-decoration:none;white-space:nowrap}
.announce a:hover{text-decoration:underline}
.an-moon{display:inline-flex;align-items:center;gap:.5em;color:var(--gold-l);font-family:var(--f-label);letter-spacing:.06em}
.an-moon-ico{width:14px;height:14px;border-radius:50%;background:var(--gold-l);box-shadow:0 0 12px rgba(243,223,170,.6);-webkit-mask:var(--moonmask,none)}
.an-sep{color:var(--gold-d)}

.nav{position:sticky;top:0;z-index:100;transition:background .4s,box-shadow .4s,backdrop-filter .4s}
.nav.scrolled{background:rgba(14,9,17,.82);backdrop-filter:blur(14px) saturate(1.2);box-shadow:0 1px 0 var(--line-2)}
.nav-in{display:flex;align-items:center;gap:1.5rem;min-height:78px}
.brand{display:block;color:var(--gold);text-decoration:none;flex:none}
.logo-svg{height:52px;width:auto;display:block}
.logo-svg .logo-word,.logo-svg .logo-mark{color:var(--gold)}
.logo-svg .logo-sub{color:var(--lav);stroke:currentColor;stroke-width:2.4}
.menu{margin-left:auto}
.menu ul{display:flex;gap:clamp(.8rem,1.6vw,1.9rem);list-style:none;margin:0;padding:0}
.menu a{font-family:var(--f-label);letter-spacing:.12em;font-size:1rem;text-decoration:none;color:var(--text);position:relative;padding:.4em 0}
.menu a::after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:1px;background:var(--gold);transition:left .35s var(--ease),right .35s var(--ease)}
.menu a:hover::after,.menu a[aria-current="true"]::after{left:0;right:0}
.menu a:hover{color:var(--gold-l)}
.burger{display:none;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;position:relative;flex:none}
.burger span{position:absolute;left:14px;right:14px;height:1.5px;background:var(--gold);transition:transform .35s var(--ease),top .35s var(--ease)}
.burger span:first-child{top:19px}.burger span:last-child{top:27px}
.burger[aria-expanded="true"] span:first-child{top:23px;transform:rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{top:23px;transform:rotate(-45deg)}

/* ---------- HERO ---------- */
.hero{position:relative;min-height:min(100svh,980px);display:flex;align-items:center;overflow:hidden;margin-top:-78px;padding:150px 0 110px;isolation:isolate;--x:72%;--y:46%;--rad:min(42vw,520px)}
.hero-media{position:absolute;inset:0;z-index:-1}
.hero-img{position:absolute;inset:0}
.hero-img img{width:100%;height:100%;object-fit:cover;object-position:60% 40%}
.hero-img.dim img{filter:brightness(.26) saturate(.7) contrast(1.1)}
.hero-img.lit{-webkit-mask-image:radial-gradient(circle var(--rad) at var(--x) var(--y),#000 0%,rgba(0,0,0,.55) 38%,transparent 72%);mask-image:radial-gradient(circle var(--rad) at var(--x) var(--y),#000 0%,rgba(0,0,0,.55) 38%,transparent 72%)}
.hero-img.lit img{filter:brightness(.95) saturate(1.1) sepia(.12);animation:flicker 5.5s infinite steps(1,end)}
.hero-veil{position:absolute;inset:0;background:
  radial-gradient(circle calc(var(--rad)*.9) at var(--x) var(--y),rgba(255,170,80,.16),transparent 70%),
  linear-gradient(90deg,rgba(14,9,17,.92) 0%,rgba(14,9,17,.55) 42%,rgba(14,9,17,.1) 70%),
  linear-gradient(0deg,var(--night) 0%,transparent 28%),
  linear-gradient(180deg,rgba(14,9,17,.85) 0%,transparent 22%)}
@keyframes flicker{0%{opacity:1}7%{opacity:.93}9%{opacity:1}31%{opacity:.97}33%{opacity:.9}35%{opacity:1}58%{opacity:.95}61%{opacity:1}80%{opacity:.92}82%{opacity:.98}}
.hero-frame{position:absolute;inset:clamp(14px,2.4vw,30px);border:1px solid var(--line-2);pointer-events:none;z-index:0}
.hero-frame::before,.hero-frame::after,.hero-frame span::before,.hero-frame span::after{content:"";position:absolute;width:22px;height:22px;border:1px solid var(--gold);opacity:.7}
.hero-frame::before{left:-1px;top:-1px;border-right:0;border-bottom:0}
.hero-frame::after{right:-1px;top:-1px;border-left:0;border-bottom:0}
.hero-frame span::before{left:-1px;bottom:-1px;border-right:0;border-top:0}
.hero-frame span::after{right:-1px;bottom:-1px;border-left:0;border-top:0}
.hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:center;gap:2rem}
.hero-title{font-family:var(--f-display);font-weight:400;font-size:var(--fs-hero);line-height:1.02;letter-spacing:0;margin:0 0 1.6rem;color:var(--wax)}
.ht-line{display:block}
.ht-accent{display:block;font-family:var(--f-accent);font-style:var(--accent-style);font-weight:400;letter-spacing:0;font-size:1.08em;line-height:1.05;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding:0 .05em .08em 0}
.hero-lead{font-size:var(--fs-lead);max-width:36ch;margin:0 0 2.2rem;color:#e6dacb}
.hero-cta{display:flex;flex-wrap:wrap;gap:.9rem;margin-bottom:2.4rem}
.hero-facts{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem;list-style:none;margin:0;padding:1.3rem 0 0;border-top:1px solid var(--line-2);max-width:620px;font-family:var(--f-label);letter-spacing:.06em;font-size:.98rem;color:var(--muted)}
.hero-facts li{display:flex;align-items:center;gap:.55em}
.hero-facts i{color:var(--gold)}
.hero-sigil{justify-self:end;width:min(100%,380px);color:var(--gold);opacity:.9;filter:drop-shadow(0 0 30px rgba(240,190,110,.35))}
.hero-sigil .seal{width:100%;height:auto;display:block;animation:sigil 14s ease-in-out infinite;overflow:visible}
.seal-ring{transform-origin:500px 500px;animation:spin 140s linear infinite}
.seal-sun{transform-origin:500px 442px;animation:sunpulse 6s ease-in-out infinite}
@keyframes sunpulse{50%{transform:scale(1.035)}}
@keyframes sigil{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.hero-scroll{position:absolute;left:50%;bottom:34px;transform:translateX(-50%);width:44px;height:44px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--gold);text-decoration:none;animation:bob 2.6s ease-in-out infinite}
@keyframes bob{50%{transform:translate(-50%,6px)}}

/* wejście hero */
.js .hero-eyebrow,.js .ht-line,.js .ht-accent,.js .hero-lead,.js .hero-cta,.js .hero-facts,.js .hero-sigil{opacity:0;transform:translateY(24px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.js .ht-accent{transition-delay:.15s}.js .hero-lead{transition-delay:.3s}.js .hero-cta{transition-delay:.42s}.js .hero-facts{transition-delay:.55s}.js .hero-sigil{transition-delay:.3s;transform:scale(.92)}
.js.ready .hero-eyebrow,.js.ready .ht-line,.js.ready .ht-accent,.js.ready .hero-lead,.js.ready .hero-cta,.js.ready .hero-facts,.js.ready .hero-sigil{opacity:1;transform:none}

/* ---------- reveal ---------- */
.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease) var(--d,0ms),transform .9s var(--ease) var(--d,0ms)}
.js .reveal.in{opacity:1;transform:none}

/* ---------- dwie ścieżki ---------- */
.paths{background:radial-gradient(ellipse 60% 50% at 50% 0%,rgba(122,74,147,.18),transparent 70%)}
.paths-grid{display:grid;grid-template-columns:1fr;gap:clamp(64px,9vw,130px);max-width:1080px;margin:0 auto}
.path{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,6vw,96px);align-items:center;text-decoration:none;color:inherit}
.path:nth-child(even) .path-arch{order:2}
.path-arch{position:relative;aspect-ratio:5/7;max-height:620px;background:var(--plum-2)}
.path-img{position:absolute;inset:0;-webkit-mask:var(--arch) center/100% 100% no-repeat;mask:var(--arch) center/100% 100% no-repeat;overflow:hidden}
.path-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s var(--ease),filter .8s;filter:brightness(.82) saturate(.92)}
.path:hover .path-img img,.path:focus-visible .path-img img{transform:scale(1.12);filter:brightness(1) saturate(1.05)}
.path-arch{background:none}
.path-arch::before{content:"";position:absolute;inset:-14px;background:var(--arch-line) center/100% 100% no-repeat;transition:inset .8s var(--ease);pointer-events:none}
.path:hover .path-arch::before{inset:-22px}
.path-glow{position:absolute;inset:0;-webkit-mask:var(--arch) center/100% 100% no-repeat;mask:var(--arch) center/100% 100% no-repeat;background:radial-gradient(circle at 50% 70%,rgba(255,180,90,.28),transparent 60%);opacity:0;transition:opacity .8s}
.path:hover .path-glow{opacity:1}
.path-kicker{font-family:var(--f-label);letter-spacing:.16em;color:var(--lav);margin:0 0 .3rem;font-size:.95rem}
.path-title{font-size:var(--fs-path);line-height:.9;margin:0 0 .8rem;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.06em}
.path-text{margin:0 0 1.6rem;color:var(--text);max-width:36ch;font-size:var(--fs-lead)}
.path-foot{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;align-items:center;margin:0;padding-top:1rem;border-top:1px solid var(--line-2)}
.path-price{font-family:var(--f-display);font-size:1.5rem;color:var(--gold-l)}
.path-go{font-family:var(--f-label);letter-spacing:.1em;color:var(--lav);display:inline-flex;gap:.5em;align-items:center}
.path-go i{transition:transform .4s var(--ease)}
.path:hover .path-go i{transform:translateX(6px)}

/* ---------- księżyc ---------- */
.moon{background:linear-gradient(180deg,transparent,rgba(36,19,40,.6) 30%,rgba(36,19,40,.6) 70%,transparent)}
.moon-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(40px,7vw,110px);align-items:center}
.moon-orbit{position:relative;width:min(100%,440px);margin:0 auto;aspect-ratio:1;color:var(--gold)}
.moon-orbit::before{content:"";position:absolute;inset:-8%;border:1px dashed var(--line);border-radius:50%;animation:spin 120s linear infinite}
.moon-orbit::after{content:"";position:absolute;inset:6%;border-radius:50%;box-shadow:0 0 120px 10px rgba(243,223,170,.14)}
@keyframes spin{to{transform:rotate(360deg)}}
.moon-svg{width:100%;height:100%;position:relative;z-index:1}
.moon-strip{display:flex;justify-content:space-between;gap:4px;list-style:none;padding:0;margin:36px auto 0;max-width:440px}
.moon-strip li{display:flex;flex-direction:column;align-items:center;gap:6px;font-family:var(--f-label);font-size:.72rem;letter-spacing:.06em;color:var(--muted);text-align:center;flex:1}
.moon-strip svg{width:28px;height:28px}
.moon-strip li.now{color:var(--gold-l)}
.moon-strip li.now svg{filter:drop-shadow(0 0 8px rgba(243,223,170,.7))}
.moon-now{margin-top:2rem;padding:1.6rem 1.8rem;border:1px solid var(--line);border-radius:var(--r);background:rgba(14,9,17,.45)}
.moon-phase{margin:0 0 .4rem;font-family:var(--f-display);font-size:clamp(1.6rem,1.3rem + 1vw,2.2rem);color:var(--gold-l);line-height:1.15}
.mp-ill{font-family:var(--f-label);font-size:1rem;color:var(--muted);letter-spacing:.08em;white-space:nowrap}
.moon-meaning{margin:0 0 1rem}
.moon-recs{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0 0 1rem;padding:0}
.moon-recs a{display:inline-flex;align-items:center;gap:.45em;padding:.35em .9em;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-family:var(--f-label);letter-spacing:.06em;font-size:.95rem;color:var(--wax);transition:all .3s}
.moon-recs a:hover{border-color:var(--gold);background:rgba(220,184,119,.1);color:var(--gold-l)}
.moon-next{margin:0;color:var(--muted);font-size:1rem}

/* ---------- tarot ---------- */
.tarot{background:radial-gradient(ellipse 45% 35% at 85% 40%,rgba(122,74,147,.2),transparent 70%)}
.tarot-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:start}
.draw{position:sticky;top:110px;padding:clamp(24px,3vw,40px);border:1px solid var(--line);border-radius:10px;background:linear-gradient(180deg,rgba(51,25,58,.55),rgba(23,14,27,.6));box-shadow:0 40px 80px -40px rgba(0,0,0,.8)}
.draw .muted{margin:0 0 1.6rem;font-size:1.08rem}
.draw-table{display:flex;justify-content:center;gap:clamp(10px,2vw,22px);perspective:1200px;padding:10px 0 6px}
.tcard{width:clamp(88px,10vw,140px);aspect-ratio:7/12;border:0;padding:0;background:none;cursor:pointer;transition:transform .6s var(--ease),opacity .6s;transform:rotate(var(--rot,0deg)) translateY(var(--ty,0))}
.tcard:nth-child(1){--rot:-7deg;--ty:10px}.tcard:nth-child(3){--rot:7deg;--ty:10px}
.tcard:hover{transform:rotate(var(--rot,0deg)) translateY(-14px)}
.tcard.picked{transform:rotate(0) translateY(-6px) scale(1.12);z-index:2}
.tcard.away{opacity:.18;transform:rotate(var(--rot,0deg)) translateY(30px) scale(.9);pointer-events:none}
.tc-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform 1s var(--ease)}
.tcard.flipped .tc-inner{transform:rotateY(180deg)}
.tc-back,.tc-front{position:absolute;inset:0;border-radius:8px;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}
.tc-back{background:radial-gradient(circle at 50% 40%,#3d1f4e,#180c1d 75%);box-shadow:0 0 0 1px var(--gold-d),0 18px 30px -12px #000;color:var(--gold)}
.tc-back .sigil{width:76%;height:auto}
.tc-border{position:absolute;inset:6px;border:1px solid var(--line);border-radius:5px}
.tc-border::after{content:"";position:absolute;inset:4px;border:1px dashed var(--line-2);border-radius:3px}
.tc-stars{position:absolute;inset:0;background-image:radial-gradient(1px 1px at 20% 18%,var(--gold-l),transparent),radial-gradient(1px 1px at 78% 26%,var(--gold-l),transparent),radial-gradient(1px 1px at 30% 82%,var(--gold-l),transparent),radial-gradient(1.5px 1.5px at 70% 76%,var(--gold-l),transparent);opacity:.8}
.tc-front{transform:rotateY(180deg);background:linear-gradient(180deg,#f6ecd8,#e6d4b2);color:var(--ink);box-shadow:0 0 0 1px var(--gold-d),0 0 40px -6px rgba(243,223,170,.7);padding:12px 8px;gap:8px;text-align:center}
.tc-front::before{content:"";position:absolute;inset:6px;border:1px solid rgba(42,21,48,.35);border-radius:5px}
.tc-num{font-family:var(--f-label);letter-spacing:.14em;font-size:.85rem;color:var(--gold-d)}
.tc-ico{font-size:clamp(1.6rem,2.6vw,2.4rem);color:var(--amethyst)}
.tc-name{font-family:var(--f-display);font-size:clamp(.8rem,1.1vw,1.05rem);line-height:1.1}
.draw-result{margin-top:1.8rem;padding-top:1.4rem;border-top:1px solid var(--line-2);animation:fadeUp .8s var(--ease)}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}}
.dr-title{font-family:var(--f-display);font-size:1.6rem;color:var(--gold-l);margin:0 0 .3rem}
.dr-text{margin:0 0 1.2rem;font-style:var(--soft-style);font-size:1.1rem;color:var(--wax)}
.dr-cta{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}

.pl-group+.pl-group{margin-top:clamp(40px,5vw,64px)}
.pl-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.4rem 1rem;padding-bottom:.8rem;border-bottom:1px solid var(--line);margin-bottom:.4rem}
.pl-head .h-sm{margin:0}
.pl-note{font-family:var(--f-label);letter-spacing:.08em;color:var(--lav);font-size:.92rem}
.pl-list{list-style:none;margin:0;padding:0}
.pl-item{padding:1.2rem 0 1.1rem;border-bottom:1px solid var(--line-2);position:relative}
.pl-main{display:flex;align-items:baseline;gap:.6rem}
.pl-name{margin:0;font-family:var(--f-body);font-size:var(--fs-item);color:var(--wax);letter-spacing:.01em}
.pl-dots{flex:1;border-bottom:1px dotted rgba(220,184,119,.45);transform:translateY(-.3em);min-width:20px}
.price{font-family:var(--f-display);font-size:var(--fs-price);-webkit-text-stroke:var(--disp-stroke) currentColor;color:var(--gold-l);white-space:nowrap}
.price small{font-family:var(--f-label);font-size:.55em;letter-spacing:.08em;color:var(--gold)}
.pl-desc{margin:.35rem 0 .6rem;color:var(--muted);font-size:.95rem;max-width:46ch}
.pl-format{display:inline-flex;align-items:center;gap:.4em;margin-left:.3em;font-family:var(--f-label);font-size:.85rem;letter-spacing:.06em;color:var(--lav)}
.pl-order{display:inline-flex;align-items:center;gap:.5em;font-family:var(--f-label);letter-spacing:.1em;font-size:.95rem;color:var(--gold);text-decoration:none;padding:.3em 0;min-height:44px}
.pl-order i{transition:transform .35s var(--ease)}
.pl-order:hover{color:var(--gold-l)}
.pl-order:hover i{transform:translateX(5px)}
.pl-item::before{content:"";position:absolute;left:-18px;top:1.75rem;width:6px;height:6px;border-radius:50%;background:var(--gold);opacity:0;transform:scale(0);transition:all .35s var(--ease)}
.pl-item:hover::before{opacity:1;transform:scale(1)}
.tip{display:flex;gap:.8rem;margin:2.4rem 0 0;padding:1.1rem 1.3rem;border-left:2px solid var(--gold);background:rgba(220,184,119,.06);font-style:var(--soft-style)}
.tip i{color:var(--gold);margin-top:.35em}

/* ---------- rytuały: ołtarz ---------- */
.rituals{background:linear-gradient(180deg,var(--night),var(--plum) 20%,var(--plum) 80%,var(--night))}
.rituals .sec-head{max-width:70ch}
.altar{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(40px,6vw,96px);align-items:start}
.altar-stage{position:sticky;top:100px}
.altar-arch{position:relative;aspect-ratio:9/14;max-height:calc(100vh - 170px);margin:0 auto;-webkit-mask:var(--arch) center/100% 100% no-repeat;mask:var(--arch) center/100% 100% no-repeat;background:var(--plum-2)}
.altar-img{position:absolute;inset:0;opacity:0;transform:scale(1.08);transition:opacity 1.1s var(--ease),transform 2.2s var(--ease)}
.altar-img.on{opacity:1;transform:scale(1)}
.altar-img img{width:100%;height:100%;object-fit:cover}
.altar-flicker{position:absolute;inset:0;background:radial-gradient(ellipse 60% 40% at 50% 35%,rgba(255,170,80,.22),transparent 70%);mix-blend-mode:screen;animation:flicker 4.2s infinite steps(1,end)}
.altar-arch::after{content:"";position:absolute;inset:12px;background:var(--arch-line) center/100% 100% no-repeat;z-index:2}
.altar-cap{display:flex;gap:.8rem;align-items:baseline;justify-content:center;margin:1.2rem 0 0;font-family:var(--f-label);letter-spacing:.12em;color:var(--lav)}
.ac-num{font-family:var(--f-display);color:var(--gold);font-size:1.3rem}
.rit-list{list-style:none;margin:0;padding:0;counter-reset:rit}
.rit{display:grid;grid-template-columns:72px 1fr;gap:0 1.4rem;padding:clamp(28px,4vw,44px) 0;border-top:1px solid var(--line-2);transition:opacity .5s}
.rit:last-child{border-bottom:1px solid var(--line-2)}
.rit-mob{display:none}
.rit-num{font-family:var(--f-display);font-size:2.2rem;line-height:1;color:var(--gold-d);margin:.1em 0 0;transition:color .5s}
.rit.active .rit-num{color:var(--gold-l);text-shadow:0 0 24px rgba(243,223,170,.6)}
.altar-js .rit{opacity:.5}
.altar-js .rit.active{opacity:1}
.rit-name{font-family:var(--f-display);font-weight:400;font-size:var(--fs-h3);line-height:1.05;margin:0 0 .5rem;color:var(--wax)}
.rit-intent{display:flex;align-items:center;gap:.5em;margin:0 0 .8rem;font-family:var(--f-label);letter-spacing:.06em;color:var(--lav);font-size:1rem}
.rit-intent i{color:var(--gold);font-size:.85em}
.rit-desc{margin:0 0 1.3rem;max-width:48ch}
.rit-foot{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.4rem}
.rit-moon{display:inline-flex;align-items:center;gap:.45em;font-family:var(--f-label);font-size:.9rem;letter-spacing:.06em;color:var(--muted);padding:.25em .8em;border:1px solid var(--line-2);border-radius:999px}
.rit-moon.good{color:var(--gold-l);border-color:var(--gold);background:rgba(220,184,119,.08)}
.rit-foot .btn{margin-left:auto}

/* ---------- jasna sekcja: słoiczki + proces ---------- */
.wax-zone{background:var(--wax);color:var(--ink);color-scheme:light;position:relative}
.wax-zone::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 50% 40% at 15% 10%,rgba(255,255,255,.5),transparent 70%),radial-gradient(ellipse 60% 50% at 90% 90%,rgba(167,128,62,.14),transparent 70%)}
.wax-zone .h-display{color:var(--ink)}
.wax-zone .lead,.wax-zone p{color:#3d2a3f}
.wax-zone .eyebrow{color:#7a4a93}
.wax-zone .eyebrow .spark{color:var(--gold-d)}
.wax-zone .muted{color:#6b5869}
.wax-zone mark.todo{background:rgba(122,74,147,.08);color:#6a3a83;border-color:rgba(122,74,147,.4)}
.wax-zone .pl-dots{border-color:rgba(42,21,48,.3)}
.wax-zone .price{color:var(--ink)}
.wax-zone .price small{color:var(--gold-d)}
.wax-zone .pl-order{color:#7a4a93}
.wax-zone .pl-order:hover{color:var(--ink)}
.wax-zone :focus-visible{outline-color:#7a4a93}
.talismans{padding-bottom:calc(var(--sec)*.6)}
.tal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px,3vw,40px);max-width:980px;margin:0 auto}
.label{position:relative;padding:12px;background:#fbf5ea;border-radius:4px;box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 30px 60px -30px rgba(42,21,48,.45);transition:transform .5s var(--ease),box-shadow .5s}
.label:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:0 1px 0 rgba(255,255,255,.8) inset,0 40px 70px -30px rgba(42,21,48,.55)}
.label-inner{border:1px solid rgba(167,128,62,.6);outline:1px solid rgba(167,128,62,.35);outline-offset:-6px;border-radius:2px;padding:clamp(28px,4vw,44px) clamp(22px,3vw,36px) 22px;text-align:center}
.label-ico{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;border:1px solid rgba(167,128,62,.6);color:#7a4a93;font-size:1.5rem;margin-bottom:1rem}
.label-name{font-family:var(--f-display);font-weight:400;font-size:clamp(1.6rem,1.3rem + 1vw,2.2rem);margin:0 0 .5rem;color:var(--ink)}
.label-desc{margin:0 auto 1.3rem;max-width:34ch}
.label-variants{list-style:none;margin:0 auto 1rem;padding:0;max-width:300px}
.label-variants li{display:flex;align-items:baseline;gap:.5rem;padding:.4rem 0;font-family:var(--f-label);letter-spacing:.08em}
.label-note{font-size:.95rem;margin:0 0 .6rem}

.process{padding-top:calc(var(--sec)*.6)}
.process.wax-zone::before{background:radial-gradient(ellipse 60% 50% at 90% 90%,rgba(167,128,62,.14),transparent 70%)}
.talismans.wax-zone::before{background:radial-gradient(ellipse 50% 40% at 15% 10%,rgba(255,255,255,.5),transparent 70%)}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2.4vw,32px);list-style:none;margin:0;padding:0;position:relative}
.steps::before{content:"";position:absolute;left:6%;right:6%;top:22px;height:1px;background:linear-gradient(90deg,transparent,rgba(167,128,62,.7),transparent)}
.step{position:relative;padding-top:66px}
.step-moon{position:absolute;top:0;left:0;width:44px;height:44px;border-radius:50%;background:var(--ink);box-shadow:0 0 0 6px var(--wax),0 0 0 7px rgba(167,128,62,.6)}
.step-moon::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--gold)}
.m-new::after{background:transparent;box-shadow:inset 0 0 0 1.5px var(--gold)}
.m-cres::after{-webkit-mask:radial-gradient(circle at 30% 50%,transparent 58%,#000 60%);mask:radial-gradient(circle at 30% 50%,transparent 58%,#000 60%)}
.m-half::after{-webkit-mask:linear-gradient(90deg,transparent 50%,#000 50%);mask:linear-gradient(90deg,transparent 50%,#000 50%)}
.m-full::after{box-shadow:0 0 18px var(--gold)}
.step-n{font-family:var(--f-label);letter-spacing:.14em;color:var(--gold-d)!important;margin:0 0 .3rem;font-size:.95rem}
.step-title{font-family:var(--f-display);font-weight:400;font-size:1.55rem;line-height:1.1;margin:0 0 .5rem;color:var(--ink)}
.step-text{margin:0;font-size:1.06rem}
.blik{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,4vw,56px);align-items:center;margin:clamp(56px,7vw,88px) auto 0;max-width:900px;padding:clamp(24px,3.4vw,40px);background:var(--ink);color:var(--wax);border-radius:10px;box-shadow:0 30px 60px -30px rgba(42,21,48,.7);position:relative;overflow:hidden}
.blik::after{content:"";position:absolute;right:-80px;top:-80px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(220,184,119,.25),transparent 70%)}
.blik p{color:var(--wax)}
.blik-k{margin:0;font-family:var(--f-label);letter-spacing:.2em;color:var(--lav)!important;font-size:.9rem}
.blik-logo{margin:0;font-family:var(--f-display);font-size:3.2rem;line-height:1;background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.blik-l .muted{color:var(--muted)!important;margin:0;font-size:1rem}
.blik-data{margin:0;display:grid;gap:.7rem;position:relative;z-index:1}
.blik-data div{display:grid;grid-template-columns:110px 1fr;gap:1rem;align-items:center;padding-bottom:.7rem;border-bottom:1px solid rgba(220,184,119,.18)}
.blik-data div:last-child{border:0;padding:0}
.blik-data dt{font-family:var(--f-label);letter-spacing:.12em;color:var(--muted);font-size:.9rem}
.blik-data dd{margin:0;font-family:var(--f-display);font-variant-numeric:lining-nums;font-size:clamp(1.15rem,1rem + .6vw,1.5rem);color:var(--gold-l);display:flex;flex-wrap:wrap;gap:.4rem .8rem;align-items:center}
.copy{display:inline-flex;align-items:center;gap:.4em;font-family:var(--f-label);font-size:.82rem;letter-spacing:.08em;background:transparent;border:1px solid var(--line);color:var(--wax);border-radius:999px;padding:.35em .9em;cursor:pointer;min-height:36px;transition:all .3s}
.copy:hover{border-color:var(--gold);color:var(--gold-l)}
.copy.done{background:var(--gold);color:var(--ink);border-color:var(--gold)}

/* ---------- dyskrecja ---------- */
.discretion{background:radial-gradient(ellipse 70% 60% at 50% 50%,rgba(122,74,147,.22),transparent 70%)}
.disc-quote{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.6rem;margin-bottom:clamp(48px,6vw,80px)}
.disc-text{font-family:var(--f-display);font-style:var(--soft-style);-webkit-text-stroke:var(--disp-stroke) currentColor;font-weight:400;font-size:var(--fs-quote);line-height:1.06;max-width:18ch;margin:0;color:var(--wax);text-wrap:balance}
.disc-points{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0;border-top:1px solid var(--line-2)}
.disc-points li{padding:2rem clamp(16px,2.5vw,36px) 0;border-left:1px solid var(--line-2)}
.disc-points li:first-child{border-left:0;padding-left:0}
.disc-points i{color:var(--gold);font-size:1.3rem;margin-bottom:1rem;display:block}
.disc-points h3{font-family:var(--f-display);font-weight:400;font-size:1.5rem;margin:0 0 .4rem;color:var(--wax)}
.disc-points p{margin:0;color:var(--muted)}

/* ---------- galeria ---------- */
.masonry{columns:4 220px;column-gap:14px;list-style:none;margin:0;padding:0}
.m-item{break-inside:avoid;margin-bottom:14px}
.m-btn{display:block;width:100%;padding:0;border:0;background:var(--plum-2);cursor:zoom-in;position:relative;overflow:hidden;border-radius:4px}
.m-btn img{width:100%;height:auto;transition:transform 1.2s var(--ease),filter .6s;filter:saturate(.92)}
.m-item:nth-child(3n+1) .m-btn img{aspect-ratio:9/14;object-fit:cover}
.m-item:nth-child(3n+2) .m-btn img{aspect-ratio:4/5;object-fit:cover}
.m-item:nth-child(3n) .m-btn img{aspect-ratio:9/12;object-fit:cover}
.m-btn:hover img{transform:scale(1.06);filter:saturate(1.1)}
.m-cap{position:absolute;left:0;right:0;bottom:0;padding:2.2rem .9rem .8rem;background:linear-gradient(0deg,rgba(14,9,17,.9),transparent);font-family:var(--f-label);letter-spacing:.08em;font-size:.92rem;text-align:left;color:var(--wax);opacity:0;transform:translateY(8px);transition:all .45s var(--ease)}
.m-btn:hover .m-cap,.m-btn:focus-visible .m-cap{opacity:1;transform:none}
.lightbox{position:fixed;inset:0;z-index:400;background:rgba(8,5,10,.94);display:grid;grid-template-columns:72px 1fr 72px;align-items:center;padding:20px}
.lightbox[hidden]{display:none}
.lightbox figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:12px;max-height:100%}
.lightbox img{max-height:82vh;width:auto;border-radius:4px;box-shadow:0 30px 80px #000}
.lightbox figcaption{font-family:var(--f-label);letter-spacing:.1em;color:var(--gold-l)}
.lightbox button{width:52px;height:52px;border-radius:50%;border:1px solid var(--line);background:rgba(14,9,17,.6);color:var(--gold);cursor:pointer;font-size:1.1rem}
.lightbox button:hover{border-color:var(--gold)}
.lb-close{position:absolute;top:20px;right:20px}

/* ---------- o mnie ---------- */
.about-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(40px,7vw,110px);align-items:center}
.about-arch{aspect-ratio:5/7;-webkit-mask:var(--arch) center/100% 100% no-repeat;mask:var(--arch) center/100% 100% no-repeat;background:var(--plum-2);position:relative}
.about-arch img{width:100%;height:100%;object-fit:cover}
.about-img{position:relative}
.about-img::before{content:"";position:absolute;inset:0;background:var(--arch-line) center/100% 100% no-repeat;transform:translate(18px,18px);pointer-events:none}
.draft{margin:-.4rem 0 1rem}
.about-text p{margin:0 0 1rem;max-width:52ch}
.about-text p:first-child::first-letter{font-family:var(--f-frak);float:left;font-size:4.6em;line-height:.8;padding:.06em .1em 0 0;color:var(--gold)}
.principle{display:flex;gap:.8rem;align-items:flex-start;margin:1.6rem 0;padding:1rem 1.2rem;border:1px solid var(--line);border-radius:var(--r);background:rgba(220,184,119,.05)}
.principle i{color:var(--gold);margin-top:.3em}
.stats{display:flex;gap:clamp(24px,4vw,56px);list-style:none;padding:1.6rem 0 0;margin:1.6rem 0 .6rem;border-top:1px solid var(--line-2)}
.stats li{display:flex;flex-direction:column}
.stat-n{font-family:var(--f-display);font-size:var(--fs-stat);line-height:1;color:var(--gold-l)}
.stat-l{font-family:var(--f-label);letter-spacing:.08em;color:var(--muted);font-size:.95rem;margin-top:.3rem}

/* ---------- opinie ---------- */
.rev-list{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:clamp(16px,2.4vw,28px);list-style:none;margin:0;padding:0}
.rev{padding:clamp(24px,3vw,36px);border:1px solid var(--line-2);border-radius:10px;background:linear-gradient(180deg,rgba(36,19,40,.7),rgba(23,14,27,.4));display:flex;flex-direction:column}
.rev:first-child{grid-row:span 1;background:linear-gradient(180deg,rgba(61,31,78,.7),rgba(23,14,27,.5));border-color:var(--line)}
.rev-q{color:var(--gold);font-size:1.4rem;margin-bottom:1rem}
.rev blockquote{margin:0 0 1.4rem;flex:1}
.rev blockquote p{margin:0;font-style:var(--soft-style);font-size:1.04rem}
.rev-by{display:flex;flex-direction:column;margin:0;font-family:var(--f-label);letter-spacing:.08em}
.rev-svc{color:var(--lav);font-size:.88rem}

/* ---------- FAQ ---------- */
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(40px,6vw,96px);align-items:start}
.faq .sec-head{position:sticky;top:110px;margin:0}
.qa{border-bottom:1px solid var(--line-2)}
.qa:first-child{border-top:1px solid var(--line-2)}
.qa summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 0;cursor:pointer;list-style:none;font-family:var(--f-body);font-size:var(--fs-item);color:var(--wax);transition:color .3s}
.qa summary::-webkit-details-marker{display:none}
.qa summary:hover{color:var(--gold-l)}
.qa summary i{flex:none;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;color:var(--gold);font-size:.85rem;transition:transform .45s var(--ease),background .3s}
.qa[open] summary i{transform:rotate(45deg);background:rgba(220,184,119,.1)}
.qa-a{overflow:hidden}
.qa-a p{margin:0 0 1.4rem;color:var(--muted);max-width:60ch}

/* ---------- kontakt ---------- */
.contact{background:radial-gradient(ellipse 60% 70% at 85% 60%,rgba(122,74,147,.24),transparent 70%),radial-gradient(ellipse 40% 50% at 10% 20%,rgba(220,150,80,.08),transparent 70%)}
.contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:start}
.channels{list-style:none;margin:2.2rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.channel{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.2rem;border:1px solid var(--line);border-radius:var(--r);text-decoration:none;transition:all .35s var(--ease);background:rgba(14,9,17,.4)}
.channel i{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;background:rgba(220,184,119,.1);color:var(--gold);font-size:1.15rem;transition:all .35s}
.channel span{display:flex;flex-direction:column;line-height:1.3;min-width:0;overflow-wrap:anywhere}
.channel strong{font-family:var(--f-label);font-weight:400;letter-spacing:.12em;color:var(--lav);font-size:.88rem}
.channel:hover{border-color:var(--gold);transform:translateY(-3px);background:rgba(220,184,119,.06)}
.channel:hover i{background:var(--gold);color:var(--night)}
.intent-form{padding:clamp(24px,3.4vw,44px);border:1px solid var(--line);border-radius:10px;background:linear-gradient(180deg,rgba(51,25,58,.6),rgba(14,9,17,.6));position:relative}
.intent-form .h-sm{margin-bottom:1.4rem}
.field{margin-bottom:1.1rem}
.field label{display:block;font-family:var(--f-label);letter-spacing:.1em;font-size:.95rem;color:var(--lav);margin-bottom:.4rem}
.field input,.field select,.field textarea{width:100%;font:inherit;font-size:1.1rem;color:var(--text);background:rgba(14,9,17,.7);border:1px solid var(--line);border-radius:var(--r);padding:.75em .9em;min-height:52px;transition:border-color .3s,box-shadow .3s}
.field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 22px) 55%,calc(100% - 16px) 55%;background-size:6px 6px;background-repeat:no-repeat}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(220,184,119,.18)}
.field [aria-invalid="true"]{border-color:var(--rose)}
.err{margin:.35rem 0 0;color:#f0a0b4;font-size:.95rem;min-height:0}
.err:empty{display:none}
.hp{position:absolute;left:-9999px}
.rodo{font-size:.92rem;color:var(--muted);margin:1rem 0 0}
.rodo a{color:var(--gold)}
.form-ok{display:flex;gap:1rem;align-items:flex-start;margin-top:1.2rem;padding:1rem 1.2rem;border:1px solid var(--gold);border-radius:var(--r);background:rgba(220,184,119,.08)}
.form-ok[hidden]{display:none}
.form-ok i{color:var(--gold);font-size:1.4rem;margin-top:.2em}
.form-ok p{margin:0}

/* ---------- stopka ---------- */
.footer{background:#08050a;border-top:1px solid var(--line-2);padding:clamp(56px,7vw,88px) 0 110px;font-size:1.02rem}
.ft-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:clamp(24px,4vw,56px)}
.ft-brand .logo-svg{height:62px;margin-bottom:1rem}
.ft-brand p{color:var(--muted);max-width:32ch;margin:0}
.ft-h{font-family:var(--f-label);letter-spacing:.16em;color:var(--gold);margin:0 0 .8rem;font-size:.95rem}
.ft-col ul{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}
.ft-col a,.linkbtn{color:var(--text);text-decoration:none;background:none;border:0;padding:0;cursor:pointer;font:inherit;text-align:left}
.ft-col a:hover,.linkbtn:hover{color:var(--gold-l);text-decoration:underline}
.ft-disc{margin:3rem 0 0;padding-top:1.4rem;border-top:1px solid var(--line-2);color:var(--muted);font-size:.95rem;max-width:90ch}
.ft-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:1.4rem;font-family:var(--f-label);letter-spacing:.06em;font-size:.88rem;color:var(--muted)}
.ft-bottom p{margin:0}
.ft-links{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem}
.ft-links a{color:var(--gold);text-decoration:none}
.ft-links a:hover{text-decoration:underline}

/* sticky bar mobile */
.mbar{display:none}

/* cookies */
.cookies{position:fixed;left:16px;bottom:16px;z-index:350;max-width:440px;padding:1.3rem 1.4rem;background:rgba(23,14,27,.97);border:1px solid var(--line);border-radius:10px;box-shadow:0 30px 60px -20px #000;font-size:1rem}
.cookies[hidden]{display:none}
.ck-t{font-family:var(--f-display);font-size:1.25rem;color:var(--gold-l);margin:0 0 .4rem}
.cookies p{margin:0 0 1rem}
.cookies a{color:var(--gold)}
.ck-opts{display:grid;gap:.4rem;margin-bottom:1rem;font-family:var(--f-label);letter-spacing:.06em}
.ck-opts[hidden]{display:none}
.ck-opts input{accent-color:var(--gold);width:18px;height:18px;vertical-align:-3px;margin-right:.4em}
.ck-btns{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.ck-btns .btn{padding-inline:.6em;letter-spacing:.06em}
.toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,20px);z-index:500;background:var(--gold);color:var(--night);padding:.6em 1.2em;border-radius:999px;font-family:var(--f-label);letter-spacing:.08em;opacity:0;pointer-events:none;transition:all .4s var(--ease)}
.toast.show{opacity:1;transform:translate(-50%,0)}
.ph-img{width:100%;height:100%;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem;background:repeating-linear-gradient(45deg,var(--plum-2),var(--plum-2) 12px,var(--plum-3) 12px,var(--plum-3) 24px);color:var(--lav);font-family:var(--f-label);font-size:.9rem;text-align:center;padding:1rem}

/* ---------- strony prawne ---------- */
.legal-page{padding:clamp(48px,8vw,110px) 0 var(--sec)}
.legal-page .wrap{max-width:860px}
.legal-page h1{font-family:var(--f-display);font-weight:400;font-size:clamp(2.4rem,1.6rem + 3vw,3.8rem);line-height:1.05;margin:0 0 1rem;color:var(--wax)}
.legal-page h2{font-family:var(--f-display);font-weight:400;font-size:1.6rem;margin:2.4rem 0 .6rem;color:var(--gold-l)}
.legal-page p,.legal-page li{color:var(--text)}
.legal-page a:not(.btn){color:var(--gold)}
.legal-note{padding:1rem 1.2rem;border:1px dashed var(--lav-2);border-radius:var(--r);color:var(--lav);margin:0 0 2rem}
.back{display:inline-flex;gap:.5em;align-items:center;font-family:var(--f-label);letter-spacing:.1em;color:var(--gold);text-decoration:none;margin-bottom:2rem}

/* ============ RWD ============ */
@media (max-width:1100px){
  .menu{display:none}
  .burger{display:block}
  .nav-cta{margin-left:auto}
  .menu.open{display:block;position:absolute;left:0;right:0;top:100%;min-height:calc(100svh - 70px);overflow-y:auto;background:rgba(14,9,17,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--line-2);padding:1rem var(--pad) 1.6rem}
  .menu.open ul{flex-direction:column;gap:0}
  .menu.open a{display:block;padding:.9rem 0;font-size:1.25rem;border-bottom:1px solid var(--line-2)}
  .menu.open a::after{display:none}
  .path{grid-template-columns:1fr 1fr}
  .ft-top{grid-template-columns:1fr 1fr}
  .ft-brand{grid-column:1/-1}
}
@media (max-width:900px){
  .hero{min-height:auto;padding:140px 0 110px;--x:70%;--y:30%;--rad:70vw}
  .hero-inner{grid-template-columns:1fr}
  .hero-sigil{display:none}
  .hero-veil{background:radial-gradient(circle calc(var(--rad)*.9) at var(--x) var(--y),rgba(255,170,80,.14),transparent 70%),linear-gradient(0deg,var(--night) 2%,rgba(14,9,17,.7) 50%,rgba(14,9,17,.45) 100%)}
  .moon-grid,.tarot-grid,.about-grid,.faq-grid,.contact-grid{grid-template-columns:minmax(0,1fr)}
  .moon-visual{order:2}
  .moon-orbit{width:min(70%,320px)}
  .draw{position:relative;top:0}
    .altar{grid-template-columns:minmax(0,1fr)}
  .altar-stage{display:none}
  .altar-js .rit{opacity:1}
  .rit{grid-template-columns:1fr;padding:0 0 36px;border:0;margin-bottom:28px}
  .rit:last-child{border:0}
  .rit-mob{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:8px 8px 0 0;margin-bottom:-1.6rem;position:relative}
  .rit-mob img{width:100%;height:100%;object-fit:cover}
  .rit-mob::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,var(--plum) 0%,transparent 55%)}
  .rit-num{position:relative;z-index:1;font-size:1.8rem;padding:0 4px}
  .rit-body{padding:0 4px}
  .rit-foot .btn{margin-left:0;width:100%}
  .faq .sec-head{position:static}
  .about-img{max-width:440px}
  .steps{grid-template-columns:1fr 1fr;row-gap:40px}
  .steps::before{display:none}
  .disc-points{grid-template-columns:1fr}
  .disc-points li{border-left:0;padding:1.6rem 0;border-bottom:1px solid var(--line-2)}
  .rev-list{grid-template-columns:1fr}
  .masonry{columns:2 150px}
}
@media (max-width:640px){
  .topbar-in{min-height:34px;gap:.6rem}
  .topbar-in>p{font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
  .topbar-panel{font-size:.74rem;white-space:nowrap;flex:none}
  .announce{font-size:.92rem}
  .an-sep{display:none}
  .announce-in{gap:.15em .6em}
  .hero-veil{background:radial-gradient(circle calc(var(--rad)*.9) at var(--x) var(--y),rgba(255,170,80,.16),transparent 70%),linear-gradient(0deg,var(--night) 4%,rgba(14,9,17,.6) 55%,rgba(14,9,17,.25) 100%)}
  .hero-img.dim img{filter:brightness(.38) saturate(.75)}
  .nav-in{min-height:68px;gap:.8rem}
  .hero{margin-top:-68px}
  .logo-svg{height:40px}
  .nav-cta{display:none}
  .burger{margin-left:auto}
  .hero-cta .btn{flex:1 1 100%}
  .ft-top{grid-template-columns:1fr 1fr}
  .path{grid-template-columns:1fr;gap:28px}
  .path:nth-child(even) .path-arch{order:0}
  .path-arch{width:min(78%,340px);margin:0 auto}
  .path-body{text-align:center}.path-text{margin-inline:auto}.path-foot{justify-content:center}
  .tal-grid{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .blik{grid-template-columns:1fr}
  .blik-data div{grid-template-columns:1fr;gap:.2rem}
  .channels{grid-template-columns:1fr}
  .ft-top{grid-template-columns:1fr}
  .mbar{display:grid;grid-template-columns:1.3fr 1fr;gap:8px;position:fixed;left:10px;right:10px;bottom:10px;z-index:150;padding:8px;background:rgba(14,9,17,.9);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:999px;box-shadow:0 20px 40px -10px #000;transform:translateY(140%);transition:transform .5s var(--ease)}
  .mbar.show{transform:none}
  .mbar a{display:flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;border-radius:999px;font-family:var(--f-label);letter-spacing:.1em;text-decoration:none;color:var(--wax);border:1px solid var(--line)}
  .mbar .mbar-sms{background:var(--gold-grad);color:#1b0f17;border:0}
  .cookies{left:10px;right:10px;bottom:10px;max-width:none}
  .lightbox{grid-template-columns:1fr;padding:60px 10px}
  .lb-prev,.lb-next{position:absolute;bottom:20px}
  .lb-prev{left:calc(50% - 64px)}.lb-next{right:calc(50% - 64px)}
  .tcard{width:28vw}
  .pl-item::before{display:none}
}

@media (min-width:641px) and (max-width:900px){
  .rit{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:0 28px;align-items:start}
  .rit-mob{grid-row:1 / span 2;margin:0;aspect-ratio:4/5;border-radius:6px}
  .rit-mob::after{display:none}
  .rit-num{margin:0 0 .3rem}
  .rit-foot .btn{width:auto}
  .masonry{columns:3 150px}
  .draw{max-width:620px;margin:0 auto;width:100%}
  .about-img{margin:0 auto}
  .hero{padding:150px 0 110px}
}

@media (max-width:640px){
  :root{--pad:20px}
  .tb-long{display:none}
  .an-moon{display:none}
  .announce{font-size:.86rem}
  .announce-in{min-height:36px;flex-wrap:nowrap}
  .announce-in>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
  .hero{display:block;min-height:0;padding:0 0 64px;--x:58%;--y:36%;--rad:62vw}
  .hero-media{bottom:auto;height:min(66svh,560px)}
  .hero-img img{object-position:62% 30%}
  .hero-img.dim img{filter:brightness(.58) saturate(.85) contrast(1.05)}
  .hero-veil{background:linear-gradient(180deg,rgba(14,9,17,.75) 0%,rgba(14,9,17,0) 26%,rgba(14,9,17,0) 52%,rgba(14,9,17,.85) 82%,var(--night) 100%),radial-gradient(circle calc(var(--rad)*.9) at var(--x) var(--y),rgba(255,170,80,.18),transparent 70%)}
  .hero-frame,.hero-scroll{display:none}
  .hero-inner{padding-top:calc(min(66svh,560px) - 150px)}
  .hero-eyebrow{font-size:.74rem;letter-spacing:.14em;margin-bottom:.8rem}
  .hero-title{margin-bottom:1rem;letter-spacing:-.015em}
  .hero-lead{margin-bottom:1.6rem}
  .hero-cta{gap:.6rem;margin-bottom:1.6rem}
  .hero-facts{gap:.5rem 1.1rem;font-size:.86rem;padding-top:1rem}
  .eyebrow{font-size:.8rem;letter-spacing:.14em}
  .btn{min-height:50px;font-size:.95rem;letter-spacing:.1em}
  .sec-head{margin-bottom:36px}
  .orn-head{margin-bottom:36px}
  .path-arch{width:min(72%,300px)}
  .path-arch::before{inset:-10px}
  .moon-now{padding:1.2rem 1.1rem}
  .moon-phase{font-size:1.5rem}
  .moon-strip{margin-top:24px}
  .moon-strip li{font-size:.62rem}
  .moon-strip svg{width:22px;height:22px}
  .draw{padding:20px 16px}
  .pl-name{font-size:1.15rem}
  .price{font-size:1.3rem}
  .pl-desc{font-size:1rem}
  .tip{font-size:1rem;padding:.9rem 1rem}
  .rit-mob{aspect-ratio:5/4}
  .rit-intent{font-size:.9rem}
  .label-inner{padding:26px 18px 18px}
  .label-name{font-size:1.6rem}
  .step{padding:0 0 0 64px;min-height:44px}
  .step-title{font-size:1.35rem}
  .steps{row-gap:28px}
  .blik{padding:22px 18px;margin-top:44px}
  .blik-logo{font-size:2.6rem}
  .disc-quote{gap:1rem;margin-bottom:32px}
  .disc-points li{padding:1.2rem 0}
  .masonry{column-gap:10px}.m-item{margin-bottom:10px}
  .m-cap{opacity:1;transform:none;padding:1.6rem .6rem .5rem;font-size:.78rem}
  .about-img{max-width:300px;margin:0 auto 8px}
  .about-img::before{transform:translate(10px,10px)}
  .about-text p:first-child::first-letter{font-size:3.6em}
  .stats{gap:28px}
  .rev{padding:22px 20px}
  .qa summary{font-size:1.12rem;padding:1.1rem 0}
  .qa summary i{width:32px;height:32px}
  .channel{padding:.9rem 1rem}
  .channel i{width:40px;height:40px}
  .intent-form{padding:22px 16px}
  .ft-top{grid-template-columns:1fr 1fr;gap:28px 20px}
  .ft-brand{grid-column:1/-1}
  .ft-col:last-child{grid-column:1/-1}
  .footer{padding-bottom:100px}
  .ft-bottom{flex-direction:column;gap:.6rem}
}
@media (max-width:360px){
  .hero-facts li:last-child{display:none}
  .tcard{width:26vw}
  .logo-svg{height:36px}
}
@media (max-height:520px) and (orientation:landscape){
  .hero{padding:110px 0 60px}
  .hero-media{height:100%}
  .hero-inner{padding-top:0}
}
/* --- cienki krój art déco: drobne pogrubienie i etykiety --- */
.h-display,.h-sm,.rit-name,.step-title,.label-name,.path-title.fraktur~*,.disc-points h3,.dr-title,.moon-phase,.blik-data dd,.ac-num,.rit-num,.stat-n,.tc-name,.path-price,.hero-title,.legal-page h1,.legal-page h2,.ck-t{-webkit-text-stroke:var(--disp-stroke) currentColor}
.hero-title{-webkit-text-stroke:calc(var(--disp-stroke)*1.4) currentColor}
html:not([data-fonts="klasyczny"]) .eyebrow{text-transform:uppercase;font-size:.72rem;letter-spacing:.24em}
html:not([data-fonts="klasyczny"]) .btn{text-transform:uppercase;font-size:.8rem;letter-spacing:.16em;font-weight:400}
html:not([data-fonts="klasyczny"]) .btn-sm{font-size:.74rem}
html:not([data-fonts="klasyczny"]) .menu a{font-size:.9rem;letter-spacing:.06em}
html:not([data-fonts="klasyczny"]) :is(.path-kicker,.step-n,.blik-k,.blik-data dt,.ft-h,.stat-l,.channel strong,.altar-cap,.tc-num,.rev-svc,.pl-note){text-transform:uppercase;font-size:.72rem;letter-spacing:.18em}
html:not([data-fonts="klasyczny"]) :is(.pl-order,.path-go,.announce a,.mbar a,.copy){text-transform:uppercase;font-size:.74rem;letter-spacing:.14em}
html:not([data-fonts="klasyczny"]) :is(.hero-facts,.rit-intent,.rit-moon,.moon-recs a,.pl-format,.label-variants li,.field label,.m-cap,.mp-ill,.rev-by,.topbar,.ft-bottom,.an-moon,.moon-strip li,.toast,.ck-opts){letter-spacing:.03em}
html:not([data-fonts="klasyczny"]) .hero-facts{font-size:.88rem}
html:not([data-fonts="klasyczny"]) .rit-intent{font-size:.9rem}
html:not([data-fonts="klasyczny"]) .field label{font-size:.88rem}
html:not([data-fonts="klasyczny"]) .about-text p:first-child::first-letter{font-size:3.4em;line-height:.85}
html:not([data-fonts="klasyczny"]) mark.todo{font-size:.76em;letter-spacing:.02em}
@media (max-width:640px){html:not([data-fonts="klasyczny"]) .hero-eyebrow{font-size:.64rem;letter-spacing:.18em}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .js .reveal,.js .hero-eyebrow,.js .ht-line,.js .ht-accent,.js .hero-lead,.js .hero-cta,.js .hero-facts,.js .hero-sigil{opacity:1;transform:none}
}
@media print{.topbar,.announce,.nav,.mbar,.cookies,.hero-media{display:none}body{background:#fff;color:#000}}
.blik-num{font-family:var(--f-body);font-weight:700;letter-spacing:.02em}

/* ===== wersja produkcyjna: podstrony, bloki, formularz ===== */
.page-head{padding:clamp(56px,9vw,120px) 0 clamp(8px,2vw,24px);background:radial-gradient(ellipse 60% 80% at 20% 0%,rgba(122,74,147,.22),transparent 70%)}
.page-head .lead{max-width:56ch}
.textblock .tb-wrap{max-width:880px}
.tb-body{font-size:var(--fs-lead);line-height:1.7}
.tb-body p,.tb-body ul{margin:0 0 1.1rem}
.tb-body h2{font-family:var(--f-display);font-weight:400;font-size:var(--fs-h4);color:var(--gold-l);margin:2rem 0 .6rem;-webkit-text-stroke:var(--disp-stroke) currentColor}
.tb-body a,.legal-body a{color:var(--gold)}
.tb-img{margin:2rem 0 0;border-radius:10px;overflow:hidden}
.tb-img img{width:100%;height:auto}
.ctablock .cta-box{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1.1rem;padding:clamp(32px,6vw,72px) clamp(20px,4vw,56px);border:1px solid var(--line);border-radius:14px;background:radial-gradient(ellipse 70% 90% at 50% 0%,rgba(122,74,147,.3),rgba(23,14,27,.6))}
.ctablock .h-display{margin:0}
.ctablock .lead{margin:0 auto;max-width:46ch}
.form-fail{display:flex;gap:1rem;align-items:flex-start;margin-top:1.2rem;padding:1rem 1.2rem;border:1px solid var(--rose);border-radius:var(--r);background:rgba(199,93,119,.1)}
.form-fail[hidden]{display:none}
.form-fail i{color:var(--rose);font-size:1.3rem;margin-top:.15em}
.form-fail p{margin:0}
.btn[aria-busy="true"]{opacity:.7;pointer-events:none}
.legal-body p,.legal-body ul{margin:0 0 1rem;max-width:72ch}
.legal-body h2{font-family:var(--f-display);font-weight:400;font-size:1.5rem;margin:2.2rem 0 .6rem;color:var(--gold-l);-webkit-text-stroke:var(--disp-stroke) currentColor}
.legal-body li{margin-bottom:.4rem}
.hero-sigil.hs-B{width:min(100%,300px)}
.hero-sigil.hs-C{width:min(100%,380px)}
