/* Homepage-only branding and motion; layout remains in the responsive styles. */
body.home-page .home-logo{display:block;flex:0 1 280px;width:280px;max-width:100%;min-width:0;background:#f5faf7;border:1px solid #b8cfc2;border-radius:18px;overflow:hidden;box-shadow:0 5px 18px #002d2312}
body.home-page .home-official-logo{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:contain}
body.home-page .home-header{flex-wrap:wrap}
@media(prefers-reduced-motion:no-preference){
 body.home-page .home-reading{animation:home-depth-arrive .9s cubic-bezier(.2,.7,.2,1) both}
 body.home-page .home-logo{animation:home-brand-arrive .65s ease-out both}
 @keyframes home-depth-arrive{from{opacity:.4;transform:perspective(1200px) translateY(12px) rotateX(4deg) scale(.98)}to{opacity:1;transform:perspective(1200px) translateY(0) rotateX(0) scale(1)}}
 @keyframes home-brand-arrive{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
}
@media(hover:hover) and (pointer:fine) and (min-width:1051px) and (prefers-reduced-motion:no-preference){
 body.home-page .home-feature{transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s,border-color .3s;transform-origin:center}
 body.home-page .home-feature:hover{transform:perspective(1100px) translateY(-4px) rotateX(2deg) rotateY(-1deg);box-shadow:0 18px 32px #002d2320}
 body.home-page .home-feature:focus-within{transform:translateY(-3px);box-shadow:0 14px 28px #002d2320}
}
@media(max-width:700px){body.home-page .home-logo{flex-basis:auto;width:min(250px,100%)} }
@media(prefers-reduced-motion:reduce){body.home-page .home-logo,body.home-page .home-reading,body.home-page .home-feature{animation:none;transition:none;transform:none}}
