@import "https://api.fontshare.com/v2/css?f[]=cabinet-grotesk@800,700,500,400&f[]=satoshi@400,500,700&display=swap";
:root{--red:#dc281d;--orange:#ffa100;--yellow:#fdd800;--paper:#fdfbf8;--ink:#0a0a0a}
*{box-sizing:border-box}
body{background:var(--ink);color:var(--paper);margin:0;font-family:Satoshi,Arial,sans-serif}
button,input,a{-webkit-tap-highlight-color:transparent}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
button:disabled{opacity:.6;cursor:wait}
svg{width:23px;height:23px}
header{border-bottom:1px solid #ffffff20;justify-content:space-between;align-items:center;max-width:1200px;margin:auto;padding:28px 42px;display:flex}
header img{width:114px;height:auto}
header>span{letter-spacing:2px;color:#aaa;font-size:10px}
.share{color:#eee;background:0 0;border:1px solid #444;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}
.layout{grid-template-columns:1fr .92fr;gap:70px;max-width:1120px;margin:55px auto 60px;padding:0 32px;display:grid}
.eyebrow{letter-spacing:2px;font-size:10px;font-weight:700}
.dot{background:var(--orange);border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}
.portrait{background:#909092;border-radius:5px 85px 5px 5px;height:275px;margin-top:23px;position:relative;overflow:hidden}
.portrait>img{object-fit:cover;object-position:center 27%;width:100%;height:100%}
.portrait.initials{background:linear-gradient(135deg,#1c1c1c,#2a2a2a);display:grid;place-items:center}
.portrait.initials>b{margin:0 110px 30px 0;font-family:Cabinet Grotesk,Arial,sans-serif;font-weight:800;font-size:120px;letter-spacing:-6px;background:linear-gradient(90deg,var(--red),var(--orange),var(--yellow));-webkit-background-clip:text;background-clip:text;color:#0000}
.stamp{background:var(--yellow);color:var(--ink);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;width:103px;height:103px;padding:15px;font-size:16px;line-height:1.1;display:flex;position:absolute;bottom:20px;right:18px;transform:rotate(-7deg)}
.name{margin-top:27px}
.name>span{letter-spacing:2px;color:#aaa;font-size:10px}
h1,h2{letter-spacing:-2px;margin:5px 0;font-family:Cabinet Grotesk,Arial,sans-serif;font-weight:800;line-height:1}
h1{font-size:59px}
em{background:linear-gradient(90deg,var(--red),var(--orange),var(--yellow));color:#0000;-webkit-background-clip:text;background-clip:text;font-style:normal}
.name p{color:#c9c5c1;margin:9px 0;font-size:14px}
.intro{color:#aaa;max-width:370px;font-size:16px;line-height:1.6}
.actions{gap:10px;margin:23px 0;display:grid}
.primary{background:linear-gradient(105deg,var(--red),#ef5f0d,var(--orange));color:#fff;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:20px;width:100%;min-height:55px;padding:17px 21px;font-size:14px;font-weight:700;transition:filter .2s;display:flex}
.primary:hover{filter:brightness(1.12)}
.secondary{color:inherit;background:0 0;border:1px solid #444;border-radius:7px;justify-content:center;align-items:center;gap:10px;width:100%;padding:13px 20px;font-size:13px;display:flex}
.links{grid-template-columns:repeat(5,1fr);gap:8px;padding-top:10px;display:grid}
.links a{color:#ddd;border:1px solid #292929;border-radius:6px;flex-direction:column;align-items:center;gap:9px;padding:14px 0;display:flex}
.links a:hover{border-color:var(--orange);color:var(--orange)}
.links span{font-size:10px}
.fb{font-size:26px;line-height:23px}
.contactline{color:#aaa;text-align:center;margin-top:18px;font-size:11px}
.formpanel{background:var(--paper);color:var(--ink);border-radius:12px;align-self:center;padding:39px 34px}
.formpanel>.eyebrow{color:#766d65}
h2{margin:18px 0;font-size:44px;line-height:1.05}
.formpanel>p{color:#6b6560;margin-bottom:24px;font-size:14px;line-height:1.7}
label{margin-bottom:16px;font-size:12px;font-weight:700;display:block}
input:not([type=checkbox]){width:100%;font:inherit;color:#111;background:#fff;border:1px solid #d8d2ca;border-radius:6px;margin-top:8px;padding:14px 13px;font-size:16px;display:block}
input:focus{outline:2px solid var(--orange);outline-offset:2px}
.consent{color:#6b6560;align-items:flex-start;gap:8px;font-size:10px;font-weight:400;line-height:1.6;display:flex}
.consent input{accent-color:var(--red);margin-top:2px}
.honeypot{display:none}
.status{margin:12px 0 0;font-size:12px;line-height:1.6}
.formfoot{letter-spacing:1px;border-top:1px solid #ddd;justify-content:space-between;margin-top:30px;padding-top:23px;font-size:8px;display:flex}
.formfoot a:last-child{letter-spacing:-1px;font-size:20px;font-weight:800}
footer{color:#aaa;border-top:1px solid #ffffff20;justify-content:space-between;max-width:1120px;margin:auto;padding:25px 32px 35px;font-size:11px;display:flex}
footer button{color:var(--orange);background:0 0;border:0;font-size:11px}

/* Compartir: QR grande para escanear en persona */
.overlay{z-index:20;background:#000d;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}
.overlay[hidden]{display:none}
.qrbox{background:var(--paper);color:#111;text-align:center;border-radius:15px;width:min(380px,100%);max-height:100%;overflow:auto;padding:28px 26px 22px;position:relative}
.qrbox h2{font-size:36px;margin:6px 0 4px}
.qrbox>p{font-size:13px;color:#6b6560;margin:0 0 14px}
.qrbox .qr{background:#fff;border-radius:10px;padding:10px;margin:0 auto 10px;max-width:280px}
.qrbox .qr svg{width:100%;height:auto;display:block}
.qrbox .url{font-size:14px;font-weight:700;letter-spacing:.2px;margin-bottom:16px;word-break:break-all}
.qrbox .grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.qrbox .secondary{border-color:#ddd;color:#111;padding:12px 10px;font-size:12px}
.close{background:0 0;border:0;font-size:28px;line-height:1;position:absolute;top:10px;right:14px;color:#111}

.toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(20px);background:#fff;color:#111;font-size:13px;font-weight:700;padding:12px 18px;border-radius:30px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:30}
.toast.on{opacity:1;transform:translateX(-50%)}

:focus-visible{outline:2px solid var(--orange);outline-offset:4px}
@media (max-width:760px){
  header{padding:22px}
  header>span{display:none}
  .layout{max-width:510px;margin:30px auto;padding:0 22px;display:block}
  .portrait{height:285px}
  h1{font-size:53px}
  .formpanel{margin-top:38px;padding:29px 23px}
  h2{font-size:39px}
  footer{align-items:center;gap:20px;margin:35px 22px 0;padding:22px 0;font-size:10px}
  .contactline{font-size:10px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto;transition:none!important}}

/* Índice del equipo */
.team{max-width:640px;margin:50px auto;padding:0 22px}
.team h1{font-size:48px;margin-bottom:28px}
.team a{display:flex;justify-content:space-between;align-items:center;border:1px solid #292929;border-radius:8px;padding:18px 20px;margin-bottom:10px}
.team a:hover{border-color:var(--orange);color:var(--orange)}
.team small{color:#aaa;display:block;margin-top:4px;font-size:12px}
