/* Shared Lunaryx artwork. Functional icons and individual product covers stay distinct. */
.brand-art { display:block; line-height:0; }
.brand-art img { display:block; width:100%; height:auto; object-fit:contain; }
.brand-art .brand-dark { display:none; }
html[data-theme="dark"] .brand-art .brand-light { display:none; }
html[data-theme="dark"] .brand-art .brand-dark { display:block; }
.site-header .brand { gap:10px; text-decoration:none; }
.site-header .brand .brand-mark { display:block; flex:none; width:34px; height:34px; border:0; border-radius:0; background:none; box-shadow:none; overflow:visible; }
.site-header .brand .brand-mark::before,.site-header .brand .brand-mark::after { display:none; }
.site-header .brand .brand-wordmark { display:block; width:125px; }
.site-header .brand .brand-art img { margin:0; }
.footer .footer-brand { width:fit-content; text-decoration:none; }
.footer .footer-brand .brand-art { width:224px; max-width:100%; margin:0 0 8px; }
.footer .footer-brand .footer-brand-description { display:block; margin:0; color:var(--muted); font-size:.8rem; font-weight:400; line-height:1.5; }
img[data-brand-fallback] { object-fit:contain; border-radius:16px; }

/* This section has a dark surface in both themes. */
.home-orbit-mark { width:210px; height:210px; animation:brand-float 9s ease-in-out infinite; }
.lunaryx-home .home-orbit-mark img { display:block; width:100%; height:100%; }
.home-brand-universe > span { animation:brand-orbit 24s ease-in-out infinite; }
.home-brand-universe > span:nth-child(2) { animation-name:brand-orbit-secondary; animation-duration:30s; }
.home-brand-universe > span:nth-child(3) { animation:none; }
.home-book-stack .home-book-brand { position:absolute; width:84px; height:84px; left:31px; top:39px; }
.home-book-brand img { display:block; width:100%; height:100%; object-fit:contain; }
.home-book-stack .home-book-rule { position:absolute; left:33px; right:33px; bottom:33px; height:1px; background:#bfcde366; }
.lunaryx-home .home-signature-mark { width:250px; max-width:100%; margin-left:auto; font-size:inherit; letter-spacing:normal; }
.home-contact-signature p { margin-top:18px; }
.studio-about-page .about-brand-intro { display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:70px; }
.studio-about-page .about-brand-intro h1 { font-size:clamp(2.35rem,4.3vw,3.9rem); }
.about-brand-portrait { margin:0; }
.about-brand-portrait img { display:block; width:100%; height:auto; border-radius:24px; }
.about-brand-portrait figcaption { color:var(--muted); font-size:.8rem; margin-top:14px; letter-spacing:.04em; }

@keyframes brand-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-10px); } }
@keyframes brand-orbit { 0%,100% { transform:rotate(-24deg); } 50% { transform:rotate(-12deg); } }
@keyframes brand-orbit-secondary { 0%,100% { transform:rotate(35deg); } 50% { transform:rotate(23deg); } }
@media(max-width:760px) {
 .studio-about-page .about-brand-intro { grid-template-columns:1fr; gap:32px; }
 .about-brand-portrait { max-width:480px; }
 .lunaryx-home .home-signature-mark { width:205px; margin-left:0; }
 .home-orbit-mark { width:175px; height:175px; }
}
@media(max-width:420px) {
 .site-header .nav { width:calc(100% - 32px); padding-inline:0; gap:10px; }
 .site-header .nav-toggle { flex-shrink:0; }
 .site-header .brand { gap:8px; }
 .site-header .brand .brand-mark { width:30px; height:30px; }
 .site-header .brand .brand-wordmark { width:113px; }
 .footer .footer-brand .brand-art { width:200px; }
}
@media(max-width:360px) {
 .site-header .brand .brand-wordmark { width:98px; }
}
@media(prefers-reduced-motion:reduce) {
 .home-orbit-mark,.home-brand-universe > span { animation:none; }
}
@media print {
 .brand-art .brand-dark { display:none !important; }
 .brand-art .brand-light { display:block !important; }
}
