*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-surface);font-family:var(--font-body-family);line-height:var(--line-height-normal);font-size:var(--type-scale-base)}body,h1,h2,h3{color:var(--color-ink)}h1,h2,h3{font-family:var(--font-display-family);letter-spacing:var(--font-display-tracking,normal);line-height:var(--line-height-tight);text-wrap:balance;margin:0 0 var(--space-3)}h1{font-size:clamp(calc(var(--type-scale-base) * 2),5vw,calc(var(--type-scale-base) * 3.2))}h2{font-size:clamp(calc(var(--type-scale-base) * 1.5),3.4vw,calc(var(--type-scale-base) * 2.1))}h3{font-size:calc(var(--type-scale-base) * 1.25)}p{max-width:var(--font-body-measure,68ch);margin:0 0 var(--space-4)}a{color:var(--color-accent)}button{font-family:var(--font-utility-family)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}main{display:block}.amenities,.booking-widget,.faq,.gallery,.location,.reviews,.rooms,.story,.walkthrough{padding:calc(var(--space-8) * 1.4) var(--layout-gutter);max-width:var(--layout-max-width);margin:0 auto;border-top:var(--border-hairline) solid var(--color-border)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.amenities>*,.location>*,.story>*{max-width:var(--font-body-measure,68ch)}.hero{position:relative;display:flex;align-items:flex-end;min-height:min(78vh,720px);padding:calc(var(--space-8) * 1.6) var(--layout-gutter) calc(var(--space-8) * 1.1);isolation:isolate;overflow:hidden}.hero__media{position:absolute;inset:0;z-index:-1}.hero__image,.hero__placeholder{width:100%;height:100%;display:block;object-fit:cover;min-height:100%}.hero__placeholder{background:linear-gradient(155deg,color-mix(in srgb,var(--color-accent) 30%,var(--color-surface)) 0,var(--color-surface) 70%)}.hero__scrim{position:absolute;inset:0;background:linear-gradient(to right,var(--color-scrim) 0,color-mix(in srgb,var(--color-scrim) 70%,transparent) 38%,transparent 72%),linear-gradient(to top,var(--color-scrim) 0,color-mix(in srgb,var(--color-scrim) 78%,transparent) 38%,color-mix(in srgb,var(--color-scrim) 34%,transparent) 70%,color-mix(in srgb,var(--color-scrim) 12%,transparent) 100%)}.hero__copy{position:relative;max-width:var(--layout-max-width);width:100%;margin:0 auto}.hero__copy,.hero__eyebrow{color:var(--color-ink-inverse)}.hero__eyebrow{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .78);letter-spacing:.16em;text-transform:uppercase;opacity:.82;margin:0 0 var(--space-3)}.hero__copy h1{max-width:18ch;font-size:clamp(calc(var(--type-scale-base) * 2.1),5.4vw,calc(var(--type-scale-base) * 3.9))}.hero__copy h1,.hero__tagline{color:var(--color-ink-inverse);margin-bottom:var(--space-4)}.hero__tagline{font-size:calc(var(--type-scale-base) * 1.15);opacity:.9;max-width:46ch}.hero__meta{font-size:calc(var(--type-scale-base) * .85);color:var(--color-ink-inverse);opacity:.85;margin-bottom:var(--space-5)}.hero__cta,.hero__meta{font-family:var(--font-utility-family);letter-spacing:.02em}.hero__cta{display:inline-block;font-size:calc(var(--type-scale-base) * .95);text-decoration:none;color:var(--color-ink);background:var(--color-surface);border-radius:var(--radius-pill);padding:calc(var(--space-3) + 2px) var(--space-6);transition:transform var(--motion-duration-fast) var(--motion-easing-standard),background-color var(--motion-duration-fast) var(--motion-easing-standard)}.hero__cta:hover{background:var(--color-accent-soft);transform:translateY(-1px)}@media (max-width:640px){.hero{min-height:min(82vh,620px)}.hero__copy h1{max-width:100%}}html[data-theme-signature=horizon-line] .hero{border-bottom:var(--signature-thickness,1px) solid color-mix(in srgb,var(--signature-color,var(--color-accent)) calc(var(--signature-opacity, 1) * 100%),transparent)}html[data-theme-signature=drop-cap] .story p:first-of-type:first-letter{float:left;font-family:var(--font-display-family);font-size:calc(var(--type-scale-base) * 3.4);line-height:.82;font-weight:600;color:var(--color-accent);padding:.05em .08em 0 0}.booking-widget{background:var(--color-surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-raised);border-top:none;margin-top:calc(var(--space-8) * -1);margin-bottom:calc(var(--space-8) * 1.2);position:relative;z-index:1;padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-5)}.booking-widget h2{margin-bottom:0}.booking-widget__unit-selector{border:var(--border-hairline) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-5)}.booking-widget__unit-selector legend{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .78);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-muted);padding:0 var(--space-2)}.booking-widget__unit-option{display:flex;align-items:center;gap:var(--space-2);font-size:calc(var(--type-scale-base) * .95)}.booking-widget__guests{display:flex;flex-wrap:wrap;gap:var(--space-5)}.booking-widget__stepper{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .9)}.booking-widget__stepper button{width:28px;height:28px;border-radius:var(--radius-pill);border:var(--border-hairline) solid var(--color-border-strong);background:var(--color-surface);color:var(--color-ink);cursor:pointer;transition:background var(--motion-duration-fast) var(--motion-easing-standard)}.booking-widget__stepper button:not(:disabled):hover{background:var(--color-accent-soft)}.booking-widget__stepper button:disabled{opacity:.4;cursor:not-allowed}.booking-widget__stepper output{min-width:1.4em;text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.booking-widget__cta{font-family:var(--font-utility-family);font-weight:600;font-size:calc(var(--type-scale-base) * .95);letter-spacing:.01em;background:var(--color-accent);color:var(--color-accent-ink);border:none;border-radius:var(--radius-pill);padding:var(--space-3) var(--space-6);cursor:pointer;align-self:flex-start;min-height:48px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:opacity var(--motion-duration-fast) var(--motion-easing-standard)}@media (max-width:859px){.booking-widget__cta{position:-webkit-sticky;position:sticky;bottom:calc(var(--space-3) + env(safe-area-inset-bottom, 0px));z-index:5;align-self:stretch;width:100%;text-align:center;box-shadow:var(--shadow-overlay)}}.booking-widget__cta:disabled{background:color-mix(in srgb,var(--color-accent) 30%,var(--color-surface-sunken));color:var(--color-ink);cursor:not-allowed}.booking-widget__cta:not(:disabled):hover{opacity:.9}.booking-widget__cta--book{margin-top:var(--space-3)}.booking-widget__breakdown{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .9);border-top:var(--border-hairline) solid var(--color-border);padding-top:var(--space-4);margin:0}.booking-widget__breakdown div{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0}.booking-widget__breakdown dd,.booking-widget__breakdown dt{margin:0;font-weight:400}.booking-widget__breakdown dd{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.booking-widget__total{border-top:var(--border-standard) solid var(--color-border-strong);font-weight:600;font-size:calc(var(--type-scale-base) * 1.05)}.availability-calendar{border:var(--border-hairline) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4)}.availability-calendar__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.availability-calendar__header button{border:var(--border-hairline) solid var(--color-border-strong);background:var(--color-surface);color:var(--color-ink);border-radius:var(--radius-sm);min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;line-height:1;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.availability-calendar__header button:disabled{opacity:.35;cursor:not-allowed}.availability-calendar__header h3{margin:0;font-size:calc(var(--type-scale-base) * 1.05)}.availability-calendar__grid{width:100%;border-collapse:collapse;table-layout:fixed;font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .85)}.availability-calendar__grid th{font-weight:500;color:var(--color-ink-muted);padding-bottom:var(--space-2)}.availability-calendar__grid td{padding:0}.availability-calendar__day{width:100%;aspect-ratio:1;min-height:44px;border:none;background:transparent;border-radius:var(--radius-sm);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:background var(--motion-duration-fast) var(--motion-easing-standard)}@media (hover:none){.availability-calendar__day:not(:disabled):hover{background:transparent}.availability-calendar__day:not(:disabled):active{background:var(--color-accent-soft)}}.availability-calendar__day:disabled{color:var(--color-ink-muted);opacity:.35;cursor:not-allowed}.availability-calendar__day:not(:disabled):hover{background:var(--color-accent-soft)}.availability-calendar__day[data-selected]{background:var(--color-accent);color:var(--color-accent-ink)}.availability-calendar__day[data-in-range]{background:var(--color-accent-soft)}.availability-calendar__price{font-size:.78em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:inherit;opacity:.85;white-space:nowrap;letter-spacing:-.02em}@media (max-width:380px){.availability-calendar__price{display:none}.availability-calendar{padding:var(--space-3)}}.gallery__grid,.rooms__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:var(--space-6);gap:var(--space-6)}.rooms__card{display:flex;flex-direction:column;gap:var(--space-2)}.rooms__card img,.rooms__card-placeholder{width:100%;height:auto;aspect-ratio:4/3;border-radius:var(--radius-md);object-fit:cover;display:block}.rooms__card-placeholder{background:color-mix(in srgb,var(--color-accent) 16%,var(--color-surface))}.rooms__card h3{margin-bottom:0}.rooms__beds{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .85)}.rooms__beds,.rooms__description{color:var(--color-ink-muted);margin:0}.rooms__description{font-size:calc(var(--type-scale-base) * .92)}.amenities__featured{list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:var(--space-2) var(--space-5);gap:var(--space-2) var(--space-5)}.amenities__featured li{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:var(--border-hairline) solid var(--color-border);font-size:calc(var(--type-scale-base) * .92)}.amenities__featured li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-accent);flex:none}.amenities__all{margin-top:var(--space-5)}.amenities__all summary{cursor:pointer;font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .88);color:var(--color-accent)}.amenities__category{margin-top:var(--space-4)}.amenities__category h3{font-size:calc(var(--type-scale-base) * 1.05)}.amenities__note{color:var(--color-ink-muted)}.faq__list{max-width:var(--font-body-measure,68ch);display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4)}.faq__item{border-bottom:var(--border-hairline) solid var(--color-border);padding:var(--space-3) 0}.faq__item summary{cursor:pointer;font-weight:600}.faq__item p{margin-top:var(--space-2);color:var(--color-ink-muted)}.location__area{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .85);letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink-muted)}.location__map-link a{color:var(--color-accent)}.location__registration{font-size:calc(var(--type-scale-base) * .82);color:var(--color-ink-muted)}.gallery__item img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-md);display:block}@media (min-width:720px){.gallery__grid{grid-template-columns:repeat(3,1fr)}.gallery__item:first-child{grid-column:span 2;grid-row:span 2}.gallery__item:first-child img{height:100%;aspect-ratio:auto}}.walkthrough-launcher{position:relative;margin-top:var(--space-4)}.walkthrough-launcher__poster{width:100%;height:auto;aspect-ratio:16/9;border-radius:var(--radius-lg);object-fit:cover;display:block}.walkthrough-launcher__button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-utility-family);font-weight:600;font-size:calc(var(--type-scale-base) * 1);letter-spacing:.01em;background:var(--color-accent);color:var(--color-accent-ink);border:none;border-radius:var(--radius-pill);padding:var(--space-4) var(--space-7);min-height:44px;cursor:pointer;box-shadow:var(--shadow-raised);transition:transform var(--motion-duration-fast) var(--motion-easing-standard)}.walkthrough-launcher__button:hover{transform:translate(-50%,-50%) scale(1.03)}.walkthrough-viewer{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;margin:0;padding:0;border:none;background:var(--color-ink);color:var(--color-ink-inverse)}.walkthrough-viewer::-webkit-backdrop{background:var(--color-scrim)}.walkthrough-viewer::backdrop{background:var(--color-scrim)}.walkthrough-viewer__close{position:absolute;top:var(--space-4);right:var(--space-4);z-index:3;width:44px;height:44px;border-radius:50%;border:none;background:var(--color-overlay);color:var(--color-ink-inverse);font-size:1.4rem;line-height:1;cursor:pointer}.walkthrough-viewer__scene-list{position:absolute;z-index:4;top:var(--space-4);left:var(--space-4);width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.walkthrough-viewer__scene-list:focus-within{position:absolute;width:auto;height:auto;overflow:visible;clip:auto;background:var(--color-overlay);border-radius:var(--radius-md);padding:var(--space-3)}.walkthrough-viewer__scene-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.walkthrough-viewer__scene-list button{min-height:44px;padding:var(--space-2) var(--space-3);background:transparent;border:none;color:var(--color-ink-inverse);text-align:left;cursor:pointer;border-radius:var(--radius-sm)}.walkthrough-viewer__scene-list button[aria-current=true]{background:var(--color-accent);color:var(--color-accent-ink)}.walkthrough-viewer__stage{position:absolute;inset:0;overflow:hidden}.walkthrough-viewer__scene{position:absolute;inset:0}.walkthrough-viewer__scene-image{width:100%;height:100%;object-fit:cover;display:block}@keyframes walkthrough-enter-from-right{0%{opacity:0;transform:translateX(4%)}to{opacity:1;transform:translateX(0)}}@keyframes walkthrough-enter-from-left{0%{opacity:0;transform:translateX(-4%)}to{opacity:1;transform:translateX(0)}}@keyframes walkthrough-exit-to-left{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(-4%)}}@keyframes walkthrough-exit-to-right{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(4%)}}.walkthrough-viewer__scene--current-right{animation:walkthrough-enter-from-right var(--motion-duration-base) var(--motion-easing-standard)}.walkthrough-viewer__scene--current-left{animation:walkthrough-enter-from-left var(--motion-duration-base) var(--motion-easing-standard)}.walkthrough-viewer__scene--leaving-right{animation:walkthrough-exit-to-left var(--motion-duration-base) var(--motion-easing-standard)}.walkthrough-viewer__scene--leaving-left{animation:walkthrough-exit-to-right var(--motion-duration-base) var(--motion-easing-standard)}.walkthrough-viewer__hotspot{position:absolute;z-index:2;transform:translate(-50%,-50%);min-width:44px;min-height:44px;border-radius:50%;border:2px solid var(--color-ink-inverse);background:color-mix(in srgb,var(--color-accent) 85%,transparent);cursor:pointer;display:flex;align-items:center;justify-content:center}.walkthrough-viewer__hotspot--amenity,.walkthrough-viewer__hotspot--info,.walkthrough-viewer__hotspot--media{background:color-mix(in srgb,var(--color-ink) 55%,transparent)}.walkthrough-viewer__hotspot-icon{width:8px;height:8px;border-radius:50%;background:var(--color-ink-inverse)}.walkthrough-viewer__caption{position:absolute;z-index:3;left:50%;bottom:var(--space-6);transform:translateX(-50%);max-width:min(90vw,46ch);background:var(--color-overlay);color:var(--color-ink-inverse);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5)}.walkthrough-viewer__caption-label{font-weight:600;margin:0 0 var(--space-1)}.walkthrough-viewer__caption-body{margin:0;font-size:calc(var(--type-scale-base) * .9);opacity:.9}.walkthrough-viewer__caption button{position:absolute;top:var(--space-2);right:var(--space-2);min-width:32px;min-height:32px;background:transparent;border:none;color:var(--color-ink-inverse);cursor:pointer}.walkthrough-viewer__minimap{position:absolute;z-index:2;right:var(--space-4);bottom:var(--space-4);width:160px}.walkthrough-viewer__minimap-image{width:100%;border-radius:var(--radius-sm);display:block;opacity:.92}.walkthrough-viewer__minimap-marker{position:absolute;width:12px;height:12px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid var(--color-ink-inverse);background:var(--color-accent);cursor:pointer;padding:0}.walkthrough-viewer__minimap-marker[data-current=true]{background:var(--color-ink-inverse)}.trip{max-width:42rem;margin:0 auto;padding:calc(var(--space-8) * 1.4) var(--layout-gutter);gap:var(--space-8)}.trip,.trip__header{display:flex;flex-direction:column}.trip__header{gap:var(--space-2)}.trip__eyebrow{font-size:calc(var(--type-scale-base) * .8);letter-spacing:.06em;text-transform:uppercase}.trip__dates,.trip__eyebrow,.trip__meta,.trip__times{font-family:var(--font-utility-family);color:var(--color-ink-muted);margin:0}.trip__status{display:inline-block;width:-moz-fit-content;width:fit-content;font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .85);font-weight:600;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-accent-soft);color:var(--color-ink)}.trip__status[data-status=cancelled],.trip__status[data-status=declined]{background:color-mix(in srgb,var(--color-danger) 18%,var(--color-surface));color:var(--color-danger)}.trip__ics-link{width:-moz-fit-content;width:fit-content;font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .9);color:var(--color-accent)}.trip__section{border-top:var(--border-hairline) solid var(--color-border);padding-top:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3)}.trip__access{display:grid;grid-gap:var(--space-3);gap:var(--space-3);margin:0;padding:var(--space-5);background:var(--color-surface-raised);border-radius:var(--radius-md)}.trip__access dt{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .78);letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink-muted)}.trip__access dd{margin:0;font-size:calc(var(--type-scale-base) * 1.15);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.trip__access-locked,.trip__refund-preview{color:var(--color-ink-muted)}.trip__refund-preview{font-size:calc(var(--type-scale-base) * .92)}.trip__host-note{font-size:calc(var(--type-scale-base) * .88);color:var(--color-ink-muted)}.install-prompt{position:relative;margin-top:var(--space-6);padding:var(--space-5);background:var(--color-surface-raised);border-radius:var(--radius-md);box-shadow:var(--shadow-raised);max-width:32rem}.install-prompt__title{font-weight:600;margin:0 0 var(--space-2)}.install-prompt button[type=button]:not(.install-prompt__dismiss){margin-top:var(--space-3);font-family:var(--font-utility-family);font-weight:600;background:var(--color-accent);color:var(--color-accent-ink);border:none;border-radius:var(--radius-pill);padding:var(--space-2) var(--space-5);min-height:44px;cursor:pointer}.install-prompt__dismiss{position:absolute;top:var(--space-2);right:var(--space-2);min-width:32px;min-height:32px;background:transparent;border:none;color:var(--color-ink-muted);cursor:pointer}.reviews__aggregate{display:flex;align-items:baseline;gap:var(--space-3);margin-top:var(--space-3);font-size:calc(var(--type-scale-base) * 1.1)}.reviews__stars{color:var(--color-accent);letter-spacing:.05em}.reviews__count{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .85);color:var(--color-ink-muted)}.reviews__subratings{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:var(--space-2) var(--space-5);gap:var(--space-2) var(--space-5);margin-top:var(--space-4);max-width:var(--font-body-measure,68ch)}.reviews__subratings>div{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:var(--border-hairline) solid var(--color-border);font-size:calc(var(--type-scale-base) * .92)}.reviews__subratings dt{color:var(--color-ink-muted)}.reviews__subratings dd{margin:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.reviews__list{list-style:none;padding:0;margin:var(--space-5) 0 0;display:flex;flex-direction:column;gap:var(--space-4);max-width:var(--font-body-measure,68ch)}.reviews__item{padding-bottom:var(--space-4);border-bottom:var(--border-hairline) solid var(--color-border)}.reviews__item:last-child{border-bottom:0}.reviews__item-rating{margin:0 0 var(--space-2)}.reviews__response{margin-top:var(--space-3);padding-left:var(--space-3);border-left:2px solid var(--color-border);color:var(--color-ink-muted);font-size:calc(var(--type-scale-base) * .92)}.site-header{position:relative;z-index:2;background:var(--color-surface);border-bottom:var(--border-hairline) solid var(--color-border)}.site-header__inner{max-width:var(--layout-max-width);margin:0 auto;padding:var(--space-4) var(--layout-gutter);display:flex;align-items:center;gap:var(--space-5)}.site-header__wordmark{font-family:var(--font-display-family);letter-spacing:var(--font-display-tracking,normal);font-size:calc(var(--type-scale-base) * 1.15);color:var(--color-ink);text-decoration:none;margin-right:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.site-header__nav{display:none;gap:var(--space-5)}.site-header__nav a{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .85);letter-spacing:.04em;color:var(--color-ink-muted);text-decoration:none;padding:var(--space-2) 0;border-bottom:var(--border-hairline) solid transparent}.site-header__nav a:hover{color:var(--color-ink);border-bottom-color:var(--color-accent)}.site-header__cta{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .85);letter-spacing:.02em;text-decoration:none;white-space:nowrap;color:var(--color-accent-ink);background:var(--color-accent);border-radius:var(--radius-pill);padding:var(--space-3) var(--space-5);transition:background-color var(--motion-duration-fast) var(--motion-easing-standard)}.site-header__cta:hover{background:color-mix(in srgb,var(--color-accent) 84%,var(--color-ink))}.site-header__skip{position:absolute;left:var(--space-4);top:var(--space-4);transform:translateY(-250%);z-index:3;font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .85);background:var(--color-surface-raised);color:var(--color-ink);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);box-shadow:var(--shadow-raised);text-decoration:none;transition:transform var(--motion-duration-fast) var(--motion-easing-standard)}.site-header__skip:focus-visible{transform:translateY(0)}@media (min-width:720px){.site-header__nav{display:flex}}.site-footer{margin-top:calc(var(--space-8) * 1.4);background:var(--color-surface-sunken);border-top:var(--border-hairline) solid var(--color-border)}.site-footer__inner{max-width:var(--layout-max-width);margin:0 auto;padding:calc(var(--space-8) * 1.1) var(--layout-gutter) var(--space-7);display:grid;grid-gap:var(--space-7);gap:var(--space-7);grid-template-columns:1fr}.site-footer__wordmark{font-family:var(--font-display-family);letter-spacing:var(--font-display-tracking,normal);font-size:calc(var(--type-scale-base) * 1.3);color:var(--color-ink);margin:0 0 var(--space-2)}.site-footer__area,.site-footer__direct-body{color:color-mix(in srgb,var(--color-ink-muted) 70%,var(--color-ink));font-size:calc(var(--type-scale-base) * .9);margin:0;max-width:38ch}.site-footer__direct-lead{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .8);letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb,var(--color-accent) 80%,var(--color-ink));margin:0 0 var(--space-2)}.site-footer__nav{display:flex;flex-direction:column;gap:var(--space-3)}.site-footer__nav a{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .9);color:var(--color-ink);text-decoration:none;width:-moz-fit-content;width:fit-content;border-bottom:var(--border-hairline) solid transparent}.site-footer__nav a:hover{border-bottom-color:var(--color-accent)}.site-footer__legal{max-width:var(--layout-max-width);margin:0 auto;padding:var(--space-5) var(--layout-gutter) calc(var(--space-6) + env(safe-area-inset-bottom, 0px));border-top:var(--border-hairline) solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5)}.site-footer__legal p{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .82);color:color-mix(in srgb,var(--color-ink-muted) 70%,var(--color-ink));margin:0}@media (min-width:720px){.site-footer__inner{grid-template-columns:1.2fr 1.2fr auto;gap:var(--space-8)}}.checkout{max-width:34rem;margin:0 auto;padding:calc(var(--space-8) * 1.2) var(--layout-gutter) calc(var(--space-8) * 1.6);display:flex;flex-direction:column;gap:var(--space-6)}.checkout--empty{min-height:50vh;justify-content:center;align-items:flex-start;gap:var(--space-4)}.checkout__timer{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .85);letter-spacing:.02em;color:var(--color-ink-muted);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);width:-moz-fit-content;width:fit-content}.checkout__panel,.checkout__timer{background:var(--color-surface-raised)}.checkout__panel{border-radius:var(--radius-lg);box-shadow:var(--shadow-raised);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-5)}.checkout__panel h1{margin-bottom:0}.checkout__summary{margin:0;display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-5);border-bottom:var(--border-hairline) solid var(--color-border)}.checkout__summary>div{display:flex;justify-content:space-between;gap:var(--space-4)}.checkout__summary dt{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .78);letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink-muted)}.checkout__summary dd{margin:0;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.checkout__value-prop{font-size:calc(var(--type-scale-base) * .88);color:var(--color-ink-muted);margin:0}.checkout__form label{display:flex;flex-direction:column;gap:var(--space-2);font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .9);color:var(--color-ink)}.checkout__form label:has(input[type=checkbox]){flex-direction:row;align-items:center;gap:var(--space-3);font-size:calc(var(--type-scale-base) * .88)}.checkout__form input:not([type]),.checkout__form input[type=email],.checkout__form input[type=tel],.checkout__form input[type=text]{font-family:var(--font-body-family);font-size:calc(var(--type-scale-base) * .98);color:var(--color-ink);background:var(--color-surface);border:var(--border-standard) solid var(--color-border-strong);border-radius:var(--radius-sm);padding:var(--space-3);min-height:44px}.checkout__form input:not([type]):focus-visible,.checkout__form input[type=email]:focus-visible,.checkout__form input[type=tel]:focus-visible,.checkout__form input[type=text]:focus-visible{border-color:var(--color-accent)}.checkout__form input[type=checkbox]{width:18px;height:18px;flex:none;accent-color:var(--color-accent)}.checkout__cta{font-family:var(--font-utility-family);font-weight:600;font-size:calc(var(--type-scale-base) * .95);letter-spacing:.01em;background:var(--color-accent);color:var(--color-accent-ink);border:none;border-radius:var(--radius-pill);padding:var(--space-3) var(--space-6);min-height:48px;cursor:pointer;align-self:flex-start;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:opacity var(--motion-duration-fast) var(--motion-easing-standard)}.checkout__cta:not(:disabled):hover{opacity:.9}.checkout__cta:disabled{background:color-mix(in srgb,var(--color-accent) 30%,var(--color-surface-sunken));color:var(--color-ink);cursor:not-allowed}.checkout__cta--secondary{background:transparent;color:var(--color-ink);border:var(--border-hairline) solid var(--color-border-strong)}.checkout__cta--secondary:not(:disabled):hover{background:var(--color-accent-soft);opacity:1}.checkout__form>div:has(>.checkout__cta){display:flex;gap:var(--space-3);flex-wrap:wrap}.checkout__alert{padding:var(--space-4);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-danger) 12%,var(--color-surface));color:var(--color-danger);font-size:calc(var(--type-scale-base) * .9)}.checkout__alert p{margin:0 0 var(--space-2);max-width:none}.checkout__alert ul{margin:var(--space-2) 0;padding-left:1.2em}.checkout__alert a{color:inherit;text-decoration:underline}.checkout__link{color:var(--color-accent);font-family:var(--font-utility-family);width:-moz-fit-content;width:fit-content}.checkout--success .checkout__panel p{color:var(--color-ink-muted)}.guide,.guides-index,.landing-page,.legal{max-width:42rem;margin:0 auto;padding:calc(var(--space-8) * 1.4) var(--layout-gutter) calc(var(--space-8) * 1.6)}.guides-index ul{list-style:none;margin:var(--space-5) 0 0;padding:0;display:flex;flex-direction:column}.guides-index li{border-bottom:var(--border-hairline) solid var(--color-border)}.guides-index li a{display:block;padding:var(--space-4) 0;font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * 1.05);color:var(--color-ink);text-decoration:none}.guides-index li a:hover{color:var(--color-accent)}.mdx h2,.mdx h3{margin-top:var(--space-7)}.mdx ol,.mdx ul{max-width:var(--font-body-measure,68ch);margin:0 0 var(--space-4);padding-left:1.3em}.mdx li{margin-bottom:var(--space-2)}.mdx blockquote{margin:var(--space-5) 0;padding-left:var(--space-4);border-left:2px solid var(--color-accent);color:var(--color-ink-muted);font-style:italic}.mdx-image{width:100%;height:auto;border-radius:var(--radius-md);margin:var(--space-5) 0;display:block}.mdx-map-embed{margin:var(--space-4) 0}.mdx-map-embed a{font-family:var(--font-utility-family);font-size:calc(var(--type-scale-base) * .9);color:var(--color-accent)}.offline{max-width:32rem;margin:0 auto;padding:calc(var(--space-8) * 2.2) var(--layout-gutter);text-align:center}.offline p{color:var(--color-ink-muted);margin:0 auto}@media (max-width:700px){.booking-widget{padding:var(--space-5) var(--space-3)}.availability-calendar{padding:var(--space-2)}.availability-calendar__day{aspect-ratio:auto;min-height:48px}}@media (max-width:380px){.availability-calendar{padding:var(--space-1);margin-inline:calc(var(--space-3) * -1);border-left:none;border-right:none;border-radius:0}}:root{--mkt-ink:#171410;--mkt-paper:#faf7f0;--mkt-paper-dim:#f0ebdf;--mkt-line:#e2dbc9;--mkt-muted:#6b6255;--mkt-accent:#b3552e;--mkt-accent-ink:#fff8ef}.mkt{background:var(--mkt-paper);color:var(--mkt-ink);font-family:Avenir Next,Avenir,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.6}.mkt a{color:var(--mkt-accent)}.mkt h1,.mkt h2,.mkt h3{font-family:Georgia,Iowan Old Style,Palatino Linotype,Palatino,serif;font-weight:400;line-height:1.12;text-wrap:balance;margin:0 0 .6em}.mkt__header{border-bottom:1px solid var(--mkt-line)}.mkt__header-inner{max-width:72rem;margin:0 auto;padding:1.1rem 1.5rem;display:flex;align-items:center;justify-content:space-between}.mkt__wordmark{font-family:Georgia,Iowan Old Style,serif;font-size:1.2rem;letter-spacing:.02em;text-decoration:none;color:var(--mkt-ink)}.mkt__header-nav{display:flex;gap:1.5rem;align-items:center}.mkt__header-nav a{font-size:.9rem;text-decoration:none;color:var(--mkt-muted)}.mkt__header-nav a:hover{color:var(--mkt-ink)}.mkt__wrap{max-width:72rem;margin:0 auto;padding-inline:1.5rem}.mkt__section{padding-block:clamp(3rem,7vw,5.5rem)}.mkt__section+.mkt__section{border-top:1px solid var(--mkt-line)}.mkt__eyebrow{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mkt-accent);font-weight:600;margin:0 0 .9rem}.mkt__hero h1{font-size:clamp(2.2rem,5.5vw,3.6rem);max-width:18ch;margin-bottom:1.1rem}.mkt__hero h1 em{font-style:italic;color:var(--mkt-accent)}.mkt__hero p{font-size:clamp(1.05rem,1rem + .4vw,1.25rem);color:var(--mkt-muted);max-width:46ch;margin:0 0 2rem}.mkt__cta-row{display:flex;flex-wrap:wrap;gap:1rem}.mkt .mkt__btn{display:inline-block;font:inherit;font-weight:600;font-size:.95rem;text-decoration:none;padding:.85rem 1.7rem;border-radius:999px;background:var(--mkt-accent);color:var(--mkt-accent-ink);border:1px solid var(--mkt-accent)}.mkt .mkt__btn--ghost{background:transparent;color:var(--mkt-ink);border:1px solid var(--mkt-line)}.mkt__section-head{margin-bottom:clamp(2rem,4vw,3rem)}.mkt__section-head h2{font-size:clamp(1.7rem,3.6vw,2.4rem);max-width:22ch}.mkt__section-head p{color:var(--mkt-muted);max-width:52ch;margin:0}.mkt__costs{display:grid;grid-gap:1px;gap:1px;background:var(--mkt-line);border:1px solid var(--mkt-line);border-radius:4px;overflow:hidden}@media (min-width:760px){.mkt__costs{grid-template-columns:repeat(3,1fr)}}.mkt__cost{background:var(--mkt-paper);padding:clamp(1.5rem,3vw,2.1rem)}.mkt__cost h3{font-size:1.15rem;margin-bottom:.5rem}.mkt__cost p{color:var(--mkt-muted);font-size:.95rem;margin:0}.mkt__tiers{display:grid;grid-gap:1.5rem;gap:1.5rem}@media (min-width:780px){.mkt__tiers{grid-template-columns:repeat(2,1fr)}}.mkt__tier{border:1px solid var(--mkt-line);border-radius:6px;padding:clamp(1.75rem,3.5vw,2.5rem);background:var(--mkt-paper);display:flex;flex-direction:column;gap:1.25rem}.mkt__tier--pro{border-color:var(--mkt-accent);background:var(--mkt-paper-dim);position:relative}.mkt__tier-badge{position:absolute;top:-.7rem;left:clamp(1.75rem,3.5vw,2.5rem);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;background:var(--mkt-accent);color:var(--mkt-accent-ink);padding:.3rem .7rem;border-radius:999px}.mkt__tier-name{font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--mkt-muted);font-weight:600;margin:0}.mkt__tier-price{font-family:Georgia,Iowan Old Style,serif;font-size:2.6rem;line-height:1;margin:0}.mkt__tier-price span{font-family:inherit;font-size:.95rem;color:var(--mkt-muted);font-weight:400}.mkt__tier-for{font-size:.9rem;color:var(--mkt-muted);margin:0}.mkt__tier-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.55rem;gap:.55rem}.mkt__tier-list li{font-size:.93rem;color:var(--mkt-ink);padding-left:1.3rem;position:relative}.mkt__tier-list li:before{content:"";position:absolute;left:0;top:.5em;width:8px;height:4px;border-left:1.5px solid var(--mkt-accent);border-bottom:1.5px solid var(--mkt-accent);transform:rotate(-45deg)}.mkt__tier .mkt__btn{align-self:flex-start;margin-top:auto}.mkt__note{font-size:.85rem;color:var(--mkt-muted);margin-top:1rem;max-width:60ch}.mkt__close{text-align:center;background:var(--mkt-ink);color:var(--mkt-paper)}.mkt__close h2{color:var(--mkt-paper);margin:0 auto 1rem;max-width:20ch}.mkt__close p{color:#cfc7b8;max-width:42ch;margin:0 auto 1.75rem}.mkt__close .mkt__cta-row{justify-content:center}.mkt__close .mkt__btn--ghost{color:var(--mkt-paper);border-color:#4a4438}.mkt__footer{border-top:1px solid var(--mkt-line);padding-block:2rem}.mkt__footer-inner{max-width:72rem;margin:0 auto;padding-inline:1.5rem;display:flex;flex-wrap:wrap;gap:.75rem 2rem;justify-content:space-between;font-size:.85rem;color:var(--mkt-muted)}@media (prefers-reduced-motion:reduce){.mkt *{transition-duration:.01ms!important;animation-duration:.01ms!important}}