/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(/fonts/dm-sans-latin.woff2)format("woff2")}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/fonts/newsreader-latin.woff2)format("woff2")}:root{--main:#213246;--sub:#f2f3f2;--surface-blue:#edf2f5;--accent:#b8735e;--accent-ink:#975540;--accent-on-dark:#d9a08a;--concern-surface:var(--main)}@supports (color:color-mix(in lab, red, red)){:root{--concern-surface:color-mix(in srgb, var(--main) 9%, var(--sub))}}:root{--surface:var(--main)}@supports (color:color-mix(in lab, red, red)){:root{--surface:color-mix(in srgb, var(--main) 5%, var(--sub))}}:root{--surface-accent:var(--accent)}@supports (color:color-mix(in lab, red, red)){:root{--surface-accent:color-mix(in srgb, var(--accent) 12%, var(--sub))}}:root{--muted:var(--main)}@supports (color:color-mix(in lab, red, red)){:root{--muted:color-mix(in srgb, var(--main) 76%, var(--sub))}}:root{--line:var(--main)}@supports (color:color-mix(in lab, red, red)){:root{--line:color-mix(in srgb, var(--main) 20%, var(--sub))}}:root{--gutter:20px;--section-space:64px;--shape-large:28px;--shape-small:16px;--motion:.24s cubic-bezier(.2,0,0,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{--font-body:"DM Sans", Arial, sans-serif;--font-display:"Newsreader", Georgia, serif;padding-bottom:calc(88px + env(safe-area-inset-bottom));background:var(--sub);color:var(--main);font:400 1rem/1.6 var(--font-body);margin:0}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{object-fit:cover;width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{text-wrap:balance}.about-copy h2,.reviews-title h2{text-wrap:wrap}h2{font:400 2rem/1.25 var(--font-display);letter-spacing:-.025em;margin-bottom:24px}h3{font:500 1.375rem/1.3 var(--font-display)}em{font-weight:inherit}.hero h1 em,.reviews-title h2 em,.about-copy h2 em{color:var(--accent-ink);font-style:italic}.hero h1 em,.reviews-title h2 em{color:var(--accent-on-dark)}a,button,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}section[id]{scroll-margin-top:24px}.eyebrow{font:600 .75rem/1.6 var(--font-body);letter-spacing:.12em;margin:0 0 16px}.site-header{min-height:88px;padding:20px var(--gutter);justify-content:space-between;align-items:center;gap:12px;display:flex}.brand{flex-direction:column;flex-shrink:1;gap:8px;min-width:0;display:inline-flex}.brand-name{font:500 2rem/1 var(--font-body);letter-spacing:-.06em}.brand-name>span{color:var(--accent)}.brand small{letter-spacing:.015em;font-size:.75rem;line-height:1.3}nav{align-items:center;gap:24px;display:flex}nav a:not(.nav-book){display:none}.button,.nav-book{min-height:52px;font:600 .875rem/1.5 var(--font-body);letter-spacing:.01em;text-align:center;transition:background var(--motion), box-shadow var(--motion), transform var(--motion);border:1px solid #0000;border-radius:100px;justify-content:center;align-items:center;padding:14px 32px;display:inline-flex;position:relative}.button{width:fit-content;min-width:136px}.button-dark,.nav-book{background:var(--main);color:var(--sub)}.button-light{background:var(--sub);color:var(--main)}.button-outline{border-color:var(--main)}.button:active,.nav-book:active{transform:scale(.97)}.text-link,.final-link{align-items:center;gap:8px;min-height:48px;font-size:.875rem;display:inline-flex}.hero{margin:0 var(--gutter);gap:12px;display:grid}.hero-content{border-radius:var(--shape-large);background:var(--main);color:var(--sub);padding:32px 24px}.hero h1{font:400 2.25rem/1.18 var(--font-display);letter-spacing:-.025em;margin:0}.hero h1 em{display:block}.hero-copy{color:var(--sub);margin:24px 0}@supports (color:color-mix(in lab, red, red)){.hero-copy{color:color-mix(in srgb,var(--sub) 85%,var(--main))}}.hero-copy{line-height:1.6}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px 24px;display:flex}.hero-visual{border-radius:var(--shape-large);grid-row:1;min-height:300px;position:relative;overflow:hidden}.hero-visual>img{object-position:55% 18%;height:100%;position:absolute;inset:0}.hero-host{background:var(--sub);border-radius:100px;align-items:center;gap:12px;width:fit-content;padding:12px 20px 12px 12px;display:flex;position:absolute;bottom:16px;left:16px;right:16px;box-shadow:0 4px 16px #21324620}.hero-host img{object-position:50% 25%;border-radius:50%;width:48px;height:48px}.hero-host strong,.hero-host span{display:block}.hero-host strong{font-size:.875rem}.hero-host span{color:var(--muted);font-size:.75rem}.hero-facts{flex-wrap:wrap;gap:8px;margin:24px 0 0;padding:0;list-style:none;display:flex}.hero-facts li{border:1px solid #f8f3e94d;border-radius:8px;padding:6px 12px;font-size:.75rem}.concerns-section,.tours-section,.day-section,.timing-section,.philosophy,.reviews-section,.process-section,.faq-section{padding:var(--section-space) var(--gutter)}.concerns-heading{text-align:center;max-width:600px;margin:0 auto 32px}.concern-bubbles{gap:16px;margin:0;padding:0;list-style:none;display:grid}.concern-bubbles li{background:var(--surface-blue);border-radius:24px 24px 24px 4px;padding:24px}.concern-bubbles li:nth-child(2n){background:var(--surface-accent);border-radius:24px 24px 4px}.concern-bubbles h3{margin-bottom:12px}.concern-bubbles p{color:var(--muted);margin:0;font-size:.875rem;line-height:1.6}.concerns-response{text-align:center;max-width:760px;margin:64px auto 0}.concerns-response:before{content:"";background:var(--accent);width:48px;height:3px;margin:0 auto 28px;display:block}.concerns-response h2{font:500 clamp(2rem, 4.2vw, 3.25rem)/1.15 var(--font-display);letter-spacing:-.025em;text-wrap:balance;margin:0 0 20px}.concerns-response p{max-width:520px;color:var(--muted);margin:0 auto;font-size:1.0625rem;line-height:1.7}.trust-bar{margin:0 var(--gutter);border-radius:var(--shape-large);background:var(--surface);grid-template-columns:1fr;gap:24px;padding:32px 24px;display:grid}.usp-heading{grid-column:1/-1}.usp-heading h2{margin:0}.proof-item{border-top:1px solid var(--line);flex-direction:column;gap:12px;min-width:0;padding-top:24px;display:flex}.proof-item strong{font:500 1.5rem/1.3 var(--font-display)}.proof-rating strong{letter-spacing:-.04em}.proof-item small{color:var(--muted);font-size:1rem;line-height:1.6}.proof-rating{border-top:0;flex-flow:wrap;grid-column:1/-1;align-items:center;padding-top:0}.proof-rating strong{font:600 1rem/1.4 var(--font-body)}.proof-rating small{font-size:.75rem}.usp-cta{grid-column:1/-1}.proof-index{display:none}.section-heading,.day-heading,.timing-heading{max-width:660px;margin-bottom:32px}.section-heading>p:last-child,.day-heading>p:last-child,.timing-heading>p:last-child{color:var(--muted);margin-bottom:0}.tour-grid{min-width:0;display:grid}.tour-card{gap:24px;display:grid}.tour-image{border-radius:var(--shape-large);min-height:300px;position:relative;overflow:hidden}.tour-image img{height:100%;transition:transform .6s;position:absolute;inset:0}.tour-label{background:var(--sub);border-radius:100px;padding:8px 16px;font-size:.75rem;position:absolute;top:16px;left:16px}.tour-body{border-radius:var(--shape-large);background:var(--surface);padding:32px 24px}.tour-meta{letter-spacing:.09em;margin-bottom:16px;font-size:.75rem}.tour-body h3{margin-bottom:24px;font-size:2rem;line-height:1.2}.tour-body>p:not(.tour-meta){color:var(--muted)}dl{border-block:1px solid var(--line);margin:24px 0;padding:16px 0}dl div{justify-content:space-between;align-items:baseline;gap:16px;padding:8px 0;font-size:.875rem;display:flex}dt{color:var(--muted)}dd{text-align:right;margin:0;font-weight:600}dl div:first-child dd{font-size:1.125rem}.tour-body>.booking-note{margin:12px 0 0;font-size:.75rem}.day-section{gap:24px;padding-top:0;display:grid}.day-moments{gap:0;margin:0;padding:0;list-style:none;display:grid}.day-moments li{padding:0 0 28px 52px;position:relative}.day-moments li:not(:last-child):before{content:"";background:var(--line);width:1px;position:absolute;top:36px;bottom:4px;left:16px}.day-moments span{background:var(--surface-accent);border-radius:50%;place-items:center;width:32px;height:32px;font-size:.75rem;display:grid;position:absolute;top:0;left:0}.day-moments h3{margin-bottom:8px}.day-moments p{color:var(--muted);margin:0}.timing-section{background:var(--surface-blue);gap:24px;display:grid}.timing-grid{gap:24px;display:grid}.timing-grid article{border-top:1px solid var(--line);padding-top:24px}.timing-grid span{letter-spacing:.08em;font-size:.75rem}.timing-grid h3{margin:12px 0}.timing-grid p{color:var(--muted);margin:0}.section-cta{margin-top:32px}.philosophy{gap:32px;display:grid}.philosophy-copy p:not(.eyebrow),.about-copy>p:not(.eyebrow):not(.signature){color:var(--muted)}.principles article{border-top:1px solid var(--line);grid-template-columns:24px 1fr;gap:8px 16px;padding:24px 0;display:grid}.principles span{font-size:.75rem}.principles h3{margin:0}.principles p{color:var(--muted);grid-column:2;margin:0}.about-section{margin:0 var(--gutter) var(--section-space);gap:24px;display:grid}.about-photo{border-radius:var(--shape-large);min-height:420px;position:relative;overflow:hidden}.about-photo img{object-position:center 30%;height:100%;position:absolute;inset:0}.about-photo>p{background:var(--sub);border-radius:100px;margin:0;padding:8px 16px;font-size:.75rem;position:absolute;bottom:20px;left:20px}.about-copy{align-self:center;padding:24px 0}.about-facts{flex-wrap:wrap;gap:8px;margin-block:24px;display:flex}.about-facts span{border:1px solid var(--line);border-radius:8px;padding:6px 12px;font-size:.75rem}.signature{font:400 1.0625rem/1.75 var(--font-display);margin:24px 0 0}.signature span{font:400 .75rem/1.5 var(--font-body);margin-top:8px;display:block}.reviews-section{background:var(--main);color:var(--sub);gap:32px;display:grid}.reviews-title h2,.rating{margin-bottom:24px}.rating strong{margin-left:8px}.rating span{margin-top:8px;font-size:.75rem;display:block}.review-sources{flex-wrap:wrap;gap:8px 24px;display:flex}.review-source{align-items:center;gap:8px;min-height:44px;font-size:.875rem;display:inline-flex}.text-link,.final-link,.review-source{width:fit-content;text-decoration:none;position:relative}.text-link:after,.final-link:after,.review-source:after{content:"";background:currentColor;height:1px;position:absolute;bottom:7px;left:0;right:0}.review-slider{touch-action:pan-y;border-radius:var(--shape-large);background:#f8f3e90d;min-width:0;padding:24px}.review-viewport{overflow:hidden}.review-track{transition:transform .5s cubic-bezier(.2,0,0,1);display:flex}.review-slide[aria-hidden=true]{height:0;overflow:hidden}.review-slide{flex:0 0 100%;min-width:0;margin:0;padding:16px 4px 24px}.quote-mark{font:400 4rem/.6 var(--font-display);color:var(--accent)}.review-slide p{font:400 1.0625rem/1.75 var(--font-display);margin:16px 0 24px}.review-slide mark{color:var(--accent-on-dark);background:0 0;font-style:italic}.review-slide footer small{margin-top:8px;font-size:.75rem;display:block}.review-autoplay{min-height:48px;color:var(--sub);text-underline-offset:4px;background:0 0;border:0;border-radius:8px;margin-top:8px;padding:8px 12px;font-size:.75rem;text-decoration:underline}.review-autoplay:hover{background:#f8f3e91f}.review-slide footer{font-size:.75rem}.review-slide footer a{text-underline-offset:4px;width:fit-content;min-height:44px;padding-top:12px;text-decoration:underline;display:block}.slider-controls{border-top:1px solid #f8f3e933;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-top:16px;display:flex}.slider-dots{gap:0;display:flex}.slider-dots button{background:linear-gradient(var(--sub),var(--sub)) center / 8px 4px no-repeat;opacity:.4;border:0;width:40px;height:48px}.slider-dots button.is-active{opacity:1;background-size:24px 4px}.slider-arrows{align-items:center;gap:8px;display:flex}.slider-arrows button,.slider-pause{width:48px;height:48px;color:inherit;background:0 0;border:1px solid #f8f3e966;border-radius:50%}.slider-arrows span{font-size:.75rem}.process-grid{gap:24px;margin:0;padding:0;list-style:none;display:grid}.process-grid li{border-top:1px solid var(--line);padding-top:24px}.process-grid span{font:400 2rem/1 var(--font-display);color:var(--accent)}.process-grid h3{margin:16px 0 12px}.process-grid p{color:var(--muted);margin-bottom:0}.faq-section{gap:24px;padding-top:0;display:grid}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;justify-content:space-between;align-items:center;gap:24px;min-height:64px;padding:20px 0;font-weight:500;list-style:none;display:flex}summary::-webkit-details-marker{display:none}summary span{transition:transform var(--motion);flex-shrink:0;font-size:1.5rem}details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);margin:0;padding:0 24px 24px 0}.final-cta{margin:0 var(--gutter);border-radius:var(--shape-large);background:var(--main);color:var(--sub);text-align:center;padding:48px 24px}.final-cta>p:not(.eyebrow){max-width:560px;margin:0 auto 24px}.final-cta>div{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px 32px;display:flex}.site-footer{padding:48px var(--gutter) 24px;gap:32px;display:grid}.site-footer>div:first-child p{max-width:340px;color:var(--muted);margin-top:16px;font-size:.875rem}.site-footer>div:not(:first-child){flex-direction:column;align-items:flex-start;display:flex}.site-footer h3{font:600 .875rem/1.5 var(--font-body);margin-bottom:8px}.site-footer>div:not(:first-child) a{min-height:44px;padding:10px 0;font-size:.875rem}.copyright{border-top:1px solid var(--line);color:var(--muted);margin:0;padding-top:24px;font-size:.75rem}.mobile-book{z-index:50;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:var(--sub);justify-content:space-between;align-items:center;gap:16px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 16px #21324618}.mobile-book>span{font-size:.75rem}.mobile-book strong{background:var(--main);min-height:52px;color:var(--sub);border-radius:100px;align-items:center;padding:12px 32px;font-size:.875rem;display:inline-flex}@media (hover:hover){.button-dark:hover,.nav-book:hover{background:var(--main)}@supports (color:color-mix(in lab, red, red)){.button-dark:hover,.nav-book:hover{background:color-mix(in srgb,var(--main) 90%,var(--sub))}}.button-dark:hover,.nav-book:hover{box-shadow:0 4px 12px #21324626}.button-light:hover{background:var(--sub)}@supports (color:color-mix(in lab, red, red)){.button-light:hover{background:color-mix(in srgb,var(--sub) 90%,var(--main))}}.tour-card:hover .tour-image img{transform:scale(1.025)}.slider-arrows button:hover,.slider-pause:hover{background:#f8f3e91f}}@media (min-width:600px){:root{--gutter:32px;--section-space:80px}.hero-visual{min-height:420px}.hero-content{padding:40px}.hero h1{font-size:2.8125rem;line-height:1.16}.concern-bubbles{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.concern-bubbles li:last-child{grid-column:1/-1}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer{grid-template-columns:2fr 1fr 1fr}.copyright{grid-column:1/-1}}@media (max-width:599px){.hero-actions .button,.tour-body .button,.section-cta .button,.review-booking .button,.final-cta .button{width:100%}.final-cta>div{flex-direction:column}}@media (min-width:840px){:root{--gutter:max(40px, calc((100vw - 1200px)/2));--section-space:96px}body{padding-bottom:0}.site-header{z-index:40;background:var(--sub);border-bottom:1px solid var(--line);min-height:88px;position:sticky;top:0}section[id]{scroll-margin-top:112px}.day-heading{top:112px}nav a:not(.nav-book){align-items:center;min-height:48px;font-size:.875rem;display:inline-flex}.hero{grid-template-columns:1.08fr 1fr;gap:16px}.hero-content{flex-direction:column;grid-row:1;justify-content:center;padding:48px 40px;display:flex}.hero-visual{grid-area:1/2;min-height:580px}.hero-host{bottom:24px;left:24px}h2{font-size:2.5rem;line-height:1.2}.concern-bubbles{grid-template-columns:repeat(6,minmax(0,1fr))}.concern-bubbles li{grid-column:span 2}.concern-bubbles li:nth-child(4){grid-column:2/span 2}.concern-bubbles li:last-child{grid-column:4/span 2}.trust-bar{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:48px}.tour-card{grid-template-columns:1.1fr 1fr}.tour-image{min-height:540px}.tour-body{flex-direction:column;justify-content:center;padding:40px;display:flex}.day-section,.timing-section,.philosophy,.faq-section{grid-template-columns:1fr 1.2fr;gap:24px 72px}.day-heading{align-self:start;position:sticky;top:112px}.timing-heading{margin-bottom:0}.timing-section .section-cta{margin:0}.about-section{grid-template-columns:.85fr 1.15fr;gap:64px}.about-photo{min-height:620px}.reviews-section{grid-template-columns:.85fr 1.15fr;gap:32px 64px}.review-slider{padding:32px}.review-slide{min-height:300px}.review-slide p{font-size:1.25rem}.review-booking{grid-column:2}.process-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}.final-cta{padding:64px}.mobile-book{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.tokyo-notes{padding:var(--section-space) var(--gutter)}.notes-intro{max-width:760px;margin-bottom:40px}.notes-intro h2{text-wrap:wrap;font-size:clamp(2.2rem,4vw,3.5rem)}.notes-intro>p:last-child{max-width:640px;color:var(--muted)}.notes-grid{gap:28px;display:grid}.notes-grid article{border-top:2px solid var(--accent);padding:24px 0 0}.notes-grid article>span{letter-spacing:.12em;font-size:.75rem;font-weight:600}.notes-grid h3{margin:20px 0 12px;font-size:1.65rem}.notes-grid p{color:var(--muted);margin-bottom:0}.day-section{padding-top:var(--section-space)}.tour-gallery{flex-direction:column;min-width:0;display:flex}.tour-gallery-frames{background:var(--main);border-radius:4px 40px 4px 4px;flex:1;min-height:clamp(420px,65vw,560px);position:relative;overflow:hidden}.tour-gallery-frames img{opacity:0;height:100%;transition:opacity 1.8s ease-in-out;position:absolute;inset:0}.tour-gallery-frames img.is-active{opacity:1}.gallery-caption{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:20px 0;display:flex}.gallery-index{letter-spacing:.12em;font-size:.75rem}.gallery-caption p{font:500 1.25rem/1.3 var(--font-display);margin:4px 0 0}.gallery-controls{gap:4px;display:flex}.gallery-controls button{border:1px solid var(--line);min-width:44px;height:44px;color:var(--main);background:0 0;border-radius:50%;font-size:.875rem}.gallery-controls button[aria-current=true]{color:var(--sub);background:var(--main)}.gallery-controls .gallery-pause{text-underline-offset:4px;border:0;border-radius:0;padding:0 10px;text-decoration:underline}.about-photo{border-radius:4px 4px 48px;min-height:560px}.philosophy h2{text-wrap:wrap}@media (min-width:840px){.notes-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.tour-gallery-frames{min-height:600px}.about-photo{min-height:700px}}@media (prefers-reduced-motion:reduce){.tour-gallery-frames img{transition:none}}.concern-solutions{gap:36px;padding-bottom:14px;display:grid}.concern-solutions article{min-width:0}.concern-solutions article:nth-child(2n) h3{background:var(--accent);border-radius:18px 18px 0}@supports (color:color-mix(in lab, red, red)){.concern-solutions article:nth-child(2n) h3{background:color-mix(in srgb, var(--accent) 10%, var(--sub))}}.concern-solutions h3{background:var(--concern-surface);border-radius:18px 18px 18px 0;width:fit-content;max-width:100%;margin-bottom:20px;padding:16px 20px}.concern-solutions p{color:var(--muted);max-width:56ch;margin:0;padding:0 20px;font-size:.9375rem;line-height:1.75}.tokyo-notes{background:var(--surface-blue)}.tours-section{background:var(--sub)}.tour-gallery{position:relative}.gallery-controls .gallery-motion-control:not(:focus-visible){clip-path:inset(50%);border:0;width:1px;min-width:0;height:1px;padding:0;position:absolute;overflow:hidden}.gallery-controls .gallery-motion-control:focus-visible{border-radius:8px;width:auto;padding:0 12px}@media (min-width:600px){.concern-solutions{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 48px}}.reviews-section+.about-section{margin-top:var(--section-space)}.about-photo{align-self:start;height:clamp(390px,95vw,580px);min-height:0}.about-photo img{object-position:center 72%}.process-cta{margin-top:0}@media (min-width:840px){.about-photo{height:600px}.process-cta{grid-column:2}}.hero{grid-template-columns:minmax(0,1fr)}.hero>*{min-width:0}.hero-visual{aspect-ratio:944/1130;background:var(--sub);grid-area:1/1;align-self:stretch;width:100%;min-height:0}.hero-visual>img{object-fit:contain;width:100%;max-width:none;height:auto;display:block;position:absolute;inset:auto 0 0}.hero-content{grid-area:2/1}.hero h1{text-wrap:wrap}.hero h1 em{text-wrap:balance}@media (min-width:840px){.hero{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:stretch}.hero-content{grid-area:1/1;padding:clamp(28px,3.2vw,48px)}.hero-visual{grid-area:1/2}.hero h1{font-size:clamp(2.1rem,3.4vw,3rem)}.hero-copy{font-size:clamp(.9375rem,1.3vw,1.0625rem)}}.mobile-book strong{white-space:nowrap;flex-shrink:0;padding-inline:24px}.hero-visual>img{transform:translateY(12%)}@media (min-width:840px){.button{min-width:min(240px,100%);min-height:72px;padding:20px 40px;font-size:1.0625rem}.nav-book{min-width:164px;min-height:60px;font-size:1rem}.timing-section{grid-template-rows:auto 1fr}.timing-heading{grid-area:1/1}.timing-grid{grid-area:1/2/span 2}.timing-section>.section-cta{grid-area:2/1;align-self:end;margin:0}}@media (min-width:840px) and (max-width:1023px){.hero{grid-template-columns:minmax(0,1fr)}.hero-visual{grid-area:1/1}.hero-content{grid-area:2/1}}.hero-photo-column{flex-direction:column;grid-area:1/1;min-width:0;display:flex}.hero-photo-column .hero-visual{flex:1}@media (min-width:1024px){.hero-photo-column{grid-area:1/2}}@media (max-width:1023px){.hero-content{display:contents}.hero-intro{background:var(--main);color:var(--sub);border-radius:var(--shape-large);grid-row:1;padding:28px 24px}.hero-intro .eyebrow{margin-bottom:12px}.hero-intro h1{font-size:clamp(1.8rem,5.5vw,2.4rem)}.hero-photo-column{grid-row:2}.hero-details{background:var(--main);color:var(--sub);border-radius:var(--shape-large);grid-row:3;padding:24px}.hero-details .hero-copy{margin-top:0}}.reviews-compact{grid-template-columns:minmax(0,1fr)}.reviews-compact .reviews-title{max-width:760px}.review-pair{grid-template-columns:minmax(0,1fr);gap:32px;display:grid}.review-pair .review-slide{min-height:0;padding:16px 0 24px}.review-pair .review-slide+.review-slide{border-top:1px solid #f2f3f233;padding-top:32px}.review-group-label{letter-spacing:.12em;margin-bottom:24px;font-size:.75rem}.review-expand{color:var(--sub);text-underline-offset:5px;background:0 0;border:0;min-height:44px;padding:12px 0;font-size:.875rem;text-decoration:underline;display:block}.review-original{padding:12px 0;font-size:.75rem;display:block}@media (min-width:840px){.review-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}.review-pair .review-slide+.review-slide{border-top:0;padding-top:16px}}.mobile-menu{display:none}@media (max-width:839px){.site-header{z-index:40;position:relative}.site-header>nav{display:none}.mobile-menu{display:block}.mobile-menu summary{justify-content:center;width:48px;min-height:48px;padding:10px}.mobile-menu summary span{font-size:1.125rem}.mobile-menu[open] summary span{transform:none}.mobile-menu nav{top:calc(100% - 8px);left:var(--gutter);right:var(--gutter);border:1px solid var(--line);background:var(--sub);border-radius:12px;flex-direction:column;align-items:stretch;gap:0;padding:12px 20px;display:flex;position:absolute;box-shadow:0 12px 24px #21324618}.mobile-menu nav a{align-items:center;min-height:48px;padding:10px 0;font-size:.9375rem;display:flex}.mobile-menu nav a+a{border-top:1px solid var(--line)}}@media (max-width:1023px){.hero{background:var(--main);color:var(--sub);border-radius:var(--shape-large);gap:0;overflow:hidden}.hero-intro,.hero-details,.hero-photo-column .hero-visual{border-radius:0}.hero-details{padding-top:28px}}.mobile-menu nav a,.button,.nav-book,.mobile-book strong{gap:8px}.site-header>nav a,.site-footer a[target=_blank],.review-original{align-items:center;gap:8px;display:inline-flex}.mobile-book strong{padding-inline:18px}
