:root{--ink:#1c1a17;--paper:#faf7f2;--bone:#efebe3;--mist:#d4cfc4;--ash:#74695d;--char:#3a3631;--line:#1c1a171a;--shadow:0 24px 70px #1c1a1714;--radius-card:24px;--radius-shell:28px;--section-pad-y:112px;--section-pad-x:48px;--nav-offset:96px;--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--ease-soft:cubic-bezier(.25,.1,.25,1);--serif:"Fraunces", Georgia, serif;--sans:"Inter Tight", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}section[id]{scroll-margin-top:var(--nav-offset)}body{font-family:var(--sans);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:9999;opacity:.035;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:fixed;inset:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit;cursor:pointer;background:0 0;border:none}nav{z-index:100;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transition:border-color .22s var(--ease-soft), padding .22s var(--ease-out);background:#faf7f2c7;border-bottom:1px solid #0000;justify-content:space-between;align-items:center;gap:16px;padding:22px 48px;display:flex;position:fixed;top:0;left:0;right:0}nav.scrolled{border-bottom-color:var(--line);padding:16px 48px}.logo{align-items:center;gap:13px;display:flex}.logo-mark{flex:none;width:42px;height:42px}.logo-type{text-transform:uppercase;flex-direction:column;gap:4px;line-height:1;display:flex}.logo-name{font-family:var(--sans);letter-spacing:.28em;white-space:nowrap;font-size:18px;font-weight:500}.logo-subtitle{font-family:var(--sans);letter-spacing:.32em;color:var(--ash);font-size:11px;font-weight:300}.nav-links{letter-spacing:.08em;text-transform:uppercase;gap:36px;font-size:13px;font-weight:500;display:flex}.nav-links a{transition:opacity .16s var(--ease-out);padding:4px 0;position:relative}.nav-links a:after{content:"";background:var(--ink);transform-origin:0;width:100%;height:1px;transition:transform .22s var(--ease-out);position:absolute;bottom:0;left:0;transform:scaleX(0)}.book-btn{background:var(--ink);color:var(--paper);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;transition:background-color .16s var(--ease-out), transform .16s var(--ease-out);border-radius:999px;flex:none;padding:10px 22px;font-size:12px;font-weight:500}.book-btn:active{transform:scale(.97)}.hero{background:radial-gradient(1200px 600px at 80% -10%,#d8b89438 0%,#0000 60%);grid-template-columns:1.2fr 1fr;align-items:end;gap:60px;min-height:100vh;padding:140px 48px 80px;display:grid;position:relative}.hero-meta{letter-spacing:.15em;text-transform:uppercase;color:var(--ash);text-align:right;font-size:11px;line-height:1.8;position:absolute;top:140px;right:48px}.hero-meta span{display:block}.hero h1{font-family:var(--serif);letter-spacing:-.04em;color:var(--ink);animation:hero-rise .76s var(--ease-out) 80ms both;font-size:clamp(56px,11vw,168px);font-weight:300;line-height:.92}.hero h1 em{color:var(--ash);font-style:italic;font-weight:400}.hero-sub{max-width:380px;animation:hero-rise .68s var(--ease-out) .18s both;padding-bottom:60px}.eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--ash);border-bottom:1px solid var(--mist);margin-bottom:24px;padding-bottom:10px;font-size:11px;display:inline-block}.hero-sub p{color:var(--char);margin-bottom:32px;font-size:16px;line-height:1.6}.hero-cta{letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--ink);transition:gap .18s var(--ease-out), opacity .16s var(--ease-out);align-items:center;gap:12px;padding-bottom:6px;font-size:13px;font-weight:500;display:inline-flex}.hero-cta:active{opacity:.62}.hero-cta svg{width:16px;height:16px}.hero-band{background:var(--mist);border-top:1px solid var(--mist);border-bottom:1px solid var(--mist);animation:hero-rise .7s var(--ease-out) .28s both;grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:60px;display:grid}.stat{background:var(--paper);padding:32px 24px}.stat-num{font-family:var(--serif);letter-spacing:-.02em;font-size:48px;font-weight:300;line-height:1}.stat-num sup{vertical-align:super;color:var(--ash);margin-left:4px;font-size:.4em;font-weight:400}.stat-label{letter-spacing:.15em;text-transform:uppercase;color:var(--ash);margin-top:12px;font-size:11px}section{padding:var(--section-pad-y) var(--section-pad-x);position:relative}.section-head{grid-template-columns:1fr 2fr;align-items:end;gap:60px;max-width:1180px;margin:0 auto 72px;display:grid}.section-num{font-family:var(--serif);color:var(--ash);font-size:14px;font-style:italic}.section-head h2{font-family:var(--serif);letter-spacing:-.03em;font-size:clamp(40px,5.5vw,84px);font-weight:300;line-height:1}.section-head h2 em{color:var(--ash);font-style:italic}.about{background:var(--bone)}.about-grid{grid-template-columns:1fr 1.4fr;align-items:start;gap:64px;max-width:1180px;margin:0 auto;display:grid}.about-img{aspect-ratio:3/4;border-radius:var(--radius-shell);outline-offset:-1px;box-shadow:var(--shadow);background:#2c2620;outline:1px solid #1c1a1714;position:relative;overflow:hidden}.about-img>img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.about-img:before{content:"";background:linear-gradient(#0000 58%,#1c1a1747);position:absolute;inset:0}.about-img:after{content:"EST. 1965";color:#ffffffb3;letter-spacing:.25em;font-size:11px;font-family:var(--sans);position:absolute;bottom:24px;left:24px}.about-text p{color:var(--char);margin-bottom:24px;font-size:18px;line-height:1.7}.about-text p:first-of-type{font-family:var(--serif);color:var(--ink);margin-bottom:32px;font-size:24px;font-weight:300;line-height:1.4}.about-text p:first-of-type:first-letter{font-family:var(--serif);float:left;padding:6px 12px 0 0;font-size:64px;font-weight:400;line-height:.85}.activities-grid{grid-template-columns:repeat(12,1fr);gap:16px;max-width:1180px;margin:0 auto;display:grid}.activity{background:var(--paper);color:var(--ink);border-radius:var(--radius-card);outline-offset:-1px;transition:transform .2s var(--ease-out), outline-color .2s var(--ease-out), box-shadow .2s var(--ease-out);cursor:pointer;outline:1px solid #1c1a1714;padding:48px 32px;text-decoration:none;display:block;position:relative}.activity:first-child{grid-column:span 5}.activity:nth-child(2){grid-column:span 4}.activity:nth-child(3),.activity:nth-child(4){grid-column:span 3}.activity:nth-child(5){grid-column:span 5}.activity:nth-child(6){grid-column:span 4}.activity:active{transform:scale(.985)}.activity-icon{width:48px;height:48px;transition:border-color .18s var(--ease-out), transform .18s var(--ease-out);border:1px solid #1c1a173d;border-radius:50%;place-items:center;margin-bottom:32px;display:grid}.activity-icon svg{stroke:currentColor;fill:none;stroke-width:1.2px;width:20px;height:20px}.activity-num{font-family:var(--serif);color:var(--ash);transition:color .18s var(--ease-out);font-size:13px;font-style:italic;position:absolute;top:24px;right:32px}.activity h3{font-family:var(--serif);letter-spacing:-.02em;margin-bottom:12px;font-size:28px;font-weight:300;line-height:1.1}.activity p{color:var(--ash);max-width:280px;transition:color .18s var(--ease-out);font-size:14px;line-height:1.5}.gallery{background:var(--bone)}.gallery-grid{grid-template-columns:repeat(12,1fr);grid-auto-rows:132px;gap:16px;max-width:1180px;margin:0 auto;display:grid}.gtile{background:var(--mist);border-radius:var(--radius-card);outline-offset:-1px;outline:1px solid #1c1a1714;position:relative;overflow:hidden;box-shadow:0 16px 50px #1c1a170f}.gtile>img{object-fit:cover;object-position:center;width:100%;height:100%;display:block;position:absolute;inset:0}.gtile:after{content:"";opacity:.68;transition:opacity .22s var(--ease-out);background:linear-gradient(#0000 38%,#1c1a17a3 100%);position:absolute;inset:0}.gcap{z-index:2;color:var(--paper);letter-spacing:.2em;text-transform:uppercase;opacity:.88;transition:opacity .22s var(--ease-out);text-shadow:0 1px 16px #00000047;font-size:11px;position:absolute;bottom:22px;left:24px;right:24px}@media (hover:hover) and (pointer:fine){.nav-links a:hover:after{transform:scaleX(1)}.book-btn:hover{background:var(--char);transform:translateY(-1px)}.hero-cta:hover{gap:18px}.activity:hover{outline-color:#1c1a1729;transform:translateY(-3px);box-shadow:0 18px 55px #1c1a1712}.activity:hover .activity-icon{border-color:#1c1a1780;transform:scale(1.035)}.activity:hover .activity-num,.activity:hover p{color:var(--char)}.gtile:hover:after,.gtile:hover .gcap{opacity:1}}.gcap em{font-family:var(--serif);text-transform:none;letter-spacing:0;color:#ffffffd9;margin-top:4px;font-size:14px;font-style:italic;display:block}.gtile.t1{grid-area:span 4/span 6}.gtile.t2,.gtile.t3,.gtile.t4{grid-area:span 2/span 3}.gtile.t5{grid-area:span 3/span 3}.gtile.t6{grid-area:span 2/span 6}.gtile.t7{grid-area:span 2/span 3}.map-tile{appearance:none;width:100%;color:inherit;font:inherit;cursor:pointer;text-align:left;transition:transform .16s var(--ease-out);border:0;padding:0;display:block}.map-tile:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.map-tile:focus-visible:after,.map-tile:focus-visible .gcap{opacity:1}.map-tile:active{transform:scale(.992)}.map-lightbox{z-index:200;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:1;transition:opacity .24s var(--ease-out);background:#1c1a17c7;place-items:center;padding:32px;display:grid;position:fixed;inset:0}@starting-style{.map-lightbox{opacity:0}}.map-lightbox-backdrop{background:0 0;border:0;padding:0;position:absolute;inset:0}.map-lightbox-panel{z-index:1;background:var(--paper);border-radius:var(--radius-card);opacity:1;width:min(860px,94vw);max-height:90vh;transition:transform .26s var(--ease-out), opacity .22s var(--ease-out);padding:14px;position:relative;transform:translateY(0)scale(1);box-shadow:0 30px 90px #00000052}@starting-style{.map-lightbox-panel{opacity:0;transform:translateY(10px)scale(.975)}}.map-lightbox-panel img{object-fit:contain;border-radius:14px;width:100%;max-height:calc(90vh - 28px)}.map-lightbox-close{background:var(--ink);width:40px;height:40px;color:var(--paper);transition:background-color .16s var(--ease-out), transform .16s var(--ease-out);border-radius:50%;place-items:center;font-size:26px;line-height:1;display:grid;position:absolute;top:-14px;right:-14px;box-shadow:0 12px 30px #0000003d}.map-lightbox-close:active{transform:scale(.94)}.rates{background:var(--ink);color:var(--paper);--on-dark-muted:#a8a39a;--on-dark-dim:#6a655e;--on-dark-rule:#3a352f;--on-dark-rule-soft:#2a2620}.rates .section-head h2{color:var(--paper)}.rates .section-head h2 em,.rates .section-num{color:var(--on-dark-dim)}.rates-wrap{grid-template-columns:1fr 1fr;gap:60px;max-width:1180px;margin:0 auto;display:grid}.rate-block{border-top:1px solid var(--on-dark-rule);padding-top:32px}.rate-title{justify-content:space-between;align-items:baseline;margin-bottom:32px;display:flex}.rate-title h3{font-family:var(--serif);letter-spacing:-.02em;font-size:32px;font-weight:300}.rate-title span{letter-spacing:.2em;text-transform:uppercase;color:var(--on-dark-muted);font-size:11px}.rate-row{border-bottom:1px solid var(--on-dark-rule-soft);grid-template-columns:1fr auto;align-items:baseline;gap:24px;padding:18px 0;display:grid}.rate-row .name{color:var(--on-dark-muted);transition:transform .18s var(--ease-out), color .18s var(--ease-out);font-size:15px}.rate-row .price{font-family:var(--serif);letter-spacing:-.01em;font-size:22px;font-weight:400}.rate-row .price sup{color:var(--on-dark-muted);vertical-align:top;margin-right:2px;font-size:.55em}.rates-note{max-width:1180px;color:var(--on-dark-muted);margin-top:28px;margin-left:auto;margin-right:auto;font-size:13px;line-height:1.5}.booking{background:var(--bone)}.booking-shell{background:var(--paper);border-radius:var(--radius-shell);outline-offset:-1px;max-width:1100px;box-shadow:var(--shadow);outline:1px solid #1c1a171a;grid-template-columns:1fr 1.3fr;gap:0;margin:0 auto;display:grid;overflow:hidden}.booking-info{background:var(--ink);color:var(--paper);--on-dark-muted:#a8a39a;--on-dark-dim:#6a655e;--on-dark-rule:#3a352f;--on-dark-rule-soft:#2a2620;padding:56px 48px;position:relative}.booking-info .section-num{color:var(--on-dark-dim);margin-bottom:24px}.booking-info h2{font-family:var(--serif);letter-spacing:-.03em;margin-bottom:32px;font-size:52px;font-weight:300;line-height:1}.booking-info h2 em{color:var(--on-dark-dim);font-style:italic}.booking-info p{color:var(--on-dark-muted);margin-bottom:40px;font-size:15px;line-height:1.6}.feature-list{border-top:1px solid var(--on-dark-rule);padding-top:24px;list-style:none}.feature-list li{border-bottom:1px solid var(--on-dark-rule-soft);letter-spacing:.05em;color:var(--on-dark-muted);align-items:center;gap:14px;padding:14px 0;font-size:13px;display:flex}.feature-list li:before{content:"";background:var(--paper);border-radius:50%;width:6px;height:6px}.booking-form{padding:56px 48px;position:relative}.form-body{min-width:0;transition:opacity .2s var(--ease-out);border:0;margin:0;padding:0}.form-body:disabled{opacity:.55}.form-banner{background:var(--bone);outline-offset:-1px;color:var(--ink);letter-spacing:.01em;animation:banner-in .42s var(--ease-out) both;border-radius:16px;outline:1px solid #1c1a1714;align-items:center;gap:10px;margin-bottom:32px;padding:15px 20px;font-size:14px;display:flex}.form-banner svg{width:18px;height:18px;color:var(--char);flex:none}@keyframes banner-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.form-overlay{background:color-mix(in srgb, var(--paper) 78%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:2;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.spinner{border:2px solid var(--mist);border-top-color:var(--ink);border-radius:50%;width:32px;height:32px;animation:.72s linear infinite spin}.spinner-sm{border-color:color-mix(in srgb, var(--paper) 30%, transparent);border-top-color:var(--paper);width:15px;height:15px}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:1.4s}.form-banner{animation:none}}.form-row{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;display:grid}.field{flex-direction:column;display:flex}.field.full{grid-column:1/-1}.field label{letter-spacing:.2em;text-transform:uppercase;color:var(--ash);margin-bottom:8px;font-size:10px}.field input,.field select{font:inherit;border:none;border-bottom:1px solid var(--mist);color:var(--ink);transition:border-color .16s var(--ease-out);background:0 0;border-radius:0;outline:none;width:100%;padding:12px 0;font-size:15px}.field input:focus,.field select:focus{border-bottom-color:var(--ink)}.field select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path d='M1 1l4 4 4-4' stroke='%230a0a0a' fill='none' stroke-width='1.2'/></svg>");background-position:100%;background-repeat:no-repeat}.submit-pay{background:var(--ink);width:100%;color:var(--paper);letter-spacing:.14em;text-transform:uppercase;transition:background-color .16s var(--ease-out), transform .16s var(--ease-out);border-radius:999px;justify-content:center;align-items:center;gap:12px;margin-top:32px;padding:20px;font-size:13px;font-weight:500;display:flex}.submit-pay:active{transform:scale(.985)}.submit-pay.confirmed{background:var(--char)}.submit-pay:disabled{opacity:.7;cursor:not-allowed}.submit-pay svg{width:14px;height:14px}.hp-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-error{color:#a3261b;letter-spacing:.01em;margin:8px 0 0;font-size:13px}footer{background:var(--paper);border-top:1px solid var(--line);padding:80px 48px 32px}.foot-top{border-bottom:1px solid var(--mist);grid-template-columns:1.6fr 1.2fr 1fr;gap:60px;max-width:1180px;margin:0 auto;padding-bottom:60px;display:grid}.foot-brand h3{font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;margin-bottom:20px;font-size:22px;font-weight:500;line-height:1}.foot-brand p{color:var(--ash);max-width:320px;font-size:14px;line-height:1.6}.foot-col h4{letter-spacing:.2em;text-transform:uppercase;color:var(--ash);margin-bottom:20px;font-size:11px;font-weight:500}.foot-col ul{list-style:none}.foot-col li{padding:6px 0;font-size:15px}.foot-col a{transition:opacity .16s var(--ease-out)}.map-card{max-width:280px;color:inherit;transition:opacity .16s var(--ease-out);display:block}.map-card .map-frame{aspect-ratio:4/3;border:1px solid var(--mist);background:var(--bone);border-radius:10px;width:100%;display:block;position:relative;overflow:hidden}.map-card iframe{filter:grayscale(.25);pointer-events:none;border:0;width:100%;height:100%;display:block}.map-card address{flex-direction:column;margin-bottom:14px;font-size:15px;font-style:normal;line-height:1.5;display:flex}.map-card address span+span{color:var(--ash);font-size:14px}@media (hover:hover) and (pointer:fine){.rate-row:hover .name{color:var(--paper);transform:translate(6px)}.submit-pay:hover{background:var(--char);transform:translateY(-1px)}.foot-col a:hover{opacity:.5}}@keyframes hero-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;transition-delay:0s!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}.hero h1,.hero-sub,.hero-band,.map-lightbox-panel{transform:none!important}}.foot-bot{max-width:1180px;color:var(--ash);letter-spacing:.05em;justify-content:space-between;align-items:center;margin:0 auto;padding-top:32px;font-size:12px;display:flex}.foot-mark{font-family:var(--sans);color:var(--bone);text-align:center;letter-spacing:.22em;text-transform:uppercase;-webkit-user-select:none;user-select:none;margin:60px -48px -32px;font-size:9vw;font-weight:500;line-height:.8;overflow:hidden}@media (width<=900px){nav,nav.scrolled{padding:16px 24px}.nav-links,.logo-subtitle{display:none}.logo-mark{width:36px;height:36px}.hero{grid-template-columns:1fr;gap:40px;padding:120px 24px 60px}.hero h1{font-size:clamp(48px,12vw,72px)}.hero-meta{text-align:left;margin-bottom:20px;position:static}.hero-sub{padding-bottom:40px}.hero-band{grid-template-columns:repeat(2,1fr);margin-top:40px}.stat{padding:24px 20px}.stat-num{font-size:36px}section{padding:64px 24px}.section-head{grid-template-columns:1fr;gap:20px;margin-bottom:40px}.about-grid,.rates-wrap{grid-template-columns:1fr;gap:40px}.about-img{aspect-ratio:4/3}.about-text p:first-of-type{margin-bottom:24px;font-size:20px}.about-text p:first-of-type:first-letter{padding:4px 10px 0 0;font-size:44px}.about-text p{margin-bottom:20px;font-size:16px}.activities-grid{grid-template-columns:1fr;gap:12px}.activity:nth-child(n){grid-column:1}.activity{padding:32px 24px}.activity-icon{margin-bottom:20px}.activity-num{top:20px;right:24px}.activity h3{font-size:24px}.gallery-grid{grid-template-columns:repeat(6,1fr);grid-auto-rows:104px;gap:10px}.gtile{border-radius:20px}.gtile.t1{grid-area:span 4/span 6}.gtile.t2,.gtile.t3,.gtile.t4,.gtile.t6,.gtile.t7{grid-area:span 2/span 3}.gtile.t5{grid-area:span 3/span 3}.booking-shell{grid-template-columns:1fr}.booking-info,.booking-form{padding:40px 28px}.booking-info h2{margin-bottom:24px;font-size:40px}.booking-info p{margin-bottom:32px}.form-row{grid-template-columns:1fr;gap:20px;margin-bottom:20px}.foot-top{grid-template-columns:1fr;gap:40px}.foot-bot{text-align:center;flex-direction:column;gap:12px}}
