:root{--viewport-min:20rem;--viewport-max:90rem;--swatch--cream:oklch(92.13% .0277 67.47);--swatch--cream-2:oklch(91.42% .0281 70.93);--swatch--ink:oklch(26.84% .0473 20.68);--swatch--muted:oklch(41.36% .033 32.48);--swatch--burgundy:oklch(40.04% .0991 22.62);--swatch--burgundy-deep:oklch(34.2% .0826 22.44);--swatch--burgundy-ink:oklch(22.62% .0395 20.64);--swatch--sage:oklch(66.44% .0371 103.73);--swatch--gold:oklch(74.39% .0613 66.65);--swatch--amber:oklch(76.86% .1647 70.08);--swatch--film:oklch(21.31% .0265 19.49);--swatch--film-edge:oklch(18.06% .0207 19.28);--swatch--frame-border:oklch(93.42% .0245 71.46);--swatch--frame-fill:oklch(89.75% 0 0);--swatch--paper:oklch(97.01% .0141 74.43);--swatch--peach:oklch(83.79% .0943 42.55);--swatch--glow:oklch(96.81% .0409 90.24);--font--display:"Literata", Georgia, serif;--font--body:"Be Vietnam Pro", system-ui, sans-serif;--space--1:.25rem;--space--2:.5rem;--space--3:.75rem;--space--4:1rem;--space--5:1.25rem;--space--6:1.5rem;--space--8:2rem;--space--9:2.25rem;--space--10:2.5rem;--space--12:3rem;--space--16:4rem;--space--24:6rem;--size--2:.5rem;--size--3:.625rem;--size--4:.75rem;--size--5:.875rem;--size--6:1rem;--size--7:1.125rem;--size--8:1.25rem;--size--9:1.5rem;--size--10:1.75rem;--size--11:2rem;--size--12:2.25rem;--size--13:2.5rem;--size--14:3rem;--size--touch:2.75rem;--size--header:3.5rem;--theme--background:var(--swatch--cream);--theme--text:var(--swatch--ink);--theme--text-muted:var(--swatch--muted);--theme--heading:var(--swatch--burgundy);--theme--accent:var(--swatch--gold);--theme--focus:var(--swatch--sage);--theme--action:var(--swatch--burgundy);--theme--action-hover:var(--swatch--burgundy-deep);--theme--on-action:var(--swatch--cream);--theme--print:var(--swatch--paper);--theme--inverse-bg:var(--swatch--burgundy);--theme--inverse-text:var(--swatch--cream);--theme--footer-bg:var(--swatch--burgundy-ink);--theme--film:var(--swatch--film);--theme--amber:var(--swatch--amber);--theme--sage:var(--swatch--sage);--theme--hero-bg:var(--swatch--burgundy-ink);--theme--hero-text:var(--swatch--paper);--theme--hero-muted:color-mix(in oklch, var(--swatch--cream) 76%, var(--swatch--gold));--theme--hero-accent:var(--swatch--peach);--theme--hero-glow:color-mix(in oklch, var(--swatch--burgundy) 64%, transparent);--text--body:var(--size--6);--text--body-lh:1.6;--text--display:clamp(2.25rem, 5.4vw, 4.25rem);--text--hero:clamp(3rem, 6vw, 5.5rem);--text--booking:clamp(2rem, 4vw, 3.75rem);--text--h2:clamp(1.75rem, 4vw, 3rem);--text--h3:clamp(2rem, 4vw, 2.75rem);--text--panel:2rem;--text--kicker:.6875rem;--text--caption:var(--size--4);--text--note:.8125rem;--text--nav:var(--size--5);--text--fine:var(--size--4);--text--meta:.625rem;--site-width:77.5rem;--site-margin:var(--space--6);--nav-height:var(--size--header);--section-space--main:clamp(4rem, 3.1rem + 2.7vw, 5.5rem);--section-space--large:clamp(4rem, 2.9rem + 3.5vw, 6rem);--section-space:var(--section-space--main);--space-component-2xs:var(--space--1);--space-component-xs:var(--space--2);--space-component-sm:var(--space--3);--space-component-md:var(--space--4);--space-component-lg:var(--space--6);--space-component-xl:var(--space--8);--space-layout-xs:var(--space--4);--space-layout-sm:var(--space--6);--space-layout-md:var(--space--8);--space-layout-lg:var(--space--12);--space-layout-xl:var(--space--16);--space-layout-2xl:var(--space--24);--space-layout-section:var(--section-space);--space-layout-gutter:var(--space--6);--grid-columns:12;--grid-gutter:var(--space-layout-gutter);--grid-margin:var(--site-margin);--radius--print:2px;--radius--control:var(--size--2);--radius--pill:999px;--radius--dialog:.75rem;--radius--menu:var(--size--6);--radius--film:.625rem;--radius--card:var(--space--4);--shadow--print:0 18px 50px color-mix(in oklch, var(--theme--footer-bg) 28%, transparent);--shadow--print-lift:0 28px 64px color-mix(in oklch, var(--theme--footer-bg) 34%, transparent);--shadow--film:0 24px 48px color-mix(in oklch, var(--theme--footer-bg) 18%, transparent);--shadow--hero-card:0 1.5rem 3rem color-mix(in oklch, var(--theme--hero-bg) 55%, transparent);--duration:.22s;--ease:cubic-bezier(.22, 1, .36, 1);--z--header:50;--z--menu:40;--z--dialog:60;--z--skip:100}@media (width<=1024px){:root{--grid-columns:8}}@media (width<=767px){:root{--nav-height:5.75rem;--size--header:3.5rem;--site-margin:var(--space--4);--grid-columns:4}}.u-skip{top:var(--space--2);left:var(--space--2);z-index:var(--z--skip);background:var(--theme--background);color:var(--theme--heading);padding:var(--space--3) var(--space--4);border-radius:var(--radius--control);font-weight:600;text-decoration:none;position:fixed;transform:translateY(-180%)}.u-skip:focus{transform:none}.u-container{width:min(var(--site-width), calc(100% - var(--grid-margin) * 2));margin-inline:auto;container:main/inline-size}.u-grid{grid-template-columns:repeat(var(--grid-columns), minmax(0, 1fr));column-gap:var(--grid-gutter);row-gap:var(--space-layout-md);display:grid}.u-section{padding-block-start:var(--section-space-start,var(--space-layout-section));padding-block-end:var(--section-space-end,var(--space-layout-section))}.u-kicker{align-items:center;gap:var(--space--3);font-size:var(--text--kicker);color:var(--theme--heading);font-weight:650;display:inline-flex}.u-kicker:before{content:"";width:var(--space--8);background:currentColor;height:1px}.u-caption{font-size:var(--text--caption);color:var(--theme--text-muted)}.button{justify-content:center;align-items:center;gap:var(--space--2);min-height:var(--space--12);padding:var(--space--3) var(--space--6);border-radius:var(--radius--pill);font-weight:600;font-size:var(--text--body);transition:background-color var(--duration) var(--ease), color var(--duration) var(--ease), border-color var(--duration) var(--ease), transform var(--duration) var(--ease), opacity var(--duration) var(--ease);border:1px solid #0000;text-decoration:none;display:inline-flex}.button_arrow{width:var(--size--6);height:var(--size--6);transition:transform var(--duration) var(--ease)}.button_primary,.button_ink{background:var(--theme--action);color:var(--theme--on-action);border-color:var(--theme--action)}.button_ghost{color:var(--theme--heading);border-color:color-mix(in srgb, var(--theme--heading) 42%, transparent);background:0 0}.button_outline{color:var(--theme--heading);border-color:color-mix(in srgb, var(--theme--heading) 45%, var(--theme--background));background:0 0}.button:active{transform:translateY(1px)}@media (hover:hover){.button_primary:hover,.button_ink:hover{background:var(--theme--action-hover);border-color:var(--theme--action-hover)}.button_ghost:hover{background:color-mix(in srgb, var(--theme--heading) 8%, transparent)}.button_outline:hover{border-color:var(--theme--heading)}.button:hover .button_arrow{transform:translate(3px)}}.header_wrap{z-index:var(--z--header);border-bottom:1px solid color-mix(in oklch, var(--theme--heading) 10%, transparent);background:var(--theme--print);transition:background-color var(--duration) var(--ease), border-color var(--duration) var(--ease), backdrop-filter var(--duration) var(--ease);position:sticky;top:0}.header_wrap.is-scrolled{background:color-mix(in oklch, var(--theme--background) 82%, transparent);border-bottom-color:color-mix(in oklch, var(--theme--heading) 12%, transparent)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.header_wrap.is-scrolled{background:color-mix(in oklch, var(--theme--background) 55%, transparent);-webkit-backdrop-filter:blur(16px)}}.header_nav{justify-content:space-between;align-items:center;gap:var(--space--4);min-height:var(--nav-height);display:flex}.header_start{align-items:center;gap:var(--space--5);min-width:0;display:flex}.header_brand{min-height:var(--size--touch);padding:var(--space--2);border-radius:var(--radius--control);align-items:center;text-decoration:none;display:inline-flex}.header_nav .header_brand{min-height:0}.header_logo{object-fit:contain;width:4.5rem;height:4rem}.header_nav .header_logo{width:auto;height:2rem}.header_links{align-items:center;gap:var(--space--1);display:flex}.header_item{position:relative}.header_trigger,.header_plain{align-items:center;gap:var(--space--1);min-height:var(--space--9);padding:var(--space--2) var(--space--4);border-radius:var(--radius--control);color:var(--theme--heading);font-size:var(--text--nav);letter-spacing:.04em;background:0 0;font-weight:500;text-decoration:none;display:inline-flex}.header_chevron{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem;transition:transform var(--duration) var(--ease)}.header_trigger[aria-expanded=true] .header_chevron{transform:rotate(180deg)}.header_panel{top:calc(100% + var(--space--2));z-index:1;min-width:min(32rem, calc(100vw - var(--space--8)));padding:var(--space--1);background:var(--theme--background);border-radius:var(--radius--control);position:absolute;left:0}.header_grid,.header_stack{gap:var(--space--2);padding:var(--space--2);background:var(--theme--print);border:1px solid color-mix(in oklch, var(--theme--heading) 12%, transparent);border-radius:var(--radius--control);box-shadow:var(--shadow--print);margin:0;list-style:none;display:grid}.header_grid{grid-template-columns:1fr 1fr}.header_panel_split{gap:var(--space--2);min-width:min(36rem, calc(100vw - var(--space--8)));grid-template-columns:1fr 1fr;display:grid}.header_panel_split .header_stack{min-width:0}.header_aside{align-content:start;gap:var(--space--2);padding:var(--space--3);margin:0;list-style:none;display:grid}.header_card,.header_mini{align-items:center;gap:var(--space--2);width:100%;padding:var(--space--2);border-radius:var(--radius--control);color:var(--theme--heading);text-decoration:none;display:flex}.header_card_icon,.header_mini_icon{color:var(--theme--heading);flex:none;place-items:center;display:grid}.header_card_icon{border-radius:var(--radius--control);border:1px solid color-mix(in oklch, var(--theme--heading) 14%, transparent);background:color-mix(in oklch, var(--theme--print) 80%, var(--theme--background));width:3rem;height:3rem;box-shadow:0 1px 2px color-mix(in oklch, var(--theme--footer-bg) 10%, transparent)}.header_card_icon:before,.header_mini_icon:before{content:"";width:1.25rem;height:1.25rem;mask:var(--icon) center / contain no-repeat;-webkit-mask:var(--icon) center / contain no-repeat;background:currentColor}.header_mini_icon,.header_mini_icon:before{width:1rem;height:1rem}[data-icon=camera]{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='M14.5 4h-5L7 7H4a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-3l-2.5-3z'/%3E%3Ccircle cx='12' cy='13' r='3'/%3E%3C/svg%3E")}[data-icon=user]{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E")}[data-icon=images]{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Crect width='18' height='18' x='3' y='3' rx='2'/%3E%3Ccircle cx='9' cy='9' r='2'/%3E%3Cpath d='m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21'/%3E%3C/svg%3E")}[data-icon=calendar]{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='M8 2v4M16 2v4M3 10h18'/%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3C/svg%3E")}[data-icon=help]{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3M12 17h.01'/%3E%3C/svg%3E")}[data-icon=phone]{--icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' viewBox='0 0 24 24'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.127.96.361 1.903.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E")}.header_card_copy{justify-content:center;align-items:flex-start;gap:var(--space--1);flex-direction:column;min-width:0;display:flex}.header_card_copy strong{font-weight:600;font-size:var(--text--nav)}.header_card_copy span{color:var(--theme--text-muted);font-size:var(--text--caption);line-height:1.35}.header_mini{font-weight:500;font-size:var(--text--nav)}.header_footnote{padding:var(--space--2);color:var(--theme--text-muted);font-size:var(--text--caption);margin:0}.header_footnote a{color:var(--theme--heading);font-weight:600;text-decoration:none}.header_cta{align-items:center;gap:var(--space--2);display:flex}.header_cta .button{min-height:var(--space--9);padding:var(--space--2) var(--space--4);font-size:var(--text--nav)}.header_phone_bar{justify-content:center;align-items:center;gap:var(--space--2);min-height:var(--space--9);padding:var(--space--1) var(--site-margin);background:color-mix(in oklch, var(--theme--print) 70%, var(--theme--background));color:var(--theme--heading);font-weight:700;font-size:var(--text--nav);letter-spacing:.02em;border-bottom:1px solid color-mix(in oklch, var(--theme--heading) 10%, transparent);text-decoration:none;display:none}.header_phone{align-items:center;gap:var(--space--2);min-height:var(--size--touch);padding-inline:var(--space--2);color:var(--theme--heading);font-weight:700;font-size:var(--text--nav);white-space:nowrap;text-decoration:none;display:inline-flex}.header_phone_icon{background:var(--theme--heading);width:1.75rem;height:1.75rem;color:var(--theme--print);border-radius:50%;flex:none;place-items:center;display:grid}.header_phone_icon svg{fill:currentColor;width:.9rem;height:.9rem}.header_toggle{width:2.25rem;height:2.25rem;color:var(--theme--heading);border:1px solid color-mix(in srgb, var(--theme--heading) 28%, transparent);border-radius:var(--radius--control);justify-content:center;align-items:center;display:none}.header_toggle svg{stroke:currentColor;fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;width:1.25rem;height:1.25rem;transition:transform .3s ease-in-out}.header_toggle.is-open svg{transform:rotate(-45deg)}.header_toggle_loop{stroke-dasharray:12 63;transition:stroke-dasharray .3s ease-in-out,stroke-dashoffset .3s ease-in-out}.header_toggle.is-open .header_toggle_loop{stroke-dasharray:20 300;stroke-dashoffset:-32.42px}.header_drawer{top:var(--nav-height);z-index:var(--z--menu);isolation:isolate;background:var(--theme--background);border-top:1px solid color-mix(in oklch, var(--theme--heading) 10%, transparent);visibility:hidden;pointer-events:none;display:none;position:fixed;bottom:0;left:0;right:0;overflow:hidden}.header_drawer.is-open{visibility:visible;pointer-events:auto}.header_drawer_body{justify-content:space-between;gap:var(--space--4);height:100%;padding:var(--space--4);flex-direction:column;display:flex;overflow:auto}.header_drawer_groups{gap:var(--space--2);flex-direction:column;display:flex}.header_drawer_label{margin:var(--space--3) 0 var(--space--1);color:var(--theme--text-muted);font-size:var(--text--caption)}.header_drawer_label:first-child{margin-top:0}.header_drawer_actions{gap:var(--space--2);display:grid}.header_drawer_actions .button{width:100%}body.is-menu-open{overflow:hidden}.hero_wrap{isolation:isolate;min-height:clamp(42rem, calc(100dvh - var(--nav-height)), 58rem);padding:var(--space--8) var(--site-margin) var(--space--12);background:radial-gradient(64% 48% at 50% 18%, var(--theme--hero-glow), transparent 72%), var(--theme--hero-bg);color:var(--theme--hero-text);align-items:center;display:grid;position:relative;overflow:hidden}.hero_stage{z-index:3;gap:clamp(var(--space--8), 5vw, var(--space--16));width:min(var(--site-width), 100%);grid-template-columns:minmax(0,1.05fr) minmax(22rem,26.5rem);align-items:start;margin-inline:auto;display:grid;position:relative}.hero_copy{z-index:3;max-width:38rem;padding:var(--space--4) var(--space--8) var(--space--4) 0;text-align:left;position:relative}.hero_copy:before{content:"";inset:calc(-1 * var(--space--6)) 10% calc(-1 * var(--space--6)) calc(-1 * var(--space--10));z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 18% 42%, var(--theme--hero-bg) 46%, transparent 78%);position:absolute}.hero_kicker{margin:0 0 var(--space--4);color:var(--theme--hero-muted);font-size:var(--text--kicker);letter-spacing:.14em;text-transform:uppercase;font-weight:650}.hero_wrap h1{color:var(--theme--hero-text);font-family:var(--font--display);letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(2.25rem,4.4vw,3.75rem);font-weight:600;line-height:1.04}.hero_wrap h1 span{color:var(--theme--hero-accent);display:block}.hero_sub{max-width:36ch;margin:var(--space--4) 0 var(--space--6);color:var(--theme--hero-muted);font-size:var(--text--body);font-weight:450;line-height:1.45}.hero_fud{max-width:40ch;margin:var(--space--4) 0 0;color:var(--theme--hero-muted);font-size:var(--text--note);line-height:1.5}.hero_ai{max-width:42ch;margin:var(--space--3) 0 0;color:color-mix(in oklch, var(--theme--hero-muted) 72%, var(--theme--hero-bg));font-size:var(--text--caption);line-height:1.45}.hero_capture{z-index:4;max-height:calc(100dvh - var(--nav-height) - var(--space--8));scroll-margin-top:calc(var(--nav-height) + var(--space--4));border-radius:var(--radius--card);box-shadow:var(--shadow--hero-card);position:relative;overflow:auto}.button_hero{min-height:var(--space--12);padding:var(--space--3) var(--space--6);background:var(--theme--hero-text);border-color:var(--theme--hero-text);color:var(--theme--hero-bg);box-shadow:0 10px 28px color-mix(in oklch, var(--theme--hero-bg) 45%, transparent);white-space:nowrap}.hero_marquee{z-index:1;pointer-events:none;opacity:.22;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#00000059 0%,#0000002e 46%,#0000 72%);mask-image:linear-gradient(90deg,#00000059 0%,#0000002e 46%,#0000 72%)}.hero_marquee_track{align-items:flex-start;gap:var(--space--4);will-change:transform;width:max-content;height:100%;padding-top:16%;animation:40s linear infinite hero-marquee;display:flex}.hero_frame{aspect-ratio:3/4;border-radius:var(--radius--card);box-shadow:var(--shadow--hero-card);flex:0 0 clamp(8.75rem,14vw,13rem);overflow:hidden;transform:rotate(-2deg)}.hero_frame:nth-child(2n){transform:translateY(var(--space--2)) rotate(5deg)}.hero_frame img{object-fit:cover;width:100%;height:100%}.hero_motion_toggle{right:var(--space--6);bottom:var(--space--6);z-index:4;width:var(--size--touch);height:var(--size--touch);background:var(--theme--hero-text);color:var(--theme--hero-bg);box-shadow:var(--shadow--hero-card);transition:background-color var(--duration) var(--ease), transform var(--duration) var(--ease);border:0;border-radius:50%;place-items:center;display:inline-grid;position:absolute}.hero_motion_toggle svg{width:var(--size--6);height:var(--size--6);fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;grid-area:1/1}.hero_motion_play,.hero_motion_toggle[aria-pressed=true] .hero_motion_pause{display:none}.hero_motion_toggle[aria-pressed=true] .hero_motion_play{display:block}.hero_marquee.is-paused .hero_marquee_track{animation-play-state:paused}.hero_copy>*{animation:hero-in .6s var(--ease)}.hero_copy>:nth-child(2){animation-delay:80ms}.hero_copy>:nth-child(3){animation-delay:.16s}.hero_copy>:nth-child(4){animation-delay:.24s}.hero_copy>:nth-child(5){animation-delay:.32s}@keyframes hero-in{0%{transform:translateY(var(--space--3))}to{transform:none}}@keyframes hero-marquee{to{transform:translate3d(calc(-50% - var(--space--2)), 0, 0)}}@media (hover:hover){.button_hero:hover,.hero_motion_toggle:hover{background:var(--theme--hero-accent);border-color:var(--theme--hero-accent)}.hero_motion_toggle:hover{transform:scale(1.05)}}@media (width<=1024px){.hero_stage{grid-template-columns:1fr;align-items:start}.hero_capture{max-height:none}.hero_motion_toggle{display:none}.hero_marquee{opacity:.2;-webkit-mask-image:linear-gradient(#0000 0%,#000 28% 100%);mask-image:linear-gradient(#0000 0%,#000 28% 100%)}}@media (width<=767px){.hero_wrap{min-height:0;padding-block:var(--space--8) var(--space--12)}.hero_wrap h1{font-size:clamp(2.25rem,11vw,3.25rem);line-height:1}.hero_props{margin-block:var(--space--5) var(--space--6)}.button_hero{width:100%}.hero_copy{padding-right:0}.hero_copy:before{inset:calc(-1 * var(--space--2)) 0 0;background:linear-gradient(180deg, var(--theme--hero-bg) 0%, color-mix(in oklch, var(--theme--hero-bg) 82%, transparent) 72%, transparent 100%)}.hero_marquee{opacity:.12}.hero_marquee_track{gap:var(--space--3);animation-duration:32s}.hero_frame{flex-basis:8.75rem}}.film_wrap{background:linear-gradient(180deg, color-mix(in srgb, var(--theme--print) 62%, transparent), color-mix(in srgb, var(--theme--background) 24%, transparent));border-block:1px solid color-mix(in srgb, var(--theme--sage) 32%, transparent)}.film_head{gap:var(--space--6);margin-bottom:var(--space--9);grid-template-columns:1fr minmax(0,42ch);align-items:end;display:grid}.film_wrap h2,.doors_wrap h2,.ritual_wrap h2,.faq_wrap h2{font-family:var(--font--display);font-weight:500;font-size:var(--text--h2);letter-spacing:-.03em;color:var(--theme--heading);max-width:16ch;line-height:1.12}.film_head p{color:var(--theme--text)}.film_designer{gap:var(--space--8);padding:var(--space--3);background:color-mix(in oklch, var(--theme--print) 70%, transparent);border:1px solid color-mix(in oklch, var(--theme--accent) 34%, transparent);border-radius:var(--radius--card);grid-template-columns:minmax(0,1.4fr) minmax(260px,.7fr);align-items:stretch;display:grid}.film_strip{background:var(--theme--film);border:1px solid color-mix(in srgb, var(--theme--accent) 25%, transparent);border-radius:var(--radius--card);padding:var(--space--4) 0;box-shadow:var(--shadow--film);overflow:hidden}.film_track{gap:var(--space--5);scroll-snap-type:x mandatory;padding:0 var(--space--5) var(--space--3);scrollbar-width:thin;overscroll-behavior-x:contain;display:flex;overflow-x:auto}.film_sprockets{height:var(--size--5);margin:0 var(--space--3) var(--space--3);background:repeating-linear-gradient(to right, transparent 0 10px, var(--theme--background) 10px 22px, transparent 22px 34px);opacity:.88;border-radius:var(--radius--print)}.film_sprockets_bottom{margin:var(--space--3) var(--space--3) 0}.film_frame{scroll-snap-align:start;gap:var(--space--2);width:148px;color:var(--theme--on-action);text-align:left;flex:none;padding:0;display:grid}.film_frame img{object-fit:cover;border:3px solid var(--swatch--frame-border);background:var(--swatch--frame-fill);width:148px;height:196px;transition:transform var(--duration) var(--ease), opacity var(--duration) var(--ease)}.film_frame[aria-selected=false] img{opacity:.72}.film_frame[aria-selected=true] img{outline:2px solid var(--theme--accent);outline-offset:2px;opacity:1}.film_frame_meta{justify-content:center;gap:var(--space--2);font-size:var(--text--meta);color:color-mix(in oklch, var(--theme--on-action) 70%, var(--theme--accent));display:flex}.film_mood,.door_mood,.dialog_mood{margin-bottom:var(--space--2);color:var(--theme--sage);font-size:var(--text--note);font-weight:600;display:inline-block}.film_panel{background:color-mix(in oklch, var(--theme--background) 82%, var(--theme--print));border:1px solid color-mix(in srgb, var(--theme--sage) 42%, transparent);border-radius:var(--radius--card);padding:clamp(var(--space--6), 3vw, var(--space--9));align-content:center;gap:var(--space--4);min-height:100%;display:grid}.film_panel h3{font-family:var(--font--display);font-size:var(--text--panel);color:var(--theme--heading);font-weight:500}.film_panel p{color:var(--theme--text)}.film_actions{gap:var(--space--3);margin-top:var(--space--2);flex-wrap:wrap;display:flex}.doors_wrap{--section-space:var(--section-space--large);background:linear-gradient(180deg, color-mix(in srgb, var(--theme--print) 45%, transparent), transparent 18% 86%, color-mix(in srgb, var(--theme--sage) 14%, transparent));border-block:1px solid color-mix(in srgb, var(--theme--sage) 28%, transparent);position:relative}.doors_intro{gap:var(--space--8);grid-template-columns:minmax(0,1fr) minmax(18rem,36rem);align-items:end;display:grid}.doors_intro>p{max-width:52ch;color:var(--theme--text-muted);justify-self:end}.doors_stack{gap:clamp(var(--space--12), 8vh, var(--space--24));margin-top:clamp(var(--space--12), 7vw, var(--space--24));display:grid}.door{top:calc(var(--nav-height) + var(--space--4) + var(--door-index) * var(--space--3));min-width:0;min-height:clamp(31rem,66vh,40rem);padding:clamp(var(--space--6), 4vw, var(--space--16));gap:clamp(var(--space--8), 5vw, var(--space--24));isolation:isolate;border:1px solid color-mix(in oklch, currentColor 18%, transparent);border-radius:var(--radius--card);grid-template-columns:minmax(17rem,.78fr) minmax(24rem,1.22fr);align-items:center;display:grid;position:sticky;overflow:hidden}.door:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(115deg, color-mix(in oklch, var(--theme--hero-text) 10%, transparent), transparent 34%);position:absolute;inset:0}.door_photobooth{background:var(--theme--inverse-bg);color:var(--theme--inverse-text)}.door_self{background:color-mix(in srgb, var(--theme--sage) 31%, var(--theme--print));color:var(--theme--text)}.door_booking{background:var(--theme--print);color:var(--theme--text);border-color:color-mix(in srgb, var(--theme--accent) 70%, transparent)}.door_copy{z-index:2;align-content:center;justify-items:start;gap:var(--space--4);display:grid;position:relative}.door_count{min-height:2rem;padding-inline:var(--space--4);border-radius:var(--radius--pill);font-size:var(--text--meta);letter-spacing:.16em;opacity:.72;border:1px solid;align-items:center;font-weight:700;display:inline-flex}.door h3{max-width:10ch;font-family:var(--font--display);letter-spacing:-.045em;font-size:clamp(2.5rem,5vw,4.75rem);font-weight:500;line-height:.98}.door p{color:currentColor;opacity:.82;max-width:40ch}.door_photobooth h3,.door_photobooth .door_mood{color:var(--theme--inverse-text)}.door_photobooth .button_ghost{color:var(--theme--inverse-text);border-color:color-mix(in srgb, var(--theme--inverse-text) 48%, transparent)}.door_self h3,.door_booking h3{color:var(--theme--heading)}.door_actions{gap:var(--space--3);margin-top:var(--space--2);flex-wrap:wrap;display:flex}.button_text{min-height:var(--size--touch);padding-inline:var(--space--3);color:currentColor;border-bottom:1px solid;border-radius:0}.door_visual{border-radius:var(--radius--card);width:100%;min-height:clamp(25rem,52vh,34rem);color:inherit;padding:0;position:relative}.door_photo,.door_strip{background:var(--theme--print);box-shadow:var(--shadow--print);transition:transform var(--duration) var(--ease), box-shadow var(--duration) var(--ease);display:block;position:absolute}.door_photo{width:46%;padding:var(--space--2) var(--space--2) var(--space--8)}.door_photo img{aspect-ratio:.744;object-fit:cover;width:100%}.door_photo_main{z-index:2;top:7%;left:9%;transform:rotate(-5deg)}.door_photo_back{z-index:1;top:17%;right:9%;transform:rotate(6deg)}.door_strip{z-index:3;width:23%;padding:var(--space--2) var(--space--2) var(--space--6);bottom:2%;right:1%;transform:rotate(3deg)}.door_strip img{object-fit:cover;object-position:top;width:100%;max-height:22rem}.door_self .door_photo_main{transform:rotate(5deg)}.door_self .door_photo_back{transform:rotate(-6deg)}.door_self .door_strip{left:1%;right:auto;transform:rotate(-3deg)}.door_schedule{padding:clamp(var(--space--4), 3vw, var(--space--8));border:1px solid color-mix(in oklch, var(--theme--heading) 18%, transparent);border-radius:var(--radius--card);background:radial-gradient(circle at 80% 12%, color-mix(in oklch, var(--theme--accent) 34%, transparent), transparent 42%), color-mix(in oklch, var(--theme--background) 54%, var(--theme--print));align-content:center;align-self:stretch;display:grid}.door_schedule div{gap:var(--space--5);border-bottom:1px solid color-mix(in srgb, var(--theme--heading) 18%, transparent);grid-template-columns:4.5rem 1fr;align-items:center;min-height:6.75rem;display:grid}.door_schedule div:last-child{border-bottom:0}.door_schedule b{font-family:var(--font--display);color:var(--theme--heading);font-size:2.5rem;font-weight:500}.door_schedule span{font-weight:600}.door.is-active{border-color:color-mix(in srgb, var(--theme--accent) 88%, transparent)}.doors_note{margin-top:var(--space--5);text-align:center}@media (hover:hover){.door_visual:hover .door_photo_main,.door_visual:focus-visible .door_photo_main{z-index:4;box-shadow:var(--shadow--print-lift);transform:translateY(-.5rem)rotate(-2deg)}.door_self .door_visual:hover .door_photo_main,.door_self .door_visual:focus-visible .door_photo_main{transform:translateY(-.5rem)rotate(2deg)}}.ritual_wrap{background:radial-gradient(circle at 84% 14%, color-mix(in srgb, var(--theme--accent) 18%, transparent), transparent 34%), var(--theme--inverse-bg);color:var(--theme--inverse-text);position:relative;overflow:hidden}.ritual_wrap h2,.ritual_wrap .u-kicker{color:var(--theme--inverse-text)}.ritual_lead{max-width:48ch;margin:var(--space--4) 0 var(--space--8);color:color-mix(in srgb, var(--theme--inverse-text) 78%, var(--theme--accent))}.ritual_lead a{color:var(--theme--inverse-text);text-underline-offset:.2em;text-decoration-thickness:1px}.ritual_layout{gap:var(--space--10);grid-template-columns:minmax(0,1.05fr) minmax(17.5rem,.95fr);align-items:start;display:grid}.ritual_steps{gap:var(--space--4);grid-column:1/-1;grid-template-columns:repeat(3,1fr);display:grid}.ritual_step{align-content:start;gap:var(--space--5);min-height:11rem;padding:var(--space--5);border:1px solid color-mix(in srgb, var(--theme--accent) 34%, transparent);border-radius:var(--radius--card);background:color-mix(in srgb, var(--theme--footer-bg) 22%, transparent);display:grid}.ritual_step b{font-family:var(--font--display);color:var(--theme--accent);font-size:2.25rem;font-weight:500}.ritual_step p{color:color-mix(in srgb, var(--theme--inverse-text) 82%, var(--theme--accent))}.book_form,.ritual_form{background:var(--theme--print);color:var(--theme--text);padding:var(--space--8);border-radius:var(--radius--card);box-shadow:var(--shadow--film);border:0;position:relative}.book_form h3,.ritual_form h3{font-family:var(--font--display);font-weight:500;font-size:var(--text--h3);color:var(--theme--heading);margin:0 0 var(--space--3);line-height:1.15}.book_form_note,.ritual_form_note{color:var(--theme--text-muted);font-size:var(--text--note);margin-bottom:var(--space--5)}.form_field{gap:var(--space--3);margin-bottom:var(--space--5);display:grid}.form_field label,.form_field legend,.form_field>span{font-size:var(--text--nav);color:var(--theme--heading);font-weight:600}.form_field input,.form_field textarea{width:100%;min-height:var(--size--touch);padding:var(--space--3) var(--space--4);border:1px solid color-mix(in srgb, var(--theme--heading) 22%, transparent);border-radius:var(--radius--control);background:var(--theme--background);color:var(--theme--text);font:inherit;font-size:var(--text--body)}.form_field textarea{resize:vertical;min-height:5.5rem}.form_field input::placeholder,.form_field textarea::placeholder{color:var(--theme--text-muted)}.form_hint{font-size:var(--text--note);color:var(--theme--text-muted);margin:0}.form_error{font-size:var(--text--note);color:var(--theme--heading);margin:0}.form_field.is-invalid input,.form_field.is-invalid textarea,.form_field.is-invalid .form_choice,.form_field.is-invalid .book_picker{outline:2px solid var(--theme--heading);outline-offset:2px}.form_row{gap:var(--space--4);grid-template-columns:1fr 1fr;display:grid}.book_picker{border:1px solid color-mix(in srgb, var(--theme--heading) 18%, transparent);border-radius:var(--radius--dialog);background:var(--theme--background);overflow:hidden}.book_picker_body{grid-template-columns:minmax(0,1fr) 7.5rem;display:grid}.book_cal{padding:var(--space--4)}.book_cal_nav{grid-template-columns:var(--size--touch) minmax(0, 1fr) var(--size--touch);align-items:center;gap:var(--space--2);margin-bottom:var(--space--4);display:grid}.book_cal_nav p{text-align:center;color:var(--theme--heading);margin:0;font-weight:650}.book_cal_nav button{min-height:var(--size--touch);color:var(--theme--heading);place-items:center;display:grid}.book_cal_nav svg{width:1.125rem;height:1.125rem}.book_cal_week,.book_cal_grid{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.book_cal_week{font-size:var(--text--meta);letter-spacing:.06em;text-transform:uppercase;color:var(--theme--text-muted);margin-bottom:var(--space--2)}.book_cal_grid button{aspect-ratio:1;min-height:var(--space--9);border-radius:var(--radius--control);color:var(--theme--text);font-weight:600}.book_cal_grid button.is-selected{background:var(--theme--heading);color:var(--theme--on-action)}.book_cal_grid button:disabled{opacity:.35;cursor:not-allowed}.book_times{gap:var(--space--3);max-height:18.5rem;padding:var(--space--4);border-left:1px solid color-mix(in srgb, var(--theme--heading) 14%, transparent);flex-direction:column;display:flex;overflow-y:auto}.book_time{min-height:var(--size--touch);border:1px solid color-mix(in srgb, var(--theme--heading) 22%, transparent);border-radius:var(--radius--pill);font-variant-numeric:tabular-nums;color:var(--theme--heading);background:var(--theme--print);flex:none;font-weight:650}.book_time.is-selected{background:var(--theme--heading);color:var(--theme--on-action);border-color:var(--theme--heading)}.book_picker_summary{padding:var(--space--4) var(--space--4);border-top:1px solid color-mix(in srgb, var(--theme--heading) 14%, transparent);font-size:var(--text--note);color:var(--theme--text-muted);margin:0}.book_picker_summary b{color:var(--theme--heading);font-weight:650}.book_cal_nav button:disabled{opacity:.35;cursor:not-allowed}.form_field fieldset,fieldset.form_field{margin:0 0 var(--space--5);border:0;min-width:0;padding:0}.form_choice{gap:var(--space--3);grid-template-columns:1fr 1fr;display:grid}.form_radio{align-items:center;gap:var(--space--3);min-height:var(--size--touch);padding:var(--space--3) var(--space--4);border:1px solid color-mix(in srgb, var(--theme--heading) 22%, transparent);border-radius:var(--radius--control);background:var(--theme--background);cursor:pointer;font-weight:600;display:flex}.form_radio input{width:1.125rem;height:1.125rem;accent-color:var(--theme--heading);flex-shrink:0}.form_radio:has(:focus-visible){outline:3px solid var(--theme--focus);outline-offset:3px}.form_radio:has(:checked){border-color:var(--theme--heading);background:color-mix(in srgb, var(--theme--accent) 22%, var(--theme--background))}.form_actions{gap:var(--space--3);margin-top:var(--space--3);flex-wrap:wrap;display:flex}.form_status{margin:var(--space--4) 0 0;font-size:var(--text--note);color:var(--theme--text-muted);min-height:1.25em}.book_form .button_outline,.ritual_form .button_outline{color:var(--theme--heading)}.book_form_compact{padding:var(--space--6)}.book_form_compact h3{font-size:1.5rem}.book_form_compact .form_field{margin-bottom:var(--space--4)}.book_form_compact .form_row{margin-bottom:0}.book_form_compact .form_hint{display:none}.book_form_compact .book_cal{padding:var(--space--3)}.book_form_compact .book_cal_grid button{min-height:2rem}.book_form_compact .book_times{max-height:13.5rem}.book_form_compact .book_time,.book_form_compact .form_radio{min-height:2.5rem}.book_form_compact textarea{min-height:3.25rem}.book_form_compact .form_actions .button{width:100%}.form_more summary{cursor:pointer;min-height:2.5rem;color:var(--theme--heading);font-size:var(--text--nav);align-items:center;font-weight:600;display:flex}.form_more[open] textarea{margin-top:var(--space--2)}@media (width<=480px){.book_form_compact .form_row{grid-template-columns:1fr}}.faq_wrap{--section-space-end:var(--section-space--large);background:linear-gradient(180deg, color-mix(in srgb, var(--theme--print) 36%, transparent), transparent);border-top:1px solid color-mix(in srgb, var(--theme--sage) 30%, transparent)}.faq_layout{gap:clamp(var(--space--12), 7vw, var(--space--24));grid-template-columns:minmax(15rem,.62fr) minmax(0,1.38fr);align-items:start;display:grid}.faq_intro{top:calc(var(--nav-height) + var(--space--5));position:sticky}.faq_intro h2{margin-top:0}.faq_intro p{max-width:32ch;margin:var(--space--4) 0 var(--space--5);color:var(--theme--text-muted)}.faq_list{gap:var(--space--3);display:grid}.faq_item{border:1px solid color-mix(in srgb, var(--theme--sage) 34%, transparent);background:color-mix(in srgb, var(--theme--print) 68%, transparent);border-radius:.875rem}.faq_item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:var(--space--4);min-height:4rem;padding:var(--space--4) var(--space--5);color:var(--theme--heading);font-weight:600;list-style:none;display:flex}.faq_item summary::-webkit-details-marker{display:none}.faq_item summary:after{content:"";border-right:1.6px solid var(--theme--heading);border-bottom:1.6px solid var(--theme--heading);width:10px;height:10px;transition:transform var(--duration) var(--ease);flex:none;transform:rotate(45deg)}.faq_item[open] summary:after{transform:rotate(225deg)}.faq_item p{max-width:62ch;padding:0 var(--space--5) var(--space--5);color:var(--theme--text)}.footer_wrap{padding:clamp(var(--space--16), 7vw, var(--space--24)) 0 var(--space--9);background:radial-gradient(circle at 76% 12%, color-mix(in srgb, var(--theme--accent) 15%, transparent), transparent 32%), var(--theme--footer-bg);color:var(--theme--inverse-text);border-top:1px solid color-mix(in srgb, var(--theme--accent) 38%, transparent)}.footer_grid{justify-content:space-between;gap:var(--space--8);grid-template-columns:auto minmax(18rem,35rem);align-items:end;display:grid}.footer_cta{justify-items:end;gap:var(--space--4);display:grid}.footer_label{max-width:18ch;font-family:var(--font--display);text-align:right;font-size:clamp(1.75rem,3.5vw,2.75rem);line-height:1.08}.footer_actions{justify-content:flex-end;gap:var(--space--3);flex-wrap:wrap;display:flex}.footer_wrap a{color:var(--theme--inverse-text)}.footer_wrap .button_ghost,.footer_wrap .button_outline{border-color:color-mix(in srgb, var(--theme--inverse-text) 42%, transparent)}.footer_phone_note{margin-top:var(--space--2);text-align:right}.footer_fine{max-width:70ch;margin-top:var(--space--10);padding-top:var(--space--5);border-top:1px solid color-mix(in srgb, var(--theme--inverse-text) 16%, transparent);font-size:var(--text--fine);color:color-mix(in srgb, var(--theme--inverse-text) 55%, var(--theme--accent))}dialog{border:1px solid color-mix(in srgb, var(--theme--sage) 40%, transparent);border-radius:var(--radius--dialog);background:var(--theme--background);width:min(920px,100% - 1.5rem);max-height:90dvh;color:var(--theme--text);padding:var(--space--5);overflow:auto}dialog::backdrop{background:color-mix(in oklch, var(--theme--footer-bg) 72%, transparent)}.dialog_head{justify-content:space-between;align-items:center;gap:var(--space--3);margin-bottom:var(--space--4);display:flex}.dialog_head h3{font-family:var(--font--display);color:var(--theme--heading);font-weight:500}.dialog_close{width:var(--size--touch);height:var(--size--touch);border:1px solid color-mix(in srgb, var(--theme--sage) 50%, transparent);color:var(--theme--heading);border-radius:50%;place-items:center;display:grid}.dialog_close svg{width:var(--size--6);height:var(--size--6)}.dialog_body{gap:var(--space--6);grid-template-columns:1fr .7fr;align-items:start;display:grid}.dialog_body img{width:auto;max-width:100%;max-height:min(70vh,640px);box-shadow:var(--shadow--print);margin-inline:auto}.dialog_side{gap:var(--space--4);align-content:start;display:grid}@media (hover:hover){.film_frame:hover img{transform:translateY(-2px)}.header_brand:hover,.header_trigger:hover,.header_plain:hover,.header_trigger[aria-expanded=true],.header_card:hover,.header_mini:hover{background:color-mix(in srgb, var(--theme--heading) 8%, transparent)}.header_footnote a:hover{text-decoration:underline}}.film_frame img{transition:transform var(--duration) var(--ease), opacity var(--duration) var(--ease)}@media (width<=1024px){.film_designer,.film_head,.dialog_body,.ritual_layout,.form_row,.form_choice,.book_picker_body,.doors_intro,.faq_layout,.footer_grid{grid-template-columns:1fr}.book_times{border-left:0;border-top:1px solid color-mix(in srgb, var(--theme--heading) 14%, transparent);max-height:12rem}.doors_intro>p{justify-self:start}.doors_stack{gap:var(--space--6)}.door{grid-template-columns:minmax(15rem,.85fr) minmax(20rem,1.15fr);min-height:0;position:relative;top:auto}.door_visual{min-height:25rem}.faq_intro{position:static}.footer_cta{justify-items:start}.footer_label,.footer_phone_note{text-align:left}.footer_actions{justify-content:flex-start}}@media (width<=767px){.header_links,.header_phone{display:none}.header_phone_bar{display:flex}.header_cta .button_outline{display:none}.header_toggle{display:inline-flex}.header_drawer{flex-direction:column;display:flex}.footer_wrap .header_logo{width:3.375rem;height:2.875rem}.dialog_body{flex-direction:column;display:flex}.dialog_side{order:-1}.dialog_body img{max-height:38vh}.book_form{padding:var(--space--4)}.book_cal{padding-inline:0;overflow-x:auto}.book_cal_nav,.book_cal_week,.book_cal_grid{min-width:19.25rem}.film_actions,.form_actions,.door_actions,.footer_actions{display:grid}.film_actions .button,.form_actions .button,.door_actions .button,.footer_actions .button{width:100%}.film_designer{padding:var(--space--2)}.ritual_steps{grid-template-columns:1fr}.door{gap:var(--space--5);padding:var(--space--5);border-radius:var(--radius--card);grid-template-columns:1fr}.door h3{font-size:clamp(2.5rem,13vw,3.75rem)}.door_visual{min-height:20rem}.door_photo{width:48%}.door_strip{width:25%}.door_schedule{min-height:20rem;padding:var(--space--4)}.door_schedule div{grid-template-columns:3.5rem 1fr;min-height:5.5rem}.faq_item summary,.faq_item p{padding-inline:var(--space--4)}.footer_grid{gap:var(--space--6)}.footer_cta,.footer_actions{width:100%}.film_frame{width:128px}.film_frame img{width:128px;height:168px}}@media (width<=380px){.header_cta .button{padding-inline:var(--space--3);font-size:var(--text--note)}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + var(--space--3));background-color:var(--theme--background);min-height:100%}body{color:var(--theme--text);font:var(--text--body) / var(--text--body-lh) var(--font--body);background-color:var(--theme--background);background-image:radial-gradient(circle at 20% 80%, color-mix(in srgb, var(--swatch--peach) 30%, transparent) 0%, transparent 50%), radial-gradient(circle at 80% 20%, color-mix(in srgb, var(--swatch--glow) 50%, transparent) 0%, transparent 50%), radial-gradient(circle at 40% 40%, color-mix(in srgb, var(--swatch--peach) 10%, transparent) 0%, transparent 50%);text-rendering:optimizelegibility;background-repeat:no-repeat;background-size:100% 100%;min-height:100dvh;margin:0}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin:0}button,a{font:inherit;color:inherit;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer;background:0 0;border:0}:focus-visible{outline:3px solid var(--theme--focus);outline-offset:3px}[hidden]{display:none!important}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.hero_motion_toggle{display:none}.button:active,.film_frame:hover img{transform:none}}
