/* Isolated navigation experiment. Original scene styles stay intact. */
body header.demo-header{padding:20px 4%;display:flex;align-items:center;justify-content:space-between;gap:28px;background:none!important;z-index:100;color:#f3f2ef!important;mix-blend-mode:normal;font-size:15px;font-weight:500;letter-spacing:0}
.demo-header .nav-logo,#mobile-navigation .nav-logo{font-size:32px;font-weight:800;letter-spacing:-2px;color:#F5C400;text-decoration:none;white-space:nowrap;transition:color .18s ease}
.nav-identity,.desktop-motion,.desktop-nav{display:flex;align-items:center}.nav-identity{gap:28px}.desktop-motion{gap:8px;border-left:1px solid #85898255;padding-left:28px}.desktop-nav{gap:30px}.demo-header .top-right{color:inherit!important}.desktop-nav a{position:relative;color:inherit;text-decoration:none;padding:12px 0;transition:color .18s ease}.desktop-nav a[aria-current=location]{color:#F5C400}.desktop-nav a[aria-current=location]:after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;background:currentColor}
.demo-header .motion-label{font-size:10px;letter-spacing:1.6px}.nav-info{position:relative;padding:8px;border:0;background:none;color:inherit;cursor:help}.nav-info svg{width:15px;height:15px;opacity:.8}.nav-tooltip{display:none;position:absolute;top:38px;left:-90px;width:260px;padding:14px 16px;background:#F3F2EF;color:#060A0A;font:400 13px/1.5 Karla,Arial;text-transform:none;letter-spacing:0;text-align:left;border-radius:3px;box-shadow:0 6px 25px #0002}.nav-info:hover .nav-tooltip,.nav-info:focus-visible .nav-tooltip{display:block}
.demo-header .nav-contact,#mobile-navigation .nav-contact{display:flex;align-items:center;justify-content:center;gap:14px;background:#F5C400;color:#060A0A;padding:14px 20px;border-radius:4px;font-weight:600;text-decoration:none;transition:background .18s ease,color .18s ease}.nav-contact svg{width:20px;height:20px;flex-shrink:0}.demo-header [data-tone=light]{color:#060A0A!important}.demo-header .nav-contact[data-tone=light]{background:#060A0A!important;color:#F5C400!important}.demo-header a[aria-current=location][data-tone=light]{color:#060A0A!important}.menu-open{display:none}#mobile-navigation{margin:0;max-width:none;max-height:none;width:100%;height:100dvh;border:0;padding:0;background:#060A0A;color:#F3F2EF;overscroll-behavior:contain}#mobile-navigation::backdrop{background:#060A0A}#mobile-navigation .menu-inner{display:flex;flex-direction:column;min-height:100%;padding:calc(22px + env(safe-area-inset-top)) 7% calc(28px + env(safe-area-inset-bottom));box-sizing:border-box}#mobile-navigation .menu-top{display:flex;align-items:center;justify-content:space-between}.menu-close,.menu-open{border:0;background:none;color:#F5C400;min-width:44px;min-height:44px;padding:10px;cursor:pointer}.menu-close svg,.menu-open svg{display:block;width:24px;height:24px}.menu-links{margin-top:clamp(48px,10svh,100px)}.menu-links a{display:flex;align-items:center;gap:22px;padding:25px 0;border-bottom:1px solid #f3f2ef26;color:inherit;text-decoration:none;font-size:clamp(30px,9vw,38px);letter-spacing:-1px}.menu-links span{font-size:13px;letter-spacing:1px;color:#F5C400}#mobile-navigation .nav-contact{justify-content:space-between;font-size:17px;min-height:58px;box-sizing:border-box;margin-top:36px}.menu-bottom{margin-top:auto;padding-top:64px}.menu-bottom p{font-size:13px;line-height:1.6;color:#a9afa9;max-width:300px;margin:12px 0 34px}.menu-signature{font-size:10px;letter-spacing:1.1px;color:#F5C400}.menu-bottom .motion-switch{display:inline-flex;align-items:center;gap:12px;background:none;color:inherit;border:0;padding:0;min-height:44px;cursor:pointer}.menu-bottom .motion-label{font-size:11px;letter-spacing:2px}.menu-bottom .motion-track{position:relative;width:32px;height:18px;display:block;border-radius:10px;background:#858982}.menu-bottom .motion-thumb{position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:#F3F2EF}.menu-bottom [aria-checked=true] .motion-track{background:#F5C400}.menu-bottom [aria-checked=true] .motion-thumb{background:#060A0A;transform:translateX(14px)}#mobile-navigation[open] .menu-inner{animation:menu-enter .28s ease both}#mobile-navigation[open] .menu-links,#mobile-navigation[open] .nav-contact{animation:menu-enter .4s .06s ease both}@keyframes menu-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.demo-header a:focus-visible,.demo-header button:focus-visible,#mobile-navigation a:focus-visible,#mobile-navigation button:focus-visible{outline:2px solid currentColor;outline-offset:5px}#estudio,#contato{scroll-margin-top:100px}
@media(max-width:900px){body header.demo-header{padding:18px 6%}.demo-header .desktop-motion,.demo-header .desktop-nav{display:none}.demo-header .menu-open{display:block}.demo-header .nav-logo span{display:inline}.demo-header .top-right{display:block}}
@media(min-width:901px) and (max-width:1100px){.nav-identity{gap:18px}.desktop-motion{padding-left:18px}.desktop-nav{gap:20px}}
@media(prefers-reduced-motion:reduce){#mobile-navigation *{animation:none!important;transition:none!important}}
.demo-header .desktop-nav a{font-family:Karla,Arial,sans-serif;font-size:15px;font-weight:500;letter-spacing:0;line-height:1.3}.demo-header .desktop-nav .nav-contact{font-weight:600}

/* Refined protective surface and shared mobile header geometry. */
html{scrollbar-gutter:stable}
body header.demo-header{height:84px;box-sizing:border-box;background:rgba(6,10,10,.98)!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background-color .22s ease}
body header.demo-header[data-surface=yellow]{background:rgba(245,196,0,.98)!important}
body header.demo-header[data-surface=paper]{background:rgba(243,242,239,.98)!important}
.demo-header .desktop-nav .nav-contact{min-height:38px;padding:9px 14px;gap:10px;font-size:14px}
.demo-header .desktop-nav .nav-contact svg{width:17px;height:17px}
.demo-header .nav-tooltip{width:400px;max-width:calc(100vw - 48px);padding:16px 18px;top:calc(100% + 26px);left:50%;transform:translateX(-50%)}
.demo-header .nav-logo,#mobile-navigation .nav-logo{display:block;line-height:1}
#mobile-navigation[open] .menu-inner{animation:none}
#mobile-navigation .menu-inner{padding:0 0 calc(28px + env(safe-area-inset-bottom))}
#mobile-navigation .menu-top{height:calc(80px + env(safe-area-inset-top));padding:calc(18px + env(safe-area-inset-top)) 6% 18px;box-sizing:border-box;flex-shrink:0}
#mobile-navigation .menu-links,#mobile-navigation .nav-contact,#mobile-navigation .menu-bottom{margin-left:6%;margin-right:6%}
#mobile-navigation .menu-close,.demo-header .menu-open{box-sizing:border-box;width:44px;height:44px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.demo-header .menu-open{display:none}
@media(max-width:900px){body header.demo-header{height:calc(80px + env(safe-area-inset-top));padding:calc(18px + env(safe-area-inset-top)) 6% 18px}.demo-header .menu-open{display:flex}}

.demo-header .desktop-motion[data-tone=light] .motion-switch[aria-checked=true] .motion-track{background:#060A0A}
.demo-header .desktop-motion[data-tone=light] .motion-switch[aria-checked=true] .motion-thumb{background:#F5C400}

/* Tooltip stays connected to its trigger, including the pointer crossing. */
.demo-header .nav-tooltip{display:block;top:100%;left:8px;transform:none;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .2s ease,visibility 0s linear .16s;z-index:2}
.demo-header .nav-tooltip::before{content:'';position:absolute;left:0;right:0;top:-12px;height:12px}
.demo-header .nav-info:hover .nav-tooltip,.demo-header .nav-info:focus-within .nav-tooltip{visibility:visible;opacity:1;pointer-events:auto;transition-delay:0s}
.demo-header,.demo-header .nav-identity,.demo-header .desktop-motion{overflow:visible}

/* Shared underline for hover, keyboard focus and the independent scroll state. */
.demo-header .desktop-nav a:not(.nav-contact)::after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left center;transition:transform .22s ease}
.demo-header .desktop-nav a:not(.nav-contact):is(:hover,:focus-visible,[aria-current=location])::after{transform:scaleX(1)}
.demo-header .desktop-nav a:not(.nav-contact){transition:color .22s ease}
.demo-header .desktop-nav a:not(.nav-contact)[data-tone=dark]:is(:hover,:focus-visible){color:#F5C400!important}
.demo-header .desktop-nav a:not(.nav-contact)[data-tone=light]:is(:hover,:focus-visible){color:#060A0A!important}
.demo-header .desktop-nav .nav-contact{transition:background-color .22s ease,color .22s ease}
.demo-header .desktop-nav .nav-contact svg{transition:transform .22s ease}
.demo-header .desktop-nav .nav-contact:is(:hover,:focus-visible){background:#F3F2EF;color:#060A0A}
.demo-header .desktop-nav .nav-contact[data-tone=light]:is(:hover,:focus-visible){background:#242A28!important;color:#F5C400!important}
.demo-header .desktop-nav .nav-contact:is(:hover,:focus-visible) svg{transform:translate(2.5px,-2.5px)}

/* The cue's flex box stays fixed; only the vector moves five pixels. */
.foot .scroll:has(.hero-scroll-arrow){display:flex;flex-direction:row;align-items:center}
.hero-scroll-arrow{align-self:center;animation-name:hero-scroll-cue-refined}
@keyframes hero-scroll-cue-refined{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}

/* One shared switch, placed in the same top-right group in both mobile states. */
.header-mobile-motion-slot{display:none}
.menu-top-controls{display:flex;align-items:center;gap:14px;flex-shrink:0}
#mobile-navigation .mobile-motion-slot .motion-switch{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0;border:0;background:none;color:#F3F2EF;font-family:Karla,Arial,sans-serif;cursor:pointer}
#mobile-navigation .mobile-motion-slot .motion-label{display:inline;font-size:10px;letter-spacing:1.2px;line-height:1}
#mobile-navigation .mobile-motion-slot .motion-track{display:block;position:relative;width:32px;height:18px;flex:0 0 32px;border-radius:10px;background:#858982}
#mobile-navigation .mobile-motion-slot .motion-thumb{display:block;position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:#F3F2EF}
#mobile-navigation .mobile-motion-slot [aria-checked=true] .motion-track{background:#F5C400}
#mobile-navigation .mobile-motion-slot [aria-checked=true] .motion-thumb{background:#060A0A;transform:translateX(14px)}
#mobile-navigation .menu-close{position:relative;border:0!important;background:transparent!important;box-shadow:none!important;outline:none!important;border-radius:0}
#mobile-navigation .menu-close:focus-visible::after{content:'';position:absolute;bottom:5px;left:14px;right:14px;height:2px;background:#F5C400}
#mobile-navigation .mobile-motion-slot .motion-switch:focus-visible{outline:2px solid #F5C400;outline-offset:4px}
#mobile-navigation .menu-links a{font-size:30px;font-weight:500;line-height:1.2;padding:20px 0;min-height:76px;box-sizing:border-box}
#mobile-navigation .menu-links span{font-size:12px;font-weight:500}
#mobile-navigation .menu-bottom{padding-top:48px}
@media(max-width:900px){
 .demo-header .nav-identity{flex-shrink:0}
 .demo-header .top-right{display:flex;align-items:center;gap:14px;flex-shrink:0}
 .header-mobile-motion-slot{display:block}
 .demo-header .header-mobile-motion-slot .motion-label{display:inline;font-size:10px;letter-spacing:1.2px;line-height:1}
 .demo-header .header-mobile-motion-slot .motion-switch{gap:9px;color:#F3F2EF;white-space:nowrap}
 .demo-header:not([data-surface=dark]) .header-mobile-motion-slot .motion-switch{color:#060A0A}
 .demo-header:not([data-surface=dark]) .header-mobile-motion-slot [aria-checked=true] .motion-track{background:#060A0A}
 .demo-header:not([data-surface=dark]) .header-mobile-motion-slot [aria-checked=true] .motion-thumb{background:#F5C400}
}
@media(max-width:350px){
 .demo-header .top-right,.menu-top-controls{gap:8px}
 .demo-header .header-mobile-motion-slot .motion-switch,#mobile-navigation .mobile-motion-slot .motion-switch{gap:6px}
 .demo-header .header-mobile-motion-slot .motion-label,#mobile-navigation .mobile-motion-slot .motion-label{font-size:9px;letter-spacing:.8px}
}
#mobile-navigation .mobile-motion-slot .motion-switch{font-weight:500}
