*{box-sizing:border-box}body{margin:0;background:#f4f0e8;color:#111;font-family:Arial,sans-serif;line-height:1.55}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.site-header{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:14px 5vw;background:#f4f0e8ee;border-bottom:1px solid #ddd}.brand{display:flex;gap:12px;align-items:center;font-weight:800;text-transform:uppercase}.brand img{width:50px}nav{display:flex;gap:20px;font-size:14px}.nav-cta,.btn.primary{background:#111;color:white;padding:11px 17px;border-radius:999px}.menu{display:none}.hero{min-height:85vh;position:relative;background:#000;display:grid;align-items:end}.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#000b,#0002)}.hero-content{position:relative;color:white;max-width:900px;padding:0 5vw 8vw}.eyebrow{color:#b08d57;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:bold}.hero h1,.page-hero h1{font-size:clamp(42px,7vw,86px);line-height:.95;margin:12px 0}.hero p,.page-hero p{font-size:19px;max-width:760px}.actions{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-block;border:1px solid currentColor;padding:12px 18px;border-radius:999px;font-weight:700}.intro,.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:80px 5vw}.intro h2,.section-head h2{font-size:clamp(30px,4vw,54px);line-height:1}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ddd;margin:0 5vw 80px}.cards a{background:white;padding:30px}.section-head{display:flex;justify-content:space-between;align-items:end;padding:0 5vw 24px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:0 5vw 80px}.photo{position:relative;aspect-ratio:4/3;overflow:hidden;background:#ddd}.photo img{width:100%;height:100%;object-fit:cover}.photo span{position:absolute;left:10px;bottom:10px;background:#000b;color:#fff;padding:7px 10px;border-radius:999px;font-size:12px}.page-hero{background:#111;color:white;padding:85px 5vw 55px}.filters{position:sticky;top:78px;background:#f4f0e8ee;z-index:8;padding:15px 5vw;display:flex;gap:10px;overflow:auto;border-bottom:1px solid #ddd}.filters button{border:1px solid #ddd;background:white;border-radius:999px;padding:10px 16px;font-weight:700}.filters button.active{background:#111;color:white}.contact-card,form{padding:30px;background:white;border:1px solid #ddd}.contact-card{background:#111;color:white}form{display:grid;gap:13px}label{display:grid;gap:6px;font-weight:700}input,select,textarea{padding:12px;border:1px solid #ccc;border-radius:8px;font:inherit}.form-note{font-size:13px;color:#666}footer{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:35px;background:#090909;color:white;padding:55px 5vw}.foot-logo{width:90px;margin-bottom:14px}@media(max-width:900px){nav{display:none}.menu{display:block}.intro,.contact-layout,footer{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr}.site-header.open nav{display:grid;position:absolute;top:78px;left:0;right:0;background:#f4f0e8;padding:20px 5vw}}@media(max-width:560px){.cards,.gallery-grid{grid-template-columns:1fr}.hero{min-height:75vh}}