*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,Segoe UI,Roboto,sans-serif;color:#1b2230;background:#fff;line-height:1.6}
a{color:inherit}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600}
.wrap{max-width:1180px;margin:0 auto;padding:0 24px}
header{position:fixed;top:0;left:0;right:0;z-index:10;background:rgba(12,20,34,.9);backdrop-filter:blur(8px);border-bottom:1px solid rgba(226,194,125,.25)}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:72px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff}.brand img{width:40px;height:40px}
.brand b{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;letter-spacing:2px;font-weight:600}.brand small{display:block;font-size:10px;letter-spacing:3px;color:#e2c27d;text-transform:uppercase}
nav a{color:#d8dde6;text-decoration:none;margin-left:28px;font-size:14px;letter-spacing:1px;text-transform:uppercase}nav a:hover{color:#e2c27d}
.hero{position:relative;min-height:92vh;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(9,16,28,.88),rgba(9,16,28,.35)),url(/img/hero.jpg) center/cover}
.hero.sm{min-height:60vh;padding-top:72px}.eyebrow{color:#e2c27d;letter-spacing:4px;text-transform:uppercase;font-size:13px}.dk{color:#a7813c}
.hero h1{font-size:clamp(44px,6vw,78px);line-height:1.05;margin:14px 0 20px;max-width:760px}.hero p{font-size:19px;max-width:600px;color:#dfe4ec}
.btn{display:inline-block;padding:14px 28px;background:#c9a45c;color:#0c1422;text-decoration:none;font-weight:600;letter-spacing:1px;text-transform:uppercase;font-size:13px;margin:18px 12px 0 0}
.btn.o{background:transparent;border:1px solid #e2c27d;color:#fff}
section{padding:96px 0}.alt{background:#f5f3ee}h2{font-size:44px;margin:8px 0 14px}.lead{max-width:700px;color:#4b5565;font-size:18px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);background:#0c1422;color:#fff}.stats div{padding:36px;text-align:center;border-right:1px solid rgba(255,255,255,.08)}
.stats b{display:block;font-family:'Cormorant Garamond',serif;font-size:44px;color:#e2c27d}.stats span{font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#aab3c2}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:28px;margin-top:44px}
.card{background:#fff;border:1px solid #e6e2d8;text-decoration:none;display:flex;flex-direction:column;transition:.25s}.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(12,20,34,.14)}
.card img{width:100%;height:190px;object-fit:cover}.card div{padding:22px}.card .tag{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#a7813c}
.card h3{font-size:26px;margin:6px 0 8px}.card p{margin:0 0 14px;color:#4b5565;font-size:15px}.card .go{font-size:13px;font-weight:600;color:#0c1422;letter-spacing:1px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.split img{width:100%;height:480px;object-fit:cover}
.vals{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:40px}.val{position:relative;height:320px;color:#fff;display:flex;align-items:flex-end;padding:28px;background-size:cover;background-position:center}
.val:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,16,28,.9),rgba(9,16,28,.1))}.val *{position:relative}.val h3{font-size:30px;margin:0 0 6px;color:#e2c27d}.val p{margin:0}
.contact{color:#fff;background:linear-gradient(rgba(9,16,28,.86),rgba(9,16,28,.86)),url(/img/boston.jpg) center/cover}.contact h2{color:#fff}.contact .lead{color:#cfd5df}
.cbox{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px}.cbox div{border:1px solid rgba(226,194,125,.35);padding:28px}.cbox span{color:#e2c27d;font-size:12px;letter-spacing:2px;text-transform:uppercase}.cbox a,.cbox p{display:block;font-size:24px;margin:8px 0 0;text-decoration:none;font-family:'Cormorant Garamond',serif}
footer{background:#080e19;color:#8f99a9;padding:56px 0 30px;font-size:14px}footer .wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}footer h4{color:#e2c27d;letter-spacing:2px;text-transform:uppercase;font-size:12px}footer a{display:block;color:#b8c0cc;text-decoration:none;margin:6px 0}
.copy{grid-column:1/-1;border-top:1px solid #1c2636;padding-top:22px;margin-top:10px}
@media(max-width:820px){nav a{margin-left:12px;font-size:11px}.brand b{font-size:15px}.brand small{display:none}.split,.vals,.cbox,footer .wrap{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.split img{height:300px}}
