:root{--brand-black:#000000}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#000000;color:#fff;font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
a,button{transition:.2s}
a:focus-visible,button:focus-visible{outline:3px solid #ff747c;outline-offset:5px}
header{position:sticky;top:0;z-index:20;background:#000000;border-bottom:1px solid #333}
.bar{max-width:1400px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:23px 5%;gap:25px}
.brand{font-weight:800;font-size:17px;letter-spacing:1px}
.brand small{display:block;color:#aaa;font-weight:400;font-size:10px;letter-spacing:2px;margin-top:5px}
.logo-slot{border-left:3px solid #ef2938;padding-left:12px}
nav{display:flex;align-items:center;gap:24px;font-size:13px}
nav a:hover,nav .active{color:#ff6570}
.btn{display:inline-block;background:#d91c2c;padding:17px 23px;font-size:13px;font-weight:bold;border:1px solid #d91c2c;color:#fff;cursor:pointer}
.btn:hover{background:#b91826;transform:translateY(-2px)}
.outline{background:transparent;border-color:#777}
.menu{display:none;background:none;color:white;border:1px solid #555;padding:9px}
.wrap{max-width:1300px;margin:auto;padding:85px 5%}
.eyebrow{color:#ff6570;font-size:11px;letter-spacing:3px;text-transform:uppercase;font-weight:bold}
h1{font-size:clamp(46px,6vw,86px);line-height:1.02;letter-spacing:-3px;margin:24px 0}
h2{font-size:clamp(32px,4vw,49px);line-height:1.1;letter-spacing:-1px;margin:15px 0 25px}
h3{font-size:23px}
p{color:#bcbcbc;line-height:1.75;font-size:15px;max-width:650px}
.hero{position:relative;min-height:660px;display:flex;align-items:center;background:#000000}
.hero:before{content:'';position:absolute;inset:0;background:#000000}
.hero .wrap{position:relative;width:100%;padding-top:80px;padding-bottom:80px}
.hero h1{max-width:790px}
.red{color:#ff4654}
.hero p{max-width:480px}
.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.caption{font-size:10px;color:#ccc;letter-spacing:1px;margin-top:45px}
.strip{border-block:1px solid #333;display:flex;justify-content:space-between;gap:20px;padding:24px 5%;font-size:11px;letter-spacing:2px;color:#aaa}
.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.photo{width:100%;height:400px;object-fit:cover}
.muted{background:#000000}
.topline{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:30px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}
.card{padding:30px;border:1px solid #393939;background:#000000}
.num{color:#ff6570;font-size:13px;letter-spacing:2px}
.tag{display:inline-block;font-size:10px;letter-spacing:1px;padding:7px 10px;border:1px solid #555;color:#ccc}
.project{background:#000000;border:1px solid #363636}
.project img{width:100%;height:260px;object-fit:cover}
.project:nth-child(2) img{object-position:left;filter:grayscale(1)}
.project:nth-child(3) img{object-position:right}
.project .body{padding:25px}
.project:hover{border-color:#ff4654}
.cta{background:#c81828;padding:65px 5%;display:flex;justify-content:space-between;align-items:center;gap:30px}
.cta h2{max-width:760px;margin:0}
.cta .btn{background:white;color:#000000;border-color:white;white-space:nowrap}
footer{padding:55px 5% 25px;background:#000000}
.foot{max-width:1300px;margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
.foot a{display:block;margin-bottom:15px;font-size:13px;color:#ccc}
.bottom{max-width:1300px;margin:35px auto 0;padding-top:25px;border-top:1px solid #333;color:#888;font-size:11px}
.note{border-left:3px solid #ef2938;padding:15px 20px;background:#000000;color:#bbb;font-size:13px;line-height:1.6}
.pagehead{padding-bottom:50px;border-bottom:1px solid #333}
.pagehead h1{max-width:950px}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}
label{display:block;font-size:13px;color:#ddd}
input,select,textarea{display:block;width:100%;margin-top:10px;background:#000000;border:1px solid #555;padding:14px;color:white;border-radius:0}
textarea{min-height:140px}
.wide{grid-column:1/-1}
.filters{display:flex;gap:12px;margin-bottom:25px}
.filters button{background:transparent;border:1px solid #555;color:#fff;padding:12px 18px;cursor:pointer}
.filters button[aria-pressed=true]{background:#d91c2c;border-color:#d91c2c}
.hidden{display:none!important}
.whatsapp{position:fixed;bottom:20px;right:20px;background:#d91c2c;padding:15px 20px;font-size:12px;z-index:30;border:1px solid #ff6570}
@media(max-width:1000px){nav{gap:14px}
.bar{padding:20px 4%}
.grid{grid-template-columns:1fr 1fr}
.split{gap:35px}
}
@media(max-width:760px){.menu{display:block}
nav{display:none;position:absolute;top:83px;left:0;right:0;padding:25px;background:#000000;flex-direction:column;align-items:stretch}
nav.open{display:flex}
.wrap{padding:60px 6%}
.hero{min-height:610px}
.hero:before{background:#000000}
h1{letter-spacing:-2px}
.split,.grid,.foot,.fields{grid-template-columns:1fr}
.strip{flex-wrap:wrap;font-size:9px}
.topline,.cta{align-items:start;flex-direction:column}
.photo{height:300px}
.wide{grid-column:auto}
.whatsapp{bottom:12px;right:12px}
.cta{padding:45px 6%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{transition:none!important}
}
.skip:focus{left:20px!important;top:15px;z-index:100;background:white;color:#000000;padding:15px}

.logo-slot{border:0;padding-left:0}
.brand-logo{display:block;width:220px;max-width:100%;height:auto;object-fit:contain}
.foot .brand-logo{width:290px}
.hero:before{background:#000000;}
.hero:after{content:"";position:absolute;right:7%;top:14%;width:23%;height:70%;border-right:2px solid #d91c2c;border-bottom:2px solid #d91c2c;transform:skewY(-14deg);pointer-events:none}
.hero .wrap{z-index:1}
.hero p{max-width:550px}
.brand p{letter-spacing:0;font-weight:400}
@media(max-width:760px){.brand-logo{width:180px}
.hero:before{background:#000000}
.hero:after{opacity:.3;width:38%;right:5%}
nav{top:84px}
}


.services-intro{padding-bottom:35px}
.services-intro p{max-width:830px;font-size:18px}
.service-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:64px;align-items:start}
.service-visual{margin:0;position:sticky;top:130px;border:1px solid #393939;overflow:hidden;background:#000000;transition:border-color .25s,transform .25s}
.service-visual img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .5s}
.service-visual:hover{border-color:#ef2938}
.service-visual:hover img{transform:scale(1.025)}
.service-visual figcaption{padding:14px 18px;font-size:11px;color:#bcbcbc;line-height:1.5}
.service-copy h2{font-size:clamp(30px,3.5vw,46px)}
.service-copy .actions{margin-top:28px}
.service-copy p{max-width:none}
.service-section{scroll-margin-top:100px}
.brand-logo{width:220px;height:auto;aspect-ratio:auto}
.bar .brand{flex-shrink:0}
@media(max-width:1000px){.service-layout{gap:30px}
}
@media(max-width:760px){.service-layout{grid-template-columns:1fr;gap:32px}
.service-visual{position:static}
.services-intro p{font-size:16px}
.service-layout.wrap{padding-top:35px}
.service-copy h2{font-size:32px}
.bar .brand-logo{width:165px}
.service-copy .actions .btn{width:100%;text-align:center}
}
@media(prefers-reduced-motion:reduce){.service-visual,.service-visual img{transition:none}
.service-visual:hover img{transform:none}
}

