/* One shared visual rhythm, local preview only. */
#highlights .studio-projects { gap:14px 24px; }
#highlights .studio-featured .studio-visual { aspect-ratio:2.5; max-height:360px; border-radius:3px; }
.solar-film { display:block; width:100%; height:100%; object-fit:cover; }
#highlights .studio-solar::after { content:""; position:absolute; inset:40% 0 0; background:linear-gradient(transparent,#03080bc9); pointer-events:none; }
#highlights .studio-solar strong,#highlights .studio-solar .studio-open { z-index:2; }
.solar-film-control { grid-column:1/-1; justify-self:end; color:#7f9cb3; background:transparent; border:0; font-size:10px; padding:8px 0; cursor:pointer; }
.solar-film-control:focus-visible { outline:2px solid #75baff; outline-offset:4px; }
#highlights .studio-project:not(.studio-featured) { display:grid; grid-template-columns:100px 1fr; align-items:center; gap:16px; border-top:1px solid #ffffff18; padding-top:18px; }
#highlights .studio-project:not(.studio-featured) .studio-visual { aspect-ratio:1.4; max-height:80px; padding:0; border-radius:4px; }
#highlights .studio-project:not(.studio-featured) .studio-visual img { height:100%; object-fit:cover; object-position:top; border-radius:0; }
#highlights .studio-project:not(.studio-featured) :is(.studio-type,.studio-open) { display:none; }
#highlights .studio-project:not(.studio-featured) .studio-caption { display:block; padding:0; }
#highlights .studio-project:not(.studio-featured) .studio-caption h3 { font-size:16px; }
#highlights .studio-project:not(.studio-featured) .studio-caption p { font-size:11px; margin:6px 0; }
#highlights .studio-project:not(.studio-featured) .studio-caption>span { font-size:9px; }
@media(max-width:600px) { #highlights .studio-featured .studio-visual { aspect-ratio:1.6; max-height:240px; } #highlights .studio-project:not(.studio-featured) { grid-template-columns:84px 1fr; padding-top:14px; } }
main section[id] { scroll-margin-top:90px; }
main h2 { text-wrap:balance; }
main p { text-wrap:pretty; }
#highlights .studio-visual:not(.studio-solar) img { aspect-ratio:1.6; object-fit:cover; object-position:top; }
#highlights .studio-solar img { object-position:50% 58%; }
#highlights .studio-caption { row-gap:6px; }
.founder .founder-image img { object-position:center 35%; }
.studio-demos summary:focus-visible,.service-list article:focus-visible { outline:2px solid #75baff; outline-offset:4px; border-radius:6px; }
.studio-demos summary { min-height:44px; align-items:center; }
.studio-demo-grid a { transition:opacity .25s; }
@media(hover:hover) { .studio-demo-grid a:hover { opacity:.85; } }
@media(max-width:600px) {
 main section[id] { scroll-margin-top:76px; }
 #highlights .studio-caption p { font-size:12px; line-height:1.5; }
 .booking .booking-date-btn { min-width:84px!important; }
 #booking .booking-slots .booking-slot-btn { min-height:44px!important; }
 .booking .booking-service-btn b { overflow-wrap:normal; hyphens:auto; }
 .booking .form-row { gap:12px!important; }
 .signal-lab .signal-sticky { padding-top:22px!important; }
}
:root { --studio-bg:#05080d; --studio-text:#e8edf3; --studio-muted:#94a2b2; --studio-line:rgba(152,179,208,.14); }
body { background:var(--studio-bg); }
main>.section-pad { max-width:1180px!important; padding:64px 50px!important; }
main :is(.statement,.services,.authority,.founder,.method,.faq,.booking) { background:var(--studio-bg)!important; color:var(--studio-text)!important; border-color:var(--studio-line)!important; }
main :is(.statement,.services,.authority,.founder,.method,.faq,.booking) h2 { font-size:clamp(28px,3.2vw,42px)!important; line-height:1.14!important; letter-spacing:-.045em!important; font-weight:500!important; margin:0 0 20px!important; }
main .section-index { display:none!important; }
main :is(.statement-copy,.services-intro,.authority-copy,.founder-copy,.booking-head)>p { color:var(--studio-muted)!important; font-size:14px!important; line-height:1.7!important; }
main .statement { min-height:0!important; display:grid!important; grid-template-columns:1.05fr 1fr!important; gap:64px!important; align-items:center; }
main .statement .statement-title { grid-column:1!important; max-width:490px!important; }
main .statement .statement-copy { grid-column:2!important; display:block!important; margin:0!important; padding:0!important; border:0!important; }
.statement-copy a { display:inline-block; margin-top:20px; color:#b4d8f5!important; font-size:10px!important; letter-spacing:.08em!important; }
main .services { grid-template-columns:.9fr 1.1fr!important; gap:64px!important; }
.services .service-list { margin:0!important; }
.services .service-list article { padding:20px 14px!important; border-color:var(--studio-line)!important; }
.services .service-list h3 { font-size:20px!important; letter-spacing:-.025em!important; }
.services .service-list article>p:not(.service-explanation) { font-size:12px!important; color:var(--studio-muted)!important; }
main .authority { grid-template-columns:1fr 200px!important; gap:32px!important; }
.authority-score { padding-left:24px!important; border-color:var(--studio-line)!important; }
.authority-score strong { font-size:72px!important; color:var(--studio-text)!important; }
.authority-score small { font-size:11px!important; color:var(--studio-muted)!important; }
.authority :is(.review-stage,.review-marquee,.review-track) { margin-top:24px!important; }
.authority :is(.review-stage,.review-marquee) article { min-height:180px!important; padding:22px!important; background:#0a1018!important; border:1px solid var(--studio-line)!important; border-radius:10px; color:var(--studio-text)!important; }
.authority blockquote { font-size:16px!important; line-height:1.55!important; letter-spacing:-.015em!important; }
main .founder { grid-template-columns:.85fr 1.15fr!important; gap:64px!important; }
.founder .founder-image { min-height:0!important; height:380px!important; border-radius:12px; }
.founder-copy a { margin-top:18px!important; font-size:10px!important; color:#b4d8f5!important; }
.method .method-head { display:block!important; }
.method ol { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr))!important; margin:28px 0 0!important; gap:18px!important; border:0!important; padding:0!important; }
.method ol::before,.method li::before,.method li::after { display:none!important; }
.method li { min-height:160px!important; padding:20px!important; background:#0a1018; border:1px solid var(--studio-line)!important; border-radius:10px; }
.method li>span { display:none!important; }
.method li h3 { font-size:21px!important; margin:0 0 12px!important; }
.method li p { font-size:12px!important; line-height:1.65!important; color:var(--studio-muted)!important; }
main .faq { gap:56px!important; }
.faq .faq-list details { padding:0!important; border-color:var(--studio-line)!important; }
.faq .faq-list details p { padding-bottom:18px; margin-top:0!important; }
.booking .booking-head { display:block!important; margin-bottom:24px!important; }
.booking .booking-head>p:last-child { max-width:520px; font-size:13px!important; }
.booking .booking-layout { margin-top:24px!important; background:#0a1018; border-radius:12px; border-color:var(--studio-line)!important; overflow:hidden; }
.booking #bookingMainCard { border-color:var(--studio-line)!important; }
.booking .booking-service-btn b { font-size:12px!important; }
.booking .booking-service-btn span { font-size:10px!important; }
.brand-orbit { background:#070c13!important; border-color:var(--studio-line)!important; padding-top:22px!important; padding-bottom:22px!important; }
.signal-lab { background:var(--studio-bg)!important; }
.hero .hero-wordmark { width:min(100%,1060px)!important; margin-left:auto!important; margin-right:auto!important; }
.hero .hero-bottom { font-size:15px!important; line-height:1.35!important; }
@media(max-width:900px) {
 .hero .hero-wordmark { position:absolute!important; left:28px!important; right:28px!important; top:43%!important; width:calc(100% - 56px)!important; height:auto!important; margin:0!important; transform:translateY(-50%)!important; }
 .hero .hero-wordmark img { display:block; width:100%!important; height:auto!important; }
}
.hero .hero-mobile-message h1 { font-size:clamp(28px,4vw,38px)!important; line-height:1.15!important; max-width:500px; }
.services .services-intro h2 { max-width:420px; }
.booking .booking-live { font-size:10px!important; margin:8px 0 12px!important; }
.booking .booking-step { padding-top:16px!important; }
.booking .booking-summary { padding:12px!important; margin-top:16px!important; }
@media(max-width:900px) {
 main>.section-pad { padding:44px 28px!important; }
 main :is(.statement,.services,.founder) { gap:32px!important; }
 .method ol { grid-template-columns:repeat(2,minmax(0,1fr))!important; }
}
@media(max-width:600px) {
 main>.section-pad { padding:36px 20px!important; }
 main :is(.statement,.services,.founder,.faq,.authority) { display:grid!important; grid-template-columns:1fr!important; gap:24px!important; }
 main :is(.statement,.services,.authority,.founder,.method,.faq,.booking) h2 { font-size:28px!important; line-height:1.18!important; }
 main .statement .statement-copy { grid-column:1!important; }
 .authority-score { border:0!important; padding:0!important; }
 .authority-score strong { font-size:52px!important; }
 .authority .authority-mobile-head h2 { margin-bottom:0!important; }
 .founder .founder-image { height:300px!important; }
 main .statement .statement-title { font-size:28px!important; line-height:1.18!important; }
 .method ol { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:10px!important; margin-top:20px!important; }
 .method li { margin:0!important; transform:none!important; width:auto!important; }
 .method li { padding:16px!important; min-height:140px!important; }
 .method li h3 { font-size:18px!important; }
 .booking .booking-layout { grid-template-columns:1fr!important; }
 .booking #bookingMainCard { border-right:0!important; border-bottom:1px solid var(--studio-line)!important; }
 .booking .booking-service-btn { min-height:64px!important; padding:10px 8px!important; }
 .hero .hero-bottom { font-size:13px!important; }
 .hero .hero-mobile-message h1 { font-size:29px!important; }
}
