/* Banner panorâmico com navegação sobreposta. */
.site-header{position:absolute;z-index:1000;inset:0 0 auto;height:108px;background:transparent;border:0;color:#fff;display:grid;grid-template-columns:180px 1fr;gap:24px;pointer-events:auto}
.site-header .logo-window img{filter:brightness(0) invert(1)}
.site-header .nav-links{justify-self:end;margin:0;gap:38px;white-space:nowrap}
.site-header .nav-links a{font-size:13px;font-weight:600;letter-spacing:.15em;text-transform:uppercase}
.site-header .nav-links a:after{background:#fff}
.site-header a:focus-visible,.site-header button:focus-visible{outline-color:#fff}
.hero{position:relative;isolation:isolate;display:block;height:100svh;min-height:620px;max-height:none;background:var(--ink);color:#fff}
.hero-art{position:absolute;inset:0;z-index:-2;margin:0;height:100%;width:100%;background:var(--ink)}
.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,1,20,.5) 0%,rgba(1,1,20,.08) 35%,rgba(1,1,20,.2) 60%,rgba(1,1,20,.78) 100%)}
.hero-art .architecture{width:100%;height:100%;object-fit:cover;object-position:50% 48%}
.hero-art .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 48%;z-index:0}
.hero-art .architecture{position:relative;z-index:-1}
.hero-art:after{z-index:1}
.hero-copy,.hero-scroll{z-index:2}
.hero-copy{height:100%;padding:150px var(--gutter) 48px;display:flex;justify-content:flex-end;position:relative}
.hero h1{font-family:var(--sans);font-size:clamp(32px,3.25vw,56px);font-weight:400;line-height:1.2;letter-spacing:-.045em;margin:0;max-width:1150px;padding-right:62px;color:#fff;text-wrap:balance}
.hero-scroll{position:absolute;right:30px;bottom:30px;display:grid;place-items:center;width:42px;height:42px;background:#fff;color:var(--ink);border-radius:50%;font-size:23px;transition:transform .2s}
.hero-scroll:hover{transform:translateY(3px)}
.hero-scroll:focus-visible{outline-color:#fff}
@media(max-width:1100px){.site-header{grid-template-columns:160px 1fr;gap:18px}.site-header .nav-links{justify-self:end;gap:24px}.hero h1{font-size:clamp(34px,4vw,48px)}}
@media(max-width:760px){.site-header{height:88px;display:flex;justify-content:space-between}.site-header .nav-links{position:absolute;inset:88px 0 auto;min-height:calc(100svh - 88px);background:#fff;color:var(--ink);padding:25px var(--gutter);gap:0;white-space:normal}.site-header .nav-links a{font:400 32px/1.5 var(--serif);letter-spacing:0;text-transform:none;padding:18px 0}.site-header .nav-links a:after{background:var(--wine)}.site-header .nav-links a:focus-visible{outline-color:var(--wine)}.site-header .menu-toggle{display:flex;margin-left:auto;border-color:rgba(255,255,255,.5);background:transparent}.site-header .menu-toggle span{background:#fff}.hero{height:100svh;min-height:600px}.hero-copy{padding:130px var(--gutter) 90px}.hero h1{font-size:clamp(30px,7.8vw,45px);line-height:1.23;padding:0;letter-spacing:-.035em;text-wrap:initial}.hero-art .architecture{object-position:55% 50%}.hero-scroll{width:38px;height:38px;right:24px;bottom:24px}.hero-art:after{background:linear-gradient(180deg,rgba(1,1,20,.5),rgba(1,1,20,.08) 35%,rgba(1,1,20,.8) 100%)}}

/* Hero hierarchy and compact header brand. */
.hero h1{font-size:clamp(44px,4.4vw,76px);line-height:1.12;max-width:1500px}
.site-header{grid-template-columns:140px 1fr}
.site-header .logo-window{width:125px;height:57px}
.site-header .logo-window img{width:171px;left:-22.5px;top:-18px}
.site-header .logo-window{width:112px;height:52px}
.site-header .logo-window img{width:154px;left:-20px;top:-16px}
@media(max-width:1100px){.hero h1{font-size:clamp(42px,4.8vw,58px)}}
@media(max-width:760px){
 .hero h1{font-size:clamp(34px,8.8vw,50px);line-height:1.15}
 .site-header .logo-window{width:96px;height:45px}
 .site-header .logo-window img{width:132px;left:-17px;top:-14px}
}
/* Fixed navigation with a light glass surface after scrolling. */
.site-header{position:fixed;transition:height .25s,padding .25s,background .25s,color .25s,box-shadow .25s,backdrop-filter .25s}
.site-header.is-scrolled{height:78px;padding-top:0;padding-bottom:0}
.site-header.is-scrolled .logo-window{width:90px;height:42px}
.site-header.is-scrolled .logo-window img{width:124px;left:-16px;top:-13px}
.site-header.is-scrolled .nav-links a,.site-header.is-scrolled .nav-practices summary{font-size:11px}
.site-header.is-scrolled{background:rgba(255,255,255,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--ink);box-shadow:0 1px 0 rgba(79,81,84,.14)}
.site-header.is-scrolled .logo-window img{filter:none}
.site-header.is-scrolled .nav-links a:after{background:var(--wine)}
.site-header.is-scrolled a:focus-visible,.site-header.is-scrolled button:focus-visible{outline-color:var(--wine)}
.site-header.is-scrolled .menu-toggle{border-color:var(--line)}
.site-header.is-scrolled .menu-toggle span{background:var(--ink)}
@media(prefers-reduced-motion:reduce){.site-header{transition:none}}
