:root { --navy:#0d1b2a; --ink:#18293a; --bronze:#a4743b; --cream:#f7f3ec; --linen:#eee6d9; --muted:#5f6872; }
* { box-sizing:border-box; }
html { color-scheme:light; }
body { margin:0; color:var(--ink); background:var(--cream); font:16px/1.7 Montserrat,Arial,sans-serif; }
a { color:#765022; }
.status { min-height:38px; padding:9px 5vw; display:flex; justify-content:center; gap:18px; flex-wrap:wrap; color:#fff; background:var(--navy); font-size:12px; letter-spacing:.04em; }
.site-header { min-height:82px; padding:14px 5vw; display:flex; align-items:center; gap:28px; background:#fff; border-bottom:1px solid #ddd3c4; }
.logo img { width:190px; height:auto; display:block; }
.site-header nav { display:flex; align-items:center; gap:20px; margin-left:auto; }
.site-header nav a { color:var(--navy); text-decoration:none; font-size:13px; font-weight:600; }
.button { display:inline-flex; align-items:center; justify-content:center; padding:12px 18px; color:#fff; background:var(--bronze); text-decoration:none; font-size:13px; font-weight:600; border-radius:2px; }
main { overflow:hidden; }
.hero { min-height:540px; display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.8fr); background:var(--linen); }
.hero > div { padding:90px max(6vw,40px); align-self:center; }
.hero img { width:100%; height:100%; min-height:540px; object-fit:cover; }
.eyebrow { margin:0 0 14px; color:var(--bronze); font-size:11px; font-weight:600; letter-spacing:.18em; text-transform:uppercase; }
h1,h2,h3 { color:var(--navy); font-family:"Cormorant Garamond",Georgia,serif; line-height:1.08; }
h1 { margin:0; max-width:800px; font-size:clamp(44px,6vw,76px); font-weight:500; }
h2 { margin:0 0 18px; font-size:clamp(30px,4vw,48px); }
h3 { margin:0 0 8px; font-size:28px; }
.lede { max-width:760px; margin:28px 0 0; color:#3f4e5b; font-size:17px; }
.content { width:min(1120px,90vw); margin:0 auto; padding:80px 0; }
.content > section { padding:52px 0; border-bottom:1px solid #d8cfc2; }
.content > section:first-child { padding-top:0; }
.cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.cards article { padding:28px; background:#fff; border:1px solid #ded6ca; }
.feature-list { columns:2; gap:48px; padding-left:22px; }
.feature-list li { break-inside:avoid; margin:0 0 12px; }
.gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.gallery img { width:100%; aspect-ratio:4/3; object-fit:cover; }
.cta { padding:64px max(5vw,30px); display:flex; justify-content:center; align-items:center; gap:60px; color:#fff; background:var(--navy); }
.cta h2 { color:#fff; }
.cta p { max-width:720px; }
footer { padding:40px 5vw; color:#ddd; background:#09131f; font-size:13px; }
footer a { color:#f0d2a9; }
address { font-style:normal; font-weight:600; }
@media (max-width:960px) { .site-header nav { display:none; } .site-header .button { margin-left:auto; } .hero { grid-template-columns:1fr; } .hero img { min-height:320px; max-height:480px; } .cards { grid-template-columns:1fr; } }
@media (max-width:640px) { .status span { display:none; } .site-header { min-height:68px; padding:10px 18px; } .logo img { width:160px; } .site-header > .button { padding:10px 12px; } .hero > div { padding:62px 24px; } .content { width:min(100% - 40px,1120px); padding:52px 0; } .content > section { padding:38px 0; } .feature-list { columns:1; } .gallery { grid-template-columns:1fr 1fr; } .cta { align-items:flex-start; flex-direction:column; gap:20px; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; } }
