.welcome{position:relative;isolation:isolate;background:#f7f7f2;min-height:100svh;padding:0;overflow:hidden;color:#152b49}
.hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;opacity:.65;animation:background-reveal 2.5s ease-out both;transform-origin:center}
@keyframes background-reveal{from{opacity:0;transform:scale(1.035)}to{opacity:.65;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.hero-background{animation:none;transform:none}}
.welcome::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(250,250,247,.4035) 0%,rgba(250,250,247,.342) 52%,rgba(250,250,247,.15825) 100%)}
.hero-content{min-height:100svh;max-width:520px;margin:auto;padding:clamp(18px,4svh,36px) 26px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(12px,2.2svh,22px)}
.association{font-size:clamp(11px,1.9svh,14px);font-weight:600;line-height:1.5;color:#536279;letter-spacing:.15px;margin:0}
.event-symbol{display:block;width:auto;height:clamp(48px,10svh,80px);object-fit:contain;margin-top:clamp(0px,1svh,8px)}
.event-heading{margin:0}
.workshop-edition{font-size:clamp(11px,2svh,15px);font-weight:700;letter-spacing:2px;color:#b86b0b;line-height:1.4;margin:0 0 10px}
.event-heading h1{display:flex;flex-direction:column;font-size:clamp(28px,min(8vw,5.8svh),46px);font-weight:800;line-height:1.05;letter-spacing:-1.3px;margin:0;color:#152b49}
.event-heading h1 strong{font-size:inherit;color:#0053a7;margin-top:4px;letter-spacing:1px;font-weight:800}
/* Adapted from Uiverse.io by dexter-st, in the congress green. */
.btn-wrapper{position:relative;isolation:isolate;width:100%;max-width:280px;margin:4px auto}
.welcome .explore.btn{position:relative;--highlight-color:#77f0aa;background:#008d49;border:1px solid #008d49;border-radius:14px;gap:9px;box-shadow:0 5px 14px #006b3520;transition:background .4s,border-color .4s,box-shadow .4s}
.welcome .explore.btn::before{content:none}
.welcome .explore.btn::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(0deg,#fff,var(--highlight-color),#77f0aa80 8%,transparent 45%);opacity:0;transition:opacity .4s;mask-image:linear-gradient(0deg,#fff,transparent)}
.btn .txt-wrapper{display:flex;align-items:center;white-space:nowrap;position:relative}
.btn .btn-letter{display:inline-block;color:#ffffffe0;animation:explore-letter 2s ease-in-out infinite;animation-delay:var(--letter-delay);transition:color .4s,text-shadow .4s}
.btn .btn-space{width:.3em}
.btn .btn-svg{width:24px;height:24px;flex-shrink:0;fill:#f3fff8;animation:explore-flicker 2s linear infinite;animation-delay:.5s;filter:drop-shadow(0 0 2px #fff8)}
@keyframes explore-letter{50%{color:#fff;text-shadow:0 0 3px #fff9}}
@keyframes explore-flicker{50%{opacity:.55}}
.welcome .explore.btn:hover{background:#007d40;border-color:#77f0aa99}
.welcome .explore.btn:hover::after,.welcome .explore.btn:focus-visible::after{opacity:.18}
.welcome .explore.btn:hover::before{box-shadow:0 -8px 8px -6px #fffa inset,0 -16px 16px -8px #77f0aa50 inset}
.welcome .explore.btn:focus-visible{outline:3px solid #0053a7;outline-offset:7px}
.welcome .explore.btn:active{background:#006e38;border-color:#a5ffd0}
.welcome .explore.btn:active::after{opacity:1}
@media(prefers-reduced-motion:reduce){.btn .btn-letter,.btn .btn-svg{animation:none}.welcome .explore.btn,.welcome .explore.btn::before,.welcome .explore.btn::after{transition:none}}
.brand-dots{display:none}
.event-date{font-size:clamp(15px,2.6svh,20px);font-weight:700;color:#152b49;line-height:1.3;margin:0;padding:0;background:none;border-radius:0}
.event-date span{font-size:.8em;letter-spacing:.7px}
.event-city{display:flex;align-items:center;justify-content:center;gap:6px;font-size:clamp(13px,2.2svh,16px);font-weight:500;color:#536279;line-height:1.2;margin:-6px 0 0;text-shadow:none}
.city-icon{display:block;width:18px;height:18px;object-fit:contain;flex-shrink:0}
.host{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:clamp(0px,1svh,8px);padding-top:0}
.host-caption{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;color:#667385;padding:0;background:none}
.host-logo{display:block;width:auto;height:clamp(56px,11svh,90px);max-width:180px;object-fit:contain;filter:none}
.hero-action{width:100%;max-width:360px;margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:8px}
.welcome .explore{position:static;inset:auto;display:flex;align-items:center;justify-content:center;width:100%;height:auto;min-height:44px;padding:10px 16px;gap:9px;border-radius:16px;background:#008d49;color:#fff;font-size:16px;font-weight:700;text-shadow:none;box-shadow:0 7px 22px #008d4925;animation:none}
.welcome .explore:hover{background:#007d40}.welcome .explore>.txt-wrapper{margin:0;font-size:16px}
.explore-icon{width:auto;height:clamp(32px,7svh,55px);display:block;object-fit:contain;flex-shrink:0}
.hero-action p{font-size:12px;font-weight:600;line-height:1.5;color:#152b49;margin:0;padding:7px 12px;border-radius:10px;background:rgba(255,255,255,.9);max-width:100%}
@media(min-width:720px){.hero-content{min-height:min(880px,calc(100svh - 56px));padding:32px 46px;gap:22px}.hero-background{opacity:.13}}
@media(max-height:590px) and (max-width:719px){.hero-content{padding:12px 22px;gap:9px}.event-symbol{height:40px}.event-heading h1{font-size:27px}.workshop-edition{margin-bottom:6px;font-size:10px}.host-logo{height:49px}.host{gap:4px}.hero-action p{font-size:10px;margin-top:6px}.welcome .explore{min-height:44px;padding:8px 16px}}
@media(max-height:420px) and (orientation:landscape){.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;align-content:center;max-width:680px}.association{grid-column:1 / -1}.event-symbol{display:none}.event-heading{grid-column:1;grid-row:2 / 5}.host{padding:0;margin:0}.host-logo{height:45px}.hero-action{grid-column:1 / -1;margin:auto}.hero-action p{display:none}}
