:root{--brand-font-display:Baskerville, "Iowan Old Style", Georgia, "Times New Roman", serif;--brand-font-body:Arial, Helvetica, sans-serif;--brand-ink:#000;--brand-paper:#f1eee5;--brand-gold:#a17a36;--brand-gold-light:#f3dfaa}
:root{--ink:var(--brand-ink);--ink-soft:#181818;--paper:#f1eee5;--paper-deep:#e7e1d3;--cedar:#8e6448;--moss:#000;--seal:#9d3f2d;--font-display:var(--brand-font-display);--font-japanese:"Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;--line-light:#f4f0e540;--line-dark:#17171233;--header-height:82px;--page-pad:clamp(22px, 4vw, 68px)}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{background:var(--paper);color:var(--ink);font-family:var(--brand-font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}[lang=ja]{font-family:var(--font-japanese), "Hiragino Mincho ProN", "Yu Mincho", serif}::selection{color:var(--paper);background:var(--seal)}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit}img,video{display:block}h1,h2,h3,p,blockquote{margin-top:0}h1,h2,h3,.footer-title,.closing-statement{font-family:var(--font-display), Georgia, serif;letter-spacing:-.035em;font-weight:400;line-height:.94}[lang=ja] h1,[lang=ja] h2,[lang=ja] h3,[lang=ja] .footer-title,[lang=ja] .closing-statement{font-family:var(--font-japanese), "Hiragino Mincho ProN", serif;letter-spacing:.015em;line-height:1.22}:focus-visible{outline:2px solid var(--seal);outline-offset:4px}.skip-link{z-index:1000;color:var(--ink);background:var(--paper);padding:10px 14px;transition:transform .2s;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.scroll-progress{z-index:1001;background:var(--seal);transform-origin:0;width:100%;height:2px;position:fixed;top:0;left:0}.site-header{z-index:100;width:100%;height:var(--header-height);padding:0 var(--page-pad);color:#fff;border-bottom:1px solid var(--line-light);grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr);align-items:center;transition:color .45s,background .45s,border-color .45s;display:grid;position:fixed;top:0;left:0}.site-header.is-solid{color:var(--paper);border-color:var(--line-light);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#000000ed}.brand{align-items:center;gap:13px;width:max-content;display:inline-flex}.brand-logo{object-fit:contain;width:23px;height:40px}.brand-name{font-family:var(--font-display), Georgia, serif;letter-spacing:.035em;font-size:18px;font-weight:500;line-height:.9;display:grid}.brand-name small{letter-spacing:.32em;text-transform:uppercase;margin-top:6px;font-family:Arial,sans-serif;font-size:8px;font-weight:400}.desktop-nav{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:clamp(18px,2.1vw,38px);font-size:11px;display:flex}.desktop-nav a,.locale-link{padding:8px 0;position:relative}.desktop-nav a:after,.locale-link:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .35s;position:absolute;bottom:3px;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a.is-active:after,.locale-link:hover:after{transform-origin:0;transform:scaleX(1)}.header-actions{letter-spacing:.13em;text-transform:uppercase;justify-content:flex-end;align-items:center;gap:22px;font-size:10px;display:flex}.account-link{white-space:nowrap;text-underline-offset:5px;justify-content:center;align-items:center;min-height:44px;text-decoration:underline;display:inline-flex}.reserve-link{color:var(--ink);background:var(--paper);align-items:center;gap:26px;padding:11px 14px;transition:color .3s,background .3s;display:inline-flex}.reserve-link:hover{color:var(--paper);background:var(--seal)}.cta-arrow{stroke:currentColor;stroke-width:1.25px;stroke-linecap:square;stroke-linejoin:miter;flex:none;width:1.25em;height:1.25em;display:inline-block}.reserve-label-mobile{display:none}.menu-button{cursor:pointer;background:0 0;border:0;width:46px;height:46px;padding:0;display:none}.menu-button span{background:currentColor;width:28px;height:1px;margin:7px auto;display:block}.menu-overlay{z-index:90;padding:calc(var(--header-height) + 7vh) var(--page-pad) 7vh;color:var(--paper);background:var(--ink);grid-template-columns:1fr .44fr;display:grid;position:fixed;inset:0;overflow:auto}.menu-overlay nav{align-content:center;display:grid}.menu-overlay nav a{font-family:var(--font-display), Georgia, serif;align-items:baseline;gap:24px;padding:10px 0;font-size:clamp(46px,6.4vw,96px);line-height:.9;display:flex}.menu-overlay nav a span{letter-spacing:.15em;width:22px;font-family:Arial,sans-serif;font-size:9px}.menu-meta{letter-spacing:.06em;align-content:end;justify-items:start;font-size:12px;display:grid}.menu-meta p{color:#f1eee599}.film-hero,.page-hero{color:#fff;background:var(--ink);height:100svh;min-height:760px;position:relative;overflow:hidden}.film-hero-media,.page-hero-image,.page-hero-image img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.film-hero-media{transform:scale(1.01)}.film-scrim,.chapter-scrim{background:linear-gradient(#0a0a075c 0%,#0000 32%,#0a0a0794 100%),linear-gradient(90deg,#0a0a0775 0%,#0000 62%);position:absolute;inset:0}.film-hero:after,.page-hero:after,.feature-chapter:after,.section-paper:after{z-index:2;pointer-events:none;content:"";opacity:.12;mix-blend-mode:soft-light;background-image:url(/media/source/7701abb50e941089.webp);background-size:720px;position:absolute;inset:0}.film-hero-content{z-index:3;width:min(830px, calc(100% - var(--page-pad) * 2));text-align:center;flex-direction:column;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-48%)}.hero-brand-logo{object-fit:contain;width:clamp(112px,10.5vw,165px);height:auto;margin-bottom:clamp(28px,4vh,48px)}.eyebrow{color:#171712ad;letter-spacing:.22em;text-transform:uppercase;margin-bottom:24px;font-family:Arial,sans-serif;font-size:10px;font-weight:600;line-height:1.4}.eyebrow.light{color:#ffffffb8}.film-hero h1{max-width:760px;margin-bottom:22px;font-size:clamp(48px,5.5vw,86px)}[lang=ja] .film-hero h1{letter-spacing:.08em;font-size:clamp(28px,2.8vw,44px)}.hero-intro{max-width:560px;font-family:var(--font-display), Georgia, serif;letter-spacing:.02em;margin-bottom:0;font-size:clamp(18px,1.65vw,27px);line-height:1.5}[lang=ja] .hero-intro{font-family:var(--font-japanese), "Hiragino Mincho ProN", serif;letter-spacing:.06em;font-size:clamp(18px,1.8vw,29px)}.film-control.film-control-icon{z-index:5;right:calc(max(24px, env(safe-area-inset-right)) + 68px);top:calc(min(100%, 100dvh) - max(24px, env(safe-area-inset-bottom)) - 50px);background:0 0;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;transition:background-color .18s,transform .18s;display:grid;position:absolute;bottom:auto}.film-control.film-control-icon:hover{background:#00000085}.film-control.film-control-icon:active{transform:scale(.94)}.film-control.film-control-icon:focus-visible{outline-offset:3px;outline:2px solid #fff}@media (max-width:600px){.film-control.film-control-icon{right:calc(max(20px, env(safe-area-inset-right)) + 68px);top:calc(min(100%, 100dvh) - max(20px, env(safe-area-inset-bottom)) - 50px)}}@media (prefers-reduced-motion:reduce){.film-control.film-control-icon{transition:none}[data-reveal]{opacity:1!important;transform:none!important}}.hero-bottom{z-index:4;right:var(--page-pad);bottom:34px;left:var(--page-pad);justify-content:space-between;align-items:center;display:flex;position:absolute}.scroll-cue,.film-control{color:#fff;letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:14px;font-family:Arial,sans-serif;font-size:9px;display:inline-flex}.scroll-cue i{background:#ffffff73;width:74px;height:1px;position:relative;overflow:hidden}.scroll-cue i:after{content:"";background:#fff;animation:2.4s ease-in-out infinite cue;position:absolute;inset:0;transform:translate(-100%)}@keyframes cue{50%,to{transform:translate(100%)}}html[data-public-language] .hero-bottom{bottom:88px}html[data-public-language=ar]{--font-display:"Geeza Pro", Tahoma, Arial, serif}html[data-public-language=ar] body{font-family:Tahoma,Arial,sans-serif}html[data-public-language=ar] :is(h1,h2,h3,p,.eyebrow,.text-link,.desktop-nav,.header-actions,.footer-bottom){letter-spacing:0}html[data-public-language=ar] :is(h1,h2,h3){line-height:1.3}html[data-public-language=ja] :is(h1,h2,h3){line-height:1.35}html[data-public-language=ar] :is(.brand,.footer-brand,[data-site-credit],a[href^=tel\:],a[href^=mailto\:],.residence-gallery-stage,.residence-gallery-thumbnails,.residence-gallery-controls){direction:ltr}html[data-public-language=ar] .brand-name{font-family:Baskerville,Iowan Old Style,Georgia,Times New Roman,serif}html[data-public-language=ar] .fact-group dd{margin-inline-start:0}html[data-public-language=ar] .residence-gallery-category{unicode-bidi:plaintext}.film-control{cursor:pointer;background:0 0;border:0;padding:10px 0}.pause-icon{border-left:2px solid #fff;border-right:2px solid #fff;width:9px;height:10px}.play-icon{border-top:5px solid #0000;border-bottom:5px solid #0000;border-left:8px solid #fff;width:0;height:0}.section-paper{color:var(--ink);background:var(--paper);position:relative}.section-ink{color:var(--paper);background:var(--ink)}.manifesto{min-height:100svh;padding:clamp(120px, 14vw, 220px) max(var(--page-pad), 8vw);grid-template-columns:minmax(0,.9fr) minmax(420px,1fr);align-items:center;gap:10vw;display:grid;overflow:hidden}.manifesto-heading,.manifesto-body{z-index:3;position:relative}.manifesto-heading h2{max-width:650px;margin-bottom:0;font-size:clamp(54px,6.4vw,104px)}[lang=ja] .manifesto-heading h2{font-size:clamp(40px,4.7vw,72px)}.manifesto-copy{max-width:600px}.manifesto-copy p{margin-bottom:28px;font-size:clamp(15px,1.15vw,18px);line-height:1.9}.manifesto-quote{border-top:1px solid var(--line-dark);max-width:600px;margin-top:68px;padding-top:28px}.manifesto-quote blockquote{color:var(--seal);font-family:var(--font-display), Georgia, serif;font-size:clamp(23px,2.1vw,34px);line-height:1.18}.manifesto-ja{min-height:100svh;padding:clamp(120px, 12vw, 190px) max(var(--page-pad), 7vw);align-items:center;display:grid;position:relative;overflow:hidden}.manifesto-ja-inner{z-index:3;grid-template-columns:minmax(0,1fr) minmax(130px,.22fr);align-items:start;gap:clamp(60px,8vw,150px);width:100%;max-width:1500px;margin:0 auto;display:grid;position:relative}.manifesto-ja-heading{grid-area:1/2;justify-self:center}.manifesto-ja-heading h2{letter-spacing:.08em;writing-mode:vertical-rl;margin:0;font-size:clamp(25px,2vw,34px);font-weight:400;line-height:2}.manifesto-ja-copy{flex-direction:row-reverse;grid-area:1/1;justify-content:space-between;gap:clamp(28px,4.5vw,80px);min-width:0;height:clamp(410px,54vh,540px);display:flex}.manifesto-ja-copy p{letter-spacing:.08em;white-space:pre-line;writing-mode:vertical-rl;margin:0;font-size:clamp(15px,1.15vw,20px);line-height:2.15}.vertical-word{z-index:1;color:#17171209;font-family:var(--font-display), serif;letter-spacing:-.08em;writing-mode:vertical-rl;font-size:clamp(140px,26vw,420px);line-height:1;position:absolute;top:8%;right:-.08em}.chapter-intro{min-height:70svh;padding:15vh var(--page-pad) 10vh;border-bottom:1px solid var(--line-light);justify-content:space-between;align-items:flex-end;display:flex;position:relative;overflow:hidden}.about-place-copy{z-index:2;max-width:980px;position:relative}.about-place-body{color:#f1eee5b8;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 54px;max-width:820px;margin-top:52px;font-size:14px;line-height:1.9;display:grid}.about-place-closing{max-width:680px;color:var(--paper);font-family:var(--font-display), Georgia, serif;grid-column:1/-1;margin-bottom:0;font-size:clamp(24px,2.3vw,38px);line-height:1.35}[lang=ja] .about-place-closing{font-family:var(--font-japanese), "Hiragino Mincho ProN", serif;line-height:1.65}.chapter-intro h2{max-width:920px;margin-bottom:0;font-size:clamp(62px,8vw,130px)}[lang=ja] .chapter-intro h2{font-size:clamp(44px,5.8vw,84px)}.chapter-count{color:#f1eee566;font-family:var(--font-display), serif;margin-bottom:0;font-size:clamp(120px,18vw,280px);line-height:.7}.feature-chapter{color:#fff;background:var(--ink);height:100svh;min-height:760px;position:relative;overflow:hidden}.feature-chapter-image,.feature-chapter-image img{object-fit:cover;width:110%;height:110%;position:absolute;inset:-5%}.chapter-scrim{z-index:1;background:linear-gradient(90deg,#090907c7,#09090714 64%),linear-gradient(#0000 52%,#09090770)}.feature-chapter-content{z-index:3;bottom:10vh;left:max(var(--page-pad), 7vw);max-width:660px;position:absolute}.align-right .feature-chapter-content{right:max(var(--page-pad), 7vw);left:auto}.chapter-number{letter-spacing:.15em;font-family:Arial,sans-serif;font-size:10px;position:absolute;top:8px;left:-62px}.feature-chapter h2{max-width:720px;margin-bottom:24px;font-size:clamp(62px,7vw,116px)}[lang=ja] .feature-chapter h2{font-size:clamp(46px,5vw,78px)}.feature-chapter-content>p:not(.eyebrow){max-width:520px;margin-bottom:36px;font-size:14px;line-height:1.8}.text-link{border-bottom:1px solid var(--line-dark);letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:50px;min-width:210px;padding:11px 0;font-size:10px;font-weight:600;transition:color .25s,border-color .25s;display:inline-flex}.text-link.light{border-color:var(--line-light)}.text-link:hover{color:var(--seal);border-color:var(--seal)}.home-stay{grid-template-columns:1.12fr .88fr;min-height:900px;display:grid}.home-stay-image{min-height:720px;margin:clamp(70px, 8vw, 130px) 0 clamp(70px, 8vw, 130px) var(--page-pad);z-index:3;position:relative}.home-stay-image img{object-fit:cover}.home-stay-content{z-index:3;flex-direction:column;justify-content:center;padding:clamp(70px,8vw,130px) clamp(30px,7vw,110px);display:flex;position:relative}.home-stay-content h2{margin-bottom:34px;font-size:clamp(54px,5.5vw,90px)}[lang=ja] .home-stay-content h2{font-size:clamp(40px,4.2vw,66px)}.home-stay-content>p:not(.eyebrow){max-width:520px;line-height:1.9}.home-stay-content ul{border-top:1px solid var(--line-dark);margin:44px 0;padding:0;list-style:none}.home-stay-content li{border-bottom:1px solid var(--line-dark);letter-spacing:.1em;text-transform:uppercase;padding:14px 0;font-size:11px}.page-hero{height:92svh;min-height:720px}.page-hero-image{height:112%}.page-hero-content{z-index:3;bottom:10vh;left:var(--page-pad);width:min(900px, calc(100% - var(--page-pad) * 2));position:absolute}.page-hero-content h1{max-width:900px;margin-bottom:32px;font-size:clamp(74px,8.5vw,142px)}[lang=ja] .page-hero-content h1{font-size:clamp(48px,6vw,92px)}.page-hero-content>p:last-child{max-width:600px;margin-bottom:0;font-size:15px;line-height:1.8}.page-hero-index{z-index:3;right:var(--page-pad);letter-spacing:.45em;writing-mode:vertical-rl;font-size:8px;position:absolute;bottom:8vh}.editorial-gallery{padding:clamp(100px, 13vw, 210px) var(--page-pad);background:var(--paper);position:relative}.gallery-item{grid-template-columns:minmax(0,1.24fr) minmax(280px,.52fr);align-items:center;gap:clamp(36px,8vw,130px);max-width:1460px;margin:0 auto clamp(120px,16vw,260px);display:grid}.gallery-item:last-child{margin-bottom:0}.gallery-item:nth-child(2n){grid-template-columns:minmax(280px,.52fr) minmax(0,1.24fr)}.gallery-item:nth-child(2n) .gallery-image-wrap{order:2}.gallery-image{aspect-ratio:1.42;position:relative;overflow:hidden}.gallery-image img{object-fit:cover;transition:transform 1.2s cubic-bezier(.22,1,.36,1)}.editorial-gallery .gallery-item .gallery-image.gallery-image-portrait{aspect-ratio:4/5;max-width:560px;margin-inline:auto}.gallery-image-portrait img{object-position:50% 100%}.editorial-gallery.editorial-dining .gallery-item .gallery-image{aspect-ratio:3/2}.chapter-sauna-button{color:#fff;background:#0000003d;border:1px solid #ffffffa6;justify-content:space-between;align-items:center;gap:24px;min-height:48px;padding:14px 22px;font-size:13px;transition:background .2s,color .2s;display:inline-flex}.chapter-sauna-button:hover{background:var(--paper);color:var(--ink)}.chapter-sauna-button:focus-visible{outline-offset:5px;outline:2px solid #fff}.chapter-sauna-button svg{width:18px;height:18px}@media (prefers-reduced-motion:reduce){.chapter-sauna-button{transition:none}}.gallery-image:hover img{transform:scale(1.035)}.gallery-item:nth-child(3n) .gallery-image{aspect-ratio:1.15}.gallery-copy{max-width:390px}.gallery-copy>span{color:var(--seal);letter-spacing:.14em;margin-bottom:52px;font-size:10px;display:block}.gallery-copy h2{margin-bottom:24px;font-size:clamp(44px,4.3vw,72px)}[lang=ja] .gallery-copy h2{font-size:clamp(34px,3vw,52px)}.gallery-copy p{color:#171712b8;margin-bottom:0;font-size:14px;line-height:1.8}.editorial-rooms .gallery-item:nth-child(2) .gallery-image,.editorial-rooms .gallery-item:nth-child(4) .gallery-image{aspect-ratio:1/1.06}.detail-closing{min-height:78svh;padding:13vh var(--page-pad);text-align:center;border-top:1px solid var(--line-dark);place-items:center;display:grid}.detail-closing>div{z-index:3;max-width:1000px;position:relative}.closing-statement{margin-bottom:54px;font-size:clamp(46px,5.4vw,88px)}[lang=ja] .closing-statement{font-size:clamp(36px,4.2vw,64px)}.button-ink{color:var(--paper);background:var(--ink);letter-spacing:.16em;text-transform:uppercase;padding:15px 24px;font-size:10px;transition:background .3s;display:inline-flex}.button-ink:hover{background:var(--seal)}.next-page{min-height:42svh;padding:9vh var(--page-pad);color:var(--paper);background:var(--moss);grid-template-columns:1fr auto auto;align-items:end;gap:6vw;display:grid;position:relative;overflow:hidden}.next-page span{letter-spacing:.18em;text-transform:uppercase;font-size:9px}.next-page strong{font-family:var(--font-display), serif;font-size:clamp(58px,8vw,128px);font-weight:400;line-height:.8}.next-page .next-page-arrow{place-items:center;display:grid}.next-page .next-page-arrow .cta-arrow{width:50px;height:50px}.stay-facts{padding:clamp(100px, 13vw, 200px) var(--page-pad);grid-template-columns:repeat(3,1fr);gap:5vw;display:grid}.fact-group{z-index:3;position:relative}.fact-group dl{border-top:1px solid var(--line-dark);margin:0}.fact-group dl div{border-bottom:1px solid var(--line-dark);grid-template-columns:minmax(90px,.42fr) 1fr;gap:20px;padding:18px 0;display:grid}.fact-group dt{color:#1717128c;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.fact-group dd{margin:0;font-size:13px;line-height:1.55}.transfer-section{grid-template-columns:1fr 1fr;min-height:820px;display:grid}.transfer-image{min-height:660px;margin:7vw 0 7vw 7vw;position:relative}.transfer-image img{object-fit:cover}.transfer-image.transfer-image-welcome{aspect-ratio:3/2;align-self:center;min-height:0}.transfer-image-welcome img{object-fit:contain}.transfer-copy{flex-direction:column;justify-content:center;padding:9vw;display:flex}.transfer-copy h2{margin-bottom:36px;font-size:clamp(54px,5vw,84px)}[lang=ja] .transfer-copy h2{font-size:clamp(40px,4vw,62px)}.transfer-copy>p:not(.eyebrow){color:#f1eee5b8;max-width:550px;margin-bottom:42px;line-height:1.9}.access-section{padding:clamp(100px, 13vw, 200px) max(var(--page-pad), 8vw);grid-template-columns:1.2fr .8fr;gap:10vw;display:grid}.access-lead,.access-details{z-index:3;position:relative}.access-lead h2{margin-bottom:0;font-size:clamp(58px,6vw,96px)}[lang=ja] .access-lead h2{font-size:clamp(44px,4.5vw,70px)}.access-details{align-content:end;justify-items:start;gap:12px;font-size:14px;display:grid}.access-details address{margin-bottom:24px;font-style:normal;display:grid}.access-details .text-link{margin-top:30px}.faq-section{padding:12vh max(var(--page-pad), 8vw) 16vh;border-top:1px solid var(--line-dark);grid-template-columns:.75fr 1.25fr;gap:10vw;display:grid}.faq-heading,.faq-list{z-index:3;position:relative}.faq-heading h2{font-size:clamp(52px,5vw,82px)}.faq-list details{border-top:1px solid var(--line-dark)}.faq-list details:last-child{border-bottom:1px solid var(--line-dark)}.faq-list summary{cursor:pointer;font-family:var(--font-display), serif;grid-template-columns:34px 1fr auto;align-items:center;gap:20px;padding:24px 0;font-size:25px;line-height:1.2;list-style:none;display:grid}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{letter-spacing:.1em;font-family:Arial,sans-serif;font-size:9px}.faq-list summary b{font-family:Arial,sans-serif;font-size:18px;font-weight:300;transition:transform .3s}.faq-list details[open] summary b{transform:rotate(45deg)}.faq-list details p{color:#171712b3;max-width:620px;padding:0 52px 28px;font-size:14px;line-height:1.8}.booking-band{min-height:340px;padding:8vh var(--page-pad);color:var(--paper);background:var(--seal);justify-content:space-between;align-items:center;gap:40px;display:flex}.booking-band p{max-width:900px;font-family:var(--font-display), serif;margin-bottom:0;font-size:clamp(50px,6.4vw,100px);line-height:.95}[lang=ja] .booking-band p{font-size:clamp(38px,4.8vw,70px);line-height:1.2}.booking-band a{letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid #f1eee58c;flex:none;align-items:center;gap:30px;padding:14px 0;font-size:10px;display:inline-flex}.site-footer{padding:clamp(90px, 10vw, 160px) var(--page-pad) 28px;color:var(--paper);background:var(--ink);position:relative}.footer-lead{grid-template-columns:1fr minmax(460px,1.5fr) auto;align-items:center;gap:5vw;padding-bottom:9vw;display:grid}.footer-lead .eyebrow{color:#f1eee58c}.footer-title{margin-bottom:0;font-size:clamp(58px,7vw,112px)}[lang=ja] .footer-title{font-size:clamp(42px,5.2vw,78px)}.circle-cta{aspect-ratio:1;letter-spacing:.14em;text-align:center;text-transform:uppercase;border:1px solid #f1eee561;border-radius:50%;place-items:center;width:clamp(150px,14vw,220px);font-size:10px;transition:color .35s,background .35s,border-color .35s,transform .35s;display:grid}.circle-cta .cta-arrow{width:18px;height:18px;margin:56px 0 0 74px;position:absolute}.circle-cta:hover{color:var(--paper);background:var(--seal);border-color:var(--seal);transform:rotate(-4deg)}.footer-grid{border-top:1px solid var(--line-light);grid-template-columns:1.2fr .8fr 1fr;gap:7vw;padding:54px 0;display:grid}.footer-brand{align-self:start;align-items:center;gap:13px;display:flex}.footer-brand-logo{width:48px;height:auto;margin-bottom:20px}.footer-brand strong{font-family:var(--font-display), serif;font-size:22px;font-weight:400}.footer-grid nav,.footer-grid address{letter-spacing:.05em;align-content:start;justify-items:start;gap:8px;font-size:11px;font-style:normal;display:grid}.footer-grid nav a:hover,.footer-grid address a:hover{color:#c88b70}.footer-bottom{color:#f1eee59e;border-top:1px solid var(--line-light);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;gap:24px;padding-top:24px;font-size:9px;display:flex}@media (max-width:1120px){.site-header{grid-template-columns:1fr auto}.desktop-nav{display:none}.menu-button{display:block}.stay-facts{padding-right:max(var(--page-pad), 12vw);padding-left:max(var(--page-pad), 12vw);grid-template-columns:1fr;gap:72px}.fact-group dl div{grid-template-columns:.3fr 1fr}.footer-lead{grid-template-columns:1fr 1.7fr}.footer-lead .circle-cta{grid-column:2;margin-top:30px}}@media (max-width:800px){:root{--header-height:68px}.site-header{padding:0 18px}.brand-name{font-size:16px}.brand-logo{width:20px;height:35px}.header-actions{gap:8px}.header-actions .account-link{letter-spacing:0;text-transform:none;min-width:48px;font-family:Arial,Noto Sans JP,sans-serif;font-size:10px}.header-actions .reserve-link{white-space:nowrap;letter-spacing:.1em;justify-content:center;gap:0;width:74px;min-height:38px;padding:8px 11px;font-size:9px;display:inline-flex}.header-actions .reserve-link[data-locale=ja]{font-family:var(--font-japanese), serif;letter-spacing:.08em;font-size:10px;font-weight:500}.reserve-label-full,.header-actions .reserve-arrow{display:none}.reserve-label-mobile{display:inline}.header-actions .locale-link{letter-spacing:.1em;font-size:8px;display:inline-flex}.menu-button{width:40px;height:40px}.menu-button span{width:24px}.menu-overlay{padding:calc(var(--header-height) + 9vh) 22px 36px;grid-template-columns:1fr}.menu-overlay nav a{gap:15px;font-size:clamp(40px,13vw,66px)}[lang=ja] .menu-overlay nav a{font-size:clamp(32px,9vw,48px)}.menu-meta{margin-top:70px}.film-hero,.page-hero,.feature-chapter{min-height:680px}.film-hero-media{object-position:52% center}.film-hero-content{width:calc(100% - 44px);top:50%;bottom:auto;transform:translate(-50%,-47%)}.hero-brand-logo{width:clamp(100px,31vw,132px);margin-bottom:28px}.film-hero h1{margin-bottom:18px;font-size:clamp(39px,11vw,56px)}[lang=ja] .film-hero h1{font-size:clamp(25px,7.5vw,34px)}.hero-intro{max-width:92%;font-size:clamp(17px,4.8vw,22px)}[lang=ja] .hero-intro{max-width:100%;font-size:clamp(16px,4.8vw,21px)}.film-control{font-size:0}.manifesto{grid-template-columns:1fr;gap:64px;min-height:auto;padding-top:120px;padding-bottom:120px}.manifesto-ja{min-height:auto;padding:118px 24px 126px}.manifesto-ja-inner{grid-template-columns:1fr;gap:58px}.manifesto-ja-heading,.manifesto-ja-copy{grid-area:auto/1}.manifesto-ja-heading{justify-self:stretch}.manifesto-ja-heading h2{letter-spacing:.03em;writing-mode:horizontal-tb;font-size:clamp(31px,9vw,45px);line-height:1.55}.manifesto-ja-copy{gap:34px;height:auto;display:grid}.manifesto-ja-copy p{letter-spacing:.04em;white-space:pre-line;writing-mode:horizontal-tb;font-size:16px;line-height:2.05}.manifesto-heading h2{font-size:clamp(48px,15vw,76px)}[lang=ja] .manifesto-heading h2{font-size:clamp(36px,10.5vw,54px)}.manifesto-quote{grid-template-columns:38px 1fr;margin-top:48px}.chapter-intro{min-height:580px;padding-bottom:72px}.chapter-intro h2{font-size:clamp(52px,16vw,78px)}[lang=ja] .chapter-intro h2{font-size:clamp(38px,11vw,54px)}.about-place-body{grid-template-columns:1fr;gap:22px;margin-top:38px;padding-right:28px}.about-place-closing{grid-column:auto;margin-top:12px;font-size:clamp(23px,7vw,31px)}.chapter-count{font-size:120px;position:absolute;bottom:24px;right:20px}.feature-chapter-content,.align-right .feature-chapter-content{max-width:100%;bottom:74px;left:22px;right:22px}.chapter-number{margin-bottom:24px;display:block;position:static}.feature-chapter h2{font-size:clamp(56px,17vw,82px)}[lang=ja] .feature-chapter h2{font-size:clamp(39px,11vw,56px)}.feature-chapter-content>p:not(.eyebrow){max-width:94%}.home-stay{grid-template-columns:1fr;min-height:auto}.home-stay-image{min-height:65svh;margin:22px 22px 0}.home-stay-content{padding:84px 22px 110px}.page-hero{height:88svh}.page-hero-content{width:auto;bottom:62px;left:22px;right:22px}.page-hero-content h1{font-size:clamp(60px,18vw,90px)}[lang=ja] .page-hero-content h1{font-size:clamp(42px,12vw,62px)}.page-hero-content>p:last-child{font-size:13px}.page-hero-index{display:none}.editorial-gallery{padding:96px 22px 120px}.gallery-item,.gallery-item:nth-child(2n){grid-template-columns:1fr;gap:36px;margin-bottom:120px}.gallery-item:nth-child(2n) .gallery-image-wrap{order:initial}.gallery-image,.gallery-item:nth-child(3n) .gallery-image,.editorial-rooms .gallery-item:nth-child(2) .gallery-image,.editorial-rooms .gallery-item:nth-child(4) .gallery-image{aspect-ratio:1.2}.gallery-copy>span{margin-bottom:26px}.detail-closing{min-height:680px}.closing-statement{font-size:clamp(42px,12vw,60px)}[lang=ja] .closing-statement{font-size:clamp(34px,9vw,48px)}.next-page{grid-template-columns:1fr auto;gap:30px;min-height:340px}.next-page span{grid-column:1/-1}.next-page strong{font-size:clamp(46px,14vw,76px)}.transfer-section{grid-template-columns:1fr;min-height:auto}.transfer-image{min-height:66svh;margin:22px 22px 0}.transfer-copy{padding:90px 22px 110px}.access-section,.faq-section{grid-template-columns:1fr;gap:60px;padding-left:22px;padding-right:22px}.faq-list summary{grid-template-columns:24px 1fr auto;gap:12px;font-size:21px}.faq-list details p{padding-left:36px}.booking-band{flex-direction:column;align-items:flex-start;min-height:420px;padding:80px 22px}.booking-band p{font-size:clamp(46px,14vw,68px)}.footer-lead,.footer-grid{grid-template-columns:1fr}.footer-lead .circle-cta{grid-column:auto;margin-top:22px}.footer-grid{gap:48px}.footer-bottom{flex-direction:column;align-items:flex-start}}@media (max-width:460px){.site-header .brand-name{white-space:nowrap;display:grid}}@media (max-width:360px){.site-header{column-gap:8px;padding-inline:12px}.site-header .brand{gap:8px}.site-header .brand-name{font-size:14px}.site-header .header-actions{gap:4px}.site-header .reserve-link{width:64px}}.manifesto.manifesto-compact{gap:clamp(36px,6vw,90px);min-height:0;padding-block:clamp(64px,7vw,110px)}.manifesto-compact .manifesto-heading h2{font-size:clamp(42px,4.7vw,76px)}.manifesto-compact .manifesto-copy p{margin-bottom:0}.manifesto-compact .manifesto-quote{margin-top:28px;padding-top:20px}.chapter-intro.chapter-intro-compact{min-height:0;padding-block:clamp(64px,7vw,110px)}.chapter-intro-compact h2{max-width:780px;font-size:clamp(42px,5vw,80px)}.chapter-intro-compact .about-place-body{max-width:560px;margin-top:24px;display:block}.chapter-intro-compact .about-place-body p{margin-bottom:0}.media-placeholder{color:#67665e;text-align:center;background:0 0;border:1px dashed;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;height:100%;min-height:180px;padding:28px;display:flex}.media-placeholder-label{letter-spacing:.18em;text-transform:uppercase;font:600 10px/1.5 Arial,sans-serif}.media-placeholder-subject{max-width:28ch;font:400 15px/1.6 Arial,sans-serif}.page-hero.page-hero-pending{height:auto;min-height:720px;padding:calc(var(--header-height) + 70px) var(--page-pad) 80px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(36px,6vw,90px);display:grid}.page-hero-pending .page-hero-content{grid-area:1/1;width:100%;position:relative;inset:auto}.page-hero-pending .page-hero-content h1{font-size:clamp(50px,5vw,84px)}.page-hero-pending .page-hero-image{aspect-ratio:1.15;grid-area:1/2;height:auto;position:relative;inset:auto}.page-hero-pending .media-placeholder,.transfer-section .media-placeholder{color:#b8b7ab}.transfer-section .media-placeholder{min-height:380px}@media (max-width:800px){.chapter-intro-compact .chapter-count{display:none}.chapter-intro-compact .about-place-body{padding-right:0}.page-hero.page-hero-pending{min-height:0;padding:calc(var(--header-height) + 48px) var(--page-pad) 64px;grid-template-columns:minmax(0,1fr)}.page-hero-pending .page-hero-image{aspect-ratio:1.5;grid-area:2/1}}.guest-booking{color:#2b2b2b;overflow-wrap:anywhere;width:min(100% - 32px,760px);margin:0 auto;padding:64px 0 80px;font-family:Arial,Noto Sans JP,sans-serif;line-height:1.65}.guest-booking h1{font-size:clamp(1.8rem,5vw,2.7rem);line-height:1.2}.guest-booking h2{font-size:1.25rem}.guest-booking a{color:#000;text-underline-offset:4px;text-decoration:underline}.guest-booking nav{margin:16px 0 24px}.guest-card,.guest-alert,.admin-cancellation-card{color:#2b2b2b;background:#fbfaf5;border:1px solid #ccc;border-radius:14px;margin:24px 0;padding:clamp(20px,4vw,32px)}.guest-alert{border-left:4px solid #8b531a}.guest-policy{white-space:pre-wrap;overflow-wrap:anywhere}.guest-status{font-weight:700}.guest-card dl{gap:14px;display:grid}.guest-card dl div{flex-wrap:wrap;justify-content:space-between;gap:4px 20px;display:flex}.guest-card dt{color:#575757}.guest-card dd{margin:0;font-weight:600}.guest-booking form{gap:20px;display:grid}.guest-booking label{gap:8px;font-weight:600;display:grid}.guest-booking textarea{width:100%;font:inherit;resize:vertical;color:#2b2b2b;background:#fff;border:1px solid #787878;border-radius:8px;padding:12px}.guest-booking .guest-consent,.guest-consent{align-items:flex-start;gap:12px;font-size:.95rem;font-weight:400;line-height:1.55;display:flex}.guest-consent input{accent-color:#000;flex:0 0 20px;width:20px;height:20px;margin-top:3px}.guest-booking button,.admin-cancellation-pages button{color:#fff;min-height:48px;font:inherit;cursor:pointer;background:#000;border:1px solid #000;border-radius:8px;padding:12px 20px;font-weight:600}.guest-booking button:disabled,.admin-cancellation-pages button:disabled{color:#555;cursor:default;background:#e4e4e4;border-color:#d3d3d3}.guest-booking .guest-close{color:#000;background:0 0;border-color:#787878;margin-top:12px;display:block}.guest-booking :focus-visible,.admin-cancellations :focus-visible{outline-offset:3px;outline:3px solid #b36522}.admin-cancellation-card{overflow-wrap:anywhere;min-width:0}.admin-cancellation-card h3{font-size:1.1rem}.admin-cancellation-card>button{color:#2b2b2b;min-height:48px;font:inherit;cursor:pointer;background:0 0;border:1px solid #787878;border-radius:8px;padding:10px 14px}.admin-cancellation-card .admin-primary{letter-spacing:0;text-transform:none;border-radius:8px;padding:12px 16px;font-size:14px;line-height:1.5}.admin-cancellation-card form{gap:18px;margin-top:24px;display:grid}.admin-cancellation-card .admin-field>span{letter-spacing:0;text-transform:none;font-size:14px;line-height:1.5}.admin-cancellation-card .admin-field>small{color:#525252;font-size:13px;line-height:1.6}.admin-cancellation-card .admin-field input,.admin-cancellation-card .admin-field select,.admin-cancellation-card .admin-field textarea{color:#2b2b2b;background:#fff;border:1px solid #787878;border-radius:6px;width:100%;min-width:0;min-height:48px;padding:12px;font-size:16px;line-height:1.5}.admin-cancellations .admin-section-heading h2{font-size:clamp(1.5rem,4vw,2rem);line-height:1.35}.admin-cancellations .admin-section-heading h2 span{margin-top:6px;font-size:1rem;display:block}.admin-cancellation-decision{border:0;margin:0;padding:0}.admin-cancellation-decision legend{margin-bottom:10px;font-size:14px;font-weight:600}.admin-cancellation-decision label{cursor:pointer;border:1px solid #b6b6b6;border-radius:6px;align-items:flex-start;gap:12px;margin-bottom:8px;padding:12px;font-size:15px;line-height:1.5;display:flex}.admin-cancellation-decision input{accent-color:#000;flex:0 0 20px;width:20px;height:20px;margin-top:2px}.admin-cancellation-card details{margin:16px 0}.admin-policy-fields{border:0;gap:20px;min-width:0;padding:16px 0;display:grid}.admin-policy-fields legend{font-size:16px}.admin-policy .admin-field>span{letter-spacing:0;text-transform:none;font-size:14px;line-height:1.5}.admin-policy .admin-field>small{color:#525252;font-size:13px;line-height:1.6}.admin-policy .admin-field input,.admin-policy .admin-field select,.admin-policy .admin-field textarea{color:#282828;background:#fff;width:100%;min-width:0;font-size:16px}.admin-policy-tier{flex-wrap:wrap;align-items:end;gap:16px;display:flex}.admin-policy-tier .admin-field{flex:180px}.admin-policy-actions{flex-wrap:wrap;gap:12px;display:flex}.admin-policy button{white-space:normal;min-height:44px}.admin-policy-preview{overflow-wrap:anywhere;border:1px solid #c3c3c3;border-radius:14px;gap:18px;padding:20px;display:grid}.admin-policy-preview p{margin:0 0 12px}.admin-inventory-content{gap:28px;min-width:0;display:grid}.admin-inventory-content p{overflow-wrap:anywhere;line-height:1.7}.admin-inventory .admin-primary{letter-spacing:0;text-transform:none;font-size:14px;line-height:1.5}.admin-inventory .booking-checkbox{font-size:14px;line-height:1.6}.admin-inventory .admin-calendar{min-width:0;padding:0}.admin-inventory-weekdays,.admin-inventory-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:12px 0;padding:0;list-style:none;display:grid}.admin-inventory-weekdays span{text-align:center;color:#000;font-size:12px}.admin-inventory-days li{text-align:center;background:#f6f6f6;border:1px solid #c3c3c3;border-radius:8px;align-content:start;gap:8px;min-width:0;padding:10px 4px;display:grid}.admin-inventory-days time{font-size:14px;font-weight:600}.admin-inventory-days span{overflow-wrap:anywhere;color:#000;font-size:11px}.admin-inventory-days [data-state=block]{background:#e8dcc8;border-color:#a58f69}.admin-inventory-days [data-state=reservation]{background:#d8e4ea;border-color:#728e9c}.admin-inventory-review{background:#f6f6f6;border:2px solid #000;scroll-margin-top:20px}.admin-inventory .admin-policy-preview article+article{border-top:1px solid #c3c3c3;padding-top:20px}@media (max-width:600px){.admin-inventory-days{gap:2px}.admin-inventory-weekdays span{font-size:10px}.admin-inventory-days time,.admin-inventory-days span{font-size:12px}.admin-inventory-days li{border-radius:5px;padding:8px 1px}}.admin-operating-price{gap:12px;margin:0;display:grid}.admin-guest-access{gap:20px;min-width:0;display:grid}.admin-guest-access-content{gap:24px;min-width:0;display:grid}.admin-guest-access p,.admin-guest-access dd{overflow-wrap:anywhere;line-height:1.7}.admin-guest-access form{gap:16px;min-width:0;display:grid}.admin-guest-access dl{gap:16px;margin:0;display:grid}.admin-guest-access dt{color:#525252;font-size:14px}.admin-guest-access dd{margin:4px 0 0;font-size:16px}.admin-guest-access .admin-primary{letter-spacing:0;text-transform:none;font-size:14px;line-height:1.5}.admin-guest-access .guest-consent{font-size:14px;line-height:1.7}.admin-guest-access textarea{overflow-wrap:anywhere;resize:vertical}.admin-guest-access article+article{border-top:1px solid #c3c3c3;padding-top:16px}@media (min-width:768px){.admin-guest-access dl{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-readiness{overflow-wrap:anywhere;gap:20px;min-width:0;display:grid}.admin-readiness .admin-section-heading h2{font-size:clamp(1.5rem,4vw,2rem);line-height:1.35}.admin-readiness .admin-section-heading h2 span{margin-top:6px;font-size:1rem;display:block}.admin-readiness :focus-visible{outline-offset:4px;outline:3px solid #65482f}.admin-readiness p{margin:0;font-size:16px;line-height:1.7}.admin-readiness form{gap:16px;min-width:0;display:grid}.admin-readiness .admin-primary{letter-spacing:0;text-transform:none;font-size:14px;line-height:1.5}.admin-readiness-summary{background:#f7eee2;border:1px solid #977152;border-radius:14px;gap:12px;padding:20px;display:grid}.admin-readiness h3,.admin-readiness h4{font:inherit;margin:0;font-size:18px;font-weight:600;line-height:1.5}.admin-readiness-checks{gap:16px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.admin-readiness-checks li{border:1px solid #c3c3c3;border-radius:14px;align-content:start;gap:12px;min-width:0;padding:20px;display:grid}.admin-readiness-label{color:#603a19;background:#f5e9d9;border-radius:4px;justify-self:start;padding:4px 8px;font-size:14px;line-height:1.5}.admin-readiness-label.is-observed{color:#000;background:#e9e9e9}.admin-readiness-label.is-optional{color:inherit;background:0 0;padding-left:0}.admin-readiness-technical{min-width:0}.admin-readiness-technical summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:16px;line-height:1.5}.admin-readiness-technical[open]>p{margin:12px 0}@media (min-width:768px){.admin-readiness-checks{grid-template-columns:repeat(2,minmax(0,1fr))}}.admin-operating-price>div{flex-wrap:wrap;justify-content:space-between;gap:8px 16px;display:flex}.admin-operating-price dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.admin-operating .admin-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:600px){.admin-operating .admin-settings-grid{grid-template-columns:minmax(0,1fr)}}.admin-cancellation-card summary{cursor:pointer;text-underline-offset:4px;text-decoration:underline}.admin-cancellation-pages{justify-content:space-between;align-items:center;gap:8px;margin-top:24px;display:flex}.admin-cancellation-pages button{padding:10px;font-size:.9rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.booking-page{background:var(--paper)}.booking-hero{min-height:680px;padding:calc(var(--header-height) + 100px) max(var(--page-pad), 9vw) 110px;background:linear-gradient(90deg,#11110cf5 0%,#11110cd1 46%,#11110c75 100%),url(/media/source/0e5595d6733cea09.webp) 50% 46%/cover;grid-template-columns:minmax(100px,.24fr) minmax(0,1fr);align-items:center;gap:clamp(42px,7vw,110px);display:grid;position:relative;overflow:hidden}.booking-hero:after{pointer-events:none;content:"";opacity:.11;mix-blend-mode:soft-light;background:url(/media/source/7701abb50e941089.webp) 0 0/720px;position:absolute;inset:0}.booking-hero>*{z-index:1;position:relative}.booking-hero-logo{justify-self:center;width:clamp(82px,7vw,118px);height:auto}.booking-hero h1{max-width:900px;margin-bottom:30px;font-size:clamp(64px,7.5vw,122px)}[lang=ja] .booking-hero h1{max-width:780px;font-size:clamp(48px,5.5vw,82px)}.booking-hero>div>p:not(.eyebrow){color:#f1eee5c2;max-width:670px;font-size:16px;line-height:1.9}.booking-hero ul{flex-wrap:wrap;gap:14px 34px;margin:48px 0 0;padding:0;list-style:none;display:flex}.booking-hero li{color:#f1eee5c2;letter-spacing:.06em;align-items:center;gap:10px;font-size:11px;display:flex}.booking-hero li span{width:20px;height:20px;color:var(--paper);border:1px solid #f1eee580;border-radius:50%;place-items:center;font-family:Arial,sans-serif;font-size:9px;display:grid}.booking-external{background:#1717129e;border:1px solid #f1eee54d;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px 24px;max-width:720px;margin-top:28px;padding:22px 24px;display:grid}.booking-external h2{color:var(--paper);letter-spacing:0;margin:0 0 6px;font-family:inherit;font-size:18px;font-weight:600;line-height:1.5}.booking-external p,.booking-external small{color:#f1eee5d9;margin:0;font-size:13px;line-height:1.6}.booking-external small{grid-column:1/-1;font-size:12px}.booking-external-link{border:1px solid var(--paper);min-height:50px;color:var(--ink);background:var(--paper);text-align:center;border-radius:999px;justify-content:center;align-items:center;gap:14px;padding:14px 20px;font-size:14px;font-weight:600;line-height:1.5;transition:background-color .18s,border-color .18s;display:inline-flex}.booking-external-link:hover{border-color:var(--paper-deep);background:var(--paper-deep)}.booking-external-link:focus-visible{outline-color:var(--paper)}@media (max-width:1100px){.booking-external{grid-template-columns:minmax(0,1fr);padding:20px}.booking-external-link{justify-self:start}}.booking-engine{padding:clamp(90px, 10vw, 150px) max(var(--page-pad), 6vw) clamp(120px, 13vw, 210px);position:relative}.booking-progress{z-index:3;border-top:1px solid var(--line-dark);grid-template-columns:repeat(3,1fr);max-width:860px;margin:0 0 clamp(70px,8vw,120px);padding:0;list-style:none;display:grid;position:relative}.booking-progress li{color:#1717126e;letter-spacing:.1em;text-transform:uppercase;gap:13px;padding:18px 18px 0 0;font-size:10px;display:flex}.booking-progress li:before{content:"";background:0 0;width:calc(33.333% - 20px);height:2px;position:absolute;top:-1px}.booking-progress li.is-current,.booking-progress li.is-complete{color:var(--ink)}.booking-progress li.is-current:before,.booking-progress li.is-complete:before{background:var(--seal)}.booking-progress li span{color:var(--seal);font-family:Arial,sans-serif}.booking-layout{z-index:3;grid-template-columns:minmax(0,1fr) minmax(320px,.42fr);align-items:start;gap:clamp(54px,7vw,120px);max-width:1500px;margin:0 auto;display:grid;position:relative}.booking-workspace{min-width:0}.booking-step>header{max-width:720px;margin-bottom:54px}.booking-step>header h2{margin-bottom:24px;font-size:clamp(52px,5.2vw,82px)}.booking-step>header>p:last-child{color:#171712ab;max-width:610px;line-height:1.85}.booking-date-readout{color:var(--paper);background:var(--ink);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin-bottom:32px;padding:22px 28px;display:grid}.booking-date-readout span,.summary-dates span{gap:5px;display:grid}.booking-date-readout span:last-child{text-align:right}.booking-date-readout small,.summary-dates small{color:#f1eee58f;letter-spacing:.15em;text-transform:uppercase;font-family:Arial,sans-serif;font-size:8px}.booking-date-readout strong{font-family:var(--font-display), Georgia, serif;font-size:clamp(18px,2vw,26px);font-weight:400}[lang=ja] .booking-date-readout strong{font-family:var(--font-japanese), serif}.booking-calendar-tools{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;font-size:12px;display:flex}.booking-calendar-tools button{min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #a9a9a9;border-radius:4px;padding:8px 12px}.booking-calendar-tools button:disabled{opacity:.5;cursor:default}.booking-calendar-tools button:focus-visible{outline-offset:3px;outline:2px solid}.booking-calendar{border:1px solid var(--line-dark);background:#fff3;padding:clamp(22px,3vw,42px)}.booking-calendar .rdp-root{--rdp-accent-color:var(--seal);--rdp-accent-background-color:#9d3f2d1f;--rdp-day-height:64px;--rdp-day-width:46px;--rdp-day_button-height:60px;--rdp-day_button-width:42px;--rdp-selected-border:1px solid var(--seal);--rdp-range_middle-background-color:#9d3f2d1a;--rdp-range_middle-color:var(--ink);margin:0}.booking-calendar .rdp-months{justify-content:space-between;gap:clamp(32px,5vw,76px)}.booking-calendar .rdp-month{flex:1 1 0;min-width:0}.booking-calendar .rdp-month_grid{border-collapse:collapse;width:100%}.booking-calendar .rdp-month_caption{min-height:54px;font-family:var(--font-display), Georgia, serif;padding:0 48px;font-size:23px}[lang=ja] .booking-calendar .rdp-month_caption{font-family:var(--font-japanese), serif}.booking-calendar .rdp-weekday{color:#1717127a;letter-spacing:.12em;text-transform:uppercase;padding-bottom:14px;font-family:Arial,sans-serif;font-size:8px}.booking-calendar .rdp-day_button{border-radius:8px;flex-direction:column;justify-content:center;gap:5px;margin:auto;font-size:12px;display:flex}.booking-calendar-rate-note{color:var(--ink);margin:0 0 18px;font-size:12px;line-height:1.6}.booking-day-number{line-height:1.2}.booking-day-price{font-variant-numeric:tabular-nums;white-space:nowrap;letter-spacing:-.025em;font:10px/1.2 Arial,sans-serif}.booking-calendar .rdp-today:not(.rdp-selected) .rdp-day_button{border:1px solid #17171247}.booking-calendar .rdp-selected .rdp-day_button,.booking-calendar .rdp-range_start .rdp-day_button,.booking-calendar .rdp-range_end .rdp-day_button{color:var(--paper);background:var(--seal)}.booking-calendar .rdp-disabled{opacity:.26;text-decoration:line-through}.booking-calendar .rdp-outside{opacity:.18}.booking-calendar .rdp-footer{color:#17171299;text-align:center;padding-top:22px;font-size:11px}.guest-selectors{grid-template-columns:1fr 1fr;gap:20px;margin-top:28px;display:grid}.guest-counter{border:1px solid var(--line-dark);justify-content:space-between;align-items:center;gap:20px;min-height:88px;padding:16px 20px;display:flex}.guest-counter>span{display:grid}.guest-counter strong{font-family:var(--font-display), Georgia, serif;font-size:20px;font-weight:400}[lang=ja] .guest-counter strong{font-family:var(--font-japanese), serif}.guest-counter small{color:#17171285;font-size:10px}.guest-counter>div{text-align:center;grid-template-columns:34px 30px 34px;align-items:center;display:grid}.guest-counter button{border:1px solid var(--line-dark);cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:34px;height:34px;padding:0;display:grid}.guest-counter button:disabled{cursor:not-allowed;opacity:.25}.guest-counter output{font-family:Arial,sans-serif;font-size:13px}.booking-rule-chips{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.booking-rule-chips span{color:#171712a1;border:1px solid var(--line-dark);letter-spacing:.05em;border-radius:20px;padding:7px 10px;font-size:9px}.booking-primary,.booking-secondary{border:1px solid var(--ink);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;justify-content:space-between;align-items:center;gap:46px;min-height:54px;padding:0 22px;font-size:10px;font-weight:600;display:inline-flex}.booking-primary{min-width:270px;color:var(--paper);background:var(--ink);margin-top:42px}.booking-primary:hover:not(:disabled){border-color:var(--seal);background:var(--seal)}.booking-primary:disabled{cursor:not-allowed;opacity:.38}.booking-secondary{background:0 0}.booking-actions{justify-content:space-between;align-items:center;gap:20px;margin-top:48px;display:flex}.booking-actions .booking-primary{margin-top:0}.booking-form-grid{grid-template-columns:1fr 1fr;gap:26px 22px;display:grid}.booking-form-grid label{gap:9px;min-width:0;display:grid}.booking-form-grid label.wide{grid-column:1/-1}.booking-form-grid label>span{letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:600}.booking-form-grid input,.booking-form-grid select,.booking-form-grid textarea{width:100%;min-height:52px;color:var(--ink);font:inherit;background:#ffffff52;border:1px solid #17171242;border-radius:0;outline:0;padding:12px 14px}.booking-form-grid textarea{resize:vertical}.booking-form-grid input:focus,.booking-form-grid select:focus,.booking-form-grid textarea:focus{border-color:var(--seal);box-shadow:0 0 0 1px var(--seal)}.booking-form-grid label>small{color:#17171291;font-size:10px;line-height:1.6}.booking-summary{top:calc(var(--header-height) + 30px);color:var(--paper);background:var(--ink);padding:clamp(28px,3.6vw,48px);position:sticky}.booking-summary .eyebrow{color:#f1eee58c}.booking-summary h2{margin-bottom:34px;font-size:clamp(30px,3vw,44px);line-height:1.25}.summary-dates{border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:22px 0;display:grid}.summary-dates span:last-child{text-align:right}.summary-dates strong{font-family:var(--font-display), Georgia, serif;font-size:15px;font-weight:400}[lang=ja] .summary-dates strong{font-family:var(--font-japanese), serif}.summary-guests,.summary-empty{color:#f1eee5a6;margin:20px 0 0;font-size:11px}.summary-empty{border-bottom:1px solid var(--line-light);padding:28px 0;line-height:1.7}.booking-price-rows{margin:28px 0 0}.booking-price-rows>div{justify-content:space-between;gap:24px;padding:8px 0;font-size:11px;display:flex}.booking-price-rows dt,.booking-price-rows dd{margin:0}.booking-price-total{font-family:var(--font-display), Georgia, serif;border-top:1px solid;margin-top:14px;padding-top:19px!important;font-size:21px!important}.booking-summary .booking-price-total{border-color:var(--line-light)}.example-rate-note{color:#3d2d1f;background:#d6bd86;gap:5px;margin-top:28px;padding:14px;display:grid}.example-rate-note strong{letter-spacing:.08em;text-transform:uppercase;font-size:10px}.example-rate-note span{font-size:10px;line-height:1.55}.secure-payment-note{color:#f1eee58c;gap:10px;margin:24px 0 0;font-size:9px;line-height:1.6;display:flex}.booking-review-card,.booking-review-price,.booking-policy{border:1px solid var(--line-dark);padding:clamp(24px,3.5vw,42px)}.booking-review-card h3,.booking-review-price h3{margin-bottom:28px;font-size:clamp(28px,3vw,42px)}.booking-review-card dl{border-top:1px solid var(--line-dark);margin:0}.booking-review-card dl>div{border-bottom:1px solid var(--line-dark);grid-template-columns:150px 1fr;gap:24px;padding:17px 0;display:grid}.booking-review-card dt{color:#17171287;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.booking-review-card dd{margin:0;font-size:14px;display:grid}.booking-review-card dd small{color:#1717128c}.booking-review-price{margin-top:20px}.booking-policy{background:#ffffff38;margin-top:20px}.booking-policy p:last-child{color:#171712b3;margin-bottom:0;font-size:12px;line-height:1.8}.booking-checkbox{cursor:pointer;align-items:flex-start;gap:13px;margin-top:22px;font-size:12px;line-height:1.6;display:flex}.booking-checkbox input{width:18px;height:18px;accent-color:var(--seal);margin:1px 0 0}.preview-warning{color:#3d2d1f;background:#d6bd86;gap:5px;margin:28px 0 0;padding:16px 18px;font-size:11px;display:grid}.booking-error{color:#702b21;border-left:3px solid var(--seal);background:#9d3f2d1a;margin:24px 0 0;padding:14px 18px;font-size:12px}.booking-turnstile{min-height:65px;margin-top:24px}.checkout-recovery{scroll-margin-top:var(--header-height);padding:clamp(32px,6vw,80px) 20px}body:has(.checkout-recovery) .site-header{color:var(--paper);background:#25251f}.checkout-recovery #checkout-recovery-title:focus{outline:none}.checkout-recovery-card{border:1px solid var(--line-dark);border-radius:18px;max-width:660px;margin:0 auto;padding:clamp(22px,4vw,44px)}.checkout-recovery #checkout-recovery-title{overflow-wrap:anywhere;margin:14px 0 18px;font-size:clamp(28px,4vw,44px);line-height:1.3}.checkout-recovery p{color:#48483e;font-size:15px;line-height:1.8}.checkout-recovery dl{margin:28px 0}.checkout-recovery dl>div{border-bottom:1px solid var(--line-dark);flex-wrap:wrap;justify-content:space-between;gap:8px 20px;padding:12px 0;display:flex}.checkout-recovery dt{color:#48483e;font-size:13px}.checkout-recovery dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:0;font-size:16px}.checkout-recovery-actions{gap:14px;display:grid}.checkout-recovery button,.checkout-recovery a{white-space:normal;text-align:center;min-height:44px;line-height:1.6}.checkout-recovery a:not(.booking-primary){color:#000;text-underline-offset:4px;padding:10px 0;text-decoration:underline}.checkout-recovery-new,.checkout-recovery-hide{border-top:1px solid var(--line-dark);margin-top:24px;padding-top:20px}.checkout-recovery .booking-checkbox{color:#48483e;margin:0 0 16px;font-size:14px}.checkout-recovery :focus-visible{outline-offset:4px;outline:3px solid #000}.booking-complete{text-align:center;justify-items:center;min-height:72svh;padding:14vh 22px;display:grid}.booking-complete-mark{width:76px;height:76px;color:var(--paper);background:var(--moss);border-radius:50%;place-items:center;margin-bottom:34px;font-size:26px;display:grid}.booking-complete h2{max-width:900px;margin-bottom:30px;font-size:clamp(48px,6vw,88px)}.booking-complete>p:not(.eyebrow){color:#171712ad;max-width:680px;line-height:1.8}.booking-complete dl{border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);min-width:min(420px,100%);margin:36px 0;padding:20px}.booking-complete dt{color:#1717128c;letter-spacing:.1em;text-transform:uppercase;font-size:9px}.booking-complete dd{font-family:var(--font-display), Georgia, serif;margin:6px 0 0;font-size:25px}@media (max-width:980px){.booking-hero{grid-template-columns:90px 1fr}.booking-layout{grid-template-columns:1fr}.booking-summary{grid-row:1;position:static}.booking-workspace{grid-row:2}}@media (max-width:640px){.booking-hero{min-height:700px;padding:calc(var(--header-height) + 66px) 22px 76px;background:linear-gradient(#11110cb3,#11110cf2 64%),url(/media/source/0e5595d6733cea09.webp) 52%/cover;grid-template-columns:1fr;gap:30px}.booking-hero-logo{justify-self:start;width:64px}.booking-hero h1,[lang=ja] .booking-hero h1{font-size:clamp(43px,13vw,62px)}.booking-hero>div>p:not(.eyebrow){font-size:14px}.booking-hero ul{gap:11px;margin-top:34px;display:grid}.booking-engine{padding:82px 18px 120px}.booking-progress{margin-bottom:66px}.booking-progress li{gap:6px;padding-right:8px;font-size:8px;line-height:1.4;display:grid}.booking-layout{gap:70px}.booking-summary{padding:28px 22px}.booking-step>header{margin-bottom:38px}.booking-step>header h2,[lang=ja] .booking-step>header h2{font-size:clamp(39px,12vw,54px)}.booking-date-readout{gap:10px;padding:18px 14px}.booking-date-readout strong{font-size:15px}.booking-calendar{padding:18px 8px}.booking-calendar .rdp-root{--rdp-day-height:60px;--rdp-day-width:min(41px, calc((100vw - 88px) / 7));--rdp-day_button-height:56px;--rdp-day_button-width:min(38px, calc((100vw - 102px) / 7))}.booking-calendar .rdp-month_caption{font-size:20px}.guest-selectors,.booking-form-grid{grid-template-columns:1fr}.booking-form-grid label.wide{grid-column:auto}.booking-actions{flex-direction:column-reverse;align-items:stretch}.booking-actions .booking-primary,.booking-actions .booking-secondary,.booking-primary{justify-content:space-between;width:100%;min-width:0}.booking-review-card,.booking-review-price,.booking-policy{padding:24px 18px}.booking-review-card dl>div{grid-template-columns:1fr;gap:4px}}.admin-shell{color:#20201b;background:#e8e4d9;min-height:100svh;padding:clamp(28px,4vw,64px);font-family:Arial,Noto Sans JP,sans-serif}.admin-topbar,.admin-section-heading,.admin-footer{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.admin-topbar h1,.admin-section-heading h2,.admin-login h1{font-family:var(--font-display), Georgia, serif;letter-spacing:-.035em;margin:3px 0 0;font-weight:400}.admin-topbar h1{font-size:clamp(38px,5vw,72px)}.admin-topbar h1 span{color:#20201b73;letter-spacing:.02em;font-size:.36em}.admin-topbar-actions{flex-wrap:wrap;gap:10px;max-width:100%;display:flex}.admin-topbar-actions a,.admin-topbar-actions button,.admin-row-actions button,.admin-rule-list button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #20201b47;padding:10px 13px;font-size:10px}.admin-mode-banner{color:#342914;background:#dfc991;grid-template-columns:auto 1fr;gap:24px;margin-top:34px;padding:15px 18px;font-size:11px;line-height:1.5;display:grid}.admin-mode-banner.is-live{color:#efefef;background:#000}.admin-tabs{border-bottom:1px solid #20201b40;gap:0;margin:38px 0 24px;display:flex;overflow-x:auto}.admin-tabs button{color:#20201b91;min-width:max-content;font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:16px 20px;font-size:11px}.admin-tabs button.is-current{color:#20201b;border-color:#8a3027}.admin-panel{background:#f5f2e9;padding:clamp(28px,4vw,56px)}.admin-section-heading{margin-bottom:38px}.admin-section-heading h2{font-size:clamp(34px,4vw,58px)}.admin-section-heading>span{color:#20201b91;text-align:right;max-width:320px;font-size:10px;line-height:1.6}.admin-kpis{border:1px solid #20201b33;grid-template-columns:repeat(4,1fr);margin-bottom:42px;display:grid}.admin-kpis article{border-right:1px solid #20201b33;gap:6px;min-height:150px;padding:24px;display:grid}.admin-kpis article:last-child{border-right:0}.admin-kpis small,.admin-kpis span{color:#20201b8c;letter-spacing:.08em;text-transform:uppercase;font-size:9px}.admin-kpis strong{font-family:var(--font-display), Georgia, serif;margin:auto 0 0;font-size:clamp(30px,3vw,48px);font-weight:400}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;min-width:950px;font-size:11px}.admin-table caption{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.admin-table th{color:#20201b80;letter-spacing:.08em;text-align:left;text-transform:uppercase;border-bottom:1px solid #20201b42;padding:13px 10px;font-size:9px}.admin-table td{vertical-align:top;border-bottom:1px solid #20201b24;padding:18px 10px}.admin-table td strong,.admin-table td small{display:block}.admin-table td small{color:#20201b85;margin-top:6px;line-height:1.5}.admin-guest-notes{color:#20201b9e;margin-top:9px;font-size:9px}.admin-guest-notes summary{cursor:pointer;text-decoration:underline}.admin-guest-notes span{max-width:230px;padding-top:7px;line-height:1.55;display:block}.admin-status{color:#5b3c16;background:#ead8ad;padding:6px 8px;font-size:9px;display:inline-block}.admin-status.is-confirmed{color:#e8e8e8;background:#000}.admin-row-actions{gap:6px;display:flex}.admin-row-actions .is-danger{color:#8a3027}.admin-row-actions button:disabled{cursor:not-allowed;opacity:.35}.admin-calendar-grid,.admin-two-column{grid-template-columns:minmax(0,1.5fr) minmax(290px,.7fr);gap:clamp(28px,5vw,72px);display:grid}.admin-calendar{overflow-x:auto}.admin-calendar .rdp-root{--rdp-accent-color:#8a3027;--rdp-day-width:44px;--rdp-day-height:44px}.admin-calendar .rdp-months{gap:36px}.admin-calendar .admin-day-booked .rdp-day_button{color:#f5f2e9;background:#000}.admin-calendar .admin-day-blocked .rdp-day_button{color:#4c3514;background:#dfc991}.admin-legend{gap:14px;font-size:9px;display:flex}.admin-legend span:before{content:"";width:9px;height:9px;margin-right:6px;display:inline-block}.admin-legend .booked:before{background:#000}.admin-legend .blocked:before{background:#dfc991}.admin-side-form{background:#e8e4d9;align-self:start;padding:28px}.admin-side-form h3,.admin-rule-list h3{font-family:var(--font-display), Georgia, serif;margin:0 0 28px;font-size:32px;font-weight:400}.admin-field{gap:7px;margin-bottom:16px;display:grid}.admin-field>span{letter-spacing:.06em;text-transform:uppercase;font-size:9px;font-weight:700}.admin-field small{color:#20201b8c;font-size:9px;line-height:1.5}.admin-field input,.admin-field select,.admin-field textarea{color:#20201b;width:100%;min-height:46px;font:inherit;background:#ffffff8c;border:1px solid #20201b45;border-radius:0;padding:10px 12px;font-size:12px}.admin-field textarea{resize:vertical}.admin-inline-fields{grid-template-columns:1fr 1fr;gap:10px;display:grid}.admin-primary{color:#f5f2e9;min-height:48px;font:inherit;letter-spacing:.08em;cursor:pointer;text-transform:uppercase;background:#20201b;border:0;padding:0 18px;font-size:10px}.admin-primary:disabled{cursor:not-allowed;opacity:.35}.admin-rule-list{margin-top:34px}.admin-rule-list.large{margin-top:0}.admin-rule-list h4{letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:10px}.admin-rule-list article{border-bottom:1px solid #20201b29;justify-content:space-between;gap:18px;padding:15px 0;display:flex}.admin-rule-list article div{gap:5px;display:grid}.admin-rule-list article strong{font-size:11px}.admin-rule-list article span{color:#20201b91;font-size:9px;line-height:1.5}.admin-settings-group{border-top:1px solid #20201b33;padding:30px 0}.admin-settings-group h3{font-family:var(--font-display), Georgia, serif;margin-bottom:24px;font-size:27px;font-weight:400}.admin-settings-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.admin-settings-grid.four{grid-template-columns:repeat(4,1fr)}.admin-toggle{cursor:pointer;border:1px solid #20201b33;align-items:center;gap:13px;min-height:70px;padding:12px 16px;display:flex}.admin-toggle input{accent-color:#8a3027;width:18px;height:18px}.admin-toggle span{gap:4px;display:grid}.admin-toggle strong{font-size:11px}.admin-toggle small{color:#20201b8c;font-size:9px}.admin-launch-check{color:#4c3514;background:#dfc991;margin:24px 0 28px;padding:22px;font-size:11px}.admin-launch-check ul{margin:12px 0 0;padding-left:17px;line-height:1.8}.admin-notice,.admin-error{margin:0 0 20px;padding:14px 17px;font-size:11px}.admin-notice{color:#000;background:#e2e2e2}.admin-error{color:#7b2f27;background:#ead8d2}.admin-payment-alert{color:#50221d;background:#ead8d2;border-left:4px solid #8a3027;margin:0 0 24px;padding:24px;font-size:14px;line-height:1.6}.admin-payment-alert p{margin:8px 0 14px}.admin-payment-incident{overflow-wrap:anywhere;background:#fffaf4;border:1px solid #b99389;margin:28px 0;padding:clamp(18px,3vw,32px);font-size:14px;line-height:1.6}.admin-payment-incident h3{font-size:24px}.admin-payment-incident p{margin:12px 0}.admin-payment-incident dl{grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:18px;margin:24px 0;display:grid}.admin-payment-incident dt{color:#61544e;font-size:12px}.admin-payment-incident dd{margin:4px 0 0;font-weight:600}.admin-payment-incident details{margin:18px 0}.admin-payment-incident summary{cursor:pointer;text-decoration:underline}.admin-payment-incident form{margin-top:24px}.admin-payment-incident .admin-field>span,.admin-payment-incident .admin-field small{letter-spacing:normal;text-transform:none;font-size:12px}.admin-payment-incident .admin-field small{color:#61544e}.admin-email-panel{overflow-wrap:anywhere;font-size:14px;line-height:1.65}.admin-email-panel>p{margin:12px 0}.admin-email-panel .admin-primary{letter-spacing:normal;text-transform:none;font-size:12px}.admin-email-panel .admin-kpis{grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));margin:28px 0}.admin-email-panel .admin-kpis article{border:1px solid #cbc5b8;min-width:0}.admin-email-panel .admin-kpis small,.admin-email-panel .admin-kpis span{color:#615b50;letter-spacing:normal;text-transform:none;font-size:12px}.admin-email-panel .admin-email-worker-status{font:600 22px/1.4 Arial,sans-serif}.admin-email-panel .admin-error{font-size:14px;line-height:1.65}.admin-email-list{gap:20px;margin-top:28px;display:grid}.admin-email-card{background:#fffaf4;border:1px solid #cbc5b8;min-width:0;padding:clamp(18px,3vw,28px)}.admin-email-card h3{margin:0 0 8px;font:600 20px/1.4 Arial,sans-serif}.admin-email-card p{margin:5px 0}.admin-email-card dl{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:20px;margin:22px 0 0;display:grid}.admin-email-card dt{color:#615b50;font-size:12px}.admin-email-card dd{margin:4px 0 0;font-weight:600}.admin-email-panel details{margin-top:16px}.admin-email-panel summary{cursor:pointer;min-height:44px;padding:10px 0;text-decoration:underline}.admin-email-panel ul{padding-left:20px}.admin-email-panel :is(button,summary):focus-visible{outline-offset:4px;outline:3px solid #65482f}.admin-email-review{min-width:0;margin-top:18px}.admin-email-review fieldset{min-inline-size:0;border:0;gap:12px;width:100%;margin:0;padding:0;display:grid}.admin-email-review select{color:#272727;background:#fff;border:1px solid #b2b2b2;border-radius:4px;width:100%;min-width:0;max-width:100%;padding:11px 12px;font-size:16px}.admin-email-review label:has(input[type=checkbox]){align-items:flex-start;gap:10px;min-height:44px;display:flex}.admin-email-review input[type=checkbox]{accent-color:#000;flex:none;width:20px;height:20px;margin:4px 0 0}.admin-email-review button{white-space:normal;max-width:100%}.admin-email-review textarea{width:100%;min-width:0;min-height:100px;font:inherit;color:#272727;resize:vertical;background:#fff;border:1px solid #b2b2b2;border-radius:4px;margin-top:8px;padding:12px;display:block}.admin-email-review p{overflow-wrap:anywhere}.admin-email-review textarea:focus-visible,.admin-email-review :is(select,input):focus-visible{outline-offset:3px;outline:2px solid #000}.admin-footer{color:#20201b8c;border-top:1px solid #20201b40;margin-top:38px;padding-top:20px;font-size:10px}.admin-footer a{color:inherit}.admin-loading{text-align:center;padding-top:30vh}.admin-login-shell{place-items:center;display:grid}.admin-login{background:#f5f2e9;width:min(480px,100%);padding:clamp(28px,5vw,56px)}.admin-login h1{margin-bottom:18px;font-size:50px}.admin-login>p:not(.eyebrow,.admin-error){color:#20201b9e;margin-bottom:28px;font-size:12px;line-height:1.7}@media (max-width:900px){.admin-kpis{grid-template-columns:1fr 1fr}.admin-kpis article:nth-child(2){border-right:0}.admin-kpis article:nth-child(-n+2){border-bottom:1px solid #20201b33}.admin-calendar-grid,.admin-two-column{grid-template-columns:1fr}.admin-settings-grid.four{grid-template-columns:1fr 1fr}}@media (max-width:600px){.admin-shell{padding:18px}.admin-topbar,.admin-section-heading{flex-direction:column;align-items:flex-start}.admin-topbar-actions{width:100%}.admin-topbar-actions a,.admin-topbar-actions button{text-align:center;flex:90px;min-height:44px}.admin-mode-banner{grid-template-columns:1fr;gap:5px}.admin-tabs{margin-top:24px}.admin-panel{padding:26px 18px}.admin-kpis,.admin-settings-grid,.admin-settings-grid.four,.admin-inline-fields{grid-template-columns:1fr}.admin-kpis article{border-bottom:1px solid #20201b33;border-right:0}.admin-kpis article:last-child{border-bottom:0}.admin-calendar .rdp-root{--rdp-day-width:39px;--rdp-day-height:39px}.admin-calendar .rdp-months{width:max-content}.admin-footer{flex-direction:column;align-items:flex-start}}.confirmation-page{min-height:86svh;padding:calc(var(--header-height) + 80px) 22px 100px;place-items:center;display:grid}.confirmation-card{border:1px solid var(--line-dark);text-align:center;width:min(780px,100%);padding:clamp(32px,7vw,84px)}.confirmation-mark{width:72px;height:72px;color:var(--paper);background:var(--moss);border-radius:50%;place-items:center;margin:0 auto 30px;font-size:27px;display:grid}.confirmation-card.is-processing .confirmation-mark{color:var(--ink);background:#d6bd86}.confirmation-card.is-failed .confirmation-mark{background:var(--seal)}.confirmation-card h1{margin:0 auto 24px;font-size:clamp(42px,6vw,78px);line-height:1.05}.confirmation-card>p:not(.eyebrow){color:#171712a8;max-width:610px;margin:0 auto;font-size:13px;line-height:1.8}.confirmation-card dl{border-top:1px solid var(--line-dark);margin:38px 0 0}.confirmation-card dl div{border-bottom:1px solid var(--line-dark);text-align:left;grid-template-columns:1fr 1fr;gap:20px;padding:15px 0;display:grid}.confirmation-card dt{color:#17171285;letter-spacing:.08em;text-transform:uppercase;font-size:9px}.confirmation-card dd{text-align:right;margin:0}.confirmation-actions{justify-content:center;align-items:center;gap:28px;margin-top:40px;display:flex}.confirmation-actions .button-ink{padding:16px 24px}.confirmation-actions a:last-child{color:#171712a6;font-size:11px;text-decoration:underline}@media (max-width:600px){.confirmation-page{padding:calc(var(--header-height) + 50px) 18px 70px}.confirmation-card{padding:40px 20px}.confirmation-card dl div{grid-template-columns:1fr;gap:5px}.confirmation-card dd{text-align:left}.confirmation-actions{flex-direction:column;align-items:stretch}}.film-hero,.feature-chapter{height:100svh;min-height:46rem}.film-hero-media-shell,.feature-chapter-image{background:var(--ink) url(/media/hero-poster.jpg) center / cover no-repeat;will-change:transform;width:auto;height:auto;position:absolute;inset:-7rem 0}.feature-chapter-image{background:var(--ink)}.film-hero-media,.feature-chapter-image img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0;transform:none}.film-hero-content{width:min(830px, calc(100% - var(--page-pad) * 2));will-change:transform, opacity;justify-content:center;height:100%;margin:0 auto;padding-top:6rem;padding-bottom:3rem;position:relative;top:auto;left:auto;transform:none}.film-hero-title-line,.feature-chapter-title-line{padding-bottom:.08em;display:block;overflow:hidden}.film-hero-title-line>span,.feature-chapter-title-line>span{will-change:transform;display:block}.feature-chapter-image{inset:-7rem 0}.feature-chapter-image img{inset:0}.chapter-scrim{background:linear-gradient(90deg,#090907c7 0%,#09090757 46%,#0909070d 78%),linear-gradient(#09090700 45%,#09090773 100%)}.align-right .chapter-scrim{background:linear-gradient(270deg,#090907c7 0%,#09090757 46%,#0909070d 78%),linear-gradient(#09090700 45%,#09090773 100%)}.feature-chapter-content,.align-right .feature-chapter-content{width:100%;max-width:none;height:100%;padding:6rem max(var(--page-pad), 7vw) 3rem;will-change:transform, opacity;flex-direction:column;justify-content:center;align-items:flex-start;display:flex;position:relative;inset:auto}.feature-chapter-content>*{width:min(660px,52vw)}.align-right .feature-chapter-content{align-items:flex-end}.feature-chapter-meta{align-items:center;gap:18px;margin-bottom:22px;display:flex}.feature-chapter-meta .eyebrow{width:auto;margin:0}.chapter-number{letter-spacing:.14em;width:auto;font-family:Arial,sans-serif;font-size:9px;position:static}.feature-chapter h2{margin-bottom:24px;line-height:.9}[lang=ja] .feature-chapter h2{line-height:1.18}.booking-page{background:var(--paper-deep);padding:18px 18px 0}.booking-hero{min-height:min(760px,92svh);padding:calc(var(--header-height) + 64px) max(var(--page-pad), 8vw) 92px;background:linear-gradient(90deg,#11110cf0 0%,#11110cb3 52%,#11110c57 100%),url(/media/source/0e5595d6733cea09.webp) 50% 46%/cover;border-radius:30px;box-shadow:0 24px 70px #1717122b}.booking-engine{max-width:1540px;margin:0 auto;padding:clamp(84px,9vw,136px) clamp(20px,5vw,76px) clamp(110px,12vw,180px)}.booking-progress{background:#17171214;border:0;border-radius:999px;gap:6px;max-width:760px;margin:0 auto clamp(58px,7vw,96px);padding:6px}.booking-progress li{border-radius:999px;justify-content:center;padding:12px 16px;position:relative}.booking-progress li:before{display:none}.booking-progress li.is-current{color:var(--paper);background:var(--ink)}.booking-progress li.is-current span{color:#d6bd86}.booking-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.4fr);gap:clamp(24px,3vw,44px)}.booking-workspace{background:#ffffff61;border:1px solid #1717121c;border-radius:30px;padding:clamp(28px,4vw,58px);box-shadow:0 20px 55px #17171212}.booking-step>header h2{font-size:clamp(48px,4.5vw,72px)}[lang=ja] .booking-step>header h2{font-size:clamp(38px,3.8vw,58px)}.booking-date-readout{border-radius:20px}.booking-calendar{background:#ffffff7a;border-color:#1717121f;border-radius:24px}.guest-counter{background:#ffffff52;border-color:#17171224;border-radius:18px}.booking-primary,.booking-secondary{border-radius:999px}.booking-form-grid input,.booking-form-grid select,.booking-form-grid textarea{background:#ffffff80;border-radius:12px}.booking-summary{border-radius:28px;box-shadow:0 24px 60px #1717122e}.booking-review-card,.booking-review-price,.booking-policy,.example-rate-note,.preview-warning{border-radius:20px}@media (max-width:1120px){.booking-layout{grid-template-columns:1fr}.booking-summary{grid-row:1;position:static}.booking-workspace{grid-row:2}}@media (max-width:820px){.film-hero,.feature-chapter{min-height:43rem}.film-hero-content{justify-content:flex-end;width:calc(100% - 44px);padding-top:8rem;padding-bottom:6.2rem;top:auto;bottom:auto;transform:none}.hero-brand-logo{width:clamp(92px,27vw,122px);margin-bottom:24px}.feature-chapter .chapter-scrim,.align-right.feature-chapter .chapter-scrim{background:linear-gradient(#0909072e 0%,#09090761 38%,#090907d6 100%)}.feature-chapter-content,.align-right .feature-chapter-content{justify-content:flex-end;align-items:flex-start;padding:7rem 22px 4.6rem}.feature-chapter-content>*{width:100%}.feature-chapter-content>p:not(.eyebrow){max-width:34rem}.feature-chapter .text-link{width:auto}}@media (max-width:800px){.film-hero-content{height:100svh;padding-top:var(--header-height);justify-content:center;padding-bottom:0}}@media (max-width:640px){.booking-page{padding:10px 10px 0}.booking-hero{min-height:0;padding:calc(var(--header-height) + 28px) 22px 38px;border-radius:22px;display:block}.booking-hero-logo{float:right;width:26px;margin:0 0 12px 18px}.booking-hero h1{clear:both;margin-bottom:20px}.booking-external{clear:both;margin-top:24px;padding:18px}.booking-external-link{justify-self:stretch}.booking-engine{padding:72px 8px 110px}.booking-progress{border-radius:18px;gap:3px;margin-bottom:48px}.booking-progress li{border-radius:13px;padding:10px 6px}.booking-layout{gap:22px}.booking-workspace{border-radius:22px;padding:28px 14px}.booking-summary{border-radius:22px}.booking-calendar{border-radius:18px}}@media (max-width:600px){.film-hero-media-shell,.feature-chapter-image{inset:-5rem -28%}.feature-chapter-image img{inset:0}}@media (prefers-reduced-motion:reduce){.film-hero-media-shell,.film-hero-content,.film-hero-title-line>span,.feature-chapter-image,.feature-chapter-content,.feature-chapter-title-line>span{opacity:1!important;transform:none!important}.film-hero-media{display:none}}@media (max-width:767px){a .cta-arrow,button .cta-arrow,.next-page .next-page-arrow{display:none}}.feature-chapter.feature-chapter-pending{height:auto;min-height:640px;padding:clamp(60px, 8vw, 120px) var(--page-pad);grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,6vw,100px);display:grid}.chapter-pending-media{z-index:2;min-width:0;position:relative}.chapter-pending-media .media-placeholder{color:#b8b7ab;min-height:420px}.chapter-pending-copy{z-index:2;min-width:0;position:relative}.chapter-pending-copy h2{font-size:clamp(48px,5vw,86px)}.chapter-pending-copy>p{max-width:460px;margin-bottom:30px;line-height:1.8}.bathroom-section{padding:clamp(64px, 8vw, 120px) var(--page-pad);grid-template-columns:1.2fr 1fr;align-items:center;gap:clamp(32px,6vw,96px);display:grid}.bathroom-photo{aspect-ratio:3/2;z-index:2;min-width:0;position:relative}.bathroom-photo img{object-fit:contain}.bathroom-copy{z-index:2;position:relative}.bathroom-copy h2{margin-bottom:24px;font-size:clamp(42px,4.2vw,70px);line-height:1.05}.bathroom-copy>p:not(.eyebrow){max-width:420px;margin-bottom:26px;line-height:1.8}.home-stay:has(.residence-gallery){align-items:center;min-height:0}.home-stay-image:has(.residence-gallery){min-width:0;min-height:0}.residence-gallery{min-width:0;scroll-margin-top:100px}.residence-gallery-heading{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px;display:flex}.residence-gallery-heading .eyebrow{margin:0}.residence-gallery-heading>span{color:#626254;font-size:11px}.residence-gallery-stage{aspect-ratio:3/2;touch-action:pan-y;background:#deddd4;position:relative}.residence-gallery-stage:focus-visible{outline:2px solid var(--seal);outline-offset:4px}.home-stay-image .residence-gallery-image{object-fit:contain;animation:.3s residence-photo-reveal}.residence-gallery-caption{justify-content:space-between;align-items:center;gap:16px;min-height:96px;padding:16px 0;display:flex}.residence-gallery-category{letter-spacing:.12em;text-transform:uppercase;color:#626254;margin-bottom:8px;font-size:10px;display:block}.residence-gallery-caption p{margin:0;font-size:16px;line-height:1.35}.residence-gallery-controls{flex-shrink:0;gap:8px;display:flex}.residence-gallery-controls button{border:1px solid var(--line-dark);width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;place-items:center;padding:0;transition:background .16s,color .16s;display:grid}.residence-gallery-controls button:hover{color:var(--paper);background:var(--ink)}.residence-gallery-thumbnails{overscroll-behavior-x:contain;scrollbar-width:thin;gap:8px;padding:4px 3px 12px;display:flex;position:relative;overflow-x:auto}.residence-gallery-thumbnails button{cursor:pointer;opacity:.65;background:0 0;border:2px solid #0000;flex:0 0 80px;padding:2px}.residence-gallery-thumbnails button[aria-current=true]{border-color:var(--ink);opacity:1}.residence-gallery-thumbnails button:hover,.residence-gallery-thumbnails button:focus-visible{opacity:1}.residence-gallery-thumbnails img{object-fit:cover;width:100%;height:52px;display:block}.residence-gallery button:focus-visible{outline:2px solid var(--seal);outline-offset:2px}@keyframes residence-photo-reveal{0%{opacity:.35}to{opacity:1}}@media (prefers-reduced-motion:reduce){.home-stay-image .residence-gallery-image{animation:none}}@media (max-width:800px){.feature-chapter.feature-chapter-pending{grid-template-columns:1fr;gap:32px;min-height:0}.chapter-pending-media .media-placeholder{min-height:250px}.chapter-pending-copy h2{font-size:clamp(44px,12vw,72px)}.bathroom-section{grid-template-columns:1fr;gap:30px}.bathroom-copy h2{font-size:clamp(40px,11vw,64px)}.home-stay-image:has(.residence-gallery){margin:56px var(--page-pad) 0}.residence-gallery-caption{min-height:102px}.residence-gallery-caption p{font-size:14px}}.film-hero-media-shell{will-change:auto;background-image:none;inset:0}.hero-photo{object-fit:cover;opacity:0;transition:opacity 1s;transform:none}.hero-photo.is-active{opacity:1}@media (prefers-reduced-motion:reduce){.hero-photo{transition:none}}.chauffeur-film{z-index:3;width:min(100%,340px);margin:0;position:relative}.chauffeur-film-frame{aspect-ratio:9/16;border:1px solid var(--line-light);background:#252525;position:relative}.chauffeur-film video{object-fit:contain;width:100%;height:100%}.chauffeur-film-play{text-align:left;width:100%;min-height:88px;color:var(--paper);cursor:pointer;background:#131313e6;border:0;align-items:center;gap:16px;padding:19px;display:flex;position:absolute;inset:auto 0 0}.chauffeur-film-play>span:last-child{font-size:14px;line-height:1.4}.chauffeur-film-play small{color:#cecece;letter-spacing:.04em;margin-top:4px;font-size:11px;display:block}.chauffeur-play-icon{border:1px solid #acacac;border-radius:50%;flex:0 0 42px;place-items:center;height:42px;display:grid}.chauffeur-film-play:hover{background:#000}.chauffeur-film-play:focus-visible{outline:2px solid var(--paper);outline-offset:4px}.chauffeur-film figcaption{color:#c7c7c7;padding-top:16px}.chauffeur-film figcaption>span{text-transform:uppercase;letter-spacing:.16em;font-size:10px}.chauffeur-film figcaption p{margin:7px 0 0;font-size:12px;line-height:1.65}.feature-chapter.chauffeur-feature{grid-template-columns:minmax(260px,.85fr) minmax(0,1fr);align-items:center;gap:clamp(44px,8vw,130px);height:auto;min-height:0;padding:clamp(64px,7vw,112px) clamp(22px,8vw,140px);display:grid}.chauffeur-feature-media{justify-content:center;min-width:0;display:flex}.chauffeur-feature-copy{z-index:3;max-width:540px;position:relative}.chauffeur-feature-copy h2{margin:28px 0;font-size:clamp(48px,5.6vw,84px);line-height:1.02}.chauffeur-standfirst{font-family:var(--font-display);font-size:clamp(23px,2.1vw,31px);line-height:1.35}.chauffeur-feature-copy>p:not(.chauffeur-standfirst),.chauffeur-page-intro>p:not(.eyebrow):not(.chauffeur-standfirst){color:#cfcec3;max-width:470px;margin-bottom:32px;font-size:15px;line-height:1.8}.chauffeur-page-hero{padding:calc(var(--header-height) + 64px) clamp(22px, 8vw, 140px) 70px;grid-template-columns:minmax(0,1fr) minmax(260px,.65fr);align-items:center;gap:clamp(48px,8vw,130px);display:grid}.chauffeur-page-hero .chauffeur-film{justify-self:end}.chauffeur-page-intro h1{max-width:650px;margin:28px 0 34px;font-size:clamp(58px,6.2vw,94px);line-height:.98}.chauffeur-page-intro .eyebrow{color:#cacaca}.chauffeur-journey{padding:96px var(--page-pad);scroll-margin-top:90px}.chauffeur-journey-heading{margin:0 0 50px}.chauffeur-journey-heading h2{margin-bottom:0;font-size:clamp(40px,4.2vw,68px);line-height:1.08}.chauffeur-journey-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(22px,3vw,54px);display:grid}.chauffeur-journey-grid article{min-width:0}.chauffeur-journey-photo{aspect-ratio:9/16;background:#d3d0c6;margin-bottom:25px;position:relative}.chauffeur-journey-photo img{object-fit:contain}.chauffeur-journey-grid h3{margin-bottom:18px;font-size:clamp(28px,2.6vw,40px);line-height:1.12}.chauffeur-journey-grid .eyebrow{color:#626254;margin-bottom:13px}.chauffeur-journey-grid article>p:last-child{color:#5c5b51;max-width:380px;margin-bottom:0;font-size:14px;line-height:1.8}.chauffeur-arrangements{border-top:1px solid var(--line-dark);padding:80px var(--page-pad) 96px;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,110px);display:grid}.chauffeur-arrangements h2{margin-bottom:0;font-size:clamp(40px,4vw,64px);line-height:1.08}.chauffeur-arrangements>div:last-child>p{max-width:540px}.chauffeur-arrangements-note{color:#626254;margin-top:22px;font-size:12px}.transfer-image.transfer-image-portrait{aspect-ratio:9/16;place-self:center;width:min(100%,390px);min-height:0;margin:65px 0}.transfer-image-portrait img{object-fit:contain}@media (max-width:800px){.feature-chapter.chauffeur-feature{grid-template-columns:1fr;gap:38px;padding:64px 22px}.chauffeur-feature-copy{grid-row:1}.chauffeur-feature-copy h2{font-size:clamp(48px,12vw,68px)}.chauffeur-feature-copy .feature-chapter-meta{gap:18px}.chauffeur-film{width:min(100%,340px)}.chauffeur-page-hero{padding:calc(var(--header-height) + 42px) 22px 58px;grid-template-columns:1fr;gap:36px}.chauffeur-page-hero .chauffeur-film{justify-self:center}.chauffeur-page-intro h1{font-size:clamp(52px,13vw,78px)}.chauffeur-journey{padding:64px 22px}.chauffeur-journey-heading{margin-bottom:35px}.chauffeur-journey-grid{grid-template-columns:1fr;gap:48px}.chauffeur-journey-photo{max-width:420px;margin-inline:auto}.chauffeur-arrangements{grid-template-columns:1fr;gap:32px;padding:58px 22px 70px}.transfer-image.transfer-image-portrait{width:min(100% - 44px,390px);margin:45px 22px 0}}
