:root{--paper:#f4efe5;--cream:#fbf8f1;--ink:#1c2c2c;--indigo:#24485b;--blue:#527f91;--wood:#a77b55;--line:rgba(28,44,44,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,system-ui,sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}h1,h2,h3{font-family:"Noto Serif JP",Yu Mincho,Hiragino Mincho ProN,Georgia,serif;font-weight:500;letter-spacing:.02em;margin:0;line-height:1.18}h2{font-size:clamp(2rem,5vw,4.8rem)}p{margin:0}.topbar{position:absolute;z-index:5;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:24px clamp(18px,4vw,64px);color:white}.wordmark{font-family:Georgia,serif;font-size:clamp(1.2rem,2vw,1.6rem);letter-spacing:.07em}.languages{display:flex;gap:8px;align-items:center}.languages a{font-size:.72rem;letter-spacing:.08em;padding:5px 7px;border-radius:20px;opacity:.7}.languages a[aria-current=page]{background:rgba(255,255,255,.2);opacity:1}.hero{min-height:100svh;position:relative;color:white;display:flex;align-items:flex-end;overflow:hidden}.hero>img{height:100%;object-fit:cover;object-position:center 66%}.hero-shade,.hero>img{position:absolute;inset:0}.hero-shade{background:linear-gradient(180deg,rgba(9,18,19,.22),rgba(9,18,19,.12) 35%,rgba(9,18,19,.88))}.hero-content{position:relative;z-index:2;padding:0 clamp(20px,8vw,130px) clamp(65px,9vh,90px);max-width:1100px}.eyebrow,.hero-kicker{font-size:.7rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.hero h1{font-size:clamp(3.4rem,10vw,8.5rem);letter-spacing:-.045em;margin:.1em 0}.hero-content>p:not(.hero-kicker){font-size:clamp(1rem,2vw,1.3rem);max-width:760px;line-height:1.65}.hero-facts{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.hero-facts span{padding:7px 12px;border:1px solid rgba(255,255,255,.46);background:rgba(11,26,28,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:.7rem;font-weight:700;letter-spacing:.04em}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;margin-top:28px;padding:14px 22px;min-width:210px;border:1px solid;font-size:.8rem;font-weight:700;letter-spacing:.08em;transition:.2s}.button:hover{gap:42px;background:white;color:var(--ink)}.scroll{position:absolute;z-index:2;right:5vw;bottom:45px;font-size:1.5rem}.section-nav{background:var(--indigo);color:white;display:flex;gap:clamp(18px,5vw,70px);overflow:auto;padding:15px clamp(20px,8vw,130px);white-space:nowrap}.section-nav a{font-size:.72rem;letter-spacing:.06em;opacity:.85}.section{padding:clamp(80px,12vw,160px) clamp(20px,8vw,130px)}.intro{display:grid;grid-template-columns:1fr 1fr;grid-gap:10vw;gap:10vw;align-items:end}.eyebrow{color:var(--blue);margin-bottom:22px}.lead{font-size:clamp(1rem,1.8vw,1.25rem);line-height:2;overflow-wrap:anywhere}.facts{margin:0 clamp(20px,8vw,130px) clamp(75px,10vw,130px);display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.facts div{padding:28px 18px;border-right:1px solid var(--line)}.facts div:last-child{border:0}.facts span{font-size:.65rem;color:var(--wood)}.facts p{font-family:"Noto Serif JP",serif;margin-top:6px}.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:10px;gap:10px;padding:0 10px}.photo{margin:0;overflow:hidden}.photo img{height:100%;object-fit:cover;transition:transform .6s}.photo:hover img{transform:scale(1.02)}.photo-1{grid-column:span 5;grid-row:span 2}.photo-2{grid-column:span 3}.photo-3{grid-column:span 4}.photo-4,.photo-5,.photo-6{grid-column:span 3}.photo-7{grid-column:span 4}.photo-8{grid-column:span 5}.photo-9{grid-column:span 3}.photo-10,.photo-11,.photo-12,.photo-13{grid-column:span 4}.photo-13 img{object-fit:contain;background:#fff}.amenities{background:var(--paper)}.section-heading{max-width:830px;margin-bottom:55px}.amenity-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.amenity-grid div{min-height:145px;padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.amenity-grid span{font-size:1.5rem;color:var(--blue)}.amenity-grid p{font-size:.8rem;margin-top:25px;line-height:1.5}.rates{padding:clamp(80px,12vw,150px) clamp(20px,8vw,130px);background:var(--indigo);color:white;display:grid;grid-template-columns:1fr 1.2fr;grid-gap:10vw;gap:10vw;align-items:center}.rates .eyebrow{color:#b9d0d4}.rates-copy>p:last-child{margin-top:30px;color:#d3dddd;max-width:500px}.rate-table{border-top:1px solid rgba(255,255,255,.4)}.rate-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;padding:19px 8px;border-bottom:1px solid rgba(255,255,255,.22)}.rate-row span:not(:first-child){text-align:right}.rate-row.head{font-size:.72rem;color:#b9d0d4}.location{background:linear-gradient(180deg,var(--cream),#fff)}.location .lead{margin-top:30px}.location-facts{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:70px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.location-facts article{padding:28px 24px 30px;border-right:1px solid var(--line)}.location-facts article:last-child{border-right:0}.location-facts strong{display:block;color:var(--wood);font-size:clamp(1.25rem,2.4vw,2rem);letter-spacing:.04em}.location-facts h3{margin-top:5px;font-size:clamp(1rem,1.5vw,1.3rem)}.location-facts p{margin-top:12px;color:#5d6866;font-size:.78rem;line-height:1.6}.area-gallery{display:flex;gap:16px;overflow-x:auto;padding-bottom:20px;scroll-snap-type:x mandatory}.area-gallery figure{flex:0 0 min(72vw,440px);margin:0;scroll-snap-align:start}.area-gallery figure:first-child{flex-basis:min(82vw,560px)}.area-gallery img{height:470px;object-fit:cover}.area-gallery figcaption{display:flex;gap:10px;align-items:center;padding-top:12px;font-size:.77rem}.area-gallery figcaption span{color:var(--wood);font-size:.65rem}.bell{display:grid;grid-template-columns:1.15fr 1fr;background:var(--paper);align-items:center}.bell-image{height:100%;min-height:650px}.bell-image img{height:100%;object-fit:cover}.bell-copy{padding:clamp(50px,8vw,120px)}.bell-copy>p:not(.eyebrow){margin-top:30px}.bell-copy .note{padding:20px;border-left:2px solid var(--blue);font-size:.85rem}.rules{display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:8vw;gap:8vw}.rules ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.rules li{display:flex;gap:20px;padding:17px 3px;border-bottom:1px solid var(--line)}.rules li span{color:var(--blue)}.faq{padding-top:20px;display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:8vw;gap:8vw}.faq details{border-top:1px solid var(--line);padding:20px 4px}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;display:flex;justify-content:space-between;font-weight:600}.faq details p{padding:15px 30px 0 0;color:#586362}.reviews{text-align:center;padding:clamp(80px,11vw,150px) 20px;background:var(--paper)}.review-card{max-width:600px;margin:40px auto 0;padding:45px;background:var(--cream);box-shadow:0 20px 60px rgba(47,57,50,.07)}.review-card span{font-family:Georgia,serif;font-size:4rem;color:var(--blue);line-height:.5}.cta{text-align:center;padding:clamp(90px,14vw,180px) 20px;background:var(--indigo);color:white}.cta .eyebrow{color:#b9d0d4}.cta>p:not(.eyebrow){margin:25px auto 0;max-width:600px}.booking-placeholder{max-width:760px;margin:65px auto 0;padding:25px;border:1px dashed rgba(255,255,255,.3);color:#b9d0d4}.booking-placeholder span{font-size:1.5rem}.booking-placeholder p{font-size:.74rem}footer{background:#162727;color:#dbe4e1;padding:55px clamp(20px,8vw,130px);display:flex;justify-content:space-between;gap:40px;font-size:.76rem}footer .footer-logo{font-family:Georgia,serif;font-size:1.5rem;color:white;margin-bottom:16px}footer>div:last-child{text-align:right}footer .languages{justify-content:flex-end;margin-bottom:30px}@media(max-width:760px){.topbar{align-items:flex-start}.languages{gap:1px}.languages a{font-size:.61rem;padding:4px 5px}.hero>img{object-position:center 52%}.hero-content{padding-bottom:58px}.hero h1{font-size:clamp(3rem,16vw,5.5rem)}.hero-facts{gap:6px}.hero-facts span{font-size:.62rem;padding:5px 8px}.section-nav{padding-left:20px}.bell,.faq,.intro,.rates,.rules{grid-template-columns:1fr}.facts{grid-template-columns:1fr 1fr}.facts div:nth-child(2){border-right:0}.facts div:nth-child(-n+2){border-bottom:1px solid var(--line)}.gallery{grid-template-columns:1fr 1fr}.photo{grid-column:span 1!important;grid-row:span 1!important;height:280px}.photo-1,.photo-6,.photo-9{grid-column:span 2!important;height:420px}.amenity-grid{grid-template-columns:1fr 1fr}.rates{gap:55px}.location-facts{grid-template-columns:1fr;margin-bottom:48px}.location-facts article{border-right:0;border-bottom:1px solid var(--line);padding:20px 4px}.location-facts article:last-child{border-bottom:0}.bell-image{min-height:430px}.faq,.rules{gap:45px}.area-gallery img{height:380px}footer{flex-direction:column}footer>div:last-child{text-align:left}footer .languages{justify-content:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.photo img{transition:none}}h1,h2,h3{line-break:strict;text-wrap:pretty}figcaption,li,p{word-break:auto-phrase}body,html{overflow-x:hidden}.booking-header-cta{border:1px solid;padding:8px 12px;font-size:.75rem;white-space:nowrap}.mobile-booking-cta{display:none}#booking-preview-title{scroll-margin-top:24px}.booking-page .topbar{gap:12px;flex-wrap:wrap}@media(max-width:760px){.booking-page{padding-bottom:84px}.booking-page .hero-content{padding-bottom:108px}.booking-page .scroll{bottom:100px}.booking-header-cta{flex-basis:100%;text-align:center}.mobile-booking-cta{display:block;position:fixed;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:8;background:var(--ink);color:white;border:1px solid #d4dddb;box-shadow:0 4px 20px #0003;border-radius:8px}.mobile-booking-cta a{display:block;text-align:center;padding:13px;font-size:.88rem;line-height:1.4;font-weight:700}.mobile-booking-cta small{font-size:.65rem;margin-left:8px}}.booking-destination{margin-top:12px;font-size:.78rem!important;opacity:.9}.reviews-note{max-width:760px;margin:24px auto 0;line-height:1.8}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px;max-width:1100px;margin:32px auto}.review-grid .review-card{max-width:none;margin:0;padding:28px;text-align:left;border:1px solid var(--line)}.review-grid .review-card p{font-size:1rem;line-height:1.8}.review-grid .review-card small{display:block;margin-top:20px;font-size:.72rem;color:#596867}.reviews-source a{text-decoration:underline;font-size:.85rem}.reviews-source small{display:block;margin-top:10px;font-size:.7rem;color:#596867}.rate-row.head{line-height:1.6}.rate-row span{overflow-wrap:anywhere}@media(max-width:760px){.review-grid{grid-template-columns:1fr}.rate-row{grid-template-columns:.65fr 1.1fr 1.1fr;gap:8px;font-size:.86rem}}