:root{--navy:#242629;--ink:#303236;--gold:#d7b980;--paper:#f5f6f7;--muted:#53616b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;background:white}a{color:inherit}a:focus-visible{outline:3px solid #ac822d;outline-offset:6px}header{max-width:1440px;margin:auto;padding:26px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-size:21px;letter-spacing:2px;font-weight:700;line-height:1.2}.brand small{display:block;font-size:10px;letter-spacing:3px;font-weight:400;margin-top:6px}.mark{border:2px solid var(--gold);height:42px;width:40px;display:grid;place-items:center;color:var(--gold);font-size:31px;font-family:Georgia,serif;font-weight:400}nav{display:flex;gap:30px;font-size:14px}nav a{text-decoration:none}.header-contact{border:1px solid #cbd2d7;text-decoration:none;padding:11px 18px;font-size:14px}.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1440px;margin:auto;min-height:630px;background:var(--navy);color:#fff}.hero-copy{padding:62px 10% 38px}.eyebrow{font-size:12px;letter-spacing:2.2px;font-weight:700;margin:0 0 25px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-1.8px;line-height:1.08;margin:0}h1{font-size:clamp(46px,4.7vw,70px)}h1 em,h2 em{font-weight:400;color:var(--gold)}.intro{max-width:455px;font-size:17px;line-height:1.7;color:#d4dce2;margin:28px 0}.button{display:inline-flex;text-decoration:none;font-size:14px;font-weight:700;padding:16px 23px;align-items:center;justify-content:center}.gold{background:var(--gold);color:var(--navy)}.button:hover{background:#e6cc9c}.hero-details{display:flex;gap:36px;border-top:1px solid #ffffff26;padding-top:25px;margin-top:39px}.hero-details span{font-size:12px;color:#c1ced7}.hero-details strong{display:block;color:#fff;font-size:23px;font-weight:400;margin-bottom:3px}.hero-image{margin:0;position:relative;overflow:hidden;background:#78909f;min-height:500px}.hero-image img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:55% center}.hero-image:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#0006);pointer-events:none}.hero-image figcaption{position:absolute;right:18px;top:15px;z-index:1;background:#10283ac9;color:#fff;padding:4px 9px;font-size:12px}.image-label{position:absolute;bottom:30px;left:32px;right:20px;z-index:1;font-size:12px;letter-spacing:2px}.section{padding:85px max(5%,calc((100vw - 1296px)/2));scroll-margin-top:10px}h2{font-size:clamp(37px,3.4vw,50px)}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px}.about .eyebrow,.services .eyebrow,.process .eyebrow{color:#6e7478}.about h2 em,.services h2 em,.process h2 em{color:#8e6b36}.about-copy p{color:var(--muted);margin:0 0 20px}.engineer{margin-top:30px;border-left:2px solid var(--gold);padding-left:20px}.mini-label{display:block;font-size:12px;letter-spacing:1.6px;margin-bottom:8px}.engineer strong{font-size:21px;font-weight:400}.services{background:var(--paper)}.section-head{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-bottom:48px}.section-head>p{max-width:335px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #cbd2d7}.service-grid article{padding:28px 24px 8px;border-right:1px solid #cbd2d7;display:flex;flex-direction:column}.service-grid article:first-child{padding-left:0}.service-grid article:last-child{border:0}.number{font-size:14px;letter-spacing:1px;color:#8e6b36}.service-grid h3{font-family:Georgia,serif;font-size:27px;line-height:1.2;font-weight:400;margin:25px 0 16px}.service-grid p{font-size:15px;color:var(--muted);margin:0 0 25px}.service-grid a{margin-top:auto;font-size:14px;text-underline-offset:5px}.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.process-layout p{color:var(--muted);margin:0 0 20px}.text-link{font-size:15px;text-underline-offset:5px}.contact{background:var(--navy);color:white;display:grid;grid-template-columns:1.15fr 1fr;gap:90px}.contact .eyebrow{color:var(--gold)}.contact .button{margin-top:30px}.contact-details{border-left:1px solid #ffffff26;padding-left:50px;display:flex;flex-direction:column;justify-content:center;gap:28px}.contact-details .mini-label{color:#b5c4cf}.phone{font-size:30px;text-decoration:none;letter-spacing:-.5px}.contact-details p{margin:0;font-size:17px}.map{display:inline-block;color:var(--gold);font-size:14px;margin-top:8px;text-underline-offset:5px}footer{max-width:1440px;margin:auto;padding:38px 5%;display:flex;justify-content:space-between;align-items:center;gap:28px}footer p,footer>span{font-size:13px;color:var(--muted)}@media(min-width:1441px){.hero{max-width:none;grid-template-columns:1fr 1fr}.hero-copy{padding-left:max(10%,calc((100vw - 1296px)/2));padding-right:80px}}@media(max-width:1000px){header{gap:20px}nav{gap:18px}.header-contact{display:none}.hero-copy{padding:45px 8% 30px}h1{font-size:52px}.hero-details{gap:22px}.about,.process-layout{gap:40px}.service-grid{grid-template-columns:repeat(2,1fr);gap:35px 0}.service-grid article:nth-child(3){padding-left:0}.service-grid article:nth-child(2){border:0}.contact{gap:40px}.contact-details{padding-left:30px}.section{padding-top:65px;padding-bottom:65px}}@media(max-width:650px){header{padding:20px 6%;flex-wrap:wrap;gap:18px}.brand{font-size:18px}nav{width:100%;justify-content:space-between;font-size:14px;border-top:1px solid #e4e8ea;padding-top:13px}.hero{display:flex;flex-direction:column}.hero-copy{padding:38px 6% 32px}.eyebrow{font-size:12px;margin-bottom:22px}h1{font-size:49px}.intro{font-size:16px;margin:25px 0}.hero-details{margin-top:30px}.hero-image{min-height:350px}.image-label{left:22px;font-size:10px}.section{padding:48px 6%}.about,.process-layout,.contact{grid-template-columns:1fr;gap:28px}h2{font-size:38px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:25px}.service-grid{grid-template-columns:1fr;gap:0}.service-grid article{padding:25px 0!important;border-right:0;border-bottom:1px solid #cbd2d7!important}.service-grid article:last-child{border-bottom:0!important}.service-grid h3{margin-top:12px}.service-grid p{margin-bottom:18px}.contact-details{border-left:0;border-top:1px solid #ffffff26;padding:30px 0 0;margin-top:10px}.phone{font-size:28px}footer{padding:30px 6%;flex-wrap:wrap;gap:15px}footer .brand{width:100%}footer p{margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.portfolio .eyebrow{color:#6e7478}.portfolio h2 em{color:#8e6b36}.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.portfolio-grid figure{margin:0}.archive-photo{position:relative;overflow:hidden;background:#e0e0dc;aspect-ratio:4/5}.archive-photo img{position:absolute;max-width:none;height:auto}.tower img{width:200%;left:-15%;top:-14%}.house img{width:192.86%;left:-35.71%;top:-104.29%}.warehouse img{width:276.9%;left:-51.3%;top:-76.9%}.commercial img{width:300%;left:-150%;top:-164%}.portfolio-grid figcaption{font-family:Georgia,serif;font-size:21px;margin-top:15px;line-height:1.3}.archive-note{font-size:13px;color:var(--muted);margin:25px 0 0}.process{background:var(--paper)}@media(max-width:1000px){.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:30px 20px}}@media(max-width:650px){nav{gap:10px}.portfolio-grid{gap:25px 14px}.portfolio-grid figcaption{font-size:18px}}

.archive-photo.restored img{position:static;width:100%;height:100%;object-fit:cover;object-position:center;max-width:100%}.archive-photo.restored.house img,.archive-photo.restored.warehouse img{object-fit:contain}.archive-photo.restored{background:#edf0f2}

.hero-image{background:#28292b}.hero-image img{object-fit:contain;object-position:center}.hero-image:after{background:none}.image-label{color:#e8d5ad}.hero-image .image-label{bottom:20px;font-size:10px;letter-spacing:1.5px}@media(max-width:650px){.hero-image{min-height:300px}.hero-image .image-label{font-size:9px;bottom:14px}}

.official-logo{display:block;position:relative;width:210px;height:142px;overflow:hidden;background:#28292b}.official-logo img{position:absolute;width:336px;height:auto;max-width:none;left:-80px;top:-27px}header{padding-top:12px;padding-bottom:12px}footer .brand{width:auto}@media(max-width:650px){.official-logo{width:180px;height:122px}.official-logo img{width:288px;left:-69px;top:-23px}header{justify-content:center}footer .brand{width:100%}}

.official-logo{width:235px;height:auto;overflow:visible;background:white}.official-logo img{position:static;display:block;width:100%;height:auto;max-width:100%}header{padding-top:18px;padding-bottom:18px}.hero-image{background:white}.hero-image img{padding:32px;width:100%;height:100%;object-fit:contain}.hero-image .image-label{color:#57534a;bottom:25px}@media(max-width:650px){.official-logo{width:200px;height:auto}.official-logo img{position:static;width:100%;height:auto;max-width:100%}.hero-image{min-height:270px}.hero-image img{padding:20px}.hero-image .image-label{bottom:15px}}

.archive-photo.restored.etec img{object-fit:contain}.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1000px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:450px){.portfolio-grid{grid-template-columns:1fr}.archive-photo{aspect-ratio:4/3}.archive-photo.restored.tower{aspect-ratio:4/5}}

.project-location{display:block;margin-top:8px;font-family:Arial,Helvetica,sans-serif;font-size:14px;color:var(--muted)}.project-area,.project-scope{font-size:16px;line-height:1.6;margin:12px 0;color:var(--muted)}.project-details{border-top:1px solid #cbd2d7;margin-top:18px;padding-top:14px;font-size:16px}.project-details summary{cursor:pointer;font-weight:700;color:var(--ink)}.project-details summary:focus-visible{outline:3px solid #ac822d;outline-offset:5px}.project-details p{margin:16px 0 0;color:var(--muted);overflow-wrap:anywhere}

.archive-photo.restored.makoto{aspect-ratio:3/4}.archive-photo.restored.makoto img{object-fit:contain}

.archive-photo.restored.cinemateca{aspect-ratio:4/3}.archive-photo.restored.cinemateca img{object-fit:contain}

.portfolio-grid .archive-photo.restored{aspect-ratio:4/5}.portfolio-grid .etec-stack{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:8px}.portfolio-grid .archive-photo.restored.etec-stack img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}@media(max-width:450px){.portfolio-grid .archive-photo.restored{aspect-ratio:4/5}}

.portfolio-grid .cinemateca-stack{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:8px}.portfolio-grid .archive-photo.restored.cinemateca-stack img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;object-position:center}

.services{background:#f2f3f4}.services .section-head{align-items:center;margin-bottom:36px}.services .section-head>p{max-width:390px;font-size:16px;line-height:1.75}.services .service-grid{border:0;gap:20px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.services .service-grid article{padding:28px!important;border:1px solid #dce0e3!important;border-top:3px solid #b38e50!important;background:#fff;min-width:0}.services .number{font-size:14px;letter-spacing:1px;color:#8e6b36}.services .service-grid h3{font-size:27px;margin:24px 0 16px;line-height:1.2;min-height:2.4em}.services .service-grid p{font-size:16px;line-height:1.7;margin-bottom:28px}.services .service-grid a{display:block;text-align:center;text-decoration:none;padding:12px 10px;border:1px solid #303236;color:#303236;font-size:14px;font-weight:700;line-height:1.5;margin-top:auto;transition:background .15s,color .15s}.services .service-grid a:hover{background:#303236;color:#fff}@media(max-width:1100px){.services .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services .service-grid h3{min-height:0}}@media(max-width:650px){.services .service-grid{grid-template-columns:1fr;gap:16px}.services .service-grid article{padding:24px!important}.services .section-head>p{margin-top:22px}.services .service-grid h3{margin-top:18px}.services .service-grid p{margin-bottom:24px}}@media(prefers-reduced-motion:reduce){.services .service-grid a{transition:none}}

.archive-photo.restored.cobrirel img{object-fit:contain}

/* Abertura preta com marca em prata e dourado. */
header{max-width:none;background:#08090a;color:#f4f4f5;padding:20px max(5%,calc((100vw - 1296px)/2));gap:30px}
header .official-logo{background:transparent;width:220px}
header nav a:hover{color:#e6bc50}
header .header-contact{border-color:#d8ad43;color:#e6bc50}
.hero{max-width:none;background:#08090a;min-height:650px}
.hero-copy{padding:55px 55px 46px max(10%,calc((100vw - 1296px)/2))}
.hero .eyebrow{color:#e6bc50;font-size:14px}
.hero h1 em{color:#d5d7da}
.hero .intro{color:#c8cbd0}
.hero .gold{background:#e6bc50;color:#08090a}
.hero .gold:hover{background:#f1cd72}
.hero-details span{font-size:14px;color:#bfc3ca}
.hero-image{background:#08090a;min-height:550px}
.hero-image img{padding:40px 6% 95px 0;object-fit:contain}
.hero-image .image-label{bottom:46px;left:0;right:6%;text-align:center;color:#bfc3ca;font-size:12px;letter-spacing:1.8px}
@media(max-width:1000px){header{gap:22px}.hero-copy{padding:45px 8% 36px}.hero-image img{padding:30px 6% 90px 0}.hero-image .image-label{font-size:11px;letter-spacing:1px}}
@media(max-width:650px){header{padding:20px 6%}header .official-logo{width:200px}header nav{border-color:#ffffff24}.hero-copy{padding:38px 6% 32px}.hero-image{min-height:330px}.hero-image img{padding:10px 6% 60px}.hero-image .image-label{left:6%;right:6%;bottom:25px;font-size:10px;letter-spacing:.9px}.hero-details{gap:26px}}

.archive-photo.restored.portal-do-sul img{object-fit:contain}

/* Página de clientes */
header nav a[aria-current="page"]{color:#e6bc50;text-decoration:underline;text-underline-offset:6px}
.clients-intro{background:#08090a;color:#fff;padding-top:52px;padding-bottom:65px}
.clients-intro .eyebrow{color:#e6bc50;font-size:14px}
.clients-intro h1{font-size:clamp(36px,4vw,58px);max-width:1000px}
.clients-intro h1 em{color:#d5d7da}
.clients-intro>p:last-child{font-size:18px;max-width:700px;color:#c8cbd0;margin:26px 0 0}
.clients-content{background:#f5f6f7}
.client-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.client-logo{margin:0;background:white;border:1px solid #dce0e3;padding:24px;display:flex;flex-direction:column;min-width:0}
.client-logo>div{height:170px;display:flex;align-items:center;justify-content:center}
.client-logo img{display:block;max-width:100%;width:100%;height:100%;object-fit:contain}
.client-logo figcaption{font-size:16px;text-align:center;font-weight:700;line-height:1.5;margin-top:22px}
.client-logo-dark{background:#242629;color:#fff;border-color:#242629}
.client-logo-seal img{width:auto;max-width:100%;height:155px}
.other-clients{margin:64px 0 40px;border-top:1px solid #dce0e3;padding-top:36px}
.other-clients h2{font-size:30px;letter-spacing:-.6px}
.other-clients ul{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 28px}
.other-clients li{font-size:16px;line-height:1.5;border-left:2px solid #b38e50;padding-left:14px}
@media(max-width:1100px){.client-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){header nav{flex-wrap:wrap;justify-content:center;gap:12px 20px}.clients-intro{padding-top:35px;padding-bottom:42px}.clients-intro h1{font-size:38px;letter-spacing:-1px}.client-logo-grid{gap:14px}.client-logo{padding:18px 12px}.client-logo>div{height:115px}.client-logo-seal img{height:110px}.client-logo figcaption{font-size:14px;margin-top:18px}.other-clients{margin-top:40px}.other-clients ul{grid-template-columns:1fr;gap:16px}.clients-intro>p:last-child{font-size:16px}}
@media(max-width:350px){.client-logo-grid{grid-template-columns:1fr}}

.client-logo-anuntis img{object-fit:cover}

/* Abertura e conteúdo adaptados à largura de celulares e tablets. */
html,body{width:100%;max-width:100%}
header>*,.hero>*,.about>*,.process-layout>*,.contact>*,.section-head>*{min-width:0}
.hero{grid-template-columns:repeat(2,minmax(0,1fr))}
.hero h1,.clients-intro h1{overflow-wrap:break-word}
@media(max-width:900px){
  header{flex-wrap:wrap;justify-content:center}
  header nav{width:100%;flex-wrap:wrap;justify-content:center;gap:12px 20px}
  .hero{display:flex;flex-direction:column;min-height:0}
  .hero-copy{padding:38px 6% 32px}
  .hero h1{font-size:clamp(36px,6.8vw,52px)}
  .hero-image{width:100%;min-height:0;aspect-ratio:4/3;max-height:430px}
  .hero-image img{padding:10px 6% 60px}
  .hero-image .image-label{left:6%;right:6%;bottom:25px;font-size:10px;letter-spacing:.9px}
}
@media(max-width:650px){
  .hero h1{font-size:clamp(34px,10vw,49px);letter-spacing:-1px}
  .hero-details{flex-wrap:wrap;gap:20px 26px}
  .clients-intro h1,h2{font-size:clamp(30px,9vw,38px)}
  .phone{font-size:clamp(22px,6.6vw,28px)}
  .button{max-width:100%;white-space:normal;text-align:center}
}

/* Seções escuras com contraste e detalhes da marca. */
.about,.portfolio,.contact{background:#08090a;color:#f4f4f5}
.about{border-top:1px solid #ffffff18}
.about .eyebrow,.portfolio .eyebrow,.contact .eyebrow{color:#e6bc50}
.about h2 em,.portfolio h2 em,.contact h2 em{color:#d5d7da}
.about-copy p,.portfolio .section-head>p,.portfolio .project-location,
.portfolio .project-area,.portfolio .project-scope,.portfolio .project-details p,
.portfolio .archive-note{color:#c8cbd0}
.portfolio .project-details{border-color:#ffffff26}
.portfolio .project-details summary{color:#f4f4f5}
.portfolio .archive-photo.restored{background:#17191c}
.contact .contact-details{border-color:#ffffff26}
.contact .contact-details .mini-label{color:#bfc3ca}
.contact .map{color:#e6bc50}
.contact .gold{background:#e6bc50;color:#08090a}
.contact .gold:hover{background:#f1cd72}

/* Assinatura discreta nas seções intermediárias. */
header .official-logo{width:150px}
footer .official-logo{width:150px}
.section{position:relative}
.section-brand{position:absolute;top:16px;right:max(5%,calc((100vw - 1296px)/2));display:block;width:90px;pointer-events:none}
.section-brand img{display:block;width:100%;height:auto}
@media(max-width:900px){
  .hero-image{height:235px;max-height:none;aspect-ratio:auto}
  .hero-image img{padding:0 20% 48px}
  .hero-image .image-label{bottom:16px}
}
@media(max-width:650px){
  header .official-logo{width:135px}
  .section{padding-top:88px}
  .section-brand{width:78px;top:14px;right:6%}
  .clients-intro{padding-top:88px}
}

/* Clientes: alinhamento e espaço uniforme, preservando as proporções. */
.client-logo-grid{gap:32px}
.client-logo{padding:32px 24px;box-shadow:none}
.client-logo>div{height:145px;padding:12px}
.client-logo img{filter:grayscale(1);object-fit:contain}
.client-logo-seal img{height:135px}
.client-logo-anuntis img{object-fit:cover}
header nav{flex-wrap:wrap;justify-content:center;gap:12px 22px}
/* Excelência na Execução */
.execution-intro .button{margin-top:28px}
.execution-content{background:#f5f6f7}
.execution-content .eyebrow{color:#6e7478}
.execution-content h2 em{color:#8e6b36}
.execution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.execution-grid article{background:#fff;border:1px solid #dce0e3;border-top:2px solid #b38e50;padding:30px}
.execution-grid h3,.execution-evidence h3{font-family:Georgia,serif;font-weight:400;font-size:25px;line-height:1.25;margin:18px 0}
.execution-grid p{color:var(--muted);margin:0;font-size:16px}
.execution-record,.execution-contact{background:#08090a;color:#f4f4f5}
.execution-record .eyebrow,.execution-contact .eyebrow{color:#e6bc50}
.execution-record h2 em,.execution-contact h2 em{color:#d5d7da}
.execution-evidence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;margin:36px 0}
.execution-evidence article{border-top:1px solid #ffffff26;padding-top:12px}
.execution-evidence p,.execution-contact>p:not(.eyebrow){color:#c8cbd0}
.execution-contact{border-top:1px solid #ffffff26}
.execution-contact>p:not(.eyebrow){max-width:650px;margin:25px 0}
@media(max-width:1100px){header{flex-wrap:wrap;justify-content:center}header nav{width:100%}.execution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.client-logo-grid{gap:18px}.client-logo{padding:24px 12px}.client-logo>div{height:110px;padding:5px}.client-logo-seal img{height:100px}.execution-grid,.execution-evidence{grid-template-columns:1fr}.execution-grid article{padding:24px}.execution-evidence{gap:24px}}

/* Contato corporativo */
.corporate-contact{padding-bottom:85px}
.corporate-contact-copy{max-width:760px;margin:32px 0;color:#c8cbd0;font-size:18px}
.corporate-contact-actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:32px}
.corporate-contact-secondary{border:1px solid #d5d7da;color:#f4f4f5;background:transparent}
.corporate-contact-secondary:hover{background:#242629}
.contact-guidance{background:#f5f6f7}
.contact-guidance .eyebrow{color:#6e7478}
.contact-guidance h2 em{color:#8e6b36}
.contact-guidance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;margin-top:40px}
.contact-guidance-grid>div{border-top:1px solid #cbd2d7;padding-top:24px}
.contact-guidance h3{font-family:Georgia,serif;font-size:25px;font-weight:400;line-height:1.25}
.contact-guidance p{color:var(--muted)}
@media(max-width:650px){.corporate-contact{padding-bottom:48px}.corporate-contact-copy{font-size:16px}.corporate-contact-actions{flex-direction:column;align-items:stretch}.contact-guidance-grid{grid-template-columns:1fr;gap:20px}}

.client-logo-fininvest img{object-fit:cover}

/* Uma marca no início, com assinaturas pequenas apenas nas seções seguintes. */
.hero{display:block;min-height:0}
.hero-copy{max-width:1000px;margin:0 auto;padding:55px 6% 65px}
.hero .intro{max-width:650px}
.clients-intro{padding-top:48px}
@media(max-width:650px){.hero-copy{padding:38px 6% 40px}.clients-intro{padding-top:35px}}

/* Contato institucional e rodapé integrado à identidade. */
.contact-refined{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:60px;align-items:center;padding-top:110px;padding-bottom:80px}
.contact-refined h2{font-size:clamp(34px,3.2vw,46px);line-height:1.15;letter-spacing:-1px}
.contact-refined .eyebrow{font-size:12px;letter-spacing:2px}
.contact-introduction{max-width:620px;color:#c8cbd0;font-size:17px;line-height:1.75;margin:25px 0 0}
.contact-refined-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}
.contact-refined .button{margin-top:0;padding:15px 20px}
.contact-project-info{background:#141619;border:1px solid #ffffff20;padding:32px;min-width:0}
.contact-project-info .mini-label{color:#d7b980;font-size:11px;letter-spacing:1.8px}
.contact-project-info h3{font-size:22px;line-height:1.4;font-weight:400;margin:18px 0}
.contact-project-info>p:not(.mini-label){color:#bfc3ca;font-size:15px;line-height:1.7;margin-bottom:24px}
.contact-project-info dl{margin:0;border-top:1px solid #ffffff20;padding-top:20px}
.contact-project-info dl>div+div{margin-top:18px}
.contact-project-info dt{color:#a8adb5;font-size:12px;margin-bottom:5px}
.contact-project-info dd{margin:0;color:#f4f4f5;font-size:15px}
.site-footer{max-width:none;background:#08090a;border-top:1px solid #ffffff20;color:#f4f4f5;padding:25px max(5%,calc((100vw - 1296px)/2));justify-content:flex-start;gap:24px}
.site-footer .official-logo{width:100px;background:transparent}
.footer-identity{display:flex;flex-direction:column;gap:5px;font-size:13px}
.footer-identity strong{font-weight:400;letter-spacing:.3px}
.footer-identity span{color:#a8adb5;font-size:12px}
.footer-contact-link{margin-left:auto;color:#d7b980;font-size:13px;text-decoration:none}
@media(max-width:1000px){.contact-refined{gap:32px}}
@media(max-width:650px){.contact-refined{grid-template-columns:1fr;padding-top:90px;padding-bottom:44px;gap:32px}.contact-refined h2{font-size:34px}.contact-introduction{font-size:16px}.contact-refined-actions{flex-direction:column;align-items:stretch;gap:12px}.contact-project-info{padding:24px}.site-footer{padding:24px 6%;display:grid;grid-template-columns:80px minmax(0,1fr);gap:20px}.site-footer .brand{width:auto}.site-footer .official-logo{width:80px}.footer-contact-link{grid-column:2;margin-left:0;align-self:start}}

/* No celular, fotos individuais acompanham a proporção original. */
@media(max-width:450px){
  .portfolio-grid .archive-photo.restored:not(.etec-stack):not(.cinemateca-stack){aspect-ratio:auto}
  .portfolio-grid .archive-photo.restored:not(.etec-stack):not(.cinemateca-stack) img{display:block;position:static;width:100%;height:auto;max-width:100%}
}
