.works-hero { position:relative; min-height:620px; overflow:hidden; background:var(--green-deep); }
.works-hero-media { position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,40,24,.93) 0,rgba(0,40,24,.7) 43%,rgba(0,40,24,.12) 76%),url('../img/obras/terraplanagem-capivari.webp') 60% 52%/cover; transform:scale(1.01); }
.works-hero-layout { position:relative; min-height:620px; display:flex; align-items:center; }
.works-hero-copy { max-width:830px; padding:5rem 0; color:#fff; }
.works-hero .eyebrow { color:var(--yellow); }
.works-hero h1 { max-width:820px; margin-bottom:1.5rem; color:#fff; font-size:clamp(3.6rem,5.7vw,6.6rem); line-height:.91; }
.works-hero-copy > p:not(.eyebrow) { max-width:650px; color:#e2ebe5; font-size:1.06rem; }
.works-hero .button { margin-top:1.2rem; }
.button-yellow { color:var(--black); background:var(--yellow); }
.button-yellow:hover { color:#fff; background:var(--black); }
.works-strip { background:var(--yellow); }
.works-strip-grid { display:grid; grid-template-columns:repeat(3,1fr); }
.works-strip span { padding:1.3rem 1rem; border-right:1px solid rgba(17,17,14,.18); font-size:.76rem; font-weight:650; text-align:center; }
.portfolio-heading { display:grid; grid-template-columns:1.1fr .9fr; align-items:end; gap:4rem; margin-bottom:2.5rem; }
.portfolio-heading > p { color:var(--muted); }
.work-filters { display:flex; flex-wrap:wrap; gap:.55rem; margin-bottom:2rem; }
.work-filters button { padding:.72rem 1rem; border:1px solid var(--line); color:var(--green-deep); background:#fff; cursor:pointer; font:inherit; font-size:.73rem; font-weight:650; transition:color .25s ease,border-color .25s ease,background-color .25s ease; }
.work-filters button:hover,.work-filters button.is-active { border-color:var(--green-deep); color:#fff; background:var(--green-deep); }
.portfolio-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.portfolio-card { border:1px solid var(--line); background:#fff; transition:transform .35s ease,box-shadow .35s ease; }
.portfolio-card[hidden] { display:none; }
.portfolio-card:hover { box-shadow:0 1.2rem 2.8rem rgba(0,55,33,.12); transform:translateY(-.35rem); }
.portfolio-card figure { height:clamp(210px,19vw,300px); margin:0; overflow:hidden; background:var(--surface); }
.portfolio-card img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .55s ease; }
.portfolio-card:hover img { transform:scale(1.045); }
.portfolio-card > div { padding:1.25rem 1.35rem 1.4rem; }
.portfolio-card span,.featured-copy > span { color:var(--green); font-size:.68rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.portfolio-card h3 { margin:.45rem 0 .25rem; color:var(--green-deep); font-size:1.15rem; }
.portfolio-card p { margin:0; color:var(--muted); font-size:.78rem; }
.featured-projects { background:var(--surface); }
.featured-heading { max-width:850px; margin-bottom:3rem; }
.featured-project { display:grid; grid-template-columns:1.05fr .95fr; align-items:stretch; margin-bottom:1rem; background:#fff; }
.featured-project-reverse .featured-images { order:2; }
.featured-images { min-height:440px; display:grid; grid-template-columns:1fr 1fr; gap:.5rem; padding:.5rem; }
.featured-images img { width:100%; height:100%; min-height:0; display:block; object-fit:cover; }
.featured-copy { display:flex; flex-direction:column; justify-content:center; padding:clamp(2rem,5vw,5rem); }
.featured-copy h3 { margin:.65rem 0 1rem; color:var(--green-deep); font-size:clamp(2rem,3vw,3.3rem); line-height:1; }
.featured-copy p { color:var(--muted); }
.featured-copy ul { display:grid; gap:.55rem; padding:0; margin:1.4rem 0 0; list-style:none; }
.featured-copy li { padding-top:.55rem; border-top:1px solid var(--line); color:var(--green-deep); font-size:.82rem; font-weight:600; }
.works-cta { padding:clamp(4rem,7vw,7rem) 0; background:var(--yellow); }
.works-cta-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(3rem,8vw,9rem); }
.works-cta h2 { color:var(--black); }
.works-cta p { color:#3e403a; }
.button-dark { margin-top:1rem; background:var(--black); }
.button-dark:hover { background:var(--green-deep); }
.regional-section { background:#fff; }
.regional-grid { display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:clamp(3rem,8vw,9rem); }
.regional-grid p { color:var(--muted); }
.regional-locations { padding-top:1.2rem; border-top:1px solid var(--line); color:var(--green-deep) !important; font-size:.8rem; font-weight:650; line-height:1.8; }
.final-works-cta { color:#fff; text-align:center; background:var(--green-deep); }
.final-works-content { max-width:950px; margin-inline:auto; }
.final-works-cta .eyebrow { color:var(--yellow); }
.final-works-cta h2 { margin-right:auto; margin-left:auto; color:#fff; }
.final-works-cta p { max-width:680px; margin-right:auto; margin-left:auto; color:#d4e0d8; }
.final-works-cta .button { margin-top:1.3rem; }
@media (max-width:900px) { .portfolio-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .featured-project { grid-template-columns:1fr; } .featured-project-reverse .featured-images { order:0; } }
@media (max-width:760px) { .works-hero,.works-hero-layout { min-height:650px; } .works-hero-media { background-position:68% center; } .works-hero h1 { font-size:3.55rem; } .works-strip-grid,.portfolio-heading,.portfolio-grid,.works-cta-grid,.regional-grid { grid-template-columns:1fr; } .works-strip span { border-right:0; border-bottom:1px solid rgba(17,17,14,.18); } .portfolio-heading { gap:1.25rem; } .work-filters { display:grid; grid-template-columns:1fr 1fr; } .portfolio-card figure { height:280px; } .featured-images { min-height:360px; } }
@media (max-width:430px) { .work-filters { grid-template-columns:1fr; } .featured-images { min-height:560px; grid-template-columns:1fr; } }
