/* v21: clear first screen, accessible navigation and one motion preference. */
.skip:focus,.page-skip:focus{position:fixed!important;top:12px!important;left:12px!important;z-index:1200!important;background:#171717;color:#fff;padding:14px 18px;clip:auto;width:auto;height:auto}
:focus-visible{outline:3px solid #b24529;outline-offset:5px}
.site-motion-control{border:1px solid currentColor;color:inherit;background:transparent;border-radius:50%;width:44px;height:44px;min-width:44px;display:grid;place-items:center;padding:12px;cursor:pointer}
.site-motion-control svg{width:20px;height:20px}.primary-nav{gap:20px}
html.reduced-site-motion{scroll-behavior:auto!important}.reduced-site-motion *, .reduced-site-motion *:before,.reduced-site-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.reduced-site-motion [data-depth],.reduced-site-motion .foreground-photo,.reduced-site-motion .hero-line,.reduced-site-motion .possibility-word,.reduced-site-motion .deliver-image{transform:none!important}
.hero.hero-cinema{width:auto;margin-left:calc(-5vw);margin-right:calc(-5vw);height:calc(100svh - 88px);min-height:600px;max-height:790px;padding:28px 5vw 0}
.hero-cinema h1{font-size:clamp(60px,8.2vw,128px);margin-top:28px}
.hero-cinema .hero-footer{left:5vw;bottom:76px;max-width:550px;gap:24px;align-items:center}
.hero-cinema .hero-copy{font-size:16px;line-height:1.5;max-width:350px}
.hero-cinema .foreground-photo{top:10%;height:86%;width:43%;right:2%}
.hero-cinema .orange-orbit{top:9%;right:3%;width:min(45vw,570px);height:min(45vw,570px)}
.hero-cinema .motion-toggle{left:5vw;bottom:16px}
.uploaded-interlude{width:auto;margin-left:-5vw;margin-right:-5vw}
.home-real-work{padding-top:70px;padding-bottom:70px}.home-real-work>h2{font-family:ArchivoExtended,Archivo,sans-serif;font-size:clamp(34px,4.5vw,62px);letter-spacing:-.05em;line-height:1.05;margin:22px 0 35px}
.home-real-work .own-project-grid{padding:0;width:100%;margin:0 0 32px}.home-real-work .own-project-art{height:230px}.home-real-work .own-project-art h3{font-family:ArchivoExtended,Archivo,sans-serif;font-size:clamp(25px,2.8vw,40px);letter-spacing:-.045em}.home-real-work .client-logo{max-height:90px}
.home-needs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid #171717}.home-needs a{font-family:ArchivoExtended,Archivo,sans-serif;font-size:clamp(20px,2.5vw,32px);padding:24px 0;border-bottom:1px solid #171717;line-height:1.15}.home-needs a:nth-child(odd){margin-right:30px}
.deck-dots{gap:6px}.deck-dots button{width:28px;height:28px;min-width:28px;border-radius:50%;border:8px solid #f5f6ee;background:#aaa;box-shadow:none}.deck-dots button[aria-pressed=true]{border-color:#f5f6ee;background:#2450e8}
#briefCopy{display:inline-block;margin:20px 24px 5px 0}#briefDraft{white-space:pre-wrap;overflow-wrap:anywhere;user-select:text}
@media(min-width:761px) and (max-width:1050px){.site-mast{padding-left:3%;padding-right:3%}.primary-nav{gap:11px}.primary-nav a{font-size:13px}.site-motion-control{width:36px;height:36px;min-width:36px;padding:8px}.site-logo,.site-logo i,.site-logo span{font-size:21px}.hero-cinema .hero-footer{max-width:490px}.hero-cinema .hero-copy{max-width:310px}}
@media(max-width:760px){.navigation-open{overflow:hidden}.site-motion-control{margin-bottom:5px}.hero.hero-cinema{height:auto;min-height:0;max-height:none;padding:26px 5vw 24px;display:flex;flex-direction:column}.hero-cinema .eyebrow{font-size:12px;max-width:90%;line-height:1.5}.hero-cinema h1{font-size:8.7vw;margin-top:23px;order:1}.hero-cinema .hero-footer{position:relative;left:auto;right:auto;bottom:auto;order:2;max-width:none;width:100%;gap:16px;margin:24px 0 0;align-items:center}.hero-cinema .hero-copy{font-size:16px;max-width:none;flex:1}.hero-cinema .round-link{width:92px;height:92px;min-width:92px;font-size:13px}.hero-cinema .foreground-photo{position:relative;top:auto;right:auto;order:3;width:80%;height:320px;margin:15px 0 0 auto;align-self:end}.hero-cinema .orange-orbit{top:auto;bottom:32px;right:3%;width:75vw;height:75vw;max-width:340px;max-height:340px}.hero-cinema .motion-toggle{bottom:27px}.hero-cinema .hero-film{inset:0}.hero-cinema .hero-footer,.hero-cinema h1,.hero-cinema .eyebrow{z-index:5}.hero-cinema .hero-footer{background:var(--paper)}.home-real-work{padding-top:45px;padding-bottom:45px}.home-real-work .own-project-grid{gap:28px}.home-real-work .own-project-art{height:210px}.home-real-work .own-project-art h3{font-size:30px}.home-needs{grid-template-columns:1fr}.home-needs a:nth-child(odd){margin-right:0}.home-needs a{font-size:24px;padding:20px 0}.home-real-work>h2{font-size:35px}.deck-controls{gap:8px}.deck-dots{gap:0}.contact-signal .contact-channels{order:2}.contact-signal .contact-user-video{order:3}}
/* Full-bleed without viewport units: scrollbar width never enters the calculation. */
#inicio>.wrap{width:100%;max-width:none;margin:0}.hero.hero-cinema{width:100%;margin-left:0;margin-right:0}.uploaded-interlude{width:100%;margin-left:0;margin-right:0}
/* Collapse before the extra accessibility control crowds tablet navigation. */
@media(min-width:761px) and (max-width:960px){body{padding-top:76px}.site-mast,.site-mast.is-scrolled{min-height:76px;padding:16px 5%;gap:15px;flex-wrap:nowrap}.nav-ready .menu-toggle{display:block;position:relative;z-index:2}.nav-ready .primary-nav{display:none;position:fixed;top:76px;left:0;right:0;height:calc(100dvh - 76px);padding:25px 7% 60px;background:var(--ink);color:var(--paper);flex-direction:column;align-items:stretch;justify-content:center;gap:16px;overflow-y:auto}.nav-ready .site-mast.menu-open .primary-nav{display:flex}.primary-nav a{font-family:ArchivoExtended,Archivo,sans-serif;font-size:28px;letter-spacing:-.05em;white-space:normal;padding:12px 0}.primary-nav a[aria-current=page]{color:var(--orange);box-shadow:none}.primary-nav a:last-child{font-size:21px;align-self:start;padding:13px 18px;margin-top:15px;color:var(--ink)}.navigation-open{overflow:hidden}}

/* v24: a bounded artwork scene and distinct mobile information levels. */
.hero-visual{display:contents}.hero-copy-mobile{display:none}
@media(max-width:760px){
.hero.hero-cinema{padding:24px 5vw 30px;display:flex;gap:0;isolation:isolate}
.hero-cinema .hero-film{display:none}
.hero-cinema>.eyebrow{font-size:11px;letter-spacing:.1em;line-height:1.4;max-width:100%;margin:0;color:#55534e}
.hero-cinema h1{order:1;margin:20px 0 0;font-size:9.1vw;line-height:.94}
.hero-cinema .hero-visual{display:block;order:2;position:relative;width:100%;height:clamp(265px,74vw,330px);margin:16px 0 20px;isolation:isolate}
.hero-cinema .hero-visual .orange-orbit{position:absolute;top:auto;bottom:4px;left:auto;right:2%;width:min(74vw,300px);height:min(74vw,300px);max-width:none;max-height:none;z-index:0;transform:none}
.hero-cinema .hero-visual .foreground-photo{position:absolute;top:0;bottom:0;right:1%;left:auto;width:84%;height:100%;margin:0;z-index:1;transform:none!important}
.hero-cinema .hero-visual .motion-toggle{position:absolute;top:auto;bottom:6px;left:0;right:auto;width:44px;height:44px;padding:12px;background:transparent;color:#55534e;z-index:2}
.hero-cinema .hero-footer{order:3;position:relative;display:block;left:auto;right:auto;bottom:auto;width:100%;max-width:none;margin:0;padding:0;background:transparent!important}
.hero-cinema .hero-copy-desktop{display:none}.hero-cinema .hero-copy-mobile{display:block}
.hero-cinema .hero-copy{font-size:15px;line-height:1.5;max-width:360px;margin:0;padding:0;color:#55534e}
.hero-cinema .hero-copy-mobile strong{display:block;font-size:18px;line-height:1.25;letter-spacing:-.02em;font-weight:700;color:var(--ink);margin:0 0 8px}
.hero-cinema .hero-copy-mobile>span{display:block}
.hero-cinema .hero-footer .round-link,.hero-cinema .hero-footer .round-link:hover{display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;min-width:0;min-height:46px;padding:12px 19px;margin:18px 0 0;border:0;border-radius:3px;background:var(--orange);color:var(--ink);font-size:15px;font-weight:600;line-height:1.4;text-align:left;transform:none}
.hero-cinema .hero-footer .round-link br{display:none}
}

/* v26: a visual, deliberately brief home gateway. */
.home-gateway,#inicio>.home-gateway{width:min(1440px,90%);margin-inline:auto;padding:104px 0 88px}.gateway-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.45fr);gap:22px 10%;align-items:end}.gateway-intro h2{margin:18px 0 0;font-family:ArchivoExtended,Archivo,sans-serif;font-size:clamp(52px,7vw,110px);font-weight:700;letter-spacing:-.075em;line-height:.9}.gateway-intro h2 em,.gateway-method h3 em{font-family:Fraunces,Georgia,serif;font-weight:400;color:var(--orange)}.gateway-intro p{margin:0;color:#59554c;font-size:17px;line-height:1.45;max-width:285px}.gateway-cta{grid-column:1;margin-top:13px;justify-self:start;border-bottom:1px solid var(--ink);padding:0 0 5px;font-size:15px;font-weight:700}.gateway-cta:hover{color:var(--orange);border-color:var(--orange)}.gateway-method{display:grid;grid-template-columns:1.35fr .65fr;min-height:470px;margin-top:92px;background:#1a1a1a;color:var(--paper);text-decoration:none}.gateway-method img{width:100%;height:100%;min-height:470px;object-fit:cover;filter:saturate(.8)}.gateway-method>div{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:52px}.gateway-method .eyebrow{color:#d0c9bd}.gateway-method h3{margin:18px 0 14px;font-family:ArchivoExtended,Archivo,sans-serif;font-size:clamp(37px,4.6vw,70px);font-weight:700;letter-spacing:-.065em;line-height:.9}.gateway-method p{margin:0 0 25px;color:#cbc5ba;font-size:14px}.gateway-method b{font-size:14px;border-bottom:1px solid var(--paper);padding-bottom:4px}.gateway-links{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.gateway-links a{position:relative;min-height:285px;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;overflow:hidden;color:#fff;background:#2a2927}.gateway-links a:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#161513df,transparent 75%)}.gateway-links img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center;transform:translate3d(var(--gateway-x,0),calc(var(--gateway-y,0) + var(--gateway-scroll,0px)),0) scale(1.03);transition:transform .28s var(--ease)}.gateway-links span{font-size:11px;letter-spacing:.1em;text-transform:uppercase}.gateway-links b{font-family:ArchivoExtended,Archivo,sans-serif;font-size:clamp(24px,2.7vw,39px);font-weight:700;letter-spacing:-.06em;line-height:.95;margin-top:7px}.gateway-links a:hover img{transform:translate3d(var(--gateway-x,0),calc(var(--gateway-y,0) + var(--gateway-scroll,0px)),0) scale(1.08)}
@media(max-width:760px){.home-gateway{padding:62px 5vw 58px}.gateway-intro{display:block}.gateway-intro h2{font-size:50px;margin-top:17px}.gateway-intro p{font-size:15px;margin-top:23px}.gateway-cta{display:inline-block;margin-top:23px}.gateway-method{display:block;min-height:0;margin-top:60px}.gateway-method img{display:block;min-height:0;height:245px}.gateway-method>div{padding:34px 28px 38px}.gateway-method h3{font-size:47px;margin:15px 0 12px}.gateway-links{display:block;margin-top:12px}.gateway-links a{min-height:178px;margin-bottom:12px;padding:18px}.gateway-links b{font-size:31px}.gateway-links i{right:17px;top:14px}}

/* v30: concrete data, analysis and automation services. */
.data-service-band{padding-top:82px;padding-bottom:84px;border-top:1px solid var(--ink)}.data-service-intro{display:grid;grid-template-columns:1fr minmax(250px,.55fr);gap:28px 10%;align-items:end}.data-service-intro .page-eyebrow{grid-column:1}.data-service-intro h2{grid-column:1;margin:0;font-family:ArchivoExtended,Archivo,sans-serif;font-size:clamp(42px,5.4vw,78px);line-height:.95;letter-spacing:-.065em}.data-service-intro p{grid-column:2;grid-row:1 / span 2;margin:0 0 3px;font-size:16px;line-height:1.55;color:var(--mute)}.data-service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:50px;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.data-service-grid article{min-height:225px;padding:22px 22px 25px 0;display:flex;flex-direction:column}.data-service-grid article+article{padding-left:22px;border-left:1px solid var(--ink)}.data-service-grid span{font-size:11px;color:var(--orange);margin-bottom:auto}.data-service-grid h3{margin:26px 0 9px;font-family:ArchivoExtended,Archivo,sans-serif;font-size:clamp(19px,2vw,29px);line-height:1.03;letter-spacing:-.05em}.data-service-grid p{margin:0;max-width:240px;font-size:13px;line-height:1.5;color:var(--mute)}.experience-note{font-size:13px!important;line-height:1.5!important;color:var(--mute);max-width:430px;margin-top:22px!important}
@media(max-width:760px){.data-service-band{padding-top:54px;padding-bottom:56px}.data-service-intro{display:block}.data-service-intro h2{font-size:43px;margin:14px 0 20px}.data-service-intro p{font-size:15px;max-width:360px}.data-service-grid{grid-template-columns:1fr 1fr;margin-top:35px}.data-service-grid article{min-height:187px;padding:18px 13px 20px 0}.data-service-grid article:nth-child(odd){border-left:0;padding-left:0}.data-service-grid article:nth-child(even){padding-left:13px;border-left:1px solid var(--ink)}.data-service-grid h3{font-size:21px;margin:20px 0 8px}.data-service-grid p{font-size:12px}.experience-note{font-size:12px!important}}

/* v32.1 — seletor de idioma e estados do formulário */
.primary-nav a.lang-switch{font-size:12px;font-weight:600;letter-spacing:.12em;padding:7px 2px;border-bottom:1px solid transparent}
.primary-nav a.lang-switch:hover,.primary-nav a.lang-switch:focus-visible{border-bottom-color:var(--orange);color:inherit}
@media(max-width:760px){.primary-nav a.lang-switch{font-family:Archivo,sans-serif;font-size:15px;letter-spacing:.14em;align-self:start;padding:10px 0;margin-top:8px;opacity:.8}}
.form-trap{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.contact-form-wrap button[type=submit][disabled]{opacity:.6;cursor:progress}
.form-status{font-size:14px;line-height:1.5;min-height:1.5em;margin-top:16px}
.form-status.is-error{color:#a63315}
.form-status a{color:inherit;text-decoration:underline}
.form-sent:focus{outline:none}
.form-sent p{font-size:18px;line-height:1.5;max-width:460px;margin:22px 0 0}

.footer-motion{background:none;border:0;border-bottom:1px solid currentColor;color:inherit;font:inherit;font-size:inherit;letter-spacing:inherit;padding:2px 0;cursor:pointer;opacity:.75;justify-self:center}
.footer-motion:hover,.footer-motion:focus-visible{opacity:1}

.notfound{padding-top:clamp(60px,10vw,140px);padding-bottom:clamp(60px,10vw,140px)}
.notfound h1{font-size:clamp(44px,8vw,112px);line-height:.95;margin:18px 0 28px}
.notfound h1 em{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:400;color:var(--orange)}
.notfound-lead{font-size:20px;line-height:1.45;max-width:560px;margin:0 0 26px}
.notfound-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin:0 0 48px}
.notfound-links a{font-size:18px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:3px}
.notfound-links a:hover{color:var(--orange)}
.notfound-en{font-size:15px;opacity:.75}
.notfound-en a{text-decoration:underline}

.legal{padding-top:clamp(50px,8vw,120px);padding-bottom:clamp(60px,9vw,130px)}
.legal h1{font-size:clamp(40px,7vw,96px);line-height:.98;margin:16px 0 14px}
.legal h1 em{font-family:Fraunces,Georgia,serif;font-style:italic;font-weight:400;color:var(--orange)}
.legal-updated{font-size:14px;opacity:.7;margin:0 0 clamp(32px,5vw,64px)}
.legal-body{max-width:720px}
.legal-body section{border-top:1px solid rgba(23,23,23,.2);padding:22px 0 26px}
.legal-body h2{font-size:clamp(18px,2vw,22px);line-height:1.2;margin:0 0 10px}
.legal-body p{font-size:17px;line-height:1.6;margin:0}
.legal-body a,.form-note a,.footer-nav a[href*=priva]{text-decoration:underline;text-underline-offset:3px}
.legal-back{margin:40px 0 0}

/* v33 — página da Elvita com filme real */
.film-opening{padding-top:30px}
.film-player{margin:0}
.film-player video{width:100%;height:auto;aspect-ratio:16/9;background:#000;display:block}
.film-player figcaption{font-size:13px;letter-spacing:.07em;margin-top:12px;opacity:.75}
.film-player video p{padding:24px;color:#fff}
.film-player video a{color:inherit;text-decoration:underline}
.case-context-text p{font-size:20px;line-height:1.6;margin:40px 0 0}
.case-context-text p+p{margin-top:18px}
.film-act{padding:44px 0 12px;border-top:1px solid rgba(23,23,23,.2)}
.film-act:first-of-type{margin-top:10px}
.film-act-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px}
.film-act-num{font-size:13px;letter-spacing:.12em;color:var(--orange)}
.film-act h3{font-family:ArchivoExtended,Archivo,sans-serif;font-size:clamp(24px,3vw,38px);line-height:1.1;letter-spacing:-.04em;margin:0}
.film-act-time{font-size:13px;letter-spacing:.12em;text-transform:uppercase;opacity:.65}
.film-act>p{font-size:19px;line-height:1.55;max-width:720px;margin:16px 0 0}
.frame-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:26px}
@media(min-width:900px){.frame-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.frame-grid figure{margin:0}
.frame-grid img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;background:#15120f}
.frame-grid figcaption{font-size:13px;line-height:1.35;margin-top:8px}
.frame-grid figcaption span{display:block;font-size:11px;letter-spacing:.1em;opacity:.6;margin-bottom:2px}

/* v34 — página do Instituto Pro Bono com o site real */
.pb-opening{padding-top:30px}
.pb-browser{margin:0;border:1px solid rgba(23,23,23,.18);border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 24px 60px -30px rgba(5,43,44,.45)}
.pb-browser-bar{display:flex;gap:7px;padding:12px 14px;background:#e9eeee;border-bottom:1px solid rgba(23,23,23,.1)}
.pb-browser-bar i{width:10px;height:10px;border-radius:50%;background:#b9c3c3;display:block}
.pb-browser img{width:100%;height:auto;display:block}
.pb-browser figcaption{font-size:13px;letter-spacing:.07em;padding:12px 16px;background:#fff;opacity:.75}
.pb-feature{display:block;padding:48px 0 14px;border-top:1px solid rgba(23,23,23,.2)}
.pb-feature-text{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:8px clamp(24px,4vw,56px);align-items:start;margin-bottom:28px}
.pb-feature-text .pb-feature-page{grid-column:1/-1;margin-bottom:0}
.pb-feature-text h3{margin:0}
.pb-feature-text p{margin-top:2px}
.pb-feature-page{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--orange);margin-bottom:10px}
.pb-feature h3{font-family:ArchivoExtended,Archivo,sans-serif;font-size:clamp(24px,3vw,38px);line-height:1.1;letter-spacing:-.04em}
.pb-feature p{font-size:19px;line-height:1.55;margin:0}
.pb-feature figure{margin:0;border:1px solid rgba(23,23,23,.15);border-radius:10px;overflow:hidden;background:#fff}
.pb-feature img{width:100%;height:auto;display:block}
.pb-feature figcaption{font-size:12px;letter-spacing:.07em;padding:10px 14px;opacity:.7}
@media(max-width:820px){.pb-feature-text{grid-template-columns:1fr}}
.pb-page-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(min-width:760px){.pb-page-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.pb-page-grid figure{margin:0}
.pb-page-grid img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;display:block;border:1px solid rgba(23,23,23,.15);border-radius:8px;background:#e1f3f5}
.pb-page-grid figcaption{font-size:14px;margin-top:8px;font-weight:600}
.pb-phones{display:flex;gap:clamp(14px,3vw,36px);margin-top:36px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 18px;justify-content:flex-start}
@media(min-width:900px){.pb-phones{overflow:visible;justify-content:flex-start}}
.pb-phone{margin:0;flex:0 0 min(62vw,270px);scroll-snap-align:start}
.pb-phone img{width:100%;height:auto;aspect-ratio:585/1266;object-fit:cover;display:block;border:7px solid #111;border-radius:30px;background:#111}
.pb-phone figcaption{font-size:14px;margin-top:10px;font-weight:600}
.pb-swatches{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media(min-width:760px){.pb-swatches{grid-template-columns:repeat(4,minmax(0,1fr))}}
.pb-swatches li{display:flex;flex-direction:column;gap:4px;font-size:14px}
.pb-swatch{display:block;height:84px;border-radius:8px;border:1px solid rgba(23,23,23,.15);margin-bottom:6px}
.pb-swatches code{font-size:12px;letter-spacing:.06em;opacity:.7}
