/* ============================================================
   Zilwer — sistema visual
   ============================================================ */

:root{
  --bg:#07070d;
  --bg-2:#0c0c16;
  --surf:#12121f;
  --surf-2:#171726;
  --surf-3:#1e1e30;
  --line:rgba(255,255,255,.09);
  --line-2:rgba(255,255,255,.16);
  --txt:#eceaf6;
  --txt-2:#b3b0c8;
  --txt-3:#7d7a94;
  --gold:#f6c453;
  --gold-2:#e0912a;
  --violet:#9b4dff;
  --cyan:#49d2e8;
  --danger:#ff6b6b;
  --ok:#4ade80;

  --font-display:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Times New Roman",serif;
  --font-body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;

  --wrap:1260px;
  --r-s:10px;
  --r-m:16px;
  --r-l:24px;
  --r-xl:32px;

  --sh-1:0 2px 8px rgba(0,0,0,.35);
  --sh-2:0 18px 40px -18px rgba(0,0,0,.85);
  --sh-3:0 40px 90px -40px rgba(0,0,0,.95);

  --ease:cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:90px}
body{
  margin:0;background:var(--bg);color:var(--txt);
  font-family:var(--font-body);font-size:16.5px;line-height:1.68;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(900px 620px at 12% -8%,rgba(155,77,255,.16),transparent 62%),
    radial-gradient(760px 520px at 92% 2%,rgba(246,196,83,.11),transparent 60%),
    radial-gradient(1100px 700px at 50% 108%,rgba(73,210,232,.07),transparent 65%);
}
main,header,footer{position:relative;z-index:1}

img,svg{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.14;letter-spacing:-.012em;margin:0 0 .5em}
h1{font-size:clamp(2.1rem,5.4vw,4rem)}
h2{font-size:clamp(1.5rem,2.9vw,2.4rem)}
h3{font-size:1.16rem;line-height:1.3}
p{margin:0 0 1.05em}
ul,ol{margin:0 0 1.1em;padding-left:1.15em}
strong{color:#fff;font-weight:600}
em{font-style:italic}
small{font-size:.83em}
::selection{background:rgba(246,196,83,.3);color:#fff}

.wrap{width:min(100% - 2.6rem,var(--wrap));margin-inline:auto}
.skip{position:absolute;left:-999px;top:0;z-index:99;background:var(--gold);color:#111;padding:.7rem 1.1rem;border-radius:0 0 10px 0;font-weight:600}
.skip:focus{left:0}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:6px}

.kicker{
  font-family:var(--font-body);font-size:.735rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gold);margin:0 0 .55em;
}
.lead{font-size:clamp(1.02rem,1.5vw,1.16rem);color:var(--txt-2);max-width:66ch}
.note{font-size:.88rem;color:var(--txt-3);line-height:1.6}
.note a{color:var(--txt-2);text-decoration:underline;text-underline-offset:2px}

/* ------------------------------------------------ botões / chips / tags -- */
.btn{
  --bh:rgba(255,255,255,.07);
  display:inline-flex;align-items:center;gap:.5rem;justify-content:center;
  font:600 .93rem/1 var(--font-body);letter-spacing:.005em;
  padding:.82rem 1.3rem;border-radius:999px;border:1px solid var(--line-2);
  background:var(--bh);color:var(--txt);cursor:pointer;text-decoration:none;
  transition:transform .2s var(--ease),background .2s,border-color .2s,box-shadow .25s;
}
.btn:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.12)}
.btn:active{transform:translateY(0)}
.btn-primary{
  background:linear-gradient(135deg,var(--gold) 0%,var(--gold-2) 62%,#c2410c 100%);
  color:#170f02;border-color:transparent;font-weight:700;
  box-shadow:0 10px 28px -12px rgba(246,196,83,.7),inset 0 1px 0 rgba(255,255,255,.4);
}
.btn-primary:hover{box-shadow:0 16px 38px -12px rgba(246,196,83,.85),inset 0 1px 0 rgba(255,255,255,.5);background:linear-gradient(135deg,#ffd77a,#eaa03a 60%,#d9510f)}
.btn-ghost{background:rgba(255,255,255,.04)}
.btn-lg{padding:1rem 1.7rem;font-size:1rem}
.btn-sm{padding:.5rem .85rem;font-size:.82rem}
.btn[aria-pressed="true"]{border-color:var(--gold);color:var(--gold);background:rgba(246,196,83,.12)}

.tag{
  display:inline-flex;align-items:center;font-size:.7rem;font-weight:700;letter-spacing:.09em;
  text-transform:uppercase;padding:.3rem .58rem;border-radius:6px;
  color:var(--tc,var(--gold));background:color-mix(in srgb,var(--tc,var(--gold)) 14%,transparent);
  border:1px solid color-mix(in srgb,var(--tc,var(--gold)) 34%,transparent);
}
.tag-lk{
  display:inline-flex;align-items:center;font-size:.78rem;padding:.36rem .7rem;border-radius:999px;
  border:1px solid var(--line-2);background:rgba(255,255,255,.04);text-decoration:none;color:var(--txt-2);
  transition:.2s;
}
.tag-lk:hover{color:#fff;border-color:var(--gold);background:rgba(246,196,83,.1)}
.tag-lk.is-plain{pointer-events:none;opacity:.7}

.chip,.chip-mini{
  font:600 .8rem/1 var(--font-body);padding:.5rem .8rem;border-radius:999px;cursor:pointer;
  border:1px solid var(--line-2);background:rgba(255,255,255,.04);color:var(--txt-2);
  text-decoration:none;display:inline-flex;align-items:center;transition:.18s;
}
.chip:hover,.chip-mini:hover{color:#fff;border-color:var(--tc,var(--gold));background:color-mix(in srgb,var(--tc,var(--gold)) 12%,transparent)}
.chip.is-on{color:#0d0d16;background:var(--tc,var(--gold));border-color:transparent;font-weight:700}
.chips{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}
.seg-l{font-size:.78rem;color:var(--txt-3);text-transform:uppercase;letter-spacing:.1em;font-weight:700}

.seg{display:inline-flex;flex-wrap:wrap;gap:.3rem;align-items:center;padding:.3rem;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.03)}
.seg-b{
  font:600 .82rem/1 var(--font-body);padding:.55rem .9rem;border-radius:999px;border:0;cursor:pointer;
  background:transparent;color:var(--txt-2);transition:.18s;
}
.seg-b:hover{color:#fff;background:rgba(255,255,255,.07)}
.seg-b.is-on{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#180f02;font-weight:700}

/* barras de notas */
.bars{display:grid;gap:.5rem}
.bar{display:grid;grid-template-columns:7.2rem 1fr 2.1rem;align-items:center;gap:.6rem;font-size:.8rem}
.bar-k{color:var(--txt-3);letter-spacing:.02em}
.bar-t{height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden;position:relative}
.bar-t i{
  display:block;height:100%;border-radius:99px;
  background:linear-gradient(90deg,var(--c1,var(--gold)),var(--c2,var(--violet)));
  box-shadow:0 0 12px -2px var(--c1,var(--gold));
  animation:grow 1s var(--ease) both;
}
.bar-v{text-align:right;font-variant-numeric:tabular-nums;font-weight:700;color:var(--txt)}
.bars-c .bar{grid-template-columns:6.4rem 1fr 1.9rem;font-size:.74rem}
@keyframes grow{from{transform:scaleX(.02);transform-origin:left}to{transform:scaleX(1)}}

/* ------------------------------------------------------------- emblemas -- */
.emblem{width:100%;height:auto;overflow:visible}
.emblem-glyph{filter:drop-shadow(0 4px 14px rgba(0,0,0,.55))}
.emblem [stroke]{vector-effect:non-scaling-stroke}

/* ------------------------------------------------------------- cabeçalho -- */
.site-head{
  position:sticky;top:0;z-index:40;
  background:color-mix(in srgb,var(--bg) 82%,transparent);
  backdrop-filter:blur(16px) saturate(140%);
  border-bottom:1px solid var(--line);
}
.head-in{display:flex;align-items:center;gap:1.1rem;height:68px}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;font-family:var(--font-display);font-size:1.32rem;font-weight:700;letter-spacing:.01em}
.brand .logo-mark{transition:transform .5s var(--ease)}
.brand:hover .logo-mark{transform:rotate(-14deg) scale(1.06)}
.brand-txt{background:linear-gradient(120deg,#fff 20%,var(--gold) 70%);-webkit-background-clip:text;background-clip:text;color:transparent}
.main-nav{display:flex;gap:.2rem;margin-left:1.2rem}
.main-nav a{
  padding:.55rem .78rem;border-radius:9px;text-decoration:none;font-size:.9rem;font-weight:500;
  color:var(--txt-2);transition:.18s;position:relative;
}
.main-nav a:hover{color:#fff;background:rgba(255,255,255,.06)}
.main-nav a[aria-current]{color:var(--gold)}
.main-nav a[aria-current]::after{content:"";position:absolute;left:.78rem;right:.78rem;bottom:.24rem;height:2px;border-radius:2px;background:var(--gold)}
.head-acts{margin-left:auto;display:flex;gap:.35rem;align-items:center}
.icon-btn{
  position:relative;width:40px;height:40px;display:grid;place-items:center;border-radius:11px;
  border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--txt-2);cursor:pointer;transition:.2s;
}
.icon-btn:hover{color:var(--gold);border-color:rgba(246,196,83,.45);background:rgba(246,196,83,.1);transform:translateY(-1px)}
.icon-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.fav-count{
  position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;
  background:var(--gold);color:#140d02;font-size:.68rem;font-weight:800;display:grid;place-items:center;
}
.menu-btn{display:none}
.mob-nav{display:none;flex-direction:column;padding:.5rem 1.3rem 1.1rem;border-top:1px solid var(--line)}
.mob-nav a{padding:.72rem .2rem;text-decoration:none;color:var(--txt-2);border-bottom:1px solid var(--line);font-weight:500}
.mob-nav a:last-child{border:0}

/* busca overlay */
.search-layer{
  position:fixed;inset:0;z-index:60;background:rgba(4,4,10,.72);backdrop-filter:blur(10px);
  padding:max(9vh,4rem) 1.2rem 2rem;animation:fade .2s var(--ease);
}
@keyframes fade{from{opacity:0}to{opacity:1}}
.search-box{
  width:min(100%,720px);margin-inline:auto;background:linear-gradient(180deg,var(--surf-2),var(--surf));
  border:1px solid var(--line-2);border-radius:var(--r-l);box-shadow:var(--sh-3);overflow:hidden;
  animation:pop .25s var(--ease);
}
@keyframes pop{from{opacity:0;transform:translateY(-14px) scale(.98)}to{opacity:1;transform:none}}
.search-field{display:flex;align-items:center;gap:.7rem;padding:1rem 1.1rem;border-bottom:1px solid var(--line)}
.sf-ico{width:20px;height:20px;fill:none;stroke:var(--gold);stroke-width:1.8;stroke-linecap:round;flex:none}
.search-field input{
  flex:1;background:transparent;border:0;color:var(--txt);font-size:1.06rem;font-family:inherit;padding:.25rem 0;
}
.search-field input:focus{outline:0}
.sf-close{background:rgba(255,255,255,.07);border:1px solid var(--line);color:var(--txt-3);border-radius:7px;padding:.28rem .5rem;font-size:.7rem;cursor:pointer;text-transform:uppercase;letter-spacing:.08em}
.search-out{max-height:min(52vh,460px);overflow:auto;padding:.4rem}
.search-hint{padding:.7rem 1.1rem 1rem;display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;font-size:.82rem;color:var(--txt-3);border-top:1px solid var(--line)}
.sres{
  display:flex;align-items:center;gap:.85rem;padding:.6rem .7rem;border-radius:12px;text-decoration:none;
  color:var(--txt);transition:.14s;
}
.sres:hover,.sres.is-sel{background:rgba(255,255,255,.07)}
.sres .emblem{width:40px;height:40px;flex:none}
.sres b{font-family:var(--font-display);font-size:1.02rem;font-weight:600;display:block}
.sres span{font-size:.8rem;color:var(--txt-3);display:block}
.sres-empty{padding:1.6rem 1.2rem;color:var(--txt-3);text-align:center}

/* ------------------------------------------------------------------ hero -- */
.hero{position:relative;padding:clamp(2.4rem,6vw,5rem) 0 clamp(3rem,7vw,6rem);overflow:hidden}
.hero-bg{position:absolute;inset:-20% -10% 0;pointer-events:none}
.hb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55}
.hb1{width:48vw;height:48vw;left:-8vw;top:-6vw;background:radial-gradient(circle,rgba(155,77,255,.45),transparent 68%)}
.hb2{width:44vw;height:44vw;right:-6vw;top:2vw;background:radial-gradient(circle,rgba(246,196,83,.32),transparent 68%)}
.hb3{width:60vw;height:38vw;left:22vw;bottom:-18vw;background:radial-gradient(circle,rgba(73,210,232,.2),transparent 70%)}
.grain{
  position:absolute;inset:0;opacity:.32;mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");
}
.hero-in{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(1.5rem,4vw,3.4rem);align-items:center}
.hero-txt{max-width:640px}
.eyebrow{
  display:inline-flex;align-items:center;gap:.55rem;font-size:.76rem;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;color:var(--txt-2);padding:.42rem .85rem;border-radius:999px;
  border:1px solid var(--line-2);background:rgba(255,255,255,.04);margin-bottom:1.2rem;
}
.pulse{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 rgba(246,196,83,.6);animation:pl 2.4s infinite}
@keyframes pl{70%{box-shadow:0 0 0 9px rgba(246,196,83,0)}100%{box-shadow:0 0 0 0 rgba(246,196,83,0)}}
.hero h1{margin-bottom:.45em}
.hero h1 em{
  font-style:normal;
  background:linear-gradient(105deg,var(--gold) 0%,#ff9f45 40%,var(--violet) 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero-search{
  display:flex;align-items:center;gap:.6rem;margin:1.6rem 0 .5rem;padding:.42rem .42rem .42rem 1rem;
  border:1px solid var(--line-2);border-radius:999px;background:rgba(10,10,20,.66);
  backdrop-filter:blur(8px);box-shadow:var(--sh-2);max-width:540px;transition:border-color .2s,box-shadow .2s;
}
.hero-search:focus-within{border-color:rgba(246,196,83,.55);box-shadow:0 0 0 4px rgba(246,196,83,.1),var(--sh-2)}
.hero-search svg{width:19px;height:19px;fill:none;stroke:var(--txt-3);stroke-width:1.8;stroke-linecap:round;flex:none}
.hero-search input{flex:1;min-width:0;background:transparent;border:0;color:var(--txt);font:inherit;font-size:.98rem}
.hero-search input:focus{outline:0}
.hero-out{max-width:540px;margin-bottom:1rem;background:var(--surf);border:1px solid var(--line);border-radius:var(--r-m);overflow:hidden;box-shadow:var(--sh-2)}
.hero-btns{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1.3rem}
.hero-chips{display:flex;gap:.45rem;flex-wrap:wrap;list-style:none;padding:0;margin:1.5rem 0 0}
.hero-chips a{
  font-size:.8rem;padding:.42rem .78rem;border-radius:999px;border:1px solid var(--line);
  background:rgba(255,255,255,.03);color:var(--txt-3);text-decoration:none;transition:.18s;
}
.hero-chips a:hover{color:var(--gold);border-color:rgba(246,196,83,.4)}

.hero-art{position:relative;aspect-ratio:1;min-height:320px;display:grid;place-items:center}
.hero-main{
  position:relative;width:min(72%,430px);display:block;text-decoration:none;
  animation:float 9s ease-in-out infinite;
}
.hero-main .emblem{filter:drop-shadow(0 30px 60px rgba(0,0,0,.75))}
.hero-main::after{
  content:"";position:absolute;inset:8%;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,color-mix(in srgb,var(--c1) 22%,transparent),transparent 62%);
  filter:blur(26px);z-index:-1;
}
.hero-main-tag{
  position:absolute;left:50%;bottom:-.4rem;transform:translateX(-50%);
  display:flex;flex-direction:column;align-items:center;gap:.05rem;padding:.5rem 1.1rem;
  background:rgba(10,10,18,.8);border:1px solid var(--line-2);border-radius:999px;backdrop-filter:blur(8px);
  font-family:var(--font-display);font-size:1.02rem;font-weight:600;white-space:nowrap;
}
.hero-main-tag small{font-family:var(--font-body);font-size:.68rem;color:var(--txt-3);letter-spacing:.06em;text-transform:uppercase}
@keyframes float{0%,100%{transform:translateY(-8px)}50%{transform:translateY(10px)}}

.orbit{position:absolute;inset:0;pointer-events:none}
.orb{
  position:absolute;width:76px;pointer-events:auto;text-decoration:none;
  transition:transform .3s var(--ease);animation:float 11s ease-in-out infinite;
}
.orb span{
  display:block;text-align:center;font-size:.65rem;color:var(--txt-3);margin-top:.2rem;
  opacity:0;transition:opacity .25s;letter-spacing:.04em;
}
.orb:hover{transform:scale(1.16)}
.orb:hover span{opacity:1;color:var(--txt)}
.orb-1{top:2%;left:6%;animation-delay:-1s}
.orb-2{top:16%;right:1%;width:64px;animation-delay:-3s}
.orb-3{bottom:16%;left:0;width:66px;animation-delay:-5s}
.orb-4{bottom:3%;right:12%;animation-delay:-2s}
.orb-5{top:46%;left:-4%;width:56px;animation-delay:-6s}
.orb-6{bottom:32%;right:-3%;width:58px;animation-delay:-4s}

/* ---------------------------------------------------------------- seções -- */
.sec{padding:clamp(2.6rem,5.5vw,4.6rem) 0;position:relative}
.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.5rem;margin-bottom:2rem;flex-wrap:wrap}
.sec-head h2{margin:0;max-width:22ch}
.page-head{padding:clamp(2rem,4.6vw,3.6rem) 0 1.6rem;border-bottom:1px solid var(--line);position:relative}
.page-head h1{margin-bottom:.4em}
.crumbs{border-bottom:1px solid var(--line);background:rgba(8,8,16,.5)}
.crumbs .wrap{display:flex;gap:.45rem;flex-wrap:wrap;align-items:center;padding:.6rem 0;font-size:.8rem;color:var(--txt-3)}
.crumbs a{color:var(--txt-3);text-decoration:none}
.crumbs a:hover{color:var(--gold)}
.crumbs .sep{opacity:.4}
.crumbs [aria-current]{color:var(--txt-2)}

/* rankings em destaque */
.rk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.1rem}
.rk-card{
  position:relative;display:flex;flex-direction:column;gap:.55rem;padding:1.5rem 1.35rem 1.35rem;
  border-radius:var(--r-l);text-decoration:none;overflow:hidden;
  background:linear-gradient(165deg,rgba(255,255,255,.055),rgba(255,255,255,.015));
  border:1px solid var(--line);transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;
}
.rk-card::before{
  content:"";position:absolute;inset:0;opacity:0;transition:opacity .35s;
  background:radial-gradient(420px 160px at 20% 0%,rgba(246,196,83,.16),transparent 70%);
}
.rk-card:hover{transform:translateY(-5px);border-color:rgba(246,196,83,.35);box-shadow:var(--sh-2)}
.rk-card:hover::before{opacity:1}
.rk-card h3{font-size:1.28rem;margin:0}
.rk-card p{font-size:.88rem;color:var(--txt-2);margin:0;line-height:1.55}
.rk-top{display:flex;position:relative;z-index:1}
.rk-mini{width:52px;margin-right:-16px;filter:drop-shadow(0 6px 14px rgba(0,0,0,.6))}
.rk-mini:nth-child(2){width:44px;opacity:.9}
.rk-mini:nth-child(3){width:38px;opacity:.78}
.rk-meta{font-size:.74rem;color:var(--txt-3);letter-spacing:.05em;margin-top:.35rem;position:relative;z-index:1}

/* lista top interativa */
.top-wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(1.6rem,4vw,3.2rem);align-items:start}
.top-side h2{margin-bottom:.5em}
.top-side p{color:var(--txt-2)}
.top-side .seg{margin:1rem 0 .9rem}
.top-list{list-style:none;margin:0;padding:0;display:grid;gap:.4rem;counter-reset:t}
.tl-row{
  display:grid;grid-template-columns:2.2rem 46px minmax(0,1fr) minmax(70px,.7fr) 2.4rem;
  align-items:center;gap:.8rem;padding:.55rem .85rem;border-radius:14px;
  background:linear-gradient(90deg,rgba(255,255,255,.05),rgba(255,255,255,.015));
  border:1px solid var(--line);transition:transform .25s var(--ease),border-color .25s,background .25s;
}
.tl-row:hover{transform:translateX(5px);border-color:color-mix(in srgb,var(--c1) 45%,transparent);background:linear-gradient(90deg,color-mix(in srgb,var(--c1) 11%,transparent),rgba(255,255,255,.02))}
.tl-pos{font-family:var(--font-display);font-size:1.3rem;font-weight:700;color:var(--txt-3);text-align:center}
.tl-row:nth-child(1) .tl-pos{color:var(--gold)}
.tl-row:nth-child(2) .tl-pos{color:#d8d8e8}
.tl-row:nth-child(3) .tl-pos{color:#cd9b6a}
.tl-art{width:46px}
.tl-name{font-family:var(--font-display);font-size:1.06rem;font-weight:600;text-decoration:none;line-height:1.2}
.tl-name small{display:block;font-family:var(--font-body);font-size:.72rem;color:var(--txt-3);font-weight:400;margin-top:.1rem}
.tl-name:hover{color:var(--gold)}
.tl-bar{height:6px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.tl-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--c1),var(--c2));transition:width .55s var(--ease)}
.tl-val{font-variant-numeric:tabular-nums;font-weight:700;text-align:right;font-size:.92rem}

/* mitologias */
.my-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}
.my-card{
  position:relative;padding:1.6rem 1.3rem 1.3rem;border-radius:var(--r-l);text-decoration:none;overflow:hidden;
  border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.01));
  transition:transform .3s var(--ease),border-color .3s;
}
.my-card::after{
  content:"";position:absolute;left:0;right:0;top:0;height:3px;
  background:linear-gradient(90deg,var(--mc),transparent);
}
.my-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--mc) 50%,transparent)}
.my-n{
  position:absolute;right:1rem;top:1rem;font-family:var(--font-display);font-size:2.6rem;font-weight:700;
  color:color-mix(in srgb,var(--mc) 40%,transparent);line-height:1;
}
.my-card h3{font-size:1.2rem;margin:0 0 .4rem;padding-right:2.5rem}
.my-card p{font-size:.86rem;color:var(--txt-2);margin:0 0 1rem;line-height:1.55}
.my-faces{display:flex;gap:-4px}
.my-faces span{width:38px;margin-right:-10px;filter:drop-shadow(0 4px 10px rgba(0,0,0,.6))}

/* ferramentas */
.tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem}
.tool{
  position:relative;display:flex;flex-direction:column;padding:1.5rem 1.35rem;border-radius:var(--r-l);
  text-decoration:none;border:1px solid var(--line);overflow:hidden;
  background:linear-gradient(170deg,rgba(255,255,255,.05),rgba(255,255,255,.012));
  transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;
}
.tool:hover{transform:translateY(-5px);border-color:rgba(155,77,255,.42);box-shadow:var(--sh-2)}
.tool-big{grid-column:span 2;justify-content:flex-end;min-height:270px}
.tool-big .tool-ic{position:absolute;right:-30px;top:-30px;width:210px;opacity:.5}
.tool-big h3{font-size:1.75rem}
.tool-big p{max-width:46ch}
.tool-ic{width:56px;margin-bottom:.9rem}
.tool h3{margin:0 0 .35rem}
.tool p{font-size:.88rem;color:var(--txt-2);margin:0 0 1rem;line-height:1.55}
.tool-go{margin-top:auto;font-size:.82rem;font-weight:700;color:var(--gold);letter-spacing:.03em}
.tool-go::after{content:" →";transition:.2s}
.tool:hover .tool-go::after{margin-left:.25rem}

/* sobre / fatos */
.about-in{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(1.6rem,4vw,3rem);align-items:center}
.about-in p{color:var(--txt-2)}
.about-btns{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.3rem}
.facts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.facts li{
  padding:1.2rem 1.1rem;border-radius:var(--r-m);border:1px solid var(--line);
  background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.01));
}
.facts b{display:block;font-family:var(--font-display);font-size:2.3rem;line-height:1;color:var(--gold);margin-bottom:.3rem}
.facts span{font-size:.8rem;color:var(--txt-3);line-height:1.45;display:block}

/* --------------------------------------------------------------- cards --- */
.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(262px,1fr));gap:1.05rem}
.ccard{
  position:relative;display:flex;flex-direction:column;border-radius:var(--r-l);overflow:hidden;
  border:1px solid var(--line);background:linear-gradient(175deg,rgba(255,255,255,.055),rgba(255,255,255,.012));
  transition:transform .3s var(--ease),border-color .3s,box-shadow .35s;
}
.ccard::before{
  content:"";position:absolute;inset:0;opacity:0;transition:opacity .4s;pointer-events:none;
  background:radial-gradient(360px 200px at 50% -10%,color-mix(in srgb,var(--c1) 22%,transparent),transparent 70%);
}
.ccard:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--c1) 45%,transparent);box-shadow:var(--sh-2)}
.ccard:hover::before{opacity:1}
.ccard-hit{display:flex;flex-direction:column;padding:1.3rem 1.2rem .4rem;text-decoration:none;position:relative;z-index:1}
.ccard-art{width:104px;margin:0 auto .6rem;transition:transform .45s var(--ease)}
.ccard:hover .ccard-art{transform:scale(1.09) rotate(-3deg)}
.ccard-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.35rem}
.ccard-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center}
.ccard-tipo{font-size:.7rem;color:var(--txt-3);letter-spacing:.06em;text-transform:uppercase}
.ccard-name{font-size:1.28rem;margin:0}
.ccard-sum{display:block;font-size:.85rem;color:var(--txt-2);line-height:1.55;margin:.5rem 0 .3rem;text-align:center}
.ccard-foot{display:flex;align-items:center;justify-content:space-between;padding:.35rem 1.2rem .5rem;position:relative;z-index:1}
.idx{font-size:.72rem;color:var(--txt-3);letter-spacing:.05em;text-transform:uppercase}
.idx b{color:var(--gold);font-size:.9rem;margin-left:.2rem}
.fav-btn{
  width:34px;height:34px;display:grid;place-items:center;border-radius:50%;cursor:pointer;
  border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--txt-3);transition:.2s;
}
.fav-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round}
.fav-btn:hover{color:var(--danger);border-color:rgba(255,107,107,.5);transform:scale(1.1)}
.fav-btn[aria-pressed="true"]{color:var(--danger);border-color:rgba(255,107,107,.55);background:rgba(255,107,107,.13)}
.fav-btn[aria-pressed="true"] svg{fill:currentColor}
.ccard-more{border-top:1px solid var(--line);position:relative;z-index:1}
.ccard-more summary{
  list-style:none;cursor:pointer;padding:.7rem 1.2rem;font-size:.78rem;color:var(--txt-3);
  display:flex;align-items:center;justify-content:space-between;transition:.2s;
}
.ccard-more summary::-webkit-details-marker{display:none}
.ccard-more summary::after{content:"+";font-size:1.05rem;color:var(--gold)}
.ccard-more[open] summary::after{content:"–"}
.ccard-more summary:hover{color:var(--txt)}
.ccard-more-in{padding:0 1.2rem 1.1rem;display:grid;gap:.85rem}
.mini-dl{display:grid;gap:.4rem;margin:0;font-size:.79rem}
.mini-dl div{display:grid;grid-template-columns:5.6rem 1fr;gap:.6rem}
.mini-dl dt{color:var(--txt-3)}
.mini-dl dd{margin:0;color:var(--txt-2)}

/* --------------------------------------------------------- catálogo ------ */
.cat-layout{display:grid;grid-template-columns:262px minmax(0,1fr);gap:1.8rem;padding:1.8rem 0 3.5rem;align-items:start}
.filtros-in{
  position:sticky;top:86px;display:grid;gap:1.1rem;padding:1.2rem;border-radius:var(--r-l);
  border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.012));
  max-height:calc(100vh - 110px);overflow:auto;
}
.f-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.f-top h2{font-size:1.1rem;margin:0}
.f-field label,.f-group legend{
  display:block;font-size:.72rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;
  color:var(--txt-3);margin-bottom:.55rem;padding:0;
}
.f-field input[type=search],.cat-sort select,.cmp-sel select{
  width:100%;padding:.6rem .8rem;border-radius:10px;border:1px solid var(--line-2);
  background:rgba(0,0,0,.35);color:var(--txt);font:inherit;font-size:.88rem;
}
.f-field input:focus,select:focus{outline:0;border-color:rgba(246,196,83,.55);box-shadow:0 0 0 3px rgba(246,196,83,.12)}
.f-group{border:0;padding:0;margin:0;border-top:1px solid var(--line);padding-top:1rem}
.chks{display:flex;flex-wrap:wrap;gap:.35rem}
.chk{position:relative;cursor:pointer}
.chk input{position:absolute;opacity:0;width:0;height:0}
.chk span{
  display:inline-block;font-size:.78rem;padding:.4rem .68rem;border-radius:999px;
  border:1px solid var(--line-2);background:rgba(255,255,255,.03);color:var(--txt-2);transition:.18s;
}
.chk:hover span{color:#fff;border-color:var(--tc,var(--gold))}
.chk input:checked+span{
  background:color-mix(in srgb,var(--tc,var(--gold)) 85%,#000);color:#0e0e16;font-weight:700;border-color:transparent;
}
.chk input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.f-range{margin-bottom:.7rem}
.f-range label{display:flex;justify-content:space-between;font-size:.78rem;color:var(--txt-2);margin-bottom:.3rem}
.f-range output{color:var(--gold);font-weight:700}
input[type=range]{width:100%;accent-color:var(--gold)}

.cat-bar{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}
.cat-count{font-size:.85rem;color:var(--txt-3);margin:0}
.cat-count b{color:var(--gold)}
.cat-sort{margin-left:auto;display:flex;align-items:center;gap:.5rem}
.cat-sort label{font-size:.78rem;color:var(--txt-3);text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.cat-sort select{width:auto;min-width:160px}
.f-toggle{display:none}
.ativos{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}
.ativo{
  display:inline-flex;align-items:center;gap:.4rem;font-size:.76rem;padding:.35rem .4rem .35rem .7rem;
  border-radius:999px;background:rgba(246,196,83,.13);border:1px solid rgba(246,196,83,.35);color:var(--gold);
}
.ativo button{background:rgba(0,0,0,.3);border:0;color:inherit;width:18px;height:18px;border-radius:50%;cursor:pointer;line-height:1;font-size:.8rem}
.vazio{text-align:center;padding:3rem 1rem;color:var(--txt-3)}

/* ------------------------------------------------------------- rankings -- */
.rank-head{border-bottom:0}
.rank-intro{max-width:74ch;color:var(--txt-2)}
.rank-wrap{padding-bottom:2rem}
.rank-bar{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:1rem 0 .8rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:1rem}
.rank-list{list-style:none;margin:0;padding:0;display:grid;gap:.5rem;counter-reset:r}
.rrow{
  border-radius:var(--r-m);border:1px solid var(--line);overflow:hidden;
  background:linear-gradient(90deg,rgba(255,255,255,.045),rgba(255,255,255,.012));
  transition:border-color .25s,transform .25s var(--ease);
}
.rrow:hover{border-color:color-mix(in srgb,var(--c1) 45%,transparent);transform:translateX(4px)}
.rrow.is-top{background:linear-gradient(90deg,color-mix(in srgb,var(--c1) 13%,transparent),rgba(255,255,255,.015))}
.rrow-main{display:grid;grid-template-columns:3rem 56px minmax(0,1fr) minmax(110px,.55fr) 34px;gap:.9rem;align-items:center;padding:.75rem 1rem}
.rrow-pos{
  font-family:var(--font-display);font-size:1.6rem;font-weight:700;text-align:center;color:var(--txt-3);
  font-variant-numeric:tabular-nums;
}
.is-top .rrow-pos{color:var(--gold);text-shadow:0 0 22px rgba(246,196,83,.5)}
.rrow-art{width:56px}
.rrow-id h3{margin:0;font-size:1.16rem}
.rrow-id h3 a{text-decoration:none}
.rrow-id h3 a:hover{color:var(--gold)}
.rrow-id p{margin:.2rem 0 0;font-size:.76rem;color:var(--txt-3);display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
.rrow-score{display:flex;align-items:center;gap:.6rem}
.rrow-bar{flex:1;height:7px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.rrow-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--c1),var(--c2));border-radius:99px;transition:width .5s var(--ease)}
.rrow-score b{font-variant-numeric:tabular-nums;min-width:2ch;text-align:right}
.rrow-more{border-top:1px solid var(--line)}
.rrow-more summary{list-style:none;cursor:pointer;padding:.6rem 1rem;font-size:.79rem;color:var(--txt-3);display:flex;justify-content:space-between}
.rrow-more summary::-webkit-details-marker{display:none}
.rrow-more summary::after{content:"+";color:var(--gold)}
.rrow-more[open] summary::after{content:"–"}
.rrow-more-in{padding:0 1rem 1rem;display:grid;gap:.8rem;max-width:80ch}
.rrow-more-in p{margin:0;font-size:.92rem;color:var(--txt-2)}
.rrow-links{font-size:.82rem!important}
.rrow-links a{color:var(--gold);text-decoration:none}
.rrow-links a:hover{text-decoration:underline}

.rl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:1.1rem}
.rl-card{
  display:grid;gap:1rem;padding:1.4rem;border-radius:var(--r-l);text-decoration:none;
  border:1px solid var(--line);background:linear-gradient(170deg,rgba(255,255,255,.05),rgba(255,255,255,.012));
  transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;
}
.rl-card:hover{transform:translateY(-5px);border-color:rgba(246,196,83,.35);box-shadow:var(--sh-2)}
.rl-podium{display:flex;align-items:flex-end;justify-content:center;gap:.4rem}
.rl-p{display:flex;flex-direction:column;align-items:center;width:30%}
.rl-p em{font-style:normal;font-family:var(--font-display);font-size:.9rem;color:var(--txt-3)}
.rl-p b{font-size:.7rem;font-weight:600;color:var(--txt-3);text-align:center;margin-top:.2rem;line-height:1.2}
.rl-p1{order:2;width:38%}
.rl-p1 em{color:var(--gold);font-size:1.15rem}
.rl-p1 b{color:var(--txt)}
.rl-p2{order:1}
.rl-p3{order:3}
.rl-txt h2{font-size:1.24rem;margin:0 0 .35rem}
.rl-txt p{font-size:.86rem;color:var(--txt-2);margin:0 0 .5rem;line-height:1.55}
.rl-meta{font-size:.73rem;color:var(--txt-3);letter-spacing:.05em}
.next-links{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.next-links a{
  padding:.55rem .95rem;border-radius:999px;border:1px solid var(--line-2);background:rgba(255,255,255,.04);
  text-decoration:none;font-size:.85rem;color:var(--txt-2);transition:.2s;
}
.next-links a:hover{color:var(--gold);border-color:rgba(246,196,83,.45);transform:translateY(-2px)}
.sec-next{border-top:1px solid var(--line)}

/* ------------------------------------------------------------ mitologias -- */
.myth-rows{display:grid;gap:1rem}
.myth-row{
  display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr) auto;gap:1.6rem;align-items:center;
  padding:1.5rem;border-radius:var(--r-l);border:1px solid var(--line);position:relative;overflow:hidden;
  background:linear-gradient(120deg,color-mix(in srgb,var(--mc) 9%,transparent),rgba(255,255,255,.015));
}
.myth-row::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--mc)}
.myth-count{font-family:var(--font-display);font-size:.9rem;color:var(--mc);font-weight:700;letter-spacing:.1em}
.myth-row h2{font-size:1.5rem;margin:.1rem 0 .4rem}
.myth-row h2 a{text-decoration:none}
.myth-row h2 a:hover{color:var(--mc)}
.myth-row p{font-size:.88rem;color:var(--txt-2);margin:0 0 .5rem}
.myth-row-faces{display:grid;grid-template-columns:repeat(3,42px);gap:.3rem}
.myth-row-faces a{display:block;transition:transform .25s var(--ease)}
.myth-row-faces a:hover{transform:scale(1.15)}
.myth-head{position:relative}
.myth-head::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--mc),transparent)}
.myth-intro{max-width:74ch;color:var(--txt-2)}
.myth-tops{list-style:none;padding:0;margin:1.4rem 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.6rem}
.myth-tops li{
  display:flex;align-items:baseline;gap:.5rem;padding:.7rem .9rem;border-radius:12px;
  border:1px solid var(--line);background:rgba(255,255,255,.03);font-size:.85rem;
}
.myth-tops span{font-size:.7rem;text-transform:uppercase;letter-spacing:.09em;color:var(--txt-3)}
.myth-tops a{margin-left:auto;text-decoration:none;font-weight:600}
.myth-tops a:hover{color:var(--mc)}
.myth-tops b{color:var(--mc);font-variant-numeric:tabular-nums}

/* ------------------------------------------------------------- ficha ----- */
.fh{position:relative;overflow:hidden;padding:clamp(2rem,4.6vw,3.6rem) 0 clamp(1.6rem,3vw,2.6rem)}
.fh-bg{position:absolute;inset:0;pointer-events:none}
.fhb1,.fhb2{position:absolute;border-radius:50%;filter:blur(80px)}
.fhb1{width:46vw;height:46vw;right:-6vw;top:-16vw;background:radial-gradient(circle,color-mix(in srgb,var(--c1) 40%,transparent),transparent 65%);opacity:.5}
.fhb2{width:40vw;height:40vw;left:-12vw;bottom:-22vw;background:radial-gradient(circle,color-mix(in srgb,var(--c2) 55%,transparent),transparent 68%);opacity:.5}
.fh-in{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:2rem;align-items:center}
.fh-alt{font-size:.85rem;color:var(--txt-3);margin:-.3em 0 .9em;font-style:italic}
.fh-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin:1.1rem 0}
.fh-acts{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.2rem}
.fh-art{display:grid;place-items:center}
.emblem-xl{width:min(100%,400px);filter:drop-shadow(0 34px 64px rgba(0,0,0,.8));animation:float 10s ease-in-out infinite}

.ficha-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:2.6rem;padding:1.4rem 0 3rem;align-items:start}
.ficha-main{min-width:0}
.fs{padding:1.8rem 0;border-top:1px solid var(--line)}
.fs:first-child{border-top:0;padding-top:.6rem}
.fs h2{font-size:clamp(1.35rem,2.2vw,1.85rem);margin-bottom:.7em;position:relative;padding-left:1rem}
.fs h2::before{content:"";position:absolute;left:0;top:.18em;bottom:.18em;width:3px;border-radius:2px;background:linear-gradient(180deg,var(--c1),var(--c2))}
.fs p{color:var(--txt-2);max-width:74ch}
.fs > p strong{color:#fff}
.habs{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.8rem}
.hab{
  padding:1.05rem 1.1rem;border-radius:var(--r-m);border:1px solid var(--line);
  background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.012));
  transition:border-color .25s,transform .25s var(--ease);
}
.hab:hover{border-color:color-mix(in srgb,var(--c1) 45%,transparent);transform:translateY(-3px)}
.hab h3{font-size:1.02rem;margin:0 0 .3rem;color:var(--c1)}
.hab p{font-size:.86rem;margin:0;color:var(--txt-2)}
.hists{display:grid;gap:1rem}
.hist{
  padding:1.3rem 1.4rem;border-radius:var(--r-l);border:1px solid var(--line);position:relative;
  background:linear-gradient(150deg,rgba(255,255,255,.05),rgba(255,255,255,.012));
}
.hist h3{font-size:1.2rem;margin:0 0 .45rem}
.hist p{margin:0;font-size:.95rem}
.curios{list-style:none;padding:0;display:grid;gap:.6rem;max-width:74ch}
.curios li{
  position:relative;padding:.85rem 1rem .85rem 2.6rem;border-radius:var(--r-m);font-size:.92rem;color:var(--txt-2);
  border:1px solid var(--line);background:rgba(255,255,255,.028);
}
.curios li::before{
  content:"✦";position:absolute;left:1rem;top:.85rem;color:var(--c1);font-size:.9rem;
}
.pos-chips{display:flex;flex-wrap:wrap;gap:.55rem;margin:1.1rem 0}
.pos-chip{
  display:flex;flex-direction:column;padding:.7rem 1rem;border-radius:14px;text-decoration:none;min-width:120px;
  border:1px solid var(--line-2);background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015));
  transition:.22s;
}
.pos-chip:hover{border-color:var(--gold);transform:translateY(-3px)}
.pos-chip b{font-family:var(--font-display);font-size:1.4rem;color:var(--gold);line-height:1}
.pos-chip span{font-size:.82rem;margin-top:.12rem}
.pos-chip small{font-size:.68rem;color:var(--txt-3)}
.fontes{list-style:none;padding:0;display:grid;gap:.45rem;max-width:74ch}
.fontes li{
  font-size:.88rem;color:var(--txt-2);padding-left:1.4rem;position:relative;
}
.fontes li::before{content:"—";position:absolute;left:0;color:var(--txt-3)}

.ficha-side{display:grid;gap:1rem;position:sticky;top:86px}
.side-box{
  padding:1.2rem 1.15rem;border-radius:var(--r-l);border:1px solid var(--line);
  background:linear-gradient(170deg,rgba(255,255,255,.05),rgba(255,255,255,.012));
}
.side-box h2{font-size:.76rem;text-transform:uppercase;letter-spacing:.13em;color:var(--txt-3);font-family:var(--font-body);font-weight:700;margin-bottom:.9rem}
.side-idx{margin:.9rem 0 .3rem;font-size:.82rem;color:var(--txt-3);text-transform:uppercase;letter-spacing:.08em}
.side-idx b{font-family:var(--font-display);font-size:1.5rem;color:var(--gold);margin-left:.3rem}
.side-dl{display:grid;gap:.55rem;margin:0;font-size:.84rem}
.side-dl div{display:grid;grid-template-columns:7.4rem 1fr;gap:.6rem}
.side-dl dt{color:var(--txt-3)}
.side-dl dd{margin:0;color:var(--txt-2)}
.side-dl a{color:var(--c1);text-decoration:none}
.side-dl a:hover{text-decoration:underline}
.side-toc ol{margin:0;padding-left:1.1rem;display:grid;gap:.3rem;font-size:.85rem}
.side-toc a{color:var(--txt-2);text-decoration:none}
.side-toc a:hover{color:var(--gold)}
.sec-rel{border-top:1px solid var(--line)}
.pn-nav{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.6rem}
.pn{
  flex:1;min-width:200px;padding:1rem 1.2rem;border-radius:var(--r-m);text-decoration:none;
  border:1px solid var(--line);background:rgba(255,255,255,.03);transition:.25s;
}
.pn:hover{border-color:var(--gold);transform:translateY(-3px)}
.pn span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--txt-3)}
.pn b{font-family:var(--font-display);font-size:1.1rem;font-weight:600}
.pn-next{text-align:right}

/* ----------------------------------------------------------- comparador -- */
.cmp-wrap{padding:1.6rem 0 3rem}
.cmp-pick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:.8rem;align-items:end;margin-bottom:1.6rem}
.cmp-sel label{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;color:var(--txt-3);font-weight:700;margin-bottom:.4rem}
.cmp-sel small{text-transform:none;letter-spacing:0;font-weight:400}
.cmp-out{display:grid;gap:1rem}
.cmp-head{display:grid;gap:1rem}
.cmp-cards{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.cmp-card{
  position:relative;padding:1.3rem 1.2rem;border-radius:var(--r-l);text-align:center;
  border:1px solid var(--line);background:linear-gradient(175deg,color-mix(in srgb,var(--c1) 10%,transparent),rgba(255,255,255,.012));
}
.cmp-card .emblem{width:110px;margin:0 auto .7rem}
.cmp-card h3{font-size:1.35rem;margin:0 0 .2rem}
.cmp-card h3 a{text-decoration:none}
.cmp-card p{font-size:.8rem;color:var(--txt-3);margin:0 0 .8rem}
.cmp-rm{position:absolute;top:.6rem;right:.6rem;width:26px;height:26px;border-radius:50%;border:1px solid var(--line);background:rgba(0,0,0,.4);color:var(--txt-3);cursor:pointer;line-height:1}
.cmp-rm:hover{color:var(--danger);border-color:var(--danger)}
.cmp-table{width:100%;border-collapse:collapse;font-size:.88rem;border:1px solid var(--line);border-radius:var(--r-m);overflow:hidden}
.cmp-table th,.cmp-table td{padding:.75rem .9rem;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.cmp-table thead th{background:rgba(255,255,255,.05);font-size:.74rem;text-transform:uppercase;letter-spacing:.09em;color:var(--txt-3)}
.cmp-table tbody th{color:var(--txt-3);font-weight:500;width:9.5rem}
.cmp-table td{color:var(--txt-2)}
.cmp-table .win{color:var(--gold);font-weight:700}
.cmp-bar{display:flex;align-items:center;gap:.5rem}
.cmp-bar span{flex:1;height:6px;border-radius:99px;background:rgba(255,255,255,.09);overflow:hidden}
.cmp-bar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--c1),var(--c2))}
.cmp-note{padding:1.1rem 1.2rem;border-radius:var(--r-m);border:1px dashed var(--line-2);background:rgba(255,255,255,.025);font-size:.9rem;color:var(--txt-2)}

/* ----------------------------------------------------------------- quiz -- */
.quiz-wrap{padding:1.8rem 0 3rem;max-width:860px}
.quiz{
  padding:clamp(1.3rem,3vw,2.2rem);border-radius:var(--r-xl);border:1px solid var(--line);
  background:linear-gradient(170deg,rgba(255,255,255,.055),rgba(255,255,255,.012));box-shadow:var(--sh-2);
}
.quiz-top{display:flex;align-items:center;gap:1rem;margin-bottom:1.4rem}
.quiz-step{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;color:var(--txt-3);margin:0;white-space:nowrap;font-weight:700}
.quiz-prog{flex:1;height:5px;border-radius:99px;background:rgba(255,255,255,.08);overflow:hidden}
.quiz-prog i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--gold),var(--violet));transition:width .4s var(--ease)}
.quiz h2{font-size:clamp(1.3rem,2.6vw,1.85rem);margin-bottom:1.2rem}
.quiz-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.7rem}
.qopt{
  text-align:left;padding:1.05rem 1.1rem;border-radius:var(--r-m);cursor:pointer;font:inherit;color:var(--txt);
  border:1px solid var(--line-2);background:rgba(255,255,255,.035);transition:.22s var(--ease);
}
.qopt:hover{border-color:var(--gold);background:rgba(246,196,83,.1);transform:translateY(-3px)}
.qopt b{display:block;font-family:var(--font-display);font-size:1.1rem;margin-bottom:.15rem}
.qopt span{font-size:.82rem;color:var(--txt-3);line-height:1.45}
.quiz-nav{display:flex;gap:.6rem;margin-top:1.3rem}
.quiz-out{display:grid;gap:1rem;animation:pop .35s var(--ease)}
.quiz-win{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.4rem;align-items:center;padding:1.6rem;
  border-radius:var(--r-xl);border:1px solid color-mix(in srgb,var(--c1) 45%,transparent);
  background:linear-gradient(140deg,color-mix(in srgb,var(--c1) 16%,transparent),rgba(255,255,255,.015));
}
.quiz-win .emblem{width:clamp(120px,22vw,180px)}
.quiz-win h2{margin:.1rem 0 .3rem}
.quiz-why{font-size:.88rem;color:var(--txt-2)}
.quiz-match{font-family:var(--font-display);font-size:1.1rem;color:var(--gold)}

/* ------------------------------------------------------------ favoritos -- */
.fav-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.4rem 0 1rem}
.fav-acts{display:flex;gap:.5rem;flex-wrap:wrap}
#fav-lista:empty{display:none}
#fav-lista{padding-bottom:2rem}

/* ------------------------------------------------------- páginas de texto -- */
.prosa{max-width:74ch}
.prosa h2{font-size:clamp(1.3rem,2.3vw,1.8rem);margin:2rem 0 .7rem}
.prosa h3{font-size:1.1rem;margin:1.5rem 0 .4rem;color:var(--gold)}
.prosa p,.prosa li{color:var(--txt-2)}
.prosa a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.prosa-ul{display:grid;gap:.55rem;padding-left:1.15rem}
.contato-mail{font-family:var(--font-display);font-size:1.4rem}
.tbl{width:100%;border-collapse:collapse;font-size:.9rem;margin:1rem 0 1.6rem;border:1px solid var(--line)}
.tbl th,.tbl td{padding:.7rem .85rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.tbl thead th{background:rgba(255,255,255,.05);font-size:.74rem;text-transform:uppercase;letter-spacing:.09em;color:var(--txt-3)}
.tbl td{color:var(--txt-2)}
.tbl a{color:var(--gold);text-decoration:none}
.fontes-lista{list-style:none;padding:0;display:grid;gap:.7rem}
.fontes-lista li{padding:.8rem 1rem;border-radius:var(--r-m);border:1px solid var(--line);background:rgba(255,255,255,.025)}
.fnt{display:block;font-size:.92rem;color:var(--txt)}
.fnt-uso{display:block;font-size:.78rem;color:var(--txt-3);margin-top:.2rem}
.fnt-uso a{color:var(--txt-3);text-decoration:none}
.fnt-uso a:hover{color:var(--gold)}
.az-list{list-style:none;padding:0;columns:4;column-gap:1.5rem;font-size:.92rem}
.az-list li{break-inside:avoid;margin-bottom:.35rem}
.az-list a{color:var(--txt-2);text-decoration:none}
.az-list a:hover{color:var(--gold)}

/* --------------------------------------------------------------- rodapé -- */
.site-foot{border-top:1px solid var(--line);margin-top:2rem;background:linear-gradient(180deg,transparent,rgba(155,77,255,.06))}
.foot-in{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(4,minmax(0,1fr));gap:2rem;padding:3rem 0 2rem}
.foot-brand p{font-size:.86rem;color:var(--txt-3);margin:.9rem 0 0;line-height:1.6;max-width:42ch}
.foot-brand strong{color:var(--gold)}
.foot-col h2{font-size:.74rem;text-transform:uppercase;letter-spacing:.13em;color:var(--txt);font-family:var(--font-body);font-weight:700;margin-bottom:.8rem}
.foot-col ul{list-style:none;padding:0;margin:0;display:grid;gap:.45rem}
.foot-col a{font-size:.87rem;color:var(--txt-3);text-decoration:none;transition:.18s}
.foot-col a:hover{color:var(--gold)}
.foot-end{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.2rem 0 2rem;border-top:1px solid var(--line)}
.foot-end p{margin:0;font-size:.8rem;color:var(--txt-3)}

/* ---------------------------------------------------------------- toast -- */
.toast{
  position:fixed;left:50%;bottom:1.6rem;transform:translate(-50%,140%);z-index:70;
  padding:.8rem 1.3rem;border-radius:999px;background:rgba(14,14,24,.95);border:1px solid var(--line-2);
  box-shadow:var(--sh-3);font-size:.88rem;transition:transform .35s var(--ease);pointer-events:none;
}
.toast.is-on{transform:translate(-50%,0)}
.toast b{color:var(--gold)}

/* ----------------------------------------------------------- responsivo -- */
@media (max-width:1080px){
  .foot-in{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ficha-grid{grid-template-columns:minmax(0,1fr)}
  .ficha-side{position:static;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
  .myth-row{grid-template-columns:minmax(0,1fr) minmax(0,.8fr);}
  .myth-row-faces{grid-column:1/-1;grid-template-columns:repeat(6,42px)}
  .tool-big{grid-column:span 1;min-height:auto}
  .tool-big .tool-ic{position:static;width:56px;opacity:1}
  .tool-big h3{font-size:1.35rem}
}
@media (max-width:920px){
  .main-nav{display:none}
  .menu-btn{display:grid}
  .mob-nav{display:none}
  .mob-nav[data-open]{display:flex}
  .hero-in{grid-template-columns:1fr}
  .hero-art{order:-1;min-height:auto;aspect-ratio:auto;padding:1rem 0 2.2rem}
  .hero-main{width:min(62%,300px)}
  .orb-5,.orb-6{display:none}
  .orb{width:58px}
  .orb-2,.orb-3{width:50px}
  .top-wrap{grid-template-columns:1fr}
  .about-in{grid-template-columns:1fr}
  .fh-in{grid-template-columns:1fr}
  .fh-art{order:-1}
  .emblem-xl{width:min(72%,280px)}
  .cat-layout{grid-template-columns:1fr}
  .filtros{position:fixed;inset:0;z-index:50;background:rgba(5,5,12,.86);backdrop-filter:blur(8px);padding:1rem;display:none;overflow:auto}
  .filtros[data-open]{display:block}
  .filtros-in{position:static;max-height:none;margin-top:3.4rem}
  .f-toggle{display:inline-flex}
  .cmp-pick{grid-template-columns:1fr 1fr}
  .az-list{columns:2}
}
@media (max-width:640px){
  body{font-size:16px}
  .wrap{width:min(100% - 1.8rem,var(--wrap))}
  .grid-cards{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.8rem}
  .ccard-art{width:80px}
  .ccard-name{font-size:1.08rem}
  .ccard-sum{font-size:.79rem}
  .tl-row{grid-template-columns:1.7rem 38px minmax(0,1fr) 2.2rem;gap:.55rem;padding:.5rem .6rem}
  .tl-bar{display:none}
  .tl-art{width:38px}
  .rrow-main{grid-template-columns:2.2rem 42px minmax(0,1fr) 34px;gap:.6rem;padding:.65rem .7rem}
  .rrow-art{width:42px}
  .rrow-score{grid-column:1/-1;padding-left:2.8rem}
  .facts{grid-template-columns:1fr 1fr}
  .facts b{font-size:1.8rem}
  .foot-in{grid-template-columns:1fr;gap:1.6rem;padding:2.2rem 0 1.4rem}
  .cmp-pick{grid-template-columns:1fr}
  .quiz-win{grid-template-columns:1fr;text-align:center;justify-items:center}
  .myth-row{grid-template-columns:1fr}
  .myth-row-faces{grid-template-columns:repeat(6,36px)}
  .az-list{columns:1}
  .cmp-table{display:block;overflow-x:auto;white-space:nowrap}
  .rk-grid,.rl-grid{grid-template-columns:1fr}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

@media print{
  .site-head,.site-foot,.crumbs,.fh-bg,.hero-bg,.ficha-side,.sec-rel,.toast{display:none!important}
  body{background:#fff;color:#000}
  .fs{page-break-inside:avoid}
}
