[hidden]{display:none!important}
/* Layout: night-sky single column — star field behind, a glowing hero with the reading form, then sections read like chapters of one horoscope */
:root{
  --night:#090A1C; --deep:#12122E; --veil:rgba(30,28,72,.55); --line:rgba(226,183,90,.28);
  --gold:#E8BE62; --gold-dim:#B08C45; --moon:#D7DDF5; --mist:#9EA3C7; --rose:#E59AB0; --violet:#9C8BE0;
  --display:"Philosopher","Palatino Linotype",Georgia,serif;
  --numeral:"Forum","Times New Roman",serif;
  --body:"Golos Text",system-ui,-apple-system,"Segoe UI",sans-serif;
  color-scheme:dark;
}
html{background:var(--night)}
body{background:var(--night);color:var(--moon);font:400 16px/1.65 var(--body);
  padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:0 64px}
#sky{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.wrap{position:relative;z-index:1;max-width:1000px;margin:0 auto;display:flex;flex-direction:column;gap:72px}
h1,h2,h3{font-family:var(--display);font-weight:400;margin:0;line-height:1.15;text-wrap:balance}
h1{font-size:clamp(2.8rem,8vw,5rem);color:var(--gold);text-shadow:0 0 32px rgba(232,190,98,.35)}
h2{font-size:clamp(1.8rem,4.5vw,2.6rem);color:var(--gold)}
h3{font-size:1.35rem;color:var(--moon)}
p{margin:0}
.eyebrow{font:500 .74rem/1 var(--body);letter-spacing:.22em;text-transform:uppercase;color:var(--violet)}
.lead{color:var(--mist);max-width:60ch}
.sec-head{display:flex;flex-direction:column;gap:8px;align-items:center;text-align:center}
.sec-head .lead{text-align:center}
.glyph{color:var(--gold-dim);font-size:1.1rem;letter-spacing:.6em}

/* hero */
.hero{min-height:0;padding-block:72px 8px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px}
.sigil{position:relative;width:min(220px,55vw);aspect-ratio:1;max-width:100%}
.sigil svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.sigil svg *{fill:none;stroke:var(--gold);stroke-width:1;vector-effect:non-scaling-stroke}
.sigil .halo{position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle,rgba(232,190,98,.35),rgba(232,190,98,0) 70%)}
@media (prefers-reduced-motion:no-preference){
  .sigil .r1{animation:spin 120s linear infinite;will-change:transform}
  .sigil .r2{animation:spin 180s linear infinite reverse;will-change:transform}
  .sigil .halo{animation:breathe 7s ease-in-out infinite;will-change:transform,opacity}
  html{scroll-behavior:smooth}
}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes breathe{0%,100%{transform:scale(.92);opacity:.55}50%{transform:scale(1.08);opacity:1}}
@keyframes rise{from{opacity:.25;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:no-preference){.fresh{animation:rise .6s cubic-bezier(.22,.8,.3,1) both}}
.btn,.key,.cell,nav a,input,.nb,.tcard{transition:background-color .35s ease,box-shadow .45s ease,border-color .35s ease,color .35s ease,transform .45s cubic-bezier(.22,.8,.3,1)}
svg .dot,svg text{transition:stroke .35s ease,stroke-width .35s ease,fill .35s ease}
.btn:hover{transform:translateY(-1px)}
.nb:hover,.tcard:hover{border-color:rgba(232,190,98,.55);transform:translateY(-3px)}
form{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:12px;margin-top:8px;width:100%}
.field{display:flex;flex-direction:column;gap:6px;text-align:left;flex:1 1 200px;max-width:280px}
label{font-size:.78rem;color:var(--mist);letter-spacing:.08em}
input{font:500 1.05rem var(--body);color:var(--moon);background:var(--veil);border:1px solid var(--line);
  border-radius:4px;padding:11px 12px;min-height:48px;width:100%;box-sizing:border-box}
input::placeholder{color:var(--mist);opacity:.7}
.btn{font:700 1.05rem var(--display);letter-spacing:.06em;color:var(--night);background:linear-gradient(180deg,#F3D28A,var(--gold));
  border:0;border-radius:4px;padding:0 26px;min-height:48px;cursor:pointer;box-shadow:0 0 24px rgba(232,190,98,.3)}
.btn:hover{box-shadow:0 0 36px rgba(232,190,98,.6)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.note{font-size:.85rem;color:var(--mist)}
.err{color:var(--rose)}
nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;font-size:.9rem}
nav a{color:var(--mist);text-decoration:none;border-bottom:1px solid transparent}
nav a:hover{color:var(--gold);border-color:var(--gold)}

/* portrait */
.life{display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px;align-items:center}
@media (max-width:640px){.life{grid-template-columns:1fr;text-align:center;justify-items:center}}
.orb{width:170px;height:170px;border-radius:50%;display:grid;place-items:center;position:relative;
  background:radial-gradient(circle at 40% 35%,rgba(232,190,98,.28),rgba(18,18,46,.9) 70%);border:1px solid var(--line);
  box-shadow:0 0 60px rgba(232,190,98,.18),inset 0 0 30px rgba(156,139,224,.2)}
.orb span{font:400 5rem/1 var(--numeral);color:var(--gold)}
.orb small{position:absolute;bottom:22px;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mist)}
.nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media (max-width:760px){.nums{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nb{padding:16px;border:1px solid var(--line);border-radius:6px;background:var(--veil);display:flex;flex-direction:column;gap:6px;}
.nb .v{font:400 2.4rem/1 var(--numeral);color:var(--gold);font-variant-numeric:tabular-nums}
.nb b{font-weight:600;font-size:.92rem}
.nb p{font-size:.86rem;color:var(--mist)}

/* time */
.time{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:820px){.time{grid-template-columns:1fr}}
.tcard{position:relative;padding:26px 22px 22px;border:1px solid var(--line);border-radius:120px 120px 8px 8px;
  background:linear-gradient(180deg,rgba(156,139,224,.14),var(--veil) 45%);display:flex;flex-direction:column;gap:10px;text-align:center;align-items:center}
.tcard .moon{width:44px;height:44px}
.tcard .when{font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--violet)}
.tcard .pair{font:400 1.05rem var(--display);color:var(--gold)}
.tcard p{font-size:.95rem;text-align:left}
.tcard p em{font-style:normal;color:var(--gold)}

/* matrix */
.main{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:820px){.main{grid-template-columns:1fr}}
.chart svg{display:block;width:100%;height:auto;overflow:visible}
svg .ln{stroke:var(--line);stroke-width:1.3;fill:none}
svg .ln-m{stroke:var(--violet);stroke-width:1.1;stroke-dasharray:3 6;fill:none}
svg .ln-f{stroke:var(--rose);stroke-width:1.1;stroke-dasharray:3 6;fill:none}
svg .dot{fill:var(--deep);stroke:var(--gold-dim);stroke-width:1.4}
svg .dot.big{stroke:var(--gold);stroke-width:1.8}
svg .dot.center{fill:#2A2350;stroke:var(--gold);stroke-width:2.5;filter:url(#glow)}
svg .dot.sm{stroke:var(--mist);stroke-width:.8;opacity:.8}
svg text{font-family:var(--numeral);fill:var(--moon);text-anchor:middle;dominant-baseline:central}
svg .lbl{font-family:var(--body);font-size:11px;fill:var(--mist);letter-spacing:.06em}
svg g.pt{cursor:pointer;outline:none}
svg g.pt:hover .dot,svg g.pt.on .dot,svg g.pt:focus-visible .dot{stroke:var(--gold);stroke-width:3;fill:#2A2350}
.keys{display:flex;flex-direction:column}
.key{display:grid;grid-template-columns:3rem minmax(0,1fr);gap:14px;align-items:baseline;padding:11px 6px;border:0;
  border-bottom:1px solid var(--line);background:none;color:inherit;text-align:left;font:inherit;cursor:pointer}
.key:hover,.key.on{background:rgba(232,190,98,.1)}
.num{font:400 1.7rem/1 var(--numeral);color:var(--gold);font-variant-numeric:tabular-nums;text-align:right}
.key b{font-weight:600;display:block;font-size:.95rem}
.key span{color:var(--mist);font-size:.86rem}
.detail{margin-top:20px;padding:20px;border:1px solid var(--line);border-radius:6px;background:var(--veil);display:flex;flex-direction:column;gap:10px}
.detail .row{display:flex;gap:14px;align-items:baseline;flex-wrap:wrap}
.pm{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:560px){.pm{grid-template-columns:1fr}}
.pm h4{margin:0 0 4px;font:600 .72rem var(--body);letter-spacing:.16em;text-transform:uppercase}
.plus h4{color:var(--gold)} .minus h4{color:var(--rose)}
.pm p{font-size:.93rem}
.purp{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px}
@media (max-width:820px){.purp{grid-template-columns:1fr}}
.pcard{border-top:1px solid var(--gold);padding-top:14px;display:flex;flex-direction:column;gap:6px}
.formula{font-size:.85rem;color:var(--mist);font-variant-numeric:tabular-nums}
.formula strong{font:400 1.6rem var(--numeral);color:var(--gold);margin-left:6px}

/* locked matrix */
.lock{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:center;padding:28px;
  border:1px solid var(--line);border-radius:14px;background:radial-gradient(circle at 30% 40%,rgba(232,190,98,.10),var(--veil) 65%)}
@media (max-width:820px){.lock{grid-template-columns:1fr;padding:22px 16px}}
.lock svg{display:block;width:100%;height:auto;overflow:visible;max-width:460px;margin:0 auto}
svg .q{fill:var(--gold-dim);font-size:20px}
svg .q.c{fill:var(--gold);font-size:30px}
@media (prefers-reduced-motion:no-preference){svg .pulse{animation:pulse 3.2s ease-in-out infinite;transform-box:fill-box;transform-origin:center}}
@keyframes pulse{0%,100%{opacity:.55}50%{opacity:1}}
.lock-txt{display:flex;flex-direction:column;gap:14px;min-width:0}
.incl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
.incl li{display:grid;grid-template-columns:1.2rem minmax(0,1fr);gap:8px;font-size:.95rem}
.incl li::before{content:"✦";color:var(--gold)}
.pay-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.big-price{font:400 2.8rem/1 var(--numeral);color:var(--gold);text-shadow:0 0 24px rgba(232,190,98,.35)}
@media (max-width:820px){.lock-txt .btn-tg{align-self:stretch;justify-content:center}}
/* pythagoras */
.pyth{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:760px){.pyth{grid-template-columns:1fr}}
.grid9{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--gold-dim);aspect-ratio:1;max-width:100%}
.cell{border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  background:none;color:inherit;font:inherit;cursor:pointer;padding:4px;min-width:0}
.cell:hover,.cell.on{background:rgba(232,190,98,.12)}
.cell .d{font:400 1.5rem/1.1 var(--numeral);color:var(--gold);letter-spacing:.04em;word-break:break-all}
.cell .d.empty{color:var(--mist);opacity:.6;font-size:1.1rem}
.cell small{font-size:.68rem;color:var(--mist);text-align:center;line-height:1.2}
.work{font-size:.85rem;color:var(--mist);margin-top:10px;font-variant-numeric:tabular-nums}
.pdet{display:flex;flex-direction:column;gap:10px}
.meter{display:flex;gap:5px}
.meter i{width:26px;height:6px;border-radius:3px;background:var(--line)}
.meter i.f{background:var(--gold)}

/* telegram */
.tg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;align-items:center;padding:36px 28px;
  border:1px solid var(--line);border-radius:14px;background:radial-gradient(circle at 20% 30%,rgba(156,139,224,.18),var(--veil) 60%)}
@media (max-width:760px){.tg{grid-template-columns:1fr;text-align:center;justify-items:center;padding:28px 18px}}
.fan{position:relative;height:230px;width:100%;max-width:300px;margin:0 auto}
.fan .cd{position:absolute;left:50%;bottom:0;width:120px;aspect-ratio:7/11;margin-left:-60px;border-radius:10px;
  border:1px solid var(--gold-dim);transform-origin:50% 120%;
  background:repeating-linear-gradient(45deg,rgba(232,190,98,.08) 0 6px,transparent 6px 12px),radial-gradient(circle,#2A2554,#10102A);
  display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.45);transition:transform .7s cubic-bezier(.22,.8,.3,1)}
.fan .cd svg{width:62%;height:auto}.fan .cd svg *{fill:none;stroke:var(--gold);stroke-width:1.2}
.fan .c1{transform:rotate(-14deg) translateX(-18px)}.fan .c2{transform:translateY(-8px)}.fan .c3{transform:rotate(14deg) translateX(18px)}
.tg:hover .c1{transform:rotate(-22deg) translateX(-34px)}.tg:hover .c3{transform:rotate(22deg) translateX(34px)}.tg:hover .c2{transform:translateY(-18px)}
@media (prefers-reduced-motion:no-preference){.fan{animation:float 6s ease-in-out infinite;will-change:transform}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.tg-txt{display:flex;flex-direction:column;gap:14px;min-width:0}
@media (max-width:760px){.tg-txt{align-items:center}}
.price{display:flex;flex-direction:column;gap:2px;width:100%;max-width:420px}
.price div{display:flex;justify-content:space-between;gap:12px;padding:8px 2px;border-bottom:1px dashed var(--line);font-size:.95rem;text-align:left}
.price b{font:400 1.15rem var(--numeral);color:var(--gold);white-space:nowrap;font-weight:400}
.btn-tg{display:inline-flex;align-items:center;gap:10px;text-decoration:none;padding:0 26px;align-self:flex-start}
@media (max-width:760px){.btn-tg{align-self:center}}
.btn-tg svg{width:22px;height:22px;fill:var(--night)}
footer{font-size:.82rem;color:var(--mist);text-align:center;max-width:62ch;margin:0 auto}

/* on-site payment */
.pay-btns{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.btn-ghost{background:none;border:1px solid var(--gold-dim);color:var(--gold);box-shadow:none;font:600 .95rem var(--body);padding:0 18px}
.btn-ghost:hover{background:rgba(232,190,98,.12);box-shadow:none}
.btn[disabled]{opacity:.6;cursor:wait}
.modal{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:rgba(5,6,18,.78);
  padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.modal-box{width:100%;max-width:520px;max-height:100%;overflow:auto;background:#fff;color:#111;border-radius:12px;padding:14px;position:relative}
.modal-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:4px 4px 10px;font:600 1rem var(--body)}
.modal-close{background:none;border:0;font-size:1.6rem;line-height:1;cursor:pointer;color:#333;padding:4px 8px}
.seller{font-size:.8rem;color:var(--mist);text-align:center;display:flex;flex-direction:column;gap:4px}
.seller a{color:var(--mist)}
.seller a:hover{color:var(--gold)}
/* report page */
.report{display:flex;flex-direction:column;gap:16px;max-width:760px;margin:0 auto;width:100%}
.blk{padding:20px;border:1px solid var(--line);border-radius:10px;background:var(--veil);line-height:1.65}
.blk.h{border:0;background:none;padding:18px 0 0;font:400 1.7rem var(--display);color:var(--gold);text-align:center}
.blk b{color:var(--gold);font-weight:600}
.blk i{color:var(--mist)}
.blk pre{font:400 1.2rem/1.5 var(--numeral);color:var(--gold);overflow-x:auto;text-align:center}
.legal{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.legal h2{margin-top:12px;font-size:1.4rem}
.legal p,.legal li{color:var(--moon)}
.status{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center;padding-block:48px}
.spinner{width:56px;height:56px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--gold)}
@media (prefers-reduced-motion:no-preference){.spinner{animation:spin 1.2s linear infinite}}
.back-link{color:var(--mist);text-decoration:none}.back-link:hover{color:var(--gold)}
/* questionnaires */
.order{display:flex;flex-direction:column;gap:16px;padding:24px 28px;border:1px solid var(--line);border-radius:14px;background:var(--veil)}
@media (max-width:820px){.order{padding:20px 16px}}
.order h3{font-size:1.4rem;color:var(--gold)}
.pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:820px){.pair{grid-template-columns:1fr}}
.anketa{border:1px solid var(--line);border-radius:10px;padding:14px 16px 18px;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;min-width:0}
.anketa legend{padding:0 8px;font:600 .78rem var(--body);letter-spacing:.16em;text-transform:uppercase;color:var(--violet)}
.anketa .f{display:flex;flex-direction:column;gap:6px;min-width:0}
.anketa .f.wide{grid-column:1/-1}
@media (max-width:480px){.anketa{grid-template-columns:1fr}}
.anketa input[type=time]:disabled{opacity:.4}
.check{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--mist);cursor:pointer;letter-spacing:0}
.check input{width:18px;height:18px;min-height:0;accent-color:var(--gold);margin:0}
.anketa input.bad{border-color:var(--rose)}
.order .note a{color:var(--mist)}
.order .note a:hover{color:var(--gold)}
.rings{display:block;width:100%;max-width:420px;height:auto;margin:0 auto;overflow:visible}

/* ---------- адаптивность: телефон и ПК ---------- */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
section[id]{scroll-margin-top:calc(76px + env(safe-area-inset-top,0px))}
.topnav{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;margin:-44px auto -40px;width:max-content;max-width:100%;
  display:flex;flex-wrap:nowrap;gap:4px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
  padding:6px;border:1px solid var(--line);border-radius:999px;background:rgba(9,10,28,.86);box-sizing:border-box;
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.topnav::-webkit-scrollbar{display:none}
.topnav a{white-space:nowrap;display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;border:0;
  color:var(--mist);text-decoration:none;font-size:.9rem}
.topnav a:hover{color:var(--gold);background:rgba(232,190,98,.08)}
.topnav a.active{color:var(--night);background:var(--gold)}
@media (max-width:640px){.topnav{border-radius:14px;margin:-56px 0 -52px}}
.eyebrow{font-size:.78rem}
.cell small{font-size:.75rem}
svg .lbl{font-size:13px}
label.check{min-height:40px;padding-right:10px;align-self:flex-start}
.back-link{display:inline-block;padding:10px 0}
.seller a{display:inline-block;padding:8px 4px}
.order .note a{display:inline-block;padding:4px 0}
@media (max-width:560px){
  .pay-btns{flex-direction:column;align-items:stretch}
  .pay-btns .btn{width:100%;min-height:52px}
  .btn{padding:0 18px}
  form .btn{width:100%;max-width:280px}
  .modal{padding:0;align-items:end;justify-items:stretch}
  .modal-box{max-width:none;border-radius:16px 16px 0 0;max-height:94dvh;padding-bottom:max(14px,env(safe-area-inset-bottom,0px))}
  .lock{gap:20px}
  .lock svg,.rings{max-width:340px}
  h2{font-size:clamp(1.7rem,8vw,2.1rem)}
}
/* поля даты/времени в iPhone: одинаковая высота и выравнивание */
@supports (-webkit-touch-callout:none){
  input[type=date],input[type=time]{-webkit-appearance:none;appearance:none;display:block;text-align:left;line-height:1.3}
  input::-webkit-date-and-time-value{text-align:left}
}
input[type=date]::-webkit-calendar-picker-indicator,input[type=time]::-webkit-calendar-picker-indicator{filter:invert(.8) sepia(.4);cursor:pointer}
@media (hover:none){.nb:hover,.tcard:hover{transform:none}.btn:hover{transform:none}}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:19;background:var(--night)}

/* ---------- SEO-страницы ---------- */
.crumbs{font-size:.85rem;color:var(--mist);display:flex;flex-wrap:wrap;gap:4px 6px}
.crumbs a{color:var(--mist);text-decoration:none;padding:6px 0}.crumbs a:hover{color:var(--gold)}
.page-h1{font-size:clamp(2rem,6vw,3.2rem)}
.prose{max-width:760px;margin:0 auto;width:100%;display:flex;flex-direction:column;gap:14px;line-height:1.75}
.prose h2{font-size:clamp(1.4rem,4vw,1.8rem);margin-top:18px}
.prose p,.prose li{color:var(--moon)}
.prose ul,.prose ol{margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:6px}
.prose a{color:var(--gold)}
.prose b{color:var(--gold);font-weight:600}
.prose .pm{margin:4px 0}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.tile{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;text-align:center;padding:18px 10px;
  border:1px solid var(--line);border-radius:10px;background:var(--veil);color:var(--moon);text-decoration:none;min-height:110px}
.tile:hover{border-color:var(--gold);color:var(--gold)}
.tile-n{font:400 2rem/1 var(--numeral);color:var(--gold);font-family:var(--numeral),'Segoe UI Symbol','DejaVu Sans',sans-serif}
.arts,.lib{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.art-card,.lib-card{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid var(--line);border-radius:12px;
  background:var(--veil);color:var(--moon);text-decoration:none}
.art-card:hover,.lib-card:hover{border-color:var(--gold)}
.art-card h3,.lib-card h3{color:var(--gold);font-size:1.3rem}
.art-card p,.lib-card p{font-size:.92rem;color:var(--mist)}
.lib-ic{font:400 1.6rem/1 var(--numeral);color:var(--gold-dim);letter-spacing:.1em;font-family:var(--numeral),'Segoe UI Symbol','DejaVu Sans',sans-serif}
.cta{margin:22px 0 6px;padding:22px;border:1px solid var(--gold-dim);border-radius:14px;display:flex;flex-direction:column;gap:10px;
  background:radial-gradient(circle at 20% 20%,rgba(232,190,98,.12),var(--veil) 70%)}
.cta h3{color:var(--gold);font-size:1.4rem}.cta p{color:var(--moon)}
.cta .btn{align-self:flex-start;display:inline-flex;align-items:center;text-decoration:none}
@media (max-width:560px){.cta .btn{align-self:stretch;justify-content:center;min-height:52px}}
.pager{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:10px;font-size:.92rem}
.pager a{color:var(--mist);text-decoration:none;padding:10px 0}.pager a:hover{color:var(--gold)}
.faqs{display:flex;flex-direction:column;gap:10px;max-width:820px;margin:0 auto;width:100%}
.faq{border:1px solid var(--line);border-radius:10px;background:var(--veil);padding:0 18px}
.faq summary{cursor:pointer;padding:16px 0;font-weight:600;color:var(--moon);list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--gold);font-size:1.3rem;line-height:1}
.faq[open] summary::after{content:"−"}
.faq p{padding:0 0 16px;color:var(--mist)}
.prose a.btn,.cta a.btn{color:var(--night)}
.crumbs{align-items:baseline}
@media (max-width:560px){.pager{flex-direction:column;align-items:center;gap:0;text-align:center}}
