*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}section[id]{scroll-margin-top:84px}body{-webkit-font-smoothing:antialiased;margin:0}img{max-width:100%;height:auto;display:block}a{color:inherit}p{text-wrap:pretty;margin:0}h1,h2,h3,h4{text-wrap:balance;margin:0}ul,ol{margin:0;padding:0;list-style:none}figure{margin:0}button{font:inherit;color:inherit}.num{font-variant-numeric:tabular-nums}.i{fill:currentColor;flex:none;width:1.2em;height:1.2em}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.cform{align-content:start;gap:18px;display:grid}.f-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.field{align-content:start;gap:8px;min-width:0;display:grid}.field .opt{opacity:.7;font-weight:400}.field input,.field select,.field textarea{width:100%;font:inherit;color:inherit;font-size:16px}.field textarea{resize:vertical;min-height:120px}.field select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 20px) 55%,calc(100% - 15px) 55%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:40px}.f-foot{flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:4px;display:flex}.f-hint{opacity:.75;max-width:30em;font-size:13px}.f-note{font-size:14.5px}.f-note:empty{display:none}.cform button{cursor:pointer;border:0}@media (width<=640px){.f-row{grid-template-columns:1fr}}.callbar{z-index:60;padding:10px 16px calc(10px + env(safe-area-inset-bottom,0px));display:none;position:fixed;bottom:0;left:0;right:0}@media (width<=760px){.callbar{display:block}body{padding-bottom:76px}}:root{--paper:#f4f2ed;--ink:#141414;--mute:#77736c;--hair:color-mix(in srgb, var(--ink) 14%, transparent);--serif:"EB Garamond", "Iowan Old Style", Georgia, serif;--sans:"Noto Sans Display", "Helvetica Neue", Arial, sans-serif;--g:clamp(16px, 3vw, 44px);--ease:cubic-bezier(.23, 1, .32, 1)}body{background:var(--paper);color:var(--ink);font:400 15.5px/1.6 var(--sans)}::selection{background:var(--ink);color:var(--paper)}:focus-visible{outline:1px solid var(--ink);outline-offset:4px}.wrap{max-width:1480px;padding-inline:var(--g);margin-inline:auto}.cap{letter-spacing:.08em;text-transform:uppercase;color:var(--mute);font-size:12px}.serif{font-family:var(--serif)}.head{top:env(safe-area-inset-top,0px);z-index:40;background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky}.head .wrap{justify-content:space-between;align-items:center;gap:20px;height:68px;display:flex}.logo{font-family:var(--serif);letter-spacing:-.01em;font-size:28px;font-style:italic;text-decoration:none}.logo span{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);vertical-align:4px;margin-left:10px;font-size:11px;font-style:normal}.nav{gap:32px;font-size:13.5px;display:flex}.nav a{text-decoration:none;position:relative}.nav a:after{content:"";transform-origin:0;height:1px;transition:transform .3s var(--ease);background:currentColor;position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}@media (hover:hover) and (pointer:fine){.nav a:hover:after{transform:scaleX(1)}}.book{border-bottom:1px solid var(--ink);white-space:nowrap;padding-bottom:2px;font-size:13.5px;text-decoration:none}@media (width<=860px){.nav{display:none}}.hero{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;column-gap:20px;padding-block:clamp(24px,4vw,56px) clamp(64px,9vw,140px);display:grid}.hero h1{font-family:var(--serif);letter-spacing:-.025em;z-index:2;grid-area:1/1/auto/span 6;padding-bottom:clamp(12px,3vw,40px);font-size:clamp(48px,7.4vw,126px);font-weight:400;line-height:.94;position:relative}.hero h1 em{font-style:italic}.hero .shot{aspect-ratio:4/5;grid-area:1/7/span 2/-1;overflow:hidden}.hero .shot img{object-fit:cover;width:100%;height:100%}.hero .side{grid-area:2/1/auto/span 5;align-self:end;gap:22px;display:grid}.hero .side p{max-width:30em;font-size:17px}.hero .side .row{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.btn{background:var(--ink);height:50px;color:var(--paper);font:500 14px var(--sans);transition:transform .14s var(--ease), background-color .2s var(--ease);cursor:pointer;border:0;border-radius:999px;align-items:center;gap:12px;padding:0 26px;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.btn:hover{background:color-mix(in srgb, var(--ink) 85%, white)}}.hero figcaption{grid-area:3/7/auto/-1;justify-content:space-between;margin-top:12px;display:flex}.slots{align-items:center;gap:10px;font-size:13.5px;display:inline-flex}.slots:before{content:"";background:var(--ink);width:7px;height:7px;animation:blink 2.4s var(--ease) infinite;border-radius:50%}@keyframes blink{50%{opacity:.25}}@media (width<=860px){.hero h1,.hero .shot,.hero .side,.hero figcaption{grid-area:auto/1/auto/-1}.hero .shot{aspect-ratio:4/4.6;margin-top:28px}.hero .side{margin-top:28px}}.reel{padding-block:0 clamp(72px,10vw,150px);position:relative}.reel-head{justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:24px;display:flex}.reel-head h2{font-family:var(--serif);letter-spacing:-.02em;font-size:clamp(32px,3.6vw,54px);font-weight:400;line-height:1}.reel-head .count{font-variant-numeric:tabular-nums;color:var(--mute);white-space:nowrap;font-size:13px}.track{padding-inline:var(--g);scrollbar-width:none;cursor:grab;-webkit-user-select:none;user-select:none;overscroll-behavior-x:contain;gap:clamp(12px,1.6vw,24px);display:flex;overflow-x:auto}.track::-webkit-scrollbar{display:none}.track.drag{cursor:grabbing}.track figure{flex:none;height:clamp(360px,62vh,640px)}.track figure img{object-fit:cover;pointer-events:none;-webkit-user-drag:none;width:auto;max-width:none;height:100%}.track figcaption{justify-content:space-between;gap:18px;margin-top:10px;font-size:13px;display:flex}.track figcaption em{font-family:var(--serif);font-size:17px}.track figure.w img{aspect-ratio:4/3}.track figure.p img{aspect-ratio:2/3}.cursor{z-index:70;background:var(--paper);width:92px;height:92px;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;pointer-events:none;transition:transform .3s var(--ease);border-radius:50%;place-items:center;margin:-46px 0 0 -46px;font-size:12px;display:grid;position:fixed;top:0;left:0;transform:scale(0)}.cursor.on{transform:scale(1)}.track.drag~.cursor.on{transform:scale(.82)}@media not ((hover:hover) and (pointer:fine)){.cursor{display:none}.track{cursor:auto}}@media (width<=600px){.track figure{height:420px}}.svc{border-top:1px solid var(--hair);grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;padding-block:clamp(64px,9vw,140px);display:grid}.svc .intro{grid-column:1/span 4}.svc .intro h2{font-family:var(--serif);letter-spacing:-.02em;margin-top:14px;font-size:clamp(36px,4vw,60px);font-weight:400;line-height:1}.svc .intro p{color:var(--mute);max-width:26em;margin-top:22px}.svc ol{counter-reset:s;grid-column:6/-1}.svc li{border-bottom:1px solid var(--hair);counter-increment:s;grid-template-columns:56px minmax(0,1fr) auto;gap:8px 20px;padding-block:26px;display:grid}.svc li:first-child{padding-top:0}.svc li:before{content:counter(s, lower-roman) ".";font-family:var(--serif);color:var(--mute);font-size:22px;font-style:italic;line-height:1.2}.svc h3{font-family:var(--serif);letter-spacing:-.015em;font-size:clamp(26px,2.4vw,36px);font-weight:400;line-height:1.05}.svc .price{font-family:var(--serif);white-space:nowrap;font-variant-numeric:lining-nums;font-size:24px}.svc li p{color:var(--mute);grid-column:2/-1;max-width:36em}.svc li .incl{flex-wrap:wrap;grid-column:2/-1;gap:6px 18px;font-size:13px;display:flex}.svc li .incl span:before{content:"·";color:var(--mute);margin-right:8px}.svc li .incl span:first-child:before{content:none}@media (width<=860px){.svc .intro,.svc ol{grid-column:1/-1}.svc ol{margin-top:44px}.svc li{grid-template-columns:40px minmax(0,1fr)}.svc .price{grid-column:2}}.room{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;column-gap:20px;padding-bottom:clamp(72px,10vw,150px);display:grid}.room figure{aspect-ratio:5/4;grid-column:1/span 7;overflow:hidden}.room figure img{object-fit:cover;filter:grayscale();width:100%;height:100%}.room .txt{grid-column:9/-1;gap:22px;display:grid}.room h2{font-family:var(--serif);letter-spacing:-.02em;font-size:clamp(32px,3.2vw,48px);font-weight:400;line-height:1.02}.room dl{border-top:1px solid var(--hair);grid-template-columns:auto 1fr;gap:10px 22px;margin:0;padding-top:18px;font-size:14.5px;display:grid}.room dt{color:var(--mute)}.room dd{margin:0}@media (width<=860px){.room figure,.room .txt{grid-column:1/-1}.room .txt{margin-top:28px}}.flow{border-top:1px solid var(--hair);padding-block:clamp(64px,9vw,140px)}.flow p{font-family:var(--serif);letter-spacing:-.015em;max-width:24em;font-size:clamp(26px,3.2vw,50px);line-height:1.2}.flow p sup{font-family:var(--sans);letter-spacing:.04em;vertical-align:1.6em;color:var(--mute);margin:0 4px 0 2px;font-size:12px}.flow p .m{color:var(--mute)}.faq{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;padding-block:0 clamp(64px,9vw,140px);display:grid}.faq h2{font-family:var(--serif);grid-column:1/span 4;font-size:clamp(32px,3.2vw,48px);font-weight:400;line-height:1}.faq .list{grid-column:6/-1}.faq details{border-bottom:1px solid var(--hair)}.faq summary{cursor:pointer;font-family:var(--serif);justify-content:space-between;gap:18px;padding-block:20px;font-size:22px;line-height:1.25;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-family:var(--sans);transition:transform .24s var(--ease);font-weight:300}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{color:var(--mute);max-width:38em;padding-bottom:22px}@media (width<=860px){.faq h2,.faq .list{grid-column:1/-1}.faq .list{margin-top:28px}}.bookit{background:var(--ink);color:var(--paper)}.bookit .wrap{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;padding-block:clamp(72px,10vw,150px);display:grid}.bookit .l{grid-column:1/span 5;align-content:start;gap:26px;display:grid}.bookit h2{font-family:var(--serif);letter-spacing:-.025em;font-size:clamp(44px,5.4vw,88px);font-weight:400;line-height:.95}.bookit h2 em{font-style:italic}.bookit .l a{text-decoration:none}.bookit .l .k{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--paper) 55%, var(--mute));margin-bottom:4px;font-size:12px;display:block}.bookit .l .v{font-family:var(--serif);overflow-wrap:anywhere;font-size:24px}.bookit .cform{grid-column:7/-1}.bookit .field label{letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--paper) 70%, var(--mute));font-size:12px}.bookit .field input,.bookit .field select,.bookit .field textarea{border:0;border-bottom:1px solid color-mix(in srgb, var(--paper) 30%, transparent);color:var(--paper);background-color:#0000;border-radius:0;padding:12px 0}.bookit .field select{background-position:calc(100% - 10px) 55%,calc(100% - 5px) 55%}.bookit .field select option{color:var(--ink);background:var(--paper)}.bookit .field :is(input,select,textarea):focus{border-bottom-color:var(--paper);outline:none}.bookit .field ::placeholder{color:color-mix(in srgb, var(--paper) 40%, transparent)}.bookit .btn{background:var(--paper);color:var(--ink)}@media (hover:hover) and (pointer:fine){.bookit .btn:hover{background:color-mix(in srgb, var(--paper) 60%, white)}}.bookit [aria-invalid=true]{border-bottom-color:#e58f7a!important}.bookit .f-note[data-state=error]{color:#e58f7a}.bookit .f-hint{color:color-mix(in srgb, var(--paper) 70%, var(--mute));opacity:1}@media (width<=860px){.bookit .l,.bookit .cform{grid-column:1/-1}.bookit .cform{margin-top:48px}}.foot{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px 32px;padding-block:40px 32px;display:grid}.foot .big{font-family:var(--serif);letter-spacing:-.03em;grid-column:1/-1;font-size:clamp(90px,16vw,260px);font-style:italic;line-height:.8}.foot .meta{color:var(--mute);flex-wrap:wrap;gap:6px 28px;font-size:12.5px;display:flex}.foot .meta a{color:var(--ink)}.foot .ig{border-bottom:1px solid;justify-self:start;font-size:13px;text-decoration:none}@media (width<=600px){.foot{grid-template-columns:1fr}}.callbar{background:var(--paper);border-top:1px solid var(--hair)}.callbar .btn{justify-content:center;width:100%}
