/* Shared, accessible attendee registration; independent of each page's styles. */
body{padding-bottom:110px!important}
html{scroll-padding-bottom:120px}
@media(min-width:701px){[data-shell]{height:calc(100dvh - 96px)!important}}
a.c2-register-button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:56px;padding:16px 25px;border:1px solid #70efff;border-radius:14px;background:linear-gradient(110deg,#64edff,#bba0ff);color:#071221!important;font:800 16px/1.3 'Space Grotesk',system-ui,sans-serif;text-decoration:none!important;text-align:center;letter-spacing:0;box-shadow:0 5px 24px #48c7ef24;white-space:normal;transition:transform .18s,box-shadow .18s}
a.c2-register-button:hover{transform:translateY(-2px);box-shadow:0 8px 28px #48c7ef40}
a.c2-register-button:focus-visible{outline:3px solid #fff;outline-offset:4px}
.c2-register-dock{box-sizing:border-box;position:fixed;left:0;right:0;bottom:0;z-index:800;display:flex;align-items:center;justify-content:center;gap:32px;padding:14px max(20px,env(safe-area-inset-right)) calc(14px + env(safe-area-inset-bottom));background:#080e20f5;border-top:1px solid #64edff50;box-shadow:0 -8px 30px #0003;backdrop-filter:blur(14px)}
.c2-register-dock-copy{display:flex;flex-direction:column;gap:5px;color:#fff;font:700 17px/1.3 'Space Grotesk',system-ui,sans-serif}
.c2-register-dock-copy small{color:#c0cbe4;font-size:13px;font-weight:400}
.c2-register-panel{box-sizing:border-box;max-width:1120px;margin:48px auto;padding:36px clamp(20px,4vw,48px);display:flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid #64edff50;border-radius:24px;background:linear-gradient(120deg,#102641,#201a3d);color:#fff;font-family:'Space Grotesk',system-ui,sans-serif}
.c2-register-panel h2{margin:0 0 8px;font-size:clamp(24px,4vw,34px);line-height:1.15;color:#fff}
.c2-register-panel p{margin:0;font-size:16px;line-height:1.6;color:#d4def3}
.c2-register-panel a{flex-shrink:0}
.c2-register-mobile{margin:8px 0 18px}
.cfp-registration-note{color:#d4def3;font-size:15px;line-height:1.6;text-align:center;max-width:640px}
.btn-estelas{bottom:112px!important}
@media(max-width:1400px){a.c2-register-header{display:none}}
@media(max-width:700px){
 body{padding-bottom:132px!important}
 .c2-register-dock{flex-direction:column;gap:8px;padding:10px 16px calc(10px + env(safe-area-inset-bottom))}
 .c2-register-dock-copy{font-size:13px;flex-direction:row;align-items:center;gap:8px}
 .c2-register-dock-copy small{font-size:11px}
 .c2-register-dock .c2-register-button{width:100%;min-height:56px;font-size:16px;padding:14px 12px}
 .c2-register-panel{margin:32px 16px;padding:28px 20px;flex-direction:column;align-items:stretch;text-align:center}
 .c2-register-panel a{width:100%}
 .btn-estelas{bottom:132px!important}
}
@media(prefers-reduced-motion:reduce){a.c2-register-button{transition:none}a.c2-register-button:hover{transform:none}}

/* General contact is separate from event registration. */
.site-contact-strip{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:24px;width:calc(100% - 32px);max-width:1120px;margin:0 auto 32px;padding:24px;border:1px solid #58627c;border-radius:18px;background:#10192b;color:#eef3ff;grid-column:1/-1;font-family:'Space Grotesk',system-ui,sans-serif;text-align:left}
.site-contact-strip strong{display:block;font-size:20px;line-height:1.3;color:#fff}
.site-contact-strip p{margin:7px 0 0;font-size:14px;line-height:1.6;color:#c5cee3}
a.site-contact-button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:10px;flex-shrink:0;min-height:52px;padding:14px 22px;border:1px solid #91e8f9;border-radius:12px;background:#142c40;color:#b4f3ff!important;font:700 15px/1.4 'Space Grotesk',system-ui,sans-serif;text-align:center;text-decoration:none!important}
a.site-contact-button:hover{background:#1c3d55}
a.site-contact-button:focus-visible{outline:3px solid #fff;outline-offset:4px}
.site-contact-footer{padding:24px 0;background:#080e20}
@media(max-width:700px){.site-contact-strip{flex-direction:column;align-items:stretch;gap:18px;padding:22px}.site-contact-strip a{width:100%}}
