@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');
:root{--ink:#282321;--cream:#f7f1eb;--sand:#e8ddd2;--rose:#b88d82;--white:#fff;--line:#d9ccc2}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}.nav{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 6vw;position:absolute;z-index:10;width:100%;color:#fff}.brand{display:flex;gap:12px;align-items:center;font-weight:600;letter-spacing:.18em}.mark{width:38px;height:38px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-family:'Playfair Display';font-style:italic;font-size:22px}.nav nav{display:flex;gap:28px;align-items:center;font-size:14px}.menu{display:none;background:none;border:0;color:#fff;font-size:25px}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:#fff;padding:16px 24px;border-radius:999px;font-weight:600;border:1px solid var(--ink);transition:.2s}.btn:hover{transform:translateY(-2px)}.btn.small{padding:11px 18px;background:#fff;color:var(--ink);border-color:#fff}.btn.outline{background:transparent;color:var(--ink)}.hero{min-height:760px;display:grid;grid-template-columns:1.08fr .92fr;background:#332c29;color:#fff}.hero-copy{padding:170px 7vw 80px;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:600;margin:0 0 24px}.hero h1,.intro h2,.section-head h2,.team h2,.visit h2{font:500 clamp(48px,6.5vw,94px)/.98 'Playfair Display',serif;margin:0}.hero h1 em{color:#d6b1a5;font-weight:500}.lead{font-size:18px;line-height:1.7;max-width:590px;color:#e5dcd7;margin:30px 0}.actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.hero .btn{background:#d8b0a4;color:#282321;border-color:#d8b0a4}.textlink{border-bottom:1px solid #877a74;padding:8px 0}.hero-note{margin-top:65px;display:flex;gap:25px;font-size:13px;color:#cfc2bc}.hero-photo{overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}.intro{padding:120px 8vw;text-align:center;max-width:1000px;margin:auto}.intro h2{font-size:72px}.intro>p:last-child{max-width:660px;margin:28px auto 0;line-height:1.8;color:#625a56}.services{padding:100px 7vw;background:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:55px}.section-head h2{font-size:64px}.section-head>p{max-width:430px;line-height:1.7;color:#716863}.grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.grid article{padding:42px;min-height:330px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.grid article span{font-size:12px;color:#a28d83}.grid h3{font:500 32px 'Playfair Display';margin:22px 0 14px}.grid p{line-height:1.7;color:#716863}.grid article>a{margin-top:auto;font-weight:600}.grid .featured{background:#332c29;color:#fff;grid-row:span 2;min-height:660px}.grid .featured p{color:#d5cac5}.grid ul{list-style:none;padding:0;margin:20px 0}.grid li{border-top:1px solid #5a504c;padding:15px 0;display:flex;justify-content:space-between}.grid li b{font-size:12px;font-weight:400;color:#c6b8b1}.team{display:grid;grid-template-columns:1fr 1fr;min-height:720px}.team-img{background:#dfd0c5;display:grid;place-items:end center;overflow:hidden}.team-img img{max-width:95%;max-height:680px}.team-copy{padding:100px 8vw;display:flex;flex-direction:column;justify-content:center}.team-copy h2{font-size:65px}.team-copy>p:not(.eyebrow){line-height:1.8;color:#655c58;max-width:560px}.team-copy .btn{align-self:flex-start;margin-top:20px}.statement{background:#b98f83;padding:100px 8vw;text-align:center}.statement p{font:500 clamp(40px,6vw,82px)/1.1 'Playfair Display';max-width:1100px;margin:auto}.statement em{color:#fff}.reviews{padding:110px 7vw}.review-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}blockquote{margin:0;padding:50px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font:500 25px/1.5 'Playfair Display';min-height:260px}blockquote footer{font:600 12px 'DM Sans';letter-spacing:.12em;margin-top:28px;text-transform:uppercase}.visit{background:#2f2927;color:#fff;padding:100px 7vw;display:grid;grid-template-columns:1.2fr .8fr;gap:70px}.visit h2{font-size:65px}.visit-card{border:1px solid #655a55;padding:42px}.visit-card p{margin:0 0 30px}.visit-card small{display:block;letter-spacing:.16em;color:#bbaea8;margin-bottom:10px}.visit-card a{font-size:18px;line-height:1.5}.visit .btn{background:#d8b0a4;color:#282321;border-color:#d8b0a4}.visit .btn.outline{background:transparent;color:#fff;border-color:#786b65}.footer{padding:55px 7vw;background:#211d1b;color:#ddd1cb;display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center}.footer>div:nth-of-type(2){text-align:right}.footer small{grid-column:1/-1;border-top:1px solid #443c39;padding-top:25px;color:#948984}.mobile-book{display:none}
@media(max-width:800px){.nav{height:72px;padding:0 20px}.nav nav{display:none;position:absolute;top:72px;left:0;right:0;background:#2f2927;padding:25px;flex-direction:column;align-items:stretch}.nav nav.open{display:flex}.menu{display:block}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:135px 24px 65px}.hero h1{font-size:55px}.hero-photo{height:480px}.hero-note{flex-direction:column;gap:7px;margin-top:45px}.intro{padding:80px 24px}.intro h2{font-size:52px}.services{padding:75px 20px}.section-head{display:block}.section-head h2{font-size:50px;margin-bottom:20px}.grid{grid-template-columns:1fr}.grid .featured{grid-row:auto;min-height:580px}.team{grid-template-columns:1fr}.team-img{min-height:450px}.team-copy{padding:75px 24px}.team-copy h2,.visit h2{font-size:50px}.review-grid{grid-template-columns:1fr}blockquote{padding:35px;font-size:22px}.visit{grid-template-columns:1fr;padding:75px 24px}.footer{grid-template-columns:1fr;text-align:center;padding-bottom:95px}.footer>div:nth-of-type(2){text-align:center}.footer small{grid-column:auto}.mobile-book{display:block;position:fixed;bottom:14px;left:14px;right:14px;background:#b98f83;color:#fff;text-align:center;padding:16px;border-radius:999px;z-index:30;font-weight:600;box-shadow:0 8px 30px #0005}}
