:root{--navy:#090909;--navy-2:#171717;--orange:#c8272f;--orange-2:#a91d24;--ink:#111;--muted:#626262;--line:#dedede;--soft:#f4f4f4;--white:#fff;--radius:18px;--shadow:0 24px 70px rgba(0,0,0,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;color:var(--ink);background:#fff;font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-60px;z-index:1000;padding:10px 16px;background:#fff;color:#111;border-radius:8px}.skip-link:focus{top:12px}.site-header{position:fixed;inset:0 0 auto;z-index:100;background:rgba(9,25,43,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.1)}.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:12px;color:#fff;line-height:1}.brand>span:last-child{display:grid;gap:5px}.brand strong{font-size:1.05rem;letter-spacing:.12em}.brand small{font-size:.58rem;letter-spacing:.25em;opacity:.72}.brand-mark{width:40px;height:36px;display:flex;align-items:flex-end;gap:3px;transform:skewX(-14deg)}.brand-mark i{display:block;width:9px;background:var(--orange);border-radius:1px}.brand-mark i:nth-child(1){height:18px}.brand-mark i:nth-child(2){height:27px}.brand-mark i:nth-child(3){height:36px}.main-nav{display:flex;align-items:center;gap:34px;color:#fff;font-size:.91rem;font-weight:600}.main-nav>a:not(.nav-cta){opacity:.8;transition:.2s}.main-nav>a:not(.nav-cta):hover{opacity:1;color:#ff784a}.nav-cta{padding:12px 18px;background:var(--orange);border-radius:8px}.menu-toggle{display:none;background:none;border:0;padding:9px}.menu-toggle span{display:block;width:25px;height:2px;background:#fff;margin:5px}.hero{min-height:850px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,20,36,.95) 0%,rgba(6,20,36,.72) 50%,rgba(6,20,36,.18) 100%),linear-gradient(0deg,rgba(5,18,31,.6),transparent 45%)}.hero-content{position:relative;z-index:1;padding-top:70px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.74rem;font-weight:800;color:var(--orange);margin:0 0 16px}.eyebrow.light{color:#ff8b64}.hero h1{font-size:clamp(3.25rem,7vw,6.4rem);line-height:.96;letter-spacing:-.055em;margin:0;max-width:900px}.hero h1 span{color:var(--orange)}.hero-copy{max-width:610px;font-size:1.25rem;line-height:1.6;color:rgba(255,255,255,.82);margin:26px 0 32px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 23px;border-radius:9px;font-weight:800;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--orange);color:#fff}.button.primary:hover{background:var(--orange-2)}.button.ghost{border:1px solid rgba(255,255,255,.45);color:#fff;background:rgba(255,255,255,.06)}.hero-stats{position:absolute;z-index:2;bottom:0;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:repeat(3,1fr);background:#fff;color:var(--ink);border-radius:16px 16px 0 0;overflow:hidden;box-shadow:var(--shadow)}.hero-stats div{padding:25px 32px;border-right:1px solid var(--line);display:flex;align-items:baseline;gap:13px}.hero-stats div:last-child{border:0}.hero-stats strong{font-size:2rem;line-height:1;color:var(--orange)}.hero-stats span{font-size:.78rem;font-weight:700;color:var(--muted)}.section{padding:112px 0}.section-heading{margin-bottom:46px}.section-heading.split{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);align-items:end;gap:70px}.section-heading h2,.about h2,.cta-section h2{font-size:clamp(2.2rem,4vw,4rem);line-height:1.08;letter-spacing:-.045em;margin:0}.section-heading>p{color:var(--muted);margin:0 0 7px}.services{background:var(--soft)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{position:relative;min-height:330px;padding:30px 25px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;overflow:hidden;transition:.25s}.service-card:hover{transform:translateY(-6px);box-shadow:0 18px 45px rgba(8,27,46,.11);border-color:transparent}.service-card.featured{color:#fff;background:var(--navy);border-color:var(--navy)}.service-number{position:absolute;right:22px;top:20px;font-size:.72rem;font-weight:800;color:#95a0aa}.service-icon{width:58px;height:58px;display:grid;place-items:center;margin:42px 0 30px;background:#fff2ed;color:var(--orange);font-size:1.85rem;border-radius:13px}.featured .service-icon{background:var(--orange);color:#fff}.service-card h3{font-size:1.25rem;line-height:1.3;margin:0 0 14px}.service-card p{font-size:.91rem;color:var(--muted);margin:0}.featured p{color:rgba(255,255,255,.7)}.about{overflow:hidden}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:100px;align-items:center}.about-images{position:relative;min-height:620px}.about-images img{position:absolute;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow)}.about-images img:first-child{width:78%;height:470px;right:0;top:0}.about-images img:nth-child(2){width:60%;height:300px;left:0;bottom:0;border:10px solid #fff}.experience-badge{position:absolute;right:0;bottom:24px;width:155px;height:155px;border-radius:50%;background:var(--orange);color:#fff;display:grid;place-content:center;text-align:center;box-shadow:0 18px 45px rgba(255,90,34,.35)}.experience-badge strong{font-size:2.6rem;line-height:1}.experience-badge span{max-width:100px;font-size:.72rem;line-height:1.3;margin-top:6px}.about-copy .lead{font-size:1.12rem;color:#2d3742}.about-copy>p:not(.eyebrow){color:var(--muted)}.value-list{list-style:none;padding:12px 0 0;margin:0}.value-list li{display:grid;grid-template-columns:46px 1fr;gap:18px;padding:18px 0;border-top:1px solid var(--line)}.value-list li>span{font-size:.72rem;color:var(--orange);font-weight:800}.value-list strong{display:block;margin-bottom:3px}.value-list p{margin:0;color:var(--muted);font-size:.9rem}.portfolio{background:var(--navy);color:#fff}.portfolio .section-heading>p{color:rgba(255,255,255,.65)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:280px;gap:16px}.project{position:relative;margin:0;overflow:hidden;border-radius:var(--radius);background:#152b41}.project.large{grid-row:span 2}.project.wide{grid-column:span 2}.project img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(4,15,26,.85))}.project:hover img{transform:scale(1.045)}.project figcaption{position:absolute;z-index:1;inset:auto 24px 22px;color:#fff;display:grid}.project figcaption span{font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;color:#ff9b78}.project figcaption strong{font-size:1.2rem}.cta-section{padding:82px 0;background:var(--orange);color:#fff}.cta-grid{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center}.cta-section h2{max-width:750px}.cta-section p:not(.eyebrow){margin:16px 0 0;color:rgba(255,255,255,.78)}.button.white{background:#fff;color:var(--navy);min-width:230px}.footer{padding:72px 0 30px;background:#071522;color:#fff}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr .8fr .7fr;gap:55px}.footer-brand{margin-bottom:20px}.footer-grid p,.footer-grid address{font-style:normal;color:#93a0ac;font-size:.88rem;max-width:290px}.footer h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.15em;color:#ff8962;margin:7px 0 20px}.footer-grid>div>a:not(.brand){display:block;color:#c7ced4;font-size:.88rem;margin:8px 0}.footer-grid>div>a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:28px;margin-top:45px;border-top:1px solid rgba(255,255,255,.12);font-size:.75rem;color:#73808c}.whatsapp-float{position:fixed;z-index:50;right:22px;bottom:22px;display:flex;align-items:center;gap:10px;background:#19a85b;color:#fff;padding:11px 17px 11px 11px;border-radius:999px;box-shadow:0 12px 35px rgba(0,0,0,.25);font-weight:800}.whatsapp-float span{display:grid;place-items:center;width:31px;height:31px;background:#fff;color:#19a85b;border-radius:50%}.whatsapp-float em{font-style:normal;font-size:.8rem}
@media(max-width:900px){.container{width:min(100% - 32px,720px)}.menu-toggle{display:block}.main-nav{position:absolute;top:81px;left:16px;right:16px;display:none;align-items:stretch;flex-direction:column;gap:0;padding:12px;background:#fff;color:var(--ink);border-radius:13px;box-shadow:var(--shadow)}.main-nav.open{display:flex}.main-nav a{padding:13px 14px}.nav-cta{text-align:center;color:#fff}.hero{min-height:820px;align-items:flex-start}.hero-content{padding-top:180px}.hero-stats div{padding:20px 15px;display:grid;gap:7px}.hero-stats strong{font-size:1.55rem}.section{padding:80px 0}.section-heading.split{grid-template-columns:1fr;gap:20px}.service-grid{grid-template-columns:repeat(2,1fr)}.about-grid{grid-template-columns:1fr;gap:60px}.about-images{max-width:620px;width:100%;margin:auto}.project-grid{grid-template-columns:repeat(2,1fr)}.project.large{grid-row:span 1}.project.wide{grid-column:span 1}.cta-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:580px){.container{width:calc(100% - 28px)}.nav-wrap{height:72px}.brand strong{font-size:.88rem}.brand-mark{width:34px;height:31px}.brand-mark i:nth-child(1){height:15px}.brand-mark i:nth-child(2){height:23px}.brand-mark i:nth-child(3){height:31px}.main-nav{top:72px}.hero{min-height:820px}.hero-content{padding-top:145px}.hero h1{font-size:3.25rem}.hero-copy{font-size:1rem}.hero-actions{display:grid}.button{width:100%}.hero-overlay{background:linear-gradient(90deg,rgba(6,20,36,.95),rgba(6,20,36,.65)),linear-gradient(0deg,rgba(5,18,31,.75),transparent)}.hero-stats{width:calc(100% - 28px);border-radius:14px 14px 0 0}.hero-stats div{padding:17px 10px}.hero-stats span{font-size:.64rem}.section-heading h2,.about h2,.cta-section h2{font-size:2.35rem}.service-grid{grid-template-columns:1fr}.service-card{min-height:280px}.about-images{min-height:470px}.about-images img:first-child{height:350px;width:87%}.about-images img:nth-child(2){height:220px;width:65%;border-width:7px}.experience-badge{width:118px;height:118px;bottom:13px}.experience-badge strong{font-size:2rem}.project-grid{grid-template-columns:1fr;grid-auto-rows:270px}.cta-grid{gap:30px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-bottom{display:grid}.whatsapp-float{right:14px;bottom:14px}.whatsapp-float em{display:none}.whatsapp-float{padding:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Identidade oficial Concremil: preto, branco e vermelho */
.site-header{background:rgba(7,7,7,.94)}
.brand{gap:0;background:#fff;padding:4px 10px;border-radius:8px;box-shadow:0 8px 25px rgba(0,0,0,.18)}
.brand img{width:250px;height:58px;object-fit:contain}
.main-nav{gap:28px}
.main-nav>a:not(.nav-cta):hover{color:#ef6268}
.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.73) 50%,rgba(0,0,0,.2) 100%),linear-gradient(0deg,rgba(0,0,0,.68),transparent 45%)}
.eyebrow.light{color:#f29a9e}
.service-icon{background:#f8e8e9}
.experience-badge{box-shadow:0 18px 45px rgba(200,39,47,.35)}
.project{background:#171717}
.project:after{background:linear-gradient(transparent,rgba(0,0,0,.88))}
.project figcaption span{color:#f29a9e}
.footer{background:#070707}
.footer h3{color:#e05b62}
.footer-brand{display:inline-flex;padding:10px 14px;border-radius:10px}
.footer-brand img{width:320px;height:auto;object-fit:contain}
.footer-grid address a{color:#c7ced4}
.footer-grid address a:hover{color:#fff}
@media(max-width:900px){.main-nav{gap:0}}
@media(max-width:580px){.brand{padding:3px 7px}.brand img{width:190px;height:48px}.footer-brand{padding:8px 10px}.footer-brand img{width:270px;height:auto}.hero-overlay{background:linear-gradient(90deg,rgba(0,0,0,.95),rgba(0,0,0,.68)),linear-gradient(0deg,rgba(0,0,0,.78),transparent)}}
