:root{--ink:#1f2622;--pine:#2f4a3c;--sand:#f4efe6;--gold:#b08a4f;--serif:'Cormorant Garamond',Georgia,serif}
*{box-sizing:border-box;margin:0}body{font:300 17px/1.7 Inter,system-ui,sans-serif;color:var(--ink);background:#fbf9f5}
h1,h2,h3,.logo{font-family:var(--serif);font-weight:600;line-height:1.15}h2{font-size:clamp(2rem,5vw,3rem);margin:.3em 0 .6em}h3{font-size:1.5rem}
a{color:inherit}.wrap{max-width:1120px;margin:auto;padding:72px 22px}.center{text-align:center}
.eyebrow{text-transform:uppercase;letter-spacing:.25em;font-size:.75rem;color:var(--gold);font-weight:600}
.btn{display:inline-block;background:var(--gold);color:#fff;text-decoration:none;padding:15px 30px;border:0;border-radius:2px;font:600 .85rem Inter;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.btn:hover{background:#957343}.btn.sm{padding:9px 16px}.btn.big{padding:20px 44px;font-size:1rem;margin-top:18px}
.nav{position:fixed;inset:0 0 auto;z-index:9;display:flex;gap:10px;justify-content:space-between;align-items:center;padding:12px 14px;background:linear-gradient(#0008,#0000);color:#fff}.nav .logo{font-size:1.4rem;text-decoration:none;white-space:nowrap}.nav nav{display:flex;align-items:center;margin-left:auto}.mobile-menu{position:relative}.mobile-menu summary{list-style:none;cursor:pointer;border:1px solid #ffffff99;padding:7px 10px;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;min-height:40px;display:flex;align-items:center}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu-links{position:absolute;right:0;top:calc(100% + 10px);width:min(82vw,280px);display:grid;padding:8px;background:#24372e;box-shadow:0 8px 26px #0005}.mobile-menu-links a{padding:10px 12px;text-decoration:none;font-size:.9rem;line-height:1.35;border-bottom:1px solid #ffffff1c}.mobile-menu-links a:last-child{border-bottom:0}.desktop-links{display:none}.nav-cta{white-space:nowrap;flex-shrink:0}
.hero{min-height:100svh;display:flex;align-items:flex-end;color:#fff;background:linear-gradient(#0002,#000a),url(images/photo-01.jpg) center/cover,linear-gradient(160deg,#5b7285,#2f4a3c 60%,#1c2a22)}
.hero-in{padding:0 22px 10vh;max-width:880px}.hero h1{font-size:clamp(2rem,7vw,5rem);margin:.2em 0}.lead{font-size:1.05rem;margin-bottom:20px;opacity:.92}.rating{font-size:.9rem;letter-spacing:.04em;margin:-8px 0 24px;opacity:.92}.hero-photo-caption{font-size:.8rem;letter-spacing:.06em;margin:-14px 0 20px;opacity:.88}
.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 10px;background:var(--pine);color:#fff;text-align:center;padding:24px 12px}.facts b{display:block;font:600 1.15rem/1.2 var(--serif)}.facts span{display:block;font-size:.68rem;line-height:1.4;letter-spacing:.06em;text-transform:uppercase;margin-top:4px}
.grid3{display:grid;gap:22px;text-align:left}.card{background:#fff;padding:30px;border-top:3px solid var(--gold);box-shadow:0 8px 30px #0000000d}
.split{display:grid;gap:40px;align-items:center}.split img,.split iframe{width:100%;aspect-ratio:4/3;object-fit:cover;border:0;background:#d9d3c7}
.ph{color:#9a6b2e;font-size:.9rem;font-style:italic;margin-top:12px}.home-copy h3{margin:1.15em 0 .3em}.home-copy p{margin-bottom:.65em}
.amen{list-style:none;padding:0;display:grid;grid-template-columns:1fr;gap:8px 18px;margin-top:14px}.amen li{line-height:1.45}.amen li:before{content:"◆ ";color:var(--gold);font-size:.7em}.amenity-highlights,.amenity-group,.rule-card{background:#fff;padding:22px;border-top:3px solid var(--gold);box-shadow:0 8px 30px #0000000d}.amenity-highlights{background:var(--sand);margin-bottom:18px}.amenity-highlights h3,.amenity-group h3,.rule-card h3{margin-bottom:10px}.amenity-groups{display:grid;grid-template-columns:1fr;gap:16px}.rules-grid{display:grid;grid-template-columns:1fr;gap:16px}.rule-card ul{padding-left:20px}.rule-card p,.rule-card li{margin-bottom:6px}.location-address{font-weight:600;margin-bottom:12px}
.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.gallery-item{min-width:0;margin:0}.gallery-item:first-child{grid-column:span 2}.gallery-open{display:block;width:100%;padding:0;border:0;background:#d9d3c7;cursor:pointer;overflow:hidden}.gallery-open img{display:block;width:100%;aspect-ratio:1;object-fit:cover;background:#d9d3c7;transition:filter .2s}.gallery-open:hover img,.gallery-open:focus-visible img{filter:brightness(.92)}.gallery-item:first-child .gallery-open img{aspect-ratio:16/9}.gallery-item figcaption,.amenity-photo-pair figcaption,.event-photos figcaption{font-size:.82rem;text-align:center;color:#625b50;margin-top:5px}.gallery-toggle{display:block;margin:26px auto 0}.amenity-photo-pair,.event-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 18px}.amenity-photo-pair figure,.event-photos figure{min-width:0;margin:0}.amenity-photo-pair img,.event-photos img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#d9d3c7}.lightbox{position:fixed;inset:0;margin:auto;padding:58px 54px 22px;width:min(96vw,1100px);height:min(94vh,900px);max-width:none;border:0;background:#17231d;color:#fff;grid-template-columns:48px minmax(0,1fr) 48px;grid-template-rows:minmax(0,1fr) auto;gap:8px;overflow:hidden}.lightbox[open]{display:grid}.lightbox::backdrop{background:#000d}.lightbox-frame{grid-column:2;grid-row:1/3;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:0;width:100%;height:100%;margin:0}.lightbox-frame img{display:block;max-width:100%;max-height:calc(94vh - 112px);object-fit:contain;background:transparent}.lightbox-frame figcaption{margin-top:8px;text-align:center;font-size:.85rem}.lightbox-close,.lightbox-nav{border:0;color:#fff;background:#ffffff1c;cursor:pointer}.lightbox-close{position:absolute;right:14px;top:12px;width:40px;height:40px;font-size:1.8rem;line-height:1}.lightbox-nav{align-self:center;justify-self:center;width:42px;height:60px;font:300 3rem/1 var(--serif)}.lightbox-prev{grid-column:1;grid-row:1}.lightbox-next{grid-column:3;grid-row:1}
img.noimg{background:linear-gradient(135deg,#cfc6b6,#a9b3a5);color:transparent}
.band{background:var(--sand)}.band.dark{background:var(--pine);color:#fff}
blockquote{font:500 1.6rem/1.4 var(--serif);max-width:760px;margin:30px auto}cite{display:block;font:400 .85rem Inter;margin-top:10px;font-style:normal;color:#666}
.dist{padding-left:18px}.form{display:grid;gap:12px;background:#fff;padding:28px;box-shadow:0 8px 30px #0000000f}.form input,.form select,.form textarea{font:inherit;padding:12px;border:1px solid #d6cfc2;background:#fdfcfa}.form small{color:#777}
footer{background:#1c2a22;color:#e9e4da;text-align:center;padding:50px 22px 90px}footer .logo{font-size:1.6rem}
.sticky{position:fixed;bottom:14px;left:50%;transform:translateX(-50%);z-index:9;box-shadow:0 6px 20px #0005}
@media(min-width:560px){.amen{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:800px){.grid3{grid-template-columns:repeat(3,1fr)}.split{grid-template-columns:1fr 1fr}.split.rev>div{order:2}.gallery{grid-template-columns:repeat(4,minmax(0,1fr))}.sticky{display:none}.facts{grid-template-columns:repeat(4,minmax(0,1fr));padding:30px 8%}.amenity-groups,.rules-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.nav{padding:14px 22px}.nav .logo{font-size:1.5rem}.mobile-menu{display:none}.desktop-links{display:flex;gap:15px;align-items:center}.desktop-links a{text-decoration:none;font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.nav nav{margin-left:auto}.nav-cta{margin-left:2px}}
@media(max-width:520px){.lightbox{padding:58px 8px 20px;width:96vw;height:92vh;grid-template-columns:36px minmax(0,1fr) 36px;gap:4px}.lightbox-nav{width:34px;height:50px;font-size:2.5rem}.lightbox-frame img{max-height:calc(92vh - 110px)}.event-photos{gap:7px}}
