/* Shared editorial rhythm; numbered inputs and visual order stay identical. */
.revision-section{padding:clamp(64px,7.5vw,132px) max(5vw,calc((100vw - 1440px)/2));scroll-margin-top:110px}
.revision-section+.revision-section{border-top:1px solid var(--line,#d2dedc)}
.revision-section-heading{max-width:1050px;margin:0 0 clamp(32px,4vw,64px)}
.revision-section-heading h2{font:500 clamp(27px,3.2vw,48px)/1.65 var(--mincho,serif);margin:20px 0 24px;overflow-wrap:anywhere}
.revision-section p,.revision-section dd{font-size:clamp(14px,1vw,16px);line-height:2.1;overflow-wrap:anywhere}
.revision-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,4vw,64px)}
.revision-course{min-width:0;padding-bottom:28px;border-bottom:1px solid var(--line,#d2dedc)}
.revision-course header,.revision-three-grid article header{display:flex;align-items:baseline;gap:20px;margin-bottom:20px}
.revision-course small,.revision-three-grid article header small,.revision-room-heading small,.revision-criteria-grid small{color:#b75c3b;font:400 22px/1.5 Georgia,serif;flex:none}
.revision-course h3{font:500 clamp(21px,2vw,30px)/1.6 var(--mincho,serif);margin:0;overflow-wrap:anywhere}
.revision-photo{margin:0;min-width:0;width:100%;aspect-ratio:3/2;overflow:hidden;background:#edf4f2;border-radius:0}
.revision-photo img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0}
.revision-photo-pending{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:22px;text-align:center;border:1px solid #cbdad6;color:#5e777c;background:linear-gradient(145deg,#f3f8f6,#e3efeb)}
.revision-photo-pending span{font:500 clamp(16px,1.4vw,22px)/1.7 var(--mincho,serif)}
.revision-photo-pending small{font:400 12px/1.5 var(--gothic,sans-serif);letter-spacing:.12em;color:#6c8285}
.revision-course .revision-price{font:500 clamp(20px,1.7vw,27px)/1.7 var(--mincho,serif);margin:20px 0 0}
.revision-notes{margin:24px 0 0;padding:0;border:0;font-size:14px;line-height:2}
.revision-notes p{margin:0 0 8px}
.revision-usage{background:#f1f7f5}
.revision-usage-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(28px,5vw,84px);align-items:start}
.revision-breakfast .revision-photo{aspect-ratio:auto;background:transparent;overflow:visible}
.revision-breakfast .revision-photo img{width:auto;max-width:100%;height:auto;max-height:clamp(320px,48vw,560px);object-fit:contain}
.revision-breakfast .revision-photo-pending{aspect-ratio:3/2;min-height:0;height:auto}
@media(min-width:821px){.subpage--dining .subpage-local-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.subpage--dining .subpage-local-nav a{padding-inline:clamp(14px,2.1vw,34px);gap:clamp(10px,1.2vw,18px)}}
.revision-information{margin:0;border-top:1px solid #cbd9d5}
.revision-information>div{display:grid;grid-template-columns:minmax(120px,.42fr) minmax(0,1fr);gap:18px;padding:19px 0;border-bottom:1px solid #cbd9d5}
.revision-information dt{font-size:14px;font-weight:600;line-height:2;overflow-wrap:anywhere}
.revision-information dd{margin:0}
.revision-three-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,46px)}
.revision-three-grid article{min-width:0}
.revision-three-grid h3,.revision-three-grid h4{font:500 clamp(19px,1.8vw,26px)/1.7 var(--mincho,serif);margin:0;overflow-wrap:anywhere}
.revision-three-grid .revision-photo{margin-bottom:24px}
.revision-beef>div{margin-top:clamp(54px,6vw,100px)}
.revision-beef h3{font:500 clamp(23px,2.3vw,34px)/1.7 var(--mincho,serif);margin:18px 0 24px}
.revision-beef h4{font:500 20px/1.7 var(--mincho,serif);margin:16px 0}
.revision-criteria-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:34px}
.revision-criteria-grid article{border-top:1px solid #c9d7d3;padding-top:24px}
.revision-beef-island{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center}
.revision-photo-pair,.revision-map-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:34px}
.revision-photo-pair .photo-tile{margin:0;aspect-ratio:3/2}
.revision-map-pair img{object-fit:contain}
.revision-room{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px 6%;margin-top:64px;padding-bottom:64px;border-bottom:1px solid #cedbd7}
.revision-room-heading{grid-column:1/-1;display:flex;gap:24px;align-items:baseline}
.revision-room-heading h3{font:500 clamp(25px,2.6vw,38px)/1.6 var(--mincho,serif);margin:0}
.revision-room-body{min-width:0;align-self:center}
.revision-room-body h2,.revision-room-body h3{font:500 23px/1.7 var(--mincho,serif);margin-top:0}
.revision-room-body ul{padding-left:1.3em;line-height:2.1}
.revision-room-body .ikiboku-editorial-review{display:none}
.revision-coworking{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:6%;margin-top:64px}
.revision-coworking h3{font:500 clamp(23px,2.5vw,34px)/1.7 var(--mincho,serif)}
.subpage--relax .subpage-hero-media{aspect-ratio:16/10!important;min-height:0!important;height:auto!important}
.eat-detail .detail-main{border-radius:50% 50% 0 0 / 32% 32% 0 0;overflow:hidden}
.a-home-about .home-about-heading{display:block;max-width:900px;margin:0 auto 48px;text-align:center}
.a-home-about .home-about-copy{margin-top:30px}
.a-home-about .home-about-copy .text-link{margin-top:24px}
.home-about-gallery .album-mosaic{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:row;gap:clamp(10px,1.4vw,22px)}
.home-about-gallery .album-mosaic>*,.home-about-gallery .album-mosaic>*:nth-child(n){grid-column:auto!important;grid-row:auto!important;aspect-ratio:4/3;height:auto;transform:none;min-height:0}
.photo-tile img{display:block;width:100%;height:100%;object-fit:cover}
.access-travel-times{margin:32px 0 0;padding:24px 0 0;border-top:1px solid #cbd9d5;list-style:none;line-height:2.2;font-size:15px}
.news-page--unified{padding:clamp(56px,6vw,110px) max(5vw,calc((100vw - 1180px)/2))}
.news-simple-header{margin:0 0 48px}
.news-simple-header h1{font:500 clamp(32px,4vw,58px)/1.5 var(--mincho,serif);margin:22px 0}
.news-simple-list{list-style:none;padding:0;margin:0;border-top:1px solid #cddbd6}
.news-simple-list li{border-bottom:1px solid #cddbd6}
.news-simple-list a{display:grid;grid-template-columns:110px minmax(0,1fr) 28px;gap:28px;padding:30px 0;align-items:start;text-decoration:none}
.news-simple-list time{font-size:13px;letter-spacing:.06em;color:#698089;line-height:2}
.news-simple-list h2{font:500 clamp(17px,1.5vw,22px)/1.8 var(--mincho,serif);margin:0;overflow-wrap:anywhere}
.news-simple-list a:hover h2{text-decoration:underline;text-underline-offset:6px}
.news-page--unified .news-instagram{margin:64px 0 0;padding:32px 0}
.final-media .revision-photo{height:100%;aspect-ratio:auto}
@media(max-width:650px){.subpage--stay .subpage-hero-copy h1{font-size:clamp(28px,8.1vw,36px);line-height:1.7;text-wrap:normal}}
@media(max-width:1000px){.revision-three-grid{grid-template-columns:1fr}.revision-three-grid article{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:32px;align-items:start}.revision-three-grid article header{grid-column:1/-1}.revision-three-grid article p{margin-top:0}.revision-criteria-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-about-gallery .album-mosaic{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.revision-section{padding:54px 6vw}.revision-course-grid,.revision-usage-layout,.revision-beef-island,.revision-room,.revision-coworking,.revision-map-pair{grid-template-columns:minmax(0,1fr)}.revision-room{margin-top:38px;padding-bottom:38px;gap:22px}.revision-three-grid article{display:block}.revision-three-grid article+.revision-three-grid article{margin-top:28px}.revision-course header{gap:16px}.revision-information>div{grid-template-columns:1fr;gap:4px;padding:16px 0}.revision-course-grid{gap:40px}.revision-photo-pair{gap:12px}.home-about-gallery .album-mosaic{grid-template-columns:repeat(2,minmax(0,1fr))}.news-simple-list a{grid-template-columns:minmax(0,1fr) 24px;gap:10px 14px;padding:23px 0}.news-simple-list time{grid-column:1/-1}.revision-coworking{gap:24px;margin-top:38px}.news-page--unified .news-instagram{display:block}.news-page--unified .news-instagram>a{margin-top:22px}}

/* 0.20.3: consistent alignment, calm controls and readable announcements. */
.a-home-about .home-about-copy>p{margin-inline:auto;text-align:left}
.revision-information .revision-status{display:block}
.revision-information .revision-inline-note{display:block;margin-top:5px;font-size:13px;line-height:1.9}
.shop-channels>header{grid-template-columns:minmax(125px,.45fr) minmax(0,1.2fr) minmax(0,.85fr);gap:clamp(28px,3vw,48px)}
.shop-channels>header h2{font-size:clamp(28px,3.2vw,48px);text-wrap:balance;min-width:0;overflow-wrap:normal}
.shop-heading-word{display:inline-block;white-space:nowrap}
.shop-channel.is-preview{opacity:1;cursor:default}
.shop-channel.is-preview:hover{background:transparent}
.news-simple-list a{padding-inline:clamp(12px,1.7vw,24px);align-items:center}
.news-simple-list a>.arrow{margin-left:0;justify-self:end;align-self:center;max-width:100%}
.news-page--unified .news-instagram{padding:clamp(28px,3.3vw,48px);gap:clamp(20px,2.2vw,32px)}
.news-page--unified .news-instagram a{max-width:100%;justify-content:space-between;gap:18px}
.news-page--unified .news-instagram a .arrow{margin-left:0;flex-shrink:0}
:where(body>.page a[href],body>.page button:not(:disabled),body>.page summary){transition:opacity 180ms ease,filter 180ms ease,background-color 180ms ease,border-color 180ms ease,color 180ms ease}
body>.page :is(a[href],button:not(:disabled),summary):focus-visible{outline:2px solid var(--orange,#c85a31);outline-offset:4px}
@media(hover:hover) and (pointer:fine){
 body>.page :is(a[href]:not([aria-disabled="true"]),button:not(:disabled):not([aria-disabled="true"]),summary):hover{opacity:.9;filter:brightness(.95)}
 body>.page :is(.booking-cta,.button.orange,.reserve):not(:disabled):not([aria-disabled="true"]):hover{background:var(--rust,#a54833);color:#fff;opacity:1;filter:none}
 body>.page :is(.booking-cta,.button.orange,.reserve):not(:disabled):not([aria-disabled="true"]):hover .arrow{translate:4px 0}
 .news-simple-list a:hover{background:#f1f6f4;opacity:1}
}
@media(max-width:1000px){.shop-channels>header{grid-template-columns:1fr;gap:22px}}
@media(max-width:650px){
 .news-page--unified .news-instagram{padding:28px 22px;grid-template-columns:30px minmax(0,1fr);gap:20px}
 .news-page--unified .news-instagram a{grid-column:1/-1;justify-self:stretch}
 .news-simple-list a{padding-inline:12px}
}
@media(prefers-reduced-motion:reduce){
 body>.page :is(a[href],button,summary){transition:none!important}
 body>.page :is(.booking-cta,.button.orange,.reserve):hover .arrow{translate:none!important}
}


/* Optional display settings. The saved defaults preserve the current design. */
.ikiboku-photo-shape--square :is(.a-experience-grid .experience,.detail-main,.a-day-visual .day-main,.catalog-card .catalog-card-media,.subpage-feature-media,.subpage-gallery-grid>div,.beef-island-photo,.beef-farm-photos .photo-tile,.approved-story-media,.bath-grid .photo-tile,.hamburger-focus-photos .photo-tile,.contact-hero-media,.news-hero-media,.news-invitation figure,.journal-card figure,.story-related-card figure,.single-news .entry-content .ikiboku-legacy-vision-gallery figure,.journey-scene,.journey-preview){border-radius:0!important}
.news-page--unified .news-simple-list--thumbnails a{grid-template-columns:104px minmax(0,1fr) 30px;grid-template-rows:auto auto;column-gap:28px;row-gap:8px;min-height:132px;padding-top:24px;padding-bottom:24px;align-items:center}
.news-list-thumbnail{grid-column:1;grid-row:1/3;display:grid;place-items:center;align-self:center;margin:0;width:104px;aspect-ratio:4/3;overflow:hidden;background:#edf4f2}
.news-list-thumbnail img{display:block;width:100%;height:100%;object-fit:cover}
.news-list-no-image{font-size:10px;letter-spacing:.14em;color:#567579}
.news-page--unified .news-simple-list--thumbnails time{grid-column:2;grid-row:1;align-self:end}
.news-page--unified .news-simple-list--thumbnails h2{grid-column:2;grid-row:2;align-self:start}
.news-page--unified .news-simple-list--thumbnails .arrow{grid-column:3;grid-row:1/3;justify-self:center;align-self:center}
@media(max-width:650px){.news-page--unified .news-simple-list--thumbnails a{grid-template-columns:72px minmax(0,1fr) 20px;gap:8px 14px;padding:20px 14px;min-height:112px}.news-list-thumbnail{width:72px}.news-page--unified .news-simple-list--thumbnails time{font-size:12px}.news-page--unified .news-simple-list--thumbnails h2{font-size:clamp(17px,4.4vw,21px);line-height:1.7}.news-list-no-image{font-size:8px}}
@media(max-width:360px){.news-page--unified .news-simple-list--thumbnails a{grid-template-columns:64px minmax(0,1fr) 18px;column-gap:10px;padding-left:12px;padding-right:12px}.news-list-thumbnail{width:64px}}


/* October 27: reset figure defaults so each photo pair meets the main frame edges. */
.photo-tile{margin:0;min-width:0}
.detail-pair{min-width:0}.detail-pair>.photo-tile{max-width:100%}
.site-footer .footer-navigation{grid-column:2/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 28px;align-self:center}
.site-footer .footer-navigation a{margin:0;padding:8px 0;overflow-wrap:anywhere}
.revision-courses--text .revision-course header{margin-bottom:22px}
.contact-options small{max-width:100%;overflow-wrap:anywhere}
@media(max-width:900px){.site-footer .footer-navigation{grid-column:1/-1}}
@media(max-width:480px){.site-footer .footer-navigation{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px}}

/* October 27: alternate the STAY image on desktop; keep mobile reading order. */
@media (min-width:821px){
 .stay-detail{grid-template-columns:1.18fr .82fr}
 .stay-detail .detail-visual{grid-column:1;grid-row:1}
 .stay-detail .detail-copy{grid-column:2;grid-row:1}
}


/* 0.23.0: preserve complete diagrams and a comfortable mobile type scale. */
.revision-map-pair{align-items:start}
.revision-map-pair .revision-photo{aspect-ratio:auto}
.revision-map-pair .revision-photo img{width:100%;height:auto;object-fit:contain}
.revision-map-pair .revision-photo-pending{height:auto;aspect-ratio:3/2}
.revision-beef-farm>p{max-width:44em}
@media(max-width:650px){
 body>.page :is(.a-hero,.subpage-hero-copy,.contact-hero-copy,.news-hero,.single-news-hero-copy,.catalog-single-copy) h1,
 body>.page .catalog-single-hero .catalog-single-copy h1,
 body>.page .subpage-standard h1{font-size:clamp(26px,7.6vw,32px);line-height:1.6;letter-spacing:.035em;text-wrap:balance}
 body>.page :is(.a-intro,.a-shop-copy,.detail-copy,.film-copy,.people-copy,.album-heading,.home-about-copy,.approved-story-copy,.local-attractions>header,.history-journey>header,.company-profile>header,.bath-collection>header,.contact-options>header,.location-copy,.access-address,.subpage-feature-copy,.hamburger-focus-copy,.final-cta) h2,
 body>.page .contact-form-section h2{font-size:clamp(25px,7.1vw,30px);line-height:1.65;letter-spacing:.035em}
 body>.page .final-cta h2{font-size:clamp(26px,7.4vw,30px)}
 body>.page .contact-options>header h2{font-size:clamp(22px,6.3vw,27px)}
 body>.page #film-title{font-size:clamp(22px,6.3vw,27px)}
 body>.page .history-journey-grid h3{font-size:clamp(20px,5.4vw,23px)}
 body>.page .subpage-next-title{font-size:clamp(25px,7.1vw,30px);line-height:1.65}
 body>.page .subpage-standard h1{font-size:clamp(23px,6.4vw,28px);line-break:strict;word-break:normal;overflow-wrap:normal}
 body>.page .subpage-standard .entry-content h2{font-size:clamp(21px,5.8vw,25px);line-height:1.7;text-wrap:balance;line-break:strict;overflow-wrap:normal}
}

/* 0.23.2: a readable contact link at every viewport; preserve editable copy. */
.contact-strip-link-label{min-width:0;overflow-wrap:anywhere}
@media(max-width:1100px){body>.page .contact-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}body>.page .contact-strip>div:first-child{grid-column:1/-1}}
@media(max-width:650px){body>.page .contact-strip{grid-template-columns:minmax(0,1fr);gap:24px}}

/* 0.23.3: one quiet style for secondary action links. */
:root{--ikiboku-action-link-size:14px;--ikiboku-action-link-weight:500;--ikiboku-action-link-gap:16px}
body>.page main :is(a.text-link,button.text-link,.contact-strip-link>a,.news-instagram>a,.story-links>a,a.story-link,button.story-link,.beef-farm-links>a){display:inline-flex;align-items:center;gap:var(--ikiboku-action-link-gap);max-width:100%;min-height:44px;box-sizing:border-box;padding-block:8px;font-family:var(--gothic,sans-serif);font-size:var(--ikiboku-action-link-size);font-weight:var(--ikiboku-action-link-weight);line-height:1.8;letter-spacing:.03em;white-space:normal;overflow-wrap:anywhere;text-decoration:none;border-bottom:1px solid #aec3bd;border-bottom-color:color-mix(in srgb,currentColor 32%,transparent)}
body>.page main :is(a.text-link,button.text-link,.contact-strip-link>a,.news-instagram>a,.story-links>a,a.story-link,button.story-link,.beef-farm-links>a) .arrow{width:24px;height:12px;flex:0 0 24px;margin-left:0}
@media(hover:hover) and (pointer:fine){body>.page main :is(a.text-link,button.text-link,.contact-strip-link>a,.news-instagram>a,.story-links>a,a.story-link,button.story-link,.beef-farm-links>a):hover{opacity:.9;filter:none;border-bottom-color:currentColor}}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){body:not(.ikiboku-motion--off)>.page main :is(a.text-link,button.text-link,.contact-strip-link>a,.news-instagram>a,.story-links>a,a.story-link,button.story-link,.beef-farm-links>a) .arrow{transition:translate 180ms ease}body:not(.ikiboku-motion--off)>.page main :is(a.text-link,button.text-link,.contact-strip-link>a,.news-instagram>a,.story-links>a,a.story-link,button.story-link,.beef-farm-links>a):hover .arrow{translate:4px 0}}
@media(prefers-reduced-motion:reduce){body>.page main :is(a.text-link,button.text-link,.contact-strip-link>a,.news-instagram>a,.story-links>a,a.story-link,button.story-link,.beef-farm-links>a) .arrow{transition:none!important;translate:none!important}}

/* 0.23.4: hide TOP video overlay controls; retain one-time playback. */
body>.page .a-hero .video-toggle{display:none!important}
