/* Shared, quiet visual language. */
.brand{display:block;flex-shrink:0}.brand img{display:block;width:178px;height:auto;filter:brightness(0) invert(1)}
.footer-top .brand img{width:205px}
.cinema-bottom{grid-template-columns:1fr auto;align-items:center}.cinema-bottom p{text-align:left;margin:0;font-size:14px}
.cinema-frame span{font-size:12px;letter-spacing:0;text-transform:none}
.home-page .home-services>a{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:30px;gap:0}
.home-page .home-services h3{font-size:clamp(22px,1.7vw,28px);font-weight:300;line-height:1.2;margin:0 35px 16px 0}
.home-page .home-services p{font-size:15px;line-height:1.6;max-width:400px}
.home-services>a>span.service-home-arrow{position:absolute;right:25px;top:26px;width:28px;height:28px;font-size:25px;color:var(--ink)}
.service-home-arrow svg{display:none}
.contact-banner.titan-cta{background:var(--bg);padding:70px 5%}
.cta-card{background:#191919;border:1px solid var(--line);border-radius:var(--radius);padding:70px 6%;min-height:330px}
.cta-card:after{display:none}.cta-copy{max-width:850px;width:100%}
.titan-cta h2{font-size:clamp(34px,4.5vw,64px);font-weight:300;line-height:1.08;letter-spacing:-.045em;max-width:800px;margin-bottom:25px}
.titan-cta p:not(.eyebrow){font-size:16px;max-width:none;margin-bottom:30px}
.titan-cta .btn{border:1px solid #ffffff50;border-radius:var(--radius);min-height:48px;padding:12px 22px;font-size:12px;color:var(--ink);gap:24px}
.titan-cta .btn:hover{background:var(--ink);color:var(--bg)}
.marquee-track{animation:none!important;transform:translateX(0);width:max-content}
.marquee-set{padding:0 5vw;gap:30px}
.marquee-end{margin-left:0;background:linear-gradient(90deg,#050505,#191919);border:1px solid #ffffff15;width:325px;flex-basis:325px;border-radius:var(--radius)}
.marquee-end>strong{font-size:clamp(25px,2.3vw,34px);line-height:1.2}
.marquee-window:before{content:'';position:absolute;inset:0 auto 0 0;width:5%;z-index:3;pointer-events:none;background:linear-gradient(90deg,#050505,transparent)}
.marquee-edge{width:5%;z-index:3}
.marquee-set .project-photo{position:relative;overflow:hidden}
.marquee-set .project-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}
.marquee-set .project-card small{display:none}.marquee-set .project-card>span{font-size:16px}
.gallery-controls{justify-content:flex-end}.gallery-ruler{visibility:hidden}
.faq-list details{overflow:hidden}.faq-list summary{transition:color .25s;background:transparent}
.faq-list summary:hover,.faq-list details[open] summary{color:var(--accent)}
.faq-list .plus{transition:transform .3s ease}.faq-list details[open] .plus{transform:rotate(45deg)}
.faq-list details>p{padding-left:0;font-size:16px}.faq-list summary{font-size:18px}
.scroll-reveal{transition:opacity .75s ease,translate .75s cubic-bezier(.2,.65,.3,1)}
.motion-ready .scroll-reveal:not(.is-visible){opacity:0;translate:0 24px}


@media(max-width:760px){
 .brand img{width:145px}.footer-top .brand img{width:180px}
 .home-page .home-services>a{padding:28px;min-height:170px}
 .home-page .home-services h3{font-size:24px}.home-page .home-services p{font-size:15px}
 .cinema-bottom p{font-size:13px}.cinema-bottom>a{font-size:12px}
 .cta-card{padding:35px 25px;min-height:0}.titan-cta h2{font-size:35px;max-width:none}
 .titan-cta p:not(.eyebrow){font-size:15px;max-width:none}.contact-banner.titan-cta{padding:45px 6%}
 .faq-list summary{font-size:16px}.faq-list details>p{font-size:15px}
 .marquee-set{gap:20px}.marquee-end{width:270px;flex-basis:270px}
}
@media(prefers-reduced-motion:reduce){.scroll-reveal{transition:none!important;opacity:1!important;translate:none!important}.marquee-window{overflow-x:auto}.marquee-track{transform:none!important}}

