/* Norte v2.0 — refinamento visual e integração com CMS */
:root{--navy:#102a43;--navy-deep:#061827;--navy-ink:#04131f;--blue:#72c3e5;--blue-bright:#b7ebff}
.site-header{position:fixed!important;top:14px!important;z-index:1000!important;pointer-events:none}.site-header>*{pointer-events:auto}.header-inner{background:linear-gradient(135deg,#061827e8,#0a2338dc)!important;border-color:#9bdfff2e!important;box-shadow:0 22px 65px #020a126b,inset 0 1px #ffffff12!important;backdrop-filter:blur(20px) saturate(145%)!important;min-height:74px}.site-header.is-scrolled .header-inner{background:linear-gradient(135deg,#061827f5,#0b2235f2)!important;box-shadow:0 18px 55px #020b14a1!important}
.brand-v2{gap:13px!important;min-width:250px}.brand-v2 .brand-symbol{width:38px;height:38px;display:grid;place-items:center;flex:none}.brand-v2 .brand-symbol img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 15px #72c3e52c)}.brand-v2 .brand-wordmark{height:34px;width:185px;display:flex;align-items:center;overflow:hidden}.brand-v2 .brand-wordmark img{width:100%;height:100%;object-fit:contain;object-position:left center}.footer-brand .brand-v2{min-width:0}.footer-brand .brand-wordmark{width:205px;height:38px}
.desktop-nav a{font-weight:560;letter-spacing:.04em}.desktop-nav a:after{background:linear-gradient(90deg,var(--blue),var(--blue-bright))}.header-cta{background:#ffffff08;border-color:#a8dff34d;box-shadow:inset 0 1px #ffffff10}.header-cta:hover{background:#fff;color:#061827}
.hero-v2{--hero-x:0px;--hero-y:0px;--spot-x:70%;--spot-y:25%;isolation:isolate;overflow:hidden;perspective:1100px;background:#061827}.hero-v2 .hero-new-image{background-image:var(--hero-bg)!important;background-size:cover!important;background-position:center!important;inset:-3.5%!important;transform:translate3d(var(--hero-x),calc(var(--hero-y) + var(--hero-scroll,0px)),0) scale(1.085)!important;transition:transform .16s linear!important;filter:saturate(.78) contrast(1.08) brightness(.82)}.hero-v2 .hero-new-overlay{z-index:2;background:radial-gradient(700px 520px at var(--spot-x) var(--spot-y),#72c3e528,transparent 65%),linear-gradient(90deg,#03101ced 0%,#061827c9 43%,#071c2c48 74%,#06182782 100%),linear-gradient(180deg,#06182745 0%,transparent 35%,#061827d9 100%)!important}.hero-depth-glow{position:absolute;z-index:1;inset:-10%;pointer-events:none;background:radial-gradient(circle at 71% 35%,#7bd3f830 0 7%,transparent 34%),radial-gradient(circle at 88% 80%,#155a8638,transparent 28%);filter:blur(12px);transform:translate3d(calc(var(--hero-x)*-.6),calc(var(--hero-y)*-.6),0)}.hero-noise{position:absolute;z-index:4;inset:-50%;pointer-events:none;opacity:.15;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='5' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.85'/%3E%3C/svg%3E");background-size:135px 135px;animation:noiseDrift 1.8s steps(2) infinite}.hero-architecture-lines{position:absolute;z-index:3;inset:0;pointer-events:none;opacity:.2}.hero-architecture-lines:before,.hero-architecture-lines:after,.hero-architecture-lines i{content:"";position:absolute;border-color:#b7ebff;border-style:solid}.hero-architecture-lines:before{width:44vw;height:44vw;right:-12vw;top:9vh;border-width:1px 0 0 1px;transform:rotate(18deg)}.hero-architecture-lines:after{width:29vw;height:62vh;right:12vw;bottom:-30vh;border-width:1px 1px 0 0;transform:skewX(-18deg)}.hero-architecture-lines i:nth-child(1){width:1px;height:100%;left:52%;top:0;border-width:0 0 0 1px}.hero-architecture-lines i:nth-child(2){width:36%;height:1px;right:0;top:61%;border-width:1px 0 0}.hero-architecture-lines i:nth-child(3){width:12px;height:12px;border:1px solid #b7ebff;border-radius:50%;left:52%;top:61%;transform:translate(-50%,-50%);box-shadow:0 0 0 8px #72c3e50b}
.hero-v2 .hero-new-content{z-index:5}.hero-v2 .hero-copy-new{max-width:760px}.hero-v2 .hero-kicker{color:#d4f2ff}.hero-v2 .hero-copy-new h1{text-shadow:0 18px 45px #020a126b;letter-spacing:-.05em}.hero-v2 .hero-copy-new h1 em{background:linear-gradient(100deg,#fff 0%,#b7ebff 45%,#72c3e5 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-v2 .hero-lead-new{color:#e1eff5bd;max-width:620px}.hero-project-card{position:absolute!important;right:clamp(32px,5vw,78px)!important;bottom:110px!important;min-width:300px!important;max-width:360px!important;padding:22px 58px 22px 22px!important;border:1px solid #b7ebff36!important;border-radius:16px!important;background:linear-gradient(135deg,#061827cc,#102a43a8)!important;backdrop-filter:blur(18px)!important;box-shadow:0 28px 70px #020a1261,inset 0 1px #ffffff13!important;transform:translateZ(50px);transition:transform .4s var(--ease),border-color .3s!important}.hero-project-card:hover{transform:translate3d(0,-8px,70px)!important;border-color:#b7ebff75!important}.hero-project-card b{position:absolute;right:20px;top:20px;color:var(--blue);font-size:22px;font-weight:400}.hero-project-card strong{font-size:20px!important}.hero-project-card small{color:#b9d3df!important}.hero-signature{position:absolute;z-index:5;right:clamp(32px,5vw,76px);top:148px;color:#d8f0fb68;display:flex;align-items:center;gap:11px;font-family:var(--font-geist-mono);font-size:8px;letter-spacing:.18em;transform:rotate(90deg);transform-origin:100% 0}.hero-signature i{width:23px;height:1px;background:#72c3e56b}.hero-scroll-new{z-index:6!important;box-shadow:0 14px 40px #020a127a!important}
@keyframes noiseDrift{0%{transform:translate(0,0)}25%{transform:translate(1.5%,-1%)}50%{transform:translate(-1%,1.3%)}75%{transform:translate(.8%,1%)}100%{transform:translate(0,0)}}
.service-card-new,.strength-card,.process-card-new,.project-card-new .project-image-new{transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .3s}.service-card-new:hover,.strength-card:hover,.process-card-new:hover{transform:translateY(-7px);box-shadow:0 28px 80px #0924371f}.project-card-new:hover .project-image-new{box-shadow:0 32px 80px #000d1845}.portfolio-new{position:relative;overflow:hidden}.portfolio-new:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.05;background-image:linear-gradient(#b7ebff 1px,transparent 1px),linear-gradient(90deg,#b7ebff 1px,transparent 1px);background-size:90px 90px;mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 80%,transparent)}
.compact-hero{min-height:610px!important;display:flex;align-items:flex-end;background:radial-gradient(circle at 80% 20%,#72c3e51c,transparent 28%),linear-gradient(145deg,#061827,#0b2a43)!important;position:relative;overflow:hidden}.compact-hero:before{content:"";position:absolute;inset:0;opacity:.1;background-image:linear-gradient(#b7ebff 1px,transparent 1px),linear-gradient(90deg,#b7ebff 1px,transparent 1px);background-size:72px 72px;transform:perspective(900px) rotateX(58deg) scale(1.7);transform-origin:center bottom}.compact-hero .inner-hero-content{position:relative;z-index:2;padding:180px 0 95px}.compact-hero h1{max-width:900px;margin:18px 0 24px;font-size:clamp(54px,7vw,104px);line-height:.95;letter-spacing:-.055em;color:white}.compact-hero p{max-width:700px;color:#dcecf3bd;line-height:1.8}.works-grid-v2{gap:70px 28px}.work-card{display:block}.work-card.wide{grid-column:1/-1}.work-card.wide .work-img{aspect-ratio:16/7}.work-img{position:relative;overflow:hidden;border-radius:18px;aspect-ratio:4/3;background:#0b2236}.work-img img{height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .5s}.work-img>span{position:absolute;right:18px;bottom:18px;background:#071827d9;color:#fff;border:1px solid #ffffff30;padding:12px 16px;border-radius:999px;font-size:10px;backdrop-filter:blur(14px);opacity:0;transform:translateY(8px);transition:.35s}.work-card:hover .work-img img{transform:scale(1.045)}.work-card:hover .work-img>span{opacity:1;transform:none}.work-info{padding:18px 3px 0}.work-info p{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:#4d96b8}.work-info h2{font-size:clamp(24px,3vw,42px);margin:7px 0}.work-info small{color:#7c8791}
.project-detail-hero{height:min(88vh,880px);min-height:650px;position:relative;overflow:hidden;background:#061827}.project-detail-bg{position:absolute;inset:-3%;background-image:var(--project-cover);background-size:cover;background-position:center;filter:saturate(.82) contrast(1.05);transform:scale(1.03)}.project-detail-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#06182740 0%,#0618270c 35%,#061827e8 100%),linear-gradient(90deg,#06182796,transparent 65%)}.project-detail-intro{position:absolute;z-index:2;left:50%;bottom:70px;transform:translateX(-50%);color:#fff}.project-detail-intro h1{font-size:clamp(56px,8vw,120px);letter-spacing:-.06em;line-height:.9;margin:14px 0 30px;max-width:1050px}.project-meta{display:flex;flex-wrap:wrap;gap:12px}.project-meta span{border:1px solid #ffffff30;background:#06182769;backdrop-filter:blur(10px);border-radius:999px;padding:10px 14px;font-size:10px;letter-spacing:.07em}.project-story{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;align-items:start}.project-story h2{font-size:clamp(38px,5vw,68px);letter-spacing:-.045em;line-height:1.03}.project-description{font-size:17px;line-height:1.95;color:#52606d;padding-top:24px}.project-gallery{background:#071827;padding:35px 0 120px}.project-gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.project-gallery figure{margin:0;position:relative}.project-gallery figure:nth-child(3n+1){grid-column:1/-1}.project-gallery img,.project-gallery video{width:100%;height:auto;max-height:820px;object-fit:cover;border-radius:14px}.project-gallery figcaption{color:#c9dce5a8;font-size:10px;letter-spacing:.06em;padding:11px 3px}.video-external{aspect-ratio:16/9;border:1px solid #ffffff1c;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,#0b2942,#071827);overflow:hidden}.video-external iframe{width:100%;height:100%;border:0}.video-external a{color:#fff;border:1px solid #ffffff33;border-radius:999px;padding:14px 18px}.simple-error{min-height:75vh;display:flex;align-items:center;padding-top:120px}.simple-error h1{font-size:clamp(50px,8vw,100px)}
@media(max-width:1040px){.brand-v2{min-width:0}.brand-v2 .brand-wordmark{width:175px}.hero-project-card{right:32px!important}.hero-signature{display:none}}
@media(max-width:760px){.site-header{top:8px!important}.header-inner{min-height:62px}.brand-v2 .brand-symbol{width:30px;height:30px}.brand-v2 .brand-wordmark{width:140px;height:28px}.hero-v2 .hero-new-image{inset:0!important;transform:none!important;background-position:64% center!important}.hero-project-card{display:none!important}.hero-v2 .hero-new-overlay{background:radial-gradient(500px 380px at 70% 20%,#72c3e51e,transparent 65%),linear-gradient(90deg,#03101cf0,#061827a8),linear-gradient(180deg,transparent 35%,#061827e8)!important}.hero-architecture-lines{opacity:.12}.hero-signature{display:none}.compact-hero{min-height:560px!important}.compact-hero .inner-hero-content{padding:150px 0 75px}.compact-hero h1{font-size:clamp(46px,13vw,72px)}.project-detail-hero{min-height:650px;height:82vh}.project-detail-intro{bottom:48px}.project-detail-intro h1{font-size:clamp(50px,15vw,78px)}.project-story{grid-template-columns:1fr;gap:25px}.project-gallery-grid{grid-template-columns:1fr}.project-gallery figure:nth-child(3n+1){grid-column:auto}.work-card.wide{grid-column:auto}.work-card.wide .work-img{aspect-ratio:4/3}}

/* v2.1 — páginas institucionais e contato */
.page-hero-v21{--page-hero-image:none;min-height:760px;position:relative;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;background:var(--navy-deep);color:#fff}.page-hero-image-v21{position:absolute;inset:-4%;z-index:0;background-image:var(--page-hero-image);background-position:center;background-size:cover;filter:saturate(.72) contrast(1.08) brightness(.72);transform:scale(1.055);animation:pageHeroIn 1.3s var(--ease) both}.page-hero-overlay-v21{position:absolute;inset:0;z-index:1;background:radial-gradient(800px 520px at 74% 30%,#72c3e526,transparent 62%),linear-gradient(90deg,#03101cf0 0%,#061827d8 40%,#06182785 68%,#06182770 100%),linear-gradient(180deg,#06182722 0%,transparent 40%,#061827e8 100%)}.page-hero-grid-v21{position:absolute;z-index:2;inset:0;opacity:.17;pointer-events:none;background-image:linear-gradient(#b7ebff 1px,transparent 1px),linear-gradient(90deg,#b7ebff 1px,transparent 1px);background-size:110px 110px;-webkit-mask-image:linear-gradient(90deg,#000 0 55%,transparent 92%);mask-image:linear-gradient(90deg,#000 0 55%,transparent 92%)}.page-hero-grid-v21:after{content:"";position:absolute;left:51.8%;top:0;width:1px;height:100%;background:#b7ebff66;box-shadow:0 0 0 9px #72c3e508}.page-hero-noise-v21{position:absolute;z-index:3;inset:-50%;opacity:.13;pointer-events:none;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='5' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.82'/%3E%3C/svg%3E");background-size:135px 135px;animation:noiseDrift 1.8s steps(2) infinite}.page-hero-content-v21{position:relative;z-index:4;display:grid;grid-template-columns:120px minmax(0,1fr) 310px;gap:44px;align-items:end;padding-top:190px;padding-bottom:92px}.page-hero-index-v21{align-self:start;padding-top:12px;display:grid;grid-template-columns:auto 1fr;gap:10px 13px;align-items:center;color:#c9eaf8}.page-hero-index-v21 span{font-family:var(--font-geist-mono);font-size:10px;letter-spacing:.16em}.page-hero-index-v21 i{display:block;height:1px;background:linear-gradient(90deg,#72c3e5,transparent)}.page-hero-index-v21 small{grid-column:1/-1;color:#ffffff7d;font-size:8px;letter-spacing:.18em;text-transform:uppercase}.page-hero-copy-v21{max-width:800px}.page-hero-copy-v21 h1{margin:21px 0 28px;font-size:clamp(58px,7vw,108px);font-weight:500;line-height:.92;letter-spacing:-.06em;text-shadow:0 22px 54px #020a126b}.page-hero-copy-v21 h1 em{background:linear-gradient(105deg,#fff 0,#c9f0ff 42%,#72c3e5 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.page-hero-copy-v21>p:last-child{max-width:670px;margin:0;color:#d8eaf2bd;font-size:16px;line-height:1.85}.page-hero-side-v21{align-self:end;margin-bottom:5px;padding:23px 22px 24px;border:1px solid #b7ebff33;border-radius:16px;background:linear-gradient(145deg,#061827a8,#17384d67);box-shadow:0 24px 65px #010a1352,inset 0 1px #ffffff12;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.page-hero-side-v21>span{display:block;margin-bottom:16px;color:var(--blue-bright);font-size:8px;font-weight:650;letter-spacing:.16em;text-transform:uppercase}.page-hero-side-v21 strong{display:block;color:#fff;font-size:25px;font-weight:540;line-height:1.15;letter-spacing:-.03em}.page-hero-side-v21 small{display:block;margin-top:16px;color:#c8dce5a1;font-size:9px;line-height:1.55}.page-hero-side-v21 a{display:block;color:#fff;font-size:13px;line-height:1.5;word-break:break-word;transition:color .25s}.page-hero-side-v21 a:hover{color:var(--blue-bright)}
@keyframes pageHeroIn{0%{opacity:0;transform:scale(1.12)}to{opacity:1;transform:scale(1.055)}}

/* Quem somos */
.about-manifesto-v21{padding:130px 0 125px}.about-manifesto-grid-v21{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(320px,.66fr);gap:110px;align-items:start}.about-manifesto-title-v21 h2{margin:19px 0 0;max-width:780px;font-size:clamp(42px,5vw,74px);line-height:1.04;letter-spacing:-.055em;font-weight:510}.about-manifesto-copy-v21{padding-top:40px;border-top:1px solid #10223824}.about-manifesto-copy-v21 p{margin:0;color:#52616f;font-size:16px;line-height:1.95}.about-manifesto-copy-v21 p+p{margin-top:22px}.about-editorial-v21{padding:120px 0;background:radial-gradient(60% 100% at 100% 0,#72c3e51a,transparent 68%),linear-gradient(145deg,#061827,#0b2941 68%,#10354f);color:#fff;position:relative;overflow:hidden}.about-editorial-v21:before{content:"";position:absolute;inset:0;opacity:.07;background-image:linear-gradient(#b7ebff 1px,transparent 1px),linear-gradient(90deg,#b7ebff 1px,transparent 1px);background-size:96px 96px}.about-editorial-grid-v21{position:relative;z-index:1;display:grid;grid-template-columns:1.06fr .94fr;gap:95px;align-items:center}.about-editorial-image-v21{position:relative;min-height:620px}.about-editorial-image-v21>img{height:620px;object-fit:cover;border-radius:20px;filter:saturate(.72) contrast(1.06);box-shadow:0 35px 90px #01070d70}.about-editorial-image-v21:after{content:"";position:absolute;inset:18px;border:1px solid #ffffff24;border-radius:14px;pointer-events:none}.about-editorial-badge-v21{position:absolute;right:-35px;bottom:40px;display:flex;align-items:center;gap:16px;padding:17px 19px;border:1px solid #b7ebff33;border-radius:14px;background:#061827df;box-shadow:0 22px 50px #01070d73;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.about-editorial-badge-v21 span{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:var(--blue);color:var(--navy-deep);font-size:22px;font-weight:750}.about-editorial-badge-v21 small{color:#d8ebf3b8;font-size:8px;line-height:1.65;letter-spacing:.11em;text-transform:uppercase}.about-editorial-copy-v21 h2{margin:18px 0 25px;font-size:clamp(42px,4.8vw,70px);font-weight:500;line-height:1.02;letter-spacing:-.055em}.about-editorial-copy-v21>p{color:#d9e9f0b5;font-size:15px;line-height:1.9}.about-editorial-points-v21{margin-top:42px;border-top:1px solid #ffffff1c}.about-editorial-points-v21>div{display:grid;grid-template-columns:42px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid #ffffff1c}.about-editorial-points-v21 span{color:var(--blue);font-family:var(--font-geist-mono);font-size:9px}.about-editorial-points-v21 p{margin:0;color:#eef7fabe;font-size:13px;line-height:1.6}.about-values-v21{padding:130px 0}.about-values-head-v21{display:grid;grid-template-columns:.5fr 1fr;gap:40px;align-items:end;margin-bottom:60px}.about-values-head-v21 h2{margin:0;font-size:clamp(42px,5vw,72px);line-height:1.02;letter-spacing:-.055em;font-weight:510}.about-values-grid-v21{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.about-value-card-v21{min-height:390px;padding:26px;border:1px solid #10223816;border-radius:18px;background:linear-gradient(150deg,#fff,#f5f8f8);position:relative;overflow:hidden;transition:transform .4s var(--ease),border-color .3s,box-shadow .4s}.about-value-card-v21:before{content:"";position:absolute;inset:0;opacity:.45;background:radial-gradient(300px at 0 0,#72c3e52e,transparent 62%)}.about-value-card-v21:hover{transform:translateY(-7px);border-color:#72c3e57a;box-shadow:0 25px 65px #0f36501d}.about-value-card-v21>span{position:relative;color:#4198bb;font-family:var(--font-geist-mono);font-size:10px;letter-spacing:.12em}.about-value-card-v21 small{position:relative;display:block;margin-top:75px;color:#627483;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.about-value-card-v21 h3{position:relative;margin:10px 0 20px;font-size:clamp(24px,2.2vw,34px);line-height:1.06;letter-spacing:-.045em;font-weight:560}.about-value-card-v21 p{position:relative;margin:0;color:#64717d;font-size:13px;line-height:1.75}.about-method-v21{padding:125px 0;background:linear-gradient(140deg,#061827,#0c2c44);color:#fff}.about-method-grid-v21{display:grid;grid-template-columns:.72fr 1.28fr;gap:100px}.about-method-copy-v21{position:sticky;top:130px;align-self:start}.about-method-copy-v21 h2{margin:18px 0 24px;font-size:clamp(42px,4.7vw,68px);line-height:1.02;letter-spacing:-.055em;font-weight:500}.about-method-copy-v21>p{max-width:500px;margin:0 0 34px;color:#d7e8efb0;font-size:14px;line-height:1.85}.about-method-list-v21{border-top:1px solid #ffffff24}.about-method-list-v21 article{display:grid;grid-template-columns:58px 1fr;gap:25px;padding:30px 8px 31px;border-bottom:1px solid #ffffff24;transition:background .3s,padding .35s}.about-method-list-v21 article:hover{background:#ffffff08;padding-inline:18px}.about-method-list-v21 article>span{color:var(--blue);font-family:var(--font-geist-mono);font-size:10px}.about-method-list-v21 small{color:#9dc7d8;font-size:8px;letter-spacing:.15em;text-transform:uppercase}.about-method-list-v21 h3{margin:5px 0 8px;font-size:26px;font-weight:540;letter-spacing:-.035em}.about-method-list-v21 p{margin:0;color:#c9dce5a8;font-size:12px;line-height:1.65}.about-cta-v21{padding:105px 0 130px}.about-cta-panel-v21{display:grid;grid-template-columns:1.1fr .75fr;gap:90px;align-items:end;padding:60px;border:1px solid #10223818;border-radius:22px;background:radial-gradient(520px at 100% 0,#72c3e528,transparent 65%),#fff;box-shadow:0 28px 80px #102a430d}.about-cta-panel-v21 h2{margin:17px 0 0;font-size:clamp(40px,4.7vw,66px);line-height:1.03;letter-spacing:-.055em;font-weight:510}.about-cta-panel-v21>div:last-child>p{margin:0 0 28px;color:#5f6e7b;font-size:14px;line-height:1.85}

/* Serviços */
.services-positioning-v21{padding:125px 0}.services-positioning-grid-v21{display:grid;grid-template-columns:1fr .75fr;gap:100px;align-items:end}.services-positioning-grid-v21 h2{margin:18px 0 0;font-size:clamp(44px,5vw,74px);font-weight:510;line-height:1.02;letter-spacing:-.055em}.services-positioning-copy-v21>p{margin:0;color:#596a77;font-size:15px;line-height:1.9}.services-axis-v21{display:flex;align-items:center;gap:10px;margin-top:30px;color:#355166;font-family:var(--font-geist-mono);font-size:8px;letter-spacing:.11em;text-transform:uppercase}.services-axis-v21 i{height:1px;flex:1;background:linear-gradient(90deg,#72c3e5,#1022381f)}.services-showcase-v21{padding:25px 0 125px;background:#f4f7f7}.services-showcase-list-v21{display:grid;gap:16px}.service-showcase-v21{display:grid;grid-template-columns:100px minmax(330px,1.1fr) minmax(270px,.75fr) minmax(250px,.68fr);gap:38px;align-items:start;padding:44px 42px;border:1px solid #10223817;border-radius:20px;background:linear-gradient(145deg,#fff,#f7faf9);box-shadow:0 12px 38px #102a4309;position:relative;overflow:hidden;transition:transform .4s var(--ease),box-shadow .4s,border-color .3s}.service-showcase-v21:before{content:"";position:absolute;inset:0;opacity:.32;pointer-events:none;background:radial-gradient(430px at 0 0,#72c3e52b,transparent 66%)}.service-showcase-v21:hover{transform:translateY(-5px);border-color:#72c3e56a;box-shadow:0 28px 70px #0c354d18}.service-showcase-number-v21{position:relative;display:grid;gap:16px}.service-showcase-number-v21 span{color:#327fa0;font-family:var(--font-geist-mono);font-size:11px;letter-spacing:.13em}.service-showcase-number-v21 i{width:46px;height:1px;background:linear-gradient(90deg,#72c3e5,transparent)}.service-showcase-main-v21,.service-showcase-deliverables-v21,.service-showcase-fit-v21{position:relative}.service-showcase-main-v21>p{margin:0 0 10px;color:#5d7888;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.service-showcase-main-v21 h2{margin:0 0 21px;font-size:clamp(31px,3vw,45px);font-weight:550;line-height:1.02;letter-spacing:-.05em}.service-showcase-description-v21{max-width:560px;color:#5f6f7c;font-size:13px;line-height:1.8}.service-showcase-deliverables-v21 small,.service-showcase-fit-v21 small{display:block;margin-bottom:16px;color:#557487;font-size:8px;font-weight:650;letter-spacing:.14em;text-transform:uppercase}.service-showcase-deliverables-v21 ul{list-style:none;margin:0;padding:0}.service-showcase-deliverables-v21 li{display:flex;gap:10px;align-items:flex-start;padding:7px 0;color:#33495a;font-size:11px;line-height:1.5;border-bottom:1px solid #1022380d}.service-showcase-deliverables-v21 li i{width:5px;height:5px;margin-top:5px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px #72c3e51c}.service-showcase-fit-v21{padding-left:24px;border-left:1px solid #10223814}.service-showcase-fit-v21 p{margin:0;color:#697984;font-size:11px;line-height:1.75}.services-process-v21{padding:125px 0}.services-process-head-v21{display:grid;grid-template-columns:.48fr 1fr .72fr;gap:50px;align-items:end;margin-bottom:60px}.services-process-head-v21 h2{margin:0;font-size:clamp(42px,4.8vw,69px);font-weight:510;line-height:1.02;letter-spacing:-.055em}.services-process-head-v21>p:last-child{margin:0;color:#61717e;font-size:13px;line-height:1.8}.services-process-grid-v21{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-process-step-v21{min-height:320px;padding:27px;border-radius:18px;background:linear-gradient(145deg,#071827,#0e3049);color:#fff;position:relative;overflow:hidden;border:1px solid #ffffff13}.service-process-step-v21:before{content:"";position:absolute;width:180px;height:180px;right:-70px;top:-80px;border:1px solid #72c3e52b;border-radius:50%;box-shadow:0 0 0 35px #72c3e506}.service-process-step-v21>span{position:relative;color:var(--blue);font-family:var(--font-geist-mono);font-size:9px}.service-process-step-v21 small{position:relative;display:block;margin-top:85px;color:#a8cbd9;font-size:8px;letter-spacing:.15em;text-transform:uppercase}.service-process-step-v21 h3{position:relative;margin:7px 0 13px;font-size:29px;font-weight:530;letter-spacing:-.04em}.service-process-step-v21 p{position:relative;margin:0;color:#c8dbe3a8;font-size:11px;line-height:1.7}.services-detail-visual-v21{padding:125px 0;background:radial-gradient(70% 100% at 100% 0,#72c3e518,transparent 65%),linear-gradient(140deg,#061827,#0a2941);color:#fff}.services-detail-visual-grid-v21{display:grid;grid-template-columns:1.08fr .82fr;gap:90px;align-items:center}.services-detail-image-v21{position:relative}.services-detail-image-v21 img{height:620px;object-fit:cover;border-radius:20px;filter:saturate(.72) contrast(1.08);box-shadow:0 32px 85px #000a1263}.services-detail-image-v21:after{content:"";position:absolute;inset:18px;border:1px solid #ffffff2b;border-radius:14px}.services-detail-image-v21>span{position:absolute;z-index:2;left:25px;bottom:24px;padding:12px 15px;border:1px solid #ffffff2b;border-radius:999px;background:#061827b5;color:#cce5ef;font-size:8px;letter-spacing:.15em;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.services-detail-copy-v21 h2{margin:18px 0 25px;font-size:clamp(42px,4.8vw,70px);font-weight:500;line-height:1.02;letter-spacing:-.055em}.services-detail-copy-v21>p{margin:0 0 32px;color:#d4e5ecb2;font-size:14px;line-height:1.9}.services-cta-v21{padding:110px 0 130px}.services-cta-panel-v21{display:grid;grid-template-columns:1fr .72fr;gap:90px;align-items:end;padding:58px;border-radius:22px;border:1px solid #10223818;background:#fff;box-shadow:0 28px 75px #102a430d}.services-cta-panel-v21 h2{margin:17px 0 0;font-size:clamp(40px,4.8vw,67px);font-weight:510;line-height:1.03;letter-spacing:-.055em}.services-cta-panel-v21>div:last-child>p{margin:0 0 27px;color:#61717e;font-size:14px;line-height:1.85}

/* Contato */
.contact-intro-v21{padding:115px 0 105px}.contact-intro-grid-v21{display:grid;grid-template-columns:.88fr 1.12fr;gap:100px;align-items:end}.contact-intro-copy-v21 h2{margin:18px 0 22px;font-size:clamp(42px,4.8vw,67px);font-weight:510;line-height:1.03;letter-spacing:-.055em}.contact-intro-copy-v21>p{max-width:560px;margin:0;color:#62717d;font-size:14px;line-height:1.85}.contact-step-grid-v21{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.contact-step-v21{min-height:240px;padding:24px;border:1px solid #10223814;border-radius:17px;background:#fff;box-shadow:0 15px 40px #102a4309}.contact-step-v21 span{color:#398eb0;font-family:var(--font-geist-mono);font-size:9px}.contact-step-v21 h3{margin:68px 0 9px;font-size:23px;letter-spacing:-.035em;font-weight:550}.contact-step-v21 p{margin:0;color:#697783;font-size:11px;line-height:1.65}.contact-form-section-v21{padding:120px 0 130px;background:radial-gradient(50% 70% at 0 100%,#72c3e51c,transparent 65%),linear-gradient(145deg,#061827,#0a2941);color:#fff}.contact-layout-v21{display:grid;grid-template-columns:.66fr 1.12fr;gap:90px;align-items:start}.contact-aside-v21{position:sticky;top:130px}.contact-aside-v21 h2{margin:18px 0 23px;font-size:clamp(42px,4.6vw,66px);font-weight:500;line-height:1.02;letter-spacing:-.055em}.contact-aside-v21>p{max-width:460px;margin:0;color:#d6e7eeb3;font-size:14px;line-height:1.85}.contact-direct-v21{margin-top:42px;padding:21px 0;border-top:1px solid #ffffff22;border-bottom:1px solid #ffffff22}.contact-direct-v21 span{display:block;margin-bottom:8px;color:#8db8c9;font-size:8px;letter-spacing:.15em;text-transform:uppercase}.contact-direct-v21 a{color:#fff;font-size:14px;word-break:break-word;transition:color .25s}.contact-direct-v21 a:hover{color:var(--blue-bright)}.contact-aside-note-v21{display:grid;grid-template-columns:24px 1fr;gap:13px;margin-top:25px}.contact-aside-note-v21 i{width:17px;height:1px;margin-top:9px;background:var(--blue)}.contact-aside-note-v21 p{margin:0;color:#b9ced7a0;font-size:10px;line-height:1.7}.contact-form-v21{padding:42px!important;border-radius:20px!important;background:linear-gradient(145deg,#ffffff,#f7faf9)!important;color:var(--ink);box-shadow:0 35px 90px #01081155!important}.contact-form-v21:before{display:none}.contact-form-v21 label{display:grid;gap:9px;color:#485c6a;font-size:9px;font-weight:620;letter-spacing:.08em;text-transform:uppercase}.contact-form-v21 input,.contact-form-v21 select,.contact-form-v21 textarea{width:100%;border:1px solid #1022381a;border-radius:11px;background:#f2f6f7!important;color:#102238;padding:14px 15px;outline:none;text-transform:none;letter-spacing:0;font-size:13px;transition:border-color .25s,box-shadow .25s,background .25s}.contact-form-v21 textarea{resize:vertical;min-height:160px;line-height:1.65}.contact-form-v21 input:focus,.contact-form-v21 select:focus,.contact-form-v21 textarea:focus{border-color:#72c3e5;background:#fff!important;box-shadow:0 0 0 4px #72c3e51d!important}.contact-form-v21 .field-grid{gap:14px;margin-bottom:16px}.contact-form-v21>label{margin-bottom:16px}.form-heading-v21{display:flex;align-items:center;gap:14px;margin-bottom:20px}.form-heading-v21>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e2f3f9;color:#27799c;font-family:var(--font-geist-mono);font-size:9px}.form-heading-v21 small{display:block;color:#6e8492;font-size:7px;letter-spacing:.14em;text-transform:uppercase}.form-heading-v21 strong{display:block;margin-top:2px;font-size:16px;font-weight:600;letter-spacing:-.02em}.form-divider-v21{height:1px;margin:26px 0;background:#10223816}.form-bottom-v21{display:flex;gap:30px;align-items:center;justify-content:space-between;margin-top:25px}.form-bottom-v21>p{max-width:330px;margin:0;color:#75838d;font-size:9px;line-height:1.6}.form-bottom-v21>p strong{color:#425866;font-weight:620}.form-alert{margin-bottom:24px;padding:14px 16px;border-radius:11px;font-size:11px;line-height:1.55}.form-alert.success{background:#e8f7ef;border:1px solid #65b8895e;color:#236242}.form-alert.error{background:#fff0ed;border:1px solid #d786765e;color:#8b382c}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-hero-v21 .page-hero-side-v21{min-width:0}

/* Rodapé v2.1 */
.footer-col a[href^="mailto:"]{word-break:break-word}.footer-contact-mail-v21{font-size:10px!important;color:#d6eaf2b8!important}

@media(max-width:1180px){.page-hero-content-v21{grid-template-columns:80px 1fr 255px;gap:30px}.service-showcase-v21{grid-template-columns:70px 1fr .8fr;gap:30px}.service-showcase-fit-v21{grid-column:2/-1;padding:22px 0 0;border-left:0;border-top:1px solid #10223814}.about-values-grid-v21,.services-process-grid-v21{grid-template-columns:repeat(2,1fr)}.about-value-card-v21{min-height:330px}.service-process-step-v21{min-height:280px}}
@media(max-width:900px){.page-hero-v21{min-height:700px}.page-hero-content-v21{grid-template-columns:1fr;gap:26px;padding-top:155px;padding-bottom:65px}.page-hero-index-v21{display:none}.page-hero-side-v21{width:min(100%,380px)}.page-hero-grid-v21{background-size:80px 80px}.page-hero-grid-v21:after{left:62%}.about-manifesto-grid-v21,.about-editorial-grid-v21,.about-method-grid-v21,.about-cta-panel-v21,.services-positioning-grid-v21,.services-detail-visual-grid-v21,.services-cta-panel-v21,.contact-intro-grid-v21,.contact-layout-v21{grid-template-columns:1fr;gap:55px}.about-manifesto-copy-v21{padding-top:25px}.about-editorial-image-v21,.about-editorial-image-v21>img,.services-detail-image-v21 img{min-height:0;height:auto;aspect-ratio:4/3}.about-editorial-badge-v21{right:20px}.about-method-copy-v21,.contact-aside-v21{position:static}.about-values-head-v21,.services-process-head-v21{grid-template-columns:1fr;gap:18px}.service-showcase-v21{grid-template-columns:65px 1fr;gap:26px}.service-showcase-deliverables-v21{grid-column:2}.service-showcase-fit-v21{grid-column:2;padding-top:22px}.contact-step-grid-v21{grid-template-columns:repeat(3,1fr)}.contact-form-v21{padding:34px!important}}
@media(max-width:640px){.page-hero-v21{min-height:670px}.page-hero-image-v21{background-position:62% center}.page-hero-overlay-v21{background:radial-gradient(480px 370px at 74% 20%,#72c3e51c,transparent 62%),linear-gradient(90deg,#03101cf3,#061827b0),linear-gradient(180deg,transparent 38%,#061827ea)}.page-hero-content-v21{padding-top:130px;padding-bottom:48px}.page-hero-copy-v21 h1{font-size:clamp(47px,13.6vw,68px)}.page-hero-copy-v21>p:last-child{font-size:13px;line-height:1.75}.page-hero-side-v21{padding:18px}.about-manifesto-v21,.about-values-v21,.services-positioning-v21,.services-process-v21,.contact-intro-v21{padding:88px 0}.about-editorial-v21,.about-method-v21,.services-detail-visual-v21,.contact-form-section-v21{padding:90px 0}.about-cta-v21,.services-cta-v21{padding:80px 0 95px}.about-values-grid-v21,.services-process-grid-v21,.contact-step-grid-v21{grid-template-columns:1fr}.about-value-card-v21{min-height:290px}.about-value-card-v21 small{margin-top:55px}.about-cta-panel-v21,.services-cta-panel-v21{padding:30px;gap:35px}.service-showcase-v21{grid-template-columns:1fr;padding:28px 24px;gap:18px}.service-showcase-number-v21{display:flex;align-items:center}.service-showcase-number-v21 i{width:36px}.service-showcase-deliverables-v21,.service-showcase-fit-v21{grid-column:auto}.service-showcase-fit-v21{padding:20px 0 0}.service-process-step-v21{min-height:235px}.service-process-step-v21 small{margin-top:55px}.services-detail-image-v21 img{aspect-ratio:4/4.6}.contact-step-v21{min-height:190px}.contact-step-v21 h3{margin-top:45px}.contact-form-v21{padding:24px!important}.form-bottom-v21{align-items:flex-start;flex-direction:column}.form-bottom-v21 .primary-button{width:100%}.about-editorial-badge-v21{right:12px;bottom:12px}.about-editorial-image-v21>img{aspect-ratio:4/4.5}.about-method-list-v21 article{grid-template-columns:42px 1fr}.services-axis-v21{flex-wrap:wrap}.services-axis-v21 i{min-width:25px}}


/* v2.2.0 — estabilidade + desempenho */
:root{--font-geist-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace}
body:before{inset:0;transform:none;mix-blend-mode:soft-light;opacity:.035;background-image:radial-gradient(circle at 25% 25%,#102238 0 .55px,transparent .7px),radial-gradient(circle at 75% 70%,#102238 0 .45px,transparent .65px);background-size:9px 9px,11px 11px;background-position:0 0,4px 5px}
.cursor-aura{left:0!important;top:0!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;transform:translate3d(var(--cursor-x),var(--cursor-y),0) translate(-50%,-50%);will-change:transform;opacity:.72}
.hero-noise,.page-hero-noise-v21{inset:0!important;animation:none!important;mix-blend-mode:soft-light;opacity:.07!important;background-image:radial-gradient(circle at 20% 30%,#fff 0 .5px,transparent .65px),radial-gradient(circle at 75% 68%,#fff 0 .4px,transparent .6px)!important;background-size:8px 8px,11px 11px!important;background-position:0 0,4px 5px!important}
.hero-depth-glow{filter:blur(8px)}
.reveal{opacity:1!important;transform:none!important}
.reveal.reveal-armed{opacity:0!important;transform:translateY(24px)!important}
.reveal.reveal-armed.is-visible{opacity:1!important;transform:none!important}
.page-hero-image-v21{animation:none;transform:scale(1.025);will-change:auto}
.hero-v2 .hero-new-image{transition:transform .22s linear!important;will-change:transform}
.site-header .header-inner{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
@media(max-width:760px){.site-header .header-inner,.mobile-menu{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.hero-depth-glow{filter:none;opacity:.7}.page-hero-grid-v21{opacity:.1}}
@media(prefers-reduced-motion:reduce){.hero-v2 .hero-new-image{transform:none!important}.hero-depth-glow{transform:none!important}}


/* v2.3.0 — grids suaves + hierarquia refinada */
body:before{opacity:.022}
.soft-lines{opacity:.16}
.strengths-new{background:linear-gradient(90deg,#72c3e505 1px,#0000 1px) 0 0/108px 108px,linear-gradient(#fff,#fbfcfc)}
.portfolio-new:before{opacity:.42}
.portfolio-new:after{opacity:.022}
.hero-architecture-lines{opacity:.09}
.hero-architecture-lines:before,.hero-architecture-lines:after,.hero-architecture-lines i{border-color:#d4f2ff80}
.hero-noise,.page-hero-noise-v21{opacity:.045!important}
.hero-depth-glow{opacity:.72}
.compact-hero:before{opacity:.03}
.about-editorial-v21:before{opacity:.028}
.page-hero-v21{min-height:720px}
.page-hero-grid-v21{opacity:.065;background-size:132px 132px;-webkit-mask-image:linear-gradient(90deg,#000 0 44%,transparent 88%);mask-image:linear-gradient(90deg,#000 0 44%,transparent 88%)}
.page-hero-grid-v21:after{opacity:.38;left:49.8%;background:#d7f3ff42;box-shadow:0 0 0 7px #72c3e505}
.about-hero-v21 .page-hero-grid-v21,.services-hero-v21 .page-hero-grid-v21{opacity:.055}
.contact-hero-v21 .page-hero-grid-v21{opacity:.04}
.contact-hero-v21 .page-hero-grid-v21:after{opacity:.18}
.page-hero-copy-v21{max-width:760px}
.page-hero-copy-v21 h1{max-width:8.7ch;font-size:clamp(52px,6.1vw,92px);font-weight:520;letter-spacing:-.058em;text-wrap:balance;text-shadow:0 14px 44px #0108115c}
.page-hero-copy-v21>p:last-child{max-width:560px;color:#e3eef3c4}
.page-hero-side-v21{background:linear-gradient(145deg,#081a2acb,#12354f85);border-color:#b7ebff24;box-shadow:0 24px 62px #01081152}
.page-hero-side-v21 strong{font-size:30px;line-height:.98}
.contact-hero-v21 .page-hero-copy-v21 h1{max-width:7.3ch;font-size:clamp(50px,5.85vw,86px)}
.contact-hero-v21 .page-hero-content-v21{grid-template-columns:90px minmax(0,1fr) 300px;gap:32px}
.about-hero-v21 .page-hero-copy-v21 h1{max-width:8.2ch}
.services-hero-v21 .page-hero-copy-v21 h1{max-width:9.1ch}
.services-positioning-v21{padding-top:110px}
.services-showcase-v21{padding:16px 0 125px;background:linear-gradient(#f5f8f8,#f2f6f6)}
.service-showcase-v21{padding:46px 42px;border-radius:22px;box-shadow:0 18px 44px #102a430a}
.service-showcase-v21:before{opacity:.22}
.service-showcase-main-v21 h2{font-size:clamp(30px,3vw,40px)}
.service-showcase-description-v21{max-width:54ch}
.contact-step-v21,.about-value-card-v21,.service-process-step-v21{box-shadow:0 16px 38px #102a4308}
.contact-form-section-v21{background:radial-gradient(54% 76% at 0 100%,#72c3e512,transparent 65%),linear-gradient(145deg,#061827,#0a2941)}
.contact-form-v21{box-shadow:0 28px 74px #01081142!important}
.about-cta-panel-v21,.services-cta-panel-v21{box-shadow:0 18px 46px #102a430c}
.services-metrics-v23{padding:34px 0 26px;background:linear-gradient(#f7f9f9,#f5f8f8)}
.services-metrics-grid-v23{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.services-metric-card-v23{padding:26px 24px 24px;border:1px solid #10223814;border-radius:20px;background:linear-gradient(145deg,#fff,#f8fbfb);box-shadow:0 14px 36px #102a4308;position:relative;overflow:hidden}
.services-metric-card-v23:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#72c3e552,#0000 35%) top/100% 1px no-repeat,radial-gradient(240px at 0 0,#72c3e515,#0000 68%)}
.services-metric-card-v23 span{display:block;color:#3b8caf;font-family:var(--font-geist-mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase}
.services-metric-card-v23 strong{display:block;margin:18px 0 12px;font-size:clamp(22px,2.2vw,30px);font-weight:560;letter-spacing:-.04em;color:#102238}
.services-metric-card-v23 p{margin:0;color:#5b6c79;font-size:13px;line-height:1.72}
.contact-direct-cards-v23{display:grid;grid-template-columns:1fr;gap:12px;margin-top:28px}
.contact-direct-card-v23{padding:18px 18px 17px;border:1px solid #10223814;border-radius:16px;background:#fff;box-shadow:0 12px 30px #102a4308}
.contact-direct-card-v23 span{display:block;color:#4d96b8;font-size:8px;letter-spacing:.14em;text-transform:uppercase}
.contact-direct-card-v23 strong{display:block;margin-top:12px;font-size:16px;letter-spacing:-.02em;color:#102238}
.contact-direct-card-v23 p{margin:8px 0 0;color:#647381;font-size:11px;line-height:1.7}
@media(max-width:1180px){.services-metrics-grid-v23{grid-template-columns:1fr}.contact-hero-v21 .page-hero-content-v21{grid-template-columns:1fr}.contact-direct-cards-v23{grid-template-columns:1fr}}
@media(max-width:900px){.page-hero-grid-v21{opacity:.04;background-size:96px 96px}.page-hero-grid-v21:after{opacity:.2;left:63%}.services-metrics-v23{padding:8px 0 16px}.services-metrics-grid-v23,.contact-direct-cards-v23{grid-template-columns:1fr}.page-hero-copy-v21 h1,.contact-hero-v21 .page-hero-copy-v21 h1{max-width:7.6ch;font-size:clamp(48px,11vw,70px)}}
@media(max-width:640px){.soft-lines,.page-hero-grid-v21,.about-editorial-v21:before,.compact-hero:before{display:none}.page-hero-copy-v21 h1,.contact-hero-v21 .page-hero-copy-v21 h1{max-width:7.2ch;font-size:clamp(44px,13vw,62px)}.services-metric-card-v23{padding:22px 20px}}

/* v2.4 — conteúdo institucional, sócios e áreas de atuação */
@media(min-width:1041px){.desktop-nav{gap:clamp(14px,1.55vw,24px)}.desktop-nav a{font-size:10.5px}}

.home-credentials-v24{padding:30px 0 76px}
.home-credentials-grid-v24{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.home-credential-card-v24{position:relative;display:grid;grid-template-columns:64px 1fr;gap:24px;align-items:start;padding:30px 32px;border:1px solid #10223814;border-radius:22px;background:linear-gradient(145deg,#fff,#f8fbfb);box-shadow:0 16px 42px #102a4309;overflow:hidden}
.home-credential-card-v24:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#72c3e557,#0000 38%) top/100% 1px no-repeat,radial-gradient(280px at 0 0,#72c3e517,#0000 68%)}
.home-credential-card-v24>span{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:linear-gradient(145deg,#0b263d,#174d6b);color:#b7ebff;font-family:var(--font-geist-mono);font-size:10px;letter-spacing:.14em;box-shadow:0 10px 30px #0a2d4324}
.home-credential-card-v24 small{display:block;margin-bottom:8px;color:#4b94b5;font-size:8px;letter-spacing:.15em;text-transform:uppercase}
.home-credential-card-v24 h3{margin:0 0 10px;font-size:clamp(23px,2.1vw,31px);font-weight:550;letter-spacing:-.035em;color:#102238}
.home-credential-card-v24 p{margin:0;max-width:48ch;color:#647381;font-size:13px;line-height:1.75}

.about-company-v24{padding:112px 0 122px}
.about-company-grid-v24{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(56px,8vw,120px);align-items:start}
.about-company-heading-v24{position:sticky;top:120px}
.about-company-heading-v24 h2{margin:20px 0 0;max-width:12ch;font-size:clamp(42px,5.2vw,72px);font-weight:520;line-height:1.01;letter-spacing:-.055em}
.about-company-copy-v24{padding-left:32px;border-left:1px solid #10223817}
.about-company-copy-v24 p{margin:0 0 24px;color:#526473;font-size:15px;line-height:1.9}
.about-company-copy-v24 p:first-child{font-size:16px;color:#293f51}
.about-company-copy-v24 strong{color:#102238;font-weight:650}

.about-team-v24{padding:118px 0 132px;background:radial-gradient(60% 52% at 100% 0,#72c3e512,#0000 70%),linear-gradient(#f7f9f9,#edf2f3)}
.about-team-head-v24{margin-bottom:62px}
.about-team-head-v24 h2{margin:18px 0 0;max-width:960px;font-size:clamp(40px,5.3vw,72px);font-weight:520;line-height:1.02;letter-spacing:-.055em}
.about-team-list-v24{display:grid;gap:88px}
.partner-card-v24{display:grid;grid-template-columns:minmax(340px,.88fr) minmax(0,1.12fr);gap:clamp(48px,7vw,105px);align-items:center;padding:34px;border:1px solid #10223813;border-radius:30px;background:#fff;box-shadow:0 24px 70px #102a430d;overflow:hidden}
.partner-card-reverse-v24{grid-template-columns:minmax(0,1.12fr) minmax(340px,.88fr)}
.partner-card-reverse-v24 .partner-photo-v24{order:2}.partner-card-reverse-v24 .partner-copy-v24{order:1}
.partner-photo-v24{position:relative;min-height:620px;border-radius:22px;overflow:hidden;background:#0a1d2d;box-shadow:0 24px 60px #0618272a}
.partner-photo-v24:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0000 58%,#061827a6)}
.partner-photo-v24 img{width:100%;height:100%;min-height:620px;position:absolute;inset:0;object-fit:cover;object-position:center 12%;filter:saturate(.92) contrast(1.02)}
.partner-photo-hebeny-v24 img{object-position:center center}
.partner-photo-v24 span{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;color:#e7f7fd;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.partner-copy-v24{padding:18px 24px 18px 0}
.partner-card-reverse-v24 .partner-copy-v24{padding:18px 0 18px 24px}
.partner-index-v24{display:flex;align-items:center;gap:12px;margin-bottom:42px;color:#6d7d89}
.partner-index-v24 span{font-family:var(--font-geist-mono);font-size:9px;letter-spacing:.14em;color:#3d8fb2}
.partner-index-v24 i{width:52px;height:1px;background:#10223824}
.partner-index-v24 small{font-size:8px;letter-spacing:.14em;text-transform:uppercase}
.partner-copy-v24 h3{margin:15px 0 28px;max-width:14ch;font-size:clamp(34px,4vw,55px);font-weight:520;line-height:1.04;letter-spacing:-.05em;color:#102238}
.partner-copy-v24>p:not(.section-label){margin:0 0 18px;color:#5c6d79;font-size:13.5px;line-height:1.82}
.partner-copy-v24>p:last-child{margin-bottom:0}

.services-axis-three-v24{grid-template-columns:auto 1fr auto 1fr auto!important}
.architecture-services-v24,.engineering-services-v24{position:relative;padding:116px 0 128px;background:radial-gradient(58% 70% at 100% 0,#3d94bb22,#0000 70%),linear-gradient(145deg,#061827,#0b2840);overflow:hidden}
.architecture-services-v24:before,.engineering-services-v24:before{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 calc(25% - 1px),#b7ebff08 25%);-webkit-mask-image:linear-gradient(#0000,#000 14% 86%,#0000);mask-image:linear-gradient(#0000,#000 14% 86%,#0000)}
.architecture-services-head-v24,.engineering-services-head-v24{position:relative;z-index:1;margin-bottom:52px}
.architecture-services-head-v24 h2,.engineering-services-head-v24 h2{margin:18px 0 0;max-width:930px;color:#fff;font-size:clamp(42px,5.2vw,70px);font-weight:520;line-height:1.02;letter-spacing:-.055em}
.architecture-service-grid-v24{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.architecture-service-card-v24{position:relative;min-height:190px;display:grid;grid-template-columns:46px 1fr auto;gap:18px;align-items:start;padding:28px 28px 26px;border:1px solid #b7ebff1c;border-radius:20px;background:linear-gradient(145deg,#0d2940cc,#0a2033c2);box-shadow:0 18px 45px #00081428;transition:transform .35s var(--ease),border-color .35s,background .35s}
.architecture-service-card-v24:hover{transform:translateY(-4px);border-color:#72c3e55c;background:linear-gradient(145deg,#12344f,#0a2438)}
.architecture-service-card-v24>span{color:#72c3e5;font-family:var(--font-geist-mono);font-size:9px;letter-spacing:.16em}
.architecture-service-card-v24 small{display:block;margin-bottom:38px;color:#96b5c6;font-size:8px;letter-spacing:.14em;text-transform:uppercase}
.architecture-service-card-v24 h3{margin:0;max-width:18ch;color:#fff;font-size:clamp(25px,2.6vw,36px);font-weight:520;line-height:1.06;letter-spacing:-.04em}
.architecture-service-card-v24 svg{width:22px;color:#8dd5ee;transition:transform .3s}
.architecture-service-card-v24:hover svg{transform:translate(3px,-3px)}
.architecture-service-card-v24:last-child{grid-column:1/-1;min-height:166px}

.engineering-intro-v24{padding:100px 0 110px}
.engineering-intro-grid-v24{display:grid;grid-template-columns:1fr .9fr;gap:clamp(55px,8vw,120px);align-items:end}
.engineering-intro-v24 h2{margin:18px 0 0;max-width:12ch;font-size:clamp(42px,5.2vw,70px);font-weight:520;line-height:1.02;letter-spacing:-.055em}
.engineering-intro-copy-v24{padding-left:34px;border-left:1px solid #10223818}
.engineering-intro-copy-v24 p{margin:0 0 18px;color:#5d6f7d;font-size:14px;line-height:1.82}
.engineering-intro-copy-v24 p:first-child{color:#102238;font-size:20px;font-weight:540;line-height:1.45}
.engineering-service-list-v24{position:relative;z-index:1;display:grid;gap:10px}
.engineering-service-row-v24{display:grid;grid-template-columns:55px minmax(0,1fr) auto;gap:24px;align-items:center;padding:24px 28px;border:1px solid #b7ebff1b;border-radius:17px;background:#0d2940a6;transition:transform .3s var(--ease),background .3s,border-color .3s}
.engineering-service-row-v24:hover{transform:translateX(5px);background:#11334d;border-color:#72c3e54a}
.engineering-service-row-v24>span{color:#72c3e5;font-family:var(--font-geist-mono);font-size:9px;letter-spacing:.16em}
.engineering-service-row-v24 small{display:block;margin-bottom:6px;color:#7fa4b7;font-size:7.5px;letter-spacing:.14em;text-transform:uppercase}
.engineering-service-row-v24 h3{margin:0;color:#fff;font-size:clamp(20px,2.1vw,29px);font-weight:520;letter-spacing:-.035em}
.engineering-service-row-v24 p{margin:8px 0 0;color:#abc1cd;font-size:11px;line-height:1.6}
.engineering-service-row-v24 svg{width:20px;color:#8dd5ee;transition:transform .3s}
.engineering-service-row-v24:hover svg{transform:translate(3px,-3px)}
.engineering-detail-v24{background:linear-gradient(145deg,#071a2a,#0b2a42)}

@media(max-width:900px){
  .home-credentials-grid-v24,.about-company-grid-v24,.partner-card-v24,.partner-card-reverse-v24,.engineering-intro-grid-v24{grid-template-columns:1fr}
  .about-company-heading-v24{position:static}
  .about-company-copy-v24{padding-left:0;border-left:0}
  .partner-card-v24,.partner-card-reverse-v24{gap:32px;padding:24px}
  .partner-card-reverse-v24 .partner-photo-v24,.partner-card-reverse-v24 .partner-copy-v24{order:initial}
  .partner-copy-v24,.partner-card-reverse-v24 .partner-copy-v24{padding:12px 4px 8px}
  .partner-photo-v24,.partner-photo-v24 img{min-height:560px}
  .architecture-service-grid-v24{grid-template-columns:1fr}
  .architecture-service-card-v24:last-child{grid-column:auto}
  .engineering-intro-copy-v24{padding-left:0;border-left:0}
}
@media(max-width:640px){
  .home-credentials-v24{padding:16px 0 64px}
  .home-credential-card-v24{grid-template-columns:48px 1fr;gap:16px;padding:22px 20px;border-radius:18px}
  .home-credential-card-v24>span{width:44px;height:44px}
  .about-company-v24,.about-team-v24,.architecture-services-v24,.engineering-services-v24{padding:86px 0}
  .about-company-grid-v24{gap:34px}
  .about-company-copy-v24 p{font-size:14px;line-height:1.8}
  .about-team-head-v24{margin-bottom:38px}
  .about-team-list-v24{gap:44px}
  .partner-card-v24,.partner-card-reverse-v24{padding:14px;border-radius:22px}
  .partner-photo-v24,.partner-photo-v24 img{min-height:460px}
  .partner-photo-v24{border-radius:16px}
  .partner-copy-v24 h3{font-size:clamp(34px,10vw,46px)}
  .partner-index-v24{margin-bottom:28px}
  .architecture-service-card-v24{grid-template-columns:38px 1fr auto;min-height:165px;padding:22px 20px}
  .architecture-service-card-v24 small{margin-bottom:26px}
  .engineering-intro-v24{padding:78px 0}
  .engineering-service-row-v24{grid-template-columns:38px 1fr auto;gap:14px;padding:20px 18px}
  .engineering-service-row-v24 h3{font-size:19px}
  .services-axis-three-v24{gap:10px}
  .footer-topline h2{max-width:14ch}
}

/* v2.5 refinements requested by client */
.home-credentials-v25{padding:24px 0 92px;background:transparent}
.home-credentials-v25 .home-credential-card-v24{background:#fff;border:1px solid #10223812;box-shadow:0 16px 38px #102a4308}

.about-company-copy-v24 p,
.partner-copy-v24 p,
.services-detail-copy-v21>p,
.services-cta-panel-v21>div:last-child>p,
.contact-intro-copy-v21>p,
.contact-direct-card-v23 p,
.contact-step-v21 p,
.engineering-intro-copy-v24 p,
.engineering-service-row-v24 p,
.architecture-service-card-v25 p,
.engineering-journey-head-v25>p,
.engineering-timeline-step-v25 p,
.footer-brand p,
.technical-copy p,
.strengths-copy p,
.process-card-new p,
.service-card-new p{ text-align:justify; text-justify:inter-word; }

.about-company-copy-v24,
.partner-copy-v24{font-family:var(--font-geist-sans)}

.partner-photo-v24 img{object-position:center top}
.partner-photo-hebeny-v24 img{object-position:center 22%}
.partner-card-v24 .partner-copy-v24 p{font-size:14px;line-height:1.86;color:#5a6c79}

.architecture-service-grid-v25{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.architecture-service-card-v25{display:grid;grid-template-columns:55px minmax(0,1fr) auto;gap:24px;align-items:flex-start;padding:28px;border:1px solid #b7ebff1b;border-radius:18px;background:#0d2940a6;transition:transform .3s var(--ease),background .3s,border-color .3s}
.architecture-service-card-v25:hover{transform:translateY(-4px);background:#11334d;border-color:#72c3e54a}
.architecture-service-card-v25>span{color:#72c3e5;font-family:var(--font-geist-mono);font-size:9px;letter-spacing:.16em}
.architecture-service-card-v25 small{display:block;margin-bottom:6px;color:#7fa4b7;font-size:7.5px;letter-spacing:.14em;text-transform:uppercase}
.architecture-service-card-v25 h3{margin:0;color:#fff;font-size:clamp(21px,2.2vw,29px);font-weight:520;letter-spacing:-.035em}
.architecture-service-card-v25 p{margin:10px 0 0;color:#abc1cd;font-size:11px;line-height:1.72}
.architecture-service-card-v25 svg{width:20px;color:#8dd5ee;transition:transform .3s}
.architecture-service-card-v25:hover svg{transform:translate(3px,-3px)}
.portfolio-new-v25{padding-top:0}

.engineering-page-v25 .page-hero-copy-v21 p:last-child{max-width:720px}
.engineering-journey-v25{padding:108px 0 116px}
.engineering-journey-head-v25{max-width:980px;margin-bottom:42px}
.engineering-journey-head-v25 h2{margin:18px 0 22px;font-size:clamp(40px,4.8vw,68px);font-weight:520;line-height:1.03;letter-spacing:-.055em}
.engineering-journey-head-v25>p{max-width:820px;margin:0;color:#5f717e;font-size:15px;line-height:1.9}
.engineering-timeline-v25{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;position:relative}
.engineering-timeline-v25:before{content:"";position:absolute;left:0;right:0;top:28px;height:1px;background:linear-gradient(90deg,#72c3e533,#10223812)}
.engineering-timeline-step-v25{position:relative;z-index:1;display:grid;gap:20px;padding:26px 22px 24px;border:1px solid #10223814;border-radius:18px;background:linear-gradient(145deg,#fff,#f8fbfb);box-shadow:0 14px 36px #102a4308}
.engineering-timeline-step-v25>span{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#e3f4fb;color:#2d7fa1;font-family:var(--font-geist-mono);font-size:10px;letter-spacing:.15em}
.engineering-timeline-step-v25 small{display:block;margin-bottom:8px;color:#7390a0;font-size:8px;letter-spacing:.14em;text-transform:uppercase}
.engineering-timeline-step-v25 h3{margin:0 0 12px;color:#102238;font-size:24px;font-weight:530;line-height:1.06;letter-spacing:-.04em}
.engineering-timeline-step-v25 p{margin:0;color:#60717e;font-size:11px;line-height:1.74}
.engineering-detail-grid-v25{align-items:start}
.services-detail-video-v25 video{display:block;width:100%;height:620px;object-fit:cover;border-radius:20px;box-shadow:0 32px 85px #000a1263;background:#061827}
.engineering-benefits-v25{display:grid;gap:10px;list-style:none;margin:0;padding:0}
.engineering-benefits-v25 li{display:flex;gap:12px;align-items:flex-start;color:#d4e5ec;font-size:13px;line-height:1.72}
.engineering-benefits-v25 li:before{content:"";flex:0 0 7px;width:7px;height:7px;margin-top:8px;border-radius:50%;background:var(--blue-bright);box-shadow:0 0 0 6px #72c3e51b}

.contact-intro-grid-v25{align-items:start}
.contact-side-v25{display:grid;gap:22px}
.contact-logo-panel-v25{display:grid;justify-items:center;align-content:center;gap:22px;min-height:320px;padding:34px;border:1px solid #10223814;border-radius:22px;background:linear-gradient(145deg,#fff,#f7faf9);box-shadow:0 18px 44px #102a4308;text-align:center}
.contact-logo-panel-v25 img{width:min(100%,360px);height:auto}
.contact-logo-panel-v25 p{max-width:420px;margin:0;color:#60717d;font-size:14px;line-height:1.85;text-align:center}
.contact-side-v25 .contact-step-grid-v21{grid-template-columns:repeat(3,1fr)}

.footer-topline h2{max-width:720px}

@media(max-width:1100px){
  .engineering-timeline-v25{grid-template-columns:repeat(2,minmax(0,1fr))}
  .engineering-timeline-v25:before{display:none}
}
@media(max-width:900px){
  .architecture-service-grid-v25{grid-template-columns:1fr}
  .contact-side-v25 .contact-step-grid-v21{grid-template-columns:1fr}
  .contact-logo-panel-v25{min-height:260px}
}
@media(max-width:640px){
  .home-credentials-v25{padding:12px 0 70px}
  .engineering-journey-v25{padding:82px 0 90px}
  .engineering-journey-head-v25 h2{font-size:clamp(34px,11vw,52px)}
  .engineering-timeline-v25{grid-template-columns:1fr}
  .engineering-timeline-step-v25{padding:22px 18px}
  .architecture-service-card-v25{grid-template-columns:38px 1fr auto;gap:14px;padding:22px 18px}
  .architecture-service-card-v25 h3{font-size:20px}
  .services-detail-video-v25 video{height:auto;aspect-ratio:1/1}
  .contact-logo-panel-v25 img{width:min(100%,250px)}
}

/* v2.5.2 — correções de estabilidade, vídeo e fidelidade aos apontamentos */
.partner-photo-v24 img{object-position:center 50%}
.partner-photo-hebeny-v24 img{object-position:center 35%}

.contact-logo-panel-v25{
  min-height:310px;
  padding:24px 20px;
  border:0;
  background:transparent;
  box-shadow:none;
}
.contact-logo-panel-v25 img{width:min(82%,390px)}
.contact-logo-panel-v25 p{max-width:390px;color:#6a7b87;font-size:12px}

.services-detail-video-v25:after{pointer-events:none}
.services-detail-video-v25 video{
  display:block;
  width:100%;
  aspect-ratio:1/1;
  height:auto;
  min-height:0;
  object-fit:cover;
  border-radius:20px;
  background:#061827;
}
.engineering-detail-v25 .services-detail-image-v21>span{pointer-events:none}

.text-emphasis{font-weight:650;color:#173a50}
.service-card-new .text-emphasis{color:#245e78}
.engineering-page-v25 .text-emphasis{color:#b7ebff}

/* Justificação solicitada somente nos textos corridos; títulos permanecem alinhados naturalmente. */
.hero-lead-new,
.centered-heading>div>p,
.service-card-new>p,
.home-credential-card-v24 p,
.strength-card p,
.portfolio-head-new p,
.process-card-new p,
.page-hero-copy-v21>p:last-child,
.about-company-copy-v24 p,
.partner-copy-v24>p:not(.section-label),
.architecture-service-card-v25 p,
.engineering-journey-head-v25>p,
.engineering-timeline-step-v25 p,
.engineering-service-row-v24 p,
.services-detail-copy-v21>p,
.contact-intro-copy-v21>p,
.contact-direct-card-v23 p,
.contact-step-v21 p,
.contact-logo-panel-v25 p,
.contact-aside-v21>p,
.contact-aside-note-v21 p,
.footer-brand p{
  text-align:justify;
  text-justify:inter-word;
}

@media(max-width:900px){
  .partner-photo-v24 img{object-position:center 48%}
  .partner-photo-hebeny-v24 img{object-position:center 35%}
  .contact-logo-panel-v25{min-height:220px;padding:10px 0 24px}
}
@media(max-width:640px){
  .hero-lead-new,
  .centered-heading>div>p,
  .service-card-new>p,
  .home-credential-card-v24 p,
  .strength-card p,
  .portfolio-head-new p,
  .process-card-new p,
  .page-hero-copy-v21>p:last-child,
  .architecture-service-card-v25 p,
  .engineering-timeline-step-v25 p,
  .engineering-service-row-v24 p,
  .contact-step-v21 p{
    text-align:left;
  }
}
.hero-new .text-emphasis{color:#d9f3ff}

/* ===== V2.6 — alternância de seções + portfólio separado ===== */
.section-theme-white{background:#fff!important;color:var(--ink);position:relative}
.section-theme-blue{background:radial-gradient(65% 70% at 100% 0,#72c3e51c,transparent 68%),linear-gradient(145deg,#061827,#0a2941)!important;color:#fff;position:relative}
.section-theme-white+.section-theme-blue,.section-theme-blue+.section-theme-white{border-top:1px solid #10223812}
.section-theme-blue .section-label{color:var(--blue-bright)}
.section-theme-blue em{color:var(--blue-bright)}

/* Home: alternância com contraste garantido */
.strengths-new.section-theme-blue{background:radial-gradient(62% 80% at 0 0,#72c3e51a,transparent 68%),linear-gradient(145deg,#071a2a,#0b2c45)!important}
.strengths-new.section-theme-blue .strengths-copy h2,.strengths-new.section-theme-blue .strength-card h3{color:#fff}
.strengths-new.section-theme-blue .strengths-copy>p,.strengths-new.section-theme-blue .strength-card p{color:#c5d9e2}
.strengths-new.section-theme-blue .strength-card{background:#0d2a41b8;border-color:#b7ebff1b;box-shadow:0 20px 50px #00081724}
.strengths-new.section-theme-blue .strength-card>span{color:#7fd1ef}
.home-credentials-v25.section-theme-white{background:#fff!important}
.portfolio-new.section-theme-blue{background:radial-gradient(55% 80% at 100% 0,#72c3e516,transparent 65%),linear-gradient(145deg,#061827,#0b2a42)!important}
.process-new.section-theme-white{background:#fff!important}

/* Arquitetura: hero azul > serviços brancos > projetos azuis */
.architecture-services-v24.section-theme-white{background:#fff!important}
.architecture-services-v24.section-theme-white:before{background:repeating-linear-gradient(90deg,#0000 0 calc(25% - 1px),#10223808 25%)}
.architecture-services-v24.section-theme-white .architecture-services-head-v24 h2{color:var(--ink)}
.architecture-services-v24.section-theme-white .architecture-service-card-v24,
.architecture-services-v24.section-theme-white .architecture-service-card-v25{background:linear-gradient(145deg,#fff,#f5f8f9);border-color:#10223814;box-shadow:0 18px 46px #102a430a}
.architecture-services-v24.section-theme-white .architecture-service-card-v24:hover,
.architecture-services-v24.section-theme-white .architecture-service-card-v25:hover{background:#edf6f9;border-color:#72c3e56b}
.architecture-services-v24.section-theme-white .architecture-service-card-v24 h3,
.architecture-services-v24.section-theme-white .architecture-service-card-v25 h3{color:var(--ink)}
.architecture-services-v24.section-theme-white .architecture-service-card-v24 p,
.architecture-services-v24.section-theme-white .architecture-service-card-v25 p{color:#60717e}
.architecture-services-v24.section-theme-white .architecture-service-card-v24 small,
.architecture-services-v24.section-theme-white .architecture-service-card-v25 small{color:#6b8796}

/* Engenharia: branco / azul / branco / azul */
.engineering-journey-v25.section-theme-white{background:#fff!important}
.engineering-services-v24.section-theme-blue{background:radial-gradient(58% 70% at 100% 0,#3d94bb22,#0000 70%),linear-gradient(145deg,#061827,#0b2840)!important}
.engineering-projects-v26{padding:112px 0 126px}
.engineering-projects-link-v26{display:flex;justify-content:flex-end;margin-top:34px}
.engineering-detail-v25.section-theme-blue{background:radial-gradient(70% 100% at 100% 0,#72c3e518,transparent 65%),linear-gradient(140deg,#061827,#0a2941)!important}

/* Quem somos: sócios em azul com contraste real */
.about-company-v24.section-theme-white{background:#fff!important}
.about-team-v24.section-theme-blue{background:radial-gradient(70% 60% at 100% 0,#72c3e516,transparent 68%),linear-gradient(145deg,#061827,#0a2941)!important}
.about-team-v24.section-theme-blue .about-team-head-v24 h2,
.about-team-v24.section-theme-blue .partner-copy-v24 h3{color:#fff}
.about-team-v24.section-theme-blue .partner-copy-v24>p:not(.section-label){color:#c6d8e1}
.about-team-v24.section-theme-blue .partner-index-v24{color:#9cb8c6}
.about-team-v24.section-theme-blue .partner-index-v24 i{background:#b7ebff30}
.about-team-v24.section-theme-blue .partner-photo-v24{box-shadow:0 26px 70px #000b1638}

/* Contato */
.contact-intro-v21.section-theme-white{background:#fff!important}
.contact-form-section-v21.section-theme-blue{background:radial-gradient(54% 76% at 0 100%,#72c3e512,transparent 65%),linear-gradient(145deg,#061827,#0a2941)!important}

/* Página geral de projetos */
.projects-separated-page .compact-hero{min-height:620px}
.projects-hero-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.projects-hero-links a{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border:1px solid #ffffff35;border-radius:999px;color:#fff;font-size:10px;letter-spacing:.04em;background:#07182752;backdrop-filter:blur(12px)}
.projects-hero-links a:hover{background:#fff;color:var(--navy-deep)}
.projects-discipline-section{padding:112px 0 126px;scroll-margin-top:90px}
.discipline-section-head{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:end;margin-bottom:54px}
.discipline-section-head h2{margin:18px 0 0;max-width:820px;font-size:clamp(42px,5vw,70px);font-weight:520;line-height:1.02;letter-spacing:-.055em}
.discipline-section-head>p{margin:0;max-width:540px;color:#60717e;font-size:14px;line-height:1.85}
.section-theme-blue .discipline-section-head h2{color:#fff}
.section-theme-blue .discipline-section-head>p{color:#c1d6df}
.discipline-project-grid{min-height:120px}
.projects-discipline-section.section-theme-blue .work-info h2{color:#fff}
.projects-discipline-section.section-theme-blue .work-info p{color:#8dd5ee}
.projects-discipline-section.section-theme-blue .work-info small{color:#b8ccd6}
.projects-discipline-section.section-theme-blue .work-card{border-color:#ffffff18}
.portfolio-empty-state{grid-column:1/-1;min-height:260px;border:1px dashed #10223827;border-radius:20px;background:#f7fafb;display:grid;place-content:center;justify-items:center;text-align:center;padding:40px}
.portfolio-empty-state span{font-size:8px;letter-spacing:.16em;color:#4d96b8;font-weight:700}
.portfolio-empty-state h3{margin:12px 0 8px;font-size:28px;font-weight:540;letter-spacing:-.04em}
.portfolio-empty-state p{margin:0;max-width:520px;color:#6a7b87;font-size:11px;line-height:1.7}
.portfolio-empty-state-dark{background:#0d2a41a8;border-color:#b7ebff29}
.portfolio-empty-state-dark h3{color:#fff}.portfolio-empty-state-dark p{color:#bdd0d9}.portfolio-empty-state-dark span{color:#8dd5ee}

/* Projeto individual — informações mais completas */
.project-overview-section{padding-bottom:96px}
.project-facts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:54px}
.project-facts-grid article{min-height:126px;padding:24px;border:1px solid #10223813;border-radius:16px;background:#f7fafb;display:grid;align-content:space-between;gap:18px}
.project-facts-grid span{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#668291}
.project-facts-grid strong{font-size:17px;font-weight:560;line-height:1.35}
.project-concept-section{padding:112px 0 122px}
.project-concept-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(70px,10vw,150px);align-items:start}
.project-concept-grid h2{margin:18px 0 0;font-size:clamp(42px,5vw,70px);font-weight:520;line-height:1.02;letter-spacing:-.055em;color:#fff}
.project-concept-content{display:grid;gap:14px}
.project-concept-content article{padding:28px 30px;border:1px solid #b7ebff1a;border-radius:18px;background:#0d2940a8}
.project-concept-content article>span{display:block;margin-bottom:14px;color:#8dd5ee;font-size:8px;letter-spacing:.15em;text-transform:uppercase;font-weight:650}
.project-concept-content article p{margin:0;color:#c5d9e2;font-size:13px;line-height:1.86}
.project-concept-content ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.project-concept-content li{display:flex;gap:11px;color:#d5e5ec;font-size:12px;line-height:1.65}
.project-concept-content li:before{content:"";width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:var(--blue-bright);margin-top:7px}
.project-gallery{padding:104px 0 122px}
.project-gallery-head{margin-bottom:46px}
.project-gallery-head h2{margin:18px 0 0;font-size:clamp(40px,4.7vw,66px);font-weight:520;line-height:1.02;letter-spacing:-.05em}
.project-gallery.section-theme-blue .project-gallery-head h2{color:#fff}
.project-gallery.section-theme-blue figure figcaption{color:#c4d6de}
.project-gallery.section-theme-blue figure{border-color:#ffffff16}
.cta-strip.section-theme-white{background:#fff!important;color:var(--ink)}
.cta-strip.section-theme-white .section-label{color:#4d96b8}
.cta-strip.section-theme-white h2{color:var(--ink)}
.cta-strip.section-theme-blue{background:linear-gradient(145deg,#061827,#0a2941)!important;color:#fff}
.cta-strip.section-theme-blue h2{color:#fff}

@media(max-width:900px){
  .discipline-section-head,.project-concept-grid{grid-template-columns:1fr;gap:28px}
  .projects-discipline-section,.engineering-projects-v26,.project-concept-section{padding:84px 0 92px}
  .project-facts-grid{grid-template-columns:1fr}
  .engineering-projects-link-v26{justify-content:flex-start}
}
@media(max-width:640px){
  .projects-separated-page .compact-hero{min-height:560px}
  .discipline-section-head h2,.project-concept-grid h2{font-size:clamp(36px,11vw,52px)}
  .projects-discipline-section,.engineering-projects-v26,.project-concept-section,.project-gallery{padding:74px 0 82px}
  .portfolio-empty-state{min-height:220px;padding:28px 20px}
  .portfolio-empty-state h3{font-size:23px}
}

/* Ajustes finos de contraste V2.6 */
.about-team-v24.section-theme-blue .partner-card-v24{background:linear-gradient(145deg,#0d2940,#0a2236);border-color:#b7ebff1b;box-shadow:0 26px 70px #000b1630}
.about-team-v24.section-theme-blue .partner-card-v24 .partner-copy-v24 p{color:#c6d8e1}
.about-team-v24.section-theme-blue .partner-card-v24 .section-label{color:#8dd5ee}
.cta-strip .section-label{margin:0 0 10px!important;font-size:9px!important;line-height:1.4!important;letter-spacing:.16em!important;text-transform:uppercase!important}
.cta-strip h2{margin:0;font-size:clamp(28px,3.1vw,44px);font-weight:520;line-height:1.05;letter-spacing:-.04em}

/* ===== V2.7 — ajustes finais de layout, consistência e mídia ===== */
/* Numerações sempre legíveis e centralizadas dentro dos selos/bolinhas. */
.service-card-top>span,
.strength-card>span,
.process-card-new>span,
.engineering-timeline-step-v25>span{
  flex:0 0 auto!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  line-height:1!important;
  font-weight:700!important;
}
.service-card-top>span{color:#1e6e90!important;background:#d9f2fc!important;box-shadow:inset 0 0 0 1px #72c3e54d!important}

/* Cards e imagens do portfólio com proporção visual uniforme. */
.project-lift{padding-top:0!important}
.project-image-new{aspect-ratio:4/3!important}
.project-image-new img,.work-img img{width:100%;height:100%;object-fit:cover}
.works-grid-v2 .work-img,.work-card.wide .work-img{aspect-ratio:4/3!important}
.works-grid-v2 .work-card.wide{grid-column:auto!important}
.uniform-project-grid-v27 .work-card{grid-column:auto!important}

/* Abertura da seção de projetos de Arquitetura: respiro para o título não encostar/cortar. */
.portfolio-new-v25{padding-top:112px!important}
@media(max-width:760px){.portfolio-new-v25{padding-top:78px!important}}

/* Quem somos: mesma escala tipográfica nos dois sócios e bloco da Hébeny em branco. */
.partner-card-v24 .partner-copy-v24>p:not(.section-label){font-size:14px!important;line-height:1.86!important}






/* Engenharia: leitura mais organizada, sem artigos/preposições isolados por justificação. */
.engineering-page-v27 .page-hero-copy-v21>p:last-child,
.engineering-page-v27 .services-detail-copy-v21>p,
.engineering-page-v27 .engineering-service-row-v24 p,
.engineering-page-v27 .engineering-journey-head-v25>p,
.engineering-page-v27 .engineering-timeline-step-v25 p{
  text-align:left!important;
  text-wrap:pretty;
  hyphens:none;
}
.engineering-page-v27 h1,.engineering-page-v27 h2,.engineering-page-v27 h3{text-wrap:balance}
.engineering-page-v27 .page-hero-copy-v21 h1{max-width:10.4ch}
.engineering-hero-v24 .page-hero-image-v21{background-position:center 44%}

/* Vídeo passa para cima e usa seção clara para valorizar a imagem. */
.engineering-video-top-v27{padding:108px 0;background:#fff!important;color:#102238!important}
.engineering-video-top-v27 .services-detail-copy-v21 h2{color:#102238!important}
.engineering-video-top-v27 .services-detail-copy-v21>p{color:#5d6f7c!important}
.engineering-video-top-v27 .section-label{color:#4d96b8!important}
.engineering-video-top-v27 .services-detail-video-v25 video{aspect-ratio:1/1;width:100%;height:auto;object-fit:cover;background:#061827}
.engineering-benefits-light-v27 li{color:#526875!important}
.engineering-benefits-light-v27 li:before{background:#4d9fbe!important;box-shadow:0 0 0 6px #72c3e51a!important}

/* O bloco "Como atuamos" foi movido para o fim e recebe o fechamento azul. */
.engineering-journey-bottom-v27{padding:108px 0 116px;background:radial-gradient(60% 80% at 0 100%,#72c3e516,transparent 68%),linear-gradient(145deg,#061827,#0a2941)!important}
.engineering-journey-bottom-v27 .engineering-journey-head-v25 h2{color:#fff}
.engineering-journey-bottom-v27 .engineering-journey-head-v25>p{color:#c7d9e2!important}
.engineering-journey-bottom-v27 .engineering-timeline-step-v25{background:linear-gradient(145deg,#0d2a41,#0a2236);border-color:#b7ebff1c;box-shadow:0 18px 45px #00091428}
.engineering-journey-bottom-v27 .engineering-timeline-step-v25 h3{color:#fff}
.engineering-journey-bottom-v27 .engineering-timeline-step-v25 p{color:#bcd0d9!important}
.engineering-journey-bottom-v27 .engineering-timeline-step-v25 small{color:#8eb0c0}
.engineering-journey-bottom-v27 .engineering-timeline-v25:before{background:linear-gradient(90deg,#72c3e54a,#b7ebff18)}
@media(max-width:760px){.engineering-video-top-v27,.engineering-journey-bottom-v27{padding:78px 0 86px}}

/* Galeria: todas as mídias obedecem ao formato definido no painel e nunca distorcem. */
.project-detail-bg{background-position:var(--project-cover-position,50% 50%)!important}
.project-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.project-gallery figure:nth-child(3n+1){grid-column:auto!important}
.project-media-frame{width:100%;aspect-ratio:var(--media-ratio,16/10);overflow:hidden;border-radius:14px;background:#0b2236;display:grid;place-items:center}
.project-gallery .project-media-frame>img,
.project-gallery .project-media-frame>video{width:100%;height:100%;max-height:none!important;object-fit:var(--media-fit,cover)!important;object-position:var(--media-position,50% 50%)!important;border-radius:0!important}
.project-gallery .video-external.project-media-frame{aspect-ratio:var(--media-ratio,16/10)!important}
.project-gallery .video-external.project-media-frame iframe{width:100%;height:100%}
.project-gallery figcaption{min-height:34px}
@media(max-width:760px){.project-gallery-grid{grid-template-columns:1fr}.project-media-frame{aspect-ratio:var(--media-ratio,16/10)}}
/* Home: textos dos cards não encostam na divisória inferior. */
.service-card-new{min-height:420px}
.service-card-new>p{min-height:96px!important;margin-bottom:22px!important;text-align:left!important;text-wrap:pretty}
.service-card-new ul{position:relative;z-index:1}
.portfolio-head-new .section-label{margin-top:0!important;padding-top:2px}
.engineering-video-top-v27 .text-emphasis{color:#173a50!important}
\n\n/* ===== V2.8 — registros profissionais dos sócios ===== */\n.partner-credentials-v28{\n  display:grid;\n  grid-template-columns:repeat(2,minmax(0,1fr));\n  gap:10px;\n  margin-top:28px;\n}\n.partner-credentials-v28>div,.partner-credentials-v28>a{\n  min-width:0;\n  padding:14px 16px;\n  border:1px solid #b7ebff24;\n  border-radius:14px;\n  background:#ffffff0a;\n  text-decoration:none;\n  transition:transform .2s ease,border-color .2s ease,background .2s ease;\n}\n.partner-credentials-v28>a{grid-column:1/-1}\n.partner-credentials-v28>div:hover,.partner-credentials-v28>a:hover{transform:translateY(-2px);border-color:#8dd5ee55;background:#ffffff0f}\n.partner-credentials-v28 small{display:block;margin-bottom:5px;font-size:8px;line-height:1.35;letter-spacing:.13em;text-transform:uppercase;color:#8dd5ee}\n.partner-credentials-v28 strong{display:block;overflow-wrap:anywhere;font-size:12.5px;line-height:1.45;font-weight:600;letter-spacing:-.01em;color:#fff}\n.partner-credentials-light-v28>div,.partner-credentials-light-v28>a{border-color:#10223816;background:#f5f9fb}\n.partner-credentials-light-v28>div:hover,.partner-credentials-light-v28>a:hover{border-color:#4d96b84a;background:#eef6f9}\n.partner-credentials-light-v28 small{color:#4d96b8}\n.partner-credentials-light-v28 strong{color:#183145}\n@media(max-width:620px){\n  .partner-credentials-v28{grid-template-columns:1fr}\n  .partner-credentials-v28>a{grid-column:auto}\n}\n

/* ===== V3.0 — linha do tempo no lugar dos cards de atuação ===== */
.home-timeline-wrap{
  margin-top:34px;
}
.home-timeline-intro{
  max-width:760px;
  margin:0 auto 34px;
  text-align:center;
}
.home-timeline-intro p{
  margin:0;
  color:#5b7281;
  font-size:15px;
  line-height:1.85;
}
.home-timeline-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:20px;
  align-items:start;
}
.home-timeline-grid:before{
  content:"";
  position:absolute;
  left:6%;
  right:6%;
  top:44px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,#bfe8f8 0%,#7fc7e5 45%,#cdeef9 100%);
  box-shadow:0 0 0 8px #72c3e50f;
}
.home-timeline-step{
  position:relative;
  min-height:100%;
  padding:86px 22px 24px;
  border:1px solid #d7e9f1;
  border-radius:26px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fcfe 100%);
  box-shadow:0 20px 55px #0b294012;
  text-align:left;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease);
}
.home-timeline-step:hover{
  transform:translateY(-7px);
  border-color:#9fd6eb;
  box-shadow:0 30px 70px #0b294019;
}
.home-timeline-grid>div:nth-child(even) .home-timeline-step{
  margin-top:36px;
}
.home-timeline-dot{
  position:absolute;
  top:33px;
  left:50%;
  transform:translateX(-50%);
  width:20px;
  height:20px;
  border-radius:50%;
  background:linear-gradient(135deg,#72c3e5,#b7ebff);
  border:4px solid #f7fbfd;
  box-shadow:0 0 0 8px #72c3e520;
  z-index:2;
}
.home-timeline-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:54px;
  height:32px;
  padding:0 14px;
  border-radius:999px;
  margin-bottom:18px;
  background:#dff3fb;
  color:#1e6e90;
  font-size:11px;
  font-weight:700;
  letter-spacing:.14em;
}
.home-timeline-step h3{
  margin:0 0 12px;
  color:#102238;
  font-size:26px;
  line-height:1.14;
  letter-spacing:-.03em;
  text-wrap:balance;
}
.home-timeline-step p{
  margin:0;
  color:#58707d;
  font-size:14px;
  line-height:1.78;
  text-wrap:pretty;
}
.home-timeline-step.is-final{
  background:linear-gradient(160deg,#0c243a 0%,#163d56 100%);
  border-color:#255a76;
  box-shadow:0 24px 60px #071a2b24;
}
.home-timeline-step.is-final .home-timeline-badge{
  background:#72c3e51f;
  color:#b7ebff;
}
.home-timeline-step.is-final h3,
.home-timeline-step.is-final p{
  color:#fff;
}
.home-timeline-step.is-final p{
  color:#d0e0e8;
}
@media(max-width:1180px){
  .home-timeline-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .home-timeline-grid:before{
    left:10%;
    right:10%;
  }
}
@media(max-width:860px){
  .home-timeline-grid{
    grid-template-columns:1fr;
    gap:16px;
  }
  .home-timeline-grid:before{
    top:0;
    bottom:0;
    left:18px;
    right:auto;
    width:2px;
    height:auto;
    background:linear-gradient(180deg,#bfe8f8 0%,#7fc7e5 45%,#cdeef9 100%);
    box-shadow:0 0 0 6px #72c3e50f;
  }
  .home-timeline-grid>div:nth-child(even) .home-timeline-step{
    margin-top:0;
  }
  .home-timeline-step{
    padding:24px 22px 24px 58px;
  }
  .home-timeline-dot{
    top:28px;
    left:18px;
    transform:translateX(-50%);
  }
}



/* ===== V3.1 — linha do tempo mais simples e elegante ===== */
.home-timeline-wrap-simple{
  margin-top:34px;
}
.home-timeline-simple{
  position:relative;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
  align-items:stretch;
  padding:24px 0 8px;
}
.home-timeline-simple-line{
  position:absolute;
  left:4%;
  right:4%;
  top:50%;
  height:2px;
  transform:translateY(-50%);
  background:linear-gradient(90deg,#c9eaf6 0%,#72c3e5 50%,#c9eaf6 100%);
  box-shadow:0 0 0 8px #72c3e50d;
  border-radius:999px;
}
.home-timeline-simple > .reveal{
  position:relative;
  z-index:1;
}
.home-timeline-simple-step{
  position:relative;
  min-height:248px;
  display:flex;
  justify-content:center;
}
.home-timeline-simple-step.step-top{
  align-items:flex-start;
  padding-top:0;
}
.home-timeline-simple-step.step-bottom{
  align-items:flex-end;
  padding-bottom:0;
}
.home-timeline-simple-content{
  width:min(100%,180px);
  text-align:center;
}
.home-timeline-simple-content small{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:50px;
  height:28px;
  margin-bottom:12px;
  padding:0 12px;
  border-radius:999px;
  background:#ddf1fa;
  color:#2c7b9a;
  font-size:10px;
  font-weight:700;
  letter-spacing:.15em;
}
.home-timeline-simple-content h3{
  margin:0;
  color:#102238;
  font-size:22px;
  line-height:1.2;
  letter-spacing:-.03em;
  text-wrap:balance;
}
.home-timeline-simple-node{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  width:16px;
  height:16px;
  border-radius:50%;
  background:linear-gradient(135deg,#72c3e5,#b7ebff);
  border:4px solid #f5fafc;
  box-shadow:0 0 0 8px #72c3e51c;
}
.home-timeline-simple-step.step-top .home-timeline-simple-content{
  padding-bottom:92px;
}
.home-timeline-simple-step.step-bottom .home-timeline-simple-content{
  padding-top:92px;
}
.home-timeline-simple-step.step-top .home-timeline-simple-content:after,
.home-timeline-simple-step.step-bottom .home-timeline-simple-content:before{
  content:"";
  position:absolute;
  left:50%;
  width:1px;
  height:54px;
  background:#c7dfeb;
}
.home-timeline-simple-step.step-top .home-timeline-simple-content,
.home-timeline-simple-step.step-bottom .home-timeline-simple-content{
  position:relative;
}
.home-timeline-simple-step.step-top .home-timeline-simple-content:after{
  bottom:32px;
  transform:translateX(-50%);
}
.home-timeline-simple-step.step-bottom .home-timeline-simple-content:before{
  top:32px;
  transform:translateX(-50%);
}
.home-timeline-simple-step.is-final .home-timeline-simple-content small{
  background:#102238;
  color:#b7ebff;
}
.home-timeline-simple-step.is-final .home-timeline-simple-content h3{
  color:#163d56;
}
@media(max-width:980px){
  .home-timeline-simple{
    grid-template-columns:repeat(3,minmax(0,1fr));
    row-gap:18px;
  }
  .home-timeline-simple-line{
    display:none;
  }
  .home-timeline-simple-step{
    min-height:190px;
  }
  .home-timeline-simple-step.step-top .home-timeline-simple-content,
  .home-timeline-simple-step.step-bottom .home-timeline-simple-content{
    padding:0 0 0 0;
  }
  .home-timeline-simple-step.step-top .home-timeline-simple-content:after,
  .home-timeline-simple-step.step-bottom .home-timeline-simple-content:before{
    display:none;
  }
  .home-timeline-simple-node{
    top:auto;
    bottom:6px;
    transform:translateX(-50%);
  }
}
@media(max-width:760px){
  .home-timeline-intro{
    margin-bottom:22px;
  }
  .home-timeline-simple{
    grid-template-columns:1fr;
    gap:16px;
    padding:4px 0 0;
  }
  .home-timeline-simple-line{
    display:block;
    left:20px;
    top:12px;
    bottom:12px;
    right:auto;
    width:2px;
    height:auto;
    transform:none;
    background:linear-gradient(180deg,#c9eaf6 0%,#72c3e5 50%,#c9eaf6 100%);
    box-shadow:0 0 0 6px #72c3e50d;
  }
  .home-timeline-simple-step,
  .home-timeline-simple-step.step-top,
  .home-timeline-simple-step.step-bottom{
    min-height:auto;
    display:block;
    padding:0 0 0 54px;
  }
  .home-timeline-simple-content{
    width:100%;
    text-align:left;
    padding:0!important;
  }
  .home-timeline-simple-content h3{
    font-size:22px;
  }
  .home-timeline-simple-content small{
    margin-bottom:10px;
  }
  .home-timeline-simple-node{
    left:20px;
    top:24px;
    bottom:auto;
    transform:translate(-50%,-50%);
  }
}



/* ===== V3.2 — cards integrados na seção azul + engenharia sem azul sobre azul ===== */
.strengths-new .strength-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.strengths-new .strength-card{
  min-height:170px;
}
@media(min-width:1180px){
  .strengths-new .strength-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

.engineering-journey-light-v32{
  padding:108px 0 116px;
}
.engineering-journey-light-v32 .engineering-journey-head-v25 h2{
  color:#102238;
}
.engineering-journey-light-v32 .engineering-journey-head-v25>p{
  color:#5f717e!important;
}
.engineering-journey-light-v32 .engineering-timeline-v25:before{
  background:linear-gradient(90deg,#72c3e540,#10223812);
}
.engineering-journey-light-v32 .engineering-timeline-step-v25{
  background:linear-gradient(145deg,#ffffff,#f7fbfc);
  border-color:#10223812;
  box-shadow:0 14px 36px #102a4308;
}
.engineering-journey-light-v32 .engineering-timeline-step-v25 h3{
  color:#102238;
}
.engineering-journey-light-v32 .engineering-timeline-step-v25 p{
  color:#60717e!important;
}
.engineering-journey-light-v32 .engineering-timeline-step-v25 small{
  color:#7390a0;
}
.engineering-journey-light-v32 .text-emphasis{
  color:#245e78;
}
@media(max-width:760px){
  .engineering-journey-light-v32{padding:78px 0 86px}
}



/* ===== V3.3 — alternância correta na Engenharia + footer claro somente nesta página ===== */
.site-footer.site-footer-light{
  color:#102238;
  background:radial-gradient(55% 75% at 100% 0,#72c3e514,#0000 68%),linear-gradient(180deg,#ffffff,#f6fafb);
}
.site-footer.site-footer-light .footer-topline{
  border-bottom-color:#10223812;
}
.site-footer.site-footer-light .footer-topline .eyebrow{
  color:#4d96b8;
}
.site-footer.site-footer-light .footer-project-link{
  color:#102238;
  background:#eff6fa;
  border-color:#1022381c;
}
.site-footer.site-footer-light .footer-project-link:hover{
  background:#102238;
  color:#fff;
}
.site-footer.site-footer-light .footer-brand p{
  color:#5f717e;
}
.site-footer.site-footer-light .footer-col>span{
  color:#4d96b8;
}
.site-footer.site-footer-light .footer-col a{
  color:#304655;
}
.site-footer.site-footer-light .footer-col a:hover{
  color:#102238;
}
.site-footer.site-footer-light .footer-col p,
.site-footer.site-footer-light .footer-col small,
.site-footer.site-footer-light .footer-bottom{
  color:#708290;
}
.site-footer.site-footer-light .footer-bottom{
  border-top-color:#10223814;
}
.site-footer.site-footer-light .footer-contact-mail-v21{
  color:#536b78!important;
}



/* ===== V3.5 — registros no Quem Somos + e-mails individuais em Contato ===== */
.partner-credentials-v28:not(.partner-credentials-light-v28){
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.partner-credentials-v28:not(.partner-credentials-light-v28)>div{
  min-height:72px;
}
.contact-direct-cards-v35{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.contact-direct-cards-v35 .contact-direct-card-v23:last-child{
  grid-column:1/-1;
}
.contact-partner-card-v35{
  min-width:0;
}
.contact-partner-email-v35{
  display:block;
  margin:10px 0 12px;
  color:#245e78;
  font-size:12px;
  line-height:1.55;
  font-weight:650;
  overflow-wrap:anywhere;
  text-decoration:none;
  transition:color .2s ease;
}
.contact-partner-email-v35:hover{
  color:#102238;
}
@media(max-width:760px){
  .contact-direct-cards-v35{
    grid-template-columns:1fr;
  }
  .contact-direct-cards-v35 .contact-direct-card-v23:last-child{
    grid-column:auto;
  }
}



/* ===== V3.7 — home com alternância correta entre branco/azul e footer claro ===== */
.portfolio-home-light-v37{
  background:radial-gradient(52% 68% at 100% 0,#72c3e50f,transparent 64%),linear-gradient(180deg,#ffffff 0%,#f7fbfc 100%)!important;
}
.portfolio-home-light-v37:after{
  opacity:.035;
  background-image:linear-gradient(#10223812 1px,transparent 1px),linear-gradient(90deg,#10223812 1px,transparent 1px);
}
.portfolio-home-light-v37 .portfolio-head-new h2,
.portfolio-home-light-v37 .project-info-new h3{
  color:#102238;
}
.portfolio-home-light-v37 .portfolio-head-new p,
.portfolio-home-light-v37 .project-info-new small{
  color:#5f717e;
}
.portfolio-home-light-v37 .project-info-new p{
  color:#4d96b8;
}
.portfolio-home-light-v37 .project-image-new{
  box-shadow:0 20px 50px #102a4312;
}
.portfolio-home-light-v37 .project-info-new{
  color:#102238;
}

.process-home-blue-v37{
  background:radial-gradient(54% 76% at 0 100%,#72c3e516,transparent 65%),linear-gradient(145deg,#061827,#0a2941)!important;
}
.process-home-blue-v37 .process-heading-new h2,
.process-home-blue-v37 .process-card-new h3{
  color:#fff;
}
.process-home-blue-v37 .process-heading-new p:not(.section-label),
.process-home-blue-v37 .process-card-new p{
  color:#c5d9e2;
}
.process-home-blue-v37 .process-card-new{
  background:#0d2a41b8;
  border-color:#b7ebff1c;
  box-shadow:0 20px 50px #00081724;
}
.process-home-blue-v37 .process-card-new>span{
  color:#7fd1ef;
}
.process-home-blue-v37 .soft-lines,
.process-home-blue-v37 .soft-lines-right{
  opacity:.14;
}













/* ===== V3.9 — Hébeny herda exatamente o mesmo card escuro do Lucas ===== */
.partner-card-hebeny-v27{background:linear-gradient(145deg,#0d2940,#0a2236)!important;border-color:#b7ebff1b!important;box-shadow:0 26px 70px #000b1630!important}


/* ===== V4.0 — ajustes finais solicitados pelo cliente ===== */
.site-footer-v40{position:relative;color:#fff;background:radial-gradient(55% 75% at 100% 0,#72c3e51a,#0000 68%),linear-gradient(145deg,#051522,#081d2e)!important;border-top:1px solid rgba(141,213,238,.22)}
.site-footer-v40::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(141,213,238,.6),transparent)}
.site-footer-v40 .footer-topline{border-bottom-color:#b7ebff1f}
.site-footer-v40 .footer-topline .eyebrow{color:#d9f1fb}
.site-footer-v40 .footer-project-link{color:#fff;background:#ffffff0d;border-color:#ffffff2e}
.site-footer-v40 .footer-project-link:hover{background:#ffffff18;color:#fff}
.site-footer-v40 .footer-brand p{color:#c5d9e2}
.site-footer-v40 .footer-col>span{color:#8dd5ee}
.site-footer-v40 .footer-col a{color:#f2f9fc}
.site-footer-v40 .footer-col a:hover{color:#8dd5ee}
.site-footer-v40 .footer-col p,.site-footer-v40 .footer-col small,.site-footer-v40 .footer-bottom{color:#9eb5c1}
.site-footer-v40 .footer-bottom{border-top-color:#b7ebff1a}
.site-footer-v40 .footer-contact-mail-v21{color:#d8ecf4!important}

.about-company-copy-v24 p:first-child{font-size:15px!important;color:#526473!important}
.partner-credentials-v28{display:none!important}

.about-team-v24{background:radial-gradient(60% 52% at 100% 0,#72c3e512,#0000 70%),linear-gradient(145deg,#061827,#0b2a42)!important}
.about-team-v24.section-theme-blue .partner-card-v24,.about-team-v24.section-theme-blue .partner-card-hebeny-v27{background:linear-gradient(145deg,#0d2940,#0a2236)!important;border-color:#b7ebff1b!important;box-shadow:0 26px 70px #000b1630!important}
.about-team-v24.section-theme-blue .partner-card-v24 .partner-copy-v24 p,.about-team-v24.section-theme-blue .partner-card-hebeny-v27 .partner-copy-v24 p{color:#c6d8e1!important}
.about-team-v24.section-theme-blue .partner-card-v24 .partner-copy-v24 h3,.about-team-v24.section-theme-blue .partner-card-hebeny-v27 .partner-copy-v24 h3{color:#fff!important}
.about-team-v24.section-theme-blue .partner-card-v24 .partner-index-v24,.about-team-v24.section-theme-blue .partner-card-hebeny-v27 .partner-index-v24{color:#9cb8c6!important}
.about-team-v24.section-theme-blue .partner-card-v24 .partner-index-v24 i,.about-team-v24.section-theme-blue .partner-card-hebeny-v27 .partner-index-v24 i{background:#b7ebff30!important}
.about-team-v24.section-theme-blue .partner-card-v24 .section-label,.about-team-v24.section-theme-blue .partner-card-hebeny-v27 .section-label{color:#8dd5ee!important}

.strength-card{grid-template-columns:56px 1fr!important;gap:18px!important}
.strength-card>span{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important;border-radius:50%!important;font-size:12px!important;letter-spacing:.08em!important;color:#0b2b42!important;background:linear-gradient(145deg,#dff6ff,#9ddcf4)!important;box-shadow:0 8px 22px rgba(51,141,180,.33), inset 0 1px rgba(255,255,255,.7)!important}
.strength-card h3{margin-top:2px}

.contact-direct-cards-v35{grid-template-columns:repeat(2,minmax(340px,1fr))!important;gap:16px!important}
.contact-direct-cards-v35 .contact-direct-card-v23:last-child{grid-column:1/-1}
.contact-partner-card-v35{min-width:0}
.contact-partner-email-v35{display:block;max-width:100%;font-size:13px!important;line-height:1.45!important;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#102238!important}
.contact-direct-card-v23 p{font-size:12px;line-height:1.72}
.contact-logo-panel-v25 img{width:min(100%,280px)!important}
.contact-direct-v21 a,.page-hero-side-v21 a,.footer-contact-mail-v21{overflow-wrap:anywhere;word-break:normal}
.engineering-page-v27 .page-hero-copy-v21 h1{max-width:9.4ch}
@media(max-width:1100px){.contact-direct-cards-v35{grid-template-columns:1fr!important}.contact-direct-cards-v35 .contact-direct-card-v23:last-child{grid-column:auto}.contact-partner-email-v35{white-space:normal;overflow-wrap:anywhere;text-overflow:clip}}


/* ===== V4.1 — equilíbrio dos sócios, contato organizado e títulos controlados ===== */
/* Corrige o tamanho/estrutura dos dois cards dos sócios e mantém o mesmo padrão visual. */
.about-team-list-v24 .partner-card-v24{
  box-sizing:border-box;
  align-items:center;
}
.about-team-list-v24 .partner-photo-v24{
  min-height:0!important;
  height:620px!important;
}
.about-team-list-v24 .partner-photo-v24 img{
  min-height:0!important;
  height:100%!important;
  width:100%!important;
  object-fit:cover!important;
}
.partner-photo-hebeny-v24 img{object-position:center 22%!important}

/* Títulos dos heros com quebras intencionais — sem palavras soltas. */
.about-hero-title-v41,
.engineering-hero-title-v41{
  max-width:none!important;
  text-wrap:initial!important;
}
.about-hero-title-v41 span,
.about-hero-title-v41 em,
.engineering-hero-title-v41 span,
.engineering-hero-title-v41 em{
  display:block;
}
.about-hero-title-v41 span{white-space:nowrap}
.about-hero-title-v41 em{white-space:nowrap}
.about-hero-v21 .about-hero-title-v41{font-size:clamp(54px,5.6vw,86px)!important;line-height:.96!important}

.engineering-page-v27 .engineering-hero-title-v41{
  max-width:900px!important;
  font-size:clamp(54px,5.55vw,86px)!important;
  line-height:.94!important;
}
.engineering-hero-title-v41 span,
.engineering-hero-title-v41 em{white-space:nowrap}

/* Contato — bloco de marca visível sobre fundo branco. */
.contact-brand-lockup-v41{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  width:min(100%,360px);
}
.contact-brand-symbol-v41{width:74px!important;height:74px!important;object-fit:contain!important;flex:0 0 auto}
.contact-brand-wordmark-v41{width:min(100%,250px)!important;height:60px!important;object-fit:contain!important;object-position:left center!important}

/* Contatos pessoais com hierarquia mais limpa e sem e-mails quebrando. */
.contact-person-card-v41{
  padding:22px!important;
  display:flex;
  flex-direction:column;
  min-height:260px;
}
.contact-person-card-v41>strong{font-size:18px!important;margin-top:12px!important}
.contact-person-methods-v41{
  display:grid;
  gap:9px;
  margin:18px 0 12px;
}
.contact-method-v41{
  display:grid;
  gap:4px;
  padding:11px 12px;
  border:1px solid #10223812;
  border-radius:11px;
  background:#f7fafb;
  text-decoration:none;
  min-width:0;
  transition:border-color .2s ease,transform .2s ease,background .2s ease;
}
.contact-method-v41:hover{transform:translateY(-2px);border-color:#72c3e55c;background:#f1f8fa}
.contact-method-v41 small{font-size:8px;line-height:1.25;letter-spacing:.13em;text-transform:uppercase;color:#4d96b8}
.contact-method-v41 b{
  color:#102238;
  font-size:11.5px;
  font-weight:650;
  line-height:1.4;
  letter-spacing:-.01em;
  white-space:nowrap;
}
.contact-method-whatsapp-v41{background:#f4f9f7}
.contact-person-card-v41>p{margin-top:auto!important}

.footer-whatsapp-v41{color:#d8ecf4!important}
.footer-whatsapp-v41:hover{color:#8dd5ee!important}

@media(max-width:1180px){
  .about-hero-title-v41 span,.about-hero-title-v41 em,
  .engineering-hero-title-v41 span,.engineering-hero-title-v41 em{white-space:normal}
  .contact-method-v41 b{white-space:normal;overflow-wrap:anywhere}
}
@media(max-width:900px){
  .about-team-list-v24 .partner-photo-v24{height:560px!important}
  .contact-person-card-v41{min-height:0}
}
@media(max-width:640px){
  .about-team-list-v24 .partner-photo-v24{height:460px!important}
  .about-hero-v21 .about-hero-title-v41,
  .engineering-page-v27 .engineering-hero-title-v41{font-size:clamp(42px,12vw,60px)!important}
  .contact-brand-lockup-v41{gap:12px}
  .contact-brand-symbol-v41{width:58px!important;height:58px!important}
  .contact-brand-wordmark-v41{height:50px!important}
}


/* ===== V4.2 — correções de proporção, contato e WhatsApps ===== */
/* Os dois cards dos sócios ficam rigorosamente com a mesma altura visual. */
.about-team-list-v24{
  grid-auto-rows:1fr;
}
.about-team-list-v24 .partner-card-v24{
  height:100%;
  min-height:710px;
}
.about-team-list-v24 .partner-photo-v24{
  height:590px!important;
}
.about-team-list-v24 .partner-copy-v24{
  align-self:center;
}

/* Engenharia: título não invade o card lateral e mantém leitura em três linhas. */
.engineering-page-v27 .engineering-hero-title-v41{
  max-width:760px!important;
  font-size:clamp(52px,4.55vw,72px)!important;
  line-height:.98!important;
  letter-spacing:-.052em!important;
}
.engineering-page-v27 .engineering-hero-title-v41 span,
.engineering-page-v27 .engineering-hero-title-v41 em{
  white-space:nowrap!important;
}

/* Contato: marca compacta, legível e sem espaçamento exagerado. */
.contact-logo-panel-v25{
  min-height:190px!important;
  padding:18px 0 20px!important;
  gap:16px!important;
}
.contact-brand-lockup-v42{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  width:min(100%,310px);
  margin-inline:auto;
}
.contact-brand-symbol-v42{
  width:58px!important;
  height:58px!important;
  flex:0 0 58px;
  object-fit:contain!important;
}
.contact-brand-copy-v42{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:1;
}
.contact-brand-copy-v42 strong{
  color:#102238;
  font-size:34px;
  font-weight:400;
  letter-spacing:.16em;
}
.contact-brand-copy-v42 small{
  margin-top:7px;
  color:#72c3e5;
  font-size:8px;
  letter-spacing:.17em;
  white-space:nowrap;
}
.contact-logo-panel-v25 p{
  max-width:430px!important;
  margin-inline:auto!important;
  text-align:center!important;
}

/* Contatos pessoais mais compactos e equilibrados. */
.contact-person-card-v41{
  min-height:245px!important;
  padding:20px!important;
}
.contact-person-methods-v41{
  gap:8px!important;
  margin:15px 0 11px!important;
}
.contact-method-v41{
  padding:10px 11px!important;
}
.contact-method-v41 b{
  font-size:11px!important;
}
.footer-whatsapp-v41{
  font-size:11px;
  line-height:1.55;
}

@media(max-width:1180px){
  .engineering-page-v27 .engineering-hero-title-v41{
    max-width:680px!important;
    font-size:clamp(48px,5.4vw,66px)!important;
  }
  .engineering-page-v27 .engineering-hero-title-v41 span,
  .engineering-page-v27 .engineering-hero-title-v41 em{
    white-space:normal!important;
  }
}
@media(max-width:900px){
  .about-team-list-v24{grid-auto-rows:auto}
  .about-team-list-v24 .partner-card-v24{min-height:0;height:auto}
  .about-team-list-v24 .partner-photo-v24{height:520px!important}
  .contact-logo-panel-v25{min-height:0!important;padding:8px 0 12px!important}
}
@media(max-width:640px){
  .about-team-list-v24 .partner-photo-v24{height:430px!important}
  .engineering-page-v27 .engineering-hero-title-v41{font-size:clamp(40px,11vw,56px)!important}
  .contact-brand-copy-v42 strong{font-size:27px}
  .contact-brand-copy-v42 small{font-size:6.5px}
  .contact-brand-symbol-v42{width:50px!important;height:50px!important;flex-basis:50px}
}


/* ===== V4.3 — correção do botão "Ver projeto" nos cards ===== */
.work-img>span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  width:auto!important;
  min-width:116px!important;
  height:42px!important;
  padding:0 16px!important;
  right:18px!important;
  bottom:18px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  word-break:keep-all!important;
  line-height:1!important;
  font-size:10px!important;
  letter-spacing:.01em!important;
  text-align:center!important;
}
@media(max-width:760px){
  .work-img>span{
    min-width:108px!important;
    height:40px!important;
    right:14px!important;
    bottom:14px!important;
    padding:0 14px!important;
  }
}


/* ===== V4.4 — botão Ver projeto reconstruído ===== */
.work-img > .work-project-cta-v44{
  position:absolute!important;
  right:22px!important;
  bottom:22px!important;
  z-index:5!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:row!important;
  gap:10px!important;
  width:138px!important;
  min-width:138px!important;
  max-width:138px!important;
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  padding:0 18px!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.32)!important;
  border-radius:999px!important;
  background:rgba(7,24,39,.88)!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(3,18,29,.34), inset 0 1px rgba(255,255,255,.16)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  backdrop-filter:blur(14px)!important;
  opacity:1!important;
  transform:none!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  writing-mode:horizontal-tb!important;
  line-height:1!important;
  font-size:11px!important;
  font-weight:600!important;
  letter-spacing:.01em!important;
  text-align:center!important;
  transition:background .25s ease,border-color .25s ease,transform .25s ease!important;
}
.work-img > .work-project-cta-v44 > span{
  position:static!important;
  display:block!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  opacity:1!important;
  transform:none!important;
  color:inherit!important;
  font:inherit!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.work-img > .work-project-cta-v44 svg{
  flex:0 0 auto!important;
  width:15px!important;
  height:15px!important;
  stroke:currentColor!important;
  stroke-width:1.7!important;
}
.work-card:hover .work-img > .work-project-cta-v44{
  opacity:1!important;
  transform:translateY(-2px)!important;
  background:rgba(12,42,65,.96)!important;
  border-color:rgba(183,235,255,.58)!important;
}
@media(max-width:760px){
  .work-img > .work-project-cta-v44{
    right:14px!important;
    bottom:14px!important;
    width:126px!important;
    min-width:126px!important;
    max-width:126px!important;
    height:42px!important;
    min-height:42px!important;
    max-height:42px!important;
    padding:0 15px!important;
    font-size:10px!important;
  }
}


/* ===== V4.5 — CTA dos projetos desenhado pelo próprio card ===== */
/* Esconde qualquer badge/CTA antigo para impedir herança de largura e quebra de texto. */
.work-img > span,
.work-img > .work-project-cta-v44,
.work-img > .work-project-label-v45{
  display:none!important;
}
/* O CTA passa a ser um pseudo-elemento do container da imagem: não depende do HTML antigo. */
.work-img::after{
  content:"Ver projeto  ↗"!important;
  position:absolute!important;
  right:20px!important;
  bottom:20px!important;
  z-index:8!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:132px!important;
  min-width:132px!important;
  max-width:132px!important;
  height:44px!important;
  min-height:44px!important;
  max-height:44px!important;
  padding:0 17px!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.34)!important;
  border-radius:999px!important;
  background:rgba(7,24,39,.90)!important;
  color:#fff!important;
  box-shadow:0 12px 30px rgba(2,15,25,.34),inset 0 1px rgba(255,255,255,.14)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  backdrop-filter:blur(12px)!important;
  font-family:var(--font-geist-sans),Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
  word-break:normal!important;
  writing-mode:horizontal-tb!important;
  text-align:center!important;
  opacity:1!important;
  transform:none!important;
  pointer-events:none!important;
  transition:background .25s ease,border-color .25s ease,transform .25s ease!important;
}
.work-card:hover .work-img::after{
  background:rgba(13,48,73,.97)!important;
  border-color:rgba(183,235,255,.62)!important;
  transform:translateY(-2px)!important;
}
@media(max-width:760px){
  .work-img::after{
    right:13px!important;
    bottom:13px!important;
    width:116px!important;
    min-width:116px!important;
    max-width:116px!important;
    height:40px!important;
    min-height:40px!important;
    max-height:40px!important;
    padding:0 13px!important;
    font-size:10px!important;
  }
}


/* ===== V4.8 — revisão mobile + hero dos projetos com leitura mais cinematográfica ===== */
/* A capa do projeto fica mais apagada, como os heros das páginas institucionais. */
.project-detail-bg{
  background-position:var(--project-cover-position,center)!important;
  filter:saturate(.68) contrast(1.02) brightness(.72)!important;
}
.project-detail-overlay{
  background:
    radial-gradient(58% 70% at 76% 22%,rgba(114,195,229,.10),transparent 68%),
    linear-gradient(90deg,rgba(3,16,28,.82) 0%,rgba(6,24,39,.58) 46%,rgba(6,24,39,.30) 100%),
    linear-gradient(180deg,rgba(3,16,28,.34) 0%,rgba(3,16,28,.18) 35%,rgba(4,18,30,.92) 100%)!important;
}
.project-detail-intro h1{text-shadow:0 16px 46px rgba(0,7,14,.32)}

/* Segurança geral contra estouro horizontal em grids/flex complexos. */
.strengths-layout>* ,
.strength-grid>* ,
.portfolio-grid-new>* ,
.process-grid-new>* ,
.footer-grid>* ,
.contact-layout>* ,
.about-team-list-v24>* ,
.project-story>*{min-width:0}

@media(max-width:760px){
  /* Home — Diferenciais: a regra desktop tardia estava vencendo o breakpoint antigo. */
  .strengths-new{padding:82px 0 92px!important}
  .strengths-new .strengths-layout{
    grid-template-columns:minmax(0,1fr)!important;
    gap:38px!important;
  }
  .strengths-new .strength-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    width:100%!important;
  }
  .strengths-new .strength-card{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    grid-template-columns:44px minmax(0,1fr)!important;
    display:grid!important;
    align-items:start!important;
    gap:14px!important;
    padding:22px 18px!important;
    border-radius:18px!important;
  }
  .strengths-new .strength-card>span{
    width:42px!important;height:42px!important;
    min-width:42px!important;min-height:42px!important;
    font-size:10px!important;
  }
  .strengths-new .strength-card h3{
    margin:1px 0 8px!important;
    font-size:20px!important;
    line-height:1.18!important;
    text-wrap:pretty!important;
    overflow-wrap:normal!important;
  }
  .strengths-new .strength-card p{
    margin:0!important;
    font-size:13px!important;
    line-height:1.62!important;
    text-align:left!important;
    text-wrap:pretty!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
  }
  .strengths-new .strengths-copy h2{
    font-size:clamp(36px,10.5vw,48px)!important;
    line-height:1.08!important;
  }
  .strengths-new .strengths-copy>p{text-align:left!important;font-size:14px!important}

  /* Header móvel — compacto e sem ocupar largura desnecessária. */
  .site-header{top:8px!important}
  .site-header .header-inner,
  .site-header.is-scrolled .header-inner{
    width:calc(100% - 20px)!important;
    min-height:62px!important;
    height:62px!important;
    padding-inline:14px!important;
    border-radius:16px!important;
  }
  .brand-v2{gap:9px!important;max-width:calc(100% - 58px)!important}
  .brand-v2 .brand-symbol{width:28px!important;height:28px!important}
  .brand-v2 .brand-wordmark{width:126px!important;height:26px!important}
  .menu-button{width:42px!important;height:42px!important;flex:0 0 42px!important}
  .mobile-menu{width:calc(100% - 20px)!important;margin-top:7px!important}

  /* Heros e títulos internos. */
  .page-hero-content-v21{width:min(100% - 32px,1320px)!important}
  .page-hero-copy-v21 h1{overflow-wrap:normal!important;word-break:normal!important}
  .about-hero-v21 .about-hero-title-v41,
  .engineering-page-v27 .engineering-hero-title-v41{
    max-width:100%!important;
    font-size:clamp(40px,11.5vw,56px)!important;
    line-height:.98!important;
  }
  .about-hero-title-v41 span,.about-hero-title-v41 em,
  .engineering-hero-title-v41 span,.engineering-hero-title-v41 em{white-space:normal!important}

  /* Página individual do projeto. */
  .project-detail-hero{height:78svh!important;min-height:600px!important}
  .project-detail-bg{
    inset:-1%!important;
    transform:scale(1.015)!important;
    filter:saturate(.62) contrast(1.02) brightness(.60)!important;
  }
  .project-detail-overlay{
    background:
      linear-gradient(90deg,rgba(3,16,28,.88),rgba(5,22,36,.55)),
      linear-gradient(180deg,rgba(4,18,30,.28) 0%,rgba(4,18,30,.46) 48%,rgba(4,18,30,.96) 100%)!important;
  }
  .project-detail-intro{bottom:38px!important}
  .project-detail-intro h1{
    max-width:100%!important;
    margin:12px 0 22px!important;
    font-size:clamp(42px,12.5vw,62px)!important;
    line-height:.96!important;
    letter-spacing:-.045em!important;
    text-wrap:balance!important;
  }
  .project-meta{gap:8px!important}
  .project-meta span{padding:8px 11px!important;font-size:9px!important}

  /* Quem somos — cards de sócios sempre dentro da tela. */
  .about-team-list-v24{gap:32px!important}
  .about-team-list-v24 .partner-card-v24,
  .about-team-list-v24 .partner-card-reverse-v24{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:22px!important;
    padding:12px!important;
    min-height:0!important;
    height:auto!important;
  }
  .about-team-list-v24 .partner-photo-v24{height:390px!important;min-height:0!important}
  .partner-copy-v24{padding:10px 6px 14px!important}
  .partner-copy-v24>p:not(.section-label){text-align:left!important}

  /* Engenharia/arquitetura — linhas e cards sem largura fixa no celular. */
  .engineering-service-row-v24,
  .architecture-service-card-v24,
  .architecture-service-card-v25{
    grid-template-columns:34px minmax(0,1fr) auto!important;
    gap:12px!important;
    padding:18px 15px!important;
  }
  .engineering-service-row-v24 p,
  .architecture-service-card-v24 p,
  .architecture-service-card-v25 p{text-align:left!important}
  .engineering-timeline-v25{grid-template-columns:minmax(0,1fr)!important}

  /* Contato — conteúdo se organiza verticalmente e textos não estouram. */
  .contact-intro-grid-v21,
  .contact-intro-grid-v25,
  .contact-layout-v21{grid-template-columns:minmax(0,1fr)!important;gap:42px!important}
  .contact-logo-panel-v25{padding:18px 14px!important}
  .contact-side-v25 .contact-step-grid-v21{grid-template-columns:minmax(0,1fr)!important}
  .contact-direct-cards-v35{grid-template-columns:minmax(0,1fr)!important}
  .contact-direct-card-v23{min-width:0!important}
  .contact-method-v41 b,.contact-partner-email-v35{overflow-wrap:anywhere!important;white-space:normal!important}

  /* Projetos e galerias. */
  .works-grid,.portfolio-grid-new,.project-gallery-grid{grid-template-columns:minmax(0,1fr)!important}
  .work-card,.project-card-new{min-width:0!important;width:100%!important}
  .work-img,.project-image-new{width:100%!important}

  /* Footer mais confortável em telas estreitas. */
  .footer-topline{gap:24px!important}
  .footer-topline h2{font-size:clamp(34px,9vw,44px)!important;max-width:100%!important}
  .footer-grid{grid-template-columns:minmax(0,1fr)!important;gap:30px!important;padding:38px 0!important}
  .footer-brand{grid-column:auto!important}
  .footer-brand p{max-width:310px!important}
  .footer-col a,.footer-col p{overflow-wrap:anywhere!important}
}

@media(max-width:390px){
  .container{width:calc(100% - 24px)!important}
  .brand-v2 .brand-wordmark{width:112px!important}
  .strengths-new .strength-card{padding:20px 16px!important;grid-template-columns:40px minmax(0,1fr)!important}
  .strengths-new .strength-card>span{width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important}
  .strengths-new .strength-card h3{font-size:19px!important}
  .about-team-list-v24 .partner-photo-v24{height:360px!important}
}


/* ===== V4.9 — pente fino de overflow, projetos e responsividade ===== */
html,body{max-width:100%;overflow-x:hidden}
@supports(overflow:clip){html,body{overflow-x:clip}}
img,video,iframe,svg{max-width:100%}
.container{min-width:0}
.project-detail-page{width:100%;max-width:100%;overflow-x:hidden}
@supports(overflow:clip){.project-detail-page{overflow-x:clip}}
.project-detail-page *{box-sizing:border-box}
.project-detail-intro{width:min(calc(100% - 40px),1320px)!important;min-width:0}
.project-detail-intro h1{max-width:min(1050px,100%)!important;overflow-wrap:anywhere;word-break:normal;hyphens:auto;text-wrap:balance}
.project-detail-intro h1.project-title-long{font-size:clamp(48px,6.5vw,92px)!important;line-height:.94!important}
.project-detail-intro h1.project-title-very-long{font-size:clamp(40px,5.2vw,76px)!important;line-height:.98!important}
.project-meta{max-width:100%}
.project-meta span{max-width:100%;overflow-wrap:anywhere;word-break:normal}
.project-story{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important}
.project-story>*,.project-concept-grid>*,.project-concept-content>*,.project-facts-grid>*{min-width:0}
.project-story h2,.project-description,.project-facts-grid strong,.project-concept-content p,.project-concept-content li,.project-gallery figcaption{max-width:100%;overflow-wrap:anywhere;word-break:normal;hyphens:auto}
.project-story h2{text-wrap:pretty}
.project-description{white-space:normal}
.project-facts-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.project-facts-grid article{min-width:0;border-radius:20px}
.project-concept-grid{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)!important}
.project-concept-content article{min-width:0;border-radius:20px;overflow:hidden}
.project-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.project-gallery figure{min-width:0;max-width:100%}
.project-media-frame{max-width:100%;border-radius:18px!important}
.project-gallery figcaption{padding-inline:4px}
.cta-strip .container>*{min-width:0}
.cta-strip h2{overflow-wrap:anywhere;text-wrap:balance}

/* Cards/listagens de projetos também suportam títulos, locais e escopos longos. */
.work-card,.project-card-new,.work-info,.project-info-new,.discipline-section-head>*{min-width:0}
.work-info h2,.project-info-new h3,.work-info small,.project-info-new small,.project-info-new p{max-width:100%;overflow-wrap:anywhere;word-break:normal;hyphens:auto}
.work-info h2,.project-info-new h3{text-wrap:balance}
.work-info{gap:18px}
.work-info>small{flex:0 1 38%;text-align:right}

/* Textos institucionais: evita qualquer sequência extensa criar scroll lateral. */
.about-company-copy-v24 p,.partner-copy-v24 p,.services-detail-copy-v21 p,.engineering-service-row-v24 p,.architecture-service-card-v25 p,.contact-intro-copy-v21 p,.contact-direct-card-v23 p,.footer-col a{overflow-wrap:anywhere;word-break:normal}

@media(max-width:900px){
  .project-story,.project-concept-grid{grid-template-columns:minmax(0,1fr)!important;gap:30px!important}
  .project-facts-grid{grid-template-columns:minmax(0,1fr)!important}
  .project-gallery-grid{grid-template-columns:minmax(0,1fr)!important}
  .work-info{flex-direction:column!important;align-items:flex-start!important;gap:8px!important}
  .work-info>small{max-width:100%;text-align:left!important}
}
@media(max-width:760px){
  .project-detail-intro{width:calc(100% - 28px)!important;left:14px!important;transform:none!important}
  .project-detail-intro h1,.project-detail-intro h1.project-title-long,.project-detail-intro h1.project-title-very-long{font-size:clamp(36px,11.5vw,58px)!important;line-height:.98!important;letter-spacing:-.04em!important}
  .project-description{font-size:15px!important;line-height:1.78!important;padding-top:0!important;text-align:left!important}
  .project-story h2{font-size:clamp(32px,9.4vw,46px)!important;line-height:1.04!important}
  .project-facts-grid{gap:10px!important;margin-top:34px!important}
  .project-facts-grid article{min-height:auto!important;padding:20px!important}
  .project-concept-content article{padding:22px 18px!important}
  .project-concept-content article p,.project-concept-content li{text-align:left!important;font-size:13px!important;line-height:1.7!important}
  .project-gallery-head h2{font-size:clamp(34px,10vw,48px)!important}
  .project-media-frame{border-radius:15px!important}
  .cta-strip .container{min-width:0!important}
  .cta-strip h2{max-width:100%!important}
}
@media(max-width:390px){
  .project-detail-intro{width:calc(100% - 24px)!important;left:12px!important}
  .project-detail-intro h1,.project-detail-intro h1.project-title-long,.project-detail-intro h1.project-title-very-long{font-size:clamp(34px,10.8vw,48px)!important}
  .project-meta span{font-size:8px!important;padding:7px 9px!important}
}


/* A imagem em fluxo é usada somente no celular; o fundo mantém o layout desktop. */
.project-detail-cover-mobile{display:none}

/* ===== V5.0 — página de projeto: texto de apresentação mais editorial e legível ===== */
.project-overview-section{padding:112px 0 116px!important}
.project-overview-shell{min-width:0}
.project-story{
  grid-template-columns:minmax(0,.92fr) minmax(0,.88fr)!important;
  gap:clamp(56px,7vw,104px)!important;
  align-items:start!important;
}
.project-story-heading{min-width:0}
.project-story-heading h2{
  margin:18px 0 0!important;
  max-width:16ch!important;
  font-size:clamp(34px,3.7vw,54px)!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  font-weight:520!important;
  text-transform:none!important;
  text-wrap:balance!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:none!important;
}
.project-story-copy{
  min-width:0;
  padding:10px 0 8px 34px;
  border-left:1px solid rgba(16,34,56,.12);
}
.project-story-copy>span{
  display:block;
  margin-bottom:17px;
  color:#4d96b8;
  font-size:9px;
  line-height:1.2;
  font-weight:650;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.project-description{
  padding-top:0!important;
  max-width:650px!important;
  color:#526473!important;
  font-size:16px!important;
  line-height:1.88!important;
  letter-spacing:-.006em;
  text-align:left!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:none!important;
}
.project-facts-grid{margin-top:72px!important}
.project-facts-grid article{
  min-height:132px!important;
  padding:26px 28px!important;
  background:linear-gradient(145deg,#fbfcfc,#f4f7f8)!important;
  border:1px solid rgba(16,34,56,.10)!important;
  box-shadow:0 14px 35px rgba(16,42,67,.055)!important;
}
.project-facts-grid article span{font-size:8px!important;letter-spacing:.16em!important}
.project-facts-grid article strong{
  font-size:16px!important;
  line-height:1.42!important;
  text-wrap:pretty!important;
  hyphens:none!important;
}
@media(max-width:900px){
  .project-overview-section{padding:86px 0 92px!important}
  .project-story{grid-template-columns:minmax(0,1fr)!important;gap:34px!important}
  .project-story-heading h2{max-width:19ch!important;font-size:clamp(32px,7vw,46px)!important}
  .project-story-copy{padding:24px 0 0!important;border-left:0!important;border-top:1px solid rgba(16,34,56,.12)}
  .project-facts-grid{margin-top:50px!important}
}
@media(max-width:760px){
  .project-overview-section{padding:72px 0 78px!important}
  .project-story{gap:28px!important}
  .project-story-heading h2{font-size:clamp(30px,8.7vw,42px)!important;line-height:1.06!important;max-width:100%!important}
  .project-description{font-size:15px!important;line-height:1.78!important}
  .project-facts-grid{margin-top:38px!important}
  .project-facts-grid article{min-height:auto!important;padding:20px!important}
}

/* ===== V5.0.1 — capa inteira dos projetos no celular, sem ampliar ou recortar ===== */
@media(max-width:900px){
  .project-detail-hero{
    height:auto!important;
    min-height:0!important;
    padding-top:110px;
  }
  .project-detail-bg{
    position:relative;
    inset:auto!important;
    width:100%;
    background-image:none;
    transform:none!important;
    filter:none!important;
  }
  .project-detail-cover-mobile{
    display:block;
    width:100%;
    height:auto;
    object-fit:contain;
  }
  .project-detail-overlay{display:none}
  .project-detail-intro{
    position:relative;
    left:auto!important;
    bottom:auto!important;
    transform:none!important;
    margin-inline:auto;
    padding:28px 0 38px;
  }
  .project-detail-intro h1{
    hyphens:none;
    overflow-wrap:break-word;
  }
}
@media(max-width:760px){
  .project-detail-hero{padding-top:88px}
}
