/* Entrada por vista y escenas: las transformaciones pertenecen a sus propias capas. */
html.adn-page-pending :is(main,.header,.footer){visibility:hidden}
.adn-js .contact-step[hidden],.adn-js [hidden]{display:none!important}
.adn-reveal{opacity:0;translate:0 24px;filter:blur(3px);transition:opacity .8s cubic-bezier(.16,1,.3,1),translate .95s cubic-bezier(.16,1,.3,1),filter .8s;transition-delay:var(--entrance-delay,0ms)}
.adn-reveal.adn-revealed{opacity:1;translate:0 0;filter:blur(0)}
body.adn-leaving main{opacity:0;translate:0 -12px;transition:opacity .18s,translate .18s}
.header.adn-header-enter{animation:adn-header-in .75s cubic-bezier(.16,1,.3,1) both}
@keyframes adn-header-in{from{opacity:0;translate:0 -18px}to{opacity:1;translate:0 0}}
.hero{isolation:isolate}.hero-art .hero-dna-live{position:absolute;inset:0;width:100%;height:100%;z-index:1}.hero-art.dna-running>img{opacity:0!important}.hero-art.dna-running .orbit{display:none}.hero-art{will-change:auto}.hero.dna-pulse .hero-aura{animation:adn-aura-wave 1.5s ease-out}
@keyframes adn-aura-wave{0%{opacity:.5;scale:.9}35%{opacity:1;scale:1.2}100%{opacity:.5;scale:1}}
/* Formulario compacto. Los iconos tienen una caja propia: nunca giran el ancho de la ficha. */
.site-contact .v-wrap{max-width:1100px}.site-contact .v-page-head{padding-top:28px;padding-bottom:24px}.site-contact .v-page-head h1{font-size:clamp(30px,3.3vw,42px);margin:0}.site-contact .v-page-head p{margin-top:8px;font-size:16px}
.contact-experience{grid-template-columns:185px minmax(0,1fr);align-items:start;overflow:clip;box-shadow:0 12px 40px #1f1f1f08}
.contact-progress{align-self:stretch;padding:24px 18px;gap:12px}.contact-progress button{transition:color .25s,opacity .25s}.contact-progress button span{transition:background .3s,color .3s,box-shadow .3s}.contact-progress [aria-current=step] span{box-shadow:0 0 0 5px #d7263812}
#advanced-contact{padding:28px 32px;overflow:clip}.contact-step{animation:none!important;transform:none;min-width:0;position:relative}.contact-step h2{font-size:clamp(25px,2.5vw,32px);margin-bottom:18px}.contact-step .v-eyebrow{margin-bottom:12px}.contact-step>label:not(.site-meeting-toggle){margin-top:16px}.contact-controls{margin-top:22px}
.need-cards{gap:12px}.need-card{padding:16px!important;min-height:145px;overflow:hidden;isolation:isolate;border-width:1px!important;box-shadow:inset 0 0 0 0 #d72638;transition:border-color .25s,background .25s,box-shadow .25s,transform .3s}.need-card:has(input:checked){box-shadow:inset 0 0 0 1px #d72638}.need-card .need-icon{position:relative;inset:auto;display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;align-self:flex-start;font-size:28px;line-height:1;transform-origin:50% 50%;margin:0 0 3px;contain:layout paint}.need-card>span:last-child{font-size:14px;line-height:1.5}.need-card strong{font-size:16px;padding-right:12px}.need-card input{z-index:1}.need-card:focus-within{outline-offset:-3px}
.contact-dna{right:-20px;opacity:.1;width:130px;z-index:-1}.contact-step .v-button{margin-top:16px}.site-meeting-toggle{padding:14px;border:1px solid #aaa;border-radius:7px;background:#fafafa;margin:18px 0 10px;cursor:pointer;transition:background .25s,border-color .25s}.site-meeting-toggle:has(input:checked){border-color:#d72638;background:#fff5f6}.site-meeting-toggle input{flex:none;cursor:pointer}.contact-summary{margin:18px 0 12px;padding-top:12px}.calendar-days button,.calendar-hours button{transition:background .2s,scale .2s,border-color .2s}.calendar-days button:active:not(:disabled),.calendar-hours button:active{scale:.92}
@media(max-width:800px){.contact-experience{grid-template-columns:1fr}.contact-progress{padding:12px;gap:8px}.contact-progress button{min-width:90px;font-size:12px}#advanced-contact{padding:24px}.site-contact .v-page-head{padding-top:20px}}
@media(max-width:480px){#advanced-contact{padding:20px 16px}.need-cards{grid-template-columns:1fr 1fr;gap:9px}.need-card{padding:12px!important;min-height:158px}.need-card strong{font-size:15px}.need-card>span:last-child{font-size:13px}.need-card input{right:9px;top:10px}.site-contact .v-page-head p{font-size:15px}.contact-progress{gap:4px}.contact-progress button{min-width:76px;gap:6px}.contact-progress span{width:24px;height:24px}.site-meeting-toggle{font-size:15px}.contact-step h2{font-size:25px}.adn-reveal{translate:0 16px;filter:none}}
@media(prefers-reduced-motion:reduce){html.adn-page-pending main{visibility:visible}.adn-reveal{opacity:1;translate:none;filter:none;transition:none}.header.adn-header-enter,.hero.dna-pulse .hero-aura{animation:none}body.adn-leaving main{opacity:1;translate:none}.need-card,.need-icon{transition:none!important;transform:none!important}}

.adn-js body .adn-reveal:not(.adn-revealed){opacity:0;translate:0 24px;filter:blur(3px)}
.adn-js body .adn-reveal.adn-revealed{opacity:1;translate:0 0;filter:blur(0)}
@media(prefers-reduced-motion:reduce){.adn-js body .adn-reveal:not(.adn-revealed){opacity:1;translate:none;filter:none}}
@media(max-width:800px){.contact-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;gap:6px}.contact-progress button{flex-direction:column;justify-content:flex-start;align-items:center;min-width:0;gap:7px;padding:4px 0;text-align:center;font-size:11px;line-height:1.25}.contact-progress button span{flex:none}}
