@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fbfaf7;color:#17202b;font-family:"DM Sans",sans-serif;line-height:1.6}.wrap{width:min(1120px,92%);margin:auto}.narrow{max-width:820px;text-align:center}
header{position:sticky;top:0;z-index:10;background:#111c2a;color:#fff}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between}.logo{color:#fff;text-decoration:none;line-height:1}.logo strong{display:block;letter-spacing:4px}.logo small{display:block;color:#c7a56a;font-size:9px;letter-spacing:2px;margin-top:7px}nav{display:flex;align-items:center;gap:22px}nav a{color:#fff;text-decoration:none;font-size:13px}.cta,.button{display:inline-block;background:#c7a56a;color:#111c2a!important;text-decoration:none;font-weight:700;padding:12px 18px}.menu{display:none}
#menu{display:none;background:none;border:0;color:#fff;font-size:26px}.hero{position:relative;min-height:680px;background:url("images/project-1.jpeg") center/cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,28,42,.88),rgba(17,28,42,.28))}.hero-inner{position:relative;color:#fff;padding-top:155px}.eyebrow{color:#c7a56a;letter-spacing:2.5px;font-size:11px;font-weight:700}.hero h1,h2,h3{font-family:"Playfair Display",serif;font-weight:500;line-height:1.1}.hero h1{font-size:clamp(48px,7vw,78px);margin:12px 0}.hero h1 em{color:#e5c88f}.lead{font-size:18px;max-width:600px;margin:0 0 30px}
section{padding:90px 0}.intro h2,h2{font-size:48px;margin:10px 0 20px}.cream{background:#f5f1e9}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.cards article{background:#fff;padding:28px;border-top:2px solid #c7a56a}.cards span{color:#c7a56a;font-weight:700}.cards h3{font-size:25px}.about,.contact{background:#111c2a;color:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.about-photo img{display:block;width:100%;height:500px;object-fit:cover}.about p,.contact p{color:#d8dee4}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery figure{margin:0;background:#fff}.gallery img{width:100%;height:300px;display:block;object-fit:cover}.gallery figcaption{padding:13px 16px;font-weight:700}.reviews{text-align:center}.contact-card{background:#172536;padding:32px;display:grid;gap:20px}.contact-card a,.contact-card div{color:#fff;text-decoration:none;font-size:18px}.contact-card small{display:block;color:#c7a56a;font-size:10px;letter-spacing:2px;font-weight:700;margin-bottom:3px}.contact-card .button{text-align:center}footer{background:#0c141f;color:#fff;padding:25px 0;font-size:12px}footer span{float:right}
@media(max-width:900px){nav{gap:12px}.cards{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.split{gap:35px}}
@media(max-width:720px){#menu{display:block}nav{display:none;position:absolute;top:78px;left:0;right:0;background:#111c2a;padding:20px;flex-direction:column;align-items:stretch}nav.open{display:flex}.cta{text-align:center}.hero{min-height:610px}.hero-inner{padding-top:120px}.hero h1{font-size:47px}.intro,section{padding:65px 0}.intro h2,h2{font-size:41px}.cards,.gallery,.split{grid-template-columns:1fr}.about-photo img{height:360px}.gallery img{height:270px}footer span{float:none;display:block;margin-top:5px}}
