/* Final responsive pass — preserve desktop art direction */
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:clip}
img,video{max-width:100%}
.original-video-card video{max-height:78vh}
.original-videos,.hobbies,.virtues{max-width:100%;overflow:visible}
@media(min-width:641px) and (max-width:1024px){
 header.nav .brand{transform:none!important}
 header.nav .heart{transform:none!important}
 header.nav{padding-inline:clamp(20px,3vw,38px)!important}
 header.nav nav{gap:clamp(8px,1vw,15px)!important}
 .hero .welcome{left:6%!important;width:43%!important;transform:translate(10px,-40%)!important}
 .hero .avatar-actions{transform:none!important}
 .hero .avatar{left:50%!important;width:50%!important}
 .hero .avatar-frame video{transform:translateX(-45px)!important}
}
@media(max-width:640px){
 header.nav .brand{transform:none!important;min-width:0}
 header.nav .heart{transform:none!important;margin:0!important}
 header.nav .menu{min-width:44px;min-height:44px;cursor:pointer}
 header.nav nav.open{z-index:11000}
 .hero{height:auto!important;min-height:0!important;overflow:hidden!important;padding:100px 12px 25px!important;gap:8px!important}
 .hero .banner{width:100%!important;max-width:100%!important;height:auto!important;object-fit:contain!important}
 .hero .welcome{position:relative!important;left:auto!important;top:auto!important;transform:none!important;order:1!important;max-width:600px!important;width:100%!important;padding:10px!important;margin:0 auto!important}
 .hero .welcome h1{font-size:clamp(28px,8vw,42px)!important}
 .hero .welcome h2{font-size:clamp(17px,4.5vw,24px)!important}
 .hero .welcome p{font-size:clamp(14px,3.7vw,18px)!important;line-height:1.5!important}
 .hero .avatar{position:relative!important;order:2!important;left:auto!important;right:auto!important;top:auto!important;width:min(100%,420px)!important;height:auto!important;max-height:none!important;display:flex!important;flex-direction:column!important;align-items:center!important;margin:0 auto!important}
 .hero .avatar-frame{width:min(85vw,330px)!important;height:auto!important;aspect-ratio:9/16!important;overflow:hidden!important;margin:0!important}
 .hero .avatar-frame video{width:100%!important;height:100%!important;max-height:none!important;transform:none!important;object-fit:contain!important}
 .hero .avatar-actions{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:350px!important;transform:none!important;margin:8px auto!important;gap:10px!important}
 .hero .avatar-actions>*:not(.download-status){flex:1!important;width:auto!important;min-width:0!important;font-size:12px!important;line-height:1.25!important}
 .hobbies .cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .original-video-card video{max-height:none}
 .presentation .video-shell{max-width:100%;aspect-ratio:16/9}
}
@media(max-width:380px){
 .hero .avatar-actions{flex-wrap:wrap!important}
 .hero .avatar-actions>*:not(.download-status){flex:0 0 100%!important}
 .hobbies .cards{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Tablet: evita botões invadirem o avatar em larguras intermediárias */
@media(min-width:641px) and (max-width:900px){
.hero{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;padding:110px 20px 30px!important;gap:16px!important}
.hero .banner{position:relative!important;top:auto!important;left:auto!important;transform:none!important;order:0!important;width:min(100%,700px)!important;height:auto!important;max-height:175px!important}
.hero .welcome{position:relative!important;order:1!important;top:auto!important;left:auto!important;width:min(100%,650px)!important;max-width:650px!important;transform:none!important;margin:0 auto!important;text-align:center!important}
.hero .avatar{position:relative!important;order:2!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;width:min(100%,440px)!important;height:auto!important;max-height:none!important;display:flex!important;flex-direction:column!important;align-items:center!important;margin:0 auto!important}
.hero .avatar-frame{width:min(75vw,350px)!important;height:auto!important;aspect-ratio:9/16!important;overflow:hidden!important}
.hero .avatar-frame video{width:100%!important;height:100%!important;max-height:none!important;transform:none!important;object-fit:contain!important}
.hero .avatar-actions{position:relative!important;width:min(100%,380px)!important;display:flex!important;flex-direction:row!important;gap:12px!important;justify-content:center!important;transform:none!important;margin:10px auto 0!important}
.hero .avatar-actions>*:not(.download-status){flex:1!important;width:auto!important}
}
