/* ForestFrame Content & SEO 0.1.0.
   Editorial components only. No menu, header, dock, comparison, feed or booking-button overrides. */
.ffcs-editorial .ffcs-hero-display{font-family:var(--serif);font-size:clamp(78px,7.8vw,116px);font-weight:400;line-height:.87;letter-spacing:-4.8px;margin:0 0 0 -4px;max-width:610px;color:var(--ink)}
.ffcs-editorial .ffcs-hero-display em{color:var(--bark)}
.ffcs-editorial .ff-hero-eight .ffcs-home-title{font:400 clamp(23px,2.1vw,29px)/1.18 var(--serif);letter-spacing:-.35px;margin:0 0 12px;max-width:100%;color:var(--ink)}
.ffcs-editorial .ff-hero-eight .hero-description{padding-top:0;margin-top:0}
.ffcs-editorial .ffcs-prose{font-size:18px;line-height:1.7;min-width:0;overflow-wrap:break-word}
.ffcs-editorial .ffcs-prose p{font-size:18px;line-height:1.7;margin:0 0 1.05em}
.ffcs-editorial .ffcs-prose h2,.ffcs-editorial .ffcs-faqs>h2{font-family:var(--serif);font-size:clamp(29px,3.2vw,40px);line-height:1.12;letter-spacing:-.65px;margin:0 0 18px}
.ffcs-editorial .ffcs-prose h3{font-family:var(--serif);font-size:26px;line-height:1.2;letter-spacing:-.2px;margin:24px 0 12px}
.ffcs-editorial .ffcs-prose a:not(.button):not(.text-link){color:var(--forest);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.ffcs-editorial .ffcs-prose a:focus-visible{outline:2px solid var(--bark);outline-offset:4px}
.ffcs-editorial .ffcs-reading{max-width:1050px;padding-bottom:50px}
.ffcs-editorial .ffcs-intro{padding-top:6px;padding-bottom:30px}
.ffcs-editorial .ffcs-bottom-note{max-width:1050px;padding-bottom:50px}
.ffcs-editorial .ffcs-section{margin:0 0 34px;padding:0 0 26px;border-bottom:1px solid var(--line);min-width:0}
.ffcs-editorial .ffcs-section:last-child{border-bottom:0}
.ffcs-editorial .ffcs-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:24px 0}
.ffcs-editorial .ffcs-choice-grid>section{min-width:0;padding:23px;background:var(--ivory);border:1px solid var(--line)}
.ffcs-editorial .ffcs-choice-grid h2{font-size:31px}
.ffcs-editorial .ffcs-choice-grid h3{margin-top:0}
.ffcs-editorial .ffcs-times{display:flex;flex-wrap:wrap;gap:18px 30px;margin:22px 0;padding:15px 0;border-block:1px solid var(--line)}
.ffcs-editorial .ffcs-times>div{min-width:0}
.ffcs-editorial .ffcs-times dt{font:500 13px/1.5 var(--sans);color:var(--muted);margin:0 0 5px}
.ffcs-editorial .ffcs-times dd{font:500 19px/1.35 var(--sans);margin:0;color:var(--ink)}
.ffcs-editorial .ffcs-plan-subhead{font:400 30px/1.15 var(--serif);letter-spacing:-.3px;margin:28px 0 14px}
.ffcs-editorial .ffcs-plan-faq{min-width:0;padding-left:22px}
.ffcs-editorial .ffcs-plan-faq>h2{font-size:clamp(34px,4vw,48px);line-height:1.08;margin:0 0 20px}
.ffcs-editorial .ffcs-faqs{margin:0 0 30px;min-width:0;scroll-margin-top:calc(var(--ff-header-height,90px) + 20px)}
.ffcs-editorial .ffcs-faqs details{border-bottom:1px solid var(--line)}
.ffcs-editorial .ffcs-faqs details:first-of-type{border-top:1px solid var(--line)}
.ffcs-editorial .ffcs-faqs summary{font-size:17px;font-weight:500;line-height:1.45;min-height:58px;padding:16px 3px;gap:18px;text-align:left}
.ffcs-editorial .ffcs-answer{padding:0 3px 18px}
.ffcs-editorial .ffcs-answer p{font-size:16px;line-height:1.65;margin:0;color:var(--muted)}
.ffcs-editorial .ffcs-topic-nav{display:flex;flex-wrap:wrap;gap:10px 20px;margin:24px 0 32px;padding-block:10px;border-block:1px solid var(--line)}
.ffcs-editorial .ffcs-topic-nav a{display:inline-flex;align-items:center;min-height:44px;font-size:16px}
.ffcs-editorial .ffcs-related p{border-left:2px solid var(--bronze);padding-left:17px}
.ffcs-editorial .ffcs-light-link{margin-top:22px;color:var(--paper);font-size:15px;line-height:1.5}
.ffcs-editorial .ffcs-location-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:48px;padding-bottom:45px}
.ffcs-editorial .ffcs-location-grid h2{margin-top:24px}
.ffcs-editorial .ffcs-location-grid h2:first-child{margin-top:0}
.ffcs-editorial .ffcs-map-column{min-width:0;align-self:start}
.ffcs-editorial .ffcs-map-column>h2{font-size:34px;line-height:1.15;margin:0 0 20px}
.ffcs-editorial .ffcs-map-caption{font-size:14px;color:var(--muted);margin:15px 0}
.ffcs-editorial .ffcs-map-column iframe{width:100%;max-width:100%}
.ffcs-editorial .ffcs-media-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:24px 0 35px}
.ffcs-editorial .ffcs-media-list>section{min-width:0;border-top:1px solid var(--line);padding-top:20px}
.ffcs-editorial .ffcs-media-list h3{margin-top:0}
.ffcs-editorial .ffcs-media-list .text-link{font-size:15px;line-height:1.4;white-space:normal}
.ffcs-editorial .ffcs-contact-online{width:100%;margin:22px 0 16px}
.ffcs-editorial .ffcs-contact-online>.button{width:100%}
.ffcs-editorial .ffcs-aside-heading{font-size:26px;line-height:1.2;margin:23px 0 10px}
.ffcs-editorial .ffcs-rate-note{font-size:14px;line-height:1.6;margin:14px 0;color:var(--muted)}
.ffcs-editorial .ff-room-booking h2{font-size:39px;line-height:1.1}
.ffcs-editorial .ff-room-main .ff-amenities{font-size:16px;line-height:1.5}
@media(min-width:1600px){.ffcs-editorial .ffcs-hero-display{font-size:118px}}
@media(max-width:1200px) and (min-width:801px){.ffcs-editorial .ffcs-hero-display{font-size:90px}}
@media(max-width:800px){
.ffcs-editorial .ffcs-hero-display{font-size:clamp(64px,10vw,80px);max-width:88%;letter-spacing:-2.5px;line-height:.93;text-shadow:0 2px 15px #f8f6e9d9}
.ffcs-editorial .ff-hero-eight .ffcs-home-title{font-size:26px;line-height:1.2;padding-top:22px;margin:0 0 12px}
.ffcs-editorial .ffcs-prose,.ffcs-editorial .ffcs-prose p{font-size:17px;line-height:1.65}
.ffcs-editorial .ffcs-location-grid{grid-template-columns:1fr;gap:25px}
.ffcs-editorial .ffcs-plan-faq{padding-left:0;margin-top:28px}
.ffcs-editorial .ffcs-reading,.ffcs-editorial .ffcs-bottom-note{padding-bottom:32px}
}
@media(max-width:550px){
.ffcs-editorial .ffcs-hero-display{font-size:clamp(55px,14.65vw,80px);line-height:.95;letter-spacing:-1.7px;max-width:100%;text-shadow:0 2px 12px #faf7edee}
.ffcs-editorial .ff-hero-eight .ffcs-home-title{font-size:25px}
.ffcs-editorial .ffcs-choice-grid,.ffcs-editorial .ffcs-media-list{grid-template-columns:1fr;gap:18px}
.ffcs-editorial .ffcs-choice-grid>section{padding:19px}
.ffcs-editorial .ffcs-faqs summary{font-size:16px}
.ffcs-editorial .ffcs-section{margin-bottom:28px;padding-bottom:22px}
.ffcs-editorial .ffcs-times{gap:18px 26px}
.ffcs-editorial .ffcs-times dd{font-size:18px}
.ffcs-editorial .ff-room-booking h2{font-size:35px}
.ffcs-editorial .ffcs-topic-nav{gap:4px 16px}
}
@media(prefers-reduced-motion:reduce){.ffcs-editorial .ffcs-topic-nav{scroll-behavior:auto}}
