
:root{--ink:#263d32;--cream:#f5f2e9;--muted:#657067;--gold:#ba8e56}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.7 Arial,sans-serif}h1,h2,h3,.brand{font-family:Georgia,serif;font-weight:400}h2{font-size:clamp(34px,4vw,54px);line-height:1.15;margin:14px 0 24px}p{max-width:650px}a{color:inherit}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{height:86px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:var(--cream);position:sticky;top:0;z-index:10;border-bottom:1px solid #263d3215}.brand{text-decoration:none;font-size:25px;line-height:1.1}.brand small{display:block;font:9px Arial;letter-spacing:3px;margin-top:8px;text-transform:uppercase}nav{display:flex;align-items:center;gap:30px}nav a{text-decoration:none;font-size:13px}.btn{display:inline-block;text-decoration:none;background:var(--ink);color:white;padding:13px 23px;border:1px solid var(--ink);font-size:13px;letter-spacing:.4px;cursor:pointer}.btn.light{background:var(--cream);color:var(--ink);border-color:var(--cream)}.hero{min-height:690px;height:calc(100svh - 86px);max-height:900px;position:relative;display:flex;align-items:flex-end;color:white;padding:65px 7%}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#081e1670,transparent 55%)}.hero-content{position:relative;z-index:1;max-width:700px;text-shadow:0 2px 12px #08211680}.eyebrow{font-size:11px;letter-spacing:2.8px;text-transform:uppercase}.hero h1{font-size:clamp(52px,7vw,90px);line-height:1.05;margin:20px 0}.hero p{font-size:17px;max-width:450px;color:#ffffffdc;margin-bottom:30px}.hero-links{display:flex;align-items:center;gap:28px}.hero-links>a:last-child{font-size:13px;text-underline-offset:6px}.stats{display:flex;justify-content:center;gap:65px;padding:30px 20px;background:#e9e7dc}.stats span{font-size:13px}.stats strong{font:27px Georgia;margin-right:9px}.wrap{max-width:1240px;margin:auto;padding:100px 6%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.intro img{width:100%;height:540px;object-fit:cover}.intro .caption{font-size:12px;color:var(--muted);margin-top:10px}.intro p{color:var(--muted)}.rule{width:55px;height:1px;background:var(--gold);margin:28px 0}.amenities{background:var(--ink);color:var(--cream)}.amenities .wrap{padding-top:75px;padding-bottom:75px}.amenity-head{display:flex;justify-content:space-between;align-items:end;gap:40px}.amenity-head p{max-width:340px;color:#ccd4ca}.amenity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:40px}.amenity-grid article{border-top:1px solid #ffffff40;padding-top:22px}.amenity-grid span{color:#d4b184;font:13px Georgia}.amenity-grid h3{font-size:24px;margin:14px 0 10px}.amenity-grid p{font-size:14px;color:#ccd4ca;line-height:1.7}.gallery-head{display:flex;justify-content:space-between;align-items:center}.gallery-head p{color:var(--muted);max-width:290px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:30px}.photo{border:0;padding:0;background:none;text-align:left;color:var(--ink);cursor:pointer}.photo img{width:100%;height:270px;object-fit:cover;display:block;transition:filter .2s}.photo:hover img{filter:brightness(.9)}.photo span{display:block;font-size:12px;margin-top:8px}.gallery .photo:first-child{grid-column:span 2;grid-row:span 2}.gallery .photo:first-child img{height:592px}.seasons{background:#e9e7dc}.season-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:40px}.season-grid article{border-top:1px solid #b4b8aa;padding-top:20px}.season-grid h3{font-size:26px;margin:10px 0}.season-grid p{font-size:14px;color:var(--muted)}.practical{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.practical p{color:var(--muted)}details{border-bottom:1px solid #263d3230;padding:20px 0}summary{cursor:pointer;font-size:15px}details p{font-size:14px;margin-bottom:5px}.booking{display:grid;grid-template-columns:1fr 1fr;min-height:450px;background:var(--ink);color:var(--cream)}.booking img{width:100%;height:100%;max-height:530px;object-fit:cover}.booking>div{padding:65px 12%;align-self:center}.booking p{color:#ccd4ca;font-size:15px}.booking small{display:block;margin-top:18px;color:#ccd4ca;font-size:11px}footer{display:flex;justify-content:space-between;align-items:center;padding:40px 6%;font-size:12px;gap:25px}footer p{margin:0;color:var(--muted)}dialog{border:0;padding:0;background:#f5f2e9;max-width:95vw;max-height:95svh;width:1050px}dialog::backdrop{background:#07140ee8}dialog img{display:block;width:100%;max-height:78svh;object-fit:contain;background:#14251d}.dialog-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 20px}.dialog-bar button{background:none;border:1px solid #263d3230;padding:8px 13px;color:var(--ink);cursor:pointer}.dialog-bar div{display:flex;gap:8px}.dialog-bar p{margin:0;font-size:13px}@media(max-width:850px){nav{gap:15px}nav a:not(.btn){display:none}.hero{min-height:600px;padding:50px 7%;height:80svh}.stats{gap:22px;flex-wrap:wrap}.stats strong{font-size:23px}.wrap{padding:65px 7%}.intro,.practical{grid-template-columns:1fr;gap:35px}.intro img{height:420px}.amenity-head,.gallery-head{display:block}.amenity-grid,.season-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.gallery .photo:first-child{grid-column:span 2;grid-row:auto}.gallery .photo:first-child img{height:380px}.photo img{height:230px}.booking{grid-template-columns:1fr}.booking img{height:340px}.booking>div{padding:50px 7%}footer{align-items:start;flex-direction:column}}@media(max-width:480px){header{height:76px}.brand{font-size:21px}nav .btn{padding:10px 13px}.hero h1{font-size:52px}.hero-links{gap:20px}.stats{gap:12px 22px}.stats span{font-size:11px}.amenity-grid,.season-grid{gap:25px}.amenity-grid h3{font-size:21px}.gallery .photo:first-child img{height:280px}.photo img{height:160px}.intro img{height:340px}.dialog-bar{padding:12px;gap:10px}.dialog-bar p{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.guide-nav{display:inline-block!important}.guide-nav[aria-current=page]{text-decoration:underline;text-underline-offset:5px}.guide-main{max-width:1320px;margin:auto;padding:70px 6% 80px}.guide-title{font:clamp(46px,6vw,76px)/1.08 Georgia;margin:18px 0 24px;max-width:850px}.guide-lead{color:var(--muted);font-size:18px;max-width:680px}.guide-top{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}.guide-count{color:var(--muted);font-size:12px;white-space:nowrap}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:32px 0}.filters button{font:13px Arial;padding:11px 17px;border:1px solid #263d3240;border-radius:25px;background:transparent;color:var(--ink);cursor:pointer}.filters button[aria-pressed=true]{background:var(--ink);color:var(--cream)}.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px 24px}.place-card{text-decoration:none;display:block;min-width:0}.place-card[hidden]{display:none}.place-card img{display:block;width:100%;height:245px;object-fit:cover}.place-card img.wide{object-position:center}.place-card .eyebrow{display:block;font-size:9px;letter-spacing:1.8px;margin-top:18px;color:var(--muted)}.place-card h2{font-size:27px;line-height:1.2;margin:8px 0 10px}.place-card p{font-size:14px;color:var(--muted);margin:0 0 13px}.place-card .read{font-size:12px;text-decoration:underline;text-underline-offset:5px}.guide-note{background:#e9e7dc;padding:25px 30px;margin-top:50px;color:var(--muted);font-size:13px}.back-link{font-size:12px;text-decoration:none}.place-top{display:grid;grid-template-columns:1fr 1.15fr;gap:55px;align-items:center;margin:35px 0 60px}.place-top h1{font:clamp(38px,4.7vw,64px)/1.1 Georgia;margin:18px 0 24px}.place-top img{width:100%;height:440px;object-fit:cover}.photo-credit{font-size:10px;color:var(--muted);margin:7px 0 0}.photo-credit a{text-underline-offset:3px}.place-body{display:grid;grid-template-columns:1.2fr 1fr;gap:80px}.place-body h2{font-size:34px}.place-copy p{color:var(--muted);font-size:16px}.visit-box{background:#e9e7dc;padding:32px}.visit-box h2{font-size:29px;margin-top:0}.visit-box dt{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;margin-top:20px}.visit-box dd{margin:8px 0 20px;color:var(--muted);font-size:14px}.visit-box .btn{width:100%;text-align:center;margin-top:12px}.visit-box ul{padding-left:20px;color:var(--muted);font-size:14px}.visit-box li{margin:12px 0}.more-places{border-top:1px solid #263d3230;margin-top:65px;padding-top:40px}.more-places h2{font-size:34px}.guide-home{background:#e9e7dc}.guide-home .place-grid{grid-template-columns:repeat(3,1fr)}.guide-home .place-card img{height:230px}.guide-home .guide-top h2{margin-bottom:0}.mobile-guide{display:none!important}.footer-links{display:flex;gap:24px;flex-wrap:wrap}header nav{gap:21px}
@media(max-width:950px){.place-grid{grid-template-columns:repeat(2,1fr)}.place-top{gap:30px}.place-top img{height:370px}.place-body{gap:35px}.guide-home .place-grid{gap:18px}.guide-home .place-card h2{font-size:24px}}
@media(max-width:650px){.guide-main{padding:40px 6% 55px}.guide-top{display:block}.guide-count{margin-top:20px}.place-grid{grid-template-columns:1fr 1fr;gap:30px 16px}.place-card img{height:175px}.place-card h2{font-size:23px}.place-card p{font-size:13px}.place-top,.place-body{grid-template-columns:1fr}.place-top{gap:22px;margin-bottom:35px}.place-top img{height:310px}.place-top h1{font-size:43px}.guide-home .place-grid{grid-template-columns:1fr}.guide-home .place-card img{height:260px}.guide-home .guide-top .btn{margin-top:22px}.guide-note{padding:20px}.mobile-guide{display:inline-block!important}header{padding-left:4%;padding-right:4%}header .brand{font-size:18px;max-width:165px}header .brand small{font-size:8px;letter-spacing:2px}header nav{gap:12px}header nav .btn{padding:10px 12px;font-size:11px}.guide-nav{font-size:11px}header .desktop-nav{display:none!important}}
@media(max-width:380px){header nav{gap:8px}header .brand{font-size:16px;max-width:145px}header nav .btn{padding:9px}.place-card h2{font-size:21px}}
