
:root{
  --mist:#f2f3f9;
  --ink:#21110c;
  --ink-2:#676767;
  --pink:#e6399b;
  --pink-ink:#b8226f;
  --violet:#673dd9;
  --blue:#3a5f8a;
  --mint:#3dd984;
  --leaf:#57a258;
  --peri-50:#e5eaf4;
  --peri-100:#cfd8ec;
  --peri-300:#a0aee9;
  --peri-600:#5b6cb0;
  --blush:#fef7f9;
  --white:#fff;
  --danger:#c62828;

  --grad-action:linear-gradient(90deg,var(--violet) 0%,var(--pink) 100%);
  --shadow-card:0 8px 32px rgba(166,181,214,.28);
  --shadow-soft:0 4px 14px rgba(81,42,129,.14);

  --r-card:18px;
  --r-pill:72px;

  --serif:"Fraunces",Georgia,"Times New Roman",serif;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --hand:"Caveat",cursive;

  --wrap:1180px;
  --gutter:16px;
}

*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--mist);color:var(--ink);
  font-family:var(--sans);font-size:16px;line-height:1.45;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img,svg{max-width:100%}
h1,h2,h3,p{margin:0}
a{color:inherit}
button,input,select{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--violet);outline-offset:3px;border-radius:8px}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}

.tag{font:600 11px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--pink-ink)}

.site-header{padding:16px 0 0;position:relative;z-index:5}
.site-header .wrap{
  display:grid;grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:"logo nav" "acr acr";align-items:center;column-gap:10px;row-gap:6px;
}
.brand{display:contents}
.wordmark{grid-area:logo}
.acronym{grid-area:acr}
.site-nav{grid-area:nav;justify-self:end}
.acronym{
  display:flex;flex-wrap:nowrap;white-space:nowrap;gap:0 .3em;
  font:500 12px/1.3 var(--sans);color:var(--ink-2);letter-spacing:.01em;
}
.acronym b{font:800 15px/1 var(--sans);color:var(--pink)}
.wordmark{
  display:inline-flex;align-items:flex-start;text-decoration:none;color:var(--pink);
  font:700 30px/1 var(--sans);letter-spacing:-.04em;
}
.wordmark sup{font-size:11px;letter-spacing:0;margin:3px 0 0 2px;color:var(--blue);font-weight:700}
.site-nav{display:flex;align-items:center;gap:2px;min-width:0}
.site-nav a{
  display:none;white-space:nowrap;text-decoration:none;color:var(--ink);
  font:500 14px/1 var(--sans);padding:10px 12px;border-radius:var(--r-pill);
}
.site-nav a:hover{background:var(--white)}
.lang-pill select{
  appearance:none;-webkit-appearance:none;border:0;cursor:pointer;
  background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2321110c' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right .7rem center/10px;
  font:500 13px/1.5 var(--sans);padding:7px 1.8rem 7px .9rem;border-radius:var(--r-pill);
  box-shadow:var(--shadow-card);max-width:56vw;text-overflow:ellipsis;
}

.notice-top{
  display:flex;gap:10px;align-items:flex-start;margin:16px 0 0;
  padding:12px 16px;border-radius:14px;
  position:relative;z-index:6;
  background:var(--blush);box-shadow:inset 0 0 0 1.5px rgba(230,57,155,.35);
  font:400 14px/1.45 var(--sans);color:var(--ink);
}
.notice-top b{color:var(--pink-ink);font-weight:800}
.notice-top svg{flex:none;width:20px;height:20px;color:var(--pink);margin-top:0}
.hero-kicker{display:block;margin-bottom:12px}

.hero{padding:18px 0 28px;position:relative;overflow-x:clip}
.hero-grid{display:grid;gap:22px;grid-template-areas:"top" "login" "feat" "online"}
.hero-top{grid-area:top}
.hero-feat{grid-area:feat}
.hero-login{grid-area:login;position:relative;isolation:isolate}
.hero-online{grid-area:online}

.hero h1{
  font:600 clamp(32px,8.4vw,72px)/1.06 var(--serif);
  letter-spacing:-.01em;text-wrap:balance;max-width:13ch;
}
.hero h1 em{font-style:italic;color:var(--pink)}
.lede{margin-top:16px;font:400 clamp(16px,1.5vw,19px)/1.45 var(--sans);color:var(--ink);max-width:34rem}

.features{list-style:none;margin:0;padding:0;display:grid;gap:10px;max-width:34rem}
.features li{
  display:flex;align-items:flex-start;gap:12px;background:var(--white);
  border-radius:14px;padding:12px 14px;box-shadow:var(--shadow-card);
  font:400 14px/1.4 var(--sans);color:var(--ink-2);
}
.features li b{color:var(--ink);font-weight:700}
.features .ico{
  flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;
  background:var(--blush);color:var(--pink);
}
.features .ico svg{width:18px;height:18px}

.live-pill{
  display:flex;align-items:center;justify-content:center;gap:10px;
  background:var(--white);border-radius:var(--r-pill);box-shadow:var(--shadow-card);
  padding:12px 18px;font:500 14px/1.35 var(--sans);color:var(--ink-2);
}
.live-pill #onlineCount{
  font:800 18px/1 var(--sans);font-variant-numeric:tabular-nums;
  background:var(--grad-action);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.dot{
  flex:none;width:9px;height:9px;border-radius:50%;display:inline-block;
  background:radial-gradient(circle,var(--mint) 0 2.5px,var(--leaf) 3px);
  animation:ping 2.4s ease-out infinite;
}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(61,217,132,.55)}70%,100%{box-shadow:0 0 0 8px rgba(61,217,132,0)}}

.orbit{
  position:absolute;z-index:-1;left:50%;top:50%;
  width:min(150%,640px);aspect-ratio:1;transform:translate(-50%,-50%);
  pointer-events:none;
}
.orbit .blob,.orbit .ring{position:absolute;border-radius:50%}
.orbit .blob{inset:0;opacity:.55;background:radial-gradient(circle closest-side,var(--peri-300) 0%,var(--peri-300) 45%,rgba(160,174,233,0) 100%)}
.orbit .ring{border:1.5px dashed rgba(91,108,176,.22)}
.orbit .r1{inset:8%}
.orbit .r2{inset:20%;border-style:solid;border-color:rgba(255,255,255,.7)}
.orbit .spin{position:absolute;inset:8%;animation:girar 60s linear infinite}
.orbit .planet{
  position:absolute;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;
  display:grid;place-items:center;background:var(--white);box-shadow:var(--shadow-soft);
  animation:girar 60s linear infinite reverse;
}
.orbit .planet svg{width:22px;height:22px}
.orbit .p1{left:50%;top:0;color:var(--pink)}
.orbit .p2{left:100%;top:50%;color:var(--violet)}
.orbit .p3{left:50%;top:100%;color:var(--leaf)}
.orbit .p4{left:0;top:50%;color:var(--peri-600)}
.orbit .p5{left:85.4%;top:14.6%;color:#f0a20b;width:36px;height:36px;margin:-18px 0 0 -18px}
.orbit .p6{left:14.6%;top:85.4%;color:var(--pink);width:36px;height:36px;margin:-18px 0 0 -18px}
.orbit .p5 svg,.orbit .p6 svg{width:17px;height:17px}
@keyframes girar{to{transform:rotate(360deg)}}
.orbit .p2,.orbit .p4{display:none}

.card{background:var(--white);border-radius:var(--r-card);box-shadow:var(--shadow-card)}
.login-card{padding:24px 20px;max-width:460px;margin:0 auto;position:relative}
.login-card h2{font:600 24px/1.25 var(--serif);text-align:center}
.login-card h2 b{color:var(--pink);font-weight:700}
.login-card .hand{display:block;text-align:center;margin-top:2px}
.hand{font:600 24px/1.1 var(--hand);color:var(--pink-ink);transform:rotate(-3deg)}

.error-msg{
  margin:16px 0 0;padding:12px 14px;border-radius:12px;
  background:#fff1f4;border:1px solid #f6c3d2;color:var(--danger);
  font:500 14px/1.4 var(--sans);text-align:center;
}
.error-msg a{color:var(--danger);font-weight:700}

.login-form{margin-top:18px}
.field{
  position:relative;display:flex;align-items:center;gap:10px;
  min-height:54px;padding:0 18px;margin-bottom:12px;
  background:var(--mist);border-radius:var(--r-pill);
  box-shadow:inset 0 0 0 1.5px transparent;transition:box-shadow .15s,background .15s;
}
.field:focus-within{background:var(--white);box-shadow:inset 0 0 0 1.5px var(--violet),0 0 0 4px rgba(103,61,217,.12)}
.field > svg{flex:none;width:20px;height:20px;color:var(--peri-600)}
.field input{flex:1;min-width:0;height:54px;border:0;background:transparent;outline:none;font:400 16px/22px var(--sans);color:var(--ink)}
.field input::placeholder{color:var(--ink-2);opacity:1}
.toggle-pass{
  flex:none;border:0;background:none;cursor:pointer;padding:6px;margin-right:-8px;
  color:var(--peri-600);border-radius:50%;display:grid;place-items:center;
}
.toggle-pass svg{width:20px;height:20px}
.toggle-pass:hover{color:var(--violet)}

.remember{
  display:flex;align-items:center;gap:10px;margin:4px 4px 18px;cursor:pointer;
  font:400 14px/1.35 var(--sans);color:var(--ink-2);
}
.remember input{width:20px;height:20px;accent-color:var(--pink);flex:none;margin:0}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  width:100%;min-height:54px;padding:0 28px;border:0;border-radius:var(--r-pill);
  background:var(--grad-action);color:var(--white);cursor:pointer;text-decoration:none;
  font:700 16px/1 var(--sans);box-shadow:0 4px 14px rgba(103,61,217,.22);
  transition:transform .15s,box-shadow .15s;
}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(103,61,217,.32)}
.btn:active{transform:none}
.btn svg{width:18px;height:18px}
.btn-ghost{
  background:var(--white);color:var(--violet);
  box-shadow:inset 0 0 0 1.5px var(--peri-100);
}
.btn-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--violet),0 6px 18px rgba(103,61,217,.14)}

.forgot{display:block;text-align:center;margin-top:14px;font:600 14px/1.3 var(--sans);color:var(--blue);text-decoration:none}
.forgot:hover{text-decoration:underline;text-underline-offset:4px}

.divider{display:flex;align-items:center;gap:12px;margin:20px 0 14px;font:500 12px/1 var(--sans);color:var(--ink-2);text-transform:uppercase;letter-spacing:.1em}
.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--peri-50)}
.join-line{text-align:center;font:500 14px/1.3 var(--sans);color:var(--ink-2);margin-bottom:12px}

.h1-sm{font-size:clamp(30px,7vw,56px)!important}
.login-card--wide{max-width:620px}

.steps .ico{font:800 15px/1 var(--sans);color:var(--white);background:var(--grad-action)}
.features a{color:var(--blue);font-weight:600}

.info-box{
  display:flex;gap:10px;align-items:flex-start;margin:16px 0 0;padding:12px 14px;
  border-radius:14px;background:var(--mist);font:400 13px/1.5 var(--sans);color:var(--ink);
}
.info-box svg{flex:none;width:18px;height:18px;color:var(--violet);margin-top:1px}
.info-box b{color:var(--pink-ink)}

.form-section{
  margin:22px 0 10px;font:600 11px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;
  color:var(--peri-600);display:flex;align-items:center;gap:10px;
}
.form-section::after{content:"";flex:1;height:1px;background:var(--peri-50)}
.form-grid{display:grid;grid-template-columns:minmax(0,1fr);column-gap:12px}
.field-label{display:block;margin:0 0 6px 16px;font:600 13px/1.3 var(--sans);color:var(--ink-2)}
.field select{
  flex:1;min-width:0;height:54px;border:0;background:transparent;outline:none;cursor:pointer;
  appearance:none;-webkit-appearance:none;padding-right:22px;font:400 16px/22px var(--sans);color:var(--ink);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%235b6cb0' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 2px center/10px;
}
.field input[type=date]{min-height:54px}
.field-hint{margin:-4px 16px 10px;font:400 12px/1.4 var(--sans);color:var(--ink-2)}
.field-hint.is-ok{color:#2e7d32;font-weight:600}
.field-hint.is-erro{color:var(--danger)}

.turnstile-group{display:flex;justify-content:center;margin:8px 0 14px;min-height:65px}
.terms{align-items:flex-start;font-size:13px}
.terms input{margin-top:1px}
.terms a{color:var(--blue);font-weight:600}

.success-msg{
  display:flex;gap:12px;align-items:flex-start;margin:18px 0 4px;padding:16px;border-radius:14px;
  background:#eefaf3;box-shadow:inset 0 0 0 1.5px rgba(87,162,88,.35);
}
.success-msg svg{flex:none;width:24px;height:24px;color:var(--leaf)}
.success-msg strong{display:block;font:700 15px/1.3 var(--sans);color:#2a6b2a}
.success-msg p{margin-top:4px;font:400 14px/1.5 var(--sans);color:var(--ink)}

@media (max-width:379px){
  .login-card{padding:22px 14px}
}


.art-band{padding:18px 0 0}
.art-band .banner{
  position:relative;overflow:hidden;color:var(--white);border-radius:var(--r-card);
  display:grid;grid-template-columns:minmax(0,1fr);gap:22px;padding:28px 22px;
  background:
    radial-gradient(circle at 85% 20%,rgba(230,57,155,.45) 0,rgba(230,57,155,0) 45%),
    radial-gradient(circle at 10% 110%,rgba(160,174,233,.35) 0,rgba(160,174,233,0) 50%),
    linear-gradient(120deg,#2a0a4a 0%,#45207a 55%,#673dd9 100%);
  box-shadow:0 20px 60px rgba(103,61,217,.22);
}
.art-band .banner::after{
  content:"";position:absolute;right:-70px;bottom:-110px;width:280px;height:280px;border-radius:50%;
  border:42px solid rgba(255,255,255,.06);pointer-events:none;
}
.art-band .lead,.art-band .side{position:relative;z-index:1;min-width:0}
.art-band .badge{
  display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;border-radius:var(--r-pill);
  background:rgba(255,255,255,.12);font:500 13px/1.2 var(--sans);margin:0 0 18px;
}
.art-band .badge svg{flex:none;width:22px;height:22px;fill:#ff8cc6;filter:drop-shadow(0 0 6px rgba(255,94,168,.55));transform-origin:50% 55%;animation:batida 1.1s ease-in-out infinite}
@keyframes batida{0%,40%,100%{transform:scale(1)}12%{transform:scale(1.22)}24%{transform:scale(1.02)}32%{transform:scale(1.14)}}
.art-band h2{font:600 clamp(28px,4.6vw,46px)/1.08 var(--serif);margin:0 0 12px;max-width:16ch;text-wrap:balance}
.art-band .sub{font:400 clamp(15px,1.2vw,17px)/1.5 var(--sans);color:rgba(255,255,255,.84);max-width:36rem}
.art-band .side{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.art-band .stat{display:inline-flex;align-items:center;gap:12px;padding:10px 18px 10px 14px;border-radius:var(--r-pill);background:rgba(255,255,255,.12);white-space:nowrap}
.art-band .stat svg{width:22px;height:22px;flex:none;color:#ffb8d8}
.art-band .stat b{display:block;font:800 22px/1.05 var(--sans);font-variant-numeric:tabular-nums}
.art-band .stat small{display:block;margin-top:4px;font:500 11px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.art-band .note{font:italic 600 18px/1.3 var(--serif);color:#ffb8d8;max-width:18rem}
.art-band .btn{width:auto;background:var(--grad-action);box-shadow:0 6px 20px rgba(0,0,0,.2)}
@media (max-width:599px){
  .art-band .banner{padding:22px 18px;gap:16px}
  .art-band .badge{margin-bottom:12px}
  .art-band .note{display:none}
  .art-band .side{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px}
  .art-band .btn{min-height:48px;padding:0 20px;font-size:15px}
}

.article{padding:26px 0 8px}
.article .col{max-width:780px;margin:0 auto}
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 14px}
.crumbs a{font:500 13px/1 var(--sans);color:var(--ink-2);text-decoration:none}
.crumbs a:hover{color:var(--pink-ink)}
.crumbs .sep{color:var(--peri-300)}
.crumbs .cat{
  font:600 11px/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);
  background:var(--white);box-shadow:inset 0 0 0 1px rgba(33,17,12,.12);padding:7px 12px;border-radius:var(--r-pill);
}
.article h1{
  font:600 clamp(32px,6.2vw,62px)/1.05 var(--serif);letter-spacing:-.02em;margin:0 0 26px;text-wrap:balance;
}
.article h1 em{font-style:italic;color:var(--pink)}
.article h1::after{
  content:"";display:block;width:min(260px,62%);aspect-ratio:13/1;margin-top:14px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 260 20'%3E%3Cpath d='M3 13c40-9 82-12 124-8s86 6 130-3' fill='none' stroke='%23e6399b' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat left center/contain;
}
.article .cover{margin:0 0 26px;border-radius:var(--r-card);overflow:hidden;background:#000;box-shadow:var(--shadow-card)}
.article .cover.video{aspect-ratio:16/9}
.article .cover iframe{display:block;width:100%;height:100%;border:0}

.panel{position:relative;background:var(--white);border-radius:var(--r-card);box-shadow:var(--shadow-card);padding:30px 20px}
.panel::before{
  content:"";position:absolute;top:-11px;left:50%;width:108px;height:24px;transform:translateX(-50%) rotate(-3deg);
  border-radius:3px;background:rgba(230,57,155,.22);box-shadow:0 1px 2px rgba(33,17,12,.06);
}
.body p{font:400 16px/1.65 var(--sans);margin:0 0 16px}
.body > p:first-child{font-size:18px;line-height:1.6;color:var(--ink)}
.body h2{font:600 clamp(22px,2.6vw,28px)/1.2 var(--serif);margin:34px 0 12px;text-wrap:balance}
.body h2:first-child{margin-top:0}
.body h2 a{color:inherit;text-decoration:none}
.body h2 a:hover{color:var(--pink-ink)}
.body a{color:var(--pink-ink);font-weight:600;text-underline-offset:3px}
.body ul,.body ol{margin:0 0 18px;padding-left:1.3em}
.body li{font:400 16px/1.6 var(--sans);margin:0 0 .6em}
.body li::marker{color:var(--pink)}
.body b,.body strong{font-weight:700}
.body blockquote{margin:0 0 26px;padding:4px 0 4px 20px;border-left:3px solid var(--pink)}
.body blockquote p{margin:0;font:italic 600 clamp(19px,2vw,23px)/1.4 var(--serif);color:var(--ink)}
.body > :last-child{margin-bottom:0}

.callout{
  display:flex;gap:12px;align-items:flex-start;margin:0 0 20px;padding:16px 18px;border-radius:14px;
  background:var(--mist);font:400 15px/1.55 var(--sans);color:var(--ink);
}
.callout > svg{flex:none;width:22px;height:22px;color:var(--pink);margin-top:1px}
.callout > div > :last-child{margin-bottom:0}
.callout p{font:inherit;margin:0 0 8px}
.callout.verde{background:#eefaf3}
.callout.verde > svg{color:var(--leaf)}
.callout.roxo{background:#f1edfc}
.callout.roxo > svg{color:var(--violet)}
.email-pill{
  display:inline-flex;align-items:center;gap:10px;margin:4px 0 20px;padding:14px 22px;border-radius:var(--r-pill);
  background:var(--grad-action);color:var(--white)!important;text-decoration:none;font:700 16px/1 var(--sans)!important;
  box-shadow:0 6px 18px rgba(103,61,217,.25);word-break:break-all;
}
.email-pill svg{flex:none;width:20px;height:20px}

.sign{display:inline-block;margin:30px 0 0;font:600 clamp(26px,3vw,34px)/1 var(--hand);color:var(--pink-ink);transform:rotate(-4deg)}
.art-cta{margin-top:28px;padding-top:22px;border-top:1px solid var(--peri-50);display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.art-cta .btn{width:auto}
.art-cta p{margin:0;color:var(--ink-2);font:400 15px/1.5 var(--sans);flex:1 1 16rem}
.related{margin-top:22px}
.related h3{font:600 11px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--peri-600);margin:0 0 10px}
.related ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.related a{
  display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:var(--r-pill);
  background:var(--white);box-shadow:inset 0 0 0 1.5px var(--peri-100);color:var(--violet);
  text-decoration:none;font:600 14px/1 var(--sans);
}
.related a:hover{box-shadow:inset 0 0 0 1.5px var(--violet)}
.backlink-topo{margin:0 0 14px}
.backlink-topo a{
  display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:var(--r-pill);
  background:var(--white);box-shadow:var(--shadow-card);color:var(--pink-ink);text-decoration:none;
  font:600 14px/1 var(--sans);
}
.backlink-topo a:hover{text-decoration:underline;text-underline-offset:4px}

.hub-cards{display:grid;gap:14px;grid-template-columns:1fr;margin-top:22px}
.hub-cards .feature-card{background:var(--mist);box-shadow:none;color:var(--ink);font-weight:400}
.hub-cards .feature-card:hover{background:var(--white);box-shadow:var(--shadow-card)}
.hub-cards .feature-card .ico{background:var(--grad-action)}
.hub-cards .feature-card:nth-child(3n+2) .ico{background:linear-gradient(135deg,var(--peri-300),var(--peri-600))}
.hub-cards .feature-card:nth-child(3n) .ico{background:linear-gradient(90deg,var(--mint),var(--leaf))}
.hub-cards .feature-card p{margin:8px 0 0;font-size:14px!important;line-height:1.5}

.section{padding:28px 0}
.section-head{text-align:center;margin-bottom:22px}
.section-head h2{font:600 clamp(26px,4.4vw,44px)/1.1 var(--serif);margin-top:8px;text-wrap:balance}
.cards{display:grid;gap:14px;grid-template-columns:1fr}
.feature-card{
  display:flex;flex-direction:column;padding:22px 20px;text-decoration:none;color:inherit;
  transition:transform .15s,box-shadow .15s;
}
.feature-card:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(166,181,214,.42)}
.feature-card .ico{
  width:48px;height:48px;border-radius:14px;display:grid;place-items:center;margin-bottom:14px;
  color:var(--white);background:var(--grad-action);box-shadow:var(--shadow-soft);
}
.feature-card:nth-child(2) .ico{background:linear-gradient(135deg,var(--peri-300),var(--peri-600))}
.feature-card:nth-child(3) .ico{background:linear-gradient(90deg,var(--mint),var(--leaf))}
.feature-card:nth-child(4) .ico{background:linear-gradient(135deg,#ffb36b,var(--pink))}
.feature-card .ico svg{width:24px;height:24px}
.feature-card h3{font:600 20px/1.25 var(--serif)}
.feature-card p{margin-top:8px;font:400 14px/1.5 var(--sans);color:var(--ink-2);flex:1}
.feature-card .go{margin-top:14px;font:600 14px/1 var(--sans);color:var(--pink-ink)}
.feature-card:hover .go{text-decoration:underline;text-underline-offset:4px}

.cta{
  position:relative;overflow:hidden;border-radius:var(--r-card);padding:30px 22px;
  background:linear-gradient(135deg,#3b1f8f 0%,var(--violet) 45%,var(--pink) 100%);
  color:var(--white);display:grid;gap:14px;
}
.cta::after{
  content:"";position:absolute;right:-90px;top:-90px;width:260px;height:260px;border-radius:50%;
  border:40px solid rgba(255,255,255,.08);
}
.cta h2{font:600 clamp(26px,4.2vw,40px)/1.1 var(--serif);max-width:16ch}
.cta p{font:400 16px/1.5 var(--sans);color:rgba(255,255,255,.88);max-width:36rem}
.cta .hand{color:#ffc4e1;font-size:30px}
.cta .btn{background:var(--white);color:var(--violet);width:auto;justify-self:start;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.cta .btn:hover{box-shadow:0 10px 26px rgba(0,0,0,.24)}

.site-footer{padding:26px 0 34px;text-align:center}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 6px}
.footer-links a{
  text-decoration:none;color:var(--ink);font:500 13px/1 var(--sans);
  padding:8px 10px;border-radius:var(--r-pill);
}
.footer-links a:hover{background:var(--white)}
.copy{margin-top:12px;font:400 12px/1.4 var(--sans);color:var(--ink-2)}
.site-footer .idioma-selector-footer{color:var(--ink-2)}
.site-footer .idioma-selector-footer a{color:var(--blue);text-decoration:none}

.cookie-banner{
  display:none;position:fixed;left:12px;right:12px;bottom:12px;z-index:4000;
  background:var(--white);border-radius:var(--r-card);box-shadow:0 10px 40px rgba(33,17,12,.18);
  padding:16px;gap:14px;flex-wrap:wrap;align-items:center;justify-content:center;
}
.cookie-banner.show{display:flex}
.cookie-banner-text{flex:1 1 380px;max-width:720px;font:400 13px/1.5 var(--sans);color:var(--ink)}
.cookie-banner-text a{color:var(--blue);font-weight:700}
.cookie-banner-actions{display:flex;gap:8px;flex-wrap:wrap;width:100%}
.cookie-banner-actions button,.pp-box .btn-small{
  flex:1 1 auto;font:600 13px/1 var(--sans);padding:12px 16px;border-radius:var(--r-pill);cursor:pointer;
  border:0;background:var(--mist);color:var(--ink);
}
.cookie-banner-actions button:hover{background:var(--peri-50)}
.cookie-banner-actions .btn-cookie-aceitar,.pp-box .btn-small{background:var(--grad-action);color:var(--white)}

.pp-overlay{display:none;position:fixed;inset:0;background:rgba(33,17,12,.55);z-index:4100;align-items:center;justify-content:center;padding:16px}
.pp-overlay.show{display:flex}
.pp-box{background:var(--white);border-radius:var(--r-card);padding:22px;width:100%;max-width:440px;max-height:90vh;overflow-y:auto;position:relative}
.pp-box h3{margin:0 0 6px;font:600 20px/1.25 var(--serif)}
.pp-box .pp-desc{margin:0 0 8px;font:400 13px/1.45 var(--sans);color:var(--ink-2)}
.pp-close{position:absolute;top:10px;right:12px;background:none;border:none;font-size:26px;color:var(--ink-2);cursor:pointer;line-height:1;padding:4px}
.consent-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--peri-50)}
.consent-row:last-of-type{border-bottom:none}
.consent-row-info strong{display:block;font:600 14px/1.3 var(--sans)}
.consent-row-info span{font:400 12px/1.4 var(--sans);color:var(--ink-2)}
.consent-switch{position:relative;display:inline-block;width:42px;height:24px;flex-shrink:0}
.consent-switch input{opacity:0;width:0;height:0}
.consent-switch .slider{position:absolute;inset:0;background:var(--peri-100);border-radius:24px;cursor:pointer;transition:.2s}
.consent-switch .slider:before{content:"";position:absolute;height:18px;width:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}
.consent-switch input:checked + .slider{background:var(--pink)}
.consent-switch input:checked + .slider:before{transform:translateX(18px)}
.consent-switch input:disabled + .slider{opacity:.6;cursor:not-allowed}
.pp-box .form-actions-center{display:flex;justify-content:flex-end;margin-top:16px}
.pp-box .btn-small{flex:0 1 auto}

@media (min-width:600px){
  :root{--gutter:28px}
  .site-nav a{display:inline-block}
  .site-header .wrap{grid-template-areas:"logo nav" "acr nav"}
  .login-card{padding:32px 30px}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .panel{padding:44px 48px}
  .body p,.body li{font-size:17px}
  .body > p:first-child{font-size:19px}
  .hub-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .form-grid .span-2{grid-column:1 / -1}
  .orbit .p2,.orbit .p4{display:grid}
  .cookie-banner{left:50%;right:auto;transform:translateX(-50%);width:min(960px,calc(100% - 32px))}
  .cookie-banner-actions{width:auto}
  .cookie-banner-actions button{flex:0 1 auto}
  .cta{padding:40px 36px}
}

@media (min-width:960px){
  :root{--gutter:40px}
  .site-header{padding-top:22px}
  .wordmark{font-size:36px}
  .acronym{font-size:13px}
  .acronym b{font-size:17px}
  .notice-top{align-items:center;justify-content:center;text-align:center;padding:12px 20px}
  .hero{padding:34px 0 48px}
  .hero-grid{
    grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);
    grid-template-areas:"top login" "feat login" "online login";
    grid-template-rows:auto auto 1fr;
    column-gap:56px;row-gap:22px;align-items:start;
  }
  .hero-login{align-self:center}
  .hero-grid--form{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
  .hero-grid--form .hero-login{align-self:start}
  .live-pill{justify-content:flex-start;width:fit-content}
  .orbit{width:min(138%,620px)}
  .section{padding:44px 0}
  .cards{grid-template-columns:repeat(4,minmax(0,1fr))}
  .cta{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:40px;padding:48px 52px}
  .cta .hand{grid-column:2;grid-row:1;justify-self:end;font-size:40px}
  .cta .btn{grid-column:2;grid-row:2 / span 2;justify-self:end}
  .cta h2,.cta p{grid-column:1}
  .art-band .banner{grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);align-items:center;gap:32px;padding:44px 52px}
  .panel{padding:56px 64px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
