:root{--green:#2f8f35;--green2:#0d5a2a;--blue:#284fe3;--gold:#d8ad45;--cream:#f8f3e7;--ink:#102119;--muted:#66736a;--white:#fff}*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#fbfff8,#f5f0e6)}
.logo-circle {
  width: 160px;
  height: 160px;
  object-fit: cover;
  border-radius: 50%; /* 👈 esto garantiza círculo perfecto */
  display: block;
  margin: 0 auto 20px;
  background: #fff;
  padding: 10px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}
.premium-nav{background:rgba(12,44,27,.94);backdrop-filter:blur(14px);box-shadow:0 10px 30px rgba(0,0,0,.14)}.nav-logo{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:50%;padding:3px}.navbar-brand span{font-weight:900;letter-spacing:.4px}.navbar .nav-link{font-weight:700}.navbar .nav-link.active{color:#fff}.btn-main,.btn-gold{background:linear-gradient(135deg,var(--gold),#f4d980);border:0;color:#172019;font-weight:900;border-radius:999px;box-shadow:0 12px 28px rgba(216,173,69,.28)}.btn-main:hover,.btn-gold:hover{filter:brightness(.98);transform:translateY(-1px)}.btn-green{background:linear-gradient(135deg,var(--green),#77bf45);border:0;color:#fff;font-weight:900;border-radius:999px}.hero-premium{position:relative;overflow:hidden;background:radial-gradient(circle at 20% 20%,rgba(216,173,69,.32),transparent 28%),radial-gradient(circle at 82% 8%,rgba(40,79,227,.18),transparent 24%),linear-gradient(135deg,#0d321f,#114d2a 48%,#1d7433);color:#fff}.hero-premium:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,#000,transparent)}.hero-content{position:relative;z-index:2}.eyebrow{display:inline-flex;gap:8px;align-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:8px 14px;color:#fff;font-weight:800}.hero-title{font-size:clamp(2.5rem,6vw,5.6rem);line-height:.94;font-weight:1000;letter-spacing:-.06em}.hero-title span{color:#f1d57d}.hero-copy{font-size:1.18rem;color:rgba(255,255,255,.86);max-width:650px}.hero-card{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);border-radius:32px;padding:18px;box-shadow:0 24px 70px rgba(0,0,0,.28);backdrop-filter:blur(12px)}.hero-logo-circle{width:100%;max-width:260px;aspect-ratio:1/1;margin:0 auto;background:#fff;border-radius:50%;padding:14px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 18px 26px rgba(0,0,0,.28));overflow:hidden}.hero-logo{width:100%;height:100%;object-fit:contain;display:block}.hero-photo{width:100%;height:430px;object-fit:cover;border-radius:28px;box-shadow:0 25px 60px rgba(0,0,0,.35);object-position:center top}.stat-strip{position:relative;margin-top:-36px;z-index:3}.stat-box{background:#fff;border-radius:24px;padding:22px;box-shadow:0 18px 45px rgba(20,50,20,.14);height:100%;border:1px solid rgba(47,143,53,.12)}.stat-box strong{display:block;font-size:1.35rem;color:var(--green2)}.section-kicker{color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}.section-title{font-weight:1000;letter-spacing:-.04em;font-size:clamp(2rem,4vw,3.2rem);line-height:1}.topic-card,.premium-card{border:0;border-radius:28px;background:#fff;box-shadow:0 18px 48px rgba(20,50,20,.1);height:100%;transition:.2s ease}.topic-card:hover,.premium-card:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(20,50,20,.14)}.topic-icon{font-size:2.8rem}.host-section{background:linear-gradient(135deg,#fff,#f2f8ed)}.host-image-wrap{position:relative}.host-image-wrap:before{content:"Premio Regional de Periodismo 2025";position:absolute;left:18px;top:18px;z-index:2;background:linear-gradient(135deg,var(--gold),#fff0a8);padding:10px 14px;border-radius:999px;font-size:.78rem;font-weight:1000;box-shadow:0 12px 26px rgba(0,0,0,.16)}.host-photo{width:100%;border-radius:30px;box-shadow:0 26px 70px rgba(0,0,0,.18)}.award-badge{display:inline-flex;align-items:center;gap:10px;background:#102119;color:#fff;border-radius:22px;padding:14px 18px;font-weight:800}.cta-band{background:linear-gradient(135deg,var(--green2),var(--green));color:#fff;border-radius:34px;padding:42px;box-shadow:0 20px 60px rgba(47,143,53,.22)}.form-shell{background:#fff;border-radius:32px;box-shadow:0 24px 70px rgba(20,50,20,.13);border:1px solid rgba(47,143,53,.12)}.notice{background:linear-gradient(135deg,#eaf7e7,#fff8df);border:1px solid rgba(47,143,53,.14)}.required:after{content:" *";color:#c83f2d}.form-control,.form-select{border-radius:16px;padding:12px 14px;border-color:#dce7dc}.form-control:focus,.form-select:focus{border-color:var(--green);box-shadow:0 0 0 .25rem rgba(47,143,53,.14)}.small-muted{color:var(--muted);font-size:.92rem}.premium-footer{background:#071b11;color:#dfe9df}.footer-logo{width:62px;height:62px;object-fit:contain;background:#fff;border-radius:50%;padding:4px}.footer-link{color:#f2d77d;font-weight:900;text-decoration:none}.floating-instagram{position:fixed;right:18px;bottom:18px;background:linear-gradient(135deg,#284fe3,#6a45dd);color:#fff;text-decoration:none;padding:12px 16px;border-radius:999px;font-weight:900;box-shadow:0 16px 36px rgba(0,0,0,.22);z-index:99}.admin-bg{min-height:100vh;background:radial-gradient(circle at 20% 10%,rgba(216,173,69,.22),transparent 28%),linear-gradient(135deg,#071b11,#123c25)}.admin-card{border:0;border-radius:28px;box-shadow:0 20px 55px rgba(0,0,0,.15)}.admin-logo{max-width:150px}.table thead th{background:#f2f8ed;color:#173a22;white-space:nowrap}.admin-metric{background:#fff;border-radius:22px;padding:18px;box-shadow:0 16px 40px rgba(0,0,0,.08)}@media(max-width:991px){.hero-photo{height:340px}.hero-logo-circle{max-width:220px}.stat-strip{margin-top:24px}.cta-band{padding:28px}.floating-instagram{font-size:.85rem}}@media(max-width:575px){.hero-title{font-size:2.45rem}.hero-premium{text-align:center}.hero-copy{font-size:1rem}.hero-card{padding:12px}.hero-photo{height:320px}.host-image-wrap:before{left:12px;right:12px;text-align:center}.stat-box{text-align:center}}
