:root{--paper: #f5efe1;--paper-deep: #ece3cd;--ink: #21352a;--ink-soft: rgba(33, 53, 42, .72);--green: #23392c;--green-deep: #182a1f;--cream: #f2e9d5;--cream-soft: rgba(242, 233, 213, .72);--amber: #b07a2f;--amber-bright: #ce9a48;--line: rgba(33, 53, 42, .18);--line-cream: rgba(242, 233, 213, .22);--nav-h: 64px;--panel-w: clamp(300px, 28vw, 400px);--gutter: clamp(24px, 4.5vw, 72px);--display: "Fraunces", Georgia, serif;--body: "Archivo", "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16.5px;line-height:1.7;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%}a{color:inherit}h1,h2,h3{font-family:var(--display);font-weight:440;line-height:1.04;letter-spacing:-.01em;margin:0}p{margin:0}::selection{background:var(--amber);color:var(--cream)}:focus-visible{outline:2px solid var(--amber);outline-offset:3px}.nav{position:fixed;top:0;left:0;right:0;z-index:40;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 clamp(20px,3vw,40px);background:#f5efe1f0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.nav-brand{font-family:var(--display);font-size:24px;font-weight:520;text-decoration:none;letter-spacing:-.01em;white-space:nowrap}.nav-brand em{font-style:italic;color:var(--amber)}.nav-links{display:flex;align-items:center;gap:clamp(18px,2.4vw,34px)}.nav-links a{font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:var(--ink-soft)}.nav-links a:hover{color:var(--ink)}.nav-call{font-size:12.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--cream);background:var(--green);padding:10px 18px;white-space:nowrap}.nav-call:hover{background:var(--green-deep)}.nav-toggle{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid var(--line);padding:9px 14px;font:600 12px var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);cursor:pointer}.nav-menu-mobile{display:none}@media (max-width: 860px){.nav-links,.nav-call{display:none}.nav-toggle{display:block}.nav-menu-mobile{display:block;position:fixed;top:var(--nav-h);left:0;right:0;z-index:39;background:var(--paper);border-bottom:1px solid var(--line);padding:12px clamp(20px,3vw,40px) 24px}.nav-menu-mobile a{display:block;padding:13px 0;font-size:14px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;color:var(--ink);border-bottom:1px solid var(--line)}.nav-menu-mobile a:last-child{border-bottom:0;color:var(--amber)}}.frame{display:grid;grid-template-columns:var(--panel-w) 1fr;padding-top:var(--nav-h)}.panel{border-right:1px solid var(--line)}.panel-inner{position:sticky;top:var(--nav-h);height:calc(100vh - var(--nav-h));display:flex;flex-direction:column;justify-content:space-between;padding:clamp(28px,4vh,56px) clamp(24px,2.5vw,44px)}.panel-kicker{font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--amber)}.panel-name{font-family:var(--display);font-size:clamp(44px,3.6vw,60px);font-weight:480;line-height:.98;margin-top:14px}.panel-name em{font-style:italic;font-weight:400}.panel-tag{margin-top:18px;font-size:15px;color:var(--ink-soft);max-width:30ch}.panel-block{border-top:1px solid var(--line);padding-top:18px;margin-top:18px}.panel-label{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:6px}.panel-block p,.panel-block a{font-size:15.5px;line-height:1.55}.panel-block a{text-decoration:none;border-bottom:1px solid var(--amber)}.panel-block a:hover{color:var(--amber)}.panel-rating{display:flex;align-items:baseline;gap:12px}.panel-rating .num{font-family:var(--display);font-size:42px;font-weight:480;line-height:1}.panel-rating .stars{color:var(--amber);font-size:15px;letter-spacing:2px}.panel-rating .of{display:block;font-size:13px;color:var(--ink-soft);margin-top:4px}@media (max-width: 1023px){.frame{display:block}.panel{border-right:0;border-bottom:1px solid var(--line)}.panel-inner{position:static;height:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px 32px;padding:28px var(--gutter) 32px}.panel-head{grid-column:1 / -1}.panel-name{font-size:40px}}@media (max-width: 560px){.panel-inner{grid-template-columns:1fr}}.section{scroll-margin-top:calc(var(--nav-h) + 8px)}.kicker{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--amber)}.kicker:before{content:"";width:34px;height:1px;background:var(--amber)}.hero{position:relative}.hero img{width:100%;height:clamp(480px,78vh,840px);object-fit:cover}.hero-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#142019e0,#14201959 45%,#1420191f)}.hero-copy{position:absolute;left:0;right:0;bottom:0;padding:0 var(--gutter) clamp(36px,6vh,72px);color:var(--cream)}.hero-copy .kicker{color:var(--amber-bright)}.hero-copy .kicker:before{background:var(--amber-bright)}.hero-copy h1{font-size:clamp(40px,5.2vw,84px);max-width:15ch;margin-top:18px}.hero-copy p{margin-top:20px;max-width:52ch;font-size:clamp(15.5px,1.2vw,18px);color:var(--cream-soft)}.story{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(24px,3vw,56px);padding:clamp(64px,10vh,128px) var(--gutter);align-items:center}.story-media{grid-column:1 / 8}.story-copy{grid-column:8 / 13}.story.is-flipped .story-media{grid-column:6 / 13;order:2}.story.is-flipped .story-copy{grid-column:1 / 6;order:1}.story-media img{width:100%;height:clamp(340px,56vh,620px);object-fit:cover}.story-copy h2{font-size:clamp(30px,2.9vw,46px);margin:18px 0 22px;max-width:16ch}.story-copy p{color:var(--ink-soft);max-width:44ch}.story-copy p+p{margin-top:16px}@media (max-width: 900px){.story,.story.is-flipped{display:block;padding-top:56px;padding-bottom:56px}.story-copy{margin-top:26px}.story-media img{height:clamp(280px,48vh,460px)}}.pull{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper-deep);padding:clamp(56px,9vh,104px) var(--gutter)}.pull blockquote{margin:0;font-family:var(--display);font-style:italic;font-weight:420;font-size:clamp(30px,3.4vw,54px);line-height:1.15;max-width:22ch}.pull figcaption{margin-top:22px;font-size:13px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}.gallery{padding:clamp(64px,10vh,128px) var(--gutter)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-flow:dense;gap:clamp(14px,1.6vw,24px);margin-top:30px}.gallery-grid img{width:100%;aspect-ratio:3 / 4;object-fit:cover}@media (max-width: 700px){.gallery-grid{grid-template-columns:1fr}.gallery-grid img{aspect-ratio:4 / 3}}.reviews{background:var(--green-deep);color:var(--cream);padding:clamp(72px,11vh,136px) var(--gutter)}.reviews .kicker{color:var(--amber-bright)}.reviews .kicker:before{background:var(--amber-bright)}.reviews-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:24px}.reviews-head h2{font-size:clamp(34px,3.4vw,54px);margin-top:18px}.reviews-score{text-align:right}.reviews-score .num{font-family:var(--display);font-size:clamp(48px,4.5vw,76px);line-height:1}.reviews-score .of{font-size:13.5px;color:var(--cream-soft);margin-top:6px}.reviews-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,3vw,56px);margin-top:clamp(40px,6vh,72px)}.review{border-top:1px solid var(--line-cream);padding-top:26px}.review:nth-child(2n){transform:translateY(clamp(0px,3vh,32px))}.review .stars{color:var(--amber-bright);font-size:14px;letter-spacing:3px}.review blockquote{margin:16px 0 0;font-family:var(--display);font-weight:400;font-size:clamp(19px,1.6vw,24px);line-height:1.4}.review figcaption{margin-top:14px;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--cream-soft)}@media (max-width: 760px){.reviews-grid{grid-template-columns:1fr}.review:nth-child(2n){transform:none}.reviews-score{text-align:left}}.visit{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr}.visit-info{padding:clamp(56px,9vh,112px) var(--gutter)}.visit-info h2{font-size:clamp(32px,3vw,48px);margin:18px 0 26px}.visit-row{border-top:1px solid var(--line);padding:18px 0;display:grid;grid-template-columns:110px 1fr;gap:18px;align-items:baseline}.visit-row .visit-label{font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft)}.visit-row p{font-size:16.5px}.visit-row a{text-decoration:none;border-bottom:1px solid var(--amber)}.visit-row a:hover{color:var(--amber)}.visit-map{min-height:420px;border-left:1px solid var(--line)}.visit-map iframe{display:block;width:100%;height:100%;min-height:420px;border:0;filter:grayscale(.35) sepia(.12)}@media (max-width: 900px){.visit{display:block}.visit-map{border-left:0;border-top:1px solid var(--line)}}.contact{background:var(--paper-deep);border-top:1px solid var(--line);padding:clamp(64px,10vh,120px) var(--gutter)}.contact-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,4vw,72px)}.contact h2{font-size:clamp(32px,3vw,48px);margin:18px 0 20px}.contact-lede{color:var(--ink-soft);max-width:38ch}.field{display:block;margin-bottom:26px}.field span{display:block;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px}.field input,.field textarea{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:8px 0 12px;font:400 17px/1.5 var(--body);color:var(--ink);border-radius:0}.field textarea{resize:vertical;min-height:110px}.field input:focus,.field textarea:focus{outline:none;border-bottom-color:var(--amber)}.contact-form .cf-turnstile{margin-bottom:26px}.contact-submit{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;cursor:pointer;background:var(--green);color:var(--cream);font:600 13px var(--body);letter-spacing:.16em;text-transform:uppercase;padding:16px 34px}.contact-submit:hover{background:var(--green-deep)}.contact-submit:disabled{opacity:.55;cursor:default}.form-note{margin-top:18px;font-size:15px}.form-note.ok{color:#2c5a3c}.form-note.err{color:#8c3a22}@media (max-width: 860px){.contact-grid{display:block}.contact-form{margin-top:36px}}.footer{background:var(--green-deep);color:var(--cream-soft);padding:28px var(--gutter);display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px 32px;font-size:13.5px}.footer .foot-brand{font-family:var(--display);font-style:italic;font-size:19px;color:var(--cream)}.footer a{color:inherit;text-decoration:none;border-bottom:1px solid var(--line-cream)}.footer a:hover{color:var(--cream)}
