/* One system for the rebuilt middle of the landing. No shared-page overrides. */
.fg-home{--fg-header-height:83px;--ink:#22252B;--paper:#EAE4D8;--soft:#F4F2EC;--steel:#8F98A3;--oxide:#8E3F35;--muted:#555B63;--ease:cubic-bezier(.22,1,.36,1);font:400 16px/1.7 var(--sans);color:var(--ink);background:var(--soft)}
.fg-home [hidden]{display:none!important}
.fg-home :is(h2,h3,p,figure){margin:0}
.fg-home button{cursor:pointer}
.fg-home :is(button,a,input,select,textarea):focus-visible{outline:3px solid var(--oxide);outline-offset:5px}
.fg-home :is(a,button,input,select,textarea){scroll-margin-block:110px 24px}
.fg-home > section{min-height:calc(100vh - var(--fg-header-height) + 2px);min-height:calc(100dvh - var(--fg-header-height) + 2px);scroll-margin-top:calc(var(--fg-header-height) - var(--fg-scroll-padding,92px));display:flex;align-items:center;padding-block:clamp(56px,6vw,88px)}
.fg-home .studio-shell{width:min(1320px,calc(100% - 112px));margin-inline:auto;min-width:0}
.fg-home .studio-heading{font:500 clamp(36px,4vw,60px)/1.07 var(--sans);letter-spacing:-.045em;text-wrap:balance}
.fg-home .studio-heading span{color:var(--muted)}
.fg-home .studio-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:40px}
.fg-home .studio-intro>p{max-width:365px;color:var(--muted);font-size:15px;line-height:1.75}
.fg-home .studio-kicker{font-size:12px;font-weight:550;letter-spacing:.09em;text-transform:uppercase}
.fg-home .studio-link{display:inline-flex;align-items:center;gap:30px;min-height:48px;font-size:14px;font-weight:550;border-bottom:1px solid currentColor;line-height:1.4}
.fg-home .studio-arrow{display:inline-block;font:400 24px/1 var(--sans);transition:transform .25s var(--ease)}
.fg-home a:hover .studio-arrow{transform:translate(3px,-3px)}
.fg-home .studio-button{min-height:52px;padding:14px 23px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--oxide);color:var(--soft);font-size:14px;font-weight:550;border:1px solid transparent;border-radius:3px;transition:background .2s}
.fg-home .studio-button:hover{background:#75342C}

/* Practice: two perspectives, one shared relationship. The image belongs to the selection. */
.fg-home .studio-practice{background:var(--paper)}
.fg-home .practice-frame{background:var(--ink);color:var(--paper);border-radius:6px;overflow:hidden}
.fg-home .practice-switch{display:flex;padding:0 42px 0 calc(32% + 42px);background:#2B2E35;gap:36px}
.fg-home .practice-switch button{position:relative;flex:1;text-align:left;border:0;padding:23px 0;background:transparent;color:#BABDC2;font-size:21px;font-weight:500;line-height:1.3;min-height:72px}
.fg-home .practice-switch button::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:3px;background:var(--paper);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.fg-home .practice-switch button[aria-selected=true]{color:var(--soft)}
.fg-home .practice-switch button[aria-selected=true]::after{transform:scaleX(1)}
.fg-home .practice-switch button:focus-visible{outline-color:var(--paper);outline-offset:-7px}
.fg-home .practice-panel{display:grid;grid-template-columns:32% 1fr;min-height:390px}
.fg-home .practice-photo{overflow:hidden;position:relative;margin-top:-73px;min-height:440px}
.fg-home .practice-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;filter:saturate(.55);transition:transform .7s var(--ease)}
.fg-home .practice-photo .company-photo{object-position:50% 50%}
.fg-home .practice-content{padding:36px 42px;display:grid;grid-template-columns:1.1fr 1fr;gap:22px 40px;align-content:center}
.fg-home .practice-content h3{font:450 clamp(25px,2.5vw,36px)/1.2 var(--sans);letter-spacing:-.035em;max-width:350px}
.fg-home .practice-content>p{font-size:15px;color:#C6C5C0;grid-column:1;line-height:1.75;max-width:360px}
.fg-home .practice-content ul{grid-column:2;grid-row:1/4;margin:0;padding:0;list-style:none;align-self:start}
.fg-home .practice-content li{padding:16px 0;border-bottom:1px solid #50545A;font-size:14px;line-height:1.5}
.fg-home .practice-content li:first-child{padding-top:4px}
.fg-home .practice-content li strong{display:block;font-size:16px;font-weight:500;margin-bottom:5px;color:var(--paper)}
.fg-home .practice-content li span{color:#BABDC2;font-size:13px}
.fg-home .practice-content .studio-link{grid-column:1;justify-self:start;margin-top:8px}
.fg-home .practice-content a:focus-visible{outline-color:var(--paper)}
.fg-home [role=tabpanel]:focus-visible{outline:2px solid var(--steel);outline-offset:-3px}
.fg-home:not(.studio-ready) .practice-panel+.practice-panel{border-top:1px solid var(--steel)}
.fg-home:not(.studio-ready) .practice-photo{margin-top:0}
.fg-home:not(.studio-ready) .method-note>[data-tab-panel]+[data-tab-panel]{margin-top:28px}

/* Method: an interactive sequence with one photographic plane, not a row of cards. */
.fg-home .studio-method{background:var(--soft)}
.fg-home .method-layout{display:grid;grid-template-columns:5fr 6fr;gap:clamp(40px,7vw,100px);align-items:center}
.fg-home .method-copy .studio-kicker{color:var(--oxide);margin-bottom:24px}
.fg-home .method-copy .studio-heading{font-size:clamp(34px,3.3vw,49px);max-width:490px}
.fg-home .method-copy>p:not(.studio-kicker){margin-top:20px;color:var(--muted);max-width:460px;font-size:15px}
.fg-home .method-select{margin-top:32px;display:grid;gap:4px}
.fg-home .method-select button{display:grid;grid-template-columns:36px 1fr 22px;align-items:center;gap:12px;width:100%;padding:17px 12px 17px 0;text-align:left;line-height:1.4;font-size:16px;background:none;border:0;border-bottom:1px solid #C7C5BE;transition:padding .25s var(--ease),color .2s}
.fg-home .method-select button>span:first-child{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.fg-home .method-select button>span:last-child{opacity:0;transition:opacity .2s}
.fg-home .method-select button[aria-selected=true]{color:var(--oxide);padding-left:12px;background:#EAE4D8}
.fg-home .method-select button[aria-selected=true]>span:last-child{opacity:1}
.fg-home .method-copy>.studio-link{margin-top:25px}
.fg-home .method-visual{position:relative;padding-bottom:68px;min-width:0}
.fg-home .method-image{overflow:hidden;border-radius:5px;aspect-ratio:1.17;background:var(--paper)}
.fg-home .method-image img{width:100%;height:100%;object-fit:cover;object-position:50% 47%;transition:object-position .5s var(--ease),transform .7s var(--ease)}
.fg-home .method-note{position:relative;margin:-78px -1px 0 44px;padding:28px 32px 30px;background:var(--ink);color:var(--paper);border-radius:4px;min-height:185px}
.fg-home .method-note .studio-kicker{color:#BBBFC4;font-size:11px;margin-bottom:12px}
.fg-home .method-note h3{font:500 23px/1.3 var(--sans);letter-spacing:-.025em;margin-bottom:12px}
.fg-home .method-note p:last-child{color:#C6C5C0;font-size:14px;line-height:1.75}

/* Journal: a browsable shelf of real publications. Native scrolling, no autoplay. */
.fg-home .studio-library{background:var(--ink);color:var(--paper);overflow:clip}
.fg-home .studio-library .studio-heading{font-size:clamp(36px,4vw,56px)}
.fg-home .studio-library .studio-intro{align-items:center;margin-bottom:30px}
.fg-home .studio-library .studio-heading span{color:#B3B5B9}
.fg-home .studio-library :is(a,button):focus-visible{outline-color:var(--paper)}
.fg-home .library-toolbar{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px}
.fg-home .library-filters{display:flex;gap:22px;flex-wrap:wrap}
.fg-home .library-filters button{position:relative;border:0;background:none;padding:10px 0;font-size:13px;min-height:44px;color:#B3B5B9}
.fg-home .library-filters button[aria-pressed=true]{color:var(--paper)}
.fg-home .library-filters button::after{content:'';height:1px;background:currentColor;position:absolute;bottom:4px;left:0;right:0;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.fg-home .library-filters button[aria-pressed=true]::after{transform:scaleX(1)}
.fg-home .library-controls{display:flex;gap:8px;flex-shrink:0}
.fg-home .library-controls button{height:44px;width:48px;background:none;border:1px solid #71767D;border-radius:3px;color:var(--paper);font-size:22px;transition:background .2s}
.fg-home .library-controls button:hover{background:#383D45}
.fg-home .library-controls button:disabled{opacity:.35;cursor:default}
.fg-home .library-track{display:flex;gap:22px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--steel) var(--ink);padding:6px 4px 24px;margin-inline:-4px}
.fg-home .publication{flex:0 0 calc((100% - 44px)/3);min-width:0;scroll-snap-align:start;scroll-margin-left:4px}
.fg-home .publication>a{min-height:365px;height:100%;padding:29px 28px 24px;background:var(--ink);color:var(--paper);border-radius:4px;display:flex;flex-direction:column;position:relative;isolation:isolate;overflow:hidden;transition:transform .25s var(--ease)}
.fg-home .publication-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--photo-position,center);z-index:-2;filter:saturate(.55);transition:transform .6s var(--ease)}
.fg-home .publication>a::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(22,24,28,.78),rgba(22,24,28,.72) 45%,rgba(22,24,28,.91))}
.fg-home .library-track[data-switching]{scroll-snap-type:none}
.fg-home .publication .studio-kicker{font-size:10px;letter-spacing:.08em;margin-bottom:42px;color:var(--paper)}
.fg-home .publication h3{font:500 clamp(25px,2.6vw,37px)/1.12 var(--sans);letter-spacing:-.04em;max-width:310px;margin-bottom:18px}
.fg-home .publication p{font-size:14px;line-height:1.65;max-width:290px;color:var(--paper);margin-bottom:30px}
.fg-home .publication-action{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid var(--steel);font-size:13px;font-weight:550}
.fg-home .publication>a:focus-visible{outline-color:var(--paper);outline-offset:2px}
.fg-home .library-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:12px;font-size:12px;color:#BEC1C5}
.fg-home .library-bottom p:last-child{max-width:390px;text-align:right}
@media(hover:hover) and (pointer:fine){.fg-home .publication>a:hover{transform:translateY(-4px)}.fg-home .publication>a:hover .publication-image{transform:scale(1.035)}.fg-home .practice-frame:hover .practice-photo img{transform:scale(1.025)}}

/* Contact: a quiet closing surface, with a clear primary channel and a complete form. */
.fg-home .studio-contact{background:var(--soft);padding-block:60px}
.fg-home .contact-heading{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-bottom:28px;border-bottom:1px solid #B3B0A8;margin-bottom:30px}
.fg-home .contact-heading .studio-heading{font-size:clamp(40px,4.3vw,64px)}
.fg-home .contact-heading .studio-button{flex-shrink:0}
.fg-home .contact-layout{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.4fr);gap:clamp(40px,8vw,112px)}
.fg-home .contact-details>p{max-width:320px;color:var(--muted);font-size:15px}
.fg-home .contact-details dl{margin:30px 0 0;display:grid;gap:24px}
.fg-home .contact-details dt{font-size:12px;color:var(--muted);margin-bottom:5px}
.fg-home .contact-details dd{margin:0;font-size:15px;line-height:1.7;overflow-wrap:anywhere}
.fg-home .contact-details dd a:hover{text-decoration:underline;text-underline-offset:4px}
.fg-home .contact-details .office-hours{font-size:13px;color:var(--muted);margin-top:8px}
.fg-home .contact-details .copy-email{display:flex;align-items:center;gap:15px;margin-top:20px;font-size:12px;color:var(--muted);flex-wrap:wrap}
.fg-home .copy-email button{border:0;border-bottom:1px solid currentColor;min-height:44px;background:none;padding:6px 0;font-size:13px;color:var(--ink)}
.fg-home .contact-form{width:100%;padding:0;gap:17px;background:transparent;color:var(--ink);align-self:start}
/* O reveal do formulário usa deslocamento, sem recortar o foco dos campos. */
.fg-home .contact-form[data-reveal="line"]{clip-path:none}
.fg-home .contact-form__intro{padding:0;border:0;margin:0 0 6px}
.fg-home .contact-form__intro>p:first-child{display:none}
.fg-home .contact-form__intro h3{font:500 23px/1.25 var(--sans);letter-spacing:-.025em}
.fg-home .contact-form__intro>p:last-child{font-size:14px;color:var(--muted);margin-top:8px}
.fg-home .contact-form label{gap:6px}
.fg-home .contact-form label>span:first-child{color:var(--ink);font-size:13px;font-weight:500}
.fg-home .contact-form :is(input,select,textarea){color:var(--ink);background:var(--soft);border:1px solid #A3A4A2;border-radius:3px;min-height:46px;padding:11px 12px;font-size:16px}
.fg-home .contact-form :is(input,textarea)::placeholder{color:#696F76}
.fg-home .contact-form select option{background:var(--soft)}
.fg-home .contact-form :is(input,select,textarea):focus{border-color:var(--oxide)}
.fg-home .contact-form .field-grid{gap:20px}
.fg-home .contact-form textarea{min-height:105px;height:112px}
.fg-home .contact-form .field-hint{font-size:12px;line-height:1.6;color:var(--muted)}
.fg-home .contact-form .consent{display:grid;grid-template-columns:20px 1fr;align-items:start;gap:12px}
.fg-home .contact-form .consent input{appearance:auto;width:18px;height:18px;min-height:18px;padding:0;margin:3px 0 0;accent-color:var(--oxide)}
.fg-home .contact-form .consent span{font-size:12px;line-height:1.6;color:var(--muted)}
.fg-home .contact-form .consent a{text-decoration:underline;text-underline-offset:3px}
.fg-home .contact-form>.button{font-size:14px;text-transform:none;letter-spacing:0;border-radius:3px;min-height:50px;margin:0}
.fg-home .contact-form>.button:is(:hover,:focus-visible){background:var(--charcoal);border-color:var(--charcoal);color:var(--paper-light)}
.fg-home .contact-form [aria-invalid=true]{border-color:var(--oxide)}
.fg-home .contact-form .field-error{color:var(--oxide);font-size:13px}
.fg-home .contact-form .form-errors{padding:18px;background:var(--soft);border-left:3px solid var(--oxide);font-size:14px}
.fg-home .contact-form .form-errors a{text-decoration:underline}
.fg-home .contact-form .form-status{font-size:14px;color:var(--ink)}
.fg-home .contact-form .form-status.is-error{color:var(--oxide)}
.fg-home .contact-form .form-status.is-success{color:#365B40}
.fg-home .contact-form .form-status:empty{display:none}
.fg-home .contact-form .turnstile-field:empty{display:none}
.fg-home .contact-form .honeypot{position:absolute;left:-9999px;width:1px;height:1px;min-height:0;opacity:0}

@media(min-width:1800px){.fg-home .studio-shell{width:min(1480px,calc(100% - 160px))}.fg-home .practice-panel{min-height:455px}.fg-home .practice-photo{min-height:530px}.fg-home .publication>a{min-height:410px}}
@media(max-width:1100px){.fg-home .studio-shell{width:calc(100% - 72px)}.fg-home .practice-content{padding:30px;gap:24px}.fg-home .practice-switch{padding-left:calc(32% + 30px);padding-right:30px;gap:24px}.fg-home .practice-content h3{font-size:28px}.fg-home .practice-content>p{font-size:14px}.fg-home .method-layout{gap:40px}.fg-home .publication{flex-basis:calc((100% - 22px)/2)}.fg-home .contact-layout{gap:40px;grid-template-columns:.7fr 1.3fr}}
@media(max-width:820px){.fg-home .studio-intro{gap:28px;align-items:flex-start}.fg-home .studio-intro>p{max-width:290px;font-size:14px}.fg-home .practice-panel{grid-template-columns:30% 1fr}.fg-home .practice-switch{padding-left:calc(30% + 28px)}.fg-home .practice-content{display:block;padding:28px}.fg-home .practice-content>p{margin-top:18px}.fg-home .practice-content ul{margin-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.fg-home .practice-content li{padding:12px 0}.fg-home .practice-content li:first-child{padding-top:12px}.fg-home .practice-content li strong{font-size:14px}.fg-home .practice-content li span{font-size:12px}.fg-home .practice-content .studio-link{margin-top:18px}.fg-home .method-layout{grid-template-columns:1fr 1fr;gap:28px}.fg-home .method-note{margin-left:20px;padding:24px}.fg-home .method-visual{padding-bottom:0}.fg-home .method-copy .studio-heading{font-size:34px}.fg-home .library-toolbar{align-items:flex-end}.fg-home .library-filters{gap:4px 20px}.fg-home .contact-layout{grid-template-columns:1fr}.fg-home .contact-details{display:grid;grid-template-columns:.8fr 1.2fr;gap:12px 36px}.fg-home .contact-details dl{margin:0}.fg-home .contact-details .copy-email{grid-column:2;margin:0}.fg-home .contact-form{max-width:none}.fg-home .contact-heading .studio-heading{font-size:48px}}
@media(max-width:600px){.fg-home{--fg-header-height:71px}.fg-home>section{padding-block:48px}.fg-home .studio-shell{width:calc(100% - 40px)}.fg-home .studio-heading{font-size:35px}.fg-home .studio-intro{display:block;margin-bottom:28px}.fg-home .studio-intro>p{max-width:100%;margin-top:20px;font-size:15px}.fg-home .practice-switch{padding:0 20px;gap:24px}.fg-home .practice-switch button{font-size:17px;min-height:66px;padding:18px 0}.fg-home .practice-panel{display:flex;flex-direction:column}.fg-home .practice-photo{margin:0;min-height:0;height:190px;flex-shrink:0}.fg-home .practice-photo img{object-position:50% 55%}.fg-home .practice-content{padding:25px 22px 30px}.fg-home .practice-content h3{font-size:29px;max-width:100%}.fg-home .practice-content>p{font-size:14px;max-width:100%}.fg-home .practice-content ul{gap:0 16px}.fg-home .practice-content li span{font-size:12px}.fg-home .practice-content .studio-link{font-size:13px}.fg-home .method-layout{display:flex;flex-direction:column;gap:32px;align-items:stretch}.fg-home .method-copy .studio-heading{font-size:34px;max-width:380px}.fg-home .method-copy .studio-kicker{margin-bottom:18px}.fg-home .method-select{margin-top:24px}.fg-home .method-select button{font-size:15px}.fg-home .method-copy>.studio-link{margin-top:18px}.fg-home .method-image{aspect-ratio:1.6}.fg-home .method-note{margin:-25px 0 0 20px;padding:24px;min-height:190px}.fg-home .method-note h3{font-size:22px}.fg-home .studio-library .studio-heading{font-size:35px}.fg-home .studio-library .studio-intro .studio-link{margin-top:18px}.fg-home .library-toolbar{display:block}.fg-home .library-controls{justify-content:flex-end;margin-top:15px}.fg-home .library-filters{gap:2px 18px}.fg-home .library-filters button{font-size:12px}.fg-home .publication{flex-basis:86%}.fg-home .publication>a{padding:26px 24px;min-height:360px}.fg-home .publication h3{font-size:32px}.fg-home .library-track{gap:16px}.fg-home .library-bottom{display:block}.fg-home .library-bottom p:last-child{text-align:left;margin-top:12px;font-size:11px;max-width:300px}.fg-home .contact-heading{display:block;padding-bottom:28px;margin-bottom:28px}.fg-home .contact-heading .studio-heading{font-size:44px}.fg-home .contact-heading .studio-button{margin-top:25px}.fg-home .contact-details{display:block}.fg-home .contact-details>p{max-width:100%}.fg-home .contact-details dl{margin-top:25px;gap:20px}.fg-home .contact-details .copy-email{margin-top:16px}.fg-home .contact-layout{gap:38px}.fg-home .contact-form .field-grid{grid-template-columns:1fr;gap:17px}.fg-home .contact-form__intro h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.fg-home *,.fg-home *::before,.fg-home *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.fg-home #panel-company .company-heading-accent,.fg-home #panel-worker .worker-heading-accent{color:#C9877B}

/* Geographic bridge between the library and the existing contact section. */
.fg-home .studio-territory{display:grid;grid-template-columns:44% 33% 23%;align-items:stretch;min-height:0;padding:0;background:var(--paper)}
.fg-home .territory-copy{padding:44px 64px 38px max(40px,calc((100vw - 1320px)/2));position:relative;z-index:1}
.fg-home .territory-eyebrow{display:flex;align-items:center;gap:18px;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;margin-bottom:22px}
.fg-home .territory-eyebrow::before{content:'';width:40px;height:1px;background:var(--oxide)}
.fg-home .territory-copy h2{font:500 clamp(26px,2.35vw,42px)/1.15 var(--sans);letter-spacing:-.04em;text-wrap:balance}
.fg-home .territory-description{font-size:14px;line-height:1.75;max-width:470px;margin-top:22px;color:#43484F}
.fg-home .territory-appointment{display:flex;align-items:center;gap:12px;margin-top:26px;font-size:11px;font-weight:550;letter-spacing:.06em;text-transform:uppercase;line-height:1.6}
.fg-home .territory-appointment svg{width:23px;height:28px;flex:none;fill:var(--oxide)}
.fg-home .territory-appointment svg circle{fill:var(--paper)}
.fg-home .territory-photo{position:relative;min-width:0;margin-left:-60px;clip-path:polygon(60px 0,100% 0,100% 100%,0 100%);background:var(--ink);min-height:420px;overflow:hidden}
.fg-home .territory-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:52% 50%;filter:grayscale(1);display:block}
.fg-home .territory-photo figcaption{position:absolute;right:12px;bottom:12px;padding:6px 9px;background:#22252BeF;color:var(--paper);font-size:9px;line-height:1.6;text-align:right}
.fg-home .territory-photo figcaption a{text-decoration:underline;text-underline-offset:2px}
.fg-home .territory-photo figcaption span{display:block;font-size:8px}
.fg-home .territory-state{background:var(--oxide);color:var(--paper);padding:38px 30px;display:flex;flex-direction:column;align-items:flex-start;position:relative}
.fg-home .territory-state::before{content:'';height:1px;width:70%;background:currentColor;opacity:.6;margin-bottom:24px}
.fg-home .territory-map{width:100px;height:100px;align-self:flex-end;margin-bottom:18px}
.fg-home .territory-state-title{font:400 clamp(17px,1.5vw,25px)/1.4 var(--sans);letter-spacing:-.025em}
.fg-home .territory-state-bottom{margin-top:auto;padding-top:28px;font-size:12px;line-height:1.7}
.fg-home .territory-state-bottom p:first-child{font-weight:600;margin-bottom:5px}
@media(min-width:1900px){.fg-home .territory-copy{padding-left:max(64px,calc((100vw - 1680px)/2))}.fg-home .territory-state{padding:48px}.fg-home .territory-map{width:125px;height:125px}}
@media(max-width:1100px){.fg-home .studio-territory{grid-template-columns:46% 30% 24%}.fg-home .territory-copy{padding:34px 40px 34px 36px}.fg-home .territory-photo{margin-left:-28px;clip-path:polygon(28px 0,100% 0,100% 100%,0 100%)}.fg-home .territory-state{padding:34px 22px}.fg-home .territory-copy h2{font-size:28px}}
@media(max-width:760px){.fg-home .studio-territory{grid-template-columns:1fr 1fr}.fg-home .territory-copy{grid-column:1/-1;padding:36px 24px}.fg-home .territory-copy h2{font-size:32px;max-width:570px}.fg-home .territory-description{max-width:540px}.fg-home .territory-photo{margin:0;clip-path:none;min-height:330px}.fg-home .territory-state{padding:26px 22px}.fg-home .territory-map{width:76px;height:76px;margin-bottom:12px}.fg-home .territory-state-title{font-size:18px}.fg-home .territory-state-bottom{font-size:11px;padding-top:20px}}
@media(max-width:380px){.fg-home .territory-copy h2{font-size:28px}.fg-home .territory-state{padding:24px 16px}.fg-home .territory-state-title{font-size:16px}.fg-home .territory-photo{min-height:320px}.fg-home .territory-photo figcaption{left:5px;right:5px;font-size:8px}}



/* Audience diptych: each photograph occupies its complete panel. */
.fg-home .audience-duo{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:var(--ink)}
.fg-home .audience-panel{position:relative;isolation:isolate;min-width:0;min-height:590px;overflow:hidden}
.fg-home .audience-panel+.audience-panel{border-left:1px solid #8F98A366}
.fg-home .audience-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom;z-index:-2;filter:grayscale(1) brightness(.57);transition:filter .65s cubic-bezier(.4,0,.2,1)}
.fg-home .audience-panel::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none}
.fg-home .audience-panel--worker{color:var(--ink);background:var(--paper)}
.fg-home .audience-panel--worker::before{background:linear-gradient(180deg,rgba(244,242,236,.96),rgba(244,242,236,.90) 45%,rgba(244,242,236,.10) 76%,transparent)}
.fg-home .audience-panel--company{color:var(--paper)}
.fg-home .audience-panel--company::before{background:linear-gradient(180deg,rgba(22,25,29,.94),rgba(22,25,29,.84) 46%,rgba(22,25,29,.08) 82%,transparent)}
.fg-home .audience-duo[data-active=worker] .audience-panel--worker .audience-image,.fg-home .audience-duo[data-active=company] .audience-panel--company .audience-image{filter:grayscale(0) brightness(1.06)}
.fg-home .audience-copy{padding:34px clamp(25px,3vw,44px) 220px;position:relative}
.fg-home .audience-kicker{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-bottom:4px}
.fg-home .audience-copy h3{margin:0 0 18px}
.fg-home [data-audience-button]{font:500 clamp(26px,3.1vw,43px)/1.15 var(--sans);letter-spacing:-.045em;color:inherit;background:none;border:0;padding:0;text-align:left;min-height:48px}
.fg-home .audience-panel--worker [data-audience-button]{color:var(--oxide)}
.fg-home .audience-panel--company :is(button,a,summary):focus-visible{outline-color:var(--paper)}
.fg-home .audience-lead{font-size:21px;line-height:1.35;letter-spacing:-.025em;max-width:450px}
.fg-home .audience-description{font-size:13px;line-height:1.7;max-width:450px;margin-top:16px}
.fg-home .audience-copy .studio-link{font-size:12px;margin-top:14px;gap:20px}
.fg-home .audience-details{margin-top:12px;font-size:12px;max-width:460px}
.fg-home .audience-details summary{cursor:pointer;min-height:44px;padding-block:12px;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px}
.fg-home .audience-details summary::-webkit-details-marker{display:none}
.fg-home .audience-details summary::after{content:'+';font-size:20px;line-height:1}
.fg-home .audience-details[open] summary::after{content:'−'}
.fg-home .audience-details[open]{padding:0 16px 12px;margin-inline:-16px;background:var(--paper)}
.fg-home .audience-panel--company .audience-details[open]{background:var(--ink)}
.fg-home .audience-details ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:14px 18px}
.fg-home .audience-details li{line-height:1.5}
.fg-home .audience-details strong{display:block;font-weight:600;margin-bottom:3px}
.fg-home .audience-details span{display:block;font-size:11px}
@media(max-width:900px){.fg-home .audience-copy{padding:28px 26px 200px}.fg-home [data-audience-button]{font-size:30px}.fg-home .audience-lead{font-size:19px}.fg-home .audience-description{font-size:13px}}
@media(max-width:650px){.fg-home .audience-duo{grid-template-columns:1fr}.fg-home .audience-panel{min-height:570px}.fg-home .audience-panel+.audience-panel{border-left:0;border-top:1px solid #8F98A366}.fg-home .audience-copy{padding:28px 24px 220px}.fg-home [data-audience-button]{font-size:34px}.fg-home .audience-lead{font-size:21px}.fg-home .audience-image{object-position:50% 75%}}
@media(max-width:360px){.fg-home [data-audience-button]{font-size:29px}.fg-home .audience-copy{padding-inline:20px}.fg-home .audience-details ul{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.fg-home .audience-image{transition:none}}

/* The photographs fill the entire audience section, without an outer frame. */
.fg-home > .studio-practice{padding:0;align-items:stretch}
.fg-home .studio-practice > .studio-shell{width:100%;max-width:none;margin:0;display:flex;flex-direction:column}
.fg-home .audience-section-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.fg-home .studio-practice .audience-duo{flex:1;min-height:calc(100svh - var(--fg-header-height))}
.fg-home .studio-practice .audience-copy{padding-top:clamp(40px,5vw,88px);padding-inline:clamp(28px,5vw,96px)}
@media(max-width:650px){.fg-home .studio-practice .audience-panel{min-height:calc(100svh - var(--fg-header-height))}.fg-home .studio-practice .audience-copy{padding:36px 24px 220px}}

/* Audience reading grid: balanced margins and a shared baseline for the actions. */
.fg-home .studio-practice .audience-copy{box-sizing:border-box;width:100%;max-width:880px;margin-inline:auto;padding:clamp(40px,4.5vw,80px) clamp(28px,4vw,76px) 240px;display:grid;grid-template-columns:1fr 1fr;column-gap:32px;align-content:start;align-items:start}
.fg-home .audience-copy .audience-kicker,.fg-home .audience-copy h3{grid-column:1/-1}
.fg-home .audience-copy h3{margin:4px 0 30px}
.fg-home [data-audience-button]{font-size:clamp(34px,3.3vw,64px);line-height:1.08}
.fg-home .audience-lead{font-size:clamp(21px,1.65vw,29px);line-height:1.35;max-width:none;text-wrap:balance}
.fg-home .audience-description{font-size:14px;line-height:1.75;max-width:none;margin-top:0}
.fg-home .audience-copy .studio-link{grid-column:1/-1;justify-self:start;margin-top:26px;font-size:14px}
.fg-home .audience-details{grid-column:1/-1;width:100%;max-width:none;margin-top:24px;border-top:1px solid #8F98A377;font-size:13px}
.fg-home .audience-details[open],.fg-home .audience-panel--company .audience-details[open]{margin-inline:0;padding:0;background:transparent}
.fg-home .audience-details summary{padding-block:16px}
.fg-home .audience-details ul{gap:20px 28px;padding-bottom:18px}
.fg-home .audience-details strong{font-size:13px}
.fg-home .audience-details span{font-size:12px;line-height:1.6}
@media(max-width:1100px){.fg-home .studio-practice .audience-copy{grid-template-columns:1fr;padding-inline:32px;row-gap:0}.fg-home .audience-copy h3{margin-bottom:24px}.fg-home .audience-description{margin-top:20px}.fg-home .audience-lead{font-size:23px}.fg-home [data-audience-button]{font-size:clamp(32px,4vw,43px)}}
@media(max-width:650px){.fg-home .studio-practice .audience-copy{padding:40px 28px 240px;max-width:560px}.fg-home [data-audience-button]{font-size:clamp(32px,8.5vw,46px)}.fg-home .audience-description{font-size:14px}.fg-home .audience-details ul{gap:18px}}
@media(min-width:1101px){.fg-home .studio-practice .audience-copy{grid-template-rows:auto auto minmax(140px,auto) auto auto}}

/* Local reading surface: keep text opaque and let the photograph show through. */
.fg-home .audience-details{position:relative;isolation:isolate}
.fg-home .audience-details[open]::before{content:'';position:absolute;inset:0 -16px;z-index:-1;background:rgba(234,228,216,.62);pointer-events:none}
.fg-home .audience-panel--company .audience-details[open]::before{background:rgba(34,37,43,.58)}

/* Intro and photographs form one continuous audience section. */
.fg-home .audience-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding:28px clamp(28px,4vw,76px) 30px;background:var(--paper);color:var(--ink)}
.fg-home .audience-intro-label{display:flex;align-items:center;gap:14px;font-size:10px;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px}
.fg-home .audience-intro-label::before{content:'';width:28px;height:1px;background:var(--steel)}
.fg-home .audience-intro h2{font:500 clamp(28px,2.7vw,44px)/1.08 var(--sans);letter-spacing:-.045em}
.fg-home .audience-intro-note{font-size:11px;line-height:1.7;letter-spacing:.045em;text-transform:uppercase;border-left:1px solid var(--oxide);padding-left:18px;margin-bottom:4px;max-width:300px}
.fg-home .studio-practice .audience-duo{min-height:calc(100svh - var(--fg-header-height) - 178px)}
.fg-home .studio-practice .audience-panel{min-height:530px}
.fg-home .studio-practice .audience-copy{padding-top:32px;padding-bottom:140px}
.fg-home .studio-practice .audience-copy h3{margin-bottom:22px}
@media(max-width:650px){.fg-home .audience-intro{display:block;padding:26px 28px}.fg-home .audience-intro h2{font-size:30px}.fg-home .audience-intro-note{margin-top:22px;font-size:10px}.fg-home .studio-practice .audience-panel{min-height:570px}.fg-home .studio-practice .audience-copy{padding-top:32px;padding-bottom:180px}}

/* Method: architecture, explanation and a readable sequence in one compact band. */
.fg-home .method-architecture{display:grid;grid-template-columns:33.5% 42% 24.5%;align-items:stretch;min-height:0;padding:0;background:var(--paper)}
.fg-home .method-building{position:relative;min-height:380px;overflow:hidden}
.fg-home .method-building img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.fg-home .method-building figcaption{position:absolute;top:38px;left:clamp(28px,4vw,76px);color:var(--paper);font-size:10px;line-height:1.9;letter-spacing:.2em;text-transform:uppercase;text-shadow:0 1px 8px #22252B}
.fg-home .method-editorial{padding:38px clamp(28px,4vw,76px);align-self:center}
.fg-home .method-editorial .studio-kicker{color:var(--oxide);font-size:10px;letter-spacing:.17em;margin-bottom:22px}
.fg-home .method-editorial h2{font:500 clamp(28px,2.25vw,42px)/1.12 var(--sans);letter-spacing:-.04em;margin-bottom:22px}
.fg-home .method-description{font-size:14px;line-height:1.65;color:var(--muted);max-width:440px}
.fg-home .method-contact{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding:12px 20px;margin-top:25px;background:var(--oxide);color:var(--paper);font-size:11px;line-height:1.5;transition:background .2s}
.fg-home .method-contact:hover{background:#75342C}
.fg-home .method-contact span{font-size:20px}
.fg-home .method-timeline{list-style:none;padding:38px clamp(24px,3vw,56px) 38px 0;margin:0;display:flex;flex-direction:column;justify-content:space-between;gap:28px}
.fg-home .method-timeline li{position:relative;display:grid;grid-template-columns:44px 1fr;gap:20px;flex:1}
.fg-home .method-timeline li::before{content:'';position:absolute;left:36px;top:0;bottom:-28px;width:1px;background:#8F98A388}
.fg-home .method-timeline li:last-child::before{bottom:0}
.fg-home .method-timeline li::after{content:'';position:absolute;left:33px;top:8px;width:7px;height:7px;border-radius:50%;background:#AD9184}
.fg-home .method-timeline li:nth-child(2)::after{background:var(--oxide)}
.fg-home .method-number{font-size:13px;line-height:1.7}
.fg-home .method-timeline h3{font-size:14px;line-height:1.5;font-weight:500;margin-bottom:6px}
.fg-home .method-timeline p{font-size:12px;line-height:1.6;color:var(--muted)}
@media(max-width:1000px){.fg-home .method-architecture{grid-template-columns:30% 70%}.fg-home .method-building{grid-row:1/3}.fg-home .method-editorial{padding:32px}.fg-home .method-timeline{grid-column:2;padding:0 32px 32px}.fg-home .method-timeline li{min-height:65px}}
@media(max-width:600px){.fg-home .method-architecture{grid-template-columns:1fr}.fg-home .method-editorial{grid-row:1;padding:32px 28px}.fg-home .method-timeline{grid-column:1;grid-row:2;padding:0 28px 32px}.fg-home .method-building{grid-row:3;min-height:210px}.fg-home .method-building img{object-position:center 55%}.fg-home .method-building figcaption{top:25px;left:28px}.fg-home .method-editorial h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.fg-home .method-contact{transition:none}}

/* Shared navigation destination for process and service area. */
.fg-home > .studio-help{display:flex;flex-direction:column;align-items:stretch;padding:0;background:var(--paper)} 
.fg-home .studio-help > .method-architecture{flex:1}
.fg-home .studio-help > .studio-territory{scroll-margin-top:var(--fg-header-height)}

/* Independent editorial interlude, outside the navigation sections. */
.fg-home .work-realities{position:relative;isolation:isolate;overflow:hidden;background:var(--ink);color:var(--paper);min-height:320px;margin:0}
.fg-home .work-realities-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.fg-home .work-realities::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(20,23,27,.48),rgba(20,23,27,.12) 38%,rgba(20,23,27,.85))}
.fg-home .work-realities-caption{display:grid;grid-template-columns:1fr 190px;grid-template-rows:auto 1fr;min-height:clamp(320px,25vw,470px)}
.fg-home .work-realities-label{padding:26px clamp(24px,3vw,56px);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.fg-home .work-realities-statements{grid-row:2;display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:30px;align-self:end;padding:30px clamp(24px,3vw,56px)}
.fg-home .work-realities-statements p{font:400 clamp(18px,1.55vw,27px)/1.3 var(--sans);letter-spacing:-.025em}
.fg-home .work-realities-sectors{grid-column:2;grid-row:1/3;background:rgba(34,37,43,.83);padding:28px 24px;display:flex;flex-direction:column;justify-content:center;gap:22px;font-size:10px;line-height:1.85;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:760px){.fg-home .work-realities{min-height:0;padding-top:210px}.fg-home .work-realities-image{height:210px;object-position:center}.fg-home .work-realities::before{height:210px;background:linear-gradient(180deg,transparent,rgba(34,37,43,.45))}.fg-home .work-realities-caption{display:block;min-height:0;background:var(--ink)}.fg-home .work-realities-label{padding:24px 24px 0}.fg-home .work-realities-statements{display:block;padding:20px 24px}.fg-home .work-realities-statements p{font-size:21px;margin-bottom:14px}.fg-home .work-realities-statements br{display:none}.fg-home .work-realities-sectors{padding:0 24px 26px;display:block;background:none}.fg-home .work-realities-sectors p:first-child{display:block;columns:2;margin-bottom:16px}}

/* All eight publications fit in the library flow, without a horizontal shelf. */
.fg-home .studio-library{padding-block:42px}
.fg-home .studio-library .library-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;overflow:visible;scroll-snap-type:none;padding:6px 0;margin:0}
.fg-home .studio-library .library-controls{display:none}
.fg-home .studio-library .publication>a{box-sizing:border-box;min-height:238px;padding:20px}
.fg-home .studio-library .publication .studio-kicker{font-size:9px;margin-bottom:18px}
.fg-home .studio-library .publication h3{font-size:26px;margin-bottom:12px;max-width:none}
.fg-home .studio-library .publication p{font-size:12px;line-height:1.55;margin-bottom:18px;max-width:none}
.fg-home .studio-library .publication-action{font-size:12px;padding-top:12px}
.fg-home .studio-library .studio-intro{margin-bottom:20px}
.fg-home .studio-library .library-toolbar{margin-bottom:16px}
@media(max-width:1100px){.fg-home .studio-library .library-track{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.fg-home .studio-library .library-track{grid-template-columns:1fr}.fg-home .studio-library .publication>a{min-height:220px}.fg-home .studio-library .publication h3{font-size:27px}}

/* Validation message belongs to the text column, not the checkbox column. */
.fg-home .contact-form .consent .field-error{grid-column:2;min-width:0;line-height:1.5}

/* A troca pelo menu controla a seção inteira, sem reveals concorrentes. */
.fg-home .menu-reveal-settled [data-reveal].motion-item{transition:none!important;opacity:1;transform:none;clip-path:none}
