@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--ink:#111316;--muted:#73777b;--paper:#f5f4f0;--white:#fff;--accent:#c89c63;--line:#ddd9d0;--max:1180px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:"DM Sans",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}a{text-decoration:none;color:inherit}.container{width:min(calc(100% - 48px),var(--max));margin:auto}
.header{position:fixed;top:0;width:100%;z-index:20;transition:.3s}.header.scrolled{background:rgba(17,19,22,.93);color:white;backdrop-filter:blur(12px)}.nav{height:78px;display:flex;align-items:center;justify-content:space-between}.logo{font:800 23px Manrope;letter-spacing:-.07em}.logo span{font-weight:500;color:var(--accent)}nav{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:600}nav a{transition:.2s}nav a:hover{color:var(--accent)}.quote{padding:11px 18px;border:1px solid currentColor}.menu{display:none;background:none;border:0}.menu i{display:block;width:25px;height:2px;background:currentColor;margin:5px}
.hero{min-height:100vh;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-photo{position:absolute;inset:0;background:linear-gradient(120deg,#111 0%,#283035 45%,#81858a 100%)}.hero-photo:after{content:"";position:absolute;width:55vw;height:120%;right:-10%;top:-10%;background:linear-gradient(130deg,transparent 20%,rgba(255,255,255,.22) 21%,rgba(255,255,255,.03) 55%,transparent 56%),repeating-linear-gradient(80deg,transparent 0 70px,rgba(255,255,255,.06) 72px 74px)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,10,11,.84),rgba(8,10,11,.3) 65%,rgba(8,10,11,.2))}.hero-content{position:relative;padding-top:70px;max-width:1180px}.eyebrow,.label{font-size:10px;letter-spacing:.2em;font-weight:800;color:var(--accent)}.hero h1{font:700 clamp(55px,8vw,100px)/.93 Manrope;letter-spacing:-.07em;margin:20px 0 28px}.hero h1 em,h2 em{font-style:normal;color:var(--accent)}.hero-content>p:not(.eyebrow){max-width:500px;color:#d4d5d6}.actions{display:flex;gap:25px;align-items:center;margin-top:35px}.btn{display:inline-flex;background:var(--accent);padding:14px 21px;color:#161616;font-size:12px;font-weight:800;gap:20px;border:0;cursor:pointer}.btn:hover{filter:brightness(1.1)}.link{font-size:12px}.hero-bottom{position:absolute;bottom:25px;left:0;right:0;display:flex;justify-content:space-between;padding:0 24px;font-size:9px;letter-spacing:.16em;color:#ccc}
.section{padding:125px 0}.intro-grid{display:grid;grid-template-columns:.28fr 1fr;gap:60px}.intro h2,.heading h2,.projects h2,.contact h2{font:700 clamp(42px,5.5vw,72px)/1.02 Manrope;letter-spacing:-.065em;max-width:900px}.muted{color:var(--muted);max-width:690px;margin:28px 0}.stats{display:flex;gap:70px;margin-top:50px}.stats strong{display:block;font:700 34px Manrope}.stats span{font-size:11px;color:var(--muted)}
.services{background:#17191b;color:white}.heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:60px}.heading h2{margin-top:15px}.heading>.muted{max-width:300px;color:#999;margin:0}.cards{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #373a3d;border-left:1px solid #373a3d}.cards article{min-height:350px;padding:28px;border-right:1px solid #373a3d;border-bottom:1px solid #373a3d;position:relative;transition:.3s}.cards article:hover{background:#202326}.cards article>span{font-size:10px;color:#777}.icon{font-size:48px;color:var(--accent);margin:55px 0 25px}.cards h3{font:600 23px Manrope}.cards p{color:#969a9d;font-size:13px;margin-top:10px}.cards a{position:absolute;bottom:27px;font-size:11px;color:var(--accent)}
.projects h2{margin:15px 0 55px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}.tile{height:300px;position:relative;overflow:hidden;background:linear-gradient(135deg,#a7aaa8,#333b3d)}.tile:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 60% 45%,rgba(255,255,255,.55),transparent 20%),linear-gradient(125deg,rgba(0,0,0,.1),rgba(0,0,0,.55))}.tile.tall{height:614px;grid-row:span 2;background:linear-gradient(145deg,#a8a8a3,#272c2d)}.tile.wide{background:linear-gradient(125deg,#bdbbb3,#555b5a)}.tile:nth-child(3){background:linear-gradient(145deg,#d1cec4,#6b716e)}.tile:nth-child(4){background:linear-gradient(145deg,#727976,#222729)}.tile>div{position:absolute;left:25px;bottom:25px;color:#fff}.tile small{color:var(--accent);font-weight:800}.tile h3{font:600 25px Manrope;margin-top:5px}
.banner{background:var(--accent);padding:100px 0}.banner p{font-size:10px;letter-spacing:.2em;font-weight:800}.banner h2{font:700 clamp(55px,7vw,95px)/.92 Manrope;letter-spacing:-.07em;margin:20px 0 35px}.banner h2 em{color:#fff}.dark{background:#151719;color:#fff}
.contact{background:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact h2{margin-top:18px}.contact form{display:grid;gap:18px}.contact label{font-size:11px;font-weight:700}.contact input,.contact textarea{display:block;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:13px 0;font:inherit;outline:0}.contact input:focus,.contact textarea:focus{border-color:var(--accent)}#status{font-size:12px;color:#6a6f72}
footer{background:#111316;color:#aaa;padding:30px 0}.foot{display:flex;justify-content:space-between;align-items:center;gap:25px}.foot .logo{color:white}.foot p,.foot div{font-size:10px}.foot div{display:flex;gap:20px}.foot div a:hover{color:var(--accent)}
@media(max-width:850px){.container{width:min(calc(100% - 34px),var(--max))}.menu{display:block;color:inherit;z-index:22}nav{position:fixed;inset:0;background:#111316;color:#fff;display:flex;flex-direction:column;justify-content:center;transform:translateX(100%);transition:.3s;font-size:21px}nav.open{transform:none}.hero h1{font-size:clamp(53px,16vw,80px)}.section{padding:90px 0}.intro-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.stats{gap:25px;flex-wrap:wrap}.heading{display:block}.heading>.muted{margin-top:25px}.cards{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr}.tile.tall{height:380px;grid-row:auto}.tile{height:280px}.foot{flex-direction:column;align-items:flex-start}}
@media(max-width:520px){.cards{grid-template-columns:1fr}.actions{align-items:flex-start;flex-direction:column}.hero-bottom{font-size:8px}.stats strong{font-size:27px}}
