:root{--cream:#f4eee3;--red:#9f2f2d;--ink:#20251f;--green:#26352c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,Helvetica,sans-serif}img{max-width:100%}.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;overflow:hidden;color:#fff}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-photo{object-fit:cover;object-position:center 48%}.hero-shade{background:linear-gradient(90deg,rgba(15,20,16,.92) 0%,rgba(15,20,16,.7) 38%,rgba(15,20,16,.14) 72%),linear-gradient(0deg,rgba(15,20,16,.7),transparent 58%)}.nav{position:absolute;z-index:2;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:28px clamp(24px,5vw,80px)}.nav a{color:#fff;text-decoration:none;border-bottom:1px solid #ffffffa6;padding-bottom:4px}.brand{font:clamp(20px,2vw,30px)/1 Georgia,serif}.hero-copy{position:relative;z-index:2;padding:clamp(32px,7vw,96px);max-width:920px;text-shadow:0 2px 22px #00000057}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:700}.dark{color:#6d6a63}h1{font:400 clamp(64px,8.5vw,132px)/.86 Georgia,serif;letter-spacing:-.055em;margin:24px 0 30px}.hero-copy>p:not(.eyebrow){font:clamp(20px,2vw,30px)/1.35 Georgia,serif;max-width:620px}.button{display:inline-block;margin-top:20px;padding:16px 24px;border:0;background:var(--red);color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;cursor:pointer;text-shadow:none}.intro{display:grid;grid-template-columns:60px minmax(0,1.4fr) minmax(280px,.75fr);gap:clamp(24px,5vw,84px);padding:clamp(80px,11vw,170px) clamp(24px,7vw,110px);align-items:start}.section-no{font:700 11px/1 Arial;letter-spacing:.2em;color:var(--red);border-top:1px solid #b8b1a6;padding-top:14px}h2{font:400 clamp(44px,6vw,92px)/.96 Georgia,serif;letter-spacing:-.045em;margin:18px 0}.lead{font:clamp(18px,1.65vw,25px)/1.58 Georgia,serif;margin-top:42px}
.place-panel{display:grid;grid-template-columns:minmax(360px,.75fr) minmax(560px,1.25fr);background:var(--green);color:#fff}.place-photo{min-height:100%;position:relative}.place-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.place-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(48px,5vw,90px)}.place-copy h2{font-size:clamp(44px,4.8vw,76px)}.place-copy>p:not(.eyebrow){font:17px/1.65 Georgia,serif;color:#e4e4dc;max-width:760px}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:28px 0}.facts>div{display:grid;grid-template-columns:34px 1fr;gap:2px 10px;padding:16px;background:#ffffff14;border:1px solid #ffffff21}.facts span{grid-row:1/3;font-size:22px}.facts b{font:400 20px/1.2 Georgia,serif}.facts small{color:#c9d0ca}.forest-note{margin-top:8px;padding:24px;background:#f1e8da;color:var(--green)}.forest-note h3{font:400 25px/1.2 Georgia,serif;margin:0 0 10px}.forest-note p{margin:0;line-height:1.6}.address{display:flex;gap:18px;align-items:flex-start;border-top:1px solid #ffffff40;margin-top:24px;padding-top:24px;line-height:1.6}.address>span{font-size:24px}
.gallery{padding:clamp(80px,10vw,150px) clamp(18px,5vw,78px);background:#e6ded1}.gallery-head{display:grid;grid-template-columns:60px 1fr;gap:clamp(24px,5vw,84px);margin:0 auto 60px;max-width:1300px}.photo-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.photo-item{appearance:none;border:0;padding:0;margin:0;background:#d4cabd;overflow:hidden;aspect-ratio:4/3;cursor:zoom-in}.photo-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}.photo-item:hover img{transform:scale(1.045)}.photo-item.is-extra{display:none}.gallery-more{text-align:center}.gallery-button{margin-top:34px}.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#0a0c0af0;color:#fff}.lightbox[open]{display:grid;place-items:center}.lightbox::backdrop{background:#0a0c0af0}.lightbox img{max-width:90vw;max-height:88vh;object-fit:contain}.lightbox button{position:fixed;border:0;background:#ffffff1f;color:#fff;cursor:pointer;width:50px;height:50px;border-radius:50%;font-size:34px;line-height:1}.lightbox-close{right:24px;top:24px}.lightbox-prev{left:24px;top:50%;transform:translateY(-50%)}.lightbox-next{right:24px;top:50%;transform:translateY(-50%)}
.terms{padding:clamp(80px,10vw,150px) clamp(24px,7vw,110px)}.terms-head{display:grid;grid-template-columns:1.3fr .7fr;gap:60px;align-items:end;margin-bottom:60px}.terms-head>p{max-width:460px;line-height:1.7;color:#65645f}.month-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.month-card{background:#fffaf2;border:1px solid #c9c2b6}.month-card summary{list-style:none;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:22px;min-height:122px;padding:26px 30px;cursor:pointer}.month-card summary::-webkit-details-marker{display:none}.month-name{font:400 clamp(28px,3vw,46px)/1 Georgia,serif;text-transform:capitalize}.month-name b{font-weight:400;color:#8b877f}.month-count{text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:#6b6a64}.month-card summary>i{font-style:normal;font-size:28px;color:var(--red);transition:transform .2s}.month-card[open] summary>i{transform:rotate(45deg)}.month-content{padding:0 30px 28px;border-top:1px solid #ddd5c9}.term-day{display:grid;grid-template-columns:155px 1fr;gap:22px;padding:22px 0;border-bottom:1px solid #c9c2b6}.term-day h3{font:400 21px/1.2 Georgia,serif;margin:10px 0;text-transform:capitalize}.term-times{display:grid;gap:8px}.term{display:grid;grid-template-columns:90px 1fr auto;align-items:center;background:#fff;padding:17px 20px;color:var(--ink);text-decoration:none;transition:.2s}.term:hover{transform:translateX(4px);box-shadow:0 10px 30px #22251f12}.time{font:26px/1 Georgia,serif}.availability{color:#617364;font-size:12px;text-transform:uppercase;letter-spacing:.1em}.availability i{display:inline-block;width:7px;height:7px;background:#6c8f69;border-radius:50%;margin-right:7px}.reserve{text-transform:uppercase;letter-spacing:.14em;font-weight:800;font-size:10px;color:var(--red)}.reserve b{font-size:17px;margin-left:8px}.month-empty{padding:24px 0;margin:0;color:#6b6a64}.term-list{margin-top:20px}.status{padding:34px;background:#fffaf2;font:18px/1.6 Georgia,serif}
.closing{min-height:700px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:80px 24px;background:linear-gradient(#25342cc7,#25342cdb),url('../photos/vanoce-18.webp') center/cover;color:#fff}.closing h2{font-size:clamp(56px,8vw,120px)}.button.light{background:#f1e8da;color:var(--green)}footer{display:flex;justify-content:space-between;gap:24px;padding:28px clamp(24px,5vw,80px);background:#1d2b24;color:#d9d5cb;font-size:12px;letter-spacing:.06em}footer a{color:inherit}
@media(max-width:1100px){.place-panel{grid-template-columns:1fr}.place-photo{min-height:62vw}.photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){.intro,.terms-head{grid-template-columns:1fr}.intro .section-no{display:none}.gallery-head{grid-template-columns:1fr}.gallery-head .section-no{display:none}.month-grid{grid-template-columns:1fr}}
@media(max-width:760px){.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.month-card summary{min-height:100px;padding:22px}.month-content{padding:0 22px 22px}.term-day{grid-template-columns:1fr}.facts{grid-template-columns:1fr}.hero-photo{object-position:58% center}.hero-shade{background:linear-gradient(90deg,#0f1410e0,#0f14107a),linear-gradient(0deg,#0f1410cc,transparent)}.place-photo{min-height:90vw}.place-copy{padding:48px 24px}}
@media(max-width:560px){.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.month-card summary{grid-template-columns:1fr auto}.month-count{grid-row:2}.month-card summary>i{grid-column:2;grid-row:1/3}.term{grid-template-columns:72px 1fr;gap:8px}.reserve{grid-column:2}.hero{min-height:780px}.hero-copy{padding:120px 24px 48px}.nav{padding:22px 24px}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-close{right:8px;top:8px}footer{flex-direction:column}}
