*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Roboto,Helvetica,Arial,sans-serif;font-weight:300;color:#333;background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{max-width:100%;display:block}
h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.2}
h3{font-family:Arvo,Georgia,serif;font-weight:700}
.sub{font-family:Arvo,Georgia,serif;font-style:italic}

/* nav */
.nav{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #eee}
.nav-in{max-width:1200px;margin:0 auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{font-family:Georgia,serif;font-size:20px;text-decoration:none;color:#222}
.nav ul{list-style:none;display:flex;gap:28px}
.nav ul a{text-decoration:none;font-size:15px;color:#222;padding-bottom:2px}
.nav ul a.active,.nav ul a:hover{border-bottom:1px solid #222}
.burger{display:none;background:none;border:0;font-size:26px;cursor:pointer;color:#222}
@media(max-width:720px){
 .burger{display:block}
 .nav ul{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;gap:0;border-bottom:1px solid #eee}
 .nav ul.open{display:flex}
 .nav ul li a{display:block;padding:14px 24px}
}

/* sections */
.bg{position:relative;background-size:cover;background-position:center;color:#fff}
.bg.overlay::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.35)}
.bg>*{position:relative}
.hero{min-height:620px;display:flex;align-items:center;justify-content:center;text-align:center;padding:80px 24px}
.hero h1{font-size:clamp(34px,5vw,48px);margin-bottom:22px}
.hero p{font-size:18px}
.wrap{max-width:960px;margin:0 auto;padding:80px 24px}
.center{text-align:center}
.section-title{font-size:32px;margin-bottom:14px}

/* what we do */
.row{display:grid;grid-template-columns:260px 1fr;gap:40px;align-items:start;margin-top:56px}
.row img{width:200px;margin:0 auto}
.row h3{font-size:16px;color:#222;margin-bottom:6px}
.row h4{font-family:Roboto,sans-serif;font-weight:700;font-size:16px;color:#222;margin-bottom:6px}
.row p{font-size:14px;color:#777}
@media(max-width:720px){.row{grid-template-columns:1fr;text-align:center}}

/* contact icons */
.icons{display:grid;grid-template-columns:1fr 1fr;gap:24px;text-align:center}
.icons img{width:160px;margin:0 auto 18px;border-radius:50%;background:#000}
.icons p{font-size:14px}
@media(max-width:600px){.icons{grid-template-columns:1fr}}

/* contact */
.contact h2{font-size:32px;margin-bottom:12px}
.contact .sub{font-style:normal;margin-bottom:40px;display:block}
.cgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;text-align:left;max-width:960px;margin:0 auto}
.cgrid input,.cgrid textarea{width:100%;border:0;padding:10px 12px;margin-bottom:10px;font:inherit;font-size:15px;color:#333}
.cgrid textarea{height:130px;resize:vertical}
.btn{display:inline-block;background:#5e6f86;color:#fff;border:0;padding:10px 26px;font:700 15px Roboto,sans-serif;cursor:pointer;text-decoration:none;border-radius:2px}
.btn:hover{background:#4c5b70}
.cgrid form .btn{display:block;margin:0 auto}
.map iframe{width:100%;height:100%;min-height:250px;border:0}
.info{list-style:none;font-size:14px}
.info li{display:flex;gap:12px;margin-bottom:10px}
.info li span:first-child{width:16px;flex:none;text-align:center}
.info a{text-decoration:none}
.form-note{font-size:13px;margin-top:8px;text-align:center;min-height:1em}
@media(max-width:820px){.cgrid{grid-template-columns:1fr}}

/* about */
.about{color:#555}
.about h1{color:#8a6a55;text-align:center;font-size:40px;margin-bottom:40px}
.arow{display:grid;grid-template-columns:1fr 283px;gap:36px;margin-bottom:40px;align-items:start}
.arow h3{color:#222;font-weight:400;font-size:18px}
.arow h4{font-weight:300;font-size:18px;color:#555;margin-bottom:6px}
.arow p{font-size:15px;margin-bottom:10px}
@media(max-width:720px){.arow{grid-template-columns:1fr}}

/* projects */
.proj{min-height:360px;display:flex;align-items:center;padding:60px 24px}
.proj .in{max-width:960px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.proj .txt{text-align:center}
.proj h2{font-size:30px;margin-bottom:14px}
.proj p{font-family:Arvo,Georgia,serif;margin-bottom:22px}
.proj .logo{max-height:280px;margin:0 auto}
@media(max-width:720px){.proj .in{grid-template-columns:1fr}}
.inline-form{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.inline-form input{border:0;padding:10px 12px;font:inherit;width:220px}

/* footer */
footer{text-align:center;font-size:13px;color:#888;padding:28px 24px}
footer a{color:#888}

/* policy */
.policy{max-width:820px;margin:0 auto;padding:60px 24px}
.policy h1{font-size:36px;margin-bottom:30px}
.policy h2{font-size:22px;margin:30px 0 10px}
.policy p,.policy li{margin-bottom:10px;font-size:15px}
.policy ul{padding-left:20px}
.policy a{word-break:break-all}
