*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:Inter,Helvetica Neue,Arial,sans-serif;background:#fff;color:#000;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,video{display:block;max-width:100%}.candidate-card{position:relative;overflow:hidden;background:transparent}.candidate-media{position:relative;width:100%;aspect-ratio:3 / 4;overflow:hidden;background:transparent}.candidate-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:2;opacity:1;transition:opacity 1.2s ease-in-out}.candidate-video.fade-out{opacity:0}.candidate-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;opacity:0;transition:opacity 1.2s ease-in-out}.candidate-image.fade-in{opacity:1}.campaign-points{max-width:900px;margin:0 auto;padding:6rem 2rem 8rem;display:flex;flex-direction:column;gap:3rem}.campaign-point{font-size:clamp(1.4rem,4vw,2.8rem);text-transform:uppercase;letter-spacing:.04em;color:#000;line-height:1.2;font-weight:400;font-style:normal;opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease,font-weight .6s ease,font-style .3s ease}.campaign-point.visible{font-weight:900;font-style:italic;opacity:1;transform:translateY(0)}.app{min-height:100vh}.landing{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;gap:3rem}.candidates-row{display:flex;justify-content:center;align-items:flex-end;gap:2rem;width:100%;max-width:1100px}.candidates-row>*{flex:1;min-width:0;max-width:260px}.slogan{font-size:clamp(2rem,6vw,4.5rem);font-weight:900;font-style:italic;text-transform:uppercase;letter-spacing:.08em;margin:0;color:#000;text-align:center}@media(max-width:600px){.candidates-row{flex-direction:column;align-items:center}.candidates-row>*{max-width:220px}}
