:root{font-family:Montserrat,Arial,sans-serif;color:#111;background:#fff;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit}.site-header{height:84px;position:fixed;z-index:50;top:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 clamp(22px,3.4vw,65px);color:#111;transition:background .4s ease,color .4s ease}.site-header.scrolled{background:#fff}.header-left{position:relative;height:26px;display:flex;align-items:center;white-space:nowrap}.home-word,.small-brand{position:absolute;left:0;top:50%;transform:translateY(-50%);transition:opacity .42s ease,visibility .42s ease;font-size:12px;letter-spacing:.065em;font-weight:600}.small-brand{font-size:clamp(12px,1.12vw,17px);font-weight:700;letter-spacing:-.045em;opacity:0;visibility:hidden}.site-header.scrolled .home-word{opacity:0;visibility:hidden}.site-header.scrolled .small-brand{opacity:1;visibility:visible}.main-nav{display:flex;justify-content:center;gap:clamp(28px,4vw,80px);transition:opacity .42s ease,visibility .42s ease}.main-nav a{font-size:12px;letter-spacing:.075em;font-weight:600}.site-header.scrolled .main-nav{opacity:0;visibility:hidden;pointer-events:none}.socials{display:flex;justify-content:flex-end;align-items:center;gap:18px}.social-link{width:19px;height:19px;display:block}.social-link svg{width:100%;height:100%}.hero{height:100svh;min-height:520px;position:relative;display:grid;place-items:center;overflow:hidden;background:#fff}.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:rgba(255,255,255,.30);pointer-events:none}.hero-brand{position:relative;z-index:1;margin:0;font-size:clamp(32px,6.8vw,122px);font-weight:700;letter-spacing:-.075em;line-height:1;text-align:center;padding:0 18px;white-space:nowrap}.scroll-cue{position:absolute;z-index:2;bottom:35px;left:50%;transform:translateX(-50%);width:32px;height:32px;display:grid;place-items:center}.scroll-cue svg{width:27px;height:27px;animation:bob 2s ease-in-out infinite}@keyframes bob{50%{transform:translateY(7px)}}.projects{background:#fff;min-height:100vh;padding:108px clamp(14px,2.2vw,40px) 80px;scroll-margin-top:0}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.5vw,26px)}.project-card{position:relative;display:block;aspect-ratio:3/4;overflow:hidden;border:0;padding:0;background:#ddd;text-align:center;cursor:pointer;color:#fff}.project-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s ease}.project-overlay{position:absolute;inset:0;background:rgba(92,92,92,.77);opacity:0;transition:opacity .35s ease;display:flex;align-items:center;justify-content:center;padding:25px}.project-info{opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .35s ease}.project-info h2{font-size:clamp(16px,1.6vw,26px);line-height:1.25;font-weight:600;margin:0 0 11px}.project-info p{font-size:clamp(11px,1vw,15px);line-height:1.6;font-weight:400;margin:0}.project-card.active .project-overlay,.project-card:focus-visible .project-overlay{opacity:1}.project-card.active .project-info,.project-card:focus-visible .project-info{opacity:1;transform:translateY(0)}@media(hover:hover) and (pointer:fine){.project-card:hover .project-overlay{opacity:1}.project-card:hover .project-info{opacity:1;transform:translateY(0)}.project-card:hover img{transform:scale(1.025)}}.footer{padding:30px clamp(20px,3vw,55px);border-top:1px solid #eee;display:flex;justify-content:space-between;gap:15px;font-size:10px;font-weight:500;letter-spacing:.08em}.project-modal{position:fixed;z-index:100;inset:0;background:#fff;overflow:auto;display:flex;align-items:center;justify-content:center;padding:60px 25px}.project-modal[hidden]{display:none}.modal-close{position:absolute;top:25px;right:35px;border:0;background:none;font-size:40px;cursor:pointer}.modal-body{text-align:center;max-width:750px}.eyebrow{font-size:11px;letter-spacing:.15em}.modal-body h2{font-size:clamp(35px,6vw,85px);letter-spacing:-.055em;margin:25px 0 15px}.modal-body>p:not(.eyebrow){font-size:14px;line-height:1.8}.modal-note{color:#777;margin-top:45px!important}.modal-body a{font-size:11px;font-weight:600;letter-spacing:.1em;display:inline-block;margin-top:30px;border-bottom:1px solid;padding-bottom:7px}@media(min-width:1600px){.projects-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(min-width:2100px){.projects-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(min-width:700px) and (max-width:1050px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:699px){.site-header{height:72px;padding:0 17px;grid-template-columns:1fr auto 1fr}.home-word{font-size:10px}.small-brand{font-size:11px;letter-spacing:-.06em}.main-nav{gap:12px}.main-nav a{font-size:9px}.socials{gap:11px}.social-link{width:17px;height:17px}.hero-brand{font-size:clamp(24px,7vw,46px);letter-spacing:-.065em}.projects{padding:85px 15px 45px}.projects-grid{grid-template-columns:1fr;gap:15px}.project-info h2{font-size:22px}.project-info p{font-size:13px}.footer{font-size:8px;padding:24px 15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.hero-brand{width:min(83vw,1100px);display:flex;justify-content:center}.hero-brand img{display:block;width:100%;height:auto}.small-brand{width:clamp(145px,15vw,235px);display:flex;align-items:center}.small-brand img{width:100%;height:auto;filter:brightness(0)}.hero-shade{background:rgba(255,255,255,.10)}@media(max-width:699px){.small-brand{width:120px}.hero-brand{width:91vw}}

/* Estado inicial da navegação, controlado progressivamente pela rolagem */
.main-nav{will-change:opacity}
.home-word,.small-brand{will-change:opacity}

/* Header: o estado de scroll é definido por JS, sem seletores que sobrescrevam o fade. */
.site-header.scrolled .home-word,.site-header.scrolled .small-brand,.site-header.scrolled .main-nav{opacity:unset;visibility:unset}
.home-word,.small-brand{transition:none!important}
.small-brand{max-width:clamp(145px,15vw,235px);height:auto;overflow:visible}
.small-brand img{display:block;max-width:100%;height:auto}

/* Home com fundo branco sólido, sem vídeo */
.hero{background:#fff}

/* Identidade da home: centro óptico ligeiramente acima do centro da tela */
.hero-identity{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(9px,1.2vw,18px);width:100%;transform:translateY(-9vh)}
.hero-tagline{margin:0;padding:0 16px;text-align:center;font-family:Montserrat,Arial,sans-serif;font-size:12px;font-weight:600;letter-spacing:.075em;line-height:1.6;color:#111}
@media(max-width:699px){.hero-identity{transform:translateY(-7vh);gap:10px}.hero-tagline{font-size:10px;max-width:94vw;line-height:1.7;letter-spacing:.04em}}
