:root{--ink:#163a38;--forest:#0b302d;--cream:#f7f4ec;--sand:#d4c4a7;--gold:#d9ac64;--white:#fff;font-family:'DM Sans',sans-serif;color:var(--ink)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream)}a{color:inherit}button{font:inherit}.topbar{height:82px;display:flex;align-items:center;gap:38px;padding:0 4.5%;background:#f9f8f3;position:relative;z-index:2}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:18px;line-height:1;letter-spacing:.16em;white-space:nowrap}.brand b{font-weight:500}.brand small{display:block;font-size:9px;letter-spacing:.21em;margin-top:7px}.brandmark{background:var(--ink);color:white;display:grid;place-items:center;width:40px;height:40px;font-family:'Playfair Display',serif;font-size:24px;letter-spacing:0}.brandmark span{font-size:12px;align-self:start;margin-top:5px}.topbar nav{display:flex;gap:32px;margin-left:auto}.topbar nav a{text-decoration:none;font-size:13px}.topbar nav a:hover,.maplink:hover{text-decoration:underline}.top-actions{display:flex;align-items:center;gap:15px}.top-actions button{border:0;background:none;cursor:pointer;color:var(--ink);font-size:13px;font-weight:700;padding:12px}.book{display:inline-block;text-decoration:none;background:var(--gold);color:#16342f;padding:17px 25px;border-radius:2px;font-size:14px;font-weight:700;transition:transform .2s,background .2s}.book:hover{background:#ebbb71;transform:translateY(-2px)}.book.small{padding:12px 17px;font-size:12px}.hero{height:min(780px,80vh);min-height:600px;position:relative;color:#fff}.hero img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,30,27,.83),rgba(6,30,27,.34) 65%,rgba(6,30,27,.06))}.hero-inner{position:absolute;left:8%;top:50%;transform:translateY(-50%);max-width:660px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.24em;margin:0 0 22px;color:#e4c18c}.eyebrow.green{color:#708e72}.hero h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:400;line-height:1.13;letter-spacing:-.025em}.hero h1{font-size:clamp(48px,5.5vw,82px);margin:0 0 25px}.intro{max-width:500px;font-size:18px;line-height:1.6;margin:0 0 30px;color:#f5f2e8}.photo-label{position:absolute;bottom:20px;right:25px;font-size:11px;background:#102c2a9c;padding:8px 10px}.facts{display:flex;justify-content:space-around;padding:25px 5%;background:var(--forest);color:white;text-align:center;font-size:13px;font-weight:600;letter-spacing:.05em;gap:20px}.facts span+span{border-left:1px solid #ffffff4d;padding-left:7%}.section{padding:108px 8%}.section-heading{max-width:710px}.section h2,.picture-split h2,.end h2{font-size:clamp(38px,4vw,60px);margin:0 0 30px}.stay-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin:50px 0}.feature{border-top:1px solid #a7b7ac;padding-top:20px}.feature b{font-size:13px;color:#849a8c}.feature h3{font-family:'Playfair Display',serif;font-size:27px;font-weight:400;line-height:1.2;margin:25px 0 14px}.feature p,.explore p,.picture-split p{font-size:16px;line-height:1.75}.feature p{color:#4b6560}.note,.route-note{font-size:13px;color:#637d77;line-height:1.5}.picture-split{display:grid;grid-template-columns:1.1fr .9fr;min-height:520px;background:var(--forest);color:white}.picture-split img{width:100%;height:100%;object-fit:cover;max-height:600px}.picture-split>div{display:flex;flex-direction:column;justify-content:center;padding:9% 13%}.picture-split p:not(.eyebrow){max-width:460px;color:#e7e9e0}.picture-split small{font-size:12px;color:#b7c7bd;margin-top:24px}.explore{background:#e9eee7}.explore .section-heading>p:not(.eyebrow){max-width:690px;color:#425d58}.destinations{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:48px 0 28px}.destinations>div{background:white;padding:30px;min-height:190px}.destinations span{display:block;font-size:12px;color:#719186;margin-bottom:17px}.destinations strong{font-family:'Playfair Display',serif;font-weight:400;font-size:24px}.destinations p{font-size:14px;margin-bottom:0;color:#5e716b}.maplink{font-weight:700;font-size:14px;text-underline-offset:4px}.route-note{margin-top:22px}.gallery{background:var(--cream)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery figure{margin:0}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}.gallery figcaption{font-size:12px;margin-top:10px;color:#4d6862}.end{text-align:center;background:#174541;color:white;padding:115px 20px}.end h2{max-width:720px;margin:0 auto 25px}.end>p:not(.eyebrow){max-width:530px;margin:0 auto 28px;line-height:1.6;color:#dce9df}footer{display:flex;justify-content:space-between;gap:25px;padding:30px 5%;font-size:12px;background:#092925;color:#c2d6cd}footer span:first-child{letter-spacing:.12em;color:white}@media(max-width:850px){.topbar{padding:0 5%;gap:10px}.topbar nav{display:none}.top-actions{margin-left:auto}.hero-inner{left:6%;right:6%}.hero{height:680px}.facts{flex-wrap:wrap}.facts span{flex:1 0 40%}.facts span+span{border:0;padding:0}.section{padding:75px 6%}.stay-grid,.destinations{grid-template-columns:1fr;gap:14px}.stay-grid{margin:30px 0}.feature{padding-bottom:20px}.feature h3{margin:18px 0 8px}.picture-split{grid-template-columns:1fr}.picture-split img{height:360px}.picture-split>div{padding:60px 7%}.gallery-grid{grid-template-columns:1fr 1fr}.gallery figure:last-child{display:none}}@media(max-width:540px){.topbar{height:70px}.brand{font-size:14px;letter-spacing:.1em}.brandmark{width:36px;height:36px}.top-actions{gap:2px}.top-actions .book{font-size:11px;padding:10px}.hero{height:650px;min-height:0}.hero h1{font-size:48px}.hero-inner{top:49%}.intro{font-size:16px}.photo-label{right:10px;bottom:7px}.gallery-grid{grid-template-columns:1fr}.gallery figure:last-child{display:block}footer{flex-direction:column}}
.reviews{display:grid;grid-template-columns:190px 1fr;gap:50px;align-items:center;padding:70px 8%;background:#fff}.score{width:170px;height:170px;border:1px solid #b9c8bf;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.score strong{font-family:'Playfair Display',serif;font-size:54px;font-weight:400;line-height:1}.score span{color:#d49f4a;letter-spacing:.12em;font-size:13px;margin-top:10px}.reviews h2{font-size:clamp(31px,3vw,47px);margin:0 0 15px}.reviews p:not(.eyebrow){max-width:740px;line-height:1.65;color:#4b6560}.reviews a{display:inline-block;margin-top:5px;font-size:14px;font-weight:700;text-underline-offset:4px}@media(max-width:650px){.reviews{grid-template-columns:1fr;padding:60px 6%;gap:28px}.score{width:135px;height:135px}.score strong{font-size:44px}}

/* Professional Humana gallery and verified bicycle routes */
.legacy-explore{display:none}
.amenities{background:var(--forest);color:white}
.amenities .section-heading{max-width:780px}
.amenities .section-heading>p:not(.eyebrow){color:#d9e4dc;line-height:1.7}
.amenity-grid{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:repeat(2,290px);gap:16px;margin-top:50px}
.amenity-grid figure{margin:0;position:relative;overflow:hidden}
.amenity-grid figure.wide{grid-row:1/3}
.amenity-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.amenity-grid figure:hover img{transform:scale(1.02)}
.amenity-grid figcaption{position:absolute;left:15px;bottom:15px;background:#082a27d9;color:white;padding:9px 12px;font-size:12px;letter-spacing:.06em}
.photo-credit{color:#acc0b6;font-size:12px;line-height:1.5;margin:18px 0 0}
.bike-routes{background:#e9eee7}
.bike-routes .section-heading>p:not(.eyebrow){max-width:720px;color:#425d58;font-size:16px;line-height:1.75}
.route-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin:48px 0 28px}
.route-cards>a{display:flex;flex-direction:column;background:white;padding:27px 22px;min-height:230px;text-decoration:none;border-top:3px solid transparent;transition:transform .2s,border-color .2s,box-shadow .2s}
.route-cards>a:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 12px 28px #153c3814}
.ride-time{display:block;font-family:'Playfair Display',serif;font-size:45px;line-height:1;color:var(--ink);margin-bottom:24px}
.ride-time small{font-family:'DM Sans',sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.route-cards strong{font-family:'Playfair Display',serif;font-weight:400;font-size:21px}
.route-cards p{font-size:13px;margin:10px 0;color:#5e716b;line-height:1.45}
.route-cards em{font-size:11px;font-style:normal;font-weight:700;color:#628077;margin-top:auto}
.bike-routes .route-note{margin-top:22px;max-width:900px}
@media(max-width:1100px){.route-cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.route-cards{grid-template-columns:1fr 1fr}.amenity-grid{grid-template-columns:1fr;grid-template-rows:360px 260px 260px}.amenity-grid figure.wide{grid-row:auto}}
@media(max-width:540px){.route-cards{grid-template-columns:1fr}.route-cards>a{min-height:190px}.amenity-grid{grid-template-rows:260px 220px 220px}}
