*{margin:0;padding:0;box-sizing:border-box}body{font-family:Arial,sans-serif;background:linear-gradient(135deg,#4a9b8e,#5bb3a6);min-height:100vh;display:flex;justify-content:center;align-items:center;padding:20px}.card{width:100%;max-width:350px;min-height:550px;border-radius:20px;position:relative;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,.3);transition:transform .3s ease,box-shadow .3s ease}.card:hover{transform:translateY(-10px);box-shadow:0 30px 60px rgba(0,0,0,.4)}.card-front{background:linear-gradient(135deg,#4a9b8e,#5bb3a6 50%,#6bc5b8);position:relative;width:100%;min-height:550px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:40px;color:white}.bg-shape{position:absolute;border-radius:50%;opacity:.3;animation:float 6s ease-in-out infinite}.bg-shape-1{width:120px;height:120px;background:linear-gradient(45deg,#ffffff,#e0f2f1);top:-60px;left:-60px}.bg-shape-2{width:80px;height:80px;background:linear-gradient(45deg,#ffffff,#b2dfdb);top:20%;right:-40px;animation-delay:2s}.bg-shape-3{width:60px;height:60px;background:linear-gradient(45deg,#e0f2f1,#80cbc4);bottom:20%;left:-30px;animation-delay:4s}.bg-shape-4{width:100px;height:100px;background:linear-gradient(45deg,#b2dfdb,#4db6ac);bottom:-50px;right:-50px;animation-delay:1s}.dots{position:absolute;width:40px;height:40px;opacity:.4}.dots:after,.dots:before{content:"";position:absolute;width:4px;height:4px;background:#ffffff;border-radius:50%;animation:blink 3s infinite}.dots:before{top:0;left:0}.dots:after{bottom:0;right:0;animation-delay:1.5s}.dots-1{top:20%;left:10%}.dots-2{top:40%;right:10%}.dots-3{bottom:30%;left:20%}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(180deg)}}@keyframes blink{0%,to{opacity:.2}50%{opacity:1}}.logo{position:relative;z-index:10;margin-bottom:20px}.logo img{display:block;width:220px;height:auto}.contact-info{flex-direction:column;width:100%;z-index:10}.contact-info,.contact-item{display:flex;position:relative}.contact-item{align-items:center;gap:15px;font-size:16px;color:#ffffff;font-weight:300;text-decoration:none;padding:10px 5px;border-radius:12px;transition:all .3s ease;overflow:hidden;word-break:break-word}.contact-item:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.contact-item:hover:before{left:100%}.contact-item:focus-visible,.contact-item:hover{transform:translateX(8px)}.contact-item:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.contact-item:hover .contact-icon{transform:scale(1.2) rotate(5deg);filter:brightness(1.2)}.contact-item:hover span{text-shadow:0 0 10px rgba(255,255,255,.3)}.contact-item.phone:hover .contact-icon{animation:ring .5s ease-in-out}.contact-item.whatsapp:hover .contact-icon{animation:bounce .6s ease-in-out}.contact-item.email:hover .contact-icon{animation:envelope .7s ease-in-out}.contact-item.instagram:hover .contact-icon{animation:camera .5s ease-in-out}.contact-item.website:hover .contact-icon{animation:globe .8s ease-in-out}.contact-item.address:hover .contact-icon{animation:pin .6s ease-in-out}@keyframes ring{0%,to{transform:scale(1.2) rotate(0deg)}25%{transform:scale(1.3) rotate(-5deg)}75%{transform:scale(1.3) rotate(5deg)}}@keyframes bounce{0%,to{transform:scale(1.2) translateY(0)}50%{transform:scale(1.3) translateY(-3px)}}@keyframes envelope{0%,to{transform:scale(1.2) rotateY(0deg)}50%{transform:scale(1.3) rotateY(15deg)}}@keyframes camera{0%,to{transform:scale(1.2) rotate(0deg)}50%{transform:scale(1.3) rotate(10deg)}}@keyframes globe{0%,to{transform:scale(1.2) rotate(0deg)}25%{transform:scale(1.25) rotate(90deg)}50%{transform:scale(1.3) rotate(180deg)}75%{transform:scale(1.25) rotate(270deg)}}@keyframes pin{0%,to{transform:scale(1.2) translateY(0)}25%{transform:scale(1.3) translateY(-4px)}75%{transform:scale(1.3) translateY(-2px)}}.contact-icon{flex-shrink:0;width:20px;height:20px;opacity:.8;transition:all .3s ease}@media (max-width:768px){.card{max-width:320px}.logo img{width:180px}}@media (max-width:400px){body{padding:16px}.card-front{padding:30px 24px}.card,.card-front{min-height:0}.contact-item{font-size:15px;gap:12px}.logo img{width:160px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation:none!important;transition:none!important}}