
:root{--bg:#f4f3ee;--ink:#121212;--muted:#6b6b6b;--card:#fff;--accent:#e45d2a;--dark:#171717;--line:#dedbd2;--ok:#238b57;--warn:#c88719;--bad:#b53f3f}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink)}
.container{width:min(1160px,calc(100% - 36px));margin:auto}.narrow{width:min(820px,calc(100% - 36px))}
.hero{background:linear-gradient(135deg,#111,#242424);color:#fff;min-height:720px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:420px;height:420px;border:80px solid rgba(228,93,42,.2);border-radius:50%;right:-100px;top:140px}
.nav{height:86px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.brand{display:flex;gap:12px;align-items:center}.brand span{display:block;font-size:.78rem;color:#bbb;margin-top:2px}.navlinks{display:flex;align-items:center;gap:18px}.navlinks a{color:#eee;text-decoration:none;font-size:.92rem}
.logo-ph{border:1px dashed #777;min-width:62px;min-height:42px;padding:8px;display:grid;place-items:center;text-align:center;font-size:.62rem;letter-spacing:.08em;color:#aaa;border-radius:8px}.logo-ph.big{height:180px;font-size:.9rem}.logo-row{display:flex;gap:10px}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:center;padding:92px 0 110px;position:relative;z-index:1}.eyebrow{font-size:.73rem;letter-spacing:.18em;font-weight:800;color:#f0a082}.eyebrow.dark{color:var(--accent)}h1{font-size:clamp(3.4rem,7vw,6.9rem);line-height:.88;margin:18px 0 24px;letter-spacing:-.06em}h1 em{font-style:normal;color:#f0a082;font-size:.42em;letter-spacing:-.02em}.lead{max-width:650px;font-size:1.15rem;line-height:1.6;color:#d2d2d2}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.btn{border:0;border-radius:10px;padding:13px 18px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.primary{background:var(--accent);color:white}.secondary{background:#fff;color:#151515}.ghost{background:transparent;color:#fff;border:1px solid #555}.full{width:100%}.event-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:38px}.event-meta div{border-left:2px solid var(--accent);padding-left:12px}.event-meta small,.event-meta b{display:block}.event-meta small{color:#999;font-size:.68rem}.hero-card{background:rgba(255,255,255,.06);border:1px solid #444;border-radius:24px;padding:24px;backdrop-filter:blur(8px)}.logo-wall{display:grid;gap:12px}.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px}.countdown div{background:#0d0d0d;border-radius:12px;padding:14px;text-align:center}.countdown b{font-size:1.7rem;display:block}.countdown span{font-size:.7rem;color:#999}
.section{padding:88px 0}.section.alt{background:#e9e7df}.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-card,.form-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 12px 30px rgba(0,0,0,.04)}.info-card span{font-size:.75rem;color:var(--accent);font-weight:900}.info-card h3{font-size:1.4rem;margin:10px 0 8px}.info-card p{color:var(--muted);margin:0}.section-head{margin-bottom:28px}.section-head.center{text-align:center}.section-head h2{font-size:clamp(2rem,4vw,3.2rem);margin:8px 0 5px;letter-spacing:-.04em}.section-head p{color:var(--muted)}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}label{display:grid;gap:7px;font-size:.84rem;font-weight:750}input,select{width:100%;padding:12px 13px;border:1px solid #ccc7bb;border-radius:10px;background:#fff;font:inherit}input:focus,select:focus{outline:2px solid rgba(228,93,42,.25);border-color:var(--accent)}.summary-box{margin:22px 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}.summary-box div,.bank-box div{background:#f4f2eb;padding:14px;border-radius:10px}.summary-box span,.bank-box small{display:block;color:var(--muted);font-size:.72rem}.check{display:flex;grid-template-columns:auto 1fr;align-items:flex-start;margin:18px 0}.check input{width:auto;margin-top:3px}.bank-box{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:18px 0}.success-icon{width:48px;height:48px;border-radius:50%;background:#dff3e9;color:var(--ok);display:grid;place-items:center;font-weight:900;font-size:1.4rem}.note{font-size:.78rem;color:var(--muted);line-height:1.5}.hidden{display:none!important}
.search-box{display:flex;gap:10px}.search-box input{flex:1}.result-card{background:#fff;border:1px solid var(--line);border-radius:16px;margin-top:18px;padding:22px}.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.result-grid div{background:#f7f5ef;border-radius:10px;padding:12px}.result-grid small{display:block;color:var(--muted);font-size:.7rem}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.72rem;font-weight:850}.pending{background:#fff0c8;color:#8c6300}.approved{background:#dff3e9;color:#17643d}.rejected{background:#f5dcdc;color:#8c2929}.delivered{background:#dce9f8;color:#245d9b}.qr-wrap{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:16px}.qr-box{background:#fff;border:1px solid var(--line);padding:12px;border-radius:12px}.kit-warning{padding:12px;border-radius:10px;margin-top:12px;font-weight:700}.okbox{background:#e4f4ea;color:#1e6d44}.badbox{background:#f7e1e1;color:#8b3030}
footer{background:#111;color:#ddd;padding:34px 0}.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-grid p{color:#888}
dialog{border:0;border-radius:20px;padding:0;box-shadow:0 30px 90px rgba(0,0,0,.35);width:min(1100px,94vw)}dialog::backdrop{background:rgba(0,0,0,.65)}.dialog-card{padding:26px;display:grid;gap:14px;position:relative}.close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:1.8rem;cursor:pointer}.admin-shell{padding:28px}.admin-top{display:flex;justify-content:space-between;align-items:center}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.stat{background:#f5f3ed;border-radius:12px;padding:16px}.stat b{font-size:1.7rem;display:block}.stat span{font-size:.72rem;color:var(--muted)}.admin-actions{display:flex;gap:10px;margin:18px 0}.admin-actions input{flex:1}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.82rem}th,td{text-align:left;padding:10px;border-bottom:1px solid #e5e1d7;white-space:nowrap}th{font-size:.68rem;color:#777;text-transform:uppercase}.mini{padding:7px 9px;font-size:.72rem;border-radius:8px}
@media(max-width:850px){.navlinks a{display:none}.hero-grid{grid-template-columns:1fr;padding-top:50px}.hero{min-height:auto}.cards3,.form-grid,.bank-box,.stats{grid-template-columns:1fr}.summary-box{grid-template-columns:1fr}.footer-grid{align-items:flex-start;flex-direction:column}.hero-card{margin-bottom:40px}.search-box,.admin-actions{flex-direction:column}.result-grid{grid-template-columns:1fr}}

.legal-box{margin:22px 0;padding:18px;border:1px solid var(--line);background:#faf8f2;border-radius:14px}
.legal-box h3{margin-top:0}.legal-box p{color:var(--muted);font-size:.9rem}
.legal-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.legal-text h3{margin:22px 0 6px}.legal-text h3:first-child{margin-top:0}.legal-text p{color:#5f5f5f;line-height:1.65}

.kit-info{margin-top:22px}
.kit-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}
.kit-list div{background:#f7f5ef;border-radius:12px;padding:16px}
.kit-list b{display:block;margin-bottom:5px}
.kit-list span{display:block;color:var(--muted);font-size:.88rem;line-height:1.5}
.kit-note{margin-top:18px;padding:16px;border-left:4px solid var(--accent);background:#fff6f0;border-radius:10px}
.kit-note p{margin:5px 0 0;color:var(--muted)}
@media(max-width:850px){.kit-list{grid-template-columns:1fr}}

.distance-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:22px}
.distance-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 12px 30px rgba(0,0,0,.04)}
.distance-tag{display:inline-block;background:#f6e7df;color:#9d3b1d;font-size:.72rem;font-weight:900;letter-spacing:.08em;padding:6px 10px;border-radius:999px}
.distance-card h3{font-size:3rem;line-height:1;margin:16px 0 10px;color:var(--dark)}
.distance-card p{margin:0 0 10px;color:var(--muted)}
.distance-card ul{margin:0;padding-left:18px;color:#444;line-height:1.65}

.route-map-card,

















@media(max-width:850px){
  .distance-grid{grid-template-columns:1fr}
  
  
}












@media(max-width:850px){
  
  
  .strava-info .btn{grid-column:1/-1}
  
  
}












#virtualRunnerPulse.pulse-running{animation:routePulse 1.2s ease-in-out infinite}
@keyframes routePulse{0%,100%{r:24;opacity:.7}50%{r:34;opacity:.15}}
@media(max-width:850px){
  
  
  
  .virtual-controls .btn{width:100%}
  
}












@media(max-width:850px){
  
  .route-map-actions .btn{width:100%}
  
  
}

.help-assistant{position:fixed;right:22px;bottom:22px;z-index:999}
.help-bubble{display:flex;align-items:center;gap:10px;border:0;background:var(--accent);color:#fff;border-radius:999px;padding:12px 16px;box-shadow:0 14px 40px rgba(0,0,0,.24);font-weight:900;cursor:pointer}
.help-bubble-icon{width:28px;height:28px;border-radius:50%;background:#fff;color:var(--accent);display:grid;place-items:center;font-weight:900}
.help-bubble-text{font-size:.88rem}
.help-panel{position:absolute;right:0;bottom:62px;width:min(360px,calc(100vw - 28px));background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.28);overflow:hidden}
.help-header{display:flex;justify-content:space-between;align-items:center;background:#171717;color:#fff;padding:16px}
.help-kicker{display:block;font-size:.58rem;letter-spacing:.12em;color:#aaa;margin-bottom:3px}
.help-close{border:0;background:none;color:#fff;font-size:1.7rem;cursor:pointer}
.help-body{padding:14px;max-height:430px;overflow:auto;background:#f6f3ec}
.help-message{padding:11px 12px;border-radius:14px;margin-bottom:10px;font-size:.87rem;line-height:1.5}
.help-message.bot{background:#fff;border:1px solid #e5dfd3}
.help-quick{display:grid;gap:8px;margin:10px 0}
.help-quick button{border:1px solid #d8d0c4;background:#fff;border-radius:12px;padding:10px 12px;text-align:left;font:inherit;font-size:.83rem;font-weight:750;cursor:pointer}
.help-quick button:hover{border-color:var(--accent)}
.help-inline-action{margin-top:8px}
.help-inline-action a{color:var(--accent);font-weight:900;text-decoration:none}
.help-contact{padding:14px;border-top:1px solid #e8e1d5}
.help-contact>span{display:block;font-size:.76rem;font-weight:800;margin-bottom:8px;color:#555}
@media(max-width:600px){
  .help-assistant{right:14px;bottom:14px}
  .help-bubble-text{display:none}
  .help-bubble{padding:11px}
  .help-panel{right:0;bottom:58px}
}

.wa-preview-card{background:#e7f3e7;border-radius:16px;padding:14px;border:1px solid #c8ddc7}
.wa-preview-head{font-size:.7rem;font-weight:900;letter-spacing:.08em;color:#466448;margin-bottom:9px}
.wa-preview-message{white-space:pre-wrap;background:#fff;border-radius:12px;padding:14px;line-height:1.55;font-size:.88rem;box-shadow:0 5px 15px rgba(0,0,0,.05)}

.promo-row{display:grid;grid-template-columns:1fr auto;gap:8px}.field-help{font-size:.72rem;color:var(--muted);font-weight:500}
.promo-ok{color:var(--ok)!important;font-weight:800}.promo-bad{color:var(--bad)!important;font-weight:800}
.infant-free-notice{margin:18px 0;padding:16px 18px;background:#e5f4ea;border:1px solid #bcdcc8;border-radius:14px}
.infant-free-notice b{display:block;color:#17623e}.infant-free-notice p{margin:5px 0 0;color:#3c654e;font-size:.88rem;line-height:1.55}
.free-success-box{background:#e1f2e8;border:1px solid #badbc7;border-radius:14px;padding:18px;margin:16px 0}
.free-success-box b{color:#17623e}.free-success-box p{margin:6px 0 0;color:#426450}
@media(max-width:600px){.promo-row{grid-template-columns:1fr}.promo-row .btn{width:100%}}

.minimal-distances{margin-bottom:24px}
.distance-card.minimal{text-align:center;padding:34px 24px}
.distance-card.minimal h3{font-size:4.2rem;margin:14px 0 8px;letter-spacing:-.05em}
.distance-card.minimal p{margin:0;color:var(--muted);font-size:.95rem}

.documents-box{margin:22px 0;padding:18px;border:1px solid var(--line);background:#faf8f2;border-radius:14px}
.documents-box h3{margin-top:0}.documents-box p{color:var(--muted);font-size:.9rem}
.document-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.document-card{display:block;text-decoration:none;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;transition:.2s ease}
.document-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.06)}
.document-card span{font-size:.72rem;color:var(--accent);font-weight:900}
.document-card h3{margin:9px 0 8px}.document-card p{margin:0;color:var(--muted);font-size:.86rem}
@media(max-width:850px){.document-grid{grid-template-columns:1fr}}

/* Código promocional / cortesía destacado en azul */
.promo-code-label{color:#1f5fae}
.promo-code-label > .promo-row input{border-color:#8cb3df}
.promo-code-label > .promo-row input:focus{outline:2px solid rgba(31,95,174,.18);border-color:#1f5fae}
.promo-blue{background:#1f5fae;color:#fff}
.promo-blue:hover{filter:brightness(.95)}

/* === V26 · Identidad visual basada en logo oficial === */
:root{
  --bg:#f5f7f2;
  --ink:#082317;
  --muted:#52645d;
  --card:#ffffff;
  --accent:#0a5c3b;
  --accent-2:#63b032;
  --accent-3:#1f8fe0;
  --accent-soft:#e7f5eb;
  --dark:#062116;
  --line:#d9e3d8;
  --ok:#238b57;
  --warn:#c88719;
  --bad:#b53f3f;
}
body{background:linear-gradient(180deg,#f6faf5 0%,#eef4ee 100%);color:var(--ink)}
.hero{background:linear-gradient(135deg,#03160e 0%,#0a5c3b 48%,#117243 100%)}
.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 20%,rgba(99,176,50,.18),transparent 28%),radial-gradient(circle at 82% 22%,rgba(31,143,224,.16),transparent 24%),radial-gradient(circle at 70% 78%,rgba(255,255,255,.07),transparent 28%)}
.hero:after{border-color:rgba(99,176,50,.14)}
.nav{padding-top:10px}
.brand{gap:14px}
.brand strong{font-size:1rem;letter-spacing:.01em}
.brand span{color:#d8ebe0}
.brand-logo{width:68px;height:68px;object-fit:contain;border-radius:16px;background:rgba(255,255,255,.10);padding:7px;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.hero-logo{display:block;width:min(100%,340px);margin:0 auto;filter:drop-shadow(0 12px 32px rgba(0,0,0,.22))}
.hero-card{background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.08));border:1px solid rgba(255,255,255,.22);box-shadow:0 22px 50px rgba(0,0,0,.18)}
.logo-wall{justify-items:center}
.logo-row{align-items:center}
.logo-ph{border:1px dashed rgba(8,35,23,.18);background:#fff;color:#5b6d66;font-weight:700}
.eyebrow{color:#8fe05b}
.eyebrow.dark{color:var(--accent)}
h1 em{color:#9ce866}
.lead{color:#e8f5ef}
.btn.primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;box-shadow:0 10px 22px rgba(10,92,59,.22)}
.btn.secondary{background:#fff;color:var(--accent)}
.btn.ghost{border-color:rgba(255,255,255,.35)}
.navlinks a:hover,.help-inline-action a,.info-card span{color:var(--accent-2)}
.event-meta div{border-left-color:var(--accent-2)}
.section.alt{background:linear-gradient(180deg,#e9f5ec 0%,#edf4f0 100%)}
.info-card,.form-card,.distance-card,.result-card,.document-card{border-color:#dbe7da;box-shadow:0 16px 36px rgba(4,32,18,.05)}
.info-card{position:relative;overflow:hidden}
.info-card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-2) 55%,var(--accent-3) 100%)}
.section-head p,.info-card p,.distance-card p,.documents-box p,.kit-list span,.note,.footer-grid p{color:var(--muted)}
input:focus,select:focus{outline:2px solid rgba(31,143,224,.18);border-color:var(--accent-3)}
.summary-box div,.bank-box div,.result-grid div,.kit-list div,.stat{background:#f5faf6}
.distance-tag{background:#e8f6ee;color:var(--accent)}
.distance-card.minimal{background:linear-gradient(180deg,#ffffff 0%,#f5fbf6 100%)}
.distance-card.minimal h3{color:var(--accent)}
.countdown div{background:rgba(4,20,13,.72);border:1px solid rgba(255,255,255,.09)}
.help-bubble{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-3) 100%)}
.help-bubble-icon{color:var(--accent-3)}
.help-header{background:linear-gradient(135deg,#062116 0%,#0a5c3b 100%)}
footer{background:linear-gradient(135deg,#03160e 0%,#0a5c3b 100%)}
.footer-grid{align-items:center}
.footer-logos{gap:12px}
.footer-logo{width:76px;height:76px;object-fit:contain;background:#fff;border-radius:14px;padding:6px;box-shadow:0 8px 18px rgba(0,0,0,.15)}
.promo-blue{background:linear-gradient(135deg,#1f8fe0 0%,#1273c5 100%)}
.promo-code-label{color:#1273c5}
.promo-code-label>.promo-row input{border-color:#8ec1ed}
.promo-code-label>.promo-row input:focus{outline:2px solid rgba(31,143,224,.18);border-color:#1f8fe0}
.infant-free-notice{background:#ebf8ee;border-color:#bde0c3}
.free-success-box{background:#ebf8ee;border-color:#bde0c3}
.document-card:hover{border-color:#badbbf;box-shadow:0 16px 34px rgba(10,92,59,.10)}
.admin-shell{background:#fff}
@media(max-width:850px){.brand-logo{width:58px;height:58px}.hero-logo{width:min(100%,280px)}.footer-logo{width:64px;height:64px}}


/* V29: mostrar logo oficial real en la página */
.brand-logo{display:block;width:68px;height:68px;object-fit:contain}
.hero-logo{display:block;width:min(100%,360px);height:auto;object-fit:contain}
.footer-logos{display:flex;align-items:center;gap:12px;justify-content:flex-end;flex-wrap:wrap}
.footer-logo{display:block;width:76px;height:76px;object-fit:contain;border-radius:14px;background:#fff;padding:6px}
@media(max-width:850px){
  .footer-logos{justify-content:flex-start}
}



/* === V30 · Hero premium e integración del logo === */
.premium-brand{align-items:center}
.brand-logo-shell{
  display:grid;place-items:center;
  width:78px;height:78px;border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.22),rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.26);
  box-shadow:0 18px 34px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter:blur(8px);
}
.brand-copy strong{display:block}
.brand-copy span{letter-spacing:.02em}

.premium-hero-card{
  position:relative;
  overflow:hidden;
  padding:28px 28px 24px;
  border-radius:30px;
  background:
    radial-gradient(circle at top right, rgba(31,143,224,.22), transparent 28%),
    radial-gradient(circle at top left, rgba(99,176,50,.18), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,.19), rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.24);
  box-shadow:
    0 26px 60px rgba(0,0,0,.22),
    inset 0 1px 0 rgba(255,255,255,.22);
}
.premium-hero-card:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.08), transparent 38%),
    radial-gradient(circle at bottom left, rgba(99,176,50,.12), transparent 28%);
  pointer-events:none;
}
.hero-badge{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.12em;
  color:#eaf8ee;
  background:rgba(4,28,18,.45);
  border:1px solid rgba(255,255,255,.16);
  margin-bottom:18px;
}
.hero-logo-shell-premium{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  padding:18px;
  border-radius:28px;
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(241,248,243,.92));
  border:1px solid rgba(255,255,255,.6);
  box-shadow:
    0 22px 46px rgba(0,0,0,.14),
    inset 0 1px 0 rgba(255,255,255,.95);
}
.hero-logo.premium{
  width:min(100%,420px);
  filter:drop-shadow(0 10px 24px rgba(8,35,23,.12));
}
.hero-logo-caption{
  position:relative;
  z-index:1;
  margin:16px 4px 0;
  text-align:center;
  line-height:1.55;
  color:#eef8f1;
  font-size:.96rem;
}
.hero-logo-caption strong{color:#b9f07f}
.hero-pills{
  position:relative;
  z-index:1;
  display:flex;
  gap:10px;
  justify-content:center;
  flex-wrap:wrap;
  margin:18px 0 14px;
}
.hero-pills span{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.16);
  color:#ecf7ef;
  font-weight:700;
  font-size:.8rem;
}
.official-logos{
  position:relative;
  z-index:1;
  justify-content:center;
  margin-bottom:14px;
}
.official-logos .logo-ph{
  min-width:120px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.16);
  color:#e0efe5;
}
.premium-countdown{
  position:relative;
  z-index:1;
}
.premium-countdown div{
  background:rgba(5,23,14,.58);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
@media(max-width:850px){
  .brand-logo-shell{width:68px;height:68px;border-radius:18px}
  .premium-hero-card{padding:22px 20px}
  .hero-logo.premium{width:min(100%,320px)}
}



/* === V31 · Logo sin fondo blanco y más integrado === */
.brand-logo-shell{
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 16px 32px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.10);
}
.brand-logo{
  background:transparent !important;
  padding:0 !important;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.22));
}
.hero-logo-shell-premium{
  background:radial-gradient(circle at center, rgba(255,255,255,.10), rgba(255,255,255,.03) 65%, transparent 100%);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 40px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.10);
  backdrop-filter:blur(4px);
}
.hero-logo.premium{
  background:transparent !important;
  padding:0 !important;
  width:min(100%,440px);
  filter:drop-shadow(0 14px 28px rgba(0,0,0,.22));
}
.footer-logo{
  background:transparent !important;
  padding:0 !important;
  box-shadow:none !important;
  filter:drop-shadow(0 8px 16px rgba(0,0,0,.16));
}


/* === V32 · Ajuste elegante / premium y mejor integración del logo === */
:root{
  --bg:#f4f1ea;
  --ink:#11231c;
  --muted:#65726c;
  --card:#fffdf9;
  --accent:#123f2f;
  --accent-2:#8ea65a;
  --accent-3:#caa45d;
  --accent-soft:#f5efe0;
  --dark:#0a1914;
  --line:#e2ddd1;
  --ok:#2f7a53;
  --warn:#bd8f33;
  --bad:#b54a4a;
}

body{
  background:linear-gradient(180deg,#f7f4ee 0%,#f1ede4 100%);
  color:var(--ink);
}
.hero{
  background:
    radial-gradient(circle at 15% 18%, rgba(202,164,93,.12), transparent 22%),
    radial-gradient(circle at 82% 20%, rgba(142,166,90,.12), transparent 24%),
    linear-gradient(135deg,#081611 0%,#123f2f 55%,#183d31 100%);
}
.hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.05), transparent 42%),
    radial-gradient(circle at bottom right, rgba(202,164,93,.08), transparent 30%);
  pointer-events:none;
}
.hero:after{
  border-color:rgba(202,164,93,.10);
}
.brand span{color:#d7dfd8}
.brand-logo-shell{
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.05));
  border:1px solid rgba(255,255,255,.20);
  box-shadow:0 16px 34px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.10);
}
.brand-logo{
  border-radius:14px;
  box-shadow:0 10px 24px rgba(0,0,0,.14);
}

.eyebrow{color:#d9bf7c}
.eyebrow.dark{color:var(--accent-3)}
h1 em{color:#d8c07d}
.lead{color:#e8efe9}

.navlinks a:hover,.help-inline-action a,.info-card span,.document-card span{
  color:var(--accent-3);
}

.btn.primary{
  background:linear-gradient(135deg,#143d2f 0%,#245844 100%);
  color:#fff;
  box-shadow:0 12px 22px rgba(18,63,47,.20);
}
.btn.secondary{
  background:#fffaf0;
  color:var(--accent);
  border:1px solid #e7dcc0;
}
.btn.secondary:hover{background:#fff7e8}
.btn.ghost{
  border-color:rgba(255,255,255,.26);
  background:rgba(255,255,255,.04);
}

.premium-hero-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 28px 62px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.12);
}
.hero-badge{
  color:#f4ebd2;
  background:rgba(9,23,18,.42);
  border:1px solid rgba(202,164,93,.20);
}
.hero-logo-shell-premium{
  background:linear-gradient(180deg,#fffefc 0%,#f8f4ea 100%);
  border:1px solid #eee2c8;
  box-shadow:
    0 22px 50px rgba(0,0,0,.14),
    inset 0 1px 0 rgba(255,255,255,.92);
  padding:20px;
}
.hero-logo.premium{
  width:min(100%,430px);
  border-radius:18px;
  filter:drop-shadow(0 10px 22px rgba(17,35,28,.10));
}
.hero-logo-caption{
  color:#edf2ee;
}
.hero-logo-caption strong{color:#f0d38e}
.hero-pills span{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.14);
  color:#eff3ef;
}
.official-logos .logo-ph{
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.12);
  color:#e5ece7;
}
.countdown div,
.premium-countdown div{
  background:rgba(8,22,17,.62);
  border:1px solid rgba(255,255,255,.09);
}

.section.alt{
  background:linear-gradient(180deg,#f4f1e9 0%,#f0ece3 100%);
}
.info-card,.form-card,.distance-card,.result-card,.document-card{
  background:#fffdf9;
  border-color:#e6dfd2;
  box-shadow:0 16px 34px rgba(16,34,27,.05);
}
.info-card:after{
  background:linear-gradient(90deg,var(--accent) 0%,var(--accent-3) 52%,var(--accent-2) 100%);
}
.summary-box div,.bank-box div,.result-grid div,.kit-list div,.stat{
  background:#faf7f0;
}
.distance-card.minimal{
  background:linear-gradient(180deg,#fffdfa 0%,#f8f4ec 100%);
}
.distance-tag{
  background:#f2ead8;
  color:var(--accent);
}
.distance-card.minimal h3{color:var(--accent)}
input:focus,select:focus{
  outline:2px solid rgba(202,164,93,.20);
  border-color:#caa45d;
}

.help-bubble{
  background:linear-gradient(135deg,#123f2f 0%,#8ea65a 100%);
}
.help-header{
  background:linear-gradient(135deg,#0b1713 0%,#123f2f 100%);
}
.help-bubble-icon{color:#caa45d}

.promo-blue{
  background:linear-gradient(135deg,#245d95 0%,#1c4f82 100%);
}
.promo-code-label{color:#245d95}
.promo-code-label>.promo-row input{
  border-color:#9ec0df;
}
.promo-code-label>.promo-row input:focus{
  border-color:#245d95;
  outline:2px solid rgba(36,93,149,.18);
}

.documents-box,
.infant-free-notice,
.free-success-box{
  background:#faf6ec;
  border-color:#e8dec8;
}
.documents-box h3,.infant-free-notice b,.free-success-box b{
  color:var(--accent);
}

.document-card:hover{
  border-color:#dbcaa0;
  box-shadow:0 18px 34px rgba(18,63,47,.08);
}

footer{
  background:linear-gradient(135deg,#081611 0%,#123f2f 58%,#0d261d 100%);
}
.footer-logo{
  background:#fffdf9 !important;
  border-radius:14px;
  padding:4px !important;
  box-shadow:0 8px 18px rgba(0,0,0,.12) !important;
}

.logo-ph{
  border:1px dashed rgba(18,63,47,.20);
  background:#fffaf4;
  color:#6c716a;
  font-weight:700;
}

@media(max-width:850px){
  .hero-logo.premium{width:min(100%,320px)}
}


/* === V33 · Integración de logo IMCUFIDE === */
.official-logos,
.footer-logos{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.partner-logo{
  display:block;
  width:74px;
  height:74px;
  object-fit:contain;
  border-radius:14px;
  background:#fffdf9;
  padding:6px;
  box-shadow:0 8px 18px rgba(0,0,0,.12);
}
.official-logos .partner-logo{
  background:rgba(255,255,255,.96);
}
.imcufide-logo{
  border:1px solid rgba(0,0,0,.04);
}
@media(max-width:850px){
  .partner-logo{
    width:62px;
    height:62px;
  }
}


/* === V34 · Leyenda debajo del logo oficial === */
.official-logo-legend{
  margin:14px auto 0;
  max-width:520px;
  text-align:center;
  line-height:1.55;
  color:#385046;
  font-size:.96rem;
  font-weight:500;
}
.official-logo-legend strong{
  color:var(--accent);
}


/* === V35 · Leyenda más destacada como identidad === */
.identity-manifesto{
  margin:18px auto 0;
  max-width:580px;
  padding:18px 20px;
  text-align:center;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,253,249,.98), rgba(247,241,228,.96));
  border:1px solid rgba(202,164,93,.34);
  box-shadow:
    0 18px 36px rgba(17,35,28,.10),
    inset 0 1px 0 rgba(255,255,255,.9);
  position:relative;
  overflow:hidden;
}
.identity-manifesto:before{
  content:"";
  position:absolute;
  left:18px; right:18px; top:0;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg, var(--accent) 0%, var(--accent-3) 52%, var(--accent-2) 100%);
}
.identity-kicker{
  display:inline-block;
  margin-bottom:10px;
  font-size:.72rem;
  letter-spacing:.16em;
  font-weight:900;
  color:var(--accent-3);
}
.official-logo-legend{
  margin:0;
  max-width:none;
  text-align:center;
  line-height:1.65;
  color:#243830;
  font-size:1.02rem;
  font-weight:600;
}
.official-logo-legend strong{
  color:var(--accent);
  font-weight:800;
}
@media(max-width:850px){
  .identity-manifesto{
    margin-top:16px;
    padding:16px 16px 15px;
    border-radius:18px;
  }
  .official-logo-legend{
    font-size:.96rem;
    line-height:1.58;
  }
}


/* === V36 · Logo oficial difuminado en relieve bajo el texto del hero === */
.hero-grid > div:first-child{
  position:relative;
  z-index:2;
}
.hero-embossed-logo-wrap{
  position:relative;
  margin-top:26px;
  display:flex;
  justify-content:center;
  pointer-events:none;
  user-select:none;
}
.hero-embossed-logo-wrap:before{
  content:"";
  position:absolute;
  inset:auto 10% -2% 10%;
  height:78%;
  border-radius:34px;
  background:
    radial-gradient(circle at center, rgba(255,255,255,.10), rgba(255,255,255,.02) 58%, transparent 74%);
  filter:blur(10px);
}
.hero-embossed-logo{
  position:relative;
  z-index:1;
  width:min(100%,380px);
  height:auto;
  opacity:.20;
  mix-blend-mode:screen;
  filter:
    grayscale(1)
    saturate(0)
    brightness(1.9)
    contrast(.75)
    blur(.6px)
    drop-shadow(0 1px 0 rgba(255,255,255,.18))
    drop-shadow(0 14px 28px rgba(0,0,0,.14));
  transform:translateY(4px);
}
@media(max-width:850px){
  .hero-embossed-logo-wrap{
    margin-top:20px;
  }
  .hero-embossed-logo{
    width:min(100%,290px);
    opacity:.18;
  }
}


/* === V37 · Marca visual extendida en todo el hero verde === */
.hero{
  position:relative;
  overflow:hidden;
}
.hero-wide-art{
  position:absolute;
  inset:82px 0 0 0;
  z-index:0;
  pointer-events:none;
}
.hero-wide-art::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:url('logo_oficial_carrera.png');
  background-repeat:no-repeat;
  background-position:center 42%;
  background-size:min(1280px, 92%);
  opacity:.17;
  filter:
    grayscale(.15)
    saturate(.85)
    brightness(1.15)
    contrast(.92)
    blur(.8px)
    drop-shadow(0 18px 32px rgba(0,0,0,.10));
  mix-blend-mode:screen;
  transform:scale(1.03);
}
.hero-wide-art::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at center, rgba(255,255,255,.05), transparent 48%),
    linear-gradient(180deg, rgba(7,22,17,.10) 0%, rgba(7,22,17,.03) 40%, rgba(7,22,17,.16) 100%);
}
.hero nav,
.hero-grid{
  position:relative;
  z-index:2;
}

.hero-grid > div:first-child{
  position:relative;
  z-index:3;
}

.hero-card.premium-hero-card{
  position:relative;
  z-index:3;
  backdrop-filter:blur(2px);
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.08));
}

@media(max-width:1100px){
  .hero-wide-art::before{
    background-size:min(1100px, 110%);
    background-position:center 46%;
    opacity:.15;
  }
}
@media(max-width:850px){
  .hero-wide-art{
    inset:78px 0 0 0;
  }
  .hero-wide-art::before{
    background-size:140%;
    background-position:center 38%;
    opacity:.12;
  }
}

/* Neutralize the previous small embossed-logo styles */
.hero-embossed-logo-wrap,
.hero-embossed-logo{
  display:none !important;
}


/* === V38 · Hero más vectorial, sin fondo blanco y sin texto en la marca gráfica === */
.hero-wide-art::before{
  background-image:url('hero_art_emblem.png') !important;
  background-repeat:no-repeat;
  background-position:center 44%;
  background-size:min(1320px, 96%);
  opacity:.22;
  filter:
    saturate(1.02)
    contrast(1.02)
    brightness(1.05)
    drop-shadow(0 16px 30px rgba(0,0,0,.10));
  mix-blend-mode:screen;
  transform:scale(1.02);
}
.hero-wide-art::after{
  background:
    radial-gradient(circle at center, rgba(255,255,255,.03), transparent 46%),
    linear-gradient(180deg, rgba(7,22,17,.08) 0%, rgba(7,22,17,.02) 42%, rgba(7,22,17,.14) 100%);
}
.hero-badge,
.identity-kicker{
  display:none !important;
}

/* Leve ajuste para mantener elegante la tarjeta de la derecha */
.premium-hero-card{
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.07));
}

@media(max-width:1100px){
  .hero-wide-art::before{
    background-size:min(1140px, 118%);
    background-position:center 45%;
    opacity:.19;
  }
}
@media(max-width:850px){
  .hero-wide-art::before{
    background-size:145%;
    background-position:center 34%;
    opacity:.15;
  }
}


/* === V39 · Marca gráfica solo contorno, sin colores === */
.hero-wide-art::before{
  background-image:url('hero_art_outline.png') !important;
  background-repeat:no-repeat;
  background-position:center 44%;
  background-size:min(1320px, 96%);
  opacity:.18;
  filter:
    brightness(1.12)
    contrast(1.02)
    blur(.2px)
    drop-shadow(0 10px 24px rgba(0,0,0,.10));
  mix-blend-mode:screen;
  transform:scale(1.02);
}
.hero-wide-art::after{
  background:
    radial-gradient(circle at center, rgba(255,255,255,.025), transparent 46%),
    linear-gradient(180deg, rgba(7,22,17,.08) 0%, rgba(7,22,17,.02) 42%, rgba(7,22,17,.14) 100%);
}
@media(max-width:1100px){
  .hero-wide-art::before{
    background-size:min(1140px, 118%);
    background-position:center 45%;
    opacity:.16;
  }
}
@media(max-width:850px){
  .hero-wide-art::before{
    background-size:145%;
    background-position:center 34%;
    opacity:.13;
  }
}


/* === V40 · Contorno más fino, visible y sin círculo verde === */
.hero:after{
  display:none !important;
}

.hero-wide-art::before{
  background-image:url('hero_art_outline.png') !important;
  background-repeat:no-repeat;
  background-position:center 44%;
  background-size:min(1280px, 94%);
  opacity:.23;
  filter:
    brightness(1.08)
    contrast(1.03)
    blur(.12px)
    drop-shadow(0 8px 18px rgba(0,0,0,.08));
  mix-blend-mode:screen;
  transform:scale(1.01);
}

.hero-wide-art::after{
  background:
    radial-gradient(circle at center, rgba(255,255,255,.018), transparent 44%),
    linear-gradient(180deg, rgba(7,22,17,.06) 0%, rgba(7,22,17,.02) 42%, rgba(7,22,17,.12) 100%);
}

@media(max-width:1100px){
  .hero-wide-art::before{
    background-size:min(1100px, 112%);
    background-position:center 45%;
    opacity:.20;
  }
}
@media(max-width:850px){
  .hero-wide-art::before{
    background-size:138%;
    background-position:center 35%;
    opacity:.17;
  }
}


/* === V41 · Contorno uniforme y limpio, sin texto de identidad === */
.hero-wide-art::before{
  background-image:url('hero_art_outline.png') !important;
  background-repeat:no-repeat;
  background-position:center 44%;
  background-size:min(1260px, 92%);
  opacity:.20;
  filter:
    brightness(1.05)
    contrast(1.02)
    blur(.08px)
    drop-shadow(0 6px 14px rgba(0,0,0,.06));
  mix-blend-mode:screen;
  transform:scale(1.005);
}

.hero-wide-art::after{
  background:
    radial-gradient(circle at center, rgba(255,255,255,.012), transparent 42%),
    linear-gradient(180deg, rgba(7,22,17,.05) 0%, rgba(7,22,17,.015) 42%, rgba(7,22,17,.10) 100%);
}

/* quitar completamente el bloque/estilos de la leyenda de identidad */
.identity-manifesto,
.official-logo-legend,
.identity-kicker{
  display:none !important;
}

@media(max-width:1100px){
  .hero-wide-art::before{
    background-size:min(1080px, 108%);
    background-position:center 45%;
    opacity:.18;
  }
}
@media(max-width:850px){
  .hero-wide-art::before{
    background-size:134%;
    background-position:center 35%;
    opacity:.15;
  }
}


/* === V42 · Marca gráfica con el nombre de la carrera === */
.hero-wide-art::before{
  background-image:url('hero_title_art.svg') !important;
  background-repeat:no-repeat;
  background-position:center 43%;
  background-size:min(1180px, 88%);
  opacity:.19;
  filter:
    brightness(1.02)
    contrast(1.02)
    blur(.06px)
    drop-shadow(0 6px 14px rgba(0,0,0,.05));
  mix-blend-mode:screen;
  transform:scale(1.0);
}

.hero-wide-art::after{
  background:
    radial-gradient(circle at center, rgba(255,255,255,.01), transparent 42%),
    linear-gradient(180deg, rgba(7,22,17,.05) 0%, rgba(7,22,17,.015) 42%, rgba(7,22,17,.10) 100%);
}

@media(max-width:1100px){
  .hero-wide-art::before{
    background-size:min(1000px, 100%);
    background-position:center 45%;
    opacity:.17;
  }
}
@media(max-width:850px){
  .hero-wide-art::before{
    background-size:122%;
    background-position:center 36%;
    opacity:.14;
  }
}


/* === V43 · Logos institucionales integrados === */
.official-logos{
  justify-content:center;
}
.institutional-logos-strip{
  display:block;
  width:min(100%, 420px);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.10));
}
.footer-strip{
  width:min(100%, 300px);
  background:transparent !important;
  padding:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.partner-logo,
.imcufide-logo{
  display:none !important;
}
@media(max-width:850px){
  .institutional-logos-strip{
    width:min(100%, 300px);
  }
  .footer-strip{
    width:min(100%, 240px);
  }
}


/* === V44 · Afinación de detalles del hero === */
.hero-wide-art::before{
  background-image:url('hero_title_art.svg') !important;
  background-position:center 42% !important;
  background-size:min(1300px, 96%) !important;
  opacity:.21 !important;
  filter:
    brightness(1.03)
    contrast(1.03)
    blur(.04px)
    drop-shadow(0 5px 12px rgba(0,0,0,.04)) !important;
}

.countdown-raised{
  margin-top:14px !important;
  margin-bottom:18px;
}
.premium-countdown{
  order:4;
}
.official-logos{
  margin-top:2px;
}

.hero-logo-caption{
  margin:14px 4px 0;
}
.hero-pills{
  margin:16px 0 14px;
}

@media(max-width:1100px){
  .hero-wide-art::before{
    background-size:min(1140px, 108%) !important;
    background-position:center 44% !important;
    opacity:.19 !important;
  }
}
@media(max-width:850px){
  .hero-wide-art::before{
    background-size:132% !important;
    background-position:center 37% !important;
    opacity:.16 !important;
  }
  .countdown-raised{
    margin-top:12px !important;
    margin-bottom:16px;
  }
}


/* === V45 · Pulido final portada para prueba piloto === */
.hero-wide-art::before{
  background-image:url('hero_title_art.svg') !important;
  background-position:center 42% !important;
  background-size:min(1360px, 100%) !important;
  opacity:.20 !important;
  filter:
    brightness(1.02)
    contrast(1.04)
    blur(.03px)
    drop-shadow(0 4px 10px rgba(0,0,0,.04)) !important;
}

.final-hero-card{
  display:grid;
  gap:14px;
  padding:22px 22px 20px;
}

.countdown-raised{
  margin-top:8px !important;
  margin-bottom:2px !important;
}

.premium-countdown{
  grid-template-columns:repeat(4,1fr);
  gap:10px;
}
.premium-countdown div{
  background:rgba(6,23,16,.82) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:16px;
  padding:14px 10px;
}
.premium-countdown b{
  font-size:2rem;
  line-height:1;
  color:#fff;
}
.premium-countdown span{
  margin-top:6px;
  display:block;
  font-size:.72rem;
  color:#d6ddd8;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.compact-pills{
  margin:4px 0 2px !important;
}
.compact-pills span{
  padding:7px 12px;
  font-size:.78rem;
}

.official-logos{
  margin-top:4px !important;
}
.institutional-logos-strip{
  width:min(100%, 390px) !important;
  opacity:.98;
}

.hero-logo-shell-premium{
  padding:16px;
}
.hero-logo.premium{
  width:min(100%, 360px);
}

.hero-logo-caption,
.identity-manifesto,
.official-logo-legend,
.identity-kicker{
  display:none !important;
}

.hero-actions .btn{
  min-width:210px;
}
.btn{
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.btn:hover{
  transform:translateY(-1px);
}
.btn.primary:hover{
  box-shadow:0 14px 24px rgba(18,63,47,.24);
}
.btn.secondary:hover{
  box-shadow:0 12px 22px rgba(17,35,28,.08);
}

.section-head p{
  max-width:760px;
}

footer{
  padding:38px 0;
}
.footer-grid{
  gap:24px;
}

@media(max-width:1100px){
  .hero-wide-art::before{
    background-size:min(1180px, 110%) !important;
    background-position:center 44% !important;
    opacity:.18 !important;
  }
}
@media(max-width:850px){
  .hero-wide-art::before{
    background-size:136% !important;
    background-position:center 38% !important;
    opacity:.15 !important;
  }
  .final-hero-card{
    padding:20px 18px 18px;
  }
  .premium-countdown b{
    font-size:1.7rem;
  }
  .hero-actions .btn{
    min-width:unset;
    width:100%;
  }
}


/* === V46 · Leyenda restaurada y página más compacta === */

/* Restaurar la leyenda debajo del logo */
.hero-logo-caption.restored-caption{
  display:block !important;
  margin:10px auto 2px !important;
  max-width:520px;
  text-align:center;
  line-height:1.45;
  color:#edf2ee;
  font-size:.92rem;
  font-weight:500;
}
.hero-logo-caption.restored-caption strong{
  color:#efd18a;
  font-weight:800;
}

/* Compactar la portada */
.hero-grid{
  padding-top:58px !important;
  padding-bottom:62px !important;
  gap:48px !important;
}
.hero-actions{
  margin:22px 0 !important;
}
.event-meta{
  margin-top:26px !important;
}
.final-hero-card{
  gap:10px !important;
  padding:20px !important;
}
.hero-logo-shell-premium{
  padding:12px !important;
}
.hero-logo.premium{
  width:min(100%,340px) !important;
}
.compact-pills{
  margin:2px 0 0 !important;
}
.countdown-raised{
  margin-top:6px !important;
  margin-bottom:0 !important;
}
.official-logos{
  margin-top:0 !important;
}

/* Menos espacio entre secciones */
.section{
  padding:58px 0 !important;
}
.section-head{
  margin-bottom:20px !important;
}
.section-head h2{
  margin-top:6px !important;
  margin-bottom:4px !important;
}
.cards3{
  gap:14px !important;
}
.info-card,
.form-card,
.distance-card,
.result-card,
.document-card{
  padding:20px !important;
}
.distance-grid{
  gap:14px !important;
  margin-bottom:14px !important;
}
.distance-card.minimal{
  padding:24px 20px !important;
}
.distance-card.minimal h3{
  margin:10px 0 6px !important;
}
.form-grid{
  gap:13px !important;
}
.summary-box{
  margin:16px 0 !important;
  gap:10px !important;
}
.documents-box{
  margin:16px 0 !important;
  padding:15px !important;
}
.legal-actions{
  margin-top:12px !important;
}
.infant-free-notice{
  margin:14px 0 !important;
  padding:14px 16px !important;
}
.check{
  margin:14px 0 !important;
}
.kit-info{
  margin-top:16px !important;
}
.kit-list{
  gap:10px !important;
  margin-top:12px !important;
}
.kit-list div{
  padding:13px !important;
}
.kit-note{
  margin-top:14px !important;
  padding:14px !important;
}
.search-box{
  margin-top:4px;
}
.result-card{
  margin-top:14px !important;
}
footer{
  padding:28px 0 !important;
}

/* Ajustes responsivos */
@media(max-width:850px){
  .hero-grid{
    padding-top:34px !important;
    padding-bottom:40px !important;
    gap:30px !important;
  }
  .section{
    padding:42px 0 !important;
  }
  .final-hero-card{
    padding:17px !important;
  }
  .hero-logo-caption.restored-caption{
    font-size:.88rem;
    line-height:1.4;
  }
}


/* === V48 · Letras de fondo rellenas === */
.hero-wide-art::before{
  background-image:url('hero_title_art.svg') !important;
  opacity:.24 !important;
  filter:
    brightness(1.02)
    contrast(1.03)
    blur(.02px)
    drop-shadow(0 4px 10px rgba(0,0,0,.03)) !important;
}
@media(max-width:1100px){
  .hero-wide-art::before{
    opacity:.21 !important;
  }
}
@media(max-width:850px){
  .hero-wide-art::before{
    opacity:.18 !important;
  }
}

/* === V53 · Datos bancarios oficiales y soporte === */
.support-strip{padding-top:24px !important}
.support-card{
  background:#fffdf9;
  border:1px solid var(--line);
  border-radius:18px;
  padding:20px;
}
.support-card h3{margin:7px 0 6px}
.support-card p{margin:0;color:var(--muted)}
.support-card a{color:var(--accent);font-weight:800;text-decoration:none}
.bank-box b{word-break:break-word}

/* Admin modal ghost buttons */
dialog .btn.ghost{color:var(--accent);border:1px solid #d8caa8;background:#fffaf0;}
dialog .btn.ghost:hover{background:#fff4dc;}

.badge.delivered{background:#dff3e7;color:#145c36;border-color:#bfe5cd}
