@layer components{.fm-page{--rb-font-text:var(--rb-font-ja-text);--fm-frame-ink:var(--rb-paper);background:var(--rb-paper);color:var(--rb-ink)}:where(html.dark) .fm-page{background:var(--rb-dark-paper);color:var(--rb-dark-ink)}.fm-h2{font-family:var(--rb-font-display-heavy);font-weight:var(--rb-weight-heavy);font-size:var(--rb-text-3xl);line-height:var(--rb-leading-tight);letter-spacing:var(--rb-tracking-display);text-wrap:balance;margin:0}.fm-h3{margin:0 0 var(--rb-space-3);font-family:var(--rb-font-display);font-weight:var(--rb-weight-bold);font-size:var(--rb-text-xl)}.fm-link{align-items:center;gap:var(--rb-space-1);min-height:44px;font-weight:var(--rb-weight-bold);color:var(--rb-accent);text-underline-offset:.2em;text-decoration:underline;display:inline-flex}:where(html.dark) .fm-link{color:var(--rb-dark-ink)}.fm-vf{inset:var(--rb-space-4);pointer-events:none;color:var(--fm-frame-ink);font-family:var(--rb-font-data);font-size:var(--rb-text-sm);letter-spacing:var(--rb-tracking-caps);text-shadow:var(--rb-halo-ink-tight);position:absolute}.fm-vf__corner{width:clamp(1.5rem,5vw,3rem);height:clamp(1.5rem,5vw,3rem);filter:drop-shadow(0 0 2px var(--rb-ink));border:0 solid;position:absolute}.fm-vf__corner--tl{border-top-width:3px;border-left-width:3px;top:0;left:0}.fm-vf__corner--tr{border-top-width:3px;border-right-width:3px;top:0;right:0}.fm-vf__corner--bl{border-bottom-width:3px;border-left-width:3px;bottom:0;left:0}.fm-vf__corner--br{border-bottom-width:3px;border-right-width:3px;bottom:0;right:0}.fm-vf__safe{border:1px dashed color-mix(in srgb, currentColor 55%, transparent);position:absolute;inset:5%}.fm-vf__rec{top:var(--rb-space-3);right:calc(clamp(1.5rem, 5vw, 3rem) + var(--rb-space-2));align-items:center;gap:var(--rb-space-1);font-weight:var(--rb-weight-bold);display:inline-flex;position:absolute}.fm-vf__dot{background:var(--rb-hanko);outline:2px solid var(--rb-paper);border-radius:50%;width:.7em;height:.7em}.fm-vf__slate{top:var(--rb-space-3);left:calc(clamp(1.5rem, 5vw, 3rem) + var(--rb-space-2));max-width:70%;font-weight:var(--rb-weight-bold);position:absolute}.fm-hero{min-height:min(calc(100svh - var(--rb-space-24)), 56rem);color:var(--rb-paper);isolation:isolate;align-items:end;display:grid;position:relative}.fm-hero__frame{z-index:-1;margin:0;position:absolute;inset:0;overflow:hidden}.fm-hero__img{object-fit:cover;width:100%;height:100%}.fm-hero__frame:after{content:"";background:var(--rb-scrim-ink);position:absolute;inset:0}.fm-hero__text{width:100%;max-width:var(--rb-container-wide);padding:var(--rb-space-12) var(--rb-gutter) var(--rb-space-6);text-shadow:var(--rb-halo-ink-tight);margin:0 auto}.fm-hero__eyebrow{margin:0 0 var(--rb-space-3);font-size:var(--rb-text-sm);font-weight:var(--rb-weight-heavy);letter-spacing:var(--rb-tracking-caps)}.fm-hero__title{max-width:12em;font-family:var(--rb-font-display-heavy);font-weight:var(--rb-weight-heavy);font-size:var(--rb-text-hero);line-height:var(--rb-leading-tight);letter-spacing:var(--rb-tracking-display);text-wrap:balance;margin:0}.fm-hero__core{max-width:var(--rb-measure-jp,var(--rb-measure));margin:var(--rb-space-3) 0 0;font-family:var(--rb-font-display);font-size:var(--rb-text-lg);line-height:var(--rb-leading-snug);font-weight:var(--rb-weight-bold)}.fm-facts{gap:0 var(--rb-space-4);max-width:44rem;margin:var(--rb-space-4) 0 0;border-top:1px solid color-mix(in srgb, var(--rb-paper) 60%, transparent);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.fm-facts__row{padding:var(--rb-space-2) 0;border-bottom:1px solid color-mix(in srgb, var(--rb-paper) 35%, transparent)}.fm-facts dt{font-size:var(--rb-text-xs);letter-spacing:var(--rb-tracking-caps)}.fm-facts dd{font-family:var(--rb-font-display);font-size:var(--rb-text-base);line-height:var(--rb-leading-snug);font-weight:var(--rb-weight-bold);margin:0}.fm-facts__row{padding-block:var(--rb-space-1)}.fm-hero__actions{align-items:center;gap:var(--rb-space-3) var(--rb-space-6);margin-top:var(--rb-space-4);text-shadow:none;flex-wrap:wrap;display:flex}:where(html.dark) .fm-hero__cta.rb-frame-cta,:where(html.dark) .fm-est__send.rb-frame-cta{--rb-ink:var(--rb-dark-ink);--rb-paper-sunken:color-mix(in srgb, var(--rb-dark-ink) 14%, transparent)}.fm-hero .fm-link{color:var(--rb-paper);text-shadow:var(--rb-halo-ink-tight)}@media (width>=840px){.fm-facts{grid-template-columns:repeat(4,minmax(0,1fr))}.fm-hero__core{font-size:var(--rb-text-xl)}.fm-facts dd{font-size:var(--rb-text-lg)}}.fm-plan{gap:var(--rb-space-6);max-width:var(--rb-container-wide);padding:var(--rb-space-16) var(--rb-gutter);margin:0 auto;display:grid}.fm-plan__note{max-width:var(--rb-measure);margin:var(--rb-space-3) 0 var(--rb-space-6);color:var(--rb-ink-soft)}:where(html.dark) .fm-plan__note{color:var(--rb-dark-ink)}.fm-plan__list{gap:var(--rb-space-2);margin:0;padding:0;list-style:none;display:grid}.fm-plan__key{align-items:center;gap:var(--rb-space-3);min-height:56px;padding:var(--rb-space-2) var(--rb-space-3);border-bottom:1px solid var(--rb-line-strong);color:inherit;transition:background-color var(--rb-duration) var(--rb-ease);grid-template-columns:auto 1fr auto;text-decoration:none;display:grid}.fm-plan__key:hover,.fm-plan__key:focus-visible{background:var(--rb-accent-wash)}:where(html.dark) .fm-plan__key:hover,:where(html.dark) .fm-plan__key:focus-visible{background:var(--rb-dark-paper-raised)}.fm-plan__num{background:var(--rb-accent);width:2.25rem;height:2.25rem;color:var(--rb-paper);font-family:var(--rb-font-data);font-weight:var(--rb-weight-heavy);border-radius:50%;place-items:center;display:grid}.fm-plan__name{font-family:var(--rb-font-display);font-weight:var(--rb-weight-bold);font-size:var(--rb-text-lg)}.fm-plan__size{font-family:var(--rb-font-data);color:var(--rb-ink-soft)}:where(html.dark) .fm-plan__size{color:var(--rb-dark-ink)}.fm-map{width:100%;max-width:30rem;height:auto;font-family:var(--rb-font-data);justify-self:center;overflow:visible}.fm-map__road{fill:none;stroke:var(--rb-line-strong);stroke-width:22px;stroke-linecap:round}.fm-map__road-label{fill:var(--rb-ink-soft);font-size:14px}.fm-map__area path{stroke:var(--rb-ink);stroke-width:2.5px;stroke-linejoin:round;transition:opacity var(--rb-duration) var(--rb-ease)}.fm-map__area--carpark path{fill:var(--rb-line-strong)}.fm-map__area--field path{fill:color-mix(in srgb, var(--rb-accent) 32%, var(--rb-paper))}.fm-map__area--lodge path{fill:var(--rb-kraft)}.fm-map__area:hover path,.fm-map__area:focus-visible path{opacity:.75}.fm-map__area:focus-visible{outline:3px solid var(--rb-accent)}.fm-map__pin{fill:var(--rb-accent);stroke:var(--rb-paper);stroke-width:3px}.fm-map__num{fill:var(--rb-paper);text-anchor:middle;font-size:22px;font-weight:700}.fm-map__north path{fill:var(--rb-ink)}.fm-map__north text,.fm-map__scale text{fill:var(--rb-ink);text-anchor:middle;font-size:14px}.fm-map__scale text{text-anchor:start}.fm-map__scale path{stroke:var(--rb-ink);stroke-width:4px}:where(html.dark) .fm-map__area path,:where(html.dark) .fm-map__scale path{stroke:var(--rb-dark-ink)}:where(html.dark) .fm-map__north path,:where(html.dark) .fm-map__north text,:where(html.dark) .fm-map__scale text,:where(html.dark) .fm-map__road-label{fill:var(--rb-dark-ink)}:where(html.dark) .fm-map__road{stroke:var(--rb-dark-line)}@media (width>=840px){.fm-plan{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center}}.fm-scene{padding-bottom:var(--rb-space-16);display:grid}.fm-scene__frame{aspect-ratio:16/9;background:var(--rb-ink);width:100%;max-height:80svh;margin:0;position:relative;overflow:hidden}.fm-scene__img{object-fit:cover;width:100%;height:100%}.fm-scene__sheet{width:100%;max-width:var(--rb-container-wide);padding:var(--rb-space-6) var(--rb-gutter) 0;gap:var(--rb-space-3);margin:0 auto;display:grid}.fm-scene__num{font-family:var(--rb-font-data);font-size:var(--rb-text-mega);color:var(--rb-accent);margin:0;line-height:1}:where(html.dark) .fm-scene__num{color:var(--rb-dark-ink)}.fm-scene__reads{max-width:var(--rb-measure);font-family:var(--rb-font-display);font-size:var(--rb-text-xl);line-height:var(--rb-leading-snug);margin:0}.fm-spec{gap:0 var(--rb-space-6);margin:var(--rb-space-2) 0;border-top:2px solid var(--rb-ink);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}:where(html.dark) .fm-spec{border-top-color:var(--rb-dark-ink)}.fm-spec__row{padding:var(--rb-space-2) 0;border-bottom:1px solid var(--rb-line-strong)}.fm-spec dt{font-size:var(--rb-text-sm);color:var(--rb-ink-soft)}:where(html.dark) .fm-spec dt{color:var(--rb-dark-ink)}.fm-spec dd{font-family:var(--rb-font-display);font-size:var(--rb-text-lg);font-weight:var(--rb-weight-bold);margin:0}.fm-spec__price{font-family:var(--rb-font-data)}.fm-scene__good-title{margin:var(--rb-space-2) 0 0;font-weight:var(--rb-weight-heavy);font-size:var(--rb-text-sm);letter-spacing:var(--rb-tracking-caps)}.fm-scene__good{gap:var(--rb-space-2) var(--rb-space-4);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.fm-scene__good li:before{content:"▸ ";color:var(--rb-accent)}.fm-scene__note{max-width:var(--rb-measure);color:var(--rb-ink-soft);margin:0}:where(html.dark) .fm-scene__note{color:var(--rb-dark-ink)}@media (width>=1200px){.fm-scene--carpark,.fm-scene--lodge{grid-template-columns:minmax(0,5fr) minmax(0,2fr);align-items:end}.fm-scene--lodge{grid-template-columns:minmax(0,2fr) minmax(0,5fr)}.fm-scene--lodge .fm-scene__frame{order:2}.fm-scene--carpark .fm-scene__sheet,.fm-scene--lodge .fm-scene__sheet{padding:var(--rb-space-6) var(--rb-space-8)}.fm-scene--carpark .fm-spec,.fm-scene--lodge .fm-spec{grid-template-columns:1fr}}.fm-rates{max-width:var(--rb-container-wide);padding:var(--rb-space-16) var(--rb-gutter);scroll-margin-top:var(--rb-space-16);margin:0 auto}.fm-rates__note{max-width:var(--rb-measure);margin:var(--rb-space-3) 0 var(--rb-space-6)}.fm-ledger{border-collapse:collapse;width:100%;font-size:var(--rb-text-base)}.fm-ledger th,.fm-ledger td{padding:var(--rb-space-3) var(--rb-space-2);border-bottom:1px solid var(--rb-line-strong);text-align:left;vertical-align:baseline}.fm-ledger thead th{border-bottom:2px solid var(--rb-ink);font-size:var(--rb-text-sm);letter-spacing:var(--rb-tracking-caps)}:where(html.dark) .fm-ledger thead th{border-bottom-color:var(--rb-dark-ink)}.fm-ledger tbody th{font-family:var(--rb-font-display);font-weight:var(--rb-weight-bold)}.fm-ledger__price{font-family:var(--rb-font-data);font-weight:var(--rb-weight-bold);font-size:var(--rb-text-lg);white-space:nowrap}.fm-ledger__row--lead{background:var(--rb-accent-wash)}:where(html.dark) .fm-ledger__row--lead{background:var(--rb-dark-paper-raised)}@media (width<=599px){.fm-ledger th:nth-child(3),.fm-ledger td:nth-child(3){display:none}.fm-ledger__price{font-size:var(--rb-text-base)}}.fm-rates__rules{gap:var(--rb-space-2);max-width:var(--rb-measure);margin:var(--rb-space-6) 0 0;padding-left:1.2em;display:grid}.fm-est{margin-top:var(--rb-space-12);padding:var(--rb-space-6) var(--rb-space-4);border:2px solid var(--rb-ink);border-radius:var(--rb-radius);background:var(--rb-paper-raised);box-shadow:var(--rb-shadow-pixel)}:where(html.dark) .fm-est{border-color:var(--rb-dark-ink);background:var(--rb-dark-paper-raised)}.fm-est__areas{gap:var(--rb-space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.fm-est__area{min-height:48px;padding:var(--rb-space-2) var(--rb-space-3);border:2px solid var(--rb-line-strong);border-radius:var(--rb-radius-sm);background:var(--rb-paper);color:var(--rb-ink);font-weight:var(--rb-weight-bold);text-align:left;cursor:pointer;transition:background-color var(--rb-duration-fast) var(--rb-ease), border-color var(--rb-duration-fast) var(--rb-ease), transform var(--rb-duration-press) var(--rb-ease)}.fm-est__area:hover{border-color:var(--rb-accent)}.fm-est__area:active{transform:scale(.98)}.fm-est__area[aria-checked=true]{border-color:var(--rb-accent);background:var(--rb-accent);color:var(--rb-paper)}.fm-est__area[aria-checked=true]:before{content:"● "}.fm-est__area:focus-visible,.fm-step__btn:focus-visible{outline:3px solid var(--rb-accent);outline-offset:2px}:where(html.dark) .fm-est__area{background:var(--rb-dark-paper);color:var(--rb-dark-ink);border-color:var(--rb-dark-line)}:where(html.dark) .fm-est__area[aria-checked=true]{background:var(--rb-accent);border-color:var(--rb-dark-ink);color:var(--rb-paper)}.fm-est__steps{gap:var(--rb-space-4);margin-top:var(--rb-space-6);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));display:grid}.fm-step{gap:var(--rb-space-1);display:grid}.fm-step__label{font-size:var(--rb-text-sm);font-weight:var(--rb-weight-bold)}.fm-step__ctl{border:1px solid var(--rb-line-strong);border-radius:var(--rb-radius-sm);grid-template-columns:48px 1fr 48px;align-items:center;display:grid}.fm-step__btn{min-height:48px;color:inherit;font-size:var(--rb-text-xl);font-weight:var(--rb-weight-heavy);cursor:pointer;background:0 0;border:0}.fm-step__btn:disabled{opacity:.35;cursor:default}.fm-step__value{text-align:center;font-family:var(--rb-font-data);font-size:var(--rb-text-lg);font-weight:var(--rb-weight-bold)}.fm-est__hint{font-size:var(--rb-text-sm);color:var(--rb-ink-soft);align-self:end;margin:0}:where(html.dark) .fm-est__hint{color:var(--rb-dark-ink)}.fm-est__sum{gap:var(--rb-space-1);margin:var(--rb-space-6) 0 0;border-top:2px solid;display:grid}.fm-est__sum>div{justify-content:space-between;gap:var(--rb-space-4);padding:var(--rb-space-2) 0;border-bottom:1px solid var(--rb-line-strong);display:flex}.fm-est__sum dd{font-family:var(--rb-font-data);font-weight:var(--rb-weight-bold);margin:0}.fm-est__total dt,.fm-est__total dd{font-size:var(--rb-text-2xl);font-weight:var(--rb-weight-heavy)}.fm-est__capped{margin:var(--rb-space-2) 0 0;font-weight:var(--rb-weight-bold);color:var(--rb-accent)}:where(html.dark) .fm-est__capped{color:var(--rb-dark-ink)}.fm-est__send{margin-top:var(--rb-space-6)}@media (width>=840px){.fm-est{padding:var(--rb-space-8)}.fm-est__areas{grid-template-columns:repeat(4,minmax(0,1fr))}}.fm-checks{max-width:var(--rb-container-wide);padding:var(--rb-space-12) var(--rb-gutter);margin:0 auto}.fm-checks__list{gap:var(--rb-space-6);margin:var(--rb-space-6) 0 0;padding:0;list-style:none;display:grid}.fm-checks__item{gap:0 var(--rb-space-3);grid-template-columns:3rem 1fr;display:grid}.fm-checks__num{font-family:var(--rb-font-data);font-size:var(--rb-text-2xl);color:var(--rb-accent);grid-row:span 2}:where(html.dark) .fm-checks__num{color:var(--rb-dark-ink)}.fm-checks__q{font-family:var(--rb-font-display);font-size:var(--rb-text-lg);margin:0}.fm-checks__a{max-width:var(--rb-measure);margin:var(--rb-space-1) 0 0}@media (width>=840px){.fm-checks__list{grid-template-columns:repeat(2,minmax(0,1fr))}}.fm-rules{padding:var(--rb-space-12) var(--rb-gutter);background:var(--rb-paper-sunken)}:where(html.dark) .fm-rules{background:var(--rb-dark-paper-raised)}.fm-rules>.fm-h2,.fm-rules__cols{max-width:var(--rb-container-wide);margin-inline:auto}.fm-rules__cols{gap:var(--rb-space-6);margin-top:var(--rb-space-6);display:grid}.fm-rules__col{padding-top:var(--rb-space-3);border-top:4px solid var(--rb-ink)}.fm-rules__col--ok{border-top-color:var(--rb-accent)}.fm-rules__col--no{border-top-color:var(--rb-hanko)}.fm-rules__title{align-items:center;gap:var(--rb-space-2);margin:0 0 var(--rb-space-3);font-family:var(--rb-font-display);font-size:var(--rb-text-xl);display:flex}.fm-rules__mark{font-size:var(--rb-text-2xl)}.fm-rules__col ul{gap:var(--rb-space-2);margin:0;padding-left:1.2em;display:grid}@media (width>=840px){.fm-rules__cols{grid-template-columns:repeat(3,minmax(0,1fr))}}.fm-seasons{padding:var(--rb-space-12) 0}.fm-seasons__title{max-width:var(--rb-container-wide);margin:0 auto var(--rb-space-6);padding:0 var(--rb-gutter)}.fm-seasons__strip{gap:var(--rb-space-1);padding:0 var(--rb-gutter);scroll-snap-type:x mandatory;grid-auto-columns:78vw;grid-auto-flow:column;margin:0;list-style:none;display:grid;overflow-x:auto}.fm-seasons__frame{scroll-snap-align:start}.fm-seasons__frame figure{margin:0}.fm-seasons__img{aspect-ratio:3/4;object-fit:cover;width:100%}.fm-seasons__frame figcaption{padding:var(--rb-space-2) 0;font-size:var(--rb-text-sm);font-weight:var(--rb-weight-bold)}@media (width>=840px){.fm-seasons__strip{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row;padding:0;overflow:visible}}.fm-events{gap:var(--rb-space-8);max-width:var(--rb-container-wide);padding:var(--rb-space-12) var(--rb-gutter);margin:0 auto;display:grid}.fm-events__line{max-width:var(--rb-measure);margin:var(--rb-space-3) 0 0}.fm-services{padding:var(--rb-space-6);border:1px solid var(--rb-line-strong);border-radius:var(--rb-radius)}.fm-services ul{gap:var(--rb-space-2);margin:0;padding-left:1.2em;display:grid}@media (width>=840px){.fm-events{grid-template-columns:3fr 2fr;align-items:start}}.fm-enquire{gap:var(--rb-space-8);max-width:var(--rb-container-wide);padding:var(--rb-space-12) var(--rb-gutter) var(--rb-space-16);scroll-margin-top:var(--rb-space-16);margin:0 auto;display:grid}.fm-enquire__steps-title{margin:var(--rb-space-4) 0 var(--rb-space-2);font-weight:var(--rb-weight-heavy)}.fm-enquire__steps ol{gap:var(--rb-space-2);margin:0;padding-left:1.4em;display:grid}@media (width>=840px){.fm-enquire{grid-template-columns:2fr 3fr;align-items:start}}@keyframes fm-push-in{0%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes fm-frame-close{0%{opacity:.4;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes fm-area-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes fm-rec{0%,55%{opacity:1}56%,to{opacity:.15}}@media (prefers-reduced-motion:no-preference){.fm-vf__dot{animation:1.4s step-end infinite fm-rec}@supports (animation-timeline:view()){.fm-scene__img{animation:linear both fm-push-in;animation-timeline:view();animation-range:entry cover 55%}.fm-scene .fm-vf{animation:linear both fm-frame-close;animation-timeline:view();animation-range:entry 10% cover 45%}.fm-map__area{animation:linear both fm-area-in;animation-timeline:view();animation-range:entry cover 35%}}}}
