:root{--ink:#123d44;--sea:#092f38;--deep:#06252d;--paper:#f6f8f5;--lime:#def18d;--muted:#617574;--line:#ced8d4;--sans:'Manrope','Noto Sans JP',sans-serif;--serif:'Noto Serif JP',serif;--ease:cubic-bezier(.22,.68,0,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}button,input,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:none;border:0}button,a,summary{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible{outline:3px solid #819b2c;outline-offset:6px}img,video{display:block;width:100%;object-fit:cover}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500}p+p{margin-top:1.3em}button[hidden],[hidden]{display:none!important}.serif{font-family:var(--serif);font-weight:400;letter-spacing:.045em;line-height:1.65}h2.serif{font-size:clamp(32px,4.3vw,58px)}.section-wrap{max-width:1440px;margin:0 auto;padding:100px 6%}.section-label{display:flex;justify-content:space-between;gap:20px;font-size:13px;letter-spacing:.11em;border-top:1px solid var(--line);padding:20px 0 55px}.section-label>span:first-child{font-weight:600}.eyebrow{font-size:13px;letter-spacing:.16em;margin-bottom:25px;font-weight:500}.micro{font-size:12px;letter-spacing:.14em}.small-note{font-size:13px;color:var(--muted);line-height:1.8}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;min-height:60px;padding:15px 27px;border-radius:40px;font-size:14px;font-weight:500;transition:background .3s,transform .3s}.pill span{font-size:23px;line-height:1}.pill:hover{transform:translateY(-3px)}.light-pill{color:var(--sea);background:#fff}.light-pill:hover{background:var(--lime)}.dark-pill{background:var(--sea);color:white}.dark-pill:hover{background:#18505a}.lime-pill{background:var(--lime);color:var(--sea)}.lime-pill:hover{background:white}.outline-pill{border:1px solid #fff7;color:white}.outline-pill:hover{background:#fff;color:var(--sea)}.line-link{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:17px 0;font-size:14px}.line-link span{font-size:22px;transition:transform .3s}.line-link:hover span{transform:translate(3px,-3px)}.text-button{font-size:14px;padding:10px 0;display:inline-flex;gap:22px;align-items:center;border-bottom:1px solid currentColor}.text-button span{font-size:20px}.skip{position:fixed;top:-100px;left:20px;background:white;color:var(--sea);z-index:200;padding:10px 20px}.skip:focus{top:10px}.reading-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--lime);z-index:110}
.site-header{position:absolute;z-index:100;left:0;top:0;width:100%;display:flex;align-items:center;gap:28px;padding:28px 4.3%;color:#fff;border-bottom:1px solid #fff3;transition:background .35s,padding .35s,box-shadow .35s}.site-header.is-fixed{position:fixed;padding-top:15px;padding-bottom:15px;background:#092f38f5;backdrop-filter:blur(16px);box-shadow:0 5px 30px #06252d15}.brand{display:block;width:196px;flex-shrink:0;line-height:1;position:relative}.brand-name{font-family:Georgia,serif;font-size:43px;letter-spacing:-2px;font-weight:400;display:flex;align-items:center;gap:12px}.brand-rule{height:1px;width:52px;background:currentColor}.brand-sub{display:block;margin-top:10px;font-size:10px;letter-spacing:.18em}.brand-sub b{font-weight:400;font-size:11px;margin-left:10px;letter-spacing:.015em}.desktop-nav{display:flex;justify-content:flex-end;gap:26px;flex:1;font-size:14px;white-space:nowrap}.desktop-nav a{position:relative}.desktop-nav a:after{content:'';position:absolute;bottom:-9px;left:0;width:0;height:1px;background:currentColor;transition:width .3s}.desktop-nav a:hover:after{width:100%}.header-book{display:flex;gap:25px;align-items:center;justify-content:center;border:1px solid #fff7;border-radius:40px;font-size:13px;padding:12px 22px;white-space:nowrap}.header-book:hover{background:#fff;color:var(--sea)}.header-book span{font-size:22px}.menu-toggle{display:none;width:42px;height:42px}.menu-toggle span{display:block;width:25px;height:1px;background:currentColor;margin:7px auto}.mobile-nav{position:fixed;top:78px;background:var(--sea);color:#fff;padding:24px 8% 35px;left:0;right:0;z-index:99}.mobile-nav a{display:block;padding:16px 0;border-bottom:1px solid #ffffff25;font-size:17px}
.hero{position:relative;height:max(790px,100svh);min-height:720px;max-height:1150px;background:#285967;color:#fff;overflow:hidden}.hero-visual,.hero-shade{position:absolute;inset:0}.hero-visual img{height:100%;object-position:center;transform:scale(1.04);animation:sea-drift 24s ease-in-out infinite alternate}.hero-shade{background:linear-gradient(90deg,#06273194,transparent 85%),linear-gradient(0deg,#04252dda,transparent 30%,#04252d14 70%,#04252d4d)}.hero-topline{position:absolute;top:152px;left:6%;right:6%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:#eff9f2db}.hero-copy{position:relative;padding:210px 6% 105px;max-width:1100px;z-index:1}.hero-copy .eyebrow{font-size:14px;letter-spacing:.17em;margin-bottom:21px}.hero h1{font-family:var(--serif);font-size:clamp(46px,6.1vw,91px);font-weight:400;letter-spacing:.035em;line-height:1.4;text-shadow:0 2px 24px #15383725}.hero h1 span{display:block;margin-left:1.2em}.hero-description{font-size:15px;letter-spacing:.05em;line-height:2.1;margin:26px 0 27px;color:#f3fbf8}.hero-side{position:absolute;right:5.8%;top:37%;display:flex;gap:30px;align-items:center;writing-mode:vertical-rl;font-size:12px;letter-spacing:.15em}.hero-side span:last-child{letter-spacing:.28em;font-family:var(--serif);font-size:14px}.hero-bottom{position:absolute;bottom:30px;left:6%;right:6%;display:flex;justify-content:space-between;align-items:flex-end;z-index:2}.scroll-cue{display:flex;align-items:center;gap:16px;font-size:11px;letter-spacing:.16em}.scroll-line{width:1px;height:40px;background:#fff6;position:relative;overflow:hidden}.scroll-line:after{position:absolute;content:'';left:0;top:-20px;height:20px;width:1px;background:white;animation:scroll-line 2.2s infinite}.hero-caption{display:flex;align-items:center;gap:28px}.hero-caption>span{font-size:12px;color:#e1eeeb}.hero-caption button{font-size:13px}.arrival-strip{display:flex;justify-content:space-between;align-items:center;padding:27px 6%;background:var(--sea);color:white;gap:28px}.arrival-strip>div{display:flex;flex-direction:column;gap:5px}.arrival-strip>div>span:last-child{font-size:14px}.arrival-strip .micro{color:#aec5c8}.arrival-strip p{display:flex;align-items:center;gap:23px;font-size:14px;line-height:1}.arrival-strip p strong{font-weight:400}.arrival-strip p b{font-size:43px;font-weight:400;letter-spacing:-.04em;margin:0 3px}.cross-line{height:1px;width:35px;background:#fff5}.arrival-strip>a{font-size:14px;border-bottom:1px solid #fff6;padding:8px 0;display:flex;gap:25px}.intro{padding-bottom:110px}.intro-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:12px 0 85px}.intro-layout h2{font-size:clamp(42px,5.3vw,74px);line-height:1.65;letter-spacing:.035em}.accent-word{color:#3e6c6f}.intro-body{padding:5px 0 0 25px;font-size:16px;line-height:2.4}.intro-body .signature{font-size:14px;margin-top:26px;letter-spacing:.08em}.time-experience{display:grid;grid-template-columns:1.35fr 1fr;min-height:535px;background:#e8eeeb;overflow:hidden}.time-photo{position:relative;overflow:hidden;min-height:420px}.time-photo img{height:100%;position:absolute;inset:0;transition:opacity .2s,transform 1.1s var(--ease);object-position:center}.time-photo:hover img{transform:scale(1.025)}.time-photo-shade{position:absolute;inset:0;background:linear-gradient(0deg,#052e377a,transparent 40%)}.time-photo-number{position:absolute;bottom:44px;left:35px;font-size:clamp(32px,4.3vw,64px);font-weight:400;letter-spacing:-.045em;color:#fff9;line-height:1}.photo-source{position:absolute;bottom:18px;left:37px;font-size:11px;letter-spacing:.1em;color:#fff}.time-panel{padding:48px 50px 35px;display:flex;flex-direction:column;transition:background .5s,color .5s}.time-panel h3{font-size:clamp(25px,2.8vw,35px)}.time-panel .eyebrow{margin-bottom:15px;font-size:11px}.time-tabs{display:flex;border-bottom:1px solid #899f9b66;margin:24px 0 20px}.time-tabs button{flex:1;min-height:50px;position:relative;color:#54716d;font-size:16px}.time-tabs button[aria-selected=true]{color:var(--ink)}.time-tabs button:after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:currentColor;transform:scaleX(0);transition:transform .4s}.time-tabs button[aria-selected=true]:after{transform:scaleX(1)}.time-kicker{font-size:17px;font-weight:500;margin:0 0 10px}.time-panel #time-description{font-size:14px;line-height:2;margin:0}.time-note{font-size:12px;line-height:1.85;color:#526c66;margin:12px 0 15px}.time-panel .line-link{margin-top:auto;font-size:13px}.time-experience[data-scene=night] .time-panel{background:#0d303c;color:#ecf6f6}.time-experience[data-scene=night] .time-tabs button,.time-experience[data-scene=night] .time-note{color:#bfd1d5}.time-experience[data-scene=night] .time-tabs button[aria-selected=true]{color:var(--lime)}.time-experience[data-scene=sunset] .time-panel{background:#eee7da}
.journey{background:var(--deep);color:#eaf1e9;overflow:hidden}.journey .section-label{border-color:#ffffff2c;color:#ccdcd9}.journey-heading{display:flex;justify-content:space-between;align-items:flex-end;margin:0 0 55px}.journey-heading h2{font-size:clamp(36px,4.3vw,58px);line-height:1.6}.journey-heading .eyebrow{font-size:12px;color:var(--lime);margin-bottom:20px}.journey-heading>p{font-size:15px;line-height:2.3;padding:0 0 14px 25px;color:#bccfce}.journey-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #fff4;border-bottom:1px solid #fff4}.journey-tabs button{position:relative;text-align:left;padding:26px 25px 23px;min-height:122px;font-size:18px;transition:background .25s,color .25s}.journey-tabs button+button{border-left:1px solid #fff3}.journey-tabs button>span{font-size:12px;margin-right:12px;opacity:.6}.journey-tabs small{display:block;margin:4px 0 0 31px;font-size:11px;letter-spacing:.1em;opacity:.6}.journey-tabs button[aria-selected=true]{background:var(--lime);color:var(--deep)}.journey-tabs button:not([aria-selected=true]):hover{background:#ffffff0a}.trip-content{display:grid;grid-template-columns:1.04fr 1fr;gap:8%;padding-top:60px}.trip-photo-wrap{position:relative;overflow:hidden;aspect-ratio:1.22}.trip-photo-wrap img{height:100%;transition:opacity .2s,transform 1.1s var(--ease)}.trip-photo-wrap:hover img{transform:scale(1.03)}.trip-badge{position:absolute;top:20px;right:20px;color:#fff;font-size:11px;line-height:1.5;text-align:right;letter-spacing:.12em;text-shadow:0 2px 5px #0005}.trip-badge b{font-size:20px;font-weight:400}.trip-intro{padding:32px 0}.trip-intro .eyebrow{font-size:12px;color:#acc4c3;margin-bottom:15px;letter-spacing:.05em}.trip-intro h3{font-size:clamp(28px,3vw,40px);line-height:1.7}.trip-intro p:not(.eyebrow){color:#bdd0ce;font-size:14px;margin-top:17px;line-height:2.1}.trip-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:23px}.trip-tags span{border:1px solid #fff4;font-size:12px;border-radius:20px;padding:3px 14px;color:#cddcd9}.timeline-head{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.1em;color:#b8cecc;border-bottom:1px solid #ffffff32;padding-bottom:17px}.trip-timeline{padding:17px 0 10px}.day-label{font-size:11px;letter-spacing:.15em;color:var(--lime);margin:17px 0 15px;font-weight:600}.timeline-stop{display:grid;grid-template-columns:69px 1fr;gap:15px;position:relative;padding:0 0 24px}.timeline-stop:before{content:'';position:absolute;left:75px;top:11px;bottom:-9px;width:1px;background:#3a5459}.timeline-stop:after{content:'';position:absolute;left:72px;top:8px;width:7px;height:7px;border:1px solid #9eb9b8;background:var(--deep);border-radius:100%}.timeline-stop:last-child:before{display:none}.stop-time{font-size:12px;color:#b2c9c8;padding-top:0;text-align:left}.stop-body{padding-left:13px}.stop-body h4{font-size:16px;font-weight:500;margin:0 0 4px;color:#f0f5ee;line-height:1.6}.stop-body p{font-size:13px;line-height:1.85;color:#aebfc1}.stop-note{font-size:12px!important;display:block;color:#d3ddbb!important;margin:5px 0 0!important}.itinerary-note{font-size:12px;color:#a7bcbd;line-height:1.95;border-top:1px solid #fff3;padding-top:20px}.trip-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:25px}.trip-actions .pill{background:var(--lime);color:var(--deep);font-size:13px;gap:24px;min-height:55px;padding:13px 21px}.trip-actions .text-button{font-size:12px;color:#cfdfd9;gap:12px}.copy-status{font-size:12px;color:var(--lime);min-height:23px;margin-top:10px}.night-feature{min-height:650px;position:relative;display:flex;align-items:center;color:#fff;background:#020f28;overflow:hidden}.night-feature>img{position:absolute;inset:0;height:100%;object-position:center 60%;opacity:.8}.night-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#031c35e0 0%,#031c3550 60%,#01122210),linear-gradient(0deg,#051b3299,transparent 50%)}.night-copy{position:relative;padding:85px 8%;max-width:810px}.night-copy .eyebrow{font-size:12px;color:#b7d9ff}.night-copy h2{font-size:clamp(40px,5vw,68px)}.night-copy>p:not(.eyebrow):not(.night-note){font-size:15px;line-height:2.2;margin-top:23px}.night-copy .pill{margin:30px 0 20px}.night-copy .night-note{font-size:12px;line-height:1.9;color:#ced9ea;max-width:590px}
.stay-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin:0 0 55px}.stay-heading p{font-size:14px;line-height:2.3}.stay-grid{display:grid;grid-template-columns:1fr 1fr;gap:5%}.room-photo{aspect-ratio:1.35;position:relative;overflow:hidden;background:#d6e0db}.room-photo>img{height:100%;transition:transform 1.3s var(--ease)}.room-photo:hover>img{transform:scale(1.025)}.room-photo>span{position:absolute;left:20px;top:17px;font-size:11px;background:#062f38d6;color:white;padding:5px 12px;letter-spacing:.14em}.photo-next{position:absolute;right:15px;bottom:15px;background:white;border-radius:100%;height:44px;width:44px;font-size:22px}.photo-next:hover{background:var(--lime)}.room-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:25px 0 13px}.room-heading h3{font-size:27px;white-space:nowrap}.room-heading>span{font-size:12px}.room>p{font-size:14px;color:#516d6a;line-height:2}.room details{margin-top:17px}.room summary{font-size:13px;padding:15px 0;border-bottom:1px solid var(--line)}.room .line-link{font-size:13px}.detail-body{font-size:14px;line-height:2;padding:18px 0 23px;color:var(--muted)}.detail-body a{display:inline-block;margin-top:12px;font-size:13px;border-bottom:1px solid currentColor;color:var(--ink)}.detail-body p+p{margin-top:12px}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:25px}summary::-webkit-details-marker{display:none}summary span{font-size:20px;font-weight:400;flex-shrink:0;transition:transform .25s}details[open]>summary>span:last-child{transform:rotate(45deg)}.stay-info{display:flex;flex-wrap:wrap;gap:25px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;margin:40px 0 105px;font-size:12px;letter-spacing:.05em}.stay-info b{font-size:15px;font-weight:500;margin-left:10px}.stay-info>span:last-child{margin-left:auto;color:var(--muted);font-size:12px;letter-spacing:0}.dining{display:grid;grid-template-columns:1.05fr 1fr;gap:8%;align-items:center}.dining-photo{aspect-ratio:1.02;position:relative;overflow:hidden}.dining-photo img{height:100%;transition:opacity .2s}.dining-photo>span{position:absolute;bottom:12px;left:15px;color:#fff;background:#082c38a8;font-size:11px;padding:4px 9px}.dining-copy h2{font-size:clamp(32px,3.7vw,49px)}.dining-copy>p:not(.eyebrow){font-size:14px;line-height:2.15;margin-top:24px}.dining-tabs{display:flex;gap:20px;margin:22px 0 17px}.dining-tabs button{font-size:14px;padding:7px 20px;border:1px solid var(--line);border-radius:25px}.dining-tabs button[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:white}#dining-description{font-size:14px;line-height:1.95}.dining-copy .small-note{font-size:12px!important;color:var(--muted)}
.explore{background:#e9efeb}.explore .section-wrap{padding-bottom:90px}.explore-heading{display:flex;gap:35px;align-items:center;justify-content:space-between;margin-bottom:47px}.explore-heading h2{font-size:clamp(29px,3.7vw,48px)}.explore-heading .line-link{font-size:13px;min-width:165px}.spot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:3.5%}.spot-photo{position:relative;aspect-ratio:1.12;overflow:hidden}.spot-photo img{height:100%;transition:transform 1.3s var(--ease)}.spot-photo:hover img{transform:scale(1.04)}.spot-photo>span{position:absolute;bottom:14px;left:18px;font-size:11px;letter-spacing:.13em;color:#fff;text-shadow:0 1px 7px #000}.spot-grid h3{font-size:20px;font-family:var(--serif);margin:22px 0 12px;line-height:1.6}.spot-grid p{font-size:14px;color:#4f6a65;line-height:2}.spot-meta{display:block;font-size:12px;margin-top:16px;color:#5a706b;line-height:1.9}.art-spot{padding:25px 27px 20px;background:#dce5dd;border:1px solid #c5d3c6;position:relative}.art-spot .letter-mark{display:block;font-size:clamp(40px,4.6vw,66px);line-height:.98;font-family:Georgia,serif;font-style:italic;letter-spacing:-.065em;font-weight:400;color:#517362;margin:40px 0 35px}.art-spot h3{font-size:18px}.art-spot .line-link{font-size:12px;margin-top:20px;border-color:#b4c4b9}.more-experiences{display:grid;grid-template-columns:1fr 1.55fr;gap:7%;margin-top:65px;padding-top:45px;border-top:1px solid #bbc9c3}.more-experiences h3{font-family:var(--serif);font-size:24px}.more-experiences summary{font-size:14px;padding:19px 0;border-bottom:1px solid #bdcbc3}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start;padding-top:10px}.access h2{font-size:clamp(33px,4vw,52px)}.access-grid>div>p:not(.eyebrow){font-size:15px;margin:25px 0 27px;line-height:2.1}.access .line-link{font-size:14px}.access-route{padding:4px 0 10px}.route-step{display:flex;gap:28px;position:relative}.route-number{border:1px solid #9bb2ab;display:flex;align-items:center;justify-content:center;border-radius:100%;height:38px;min-width:38px;font-size:12px;line-height:1}.route-step h3{font-size:24px;font-weight:500;margin:4px 0 6px}.route-step .micro{font-size:11px;color:#607b71}.route-step p{font-size:13px}.route-step a{font-size:13px;text-decoration:underline;text-underline-offset:5px}.route-transit{display:flex;gap:47px;margin-left:18px;height:107px;align-items:center;position:relative}.route-dash{width:1px;background:repeating-linear-gradient(to bottom,#688a7d 0,#688a7d 4px,transparent 4px,transparent 10px);align-self:stretch}.route-transit>span:last-child{font-size:13px;line-height:1.7}.route-transit b{font-size:22px;margin-left:8px;font-weight:500}.route-transit small{font-size:11px;display:block;margin-top:7px}.route-transit.short{height:63px}.route-step.last .route-number{background:var(--ink);color:white;border-color:var(--ink)}.access-note{display:flex;gap:45px;margin-top:55px;border-top:1px solid var(--line);padding-top:25px;font-size:13px}.access-note b{white-space:nowrap;font-weight:500}.access-note p{line-height:2;max-width:750px}.faq{padding-top:10px;display:grid;grid-template-columns:1fr 1.65fr;gap:7%}.faq h2{font-size:40px}.faq summary{padding:20px 0;border-bottom:1px solid var(--line);font-size:15px}.faq .eyebrow{margin-bottom:15px}.faq-list{border-top:1px solid var(--line)}
.final-cta{position:relative;overflow:hidden;min-height:600px;color:#fff;display:flex;justify-content:center;align-items:center;text-align:center;background:#0b3e4d}.cta-sea{position:absolute;inset:0;background:linear-gradient(#062e3977,#072b399c),url('../sea-mood.jpg') center 70%/cover}.cta-content{position:relative;padding:65px 25px}.cta-content h2{font-size:clamp(46px,6vw,82px);line-height:1.5}.cta-content .eyebrow{font-size:12px;letter-spacing:.14em;color:#d4e6e2}.cta-content>p:not(.eyebrow){font-size:15px;margin:23px 0}.cta-content .pill{min-width:300px;margin-top:10px}.cta-contact{display:block;text-decoration:underline;text-underline-offset:7px;font-size:13px;margin-top:26px;color:#d5e4e5}footer{background:var(--deep);color:#d0dcd8;padding:66px 6% 30px}.footer-top{display:grid;grid-template-columns:1fr 1.5fr .6fr;gap:45px;align-items:start;font-size:13px}.footer-top .brand{color:#f4f7ef}.footer-top p{font-size:12px;margin:0 0 8px}.footer-top .footer-tel{display:block;font-size:24px;letter-spacing:.02em;margin:10px 0 8px}.footer-top nav{display:flex;flex-direction:column;gap:17px;font-size:12px}.footer-top a:hover{color:white}.footer-bottom{border-top:1px solid #ffffff25;display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:50px;padding-top:25px;font-size:11px;line-height:1.5}.footer-bottom>div{display:flex;gap:24px}.motion-toggle{font-size:12px}.mobile-book{display:none}dialog{border:0;padding:48px 28px 20px;background:var(--deep);color:white;width:min(1000px,94vw);max-height:90svh}dialog::backdrop{background:#031b24e3;backdrop-filter:blur(8px)}dialog video{max-height:70svh;object-fit:contain;background:black}dialog p{font-size:12px;padding:15px 0 0}dialog .film-close{position:absolute;right:22px;top:9px;font-size:14px}body.modal-open{overflow:hidden}.reveal{opacity:1;transform:none}body.motion-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .85s var(--ease),transform .85s var(--ease)}body.motion-ready .reveal.visible{opacity:1;transform:none}.is-swapping{opacity:.3!important}.no-motion *{scroll-behavior:auto!important;animation:none!important;transition:none!important}.no-motion .reveal{opacity:1!important;transform:none!important}@keyframes sea-drift{0%{transform:scale(1.04) translate(0,0)}100%{transform:scale(1.1) translate(-.5%,.3%)}}@keyframes scroll-line{0%{transform:translateY(0)}100%{transform:translateY(65px)}}
@media(min-width:1600px){.hero-copy{padding-top:240px}.hero-description{margin:30px 0 35px}.hero h1{font-size:98px}.hero{min-height:900px}.hero-topline{top:164px}}
@media(max-width:1200px){.site-header{gap:18px}.desktop-nav{gap:18px;font-size:12px}.brand{width:180px}.header-book{padding:10px 15px;font-size:12px;gap:13px}.hero{min-height:800px}.hero-copy{padding-top:205px}.hero h1{font-size:72px}.time-panel{padding:35px 32px 27px}.time-experience{grid-template-columns:1.13fr 1fr}.room-heading{display:block}.room-heading>span{display:block;margin-top:5px}.trip-content{gap:6%}.journey-tabs button{padding-left:18px;padding-right:13px;font-size:16px}.art-spot{padding:23px 22px}.hero-side{right:4%}}
@media(max-width:960px){.desktop-nav{display:none}.header-book{margin-left:auto}.menu-toggle{display:block}.site-header{padding:22px 5%}.site-header.is-fixed{padding:15px 5%}.hero-topline{top:134px}.hero{height:900px;min-height:0}.hero-copy{padding-top:204px}.hero h1{font-size:65px}.hero-bottom{bottom:25px}.arrival-strip>div .micro{display:none}.arrival-strip>div>span:last-child{font-size:12px}.arrival-strip p{gap:15px}.arrival-strip p b{font-size:34px}.cross-line{width:22px}.section-wrap{padding:75px 5%}.section-label{padding-bottom:45px;font-size:12px}.intro-layout{gap:4%;padding-bottom:55px}.intro-layout h2{font-size:48px}.intro-body{padding-left:0;font-size:14px}.intro-body .signature{font-size:12px}.time-experience{grid-template-columns:1fr 1fr;min-height:540px}.time-panel{padding:28px}.time-photo-number{font-size:39px;left:20px}.photo-source{left:21px;font-size:10px}.time-panel h3{font-size:29px}.time-panel .eyebrow{font-size:10px}.time-tabs{margin-top:18px}.journey-heading h2{font-size:42px}.journey-heading>p{font-size:13px;max-width:280px}.journey-tabs button{font-size:15px;min-height:110px;padding-left:15px}.journey-tabs button>span{display:none}.journey-tabs small{margin-left:0;font-size:10px}.trip-content{gap:5%}.trip-intro h3{font-size:29px}.trip-photo-wrap{aspect-ratio:.9}.timeline-stop{grid-template-columns:61px 1fr;gap:10px}.timeline-stop:before{left:65px}.timeline-stop:after{left:62px}.stop-time{font-size:11px}.stop-body h4{font-size:15px}.stop-body p{font-size:12px}.night-copy{padding:70px 6%;max-width:700px}.night-feature{min-height:580px}.stay-heading{display:block}.stay-heading p{margin-top:20px}.stay-info{gap:15px;margin-bottom:70px}.stay-info>span:last-child{margin-left:0;width:100%}.dining{gap:5%;grid-template-columns:1fr 1fr}.dining-copy h2{font-size:34px}.dining-photo{aspect-ratio:.8}.explore-heading{align-items:flex-start}.explore-heading h2{font-size:33px}.spot-grid{gap:22px;grid-template-columns:1fr 1fr}.art-spot{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;column-gap:40px;margin-top:15px;padding:30px}.art-spot .micro{grid-column:1}.art-spot .letter-mark{grid-column:1;grid-row:2/6;font-size:65px;margin:20px 0}.art-spot h3{grid-column:2;grid-row:1/3;margin:10px 0}.art-spot p,.art-spot .spot-meta,.art-spot a{grid-column:2}.art-spot .spot-meta{margin-top:8px}.more-experiences{grid-template-columns:1fr;gap:20px}.more-experiences h3{font-size:23px}.access-grid{gap:6%}.access h2{font-size:35px}.route-step{gap:20px}.route-step h3{font-size:22px}.route-transit{gap:39px}.route-step p{font-size:12px}.access-note{gap:25px}.faq{grid-template-columns:1fr 1.6fr;gap:5%;padding-top:0}.faq h2{font-size:34px}.faq summary{font-size:14px}.footer-top{grid-template-columns:1fr 1.5fr;gap:30px}.footer-top nav{grid-column:1/-1;flex-direction:row;gap:25px}.footer-bottom{flex-wrap:wrap;justify-content:flex-start}.footer-bottom .motion-toggle{margin-left:auto}}
@media(max-width:640px){html{scroll-padding-top:85px}body{font-size:16px}.section-wrap{padding:58px 6%}.section-label{font-size:11px;letter-spacing:.06em;padding-top:17px;padding-bottom:35px;gap:15px}.section-label>span:last-child{font-size:10px;letter-spacing:0;text-align:right}.eyebrow{font-size:11px;margin-bottom:19px;letter-spacing:.12em}.site-header{padding:19px 6%;gap:12px}.site-header.is-fixed{padding:12px 6%}.brand{width:157px}.brand-name{font-size:34px;gap:10px}.brand-rule{width:36px}.brand-sub{font-size:8px;margin-top:7px;letter-spacing:.16em}.brand-sub b{font-size:9px;margin-left:6px}.header-book{display:none}.menu-toggle{margin-left:auto}.hero{height:860px;max-height:1000px;min-height:760px}.hero-topline{top:116px;left:7%;right:7%;font-size:9px;letter-spacing:.12em}.hero-copy{padding:177px 7% 135px}.hero h1{font-size:clamp(30px,10vw,63px);line-height:1.6;letter-spacing:.025em}.hero h1 span{margin-left:1.1em}.hero-copy .eyebrow{font-size:12px;margin-bottom:25px;letter-spacing:.1em}.hero-description{font-size:13px;line-height:2.1;margin:25px 0 30px;letter-spacing:.01em}.hero-copy .pill{font-size:13px;min-height:55px;padding:15px 22px;gap:25px}.hero-side{display:none}.hero-visual img{object-position:58% center}.hero-shade{background:linear-gradient(90deg,#092c397f,#092c3930),linear-gradient(0deg,#052d3ac9,transparent 65%,#052d3a30)}.hero-bottom{left:7%;right:7%;bottom:24px;gap:20px;align-items:flex-end}.scroll-cue{font-size:8px;letter-spacing:.13em;gap:10px;max-width:140px}.scroll-line{height:35px}.hero-caption{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.hero-caption>span{font-size:9px;order:2}.hero-caption .text-button{font-size:11px;gap:13px;padding-bottom:5px}.hero-caption .text-button span{font-size:17px}.arrival-strip{padding:23px 6%;gap:16px;flex-wrap:wrap}.arrival-strip>div{display:none}.arrival-strip p{font-size:12px;gap:10px}.arrival-strip p b{font-size:32px}.cross-line{width:18px}.arrival-strip>a{font-size:11px;gap:12px}.intro-layout{display:block;padding:0 0 40px}.intro-layout h2{font-size:43px;line-height:1.65}.intro-body{margin-top:30px;font-size:14px;line-height:2.2;padding-left:3px}.intro-body br{display:none}.intro-body .signature{font-size:13px;margin-top:22px}.intro-body p:first-child{max-width:280px}.time-experience{display:flex;flex-direction:column}.time-photo{min-height:270px;aspect-ratio:1.25}.time-photo-number{font-size:45px;bottom:32px;left:22px}.photo-source{bottom:13px;left:25px;font-size:9px}.time-panel{padding:29px 26px 22px}.time-panel .eyebrow{font-size:10px}.time-panel h3{font-size:30px}.time-panel h3 br{display:none}.time-tabs{margin:17px 0 18px}.time-tabs button{min-height:45px}.time-kicker{font-size:17px}.time-panel #time-description{font-size:14px;line-height:2}.time-note{font-size:12px;margin-bottom:15px}.journey-heading{display:block;margin-bottom:33px}.journey-heading h2{font-size:38px}.journey-heading .eyebrow{font-size:10px;margin-bottom:18px}.journey-heading>p{max-width:none;padding:0;margin-top:22px;font-size:14px}.journey-tabs{grid-template-columns:1fr 1fr 1fr}.journey-tabs button{font-size:12px;line-height:1.7;padding:17px 7px;text-align:center;min-height:82px}.journey-tabs small{font-size:8px;letter-spacing:.02em;margin-top:4px}.trip-content{display:block;padding-top:29px}.trip-photo-wrap{aspect-ratio:1.25}.trip-badge{font-size:10px;top:15px;right:15px}.trip-badge b{font-size:18px}.trip-intro{padding:25px 0 30px}.trip-intro h3{font-size:32px}.trip-intro p:not(.eyebrow){font-size:14px;margin-top:15px}.trip-tags{margin-top:18px}.trip-tags span{font-size:11px}.timeline-head{padding:20px 0 16px;border-top:1px solid #fff3;font-size:11px}.trip-timeline{padding-top:5px}.day-label{font-size:11px;margin-top:20px}.timeline-stop{grid-template-columns:65px 1fr;gap:15px;padding-bottom:25px}.timeline-stop:before{left:70px}.timeline-stop:after{left:67px}.stop-time{font-size:12px}.stop-body{padding-left:7px}.stop-body h4{font-size:16px}.stop-body p{font-size:13px;line-height:1.95}.itinerary-note{font-size:12px}.trip-actions{gap:18px}.trip-actions .pill{font-size:13px;flex:1;min-width:235px}.night-feature{min-height:640px;align-items:flex-end}.night-feature>img{object-position:65% center;opacity:.85}.night-overlay{background:linear-gradient(0deg,#031d35f5, #031d3555 85%)}.night-copy{padding:65px 7% 45px}.night-copy h2{font-size:43px}.night-copy .eyebrow{font-size:10px}.night-copy>p:not(.eyebrow):not(.night-note){font-size:14px;line-height:2.15}.night-copy .pill{font-size:12px;min-height:53px;gap:23px;padding:13px 20px;margin:25px 0}.night-copy .night-note{font-size:11px;line-height:1.9}.night-note br{display:none}.stay-heading{margin-bottom:32px}.stay-heading h2{font-size:35px;letter-spacing:.025em}.stay-heading p{font-size:14px;margin-top:18px}.stay-grid{display:block}.room+.room{margin-top:40px}.room-photo{aspect-ratio:1.25}.room-heading{margin-top:19px;display:flex;gap:15px;align-items:start}.room-heading h3{font-size:24px;white-space:normal}.room-heading>span{font-size:10px;max-width:135px;line-height:1.7;text-align:right;padding-top:3px}.room>p{font-size:14px}.stay-info{margin:30px 0 60px;gap:16px;font-size:10px;letter-spacing:0;padding:20px 0}.stay-info b{font-size:13px;margin-left:5px}.stay-info>span:last-child{font-size:11px;line-height:1.7}.dining{display:flex;flex-direction:column;gap:30px}.dining-photo{width:100%;aspect-ratio:1.15}.dining-copy{width:100%}.dining-copy h2{font-size:36px}.dining-copy .eyebrow{margin-bottom:16px}.dining-copy>p:not(.eyebrow){font-size:14px;margin-top:20px}.dining-copy>p br{display:none}.dining-tabs{margin-top:20px}.explore .section-wrap{padding-bottom:58px}.explore-heading{display:block;margin-bottom:30px}.explore-heading h2{font-size:29px;letter-spacing:.025em}.explore-heading .line-link{margin-top:15px;min-width:0;max-width:220px;font-size:12px}.spot-grid{display:block}.spot-grid>article+article{margin-top:35px}.spot-photo{aspect-ratio:1.25}.spot-grid h3{font-size:23px;margin-top:18px}.spot-grid p{font-size:14px}.spot-meta{font-size:12px;margin-top:12px}.art-spot{display:block;padding:29px 26px}.art-spot .letter-mark{font-size:69px;margin:35px 0}.art-spot h3{font-size:23px}.art-spot .micro{font-size:11px}.art-spot .line-link{margin-top:20px}.more-experiences{padding-top:30px;margin-top:40px;gap:18px}.more-experiences h3{font-size:22px}.more-experiences summary{font-size:13px;padding:17px 0;gap:15px}.access-grid{display:block;padding-top:0}.access h2{font-size:37px}.access-grid>div>p:not(.eyebrow){font-size:14px;margin:22px 0}.access .line-link{font-size:13px}.access-route{margin-top:42px;padding:30px 24px;background:#e9efea}.route-step{gap:23px}.route-step p{font-size:11px}.route-step h3{font-size:22px}.route-step .micro{font-size:9px}.route-step a{font-size:12px}.route-transit{gap:42px}.route-transit b{font-size:24px}.route-transit small{font-size:10px}.access-note{display:block;margin-top:27px;padding-top:20px}.access-note b{font-size:13px}.access-note p{margin-top:12px;font-size:12px}.faq{padding-top:10px;display:block}.faq h2{font-size:34px;margin-bottom:25px}.faq .eyebrow{font-size:11px}.faq summary{font-size:14px;gap:15px;line-height:1.8}.detail-body{font-size:13px}.final-cta{min-height:590px}.cta-content{padding:65px 6%}.cta-content h2{font-size:52px}.cta-content .eyebrow{font-size:10px;letter-spacing:.09em}.cta-content>p:not(.eyebrow){font-size:14px}.cta-content .pill{min-width:0;width:100%;max-width:325px;font-size:13px;gap:35px}.cta-contact{font-size:12px}footer{padding:48px 7% 95px}.footer-top{display:block}.footer-top .brand{margin-bottom:35px}.footer-top p{font-size:12px}.footer-top>div>a:not(.footer-tel){font-size:12px}.footer-top nav{margin-top:30px;display:flex;flex-direction:row;flex-wrap:wrap;gap:12px 23px;font-size:11px}.footer-bottom{margin-top:28px;display:flex;flex-direction:column;align-items:flex-start;gap:22px;font-size:10px}.footer-bottom>div{gap:18px;flex-wrap:wrap}.footer-bottom .motion-toggle{margin:0;font-size:11px}.mobile-book{position:fixed;bottom:0;left:0;right:0;display:flex;z-index:90;box-shadow:0 -5px 20px #082b3920;background:white;padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-book a{min-height:59px;font-size:13px;display:flex;align-items:center;justify-content:center;width:40%;background:#fff;color:var(--sea)}.mobile-book a:last-child{width:60%;background:var(--lime);color:var(--sea);font-weight:500}dialog{padding:45px 15px 15px}dialog p{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}}
@media print{.site-header,.hero,.arrival-strip,.intro,.night-feature,.stay,.explore,.access,.faq,.final-cta,footer,.mobile-book,.journey-tabs,.trip-actions,.trip-photo-wrap,.journey .section-label,.journey-heading{display:none!important}.journey{background:white;color:black}.journey .section-wrap{padding:20px}.trip-content{display:block;padding:0}.trip-intro p,.stop-body p,.stop-body h4,.stop-time,.day-label,.itinerary-note,.trip-tags span{color:black!important}.trip-intro{padding:0 0 20px}.timeline-head{border-color:#aaa}.timeline-stop:before,.timeline-stop:after{display:none}.trip-timeline{padding:0}.timeline-stop{padding-bottom:12px}.reveal{opacity:1!important;transform:none!important}}
/* Reading sizes for Japanese body copy */
.hero-description,.intro-body,.time-panel #time-description,.journey-heading>p,.trip-intro p:not(.eyebrow),.stop-body p:not(.stop-note),.night-copy>p:not(.eyebrow):not(.night-note),.stay-heading p,.room>p,.dining-copy>p:not(.eyebrow):not(.small-note),#dining-description,.spot-grid p,.access-grid>div>p:not(.eyebrow),.detail-body{font-size:1rem}
.time-panel #time-description,.trip-intro p:not(.eyebrow),.room>p,.spot-grid p{line-height:2}
@media(min-width:961px){.hero{height:max(920px,100svh);min-height:920px}}
@media(min-width:641px) and (max-width:960px){.time-experience{grid-template-columns:1fr}.time-photo{min-height:390px}.time-panel{padding:35px 40px}.time-panel h3 br{display:none}.time-panel .line-link{margin-top:15px}}
/* Complete guest guide and island explorer */
.hero-visual{position:absolute;isolation:isolate}.hero-visual video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.4s}.hero-visual video.playing{opacity:1}.hero-play{position:absolute;z-index:3;right:6%;bottom:108px;color:white;border:1px solid #fff7;border-radius:30px;padding:10px 18px;font-size:12px;background:#072d3a55;backdrop-filter:blur(12px)}.content-nav{display:flex;gap:27px;max-width:1440px;padding:23px 6%;margin:auto;overflow:auto;white-space:nowrap;border-bottom:1px solid var(--line);scrollbar-width:thin;font-size:13px}.content-nav a{border-bottom:1px solid transparent}.content-nav a:hover{border-color:currentColor}.journey-tabs{grid-template-columns:repeat(5,1fr)}.journey-tabs button{font-size:14px;padding:22px 14px;min-height:105px}.journey-tabs button>span{display:block;margin-bottom:4px}.journey-tabs small{margin-left:0;font-size:10px}.room-catalog{margin-top:45px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);scroll-margin-top:100px}.room-catalog>summary,.news-archive>summary,.fishing-guide>summary{padding:26px 0}.room-catalog>summary>span:first-child,.news-archive>summary>span:first-child,.fishing-guide>summary>span:first-child{flex-shrink:1;min-width:0;display:flex;flex-direction:column;gap:8px;font-size:22px}.room-catalog summary small,.news-archive summary small,.fishing-guide summary small{font-size:11px;letter-spacing:.15em;font-weight:500;color:var(--muted)}.room-catalog summary b,.news-archive summary b,.fishing-guide summary b{font-weight:400;font-family:var(--serif)}.catalog-inner{padding:0 0 32px}.filter-buttons{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.filter-buttons button{font-size:13px;padding:8px 17px;border:1px solid var(--line);border-radius:25px}.filter-buttons button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.catalog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.room-open{width:100%;text-align:left;padding:0}.room-open img{height:auto;aspect-ratio:1.45;transition:opacity .25s}.room-open:hover img{opacity:.8}.room-open>span{display:block;font-size:16px;font-weight:500;margin-top:12px}.room-open small{display:block;font-size:12px;line-height:1.8;margin-top:4px}.room-open .catalog-cta{font-size:12px;font-weight:400;padding-bottom:13px;border-bottom:1px solid var(--line)}.catalog-count{font-size:12px;margin-top:20px;color:var(--muted)}.washitsu-note{margin-top:32px;padding:22px;background:#e8eeea}.washitsu-note h4{margin:0 0 10px;font-size:18px;font-weight:500}.washitsu-note p{font-size:15px}.subheading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}.subheading h3{font-size:38px}.subheading .eyebrow{margin-bottom:16px}.subheading>p{font-size:13px;line-height:1.9}.rates-block{margin:-35px 0 95px;scroll-margin-top:110px}.table-scroll{overflow:auto;max-width:100%;scrollbar-width:thin;margin:22px 0}.data-table{width:100%;border-collapse:collapse;font-size:14px;min-width:550px}.data-table caption{text-align:left;font-size:12px;color:var(--muted);padding-bottom:12px}.data-table th,.data-table td{padding:16px 18px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.8}.data-table thead th{background:#e4ece6;font-weight:500;white-space:nowrap;font-size:13px}.data-table tbody th{font-weight:500;min-width:180px}.data-table td{font-variant-numeric:tabular-nums}.rate-notes{font-size:13px;color:var(--muted);line-height:2;margin:18px 0 25px}.rate-notes p{font-size:13px}.rate-pair{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:32px 0}.rate-pair>div{padding:28px;background:#eaf0e8}.rate-pair .eyebrow{font-size:11px;margin-bottom:20px}.rate-pair h4{font-size:18px;font-weight:500;margin:0 0 17px}.rate-pair strong{display:block;font-size:36px;font-weight:400;line-height:1.5;margin-top:8px}.rate-pair strong span{font-size:14px;margin-left:7px}.rate-pair p:not(.eyebrow):not(.small-note){font-size:14px;line-height:2}.experience-expanded{padding-top:20px}.cruise-editorial{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center}.cruise-editorial>div:first-child{height:420px}.cruise-editorial img{height:100%}.cruise-editorial h2{font-size:46px}.cruise-editorial p:not(.eyebrow):not(.small-note){margin-top:25px;font-size:16px}.cruise-editorial .small-note{margin-top:20px}.experience-expanded>.pill{margin-top:25px}.beauty-editorial{display:grid;grid-template-columns:.8fr 1.4fr;gap:7%;margin-top:75px;padding:50px 0 0;border-top:1px solid var(--line)}.beauty-editorial h3{font-size:34px}.beauty-editorial p:not(.eyebrow):not(.small-note){margin-top:22px;font-size:16px}.beauty-editorial .table-scroll{margin-top:0}.beauty-editorial .data-table{min-width:450px;font-size:13px}.beauty-editorial .data-table th,.beauty-editorial .data-table td{padding:12px}.beauty-editorial .data-table tbody th{min-width:170px}.island-directory{margin-top:60px;padding-top:45px;border-top:1px solid #b9cac0}.island-directory>h3{font-size:34px;margin-bottom:35px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:27px}.guide-grid img{height:auto;aspect-ratio:1.4}.guide-grid h4,.island-small-grid h4{font-size:18px;font-weight:500;margin:18px 0 12px}.guide-grid p,.island-small-grid p{font-size:15px;line-height:2;color:#49665d}.island-small-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:35px;padding-top:20px;border-top:1px solid #bbcabe}.awaloha{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;margin-top:40px;background:#dfe8dd;padding:35px}.awaloha>img{height:100%;min-height:220px}.awaloha h4{font-family:var(--serif);font-weight:400;font-size:25px;margin:0 0 20px}.awaloha p:not(.eyebrow):not(.small-note){font-size:16px}.awaloha .eyebrow{font-size:11px;margin-bottom:15px}.facilities{padding-top:70px}.facility-grid{display:grid;grid-template-columns:1fr 1fr;gap:5%}.facility-grid img{height:auto;aspect-ratio:1.65}.facility-grid h3{font-family:var(--serif);font-size:25px;margin:24px 0 15px}.facility-grid p{font-size:16px;color:var(--muted)}.senior-editorial{display:grid;grid-template-columns:1.05fr 1fr;gap:7%;align-items:center;margin-top:60px}.senior-editorial video{aspect-ratio:16/10;object-fit:contain;background:#062b33}.senior-editorial h3{font-size:36px}.senior-editorial p:not(.eyebrow){margin-top:20px;font-size:16px}.facility-price strong{font-size:29px;font-weight:400}.facility-info{margin-top:45px}.facility-info summary{padding:18px 0;border-bottom:1px solid var(--line);font-size:15px}.fishing-guide{border-top:1px solid #b4c4b6;border-bottom:1px solid #b4c4b6;margin-top:45px}.fishing-guide .data-table{font-size:13px}.fishing-guide .data-table caption{max-width:600px}.arrival-options{max-width:1270px;padding:0 6% 65px;margin:auto}.arrival-options>h3{font-size:32px}.transport-contact{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:30px}.transport-contact b{font-size:14px;font-weight:500}.transport-contact a{display:block;font-size:20px;margin:10px 0}.transport-contact p{font-size:13px;color:var(--muted)}.news-contact{padding-top:20px}.news-contact h2{font-size:40px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:20px}.contact-grid h3{font-size:21px;margin-bottom:18px}.contact-grid p{font-size:16px}.contact-grid .pill{margin-top:30px}.contact-grid summary{font-size:13px;padding:20px 0;border-bottom:1px solid var(--line)}.contact-grid .contact-phone{font-size:33px;display:block;margin-top:25px;line-height:1.5}.contact-grid .small-note{font-size:12px;margin-top:7px}.news-archive{margin-top:55px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.news-archive dt{font-size:14px;margin-top:22px;font-weight:500}.news-archive dd{margin:10px 0 25px;font-size:14px}.room-dialog{width:min(1180px,96vw);padding:58px 35px 35px}.room-dialog-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:35px}.room-dialog-grid>div>img{height:auto;aspect-ratio:1.3}.room-dialog-thumbs{display:flex;gap:10px;margin-top:14px;overflow-x:auto}.room-dialog-thumbs button{width:23%;min-width:60px;padding:0;border:2px solid transparent;opacity:.6}.room-dialog-thumbs button[aria-pressed=true]{border-color:var(--lime);opacity:1}.room-dialog-thumbs img{aspect-ratio:1.3}.room-dialog-copy h2{font-size:29px;line-height:1.6;margin-bottom:20px}.room-dialog-copy .eyebrow{font-size:11px}.room-dialog-copy>p{font-size:15px;padding:0}.room-dialog-copy>p+p{margin-top:18px}.room-dialog-copy .pill{font-size:13px;gap:25px;margin-top:23px}.room-dialog-copy dl{font-size:13px;color:#cfdfdc}.room-dialog-copy dt{color:var(--lime);margin-top:16px;font-size:12px}.room-dialog-copy dd{margin:5px 0;line-height:1.9}
.island-explorer{background:#0c3540;color:#eaf4f1}.island-explorer .section-label{border-color:#ffffff35}.explorer-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}.explorer-heading .eyebrow{color:var(--lime);font-size:11px}.explorer-heading h2{font-size:56px;line-height:1.55}.explorer-heading>p{font-size:15px;line-height:2.3;color:#b8cece}.map-layout{display:grid;grid-template-columns:1fr 290px;gap:25px}.map-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#17434d;gap:20px}.map-mode{display:flex;gap:5px}.map-mode button{font-size:13px;padding:9px 17px;border-radius:25px;color:#d2e0df}.map-mode button[aria-pressed=true]{background:var(--lime);color:#092e36}.map-toolbar>button{font-size:12px}.map-frame-wrap{height:570px;min-height:400px;background:#b7c8bd;position:relative}.map-frame-wrap iframe{border:0;width:100%;height:100%;display:block}.map-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;padding:15px 0;color:#c3d6d4}.map-bottom a{border-bottom:1px solid #fff7;white-space:nowrap}.map-help{font-size:11px;color:#a5c2c2;line-height:1.9}.map-spots{display:flex;flex-direction:column;border-top:1px solid #ffffff3b}.map-spots button{display:flex;align-items:center;gap:12px;padding:13px 14px;border-bottom:1px solid #ffffff3b;text-align:left;font-size:14px}.map-spots button>span{font-size:10px;color:#a9c6c3}.map-spots button>small{font-size:9px;margin-left:auto;color:#a9c6c3}.map-spots button[aria-pressed=true]{background:#e4efbd;color:var(--deep)}.map-spots button[aria-pressed=true]>span,.map-spots button[aria-pressed=true]>small{color:#3c635a}.map-spot-detail>img{aspect-ratio:1.65;margin-top:25px}.map-spot-detail .eyebrow{font-size:10px;color:var(--lime);margin:17px 0 8px}.map-spot-detail h3{font-family:var(--serif);font-size:23px}.map-spot-detail>p:not(.eyebrow){font-size:14px;margin-top:12px;color:#bfd2ce;line-height:2}.map-spot-detail .line-link{font-size:12px;border-color:#fff5}.map-spot-detail>a:last-child{display:block;font-size:12px;margin-top:14px;text-decoration:underline;text-underline-offset:5px}.post-office{padding-top:90px;padding-bottom:95px;background:#faf9f5}.post-hero{display:grid;grid-template-columns:1.04fr 1fr;gap:7%;align-items:center}.post-hero figure{margin:0}.post-hero img{height:550px;object-fit:cover}.post-hero figcaption{font-size:10px;color:#647667;margin-top:10px}.post-story h2{font-size:39px;line-height:1.75}.post-story>p:not(.eyebrow):not(.small-note){font-size:16px;line-height:2.3;margin-top:25px}.post-story .eyebrow{font-size:11px;color:#627969}.post-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;margin-top:70px}.post-detail-grid h3.serif{font-size:34px}.post-detail-grid>div>p:not(.eyebrow):not(.small-note):not(.post-special){font-size:16px;line-height:2.2;margin-top:22px}.post-inside{aspect-ratio:1.4;margin-top:27px}.post-detail-grid .small-note{font-size:12px}.post-visit{padding:33px;background:#e8edde}.post-visit>h3{font-family:var(--serif);font-size:29px;margin-bottom:20px}.post-visit .eyebrow{font-size:11px;margin-bottom:15px}.visit-list{margin:0}.visit-list>div{display:grid;grid-template-columns:90px 1fr;gap:15px;padding:15px 0;border-bottom:1px solid #c5d0bf;font-size:14px}.visit-list dt{font-size:12px;padding-top:2px;color:#536b59}.visit-list dd{margin:0}.visit-list small{font-size:12px}.post-special{font-size:13px;line-height:1.9;padding:17px;background:#d8e3c9;margin-top:22px}.post-special b{font-weight:500}.post-visit .line-link{font-size:13px;border-color:#bac9b0}.post-map-button{width:100%;text-align:left}.letter-experience{display:grid;grid-template-columns:.75fr 1.25fr;gap:8%;margin-top:75px;padding-top:50px;border-top:1px solid #ced6c8}.letter-experience h3{font-size:38px}.letter-experience>div>p:not(.eyebrow):not(.small-note){font-size:16px;line-height:2.2;margin-top:25px}.letter-experience .small-note{font-size:12px;max-width:270px}.letter-pad{padding:30px;border:1px solid #c6d2c2;background:#fff}.letter-prompts{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.letter-prompts button{border:1px solid #c6d2c2;padding:7px 13px;border-radius:25px;font-size:12px}.letter-prompts button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.letter-pad label{font-size:13px;display:block;margin:5px 0 18px;color:#49654f}.letter-pad textarea{width:100%;min-height:220px;resize:vertical;border:0;font:16px/2.35 var(--serif);color:var(--ink);padding:5px 8px;background:repeating-linear-gradient(transparent,transparent 36px,#dce3d4 37px,transparent 38px);outline-offset:4px}.letter-pad textarea:focus-visible{outline:2px solid #819b2c}.letter-actions{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:15px}.letter-actions>span{font-size:11px;color:#698064}.letter-actions .text-button{font-size:12px;gap:17px}.letter-pad #letter-status{font-size:12px;min-height:24px;line-height:1.8;margin:12px 0 0}.posting-instructions{margin-top:35px;border-top:1px solid #c5d0bf;border-bottom:1px solid #c5d0bf}.posting-instructions summary{padding:23px 0;font-size:15px}.posting-instructions address{font-style:normal;padding:20px 24px;margin:20px 0;background:#edf0e7;font-size:16px;line-height:2}.source-line{font-size:11px;line-height:1.9;color:#6b7a66;margin-top:23px}.source-line a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:1100px){.journey-tabs button{font-size:12px;padding:17px 11px}.map-layout{grid-template-columns:1fr 255px;gap:20px}.map-frame-wrap{height:590px}.map-bottom{display:block}.map-bottom a{display:inline-block;margin-top:8px}.post-story h2{font-size:32px}.post-hero img{height:530px}.post-detail-grid{gap:5%}.post-visit{padding:26px}.post-detail-grid h3.serif{font-size:30px}.room-dialog-grid{gap:25px}.room-dialog-copy h2{font-size:25px}}
@media(max-width:800px){.content-nav{gap:22px;padding:20px 6%}.catalog-grid{grid-template-columns:1fr 1fr}.subheading{display:block}.subheading>p{margin-top:17px}.rate-pair{gap:20px}.rate-pair>div{padding:23px}.cruise-editorial{gap:5%}.cruise-editorial h2{font-size:34px}.cruise-editorial>div:first-child{height:390px}.beauty-editorial{display:block}.beauty-editorial>div+div{margin-top:25px}.guide-grid{grid-template-columns:1fr 1fr}.guide-grid article:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.guide-grid article:last-child img{grid-row:1/3}.guide-grid article:last-child h4{margin-top:0}.island-small-grid{display:block}.island-small-grid>div+div{margin-top:25px}.awaloha{padding:25px;gap:25px}.awaloha h4{font-size:22px}.senior-editorial{gap:5%}.senior-editorial h3{font-size:29px}.transport-contact{gap:25px}.transport-contact a{font-size:17px}.explorer-heading{display:block}.explorer-heading>p{margin-top:25px}.explorer-heading h2{font-size:45px}.map-layout{display:block}.map-frame-wrap{height:510px}.map-aside{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:25px}.map-spot-detail>img{margin-top:0}.post-hero{gap:5%}.post-hero img{height:450px}.post-story h2{font-size:29px}.post-story>p:not(.eyebrow):not(.small-note){font-size:15px;margin-top:20px}.post-story .eyebrow{font-size:9px}.post-detail-grid{display:block;margin-top:50px}.post-detail-grid>div:first-child{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.post-detail-grid>div:first-child>.eyebrow{grid-column:1}.post-detail-grid>div:first-child h3{grid-column:1}.post-detail-grid>div:first-child>p:not(.eyebrow){grid-column:1}.post-detail-grid .post-inside{grid-column:2;grid-row:1/5;height:100%;aspect-ratio:auto;margin:0}.post-detail-grid>div:first-child>.small-note:last-child{grid-column:2}.post-visit{margin-top:35px}.letter-experience{gap:5%;grid-template-columns:.8fr 1.2fr}.letter-experience h3{font-size:31px}.letter-pad{padding:23px}.letter-prompts button{font-size:11px;padding:6px 10px}.room-dialog-grid{display:block}.room-dialog-copy{margin-top:30px}.room-dialog-thumbs{max-width:500px}}
@media(max-width:640px){.hero-play{bottom:113px;right:7%;font-size:11px;padding:8px 14px}.content-nav{font-size:12px;padding:17px 6%;gap:23px}.journey-tabs{display:flex;overflow-x:auto;scrollbar-width:thin;scroll-snap-type:x proximity}.journey-tabs button{min-width:145px;flex:0 0 145px;padding:17px 12px;text-align:left;scroll-snap-align:start;font-size:13px}.journey-tabs button>span{display:block;font-size:10px;margin-bottom:5px}.journey-tabs small{font-size:9px;margin-top:6px}.room-catalog>summary>span:first-child,.news-archive>summary>span:first-child,.fishing-guide>summary>span:first-child{font-size:21px}.room-catalog summary small,.news-archive summary small,.fishing-guide summary small{font-size:10px}.filter-buttons{gap:8px}.filter-buttons button{padding:6px 12px;font-size:11px}.catalog-grid{grid-template-columns:1fr;gap:22px 15px}.room-open>span{font-size:13px;line-height:1.6}.room-open small{font-size:10px}.room-open .catalog-cta{font-size:11px}.washitsu-note{padding:20px}.washitsu-note p{font-size:14px}.rates-block{margin:0 0 58px}.subheading h3{font-size:30px}.subheading>p{font-size:12px}.data-table{font-size:13px;min-width:570px}.data-table th,.data-table td{padding:12px 13px}.data-table tbody th{min-width:160px}.data-table thead th{font-size:12px}.data-table caption{font-size:11px}.rate-pair{display:block}.rate-pair>div+div{margin-top:18px}.rate-pair strong{font-size:35px}.rate-notes{font-size:12px}.rate-notes p{font-size:12px}.rates-block>.pill{font-size:12px;gap:23px}.experience-expanded{padding-top:10px}.cruise-editorial{display:flex;flex-direction:column;gap:30px;align-items:stretch}.cruise-editorial>div:first-child{height:auto;aspect-ratio:1.4}.cruise-editorial h2{font-size:38px}.cruise-editorial p:not(.eyebrow):not(.small-note){font-size:16px}.beauty-editorial{margin-top:48px;padding-top:35px}.beauty-editorial h3{font-size:31px}.beauty-editorial .data-table{min-width:510px}.guide-grid{display:block}.guide-grid article+article{margin-top:32px}.guide-grid article:last-child{display:block}.guide-grid article:last-child h4{margin-top:18px}.guide-grid p,.island-small-grid p{font-size:15px}.island-directory{margin-top:40px;padding-top:35px}.island-directory>h3{font-size:30px}.awaloha{display:block;padding:22px}.awaloha>img{height:auto;min-height:0;aspect-ratio:1.4;margin-bottom:25px}.awaloha h4{font-size:25px}.facility-grid{display:block}.facility-grid article+article{margin-top:35px}.facility-grid h3{font-size:24px;margin-top:20px}.senior-editorial{display:flex;flex-direction:column;align-items:stretch;gap:30px;margin-top:45px}.senior-editorial h3{font-size:33px}.senior-editorial video{width:100%;aspect-ratio:16/10}.arrival-options{padding:0 6% 55px}.arrival-options>h3{font-size:29px}.transport-contact{display:block}.transport-contact>div+div{margin-top:30px}.transport-contact a{font-size:20px}.contact-grid{display:block;padding-top:0}.contact-grid>div+div{margin-top:38px}.contact-grid h3{font-size:21px}.news-contact h2{font-size:31px}.news-contact{padding-top:10px}.news-archive{margin-top:40px}.news-archive dt{font-size:13px}.news-archive dd{font-size:13px}.room-dialog{padding:50px 20px 25px}.room-dialog-copy h2{font-size:26px}.room-dialog-copy .pill{font-size:12px;padding:12px 18px}.room-dialog-copy>p{font-size:14px}.explorer-heading h2{font-size:40px}.explorer-heading .eyebrow{font-size:9px}.explorer-heading>p{font-size:14px;margin-top:23px;line-height:2.2}.explorer-heading{margin-bottom:29px}.map-toolbar{gap:10px;padding:10px}.map-toolbar>button{font-size:10px}.map-mode button{font-size:12px;padding:7px 14px}.map-frame-wrap{height:440px;min-height:320px}.map-bottom{font-size:11px;padding-bottom:5px}.map-help{font-size:10px}.map-aside{display:block;margin-top:24px}.map-spots{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid #ffffff30}.map-spots button{border-right:1px solid #ffffff30;font-size:12px;padding:12px 10px;gap:8px}.map-spots button>small{display:none}.map-spots button>span{font-size:9px}.map-spot-detail{margin-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.map-spot-detail>img{grid-column:1;grid-row:1/5;height:100%;aspect-ratio:.85}.map-spot-detail .eyebrow{grid-column:2;font-size:9px;margin:0 0 6px}.map-spot-detail h3{grid-column:2;font-size:20px;line-height:1.6}.map-spot-detail>p:not(.eyebrow){grid-column:2;font-size:13px;margin-top:10px;line-height:1.9}.map-spot-detail .line-link{grid-column:1/-1;font-size:12px;margin-top:15px}.map-spot-detail>a:last-child{grid-column:1/-1;font-size:12px;margin-top:12px}.post-office{padding-top:58px;padding-bottom:58px}.post-hero{display:flex;flex-direction:column;gap:30px;align-items:stretch}.post-hero img{height:auto;aspect-ratio:1.14}.post-hero figcaption{font-size:9px}.post-story h2{font-size:clamp(26px,7vw,35px);line-height:1.8}.post-story>p:not(.eyebrow):not(.small-note){font-size:16px;line-height:2.2;margin-top:22px}.post-story .eyebrow{font-size:10px;margin-bottom:16px}.post-detail-grid{margin-top:44px}.post-detail-grid>div:first-child{display:block}.post-detail-grid h3.serif{font-size:31px}.post-detail-grid .post-inside{height:auto;aspect-ratio:1.35;margin-top:25px}.post-detail-grid>div>p:not(.eyebrow):not(.small-note):not(.post-special){font-size:15px;line-height:2.15;margin-top:22px}.post-visit{padding:25px 22px;margin-top:30px}.post-visit>h3{font-size:27px}.visit-list>div{grid-template-columns:70px 1fr;gap:12px;font-size:13px}.visit-list dt{font-size:11px}.visit-list small{font-size:11px}.post-special{font-size:12px;padding:15px}.post-visit .line-link{font-size:12px}.letter-experience{display:block;margin-top:45px;padding-top:35px}.letter-experience h3{font-size:35px}.letter-experience>div>p:not(.eyebrow):not(.small-note){font-size:15px;margin-top:20px}.letter-experience .small-note{font-size:12px;max-width:none}.letter-pad{margin-top:27px;padding:21px 18px}.letter-prompts{gap:7px}.letter-prompts button{font-size:10px;padding:7px 9px}.letter-pad label{font-size:12px;line-height:1.8}.letter-pad textarea{font-size:16px;min-height:240px}.letter-actions .text-button{font-size:12px}.letter-actions>span{font-size:10px}.posting-instructions summary{font-size:14px;line-height:1.8}.posting-instructions address{font-size:14px;padding:18px}.source-line{font-size:10px}}
/* Season, purpose and practical planning extensions. */
.hero-hotel-name{display:block;font:500 21px/1.8 var(--sans);letter-spacing:.13em;margin-bottom:20px}.hero{height:max(820px,100svh)}.hero-copy{padding-top:195px}.hero h1{font-size:clamp(46px,5.6vw,78px)}.desktop-nav{gap:20px;font-size:13px}
.season-heading,.purpose-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.season-heading>p,.purpose-heading>p{font-size:15px;line-height:2.25}.season-tabs{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.season-tabs button{text-align:left;display:grid;grid-template-columns:1fr auto;gap:8px 16px;padding:22px;font:400 34px/1.5 var(--serif);transition:background .25s}.season-tabs button+button{border-left:1px solid var(--line)}.season-tabs small{font:12px/1.5 var(--sans);grid-column:1/-1;letter-spacing:.15em}.season-tabs span{font:12px/1.7 var(--sans);align-self:center}.season-tabs [aria-selected="true"]{background:var(--sea);color:#fff}.season-tabs button:hover{background:#dfe7dc;color:var(--sea)}.season-content{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}.season-image-wrap{position:relative;min-height:460px;height:100%;overflow:hidden}.season-image-wrap img{height:100%;min-height:460px;object-fit:cover}.season-image-wrap>span{position:absolute;bottom:17px;left:25px;color:#fff;font-size:clamp(34px,4.8vw,65px);font-weight:400;letter-spacing:-.04em;text-shadow:0 2px 20px #123d4480}.season-story{padding:30px 0}.season-story h3{font-size:35px}.season-story>p:not(.eyebrow){margin-top:22px}.season-story ol{padding-left:22px;margin:22px 0;font-size:14px}.seasons>.small-note{margin-top:20px}
.purpose-section{background:#e5ebe6}.purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:6%;align-items:start}.purpose-pet{background:var(--paper)}.purpose-pet>img{height:320px;object-position:center 50%}.purpose-pet>div{padding:32px 35px}.purpose-pet h3{font-size:36px;line-height:1.6}.purpose-highlight{display:inline-block;background:var(--lime);padding:8px 14px;font-size:14px;margin-top:22px}.purpose-pet p:not(.eyebrow):not(.purpose-highlight){margin-top:18px;font-size:14px}.purpose-list details{border-bottom:1px solid #a8bcb1}.purpose-list summary{padding:22px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none}.purpose-list summary small{font-size:11px;letter-spacing:.1em;display:block;margin-bottom:8px}.purpose-list summary b{font-size:21px;font-weight:500;line-height:1.8}.purpose-list summary>span:last-child{font-size:26px}.purpose-list .detail-body{padding:0 0 28px;font-size:14px}.purpose-list .detail-body p+p{margin-top:15px}.purpose-list a{display:inline-block;border-bottom:1px solid #91a49e;margin-top:18px}.mitoyo-route{margin-top:50px;padding-top:30px;border-top:1px solid #a8bcb1;display:grid;grid-template-columns:1fr 1.2fr;gap:14px 8%}.mitoyo-route .eyebrow{grid-column:1;margin:0}.mitoyo-route h3{grid-column:1;font:400 26px/1.7 var(--serif)}.mitoyo-route>p:not(.eyebrow){grid-column:2;grid-row:1/3;font-size:14px}.mitoyo-route>a{grid-column:2}
.cabin-calculator{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;padding:44px;background:#e7ede5;margin:40px 0}.cabin-calculator h3{font-size:33px;line-height:1.65}.cabin-calculator>div>p:not(.eyebrow){margin-top:25px;font-size:14px}.cabin-calculator .small-note{font-size:12px!important}.calculator-controls{display:flex;gap:20px}.calculator-controls label{width:50%;font-size:13px}.calculator-controls select,.ferry-selector select{display:block;border:1px solid #a9bbb0;background:var(--paper);color:var(--ink);font:inherit;line-height:1.6;border-radius:0;padding:12px 35px 12px 12px;margin-top:8px;width:100%}select:focus-visible,textarea:focus-visible{outline:3px solid #819b2c;outline-offset:3px}.cost-lines{margin:25px 0 0}.cost-lines>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #becbbb;padding:11px 0;font-size:14px}.cost-lines dd{margin:0;white-space:nowrap}.cost-lines dt span{font-size:11px;display:block;color:#5a705e}.cost-result{padding-top:20px;display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:5px}.cost-result>span{font-size:12px}.cost-result output{font-size:43px;line-height:1.4;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.cost-result output small{font-size:17px;margin-left:5px}.cost-result p{grid-column:1/-1;text-align:right;font-size:13px;margin:0}
.ferry-planner{max-width:1268px;width:88%;margin:0 auto 60px;padding:40px;background:#e7eeeb}.ferry-planner-heading{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:30px}.ferry-planner-heading h3{font-size:34px}.ferry-planner-heading>p{font-size:14px}.ferry-planner-heading small{font-size:11px}.ferry-selector{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;padding:25px;background:var(--paper)}.ferry-selector label{font-size:13px}.ferry-answer>b{font-size:24px;font-weight:500;letter-spacing:-.025em}.ferry-answer p{font-size:13px;margin-top:9px}.ferry-planner>details{margin-top:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ferry-planner summary{display:flex;justify-content:space-between;padding:18px 0;gap:25px;cursor:pointer;font-size:14px;list-style:none}.ferry-planner .detail-body{font-size:14px;padding:5px 0 20px}.timetable-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px}.timetable-columns h4{font-size:14px;font-weight:500}.timetable-columns table{border-collapse:collapse;width:100%;text-align:center;font-size:17px;font-variant-numeric:tabular-nums}.timetable-columns td,.timetable-columns th{padding:10px 15px;border-bottom:1px solid #ced8d4;font-weight:400}.ferry-planner>.small-note{margin-top:20px;font-size:12px}.ferry-links{display:flex;justify-content:space-between;gap:20px;font-size:13px;margin-top:17px}.ferry-planner a{border-bottom:1px solid #a0b5a6}.ferry-planner .detail-body p{margin-top:20px}
.about-hotel{padding-top:45px}.about-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:8%}.about-grid h2{font-size:40px}.about-grid>div>p:not(.eyebrow){margin-top:28px;font-size:15px}.about-grid .small-note{font-size:13px!important}.hotel-facts{margin:0}.hotel-facts>div{display:grid;grid-template-columns:120px 1fr;gap:20px;border-bottom:1px solid var(--line);padding:16px 0}.hotel-facts dt{font-size:12px;color:var(--muted)}.hotel-facts dd{margin:0;font-size:15px}.hotel-facts small{font-size:12px;line-height:1.75;display:inline-block}.english-guide{margin-top:45px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.english-guide summary{display:flex;align-items:center;justify-content:space-between;padding:25px 0;cursor:pointer;list-style:none}.english-guide small{font-size:12px;display:block}.english-guide b{font-size:24px;font-weight:400}.english-guide .detail-body{max-width:950px;font-size:15px;padding-bottom:30px}.english-guide a{text-decoration:underline;text-underline-offset:4px}
.intent-page .site-header{position:relative;background:var(--sea)}.intent-main{max-width:1200px;margin:auto;padding:60px 6% 90px}.intent-crumbs{font-size:12px;display:flex;gap:14px;margin-bottom:40px;color:var(--muted)}.intent-hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:7%;margin-bottom:60px}.intent-hero h1{font:400 clamp(34px,4.3vw,56px)/1.7 var(--serif)}.intent-hero img{height:440px}.intent-hero p:not(.eyebrow){font-size:15px;margin-top:20px}.intent-content{max-width:840px;margin:0 auto}.intent-content>section{margin:40px 0}.intent-content h2{font:400 27px/1.7 var(--serif);margin-bottom:18px}.intent-content p{font-size:15px}.intent-content li{font-size:15px;margin:10px 0}.intent-content dl{border-top:1px solid var(--line)}.intent-content dt{margin-top:18px;font-weight:600}.intent-content dd{margin:7px 0 18px}.intent-footer{padding:40px 6%;background:var(--sea);color:#fff;display:flex;gap:30px;flex-wrap:wrap;font-size:13px}.intent-source{font-size:12px!important;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.booking-benefit{font-size:11px;line-height:1.8;color:var(--muted);margin:12px 0 0}.final-cta .booking-benefit{color:#e4efdf}
@media(min-width:768px) and (max-width:1190px){.desktop-nav{display:none}.menu-toggle{display:block}.site-header>.header-book{margin-left:auto}.season-tabs button{padding:18px 15px}.season-tabs span{grid-column:1/-1}.season-story h3{font-size:29px}.cabin-calculator{padding:30px;gap:5%}.about-grid h2{font-size:34px}.ferry-selector{grid-template-columns:1fr 1fr}.ferry-answer>b{font-size:20px}}
@media(max-width:767px){.hero{height:max(800px,100svh)}.hero-copy{padding-top:185px}.hero h1{font-size:clamp(40px,9.5vw,54px)}.hero-hotel-name{font-size:16px;margin-bottom:13px}.hero-copy .eyebrow{font-size:11px}.hero-description{font-size:13px}.season-heading,.purpose-heading{display:block;margin-bottom:28px}.season-heading>p,.purpose-heading>p{margin-top:22px;font-size:14px}.season-tabs{margin-bottom:25px}.season-tabs button{padding:14px 10px;font-size:27px;display:block}.season-tabs small{display:block;font-size:9px;letter-spacing:.03em;margin-bottom:5px}.season-tabs span{font-size:9px;display:block;margin-top:7px;line-height:1.7}.season-content{display:block}.season-image-wrap{height:300px;min-height:0}.season-image-wrap img{min-height:0}.season-story{padding:28px 0 0}.season-story h3{font-size:28px}.season-story>p:not(.eyebrow){font-size:14px}.season-story .eyebrow{font-size:11px;margin-bottom:15px}.season-story ol{font-size:13px}.seasons>.small-note{font-size:11px}.purpose-grid{display:block}.purpose-pet>img{height:280px}.purpose-pet>div{padding:25px}.purpose-pet h3{font-size:30px}.purpose-list{margin-top:26px}.purpose-list summary b{font-size:18px}.purpose-list summary small{font-size:10px}.mitoyo-route{display:block;margin-top:35px}.mitoyo-route h3{font-size:25px;margin-top:12px}.mitoyo-route>p:not(.eyebrow){margin-top:20px}.mitoyo-route .eyebrow{font-size:10px}.cabin-calculator{display:block;padding:26px 22px}.cabin-calculator h3{font-size:30px}.cabin-calculator>div+div{margin-top:28px}.cabin-calculator>div>p:not(.eyebrow){margin-top:18px}.calculator-controls{gap:14px}.calculator-controls label{font-size:12px}.calculator-controls select{font-size:14px;padding:10px}.cost-result output{font-size:39px}.ferry-planner{padding:25px 22px;margin-bottom:40px}.ferry-planner-heading{display:block}.ferry-planner-heading h3{font-size:28px}.ferry-planner-heading .eyebrow{font-size:10px;margin-bottom:15px}.ferry-planner-heading>p{margin-top:25px}.ferry-selector{display:block;padding:20px 16px}.ferry-selector select{font-size:12px;padding:12px 10px}.ferry-answer{margin-top:22px}.ferry-answer>b{font-size:21px}.ferry-answer p{font-size:13px}.ferry-planner summary{font-size:13px}.timetable-columns{gap:15px}.timetable-columns h4{font-size:12px;line-height:1.8}.timetable-columns td,.timetable-columns th{padding:9px 3px;font-size:14px}.ferry-links{display:block;font-size:12px}.ferry-links a{display:table;margin-top:13px}.ferry-planner>.small-note{font-size:11px}.ferry-planner .detail-body{font-size:13px}.about-grid{display:block}.about-grid h2{font-size:31px}.hotel-facts{margin-top:30px}.hotel-facts>div{grid-template-columns:95px 1fr;gap:15px}.hotel-facts dd{font-size:14px}.english-guide b{font-size:20px}.english-guide small{font-size:10px}.english-guide .detail-body{font-size:14px}.intent-hero{display:flex;flex-direction:column-reverse;gap:30px;align-items:stretch}.intent-hero img{height:280px}.intent-hero h1{font-size:32px}.intent-main{padding-top:30px}.intent-crumbs{margin-bottom:25px}.intent-content h2{font-size:24px}.intent-page .header-book{font-size:10px;padding:8px 12px}.intent-page .brand{width:150px}.intent-page .site-header{padding:18px 6%;gap:20px}.intent-page .brand-name{font-size:34px}.intent-page .brand-sub b{display:none}}

/* ---- 客室紹介（1 室ずつの一覧）と、常に出る空室検索（D-182。build.py が足す。原本 src/site/ は触らない） ---- */
.room-list{display:flex;flex-direction:column;gap:68px;margin:32px 0 0}
.room-line{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center}
.room-line__media{position:relative}
.room-line__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}
.room-line__track::-webkit-scrollbar{display:none}
.room-line__track img{flex:0 0 100%;scroll-snap-align:center;height:auto;aspect-ratio:1.5}
.room-line__dots{display:flex;gap:9px;justify-content:center;margin-top:14px}
.room-line__dots button{width:7px;height:7px;padding:0;border-radius:50%;background:var(--line);transition:background .25s,transform .25s}
.room-line__dots button[aria-current="true"]{background:var(--ink);transform:scale(1.4)}
.room-line__name{font-size:26px;line-height:1.6}
.room-line__facts{list-style:none;margin:17px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:9px 25px;font-size:13px;color:var(--muted)}
.room-line__facts li{display:flex;align-items:center;gap:8px}
.room-line__facts svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.room-line__lead{margin-top:17px;font-size:15px;line-height:1.95}
.room-line__detail{margin-top:20px;border-top:1px solid var(--line)}
.room-line__detail>summary{padding:15px 0;font-size:14px}
.room-line__detail dl{margin:0;padding:0 0 10px}
.room-line__detail dl>div{display:grid;grid-template-columns:110px 1fr;gap:6px 18px;padding:11px 0;border-top:1px dashed var(--line)}
.room-line__detail dt{font-size:12px;letter-spacing:.06em;color:var(--muted)}
.room-line__detail dd{margin:0;font-size:13px;line-height:1.9}
.room-list__footer{display:flex;justify-content:center;margin-top:50px}
.sub-nav a.sub-nav-book{margin:7px 0 7px auto;position:sticky;right:0;padding:9px 18px;border-bottom:0;border-radius:40px;background:var(--lime);color:var(--sea);font-weight:500;font-size:13px}
.sub-nav a.sub-nav-book:hover{background:var(--ink);color:#fff}
@media(max-width:860px){
.room-line{grid-template-columns:1fr;gap:20px}
.room-list{gap:48px}
.room-line__name{font-size:21px}
.room-line__lead{font-size:14px;margin-top:14px}
.room-line__detail dl>div{grid-template-columns:1fr}
}
@media(max-width:640px){
.sub-nav a.sub-nav-book{display:none}
body{padding-bottom:calc(59px + env(safe-area-inset-bottom,0px))}
}
