/* NOVA: una atmósfera de luz suave, con identidad propia. */
body{background:#f8f2f5;background-image:radial-gradient(ellipse at 8% 3%,#f1b6cb42,transparent 37%),radial-gradient(ellipse at 95% 24%,#de71991a,transparent 34%)}
.hero{position:relative;isolation:isolate}
.hero:before{content:'';position:absolute;z-index:-1;inset:-60px -20px -30px;background:radial-gradient(ellipse at 76% 40%,#de71992e,transparent 48%),radial-gradient(ellipse at 10% 70%,#f1b6cb45,transparent 44%);filter:blur(12px);animation:nova-atmosphere 14s ease-in-out infinite alternate;pointer-events:none}
.hero:after{content:'';position:absolute;z-index:-1;width:420px;height:420px;border:1px solid #c44f7c12;border-radius:50%;right:20px;top:40px;box-shadow:0 0 0 55px #c44f7c04,0 0 0 110px #c44f7c03;pointer-events:none}
.art-panel{background:radial-gradient(ellipse at 15% 0%,#79507170,transparent 64%),linear-gradient(145deg,#3a2a43,#241b29 72%);border:1px solid #b889ad30;box-shadow:0 35px 75px #43263c25,inset 0 1px 0 #ffffff15}
.art-panel:before{content:'';position:absolute;inset:-70%;background:conic-gradient(from 30deg,transparent 0deg,#f1b6cb0d 55deg,transparent 100deg,#de71990a 190deg,transparent 250deg);animation:nova-light 25s linear infinite;pointer-events:none}
.art-panel>img,.art-panel>span,.art-panel>p{position:relative;z-index:1}
.orb.one{background:radial-gradient(circle at 30% 25%,#fbe2ec,#e7a0bd);box-shadow:0 12px 35px #c44f7c1a;animation:nova-float 8s ease-in-out infinite alternate}
.orb.two{background:radial-gradient(circle at 35% 20%,#efc6dc,#de719946);animation:nova-float 11s ease-in-out infinite alternate-reverse}
.art-tag{border:1px solid #ffffffb0;box-shadow:0 17px 38px #3b243925;backdrop-filter:blur(10px)}
.programs{background:radial-gradient(ellipse at 100% 0%,#e8bacf60,transparent 55%),linear-gradient(135deg,#f2e8ef,#eee0e9 65%,#f4e6ed)}
.program-card{transition:transform .3s ease,box-shadow .3s ease}
.program-card:hover{transform:translateY(-5px);box-shadow:0 24px 55px #51394c14}
.program-card.dark{background:radial-gradient(ellipse at 100% 0%,#7449664a,transparent 65%),#241b29}
.contact{background:radial-gradient(ellipse at 100% 0%,#f9e6eea0,transparent 70%),linear-gradient(125deg,#f1dce6,#ebcbdc);box-shadow:0 22px 55px #6a375414;border:1px solid #ffffff6b}
.nova-brand{display:inline-flex;align-items:center;gap:13px;vertical-align:middle;min-width:160px}
.nova-brand>.nova-spin-symbol{display:block;width:45px;height:45px;object-fit:contain;flex:none;transform-origin:center;will-change:auto}
.nova-brand-words{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.nova-brand-words strong{font-family:'Manrope',Arial,sans-serif;font-size:25px;line-height:1;font-weight:800;letter-spacing:1px;color:#241b29}
.nova-brand-words>span{font-family:'DM Sans',Arial,sans-serif;font-size:8px;line-height:1;letter-spacing:3px;color:#756174}
.nova-is-spinning{animation:nova-logo-turn 1.05s cubic-bezier(.22,.7,.2,1) 1!important}
@keyframes nova-logo-turn{0%{transform:perspective(500px) rotateY(0deg) rotateZ(0deg);filter:drop-shadow(0 0 0 #de719900)}28%{transform:perspective(500px) rotateY(120deg) rotateZ(-9deg) scale(1.12);filter:drop-shadow(0 5px 8px #c44f7c55)}70%{transform:perspective(500px) rotateY(310deg) rotateZ(5deg) scale(1.06)}100%{transform:perspective(500px) rotateY(360deg) rotateZ(0deg);filter:drop-shadow(0 0 0 #de719900)}}
@keyframes nova-atmosphere{from{transform:translate(0,0) scale(1);opacity:.7}to{transform:translate(10px,15px) scale(1.04);opacity:1}}
@keyframes nova-light{to{transform:rotate(360deg)}}
@keyframes nova-float{to{transform:translate(0,-12px)}}
@media(max-width:800px){.nova-brand{min-width:126px;gap:9px}.nova-brand>.nova-spin-symbol{width:36px;height:36px}.nova-brand-words strong{font-size:20px}.nova-brand-words>span{font-size:6px;letter-spacing:2.6px}.hero:before{inset:0}.hero:after{width:240px;height:240px;right:10px;top:65px}}
@media(prefers-reduced-motion:reduce){.hero:before,.art-panel:before,.orb{animation:none!important}.program-card:hover{transform:none}}

