:root{--paper:#f6f2e9;--ink:#343b35;--muted:#77766b;--red:#703b38;--line:#d9d3c6;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.9;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #ba743f;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500}h2{font-size:clamp(28px,3vw,40px);line-height:1.8;letter-spacing:.12em}p{overflow-wrap:anywhere}.skip-link{position:fixed;top:-100px;left:16px;background:var(--paper);padding:12px;z-index:10}.skip-link:focus{top:10px}.site-header{display:flex;align-items:center;justify-content:space-between;padding:22px 4.5%;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand-mark{display:grid;place-items:center;border:1px solid #a77c63;border-radius:50%;width:43px;height:43px;color:var(--red);font:28px var(--serif)}.brand small{display:block;font-size:10px;letter-spacing:.25em;line-height:1.5}.brand strong{font:25px var(--serif);letter-spacing:.14em}.site-header nav{display:flex;gap:27px;font-size:12px}.site-header nav a{padding:8px 0}.site-header nav a:hover,.back-top:hover{color:var(--red);text-decoration:underline;text-underline-offset:6px}.header-cta{border:1px solid #b0a491;padding:10px 17px;font-size:12px;white-space:nowrap}.header-cta span{padding-left:18px}.hero{position:relative;min-height:690px;padding:106px 8% 90px;isolation:isolate;overflow:hidden}.hero-copy{position:relative;z-index:2;max-width:650px}.eyebrow{font-size:12px;letter-spacing:.2em;color:var(--red)}h1{font-size:clamp(40px,5vw,68px);letter-spacing:.12em;line-height:1.65;margin:25px 0}.hero-description{font-family:var(--serif);font-size:15px;line-height:2.3;letter-spacing:.04em}.text-link{display:inline-flex;align-items:center;gap:54px;border-bottom:1px solid #a5947c;margin-top:34px;padding:0 0 10px;font-size:12px}.text-link:hover{color:var(--red)}.hero-art{position:absolute;z-index:-1;right:0;top:0;bottom:0;width:51%;background:linear-gradient(180deg,#e5c6b0,#ebd8be 63%,#bac1ad);border-radius:46% 0 0 0;overflow:hidden}.art-grain{position:absolute;inset:0;opacity:.25;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.3' d='M0 0h180v180H0z'/%3E%3C/svg%3E");z-index:3;pointer-events:none}.sun{position:absolute;top:19%;left:43%;width:142px;aspect-ratio:1;border-radius:50%;background:#b86c4c;box-shadow:0 0 70px #bf815544}.mountains{position:absolute;bottom:0;width:100%;height:83%}.art-caption{position:absolute;right:26px;top:36px;writing-mode:vertical-rl;letter-spacing:.25em;font-size:9px;color:#6f6554}.art-seal{position:absolute;right:40px;bottom:98px;color:#f8ecd8;border:1px solid #d1b99c;padding:10px 7px;line-height:1.5;font:14px var(--serif);z-index:4;letter-spacing:.2em}.hero-bottom{position:absolute;left:8%;right:4%;bottom:25px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.16em}.hero-bottom>a{color:#f0e6d4;font-size:9px}.hero-bottom>a span{margin-left:25px}.section-pad{padding:90px 8%}.section-label{display:flex;gap:16px;align-items:center;color:var(--red);font-size:10px;letter-spacing:.18em;margin-bottom:35px}.section-label>span{font-family:var(--serif);font-size:16px;border-right:1px solid #b6a48b;padding-right:16px;letter-spacing:.05em}.intro{padding-top:95px;padding-bottom:60px}.intro-body{display:grid;grid-template-columns:1fr 1fr;gap:8%}.intro-copy{font-size:14px;line-height:2.35;padding-top:8px}.intro-copy p+p{margin-top:23px}.intro-note{display:flex;justify-content:flex-end;gap:22px;margin-top:46px;font:13px var(--serif);letter-spacing:.1em}.intro-note span{color:#a2794e}.stay{background:#eae8df}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:40px}.section-heading>p{font-size:13px;color:#696e62}.stay-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px}.illustration{height:280px;position:relative;overflow:hidden}.illustration-caption{position:absolute;right:25px;top:25px;writing-mode:vertical-rl;font:20px var(--serif);letter-spacing:.22em;color:#fff7e9}.bath-illustration{background:#d7b79e}.bath-sun{position:absolute;width:70px;height:70px;border-radius:50%;background:#a75e42;left:22%;top:35px}.bath-hill{position:absolute;width:125%;height:180px;border-radius:50% 50% 0 0;background:#8f947e;left:-40%;top:105px;transform:rotate(15deg)}.bath-hill.second{background:#5d6c5b;left:35%;top:90px;transform:rotate(-15deg)}.bath-rim{position:absolute;left:-10%;bottom:-105px;width:120%;height:220px;border-radius:50%;background:#77756a}.bath-water{position:absolute;left:-5%;bottom:-125px;width:110%;height:220px;border-radius:50%;background:repeating-radial-gradient(ellipse at center,#bec7b4 0px,#bec7b4 17px,#a7b7a2 19px,#bec7b4 21px)}.steam{position:absolute;width:18px;height:65px;border-left:2px solid #f6f2e9;border-radius:50%;left:42%;bottom:67px;opacity:.6;transform:rotate(12deg)}.steam.s2{left:49%;bottom:70px}.steam.s3{left:56%;bottom:62px}.room-illustration{background:#7e7766}.shoji{position:absolute;inset:25px 26% 28% 7%;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(25% - 3px),#7f7460 calc(25% - 3px),#7f7460 25%),repeating-linear-gradient(0deg,#e9dec4 0,#e9dec4 49px,#92846a 49px,#92846a 52px);border:6px solid #635e50}.room-floor{position:absolute;bottom:0;left:0;width:100%;height:28%;background:repeating-linear-gradient(105deg,#b6ad8e 0,#b6ad8e 80px,#96967c 81px,#b6ad8e 83px)}.room-table{position:absolute;bottom:36px;left:22%;width:45%;height:29px;border-radius:50%;background:#50463a;box-shadow:0 10px 0 -3px #5d5042}.vase{position:absolute;width:20px;height:28px;right:13%;bottom:80px;background:#343e35;border-radius:3px 3px 8px 8px}.branch{position:absolute;right:14.7%;bottom:106px;height:56px;width:25px;border-left:2px solid #384e3c;transform:rotate(-12deg)}.branch:after{content:"";position:absolute;width:25px;height:13px;border-radius:90% 0;background:#5e6d4e;top:10px;left:0}.card-title{display:flex;align-items:center;gap:16px;margin:25px 0 14px}.card-title>span{font:11px var(--sans);color:var(--red);border:1px solid #b9a791;padding:2px 8px;white-space:nowrap}.card-title h3{font-size:23px;letter-spacing:.04em}.stay-card>p{font-size:13px;line-height:2.1}.detail-line{margin-top:20px;border-top:1px solid #cccbbd;padding-top:15px;font-size:11px;color:#65695f}.dining{background:#703b38;color:#f5ecdf}.dining .section-label,.dining .eyebrow{color:#e5c9a6}.dining .section-label>span{border-color:#a87568}.dining-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.dining h2{margin:14px 0 24px;font-size:43px}.dining-description{font-size:13px;line-height:2.3;color:#e9d9cb}.dining-time{font-size:11px;margin-top:30px;color:#d7bca8}.menu{padding-top:12px}.menu-heading{display:flex;justify-content:space-between;gap:10px;padding-bottom:16px;border-bottom:1px solid #9d7265;font-family:var(--serif);letter-spacing:.1em}.menu-heading small{font:10px var(--sans);padding-top:6px;color:#dec3ad}.menu-row{display:flex;align-items:center;gap:23px;padding:23px 0;border-bottom:1px solid #97665f;position:relative}.menu-row>span:first-child{color:#d2b085;font-family:var(--serif);font-size:13px}.menu-row h3{font-size:19px;letter-spacing:.07em}.menu-row p{font-size:11px;color:#dfc9b9;margin-top:3px}.recommend{font-size:9px;color:#e6cb9e;border:1px solid #b99474;padding:1px 6px;position:absolute;right:0;top:11px}.menu-note{font-size:10px;line-height:1.9;margin-top:18px;color:#dac0af}.plans{background:#f1ebdf}.plan-box{border:1px solid #bca98d;display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:40px 48px;background:#f7f3e9}.plan-tag{font-size:10px;letter-spacing:.08em;color:var(--red);border-bottom:1px solid #ba9d80;padding-bottom:4px}.plan-main h3{font-size:28px;line-height:1.8;letter-spacing:.08em;margin:17px 0}.plan-main>p{font-size:12px;color:#67695e}.plan-price{align-self:center}.plan-price>p:first-child{font-size:11px;color:#767465}.plan-price>div{display:flex;align-items:baseline;gap:8px;color:var(--red)}.plan-price strong{font:58px Georgia,serif;letter-spacing:-.04em}.plan-price>div>span{font-size:16px}.plan-price small{font-size:10px;margin-left:5px}.price-note{font-size:10px;margin-top:9px;color:#777163}.button{display:flex;justify-content:space-between;align-items:center;gap:16px;background:var(--red);color:#fff5e6;padding:16px 20px;margin-top:23px;font-size:12px;transition:background .15s}.button:hover{background:#522c2a}.plan-footnote{font-size:11px;color:#787568;margin-top:16px}.access-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:9%;align-items:center}.access-lead{font-size:13px;color:#707166;margin:18px 0 25px}.info-list{margin:0}.info-list>div{display:grid;grid-template-columns:110px 1fr;border-bottom:1px solid var(--line);padding:14px 0;gap:14px;font-size:12px}.info-list dt{color:#79786c}.info-list dd{margin:0}.fictional{display:block;color:#868073;font-size:10px}.info-list small{font-size:10px}.route-panel{border:1px solid #d1c8b5;padding:35px 30px;background:#eeece1;text-align:center;position:relative}.route-title{font:17px var(--serif);letter-spacing:.1em;margin-bottom:35px}.route-stop{font:18px var(--serif);border:1px solid #b8b7a5;background:#f6f2e9;padding:15px 10px}.route-stop small{display:block;font:8px var(--sans);letter-spacing:.12em;margin-top:8px;color:#7d7f70}.route-line{height:100px;position:relative;display:grid;place-items:center}.route-line:before{content:"";position:absolute;top:0;bottom:0;left:50%;border-left:1px dashed #a59a80}.route-line span{position:relative;padding:3px 13px;background:#eeece1;font-size:11px}.route-destination{font:22px var(--serif);color:var(--red);padding:14px 0;border-top:1px solid #b9ab8e;border-bottom:1px solid #b9ab8e}.route-destination span{margin-right:9px}.route-note{font-size:11px;margin:24px 0 20px;color:#737465}.route-disclaimer{font-size:9px;color:#7a796c}.contact{text-align:center;background:#e8e4d8;padding:70px 24px}.contact h2{font-size:33px;margin:14px 0}.contact>p:not(.eyebrow){font-size:12px}.phone-number{font:38px Georgia,serif;letter-spacing:.03em;margin-top:21px;color:var(--red)}.contact-hours{color:#6f7165;margin-top:8px}.demo-notice{display:inline-block;font-size:10px;line-height:1.9;margin-top:30px;padding-top:17px;border-top:1px solid #c9c0af;color:#726e60}footer{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:32px 5%;font-size:10px}.footer-brand{font:12px var(--serif);letter-spacing:.12em}.footer-brand strong{font-weight:500;font-size:22px;margin-left:8px}footer p{font-size:9px;letter-spacing:.07em;color:#7a7b70}footer p span{margin-left:15px}.back-top{white-space:nowrap}
@media(min-width:1500px){.section-pad{padding-left:max(8%,calc((100% - 1200px)/2));padding-right:max(8%,calc((100% - 1200px)/2))}.hero{padding-left:max(8%,calc((100% - 1200px)/2))}.hero-bottom{left:max(8%,calc((100% - 1200px)/2))}}
@media(max-width:1100px){.site-header nav{gap:15px;font-size:10px}.site-header{gap:14px;padding:20px 4%}.header-cta{padding:9px 11px;font-size:10px}.header-cta span{padding-left:8px}.hero{padding-left:6%;min-height:640px}.hero-bottom{left:6%}.section-pad{padding:70px 6%}.stay-grid{gap:28px}.card-title{gap:10px}.card-title h3{font-size:20px}.plan-box{padding:30px;gap:25px}.plan-price strong{font-size:50px}.dining-layout{gap:7%}.dining h2{font-size:38px}}
@media(max-width:760px){html{scroll-padding-top:20px}.site-header{flex-wrap:wrap;gap:17px;padding:18px 6% 13px}.brand-mark{width:35px;height:35px;font-size:23px}.brand strong{font-size:22px}.brand small{font-size:9px}.header-cta{margin-left:auto;font-size:10px;padding:8px 11px}.site-header nav{order:3;flex-basis:100%;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:9px;font-size:10px}.site-header nav a{padding:4px 0}.hero{min-height:760px;padding:43px 7% 335px}.hero-copy{max-width:100%}.eyebrow{font-size:10px;letter-spacing:.13em}h1{font-size:clamp(35px,8.4vw,52px);margin:18px 0;line-height:1.65;letter-spacing:.09em}.hero-description{font-size:12px;line-height:2.2}.text-link{font-size:11px;margin-top:24px;gap:38px}.hero-art{top:auto;height:310px;width:90%;border-radius:120px 0 0 0}.sun{width:75px;top:15%;left:60%}.mountains{height:100%}.art-caption{right:14px;top:21px;font-size:7px}.art-seal{right:25px;bottom:60px;font-size:11px}.hero-bottom{left:7%;right:6%;bottom:17px}.hero-bottom>span{color:#eee6d3;font-size:9px}.hero-bottom>a{font-size:8px}.hero-bottom>a span{margin-left:8px}.section-pad{padding:55px 7%}.section-label{margin-bottom:25px;font-size:9px}.intro-body{grid-template-columns:1fr;gap:24px}h2{font-size:28px;line-height:1.7;letter-spacing:.08em}.intro-copy{font-size:12px;line-height:2.3;padding:0}.intro-note{justify-content:flex-start;font-size:11px;gap:12px;margin-top:28px;letter-spacing:0}.section-heading{display:block;margin-bottom:28px}.section-heading>p{font-size:12px;margin-top:14px}.stay-grid{grid-template-columns:1fr;gap:36px}.illustration{height:250px}.card-title{margin-top:20px}.card-title h3{font-size:22px}.stay-card>p{font-size:12px}.detail-line{font-size:10px;margin-top:15px;padding-top:12px}.dining-layout{grid-template-columns:1fr;gap:32px}.dining h2{font-size:33px}.dining-description{font-size:12px}.dining-time{margin-top:18px}.menu-row{padding:20px 0}.menu-row h3{font-size:18px}.menu-heading{font-size:14px}.plan-box{grid-template-columns:1fr;gap:25px;padding:27px 23px}.plan-main h3{font-size:25px}.plan-price{border-top:1px solid var(--line);padding-top:23px}.plan-price strong{font-size:52px}.button{font-size:11px;padding:15px}.plan-footnote{font-size:10px}.access-grid{grid-template-columns:1fr;gap:32px}.access-lead{font-size:12px}.info-list>div{grid-template-columns:95px 1fr;font-size:11px;gap:10px}.route-panel{padding:28px 24px}.route-title{margin-bottom:25px}.route-line{height:85px}.contact{padding:52px 7%}.contact h2{font-size:27px}.contact>p:not(.eyebrow){font-size:11px}.phone-number{font-size:32px}.demo-notice{font-size:9px;text-align:left}footer{flex-wrap:wrap;padding:27px 7%;gap:20px}.footer-brand{flex-basis:65%}footer p{order:3;flex-basis:100%}.back-top{font-size:9px}footer p span{margin-left:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Shared navigation and detail pages */
.site-header nav a[aria-current="page"]{color:var(--red);box-shadow:0 1px var(--red)}.site-header nav{flex-wrap:wrap}.overview-link{margin-top:20px;text-align:right}.dining .overview-link .text-link{border-color:#b99474;color:#f5ecdf}.page-hero{padding:25px 8% 65px;position:relative;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(circle at 90% 110%,#d7b9a3 0 95px,transparent 96px),radial-gradient(ellipse at 95% 140%,#d8dace 0 230px,transparent 231px),#f1ebdf}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:11px;color:#767265;margin-bottom:44px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.page-hero h1{font-size:clamp(30px,4vw,48px);line-height:1.7;letter-spacing:.09em;margin:18px 0}.page-lead{max-width:650px;font-family:var(--serif);line-height:2.2;font-size:14px}.page-seal{position:absolute;right:7%;top:95px;writing-mode:vertical-rl;padding:12px 7px;border:1px solid #ba9d80;color:var(--red);font:17px var(--serif);letter-spacing:.18em}.detail-section>h2{margin-bottom:28px}.detail-section h3{font-size:22px;letter-spacing:.06em;margin-bottom:16px}.detail-section p{font-size:13px;line-height:2.2}.detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.detail-columns>.info-list{margin-top:-14px}.detail-section .info-list{max-width:900px}.detail-section .info-list>div{grid-template-columns:145px 1fr;padding:18px 0;font-size:13px}.soft-section{background:#ece9de}.detail-lead{margin-bottom:20px}.detail-section .small-note,.small-note{font-size:11px;color:#737366;margin-top:20px}.stay-timeline{padding:0;margin:0;list-style:none;max-width:850px}.stay-timeline li{display:grid;grid-template-columns:90px 1fr;gap:30px;border-top:1px solid var(--line);padding:25px 0}.stay-timeline li:last-child{border-bottom:1px solid var(--line)}.stay-timeline time{font:27px Georgia,serif;color:var(--red);padding-top:5px}.stay-timeline h3{font-size:20px;margin-bottom:7px}.season-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px 45px}.season-grid article{padding:25px 0;border-top:1px solid #bba88c}.season-grid article>span{font-size:10px;letter-spacing:.18em;color:var(--red)}.season-grid h3{margin-top:12px}.plain-list{margin:0;padding:0;list-style:none}.plain-list li{padding:14px 0;border-bottom:1px solid #ccc5b4;font:17px var(--serif)}.included-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.included-grid article{border-top:1px solid #bcaa8e;padding-top:22px}.included-grid article>span{font:19px var(--serif);color:var(--red)}.included-grid h3{font-size:21px;margin-top:15px}.editorial-note{margin-top:32px;border-left:2px solid #a27b5e;padding:10px 25px;max-width:900px}.editorial-note h3{font-size:19px}.faq-list{max-width:900px;border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}.faq-list summary{cursor:pointer;font-family:var(--serif);font-size:17px;padding-right:15px;line-height:1.8}.faq-list summary::marker{color:var(--red)}.faq-list details p{margin:16px 0 3px;padding-left:24px;color:#676b60}.faq-list summary:focus-visible{outline:2px solid var(--red);outline-offset:5px}.related{background:#ece9de;padding-top:45px;padding-bottom:45px}.related nav{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:20px}.related nav a{font-size:12px;padding:12px 0;border-bottom:1px solid #b6a98e;display:flex;align-items:center;justify-content:space-between;gap:15px}.related nav a:hover{color:var(--red)}
@media(max-width:1100px){.site-header nav{gap:14px}.page-hero{padding-left:6%;padding-right:6%}}
@media(max-width:760px){.site-header nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 12px;justify-content:initial}.site-header nav a{text-align:center;font-size:11px;line-height:1.7;padding:7px 0}.site-header nav a:last-child{grid-column:span 2}.page-hero{padding:20px 7% 45px}.breadcrumb{font-size:10px;gap:9px;margin-bottom:28px}.page-hero h1{font-size:30px;letter-spacing:.06em;max-width:92%;margin:14px 0}.page-lead{font-size:12px;max-width:85%}.page-seal{font-size:12px;right:5%;top:100px;padding:8px 5px}.detail-section>h2{margin-bottom:22px}.detail-columns{grid-template-columns:1fr;gap:28px}.detail-section h3{font-size:21px}.detail-section p{font-size:12px}.detail-section .info-list>div{grid-template-columns:88px 1fr;gap:16px;font-size:12px;padding:15px 0}.stay-timeline li{grid-template-columns:65px 1fr;gap:18px;padding:22px 0}.stay-timeline time{font-size:23px}.stay-timeline h3{font-size:20px}.season-grid{grid-template-columns:1fr;gap:5px}.season-grid article{padding:23px 0}.season-grid h3{margin:10px 0}.included-grid{grid-template-columns:1fr;gap:25px}.included-grid h3{margin:10px 0}.editorial-note{padding:5px 17px}.editorial-note h3{font-size:18px}.faq-list summary{font-size:16px}.faq-list details p{padding-left:15px}.related nav{grid-template-columns:1fr 1fr;gap:12px 25px}.related nav a{font-size:11px}.overview-link{text-align:left}.overview-link .text-link{gap:20px;font-size:11px}.detail-section .small-note{font-size:10px}}
/* Photography renewal */
:root{--paper:#f5f0e6;--red:#763e37}.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:#b68d62;z-index:30;transform:scaleX(0);transform-origin:left;pointer-events:none}.site-header{position:sticky;top:0;z-index:20;background:#f5f0e6f5;backdrop-filter:blur(14px);transition:box-shadow .3s,padding .3s}.site-header.is-scrolled{box-shadow:0 5px 25px #30261d0f}.hero{min-height:730px;height:calc(100svh - 96px);max-height:1050px;padding:110px 8% 150px;display:flex;align-items:center;color:#fff8ec}.hero-gallery,.hero-shade{position:absolute;inset:0;z-index:-1}.hero-gallery{overflow:hidden;background:#3c453e}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.hero-photo[hidden]{display:none}.hero-photo.is-active{animation:scene-arrive 1.2s ease both}.hero-shade{background:linear-gradient(90deg,#18231de0 0%,#18231d73 45%,#18231d0a 100%),linear-gradient(0deg,#14201985,transparent 40%)}.hero-copy{animation:copy-arrive 1.2s .15s both;max-width:760px}.hero .eyebrow{color:#ecd5ae;letter-spacing:.22em}.hero h1{font-size:clamp(42px,5.1vw,76px);line-height:1.6;margin:27px 0 30px;text-shadow:0 2px 20px #0003}.hero-description{color:#f5eee0;font-size:15px;line-height:2.3}.hero .text-link{border-color:#d4b993;font-size:13px;gap:70px;margin-top:35px;padding-bottom:12px}.hero .text-link:hover{color:#edd0a6}.hero-bottom{left:8%;right:5%;color:#efe4d0}.hero-bottom>a{color:#efe4d0}.hero-scenes{position:absolute;bottom:78px;right:5%;display:flex;gap:20px;align-items:center}.hero-scenes button{font:11px var(--sans);color:#eadfcb;background:transparent;border:0;border-bottom:1px solid #dfcfb96b;padding:10px 2px;cursor:pointer;letter-spacing:.06em;transition:color .2s,border-color .2s}.hero-scenes button span{font:14px Georgia,serif;margin-right:8px;opacity:.7}.hero-scenes button[aria-pressed="true"]{color:white;border-bottom:2px solid #ecd2a4}.hero-scenes button:focus-visible{outline:2px solid #e7c48b;outline-offset:5px}.intro{padding-top:100px;padding-bottom:80px}.intro-opening{display:flex;justify-content:space-between;gap:30px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:35px;margin-bottom:45px}.intro-opening>span{font:clamp(36px,6vw,84px) Georgia,serif;letter-spacing:.15em;color:#b19a7a}.intro-opening>p{font:17px/2 var(--serif);letter-spacing:.16em}.photo-frame{margin:0;overflow:hidden;position:relative;background:#d6c5ad}.photo-frame img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.6,.3,1)}.photo-frame:hover img{transform:scale(1.035)}.stay-card .photo-frame{height:auto;aspect-ratio:1.45;border-radius:2px}.stay-card:nth-child(2){transition-delay:.12s}.dining-photo{height:420px;margin-bottom:55px}.dining-photo img{object-position:center 55%}.dining-photo figcaption{position:absolute;bottom:25px;right:30px;font:19px var(--serif);letter-spacing:.15em;color:#fff9ec;text-shadow:0 1px 9px #000;background:#271c1590;padding:10px 15px}.plan-box{box-shadow:0 20px 50px #4e3f2610}.button{position:relative;overflow:hidden}.button:hover{box-shadow:0 7px 18px #38231c24;transform:translateY(-2px)}.text-link span,.related nav a span{transition:transform .25s}.text-link:hover span,.related nav a:hover span{transform:translateX(7px)}.photo-page-hero{min-height:400px;isolation:isolate;background:#27362c;color:#fff4e4;padding-bottom:60px}.page-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.photo-page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#18231de6,#18231d70 70%,#18231d33);z-index:-1}.photo-page-hero .breadcrumb,.photo-page-hero .eyebrow{color:#edd3b2}.photo-page-hero .page-seal{color:#f9ead1;border-color:#e1c19b}.page-lead{max-width:680px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.6,.3,1)}.reveal.is-visible{opacity:1;transform:none}.section-heading h2{position:relative}.contact{background:linear-gradient(120deg,#e8e0d0,#f0e8d8)}
@keyframes scene-arrive{from{opacity:.3;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes copy-arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.hero{padding-left:6%;padding-right:6%}.hero-bottom{left:6%}}
@media(max-width:760px){html{scroll-padding-top:170px}.site-header{padding-top:13px;padding-bottom:10px}.hero{min-height:660px;height:calc(100svh - 155px);max-height:850px;padding:60px 7% 140px;align-items:flex-start}.hero-copy{max-width:100%}.hero h1{font-size:clamp(35px,8.8vw,52px);line-height:1.7;letter-spacing:.09em;margin:23px 0}.hero .eyebrow{font-size:9px;letter-spacing:.12em}.hero-description{font-size:12px;line-height:2.3}.hero-photo{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#14251ddd,#17251c66),linear-gradient(0deg,#122219a6,transparent 55%)}.hero .text-link{font-size:11px;gap:40px;margin-top:27px}.hero-scenes{left:7%;right:7%;bottom:70px;justify-content:space-between;gap:12px}.hero-scenes button{font-size:9px;padding:9px 0}.hero-scenes button span{font-size:12px;margin-right:4px}.hero-bottom{left:7%;right:7%;bottom:22px}.hero-bottom>span{font-size:8px}.intro{padding-top:55px;padding-bottom:50px}.intro-opening{gap:18px;align-items:flex-start;padding-bottom:25px;margin-bottom:30px;flex-direction:column}.intro-opening>span{font-size:42px;letter-spacing:.12em}.intro-opening>p{font-size:14px}.stay-card .photo-frame{aspect-ratio:1.35}.dining-photo{height:auto;aspect-ratio:1.1;margin-bottom:30px}.dining-photo figcaption{bottom:14px;right:12px;font-size:12px;letter-spacing:.04em;padding:8px}.photo-page-hero{min-height:350px;padding-top:18px;padding-bottom:38px}.photo-page-hero h1{font-size:30px;max-width:88%}.photo-page-hero .page-lead{max-width:87%}.photo-page-hero .breadcrumb{margin-bottom:32px}.photo-page-hero .page-cover{object-position:60% center}.photo-page-hero .page-seal{top:105px}.reveal{transform:translateY(18px)}.stay-card:nth-child(2){transition-delay:0s}}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.hero-photo.is-active,.hero-copy{animation:none}.photo-frame:hover img,.button:hover,.text-link:hover span,.related nav a:hover span{transform:none}html{scroll-behavior:auto}}
/* A continuous washi ground, with quiet patterns in the margins. */
body{background-color:var(--paper);background-image:url('patterns/paper.svg')}
.intro,.stay,.dining,.plans,.access,.detail-section,.soft-section,.related,.contact{background:transparent;color:var(--ink);position:relative;isolation:isolate}
.stay::before,.dining::before,.detail-section::before,.contact::before{content:"";position:absolute;top:25px;right:0;bottom:25px;width:45%;background:url('patterns/waves.svg') repeat;opacity:.2;pointer-events:none;z-index:-1;mask-image:linear-gradient(90deg,transparent,#000);-webkit-mask-image:linear-gradient(90deg,transparent,#000)}
.soft-section::before{background-image:url('patterns/lattice.svg');width:36%;opacity:.17;mask-image:linear-gradient(90deg,transparent,#000);-webkit-mask-image:linear-gradient(90deg,transparent,#000)}
.dining::before{top:55%;bottom:0;width:35%;opacity:.14}.contact::before{inset:0;width:100%;opacity:.12;mask-image:linear-gradient(90deg,#000,transparent 40%,transparent 60%,#000);-webkit-mask-image:linear-gradient(90deg,#000,transparent 40%,transparent 60%,#000)}
.detail-section+.detail-section{padding-top:70px}.detail-section+.detail-section::after{content:"";position:absolute;top:0;left:8%;width:48px;height:1px;background:#b7a58999}
.dining .section-label,.dining .eyebrow{color:var(--red)}.dining .section-label>span{border-color:#b6a48b}.dining-description,.dining-time,.menu-row p,.menu-heading small,.menu-note{color:#696d61}.menu-heading,.menu-row{border-color:var(--line)}.menu-row>span:first-child{color:#93754e}.recommend{color:var(--red);border-color:#b9a589}.dining .overview-link .text-link{color:var(--ink);border-color:#a5947c}
.plan-box{background:#faf7ef66;box-shadow:none}.route-panel{background:transparent}.route-line span{background:var(--paper)}.route-stop{background:#faf7ef80}.related{border-top:1px solid #c9beaa55}.contact{border-top:1px solid #c9beaa55}
@media(max-width:760px){.stay::before,.detail-section::before{width:38%;opacity:.14}.soft-section::before{opacity:.12}.detail-section+.detail-section{padding-top:50px}.detail-section+.detail-section::after{left:7%;width:35px}.contact::before{width:100%;opacity:.1}}
