:root{--ink:#191714;--cream:#f3eee4;--paper:#fffdf8;--coffee:#7a3f26;--moss:#52614e;--line:#d8d0c3;--muted:#706960}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;line-height:1.6}a{color:inherit}.site-header{min-height:78px;display:flex;align-items:center;gap:28px;padding:0 clamp(22px,5vw,76px);border-bottom:1px solid var(--line);background:rgba(255,253,248,.94);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.brand{text-decoration:none;font-family:"Playfair Display",serif;font-size:1.45rem;margin-right:auto}.brand strong{font-style:italic;color:var(--coffee)}nav{display:flex;gap:26px}nav a{text-decoration:none;font-size:.93rem;font-weight:600}.nav-cta{padding:10px 16px;border:1px solid var(--ink);text-decoration:none;font-weight:700}.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);min-height:calc(100vh - 78px)}.hero-copy{padding:clamp(56px,9vw,130px) clamp(28px,7vw,105px);display:flex;flex-direction:column;justify-content:center}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.72rem;font-weight:700;color:var(--coffee);margin:0 0 18px}.hero h1,.intro h2,.split h2,.visit h2{font-family:"Playfair Display",serif;line-height:1.03;font-weight:600;margin:0}.hero h1{font-size:clamp(3.2rem,7vw,7.2rem);max-width:920px}.lead{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:620px;color:var(--muted);margin:28px 0}.actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;text-decoration:none;font-weight:700;border:1px solid var(--ink);transition:.18s ease}.button:hover{transform:translateY(-2px)}.primary{background:var(--ink);color:white}.ghost{background:transparent}.quickfacts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:54px;padding-top:25px;border-top:1px solid var(--line)}.quickfacts span{display:flex;flex-direction:column}.quickfacts small{color:var(--muted);margin-top:3px}.hero-image,.split figure{margin:0;position:relative;overflow:hidden}.hero-image img,.split img{width:100%;height:100%;object-fit:cover;display:block}.hero-image figcaption,.split figcaption{position:absolute;left:15px;bottom:15px;background:rgba(25,23,20,.8);color:#fff;padding:7px 10px;font-size:.72rem}.intro{padding:clamp(70px,9vw,130px) clamp(28px,7vw,105px);display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--cream)}.intro h2,.split h2,.visit h2{font-size:clamp(2.5rem,5vw,5rem)}.intro>p{font-size:1.18rem;color:var(--muted);align-self:end;max-width:650px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:0 clamp(28px,7vw,105px);background:var(--cream);padding-bottom:clamp(70px,9vw,130px)}.feature-grid article{padding:34px;border-top:1px solid var(--ink);border-right:1px solid var(--line)}.feature-grid article:last-child{border-right:0}.feature-grid span{font-size:.75rem;font-weight:700;color:var(--coffee)}.feature-grid h3{font-family:"Playfair Display",serif;font-size:1.7rem;margin:55px 0 10px}.feature-grid p{color:var(--muted);margin:0}.split{display:grid;grid-template-columns:1fr 1fr;min-height:720px}.split-copy{padding:clamp(60px,8vw,120px);display:flex;flex-direction:column;justify-content:center}.split-copy p:not(.eyebrow),.split-copy li{color:var(--muted)}.split-copy ul{padding-left:20px;margin-top:28px}.split-copy li{margin:12px 0}.visit{display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;background:var(--moss);color:#fff;padding:clamp(70px,9vw,130px) clamp(28px,7vw,105px)}.visit .eyebrow{color:#ead8bc}.visit-copy p:not(.eyebrow){max-width:650px;color:#e7e3dc;font-size:1.08rem}.contact-card{background:var(--paper);color:var(--ink);padding:32px;display:grid;gap:24px}.contact-card>div{display:flex;flex-direction:column;border-bottom:1px solid var(--line);padding-bottom:18px}.contact-card small{color:var(--muted);margin-bottom:4px}.contact-card a:not(.button){font-weight:700}.full{width:100%}footer{display:flex;justify-content:space-between;gap:20px;padding:28px clamp(22px,5vw,76px);font-size:.83rem;color:var(--muted)}@media(max-width:900px){.site-header nav{display:none}.hero,.intro,.split,.visit{grid-template-columns:1fr}.hero-image{min-height:58vh;order:-1}.quickfacts,.feature-grid{grid-template-columns:1fr}.feature-grid article{border-right:0;padding-left:0;padding-right:0}.intro{gap:25px}.split figure{min-height:55vh}.visit{gap:44px}footer{flex-direction:column}}@media(max-width:520px){.nav-cta{display:none}.hero h1{font-size:3.1rem}.quickfacts{gap:13px}.feature-grid h3{margin-top:25px}}
