:root{--blue:#286e85;--deep:#174e70;--orange:#57a4ae;--ink:#244655;--muted:#526f78;--pale:#eef7f8;--line:#c9e1e5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:17px/1.6 system-ui,-apple-system,Segoe UI,Arial,sans-serif}a{color:var(--blue)}a:focus-visible,.menu-button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.header{position:sticky;top:0;z-index:10;background:#fff;box-shadow:0 2px 20px #123b6017}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative}.brand img{display:block;width:120px;max-height:58px;object-fit:contain}.header nav{display:flex;align-items:center;gap:clamp(12px,1.5vw,24px)}.header nav a{text-decoration:none;color:var(--deep);font-size:14px;font-weight:700;white-space:nowrap}.header nav a:hover{text-decoration:underline}.menu-toggle,.menu-button{display:none}.hero{background:var(--pale)}.hero img{display:block;width:100%;max-width:100%;height:auto}.section{padding:80px 0}.section-tint{background:var(--pale)}h2,h3{line-height:1.18;color:var(--deep);margin:0 0 22px}h2{font-size:clamp(28px,3vw,40px)}h3{font-size:23px}p{margin:0 0 17px}p:last-child{margin-bottom:0}.actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:40px}.button{display:flex;align-items:center;justify-content:center;padding:18px 19px;background:var(--orange);border-radius:7px;text-decoration:none;color:#fff;font-weight:800;line-height:1.4;box-shadow:0 5px 13px #824e001a;font-size:14px;text-align:center;min-height:76px}.button:hover{background:#377f8e}.button-program{background:var(--deep);color:#fff}.button-program:hover{background:var(--blue)}.program-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.day-panel{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 26px #123b6010;min-width:0}.day-heading{background:var(--deep);color:#fff;padding:25px 28px;margin:0;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:28px}.day-heading .date{font-size:17px;font-weight:500;color:#e2edf5}.sessions{padding:6px 28px}.session{padding:24px 0;border-bottom:1px solid var(--line)}.session:last-child{border:0}.session-time{display:inline-block;font-size:14px;font-weight:800;color:var(--blue);background:var(--pale);border-radius:5px;padding:4px 10px;margin-bottom:12px}.session h3{font-size:21px;margin:0 0 11px;border-left:4px solid var(--orange);padding-left:13px}.session h3:last-child{margin-bottom:0}.session p{font-size:15px;line-height:1.7}.session-content{overflow-wrap:anywhere}.venue-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:center}.venue-grid p{font-size:20px}.venue-grid iframe{width:100%;height:360px;border:0!important;border-radius:12px;box-shadow:0 8px 25px #123b6018}.sponsor-group{margin-top:35px}.sponsor-group h3{font-size:23px;border-left:4px solid var(--orange);padding-left:14px}.sponsors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.sponsors>div{background:#fff;border:1px solid var(--line);min-height:150px;border-radius:12px;display:flex;align-items:center;justify-content:center;padding:25px}.sponsors a{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.sponsors img{max-width:80%;max-height:100px;object-fit:contain}.contact-card h2{margin-bottom:25px}.contact-card a{overflow-wrap:anywhere}.back-top{position:fixed;bottom:22px;right:22px;z-index:9;width:49px;height:49px;border-radius:50%;background:var(--blue);color:#fff;text-decoration:none;box-shadow:0 5px 15px #123b6040;font-size:29px;font-weight:700;line-height:45px;text-align:center}.back-top:hover{background:var(--deep)}footer{height:30px;background:var(--deep)}@media(max-width:1050px){.header{position:relative}.header-inner{min-height:68px;padding:12px 0}.brand img{width:95px}.menu-toggle{display:block;position:absolute;right:0;width:45px;height:44px;opacity:0;z-index:2;cursor:pointer;margin:0}.menu-button{display:flex;justify-content:center;align-items:center;width:45px;height:44px;border-radius:6px;background:var(--blue);color:#fff;font-size:26px;line-height:1;cursor:pointer}.menu-toggle:focus-visible+.menu-button{outline:3px solid var(--orange);outline-offset:4px}.header nav{display:none;position:absolute;top:100%;right:0;width:min(300px,calc(100vw - 40px));background:#fff;box-shadow:0 10px 24px #123b6033;border-radius:8px;padding:10px 18px;z-index:20}.menu-toggle:checked~nav{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav a{padding:9px 0;border-bottom:1px solid var(--line)}.header nav a:last-child{border:0}.actions{grid-template-columns:repeat(2,minmax(0,1fr))}.section{padding:58px 0}}@media(max-width:750px){.program-grid,.venue-grid{grid-template-columns:minmax(0,1fr)}.venue-grid iframe{height:300px}.sessions{padding:6px 23px}.day-heading{padding:23px;font-size:27px}.sponsors{gap:12px}.sponsors>div{padding:15px;min-height:120px}.sponsors img{max-width:100%;max-height:80px}}@media(max-width:480px){.wrap{width:calc(100% - 30px)}.section{padding:42px 0}.actions{grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:30px}.button{min-height:56px;padding:17px 18px}.day-heading{font-size:25px}.day-heading .date{font-size:15px}.session h3{font-size:20px}.sponsors{grid-template-columns:minmax(0,1fr)}.sponsors>div{min-height:135px}.sponsors img{max-width:75%;max-height:90px}.back-top{right:15px;bottom:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Tipografía del banner como texto real, nítida a cualquier escala. */
.hero{position:relative}.hero-congress{position:absolute;left:25.05%;top:34.4%;width:17.65%;height:14.7%;background:#89babc;color:#fff;display:flex;align-items:center;padding-left:.55%;font-family:Arial,sans-serif;font-weight:800;font-size:2.55vw;line-height:1;white-space:nowrap}.hero-date{position:absolute;right:0;top:0;width:12.8%;height:100%;background:#abd6d8;color:#286e85;padding:8.5% 1.45% 0;font-family:Arial,sans-serif;line-height:1.14}.hero-date .event-date{font-size:1.55vw;font-weight:600;margin:0 0 .7vw}.hero-date .event-venue{font-size:.95vw;line-height:1.15;font-weight:800;margin:0}.hero-date p{white-space:nowrap}

/* Cubrir por completo el rótulo impreso y separar el plazo del botón. */
.hero-congress{left:24.65%;top:33.7%;width:18.4%;height:15.8%;padding-left:.9%;background:#89babc}
.actions .button:first-child{flex-direction:column;gap:4px}.action-label{font-size:14px;font-weight:800}.action-deadline{font-size:12px;font-weight:500;line-height:1.3}

.hero-congress{margin:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.hero-congress{font-size:2.1vw;left:24.65%;top:33.7%;width:18.4%;height:15.8%;padding:0 .6%;justify-content:flex-start;white-space:nowrap;line-height:1;overflow:hidden}

/* El borde del rótulo acompaña el arco del semicírculo original. */
.hero-congress{left:0;width:43.05%;padding-left:25.25vw;padding-right:.6vw;clip-path:polygon(57.07% 0,100% 0,100% 100%,58.44% 100%,58.37% 85%,58.23% 70%,58.03% 55%,57.77% 40%,57.45% 20%);overflow:hidden}

.welcome-speakers .welcome-person{display:block;margin-top:16px}.welcome-speakers .welcome-person:first-child{margin-top:0}.welcome-speakers>br{display:none}.welcome-speakers strong{color:var(--deep);font-weight:800}.welcome-speakers em{display:block;margin-top:4px;color:var(--muted);font-style:italic;line-height:1.6}

/* Bloques del programa preliminar actualizado. */
.program-part {
  margin: 24px 0 8px;
  padding-top: 14px;
  border-top: 1px solid var(--line, #d8e5ed);
  color: var(--blue, #326f83);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.4;
}
