/* Strong, consistent brand contrast in both themes. */
.wordmark{color:#18201c;gap:11px;letter-spacing:-1.3px}
.wordmark .brand-icon{width:40px;height:40px;flex:0 0 40px;background:#18201c;border-radius:12px;box-shadow:0 0 0 1px #18201c22}
[data-theme=dark] .wordmark{color:#f6f5ef}
[data-theme=dark] .wordmark .brand-icon{box-shadow:0 0 0 1px #c8f36a75}
.footer-bottom>span:first-child{font-size:12px;font-weight:650;letter-spacing:.045em;color:#263f2d}
[data-theme=dark] .footer-bottom>span:first-child{color:#f6f5ef}
.footer-bottom{gap:22px;padding-top:24px}
.pointer-glow{display:none;position:fixed;inset:0 auto auto 0;width:420px;height:420px;pointer-events:none;z-index:35;opacity:0;border-radius:50%;background:radial-gradient(circle,#89bc3620,transparent 68%);transition:opacity .25s;contain:strict}
[data-theme=dark] .pointer-glow{background:radial-gradient(circle,#c8f36a18,transparent 68%)}
.hero-alternate,.hero-phone-alternate{display:none}
.hero-concept-controls{display:none}
.hero-phone-alternate{z-index:1}
@media(min-width:1024px) and (hover:hover) and (pointer:fine){
 .desktop-effects .pointer-glow{display:block}.desktop-effects .pointer-glow.is-visible{opacity:1}
 .desktop-effects :is(.service-card,.area-card,.trial-invite){position:relative;transform:perspective(1100px) rotateX(var(--card-x,0deg)) rotateY(var(--card-y,0deg));transition:transform .22s ease,opacity .7s ease,translate .7s ease;isolation:isolate}
 .desktop-effects :is(.service-card,.area-card,.trial-invite)::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(320px circle at var(--shine-x,50%) var(--shine-y,50%),#c8f36a22,transparent 70%);opacity:0;transition:opacity .25s}
 .desktop-effects .pointer-card-active::after{opacity:1}
 .desktop-effects .service-symbol svg{transform:translate(var(--icon-x,0px),var(--icon-y,0px)) rotate(var(--icon-turn,0deg));transition:transform .25s ease}
 .desktop-effects .hero-spark{transition:transform .25s ease}
 .desktop-effects .hero-concept-controls{display:flex;position:absolute;left:14px;bottom:-52px;gap:7px;align-items:center}
 .hero-concept-controls button{font-size:10px;min-height:32px;line-height:1.2;padding:6px 12px;border:1px solid #809071;border-radius:20px;color:#263f2d;background:#f6f5ef}
 .hero-concept-controls button[aria-pressed=true]{background:#18201c;color:#c8f36a;border-color:#18201c}
 [data-theme=dark] .hero-concept-controls button{background:#202c23;color:#f6f5ef;border-color:#6f855c}
 [data-theme=dark] .hero-concept-controls button[aria-pressed=true]{background:#c8f36a;color:#18201c}
 .hero-alternate{display:block;position:absolute;inset:24px 0 0;background:#142a36;color:#fff8eb;opacity:0;visibility:hidden;transition:opacity .48s ease,visibility .48s;pointer-events:none;overflow:hidden}
 .hero-alternate img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;opacity:.65}
 .hero-alternate::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#102633ee,#10263355 65%,#10263300)}
 .architecture-content{position:relative;z-index:1;padding:21px 24px;height:100%}
 .architecture-nav{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.03em}
 .architecture-nav strong{font-size:15px;letter-spacing:-.5px}.architecture-nav span{font-size:6px}
 .architecture-copy{margin-top:30px}.architecture-copy small{font-size:7px;letter-spacing:1.4px;color:#f4cc75}
 .architecture-copy h2{font-size:42px;line-height:1;letter-spacing:-1.5px;margin:10px 0 18px;color:#fff8eb;font-weight:550}
 .architecture-copy h2 em{font-family:Georgia,serif;font-weight:400;color:#f4cc75}
 .architecture-copy>span{display:inline-block;font-size:7px;background:#f4cc75;color:#142a36;padding:8px 12px;border-radius:2px}
 .hero-phone-alternate{display:block;position:absolute;inset:0;border-radius:21px;overflow:hidden;background:#142a36;opacity:0;visibility:hidden;transition:opacity .48s ease,visibility .48s;pointer-events:none;padding:27px 12px 12px;color:#fff8eb}
 .hero-phone-alternate>strong{font-size:10px}.hero-phone-alternate>p{font-size:20px;color:#fff8eb;line-height:1.05;margin:19px 0 13px;letter-spacing:-.8px}.hero-phone-alternate em{color:#f4cc75;font-family:Georgia,serif}
 .hero-phone-alternate img{width:100%;height:95px;object-fit:cover;border-radius:4px}.hero-phone-alternate>span{display:block;margin-top:12px;background:#f4cc75;color:#142a36;font-size:8px;padding:8px;border-radius:3px}
 .desktop-effects .hero-art[data-concept=architecture] :is(.hero-alternate,.hero-phone-alternate){opacity:1;visibility:visible}
 .desktop-effects .hero-art[data-concept=architecture] .cafe-screen{opacity:0;transition:opacity .48s}
 .phone-notch{z-index:2}
}
@media(max-width:1023px),(hover:none),(pointer:coarse){.pointer-glow,.hero-alternate,.hero-phone-alternate,.hero-concept-controls{display:none!important}}
@media(max-width:720px){.site-header .wordmark .brand-icon{width:35px;height:35px;flex-basis:35px}.footer-bottom>span:first-child{font-size:11px}.footer-top .wordmark .brand-icon{width:38px;height:38px;flex-basis:38px}}
@media(forced-colors:active){.pointer-glow{display:none!important}.wordmark .brand-icon{outline:1px solid CanvasText}.hero-concept-controls button{border:1px solid ButtonText}.hero-concept-controls button[aria-pressed=true]{outline:2px solid Highlight}}
@media print{.pointer-glow,.hero-concept-controls{display:none!important}.hero-alternate,.hero-phone-alternate{display:none!important}.cafe-screen{opacity:1!important}.service-card,.area-card,.trial-invite{transform:none!important}}
