:root{--ink:#20231f;--paper:#f3efe6;--rust:#e45424;--yellow:#f4c430;--line:#cbc6ba;--white:#fff;--muted:#696c65}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1rem,4vw,4rem);background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:20}.brand{display:flex;align-items:center;gap:.75rem;font-family:'Archivo Black',sans-serif;font-size:.84rem;line-height:.9;letter-spacing:-.02em}.brand-mark{width:43px;height:43px;display:grid;place-items:center;background:var(--rust);color:white;font-family:'Archivo Black',sans-serif;letter-spacing:-.08em}.site-header nav{display:flex;align-items:center;gap:2.2rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.nav-cta{background:var(--ink);color:white;padding:1rem 1.25rem;display:flex;gap:2rem}.nav-toggle{display:none;border:0;background:none;font-size:.72rem;font-weight:700}.hero{min-height:calc(100svh - 86px);position:relative;color:white;display:flex;align-items:center;overflow:hidden;background:#222}.hero-photo{position:absolute;inset:0;background:url('/static/img/projects/isuzu-fvr.jpg') center 58%/cover no-repeat;transform:scale(1.02)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,21,18,.94) 0%,rgba(18,21,18,.74) 42%,rgba(18,21,18,.18) 76%),linear-gradient(0deg,rgba(18,21,18,.65),transparent 45%)}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(90deg,#000,transparent 70%)}.hero-content{position:relative;z-index:2;width:min(900px,90%);margin-left:clamp(1rem,7vw,7rem);padding:5rem 0 10rem}.kicker{font-size:.68rem;font-weight:700;letter-spacing:.2em;margin:0 0 1.4rem;color:var(--yellow)}.kicker.dark{color:var(--rust)}h1,h2{font-family:'Archivo Black',sans-serif;letter-spacing:-.065em;line-height:.84;margin:0}h1{font-size:clamp(4.2rem,11vw,10rem)}h1 span,h2 span{color:var(--rust)}.hero-copy{font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.65;max-width:560px;color:rgba(255,255,255,.82);margin:2rem 0}.hero-actions{display:flex;align-items:center;gap:2rem}.button{border:0;display:inline-flex;justify-content:space-between;align-items:center;gap:3rem;padding:1.05rem 1.25rem;font-size:.76rem;text-transform:uppercase;font-weight:700;letter-spacing:.06em;cursor:pointer}.button-primary{background:var(--rust);color:white}.phone-link{font-weight:700;border-bottom:1px solid rgba(255,255,255,.55);padding:.4rem 0}.hero-stats{position:absolute;z-index:3;bottom:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);width:min(740px,65%);background:var(--yellow);color:var(--ink)}.hero-stats div{padding:1.25rem 1.5rem;border-left:1px solid rgba(32,35,31,.18)}.hero-stats strong,.hero-stats span{display:block}.hero-stats strong{font-family:'Archivo Black',sans-serif;font-size:1.25rem}.hero-stats span{font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;margin-top:.3rem}.marquee{overflow:hidden;white-space:nowrap;background:var(--rust);color:white;padding:1rem 0;font-family:'Archivo Black',sans-serif;font-size:1.1rem;letter-spacing:.02em}.marquee div{width:max-content;animation:ticker 24s linear infinite}.marquee b{color:var(--yellow);margin:0 1.5rem}@keyframes ticker{to{transform:translateX(-50%)}}.section{padding:clamp(5rem,9vw,9rem) clamp(1rem,7vw,7rem)}.services{display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw}.section-intro h2,.work-heading h2,.quote h2{font-size:clamp(3rem,6.5vw,6.5rem)}.section-intro>p:last-child{max-width:430px;line-height:1.7;color:var(--muted);margin-top:2rem}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:60px .85fr 1.2fr 42px;gap:1rem;align-items:center;border-bottom:1px solid var(--line);padding:1.6rem 0}.service-row>span{font-family:'Archivo Black',sans-serif;color:var(--rust)}.service-row h3{font-family:'Archivo Black',sans-serif;font-size:1.25rem;margin:0;letter-spacing:-.03em}.service-row p{font-size:.86rem;line-height:1.55;color:var(--muted);margin:0}.service-row a{width:42px;height:42px;border:1px solid var(--ink);display:grid;place-items:center;transition:.2s}.service-row:hover a{background:var(--rust);border-color:var(--rust);color:white}.work{background:var(--ink);color:white;padding:clamp(5rem,9vw,9rem) clamp(1rem,7vw,7rem)}.work-heading{display:grid;grid-template-columns:1.1fr .6fr;gap:2rem;align-items:end;margin-bottom:4rem}.work-heading .kicker{grid-column:1/-1}.work-heading p:last-child{color:rgba(255,255,255,.6);line-height:1.6;max-width:340px}.project-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1.4rem}.project-card{background:#2b2e2a;display:grid;grid-template-rows:300px auto}.project-featured{grid-row:span 2;grid-template-rows:560px auto}.project-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.8);transition:.4s}.project-card:hover img{filter:saturate(1);transform:scale(1.015)}.project-card{overflow:hidden}.project-card>div{padding:1.4rem;position:relative;background:#2b2e2a}.project-card span{font-size:.62rem;color:var(--yellow);font-weight:700;letter-spacing:.15em}.project-card h3{font-family:'Archivo Black',sans-serif;font-size:1.55rem;letter-spacing:-.04em;margin:.6rem 0}.project-card p{font-size:.82rem;color:rgba(255,255,255,.62);margin:0}.about{display:grid;grid-template-columns:.65fr 1fr;gap:8vw;align-items:center}.about-mark{font-family:'Archivo Black',sans-serif;font-size:clamp(9rem,25vw,25rem);letter-spacing:-.13em;line-height:.7;color:var(--yellow);overflow:hidden}.about h2{font-size:clamp(3rem,6vw,6rem);text-transform:uppercase}.about-copy{font-size:1.12rem;line-height:1.8;color:var(--muted);max-width:640px;margin:2rem 0}.about-points{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.about-points span{padding:1rem 0;font-size:.72rem;text-transform:uppercase;font-weight:700}.about-points b{color:var(--rust);margin-right:.5rem}.quote{display:grid;grid-template-columns:.85fr 1.15fr;background:var(--rust);color:white;padding:clamp(5rem,8vw,8rem) clamp(1rem,7vw,7rem);gap:8vw}.quote h2 span{color:var(--yellow)}.quote-copy>p:not(.kicker){color:rgba(255,255,255,.78);max-width:480px;line-height:1.65}.contact-block{margin-top:3rem;display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}.contact-block small{font-size:.62rem;letter-spacing:.12em;margin-top:.6rem}.contact-block a{font-family:'Archivo Black',sans-serif;font-size:1.5rem}.quote form{background:var(--paper);color:var(--ink);padding:clamp(1.3rem,3vw,3rem)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}label{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-bottom:1.25rem}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #8f918b;background:transparent;border-radius:0;padding:.8rem 0;outline:0;margin-top:.35rem;color:var(--ink);text-transform:none;letter-spacing:0;font-weight:400}input:focus,select:focus,textarea:focus{border-color:var(--rust);box-shadow:0 2px var(--rust)}textarea{resize:vertical}.button-dark{width:100%;background:var(--ink);color:white}.form-status{font-size:.8rem;text-align:center;margin:1rem 0 0;min-height:1.2rem}.form-status.success{color:#1c6a44}.form-status.error{color:#a32e1d}footer{display:grid;grid-template-columns:1.1fr 1fr 1fr;background:#111310;color:white;padding:4rem clamp(1rem,7vw,7rem);gap:3rem}footer small{display:block;color:var(--yellow);font-size:.6rem;letter-spacing:.14em;margin-bottom:.7rem}footer>div:not(.brand){display:flex;flex-direction:column;align-items:flex-start;gap:.45rem;font-size:.84rem;color:rgba(255,255,255,.72)}.footer-bottom{grid-column:1/-1!important;border-top:1px solid rgba(255,255,255,.15);padding-top:1.5rem;margin-top:1rem;display:block!important}
@media(max-width:900px){.site-header nav{display:none;position:absolute;top:86px;left:0;right:0;background:var(--paper);padding:2rem;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.nav-toggle{display:block}.hero-stats{width:100%}.services,.about,.quote{grid-template-columns:1fr}.project-grid{grid-template-columns:1fr}.project-featured{grid-row:auto;grid-template-rows:420px auto}.work-heading{grid-template-columns:1fr}.work-heading .kicker{grid-column:auto}.about-mark{display:none}.section-intro{margin-bottom:3rem}}
@media(max-width:600px){.site-header{height:72px}.site-header nav{top:72px}.hero{min-height:760px;align-items:flex-start}.hero-content{padding:7rem 0 13rem;margin-left:1rem}.hero-overlay{background:linear-gradient(90deg,rgba(18,21,18,.91),rgba(18,21,18,.45)),linear-gradient(0deg,rgba(18,21,18,.8),transparent)}h1{font-size:4rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:1.2rem}.hero-stats div{padding:1rem .6rem}.hero-stats strong{font-size:.9rem}.hero-stats span{font-size:.52rem}.services{padding-top:5rem}.service-row{grid-template-columns:42px 1fr 38px}.service-row p{grid-column:2/-1;grid-row:2}.service-row a{grid-column:3;grid-row:1}.project-featured,.project-card{grid-template-rows:300px auto}.about-points{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr}.quote{gap:3rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee div{animation:none}.project-card img{transition:none}}

/* Vila Earthworks JCB-yellow identity */
:root{--ink:#090a09;--paper:#f4f1e8;--rust:#ffb800;--yellow:#ffc400}
.brand img{width:58px;height:58px;object-fit:contain}
.button-primary{background:var(--yellow);color:var(--ink)}
.marquee{background:var(--yellow);color:var(--ink)}
.marquee b{color:var(--ink)}
.quote{background:var(--ink)}
.service-row:hover a{color:var(--ink)}
@media(max-width:600px){.site-header .brand img{width:50px;height:50px}.site-header .brand span{font-size:.72rem}}
