:root{
  --red:#e50925;
  --red-dark:#9d0016;
  --blue:#0b2e69;
  --blue-2:#071a3f;
  --white:#f5f7fb;
  --muted:#aeb8ce;
  --black:#04070d;
  --panel:rgba(9,15,28,.82);
  --panel-2:rgba(255,255,255,.06);
  --stroke:rgba(255,255,255,.14);
  --shadow:0 24px 70px rgba(0,0,0,.42);
  --radius:26px;
  --max:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;
  background:radial-gradient(circle at 15% 12%,rgba(12,46,105,.55),transparent 36%),linear-gradient(135deg,#03060d 0%,#07142f 48%,#02040a 100%);
  color:var(--white);
  line-height:1.6;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{font:inherit;color:inherit;cursor:pointer}
.container{width:min(var(--max),calc(100% - 34px));margin-inline:auto}
.section{position:relative;padding:105px 0}
.noise-layer{position:fixed;inset:0;pointer-events:none;opacity:.22;z-index:0;background-image:linear-gradient(transparent,rgba(255,255,255,.018));mix-blend-mode:screen}
.loader{position:fixed;inset:0;background:#03060d;z-index:999;display:grid;place-items:center;gap:16px;transition:.55s ease;align-content:center}
.loader img{width:92px;border-radius:24px;filter:drop-shadow(0 18px 32px rgba(229,9,37,.36))}
.loader span{letter-spacing:.18em;text-transform:uppercase;font-size:.72rem;color:var(--muted)}
.loader.hide{opacity:0;visibility:hidden}
.site-header{position:fixed;top:16px;left:50%;transform:translateX(-50%);width:min(1180px,calc(100% - 28px));height:76px;padding:10px 14px 10px 18px;border:1px solid var(--stroke);background:rgba(3,7,15,.72);backdrop-filter:blur(18px);border-radius:24px;z-index:100;display:flex;align-items:center;justify-content:space-between;box-shadow:0 18px 55px rgba(0,0,0,.32);transition:.35s ease}
.site-header.scrolled{height:68px;top:10px;background:rgba(3,7,15,.88)}
.brand{height:48px;display:flex;align-items:center;min-width:0}
.brand img{height:44px;width:min(320px,46vw);object-fit:contain;object-position:left center;filter:drop-shadow(0 8px 18px rgba(0,0,0,.4))}
.main-nav{display:flex;align-items:center;gap:6px}
.main-nav a{font-size:.88rem;color:#dce5f7;padding:10px 13px;border-radius:999px;transition:.25s ease}
.main-nav a:hover,.main-nav a.active{background:linear-gradient(135deg,rgba(229,9,37,.95),rgba(11,46,105,.92));color:#fff;box-shadow:0 10px 25px rgba(229,9,37,.18)}
.nav-toggle{display:none;background:transparent;border:0;width:46px;height:46px;border-radius:14px;place-items:center;gap:5px;flex-direction:column}
.nav-toggle span{display:block;width:23px;height:2px;background:#fff;border-radius:6px;transition:.25s ease}
.nav-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-open .nav-toggle span:nth-child(2){opacity:0}
.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.hero{min-height:100svh;display:grid;align-items:center;padding-top:145px;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,4,10,.94),rgba(4,7,14,.78),rgba(2,4,10,.9)),url('../img/profile/hero-alfonso.webp') center/cover;filter:saturate(1.05);opacity:.62;transform:scale(1.03)}
.hero:after{content:"";position:absolute;inset:auto -10% -24% -10%;height:42%;background:linear-gradient(0deg,var(--black),transparent);z-index:1}
.orb{position:absolute;width:360px;height:360px;border-radius:50%;filter:blur(20px);opacity:.22;animation:float 8s ease-in-out infinite;z-index:1}
.orb-red{background:var(--red);top:18%;right:5%}.orb-blue{background:#135bce;bottom:8%;left:4%;animation-delay:-2s}
@keyframes float{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-28px,0)}}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .72fr;gap:56px;align-items:center}
.eyebrow,.section-kicker{display:inline-flex;align-items:center;gap:10px;color:#c8d4ec;letter-spacing:.15em;text-transform:uppercase;font-size:.76rem;font-weight:800;margin-bottom:18px}
.eyebrow i{width:36px;height:2px;background:linear-gradient(90deg,var(--red),#fff,var(--blue));display:block;border-radius:10px}
h1{font-size:clamp(3.15rem,7vw,7.5rem);line-height:.88;letter-spacing:-.07em;font-weight:950;text-transform:uppercase;text-shadow:0 18px 35px rgba(0,0,0,.45)}
h1 span{background:linear-gradient(90deg,#fff 0%,#fff 30%,var(--red) 31%,#ff3c50 54%,#fff 56%,#fff 66%,#153e86 67%,#2a62c6 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-lead{max-width:690px;margin:26px 0 28px;color:#d7deec;font-size:clamp(1.02rem,2vw,1.24rem)}
.hero-actions,.doc-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:13px 20px;border-radius:16px;font-weight:900;transition:.3s ease;border:1px solid transparent;position:relative;overflow:hidden}
.btn:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent,rgba(255,255,255,.24),transparent);transform:translateX(-130%);transition:.5s ease}
.btn:hover:before{transform:translateX(130%)}
.btn.primary{background:linear-gradient(135deg,var(--red),var(--red-dark));box-shadow:0 18px 36px rgba(229,9,37,.28)}
.btn.ghost{background:rgba(255,255,255,.07);border-color:var(--stroke);backdrop-filter:blur(10px)}
.btn:hover{transform:translateY(-3px)}
.mini-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:32px;max-width:560px}
.mini-stats article{padding:18px;border:1px solid var(--stroke);border-radius:20px;background:rgba(255,255,255,.06);backdrop-filter:blur(12px)}
.mini-stats strong{font-size:2rem;display:block;line-height:1;color:#fff}.mini-stats span{font-size:.82rem;color:var(--muted)}
.hero-card{position:relative;border:1px solid var(--stroke);border-radius:34px;padding:18px;background:linear-gradient(160deg,rgba(255,255,255,.14),rgba(255,255,255,.035));box-shadow:var(--shadow);isolation:isolate;transform-style:preserve-3d;transition:.45s ease}
.hero-card:hover{transform:translateY(-8px) rotateX(2deg) rotateY(-2deg)}
.hero-card:before{content:"";position:absolute;inset:-1px;border-radius:34px;background:linear-gradient(145deg,var(--red),#fff,var(--blue));opacity:.2;z-index:-1;filter:blur(16px)}
.shield-frame{border-radius:28px;overflow:hidden;background:#05080f;aspect-ratio:1/1;border:1px solid rgba(255,255,255,.16);display:grid;place-items:center}
.profile-photo{width:76%;border-radius:50%;filter:drop-shadow(0 24px 38px rgba(0,0,0,.55))}
.hero-card-info{margin-top:14px;border-radius:22px;background:rgba(0,0,0,.38);border:1px solid var(--stroke);padding:14px;display:flex;gap:12px;align-items:center}
.hero-card-info img{width:54px;border-radius:15px}.hero-card-info strong{display:block;font-size:.94rem}.hero-card-info span{display:block;color:var(--muted);font-size:.82rem}
.scroll-cue{position:absolute;left:50%;bottom:30px;width:30px;height:50px;border:1px solid rgba(255,255,255,.4);border-radius:999px;z-index:5;transform:translateX(-50%);display:grid;justify-content:center;padding-top:9px}.scroll-cue span{width:5px;height:10px;background:#fff;border-radius:10px;animation:scrollCue 1.4s infinite}@keyframes scrollCue{0%{transform:translateY(0);opacity:1}100%{transform:translateY(18px);opacity:0}}
.section-heading h2,.section-title h2,.doc-panel h2,.contact-copy h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1.02;letter-spacing:-.05em}.section-title{margin-bottom:40px}.section-title.centered{text-align:center;max-width:820px;margin-inline:auto}.section-title p,.profile-copy p,.doc-panel p,.contact-copy p{color:#cad4e8;font-size:1.02rem}.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;align-items:start}.profile-section{background:linear-gradient(180deg,#04070d,#07142f)}.profile-copy{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius);padding:34px;box-shadow:var(--shadow)}.profile-copy p+p{margin-top:14px}.skill-cloud{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.skill-cloud span{padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1);font-size:.86rem;color:#eef3ff}
.experience-section{background:radial-gradient(circle at top right,rgba(229,9,37,.13),transparent 34%),#04070d}.timeline{position:relative;display:grid;gap:18px;margin-top:12px}.timeline:before{content:"";position:absolute;left:20px;top:10px;bottom:10px;width:2px;background:linear-gradient(var(--red),#fff,var(--blue));opacity:.5}.timeline-item{position:relative;display:grid;grid-template-columns:42px 1fr;gap:16px}.time-dot{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--red),var(--blue));border:4px solid #07142f;box-shadow:0 0 0 6px rgba(255,255,255,.06);position:relative;z-index:2}.job-card{border:1px solid var(--stroke);background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.035));border-radius:24px;padding:24px;box-shadow:0 18px 45px rgba(0,0,0,.24);transition:.3s ease;overflow:hidden;position:relative}.job-card:after{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--red),#fff,var(--blue));opacity:.8}.job-card:hover{transform:translateY(-5px);border-color:rgba(255,255,255,.28)}.job-top{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.job-top span{font-weight:950;color:#fff;letter-spacing:.06em}.job-top small{color:#c2cee5;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);padding:7px 10px;border-radius:999px}.job-card h3{font-size:1.35rem;margin-bottom:8px}.job-card p{color:#cbd6eb}.evidence-btn,.cert-card button{margin-top:16px;border:0;border-radius:13px;padding:10px 14px;background:linear-gradient(135deg,rgba(229,9,37,.95),rgba(11,46,105,.96));font-weight:900;box-shadow:0 12px 28px rgba(0,0,0,.22);transition:.25s}.evidence-btn:hover,.cert-card button:hover{transform:translateY(-2px)}
.certificates-section{background:linear-gradient(180deg,#07142f,#03060d)}.cert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.cert-card{display:flex;flex-direction:column;border:1px solid var(--stroke);background:rgba(255,255,255,.065);border-radius:24px;overflow:hidden;box-shadow:0 16px 42px rgba(0,0,0,.26);transition:.35s ease}.cert-card:hover{transform:translateY(-8px);border-color:rgba(255,255,255,.27)}.cert-card img{width:100%;height:190px;object-fit:cover;background:#09101f}.cert-card div{padding:19px}.cert-card span{font-size:.75rem;letter-spacing:.16em;color:#ff6070;font-weight:950}.cert-card h3{font-size:1.02rem;margin:4px 0 8px;line-height:1.25}.cert-card p{font-size:.9rem;color:#c4cee2}.cert-card button{font-size:.84rem}
.documents-section{background:radial-gradient(circle at 18% 30%,rgba(18,76,169,.24),transparent 32%),#04070d}.docs-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:stretch}.doc-panel,.qr-card{border:1px solid var(--stroke);background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(255,255,255,.04));border-radius:var(--radius);padding:34px;box-shadow:var(--shadow)}.doc-panel p{margin:16px 0 24px}.qr-card{display:grid;place-items:center;text-align:center}.qr-card img{width:min(280px,80%);border-radius:24px;border:10px solid rgba(255,255,255,.08);box-shadow:0 20px 40px rgba(0,0,0,.28)}.qr-card strong{display:block;margin-top:16px;font-size:1.15rem}.qr-card span{color:var(--muted)}
.contact-section{background:linear-gradient(180deg,#03060d,#07142f)}.contact-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:34px;align-items:center}.contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contact-card{min-height:110px;border:1px solid var(--stroke);border-radius:22px;background:rgba(255,255,255,.07);display:flex;align-items:center;gap:14px;padding:18px;transition:.3s ease}.contact-card:hover{transform:translateY(-5px);background:rgba(255,255,255,.1)}.contact-card span{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,var(--red),var(--blue));font-weight:950}.contact-card p{color:#cbd5e9;font-size:.94rem;word-break:break-word}.footer{border-top:1px solid var(--stroke);background:#02040a;padding:40px 0}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center}.footer img{width:min(360px,80vw)}.footer p,.footer small{color:var(--muted)}.footer nav{display:flex;gap:14px;flex-wrap:wrap;justify-content:flex-end}.footer a{color:#dce5f7}.footer a:hover{color:#fff}.footer small{grid-column:1/-1;text-align:center;border-top:1px solid rgba(255,255,255,.08);padding-top:18px}.whatsapp-float{position:fixed;right:18px;bottom:18px;width:58px;height:58px;border-radius:50%;background:linear-gradient(135deg,#19c267,#0d843f);display:grid;place-items:center;color:#fff;font-weight:950;font-size:1.55rem;z-index:90;box-shadow:0 18px 36px rgba(0,0,0,.34);transition:.25s}.whatsapp-float:hover{transform:translateY(-5px) scale(1.04)}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.86);z-index:800;display:grid;place-items:center;padding:22px;opacity:0;visibility:hidden;transition:.3s ease}.lightbox.show{opacity:1;visibility:visible}.lightbox figure{width:min(940px,100%);max-height:92vh;background:#05070d;border:1px solid var(--stroke);border-radius:24px;padding:14px;box-shadow:var(--shadow);display:grid;gap:12px}.lightbox img{width:100%;max-height:78vh;object-fit:contain;border-radius:16px;background:#101622}.lightbox figcaption{text-align:center;color:#e5ecfb;font-weight:800}.lightbox-close{position:absolute;top:18px;right:18px;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);font-size:2rem;line-height:1}.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.show{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.13s}
@media (max-width:920px){
  .site-header{height:70px;border-radius:20px}.brand img{height:38px;width:min(250px,60vw)}.nav-toggle{display:flex}.main-nav{position:absolute;top:calc(100% + 10px);left:0;right:0;padding:12px;border-radius:20px;background:rgba(3,7,15,.96);border:1px solid var(--stroke);display:grid;gap:4px;transform-origin:top;transform:scaleY(.92);opacity:0;pointer-events:none;transition:.25s}.nav-open .main-nav{opacity:1;pointer-events:auto;transform:scaleY(1)}.main-nav a{padding:13px 15px}.hero{padding-top:120px}.hero-grid,.two-col,.docs-grid,.contact-grid{grid-template-columns:1fr;gap:28px}.hero-card{max-width:440px;margin-inline:auto}.cert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-cards{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;text-align:center}.footer nav{justify-content:center}.timeline:before{left:15px}.timeline-item{grid-template-columns:32px 1fr}.time-dot{width:32px;height:32px}.section{padding:82px 0}.mini-stats{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:560px){
  .container{width:min(100% - 24px,var(--max))}.site-header{top:10px;width:calc(100% - 18px);padding:10px}.brand img{width:218px;height:36px}.hero{min-height:auto;padding-bottom:92px}.hero-content{text-align:left}h1{font-size:3.25rem}.hero-lead{font-size:1rem}.hero-actions,.doc-actions{display:grid}.btn{width:100%}.mini-stats{gap:8px}.mini-stats article{padding:13px 9px;text-align:center}.mini-stats strong{font-size:1.5rem}.mini-stats span{font-size:.72rem}.profile-copy,.doc-panel,.qr-card{padding:22px}.cert-grid{grid-template-columns:1fr}.cert-card{display:grid;grid-template-columns:112px 1fr;align-items:stretch}.cert-card img{height:100%;min-height:150px}.cert-card div{padding:15px}.cert-card h3{font-size:.95rem}.cert-card p{font-size:.82rem}.job-card{padding:19px}.job-top small{font-size:.72rem}.contact-card{min-height:96px}.whatsapp-float{width:52px;height:52px}.scroll-cue{display:none}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Ajustes finales: QR correcto y footer móvil */
.qr-card .qr-link{display:inline-block;line-height:0;border-radius:26px}
.qr-card .qr-link:focus-visible{outline:3px solid rgba(255,255,255,.62);outline-offset:6px}
@media (max-width:920px){
  .footer-grid>div{display:grid;justify-items:center}
  .footer img{width:min(285px,70vw);margin:0 auto 8px;object-fit:contain;object-position:center}
  .footer p{max-width:520px;margin-inline:auto}
}
@media (max-width:560px){
  .footer{padding:34px 0}
  .footer img{width:min(255px,68vw);margin:0 auto 8px}
  .footer p{font-size:.92rem;line-height:1.55}
  .footer nav{gap:12px}
}


/* Ajuste solicitado: footer móvil más pequeño/centrado y QR premium */
.qr-card{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:
    radial-gradient(circle at 22% 18%,rgba(229,9,37,.20),transparent 34%),
    radial-gradient(circle at 78% 82%,rgba(11,46,105,.35),transparent 38%),
    linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035));
}
.qr-card::before{
  content:"";
  position:absolute;
  inset:14px;
  border-radius:calc(var(--radius) - 8px);
  border:1px solid rgba(255,255,255,.08);
  pointer-events:none;
}
.qr-card::after{
  content:"";
  position:absolute;
  inset:-35%;
  z-index:-1;
  background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.10) 50%,transparent 58%);
  animation:qrShine 5.6s ease-in-out infinite;
}
@keyframes qrShine{0%,45%{transform:translateX(-45%) rotate(0deg)}100%{transform:translateX(45%) rotate(0deg)}}
.qr-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
  padding:8px 14px;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(229,9,37,.95),rgba(11,46,105,.95));
  color:#fff;
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
  box-shadow:0 12px 28px rgba(0,0,0,.25);
}
.qr-card .qr-link{
  display:inline-grid;
  place-items:center;
  width:min(330px,88%);
  padding:12px;
  border-radius:34px;
  background:linear-gradient(135deg,rgba(229,9,37,.80),rgba(255,255,255,.22),rgba(11,46,105,.88));
  box-shadow:0 26px 58px rgba(0,0,0,.36),0 0 0 1px rgba(255,255,255,.10) inset;
  line-height:0;
  transition:.3s ease;
}
.qr-card .qr-link:hover{transform:translateY(-5px) scale(1.015)}
.qr-card .qr-link img{
  width:100%;
  max-width:306px;
  border-radius:28px;
  border:0;
  box-shadow:none;
  background:transparent;
}
.qr-copy strong{
  display:block;
  margin-top:20px;
  font-size:1.2rem;
  letter-spacing:.01em;
}
.qr-copy span{
  display:block;
  max-width:360px;
  margin:7px auto 0;
  color:var(--muted);
  line-height:1.45;
}
.footer-brand{display:grid;align-items:center;gap:10px}
.footer .footer-logo{width:min(360px,80vw);height:auto;object-fit:contain;object-position:center}
@media (max-width:920px){
  .footer-grid{grid-template-columns:1fr;text-align:center;justify-items:center}
  .footer-brand{justify-items:center;width:100%}
  .footer .footer-logo{width:min(230px,56vw)!important;margin:0 auto 8px!important;display:block!important}
  .footer p{max-width:520px;margin-inline:auto}
  .footer nav{justify-content:center;width:100%}
}
@media (max-width:560px){
  .qr-card .qr-link{width:min(286px,86%);padding:10px;border-radius:30px}
  .qr-card .qr-link img{max-width:266px;border-radius:24px}
  .qr-badge{margin-bottom:15px;font-size:.68rem}
  .qr-copy strong{font-size:1.08rem;margin-top:17px}
  .qr-copy span{font-size:.94rem}
  .footer{padding:34px 0}
  .footer .footer-logo{width:min(198px,52vw)!important;margin:0 auto 8px!important}
  .footer p{font-size:.9rem;line-height:1.55;max-width:300px}
  .footer nav{gap:12px}
}
@media (max-width:380px){
  .footer .footer-logo{width:min(184px,50vw)!important}
}
.qr-card .qr-badge{color:#fff}

/* Hero profesional estilo premium solicitado */
.hero-premium{
  min-height:100svh;
  padding-top:142px;
  padding-bottom:86px;
  display:grid;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  background:#020712;
}
.hero-premium .hero-bg{
  position:absolute;
  inset:0;
  opacity:1;
  transform:none;
  filter:none;
  background:
    linear-gradient(115deg,rgba(255,255,255,.045) 0 1px,transparent 1px 28%),
    radial-gradient(circle at 18% 24%,rgba(229,9,37,.18),transparent 33%),
    radial-gradient(circle at 82% 70%,rgba(13,75,171,.26),transparent 38%),
    linear-gradient(135deg,rgba(5,13,30,.98),rgba(2,5,12,.94) 48%,rgba(2,9,23,.98));
}
.hero-premium .hero-bg::before,
.hero-premium .hero-bg::after{
  content:"";
  position:absolute;
  pointer-events:none;
}
.hero-premium .hero-bg::before{
  inset:0;
  background:
    linear-gradient(135deg,transparent 0 56%,rgba(255,255,255,.045) 56.2%,transparent 57.3%),
    linear-gradient(25deg,transparent 0 64%,rgba(11,46,105,.26) 64.4%,transparent 66%),
    radial-gradient(circle at 50% 18%,rgba(255,255,255,.055),transparent 21%);
  opacity:.88;
}
.hero-premium .hero-bg::after{
  width:520px;
  height:520px;
  right:-170px;
  bottom:-150px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(11,46,105,.34),transparent 66%);
  filter:blur(4px);
  animation:premiumPulse 8s ease-in-out infinite;
}
@keyframes premiumPulse{0%,100%{transform:scale(1);opacity:.68}50%{transform:scale(1.08);opacity:.92}}
.hero-premium::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(2,4,10,.10),rgba(2,4,10,.25) 55%,#02040a 100%),
    radial-gradient(circle at 25% 88%,rgba(229,9,37,.14),transparent 26%);
}
.hero-premium::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:26%;
  background:linear-gradient(0deg,#02040a,transparent);
  z-index:1;
}
.hero-premium .hero-grid{
  position:relative;
  z-index:2;
  grid-template-columns:minmax(0,1fr) minmax(310px,.48fr);
  gap:54px;
}
.hero-premium .hero-content{max-width:850px}
.hero-premium .eyebrow{
  margin-bottom:32px;
  letter-spacing:.34em;
  font-size:.78rem;
  color:#d5ddec;
  text-shadow:0 10px 25px rgba(0,0,0,.45);
}
.hero-premium .eyebrow i{
  width:52px;
  height:3px;
  box-shadow:0 0 18px rgba(229,9,37,.38),0 0 18px rgba(21,71,160,.32);
}
.hero-title{
  font-size:clamp(4.2rem,8.6vw,8.3rem);
  line-height:.86;
  letter-spacing:-.075em;
  margin:0;
  font-weight:1000;
  text-transform:uppercase;
  text-shadow:0 26px 44px rgba(0,0,0,.46);
}
.hero-title .title-white{
  color:#fff;
  background:none;
  -webkit-background-clip:initial;
  background-clip:initial;
}
.hero-title .title-gradient{
  background:linear-gradient(90deg,#fff 0%,#fff 29%,#e8edf8 34%,var(--red) 35%,#e50925 56%,#f2f4f8 57%,#f2f4f8 66%,#0b4ec6 67%,#2467dc 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.hero-signature{
  display:flex;
  align-items:center;
  gap:18px;
  margin:28px 0 22px;
  color:#d8dfef;
  letter-spacing:.42em;
  text-transform:uppercase;
  font-size:.8rem;
  font-weight:900;
}
.hero-signature span{
  width:58px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.78));
}
.hero-signature span:last-child{background:linear-gradient(90deg,rgba(255,255,255,.78),transparent)}
.hero-premium .hero-lead{
  max-width:720px;
  margin:0 0 30px;
  font-size:clamp(1.08rem,2.2vw,1.48rem);
  line-height:1.62;
  color:#e2e7f2;
}
.hero-premium .hero-actions{
  display:grid;
  grid-template-columns:minmax(240px,1fr) minmax(240px,1fr);
  max-width:760px;
  gap:14px;
}
.hero-premium .btn{
  min-height:68px;
  padding:17px 22px;
  border-radius:18px;
  font-size:1rem;
  letter-spacing:.01em;
  justify-content:flex-start;
  box-shadow:0 26px 48px rgba(0,0,0,.28);
}
.hero-premium .btn svg{
  width:24px;
  height:24px;
  fill:currentColor;
  opacity:.96;
  flex:0 0 auto;
}
.hero-premium .btn em{
  margin-left:auto;
  font-style:normal;
  font-size:1.8rem;
  line-height:1;
  transition:.25s ease;
}
.hero-premium .btn:hover em{transform:translateX(5px)}
.hero-premium .btn.primary{
  background:linear-gradient(135deg,#f00f2f,#b90018 52%,#e50925);
  box-shadow:0 20px 44px rgba(229,9,37,.34),0 0 0 1px rgba(255,255,255,.10) inset;
}
.hero-premium .btn.ghost{
  background:rgba(255,255,255,.055);
  border-color:rgba(255,255,255,.22);
  box-shadow:0 22px 40px rgba(0,0,0,.30),0 0 0 1px rgba(255,255,255,.04) inset;
}
.hero-premium .mini-stats{
  max-width:760px;
  margin-top:38px;
  gap:16px;
}
.hero-premium .mini-stats article{
  position:relative;
  min-height:156px;
  padding:22px 20px 20px;
  border-radius:22px;
  overflow:hidden;
  background:linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.032));
  border-color:rgba(255,255,255,.18);
  box-shadow:0 18px 42px rgba(0,0,0,.28);
}
.hero-premium .mini-stats article::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:2px;
  background:linear-gradient(90deg,var(--red),rgba(255,255,255,.65),var(--blue));
  opacity:.9;
}
.hero-premium .stat-icon{
  width:48px;
  height:48px;
  border-radius:999px;
  display:grid;
  place-items:center;
  margin-bottom:20px;
  color:#fff;
  background:linear-gradient(135deg,rgba(229,9,37,.32),rgba(11,46,105,.32));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 14px 32px rgba(0,0,0,.24),0 0 0 7px rgba(255,255,255,.025);
}
.hero-premium .stat-icon svg{width:22px;height:22px;fill:currentColor}
.hero-premium .mini-stats strong{
  font-size:3.15rem;
  letter-spacing:-.04em;
}
.hero-premium .mini-stats span:not(.stat-icon){
  display:block;
  margin-top:9px;
  font-size:1.02rem;
  line-height:1.32;
  color:#c8d2e7;
}
.hero-premium .hero-card{
  align-self:center;
  transform:translateY(10px);
}
.hero-premium .scroll-cue{opacity:.82}

@media (max-width:920px){
  .hero-premium{
    min-height:100svh;
    padding-top:152px;
    padding-bottom:84px;
    align-items:start;
  }
  .hero-premium .hero-grid{
    grid-template-columns:1fr;
    gap:0;
  }
  .hero-premium .hero-card{display:none}
  .hero-premium .hero-content{max-width:100%}
  .hero-premium .eyebrow{
    margin-top:8px;
    margin-bottom:30px;
    font-size:.76rem;
    letter-spacing:.32em;
  }
  .hero-title{font-size:clamp(4.05rem,15.3vw,5.6rem)}
  .hero-premium .hero-lead{max-width:95%;font-size:1.32rem;line-height:1.62}
  .hero-premium .hero-actions{grid-template-columns:1fr;max-width:100%;gap:13px}
  .hero-premium .btn{min-height:66px;border-radius:18px;padding:17px 22px;font-size:1.02rem}
  .hero-premium .mini-stats{max-width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:34px}
  .hero-premium .mini-stats article{min-height:148px;padding:20px 16px 17px}
  .hero-premium .mini-stats strong{font-size:2.72rem}
  .hero-premium .mini-stats span:not(.stat-icon){font-size:.95rem}
  .hero-premium .scroll-cue{display:none}
  .footer .footer-logo{width:170px!important;max-width:170px!important;margin-left:auto!important;margin-right:auto!important;display:block!important}
}
@media (max-width:560px){
  .site-header{height:76px;border-radius:22px;padding:12px 14px}
  .brand img{width:226px;height:42px}
  .hero-premium{padding-top:154px;padding-bottom:78px}
  .hero-premium .eyebrow{font-size:.68rem;letter-spacing:.30em;gap:14px;margin-bottom:26px}
  .hero-premium .eyebrow i{width:44px}
  .hero-title{font-size:clamp(3.78rem,17.1vw,4.55rem);letter-spacing:-.078em}
  .hero-signature{gap:12px;margin:24px 0 22px;font-size:.66rem;letter-spacing:.35em}
  .hero-signature span{width:46px}
  .hero-premium .hero-lead{font-size:1.25rem;line-height:1.72;max-width:100%;margin-bottom:30px}
  .hero-premium .btn{min-height:63px;border-radius:17px;font-size:1rem}
  .hero-premium .btn svg{width:22px;height:22px}
  .hero-premium .mini-stats{gap:8px;margin-top:30px}
  .hero-premium .mini-stats article{min-height:132px;padding:17px 12px 14px;border-radius:18px}
  .hero-premium .stat-icon{width:42px;height:42px;margin-bottom:17px}
  .hero-premium .mini-stats strong{font-size:2.25rem}
  .hero-premium .mini-stats span:not(.stat-icon){font-size:.84rem;line-height:1.35}
  .footer .footer-logo{width:160px!important;max-width:160px!important}
}
@media (max-width:390px){
  .hero-title{font-size:3.42rem}
  .hero-premium .hero-lead{font-size:1.1rem}
  .hero-premium .mini-stats span:not(.stat-icon){font-size:.76rem}
  .footer .footer-logo{width:148px!important;max-width:148px!important}
}

/* Ajuste solicitado: reducir espacio superior del hero bajo el menú en móvil y mantener responsive */
@media (min-width:921px){
  .hero-premium{
    padding-top:128px;
  }
}
@media (max-width:920px){
  .hero-premium{
    padding-top:116px!important;
    padding-bottom:78px;
  }
  .hero-premium .eyebrow{
    margin-top:0!important;
    margin-bottom:22px!important;
  }
}
@media (max-width:560px){
  .hero-premium{
    padding-top:104px!important;
    padding-bottom:70px;
  }
  .hero-premium .eyebrow{
    margin-bottom:20px!important;
  }
  .hero-signature{
    margin:20px 0 18px!important;
  }
  .hero-premium .hero-lead{
    margin-bottom:26px!important;
  }
  .hero-premium .mini-stats{
    margin-top:26px!important;
  }
}
@media (max-width:380px){
  .hero-premium{
    padding-top:98px!important;
  }
}

/* Ajuste final solicitado: menos espacios entre secciones y cards de resumen uniformes */
.hero-premium .mini-stats article{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

@media (max-width:920px){
  .section{
    padding-top:64px!important;
    padding-bottom:64px!important;
  }

  .hero-premium{
    padding-bottom:34px!important;
  }

  .profile-section{
    padding-top:34px!important;
  }

  .certificates-section{
    padding-bottom:34px!important;
  }

  .documents-section{
    padding-top:34px!important;
    padding-bottom:30px!important;
  }

  .contact-section{
    padding-top:34px!important;
  }

  .section-title,
  .section-title.centered{
    margin-bottom:30px!important;
  }

  .docs-grid,
  .contact-grid,
  .two-col{
    gap:24px!important;
  }

  .hero-premium .mini-stats{
    gap:10px!important;
    margin-top:24px!important;
  }

  .hero-premium .mini-stats article{
    aspect-ratio:1 / 1;
    min-height:unset!important;
    height:auto!important;
    padding:13px 9px!important;
    border-radius:18px!important;
    align-items:center;
    text-align:center;
  }

  .hero-premium .stat-icon{
    width:38px!important;
    height:38px!important;
    margin-bottom:10px!important;
  }

  .hero-premium .stat-icon svg{
    width:19px!important;
    height:19px!important;
  }

  .hero-premium .mini-stats strong{
    font-size:2rem!important;
    line-height:.95!important;
    margin-bottom:7px!important;
  }

  .hero-premium .mini-stats span:not(.stat-icon){
    font-size:.78rem!important;
    line-height:1.18!important;
  }
}

@media (max-width:560px){
  .section{
    padding-top:48px!important;
    padding-bottom:48px!important;
  }

  .hero-premium{
    padding-bottom:22px!important;
  }

  .profile-section{
    padding-top:24px!important;
  }

  .experience-section,
  .certificates-section{
    padding-top:44px!important;
  }

  .certificates-section{
    padding-bottom:24px!important;
  }

  .documents-section{
    padding-top:26px!important;
    padding-bottom:22px!important;
  }

  .contact-section{
    padding-top:26px!important;
  }

  .section-heading h2,
  .section-title h2,
  .doc-panel h2,
  .contact-copy h2{
    font-size:clamp(2rem,11vw,2.75rem)!important;
  }

  .section-title,
  .section-title.centered{
    margin-bottom:24px!important;
  }

  .section-kicker{
    margin-bottom:12px!important;
  }

  .profile-copy,
  .doc-panel,
  .qr-card{
    padding:20px!important;
  }

  .docs-grid,
  .contact-grid,
  .two-col{
    gap:18px!important;
  }

  .hero-premium .mini-stats{
    gap:8px!important;
    margin-top:20px!important;
  }

  .hero-premium .mini-stats article{
    aspect-ratio:1 / 1!important;
    padding:10px 6px!important;
    border-radius:16px!important;
  }

  .hero-premium .stat-icon{
    width:34px!important;
    height:34px!important;
    margin-bottom:7px!important;
    border-radius:50%!important;
  }

  .hero-premium .stat-icon svg{
    width:17px!important;
    height:17px!important;
  }

  .hero-premium .mini-stats strong{
    font-size:1.75rem!important;
    margin-bottom:5px!important;
  }

  .hero-premium .mini-stats span:not(.stat-icon){
    font-size:.69rem!important;
    line-height:1.13!important;
  }
}

@media (max-width:390px){
  .hero-premium .mini-stats article{
    padding:8px 5px!important;
    border-radius:15px!important;
  }

  .hero-premium .stat-icon{
    width:30px!important;
    height:30px!important;
    margin-bottom:6px!important;
  }

  .hero-premium .mini-stats strong{
    font-size:1.52rem!important;
  }

  .hero-premium .mini-stats span:not(.stat-icon){
    font-size:.62rem!important;
  }
}


/* Ajuste solicitado: mostrar la foto de perfil también en celular y mantener el hero responsivo */
@media (max-width:920px){
  .hero-premium .hero-grid{
    gap:22px!important;
  }
  .hero-premium .hero-card{
    display:block!important;
    width:min(100%,340px);
    max-width:340px;
    margin:4px auto 0!important;
    padding:14px!important;
    border-radius:26px!important;
  }
  .hero-premium .shield-frame{
    border-radius:22px!important;
  }
  .hero-premium .profile-photo{
    width:72%!important;
  }
  .hero-premium .hero-card-info{
    margin-top:12px!important;
    padding:12px!important;
    border-radius:18px!important;
    gap:10px!important;
  }
  .hero-premium .hero-card-info img{
    width:48px!important;
    border-radius:14px!important;
  }
  .hero-premium .hero-card-info strong{
    font-size:.9rem!important;
    line-height:1.25!important;
  }
  .hero-premium .hero-card-info span{
    font-size:.78rem!important;
    line-height:1.35!important;
  }
}
@media (max-width:560px){
  .hero-premium .hero-card{
    width:min(100%,300px)!important;
    max-width:300px!important;
    margin-top:2px!important;
    padding:12px!important;
    border-radius:24px!important;
  }
  .hero-premium .profile-photo{
    width:74%!important;
  }
  .hero-premium .hero-card-info{
    padding:11px!important;
  }
  .hero-premium .hero-card-info strong{
    font-size:.84rem!important;
  }
  .hero-premium .hero-card-info span{
    font-size:.74rem!important;
  }
}
@media (max-width:390px){
  .hero-premium .hero-card{
    width:min(100%,280px)!important;
    max-width:280px!important;
  }
  .hero-premium .hero-card-info img{
    width:42px!important;
  }
}
