:root{--paper:#faf7ed;--ink:#344b40;--green:#496b50}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/2 'Hiragino Maru Gothic ProN','Yu Gothic',sans-serif}body:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:10;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 150 150'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.3' filter='url(%23n)'/%3E%3C/svg%3E")}a{color:inherit;text-underline-offset:5px}img{display:block;width:100%;object-fit:cover}button{font:inherit;cursor:pointer}h1,h2,h3{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:500;line-height:1.65;letter-spacing:.08em}h2{font-size:38px;margin:12px 0 25px}h3{font-size:22px}p{margin:16px 0}.wrap{max-width:1160px;margin:auto;padding:95px 40px}.eyebrow{font-size:12px;letter-spacing:.2em;color:var(--green);font-weight:600}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:12px 4%;gap:28px;background:var(--paper);position:relative;z-index:20}.brand{width:210px;text-decoration:none;text-align:center}.brand img{height:45px;object-fit:contain}.brand small{display:block;font-size:9px;letter-spacing:.24em;line-height:1}nav{display:flex;align-items:center;gap:26px;font-size:12px}nav a{text-decoration:none}.nav-cta{border:1px solid #8c9d85;border-radius:50px;padding:8px 20px}.menu{display:none}.hero{height:690px;position:relative;overflow:hidden}.hero>img{height:100%;object-position:center}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#17363e99,transparent 90%)}.hero-copy{position:absolute;left:max(7%,calc((100% - 1080px)/2));top:60px;color:white}.hero .eyebrow{color:white}.hero h1{font-size:52px;line-height:1.7;margin:18px 0}.hero-copy>p{font-size:14px}.pill{display:inline-block;border-radius:60px;background:#fffdf0;color:var(--ink);text-decoration:none;padding:12px 28px;font-size:13px;margin-top:18px}.dark{background:var(--green);color:white}.caption{position:absolute;right:26px;bottom:60px;color:white;font-size:10px;letter-spacing:.2em;writing-mode:vertical-rl}.torn{position:absolute;bottom:-1px;width:100%;height:32px;background:var(--paper);clip-path:polygon(0 50%,7% 30%,15% 60%,25% 35%,35% 60%,45% 30%,55% 60%,65% 35%,75% 65%,85% 30%,95% 60%,100% 35%,100% 100%,0 100%)}.intro{text-align:center;padding-top:70px}.intro>p{line-height:2.5}.panorama{position:relative;margin-top:45px}.panorama>img{height:430px;border-radius:54% 46% 48% 52% / 7% 9% 6% 8%}.note{position:absolute;right:-10px;bottom:-20px;background:#f0e5c8;padding:22px 35px;transform:rotate(-5deg);font-family:serif;font-size:16px;box-shadow:0 6px 15px #344b4010}.intro-bottom{display:flex;gap:60px;text-align:left;align-items:center;margin-top:45px}.intro-bottom p{flex:1}.intro-bottom a{white-space:nowrap;font-size:13px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px;gap:30px}.section-head>p{font-size:13px}.enjoy{padding-top:5px}.stories{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.stories figure{margin:0 0 28px;padding:10px 10px 15px;background:white;box-shadow:0 4px 16px #344b4010;transform:rotate(-2deg)}.stories article:nth-child(2) figure{transform:rotate(2deg)}figure img{height:240px}figcaption{font-family:serif;text-align:center;font-size:12px;padding-top:10px}.stories p,.stories a{font-size:13px}.small{font-size:11px!important;color:#717869;line-height:1.9}.enjoy>.small{margin-top:30px}.history{background:#eeedde;border-radius:50% 50% 0 0 / 24px 24px 0 0}.history-grid{display:grid;grid-template-columns:.85fr 1fr;gap:80px;align-items:center}.art img{border:12px solid #fff9;transform:rotate(-4deg)}.art p{text-align:center;font-family:serif}.history p{font-size:14px}details{padding:18px 0;border-bottom:1px solid #87967d55}summary{cursor:pointer;font-size:15px}details p,details a{font-size:13px}.seal{width:85px;height:85px;border-radius:50%;filter:invert(1);mix-blend-mode:multiply}.house-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.house-photo{position:relative}.house-photo>img{height:450px;border-radius:48% 52% 45% 55% / 8% 6% 9% 7%}.round-note{position:absolute;right:-20px;bottom:-20px;border-radius:50%;background:#eee1b9;width:170px;height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(7deg);font-size:12px}.round-note strong{font-size:21px;font-weight:500}.round-note small{font-size:9px}.brush{object-fit:contain;margin-bottom:28px}.house-grid p{font-size:14px}.spaces{padding-top:5px}.space{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;margin:50px 0 80px}.space>img{height:360px;border-radius:4px 45px 5px 36px}.reverse>img{order:2}.number{color:#b28b4b;font-size:11px;letter-spacing:.15em}.space h3{font-size:25px;margin:15px 0}.space em{font-size:16px;font-style:normal}.space p{font-size:14px}.tag{display:inline-block;border:1px solid #bdc7b4;border-radius:25px;padding:2px 12px;font-size:11px;margin:3px}.floor{background:#eeecdf;padding:20px 28px;border:0;border-radius:8px}.floor img{margin:25px auto}.day{background:#eaf0e1;text-align:center;border-radius:50% 50% 0 0 / 25px 25px 0 0}.day .wrap{padding-top:65px;padding-bottom:65px}.route{display:grid;grid-template-columns:repeat(3,1fr);margin:40px 0}.route>div+div{border-left:1px dashed #8d9c7f}.route span{font:25px Georgia;color:#b28b4b}.route h3{font-size:20px}.route p{font-size:13px}.access{display:grid;grid-template-columns:1fr .8fr;gap:90px;align-items:center}.access p{font-size:14px}.access a{font-size:13px}.map{padding:12px;background:white;transform:rotate(2deg);text-align:center;text-decoration:none}.map img{max-height:450px;object-fit:contain}.contact{text-align:center;background:#f0e8d6;padding:70px 20px}.contact .wrap{padding:0 20px}.contact p{font-size:14px}.contact button{border:0;border-bottom:1px solid #8f9988;background:none;color:var(--ink);font-size:11px}#copy-status{display:block;font-size:12px}.other{text-align:center;padding-top:65px;padding-bottom:65px}.other h2{font-size:23px}.other p,.other a{font-size:13px}.other div{display:flex;justify-content:center;gap:40px}footer{text-align:center;padding:45px 30px;background:#e7e9dc}footer>img{width:230px;object-fit:contain;margin:auto}footer p{font-size:11px}footer details{max-width:800px;margin:auto;border:0}footer summary{font-size:11px}a:hover{opacity:.8}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b28b4b;outline-offset:5px}@media(max-width:850px){header{height:78px}.brand{width:170px}.brand img{height:40px}.menu{display:block;border:0;background:none;font-size:12px;color:var(--ink)}nav{display:none;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column;gap:20px}nav.open{display:flex}.wrap{padding:65px 24px}h2{font-size:29px}.hero{height:660px}.hero-copy{left:7%;right:7%;top:50px}.hero h1{font-size:39px}.hero-copy>p{font-size:12px}.hero>img{object-position:60%}.shade{background:linear-gradient(90deg,#17363eaa,#17363e22)}.intro>p{font-size:13px}.intro>p br{display:none}.panorama>img{height:290px}.note{right:0;font-size:12px;padding:15px 20px}.intro-bottom{display:block;margin-top:50px;font-size:13px}.section-head{display:block}.stories{grid-template-columns:1fr;gap:35px}figure img{height:310px}.history-grid,.house-grid,.access{grid-template-columns:1fr;gap:45px}.art{max-width:450px;margin:auto}.art img{max-height:330px;object-fit:contain}.house-photo>img{height:360px}.round-note{right:5px;width:145px;height:145px}.round-note strong{font-size:18px}.brush{max-width:330px}.seal{display:none}.space{grid-template-columns:1fr;gap:18px;margin:35px 0 55px}.space>img{height:310px}.reverse>img{order:0}.space h3{font-size:24px}.route{gap:6px}.route>div{padding:0 6px}.route h3{font-size:15px;letter-spacing:0}.route p{font-size:11px}.route p br{display:none}.contact h2{font-size:25px}.contact p br{display:none}.other div{flex-direction:column;gap:15px}.map{max-width:400px;margin:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@font-face{font-family:Yomogi;src:url('assets/yomogi.ttf') format('truetype');font-display:swap;font-weight:400}body{font-family:Yomogi,'Hiragino Maru Gothic ProN',sans-serif;font-size:17px;line-height:2.05;background-color:#fcf6e8;color:#584d3f}h1,h2,h3,.eyebrow,.pill,nav,figcaption,.note,.art p{font-family:Yomogi,'Hiragino Maru Gothic ProN',sans-serif}h1,h2,h3{font-weight:400}h2{font-size:40px;letter-spacing:.03em}h3{font-size:24px}header{background:#fcf6e8}.hero h1{font-size:55px;text-shadow:0 2px 5px #233b3c44}.hero>img{object-position:center 55%}.hero-copy>p{font-size:17px}.hero .shade{background:linear-gradient(90deg,#234e5499,transparent 86%)}.eyebrow{font-size:15px;font-weight:400;color:#7e8159}nav{font-size:14px;gap:21px}.pill{font-size:16px;border-radius:53% 47% 50% 50% / 43% 48% 52% 57%;border:1px solid #958460;padding:13px 27px;box-shadow:2px 3px 0 #635c3213}.dark{background:#667c59;border-color:#667c59}.torn{background:#fcf6e8}.intro-bottom p,.stories p,.history p,.house-grid p,.space p,.access p,.contact p,.other p{font-size:16px}.stories a,.intro-bottom a,.access a,.other a{font-size:15px}.section-head>p{font-size:16px}.stories figure{border-radius:3px 4px 8px 3px;position:relative}.stories figure:before{content:'';position:absolute;width:76px;height:24px;left:calc(50% - 38px);top:-12px;background:#d6bb7d66;transform:rotate(5deg);z-index:1}.stories article:nth-child(3) figure img{height:340px;object-position:50% 65%}.stories article:nth-child(3) figure{transform:rotate(-3deg)}figcaption{font-size:15px}.history{background:#eee9d6}.day{background:#edf0dc}.contact{background:#efe3ca}footer{background:#e9e5d3}.note{border-radius:3px 9px 5px 3px}.round-note{background:#edddb0}.space>img{border:7px solid #fffdfa;box-shadow:2px 7px 18px #6a573619;transform:rotate(-1.5deg)}.reverse>img{transform:rotate(1.5deg)}.space>img[src*="washitsu"]{filter:brightness(1.22) contrast(1.06);object-position:center 60%}.space>img[src*="bbq"]{filter:brightness(1.18) contrast(1.04);object-position:center 66%}.space h3{font-size:28px}.space em{font-size:20px}.tag{font-size:14px;border-style:dashed}.small{font-size:12px!important}.sansou-shortcut{position:fixed;z-index:35;right:21px;bottom:25px;width:145px;padding:10px 14px 13px;text-align:center;text-decoration:none;background:#fff4cf;color:#5e6346;box-shadow:2px 5px 13px #5c4d3324;border:1.5px solid #9c9f77;border-radius:46% 48% 12% 15% / 23% 25% 10% 12%;transform:rotate(4deg);font-family:Yomogi,sans-serif;font-size:14px;line-height:1.5}.sansou-shortcut svg{width:70px;height:48px;display:block;margin:auto;fill:none;stroke:#6e7e55;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.sansou-shortcut b{font-size:11px;font-weight:400;display:block;margin-top:5px}.sansou-shortcut:hover{transform:rotate(0)}main{position:relative}.walking-trail{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:2;overflow:hidden}.trail-line,.trail-progress{fill:none;stroke:#a8997240;stroke-width:1.4;stroke-dasharray:3 9;stroke-linecap:round}.trail-progress{stroke:#b38553;stroke-width:2;stroke-dasharray:none;opacity:.5}.trail-steps{fill:#b78c5c}.trail-steps use{opacity:.18;transition:opacity .4s}.trail-steps use.walked{opacity:.72}.trail-destination{fill:#9a7750;font-size:13px;font-family:Yomogi,sans-serif}summary{font-family:Yomogi,sans-serif;font-size:17px}details p,details a{font-size:15px}.floor{border:1px dashed #c5b997;background:#f0ebd9}footer .small,footer p{font-size:12px}body:before{opacity:.18}@media(max-width:850px){body{font-size:16px}.wrap{padding-left:36px;padding-right:28px}h2{font-size:31px}.hero h1{font-size:39px}.hero-copy>p{font-size:15px}.hero-copy{left:8%;right:8%;top:40px}.hero{height:700px}.hero>img{object-position:44%}.hero .shade{background:linear-gradient(90deg,#234e54b0,#234e5420)}.eyebrow{font-size:13px}.intro>p{font-size:15px}.hero-copy>p br{display:none}.stories article:nth-child(3) figure img{height:400px;object-position:50% 70%}.sansou-shortcut{width:100px;right:10px;bottom:15px;font-size:12px;padding:8px 8px}.sansou-shortcut svg{width:48px;height:34px}.sansou-shortcut b{font-size:10px}.contact .wrap{padding-right:45px}.space>img{height:auto;aspect-ratio:4/3}.space h3{font-size:26px}.route h3{font-size:17px}.route p{font-size:13px}.other h2{font-size:25px}.section-head>p{font-size:15px}.brand{width:170px}.note{font-size:14px}.round-note{font-size:13px}.hero .pill{font-size:14px}.contact h2{font-size:27px}.contact p{font-size:15px}}@media(prefers-reduced-motion:reduce){.trail-steps use{transition:none}}
@font-face{font-family:'Zen Maru Gothic';src:url('assets/zen-maru.ttf') format('truetype');font-weight:400;font-display:swap}body{font-family:'Zen Maru Gothic','Hiragino Maru Gothic ProN','Arial Rounded MT Bold',sans-serif;font-size:16px}h1,h2,h3{font-family:Yomogi,sans-serif}.eyebrow,figcaption,.note,.art p,.round-note,.number{font-family:Yomogi,sans-serif}nav,.pill,summary,.sansou-shortcut{font-family:'Zen Maru Gothic','Hiragino Maru Gothic ProN',sans-serif}.brand{width:300px;flex-shrink:0}.brand img{height:62px;width:100%}.brand small{font-size:10px;letter-spacing:.28em}header{height:108px;padding-left:4%;padding-right:4%}nav{font-size:12px;gap:20px}.hero{height:clamp(410px,34vw,540px);min-height:0}.hero>img{object-position:center 24%;filter:brightness(1.14) contrast(1.055) saturate(1.04)}.hero .shade{background:linear-gradient(90deg,#28484988,transparent 72%)}.hero-copy{top:36px;left:7%;right:7%}.hero h1{font-size:clamp(34px,3.3vw,49px);line-height:1.65;margin:13px 0 12px;letter-spacing:.04em}.hero-copy>p{font-size:14px;margin:12px 0}.hero .eyebrow{font-size:14px}.hero .pill{font-size:13px;margin-top:12px;padding:9px 24px}.caption{font-size:9px;bottom:50px}.access{display:block;max-width:900px}.access>div{max-width:720px;margin:auto}.trail-line{stroke:#b69a6b66;stroke-width:1.4}.trail-progress{stroke:#b58b56;opacity:.55}.trail-steps use{opacity:.25}.trail-steps use.walked{opacity:.8}.stories p,.intro-bottom p,.history p,.house-grid p,.space p,.access p,.contact p,.other p{font-size:15px}.stories a,.intro-bottom a,.access a,.other a{font-size:13px}.small{font-size:12px!important}.section-head>p{font-family:'Zen Maru Gothic',sans-serif;font-size:14px}.intro>p:not(.eyebrow){font-family:'Zen Maru Gothic',sans-serif;font-size:15px}footer p{font-family:'Zen Maru Gothic',sans-serif}details p,details a{font-size:14px}@media(max-width:1050px) and (min-width:851px){header{padding-left:25px;padding-right:25px}.brand{width:250px}nav{gap:13px;font-size:11px}}@media(max-width:850px){header{height:94px}.brand{width:235px}.brand img{height:55px}.brand small{font-size:9px}nav{top:94px;font-size:14px}.hero{height:620px;min-height:0}.hero>img{object-position:39% 28%;filter:brightness(1.12) contrast(1.04)}.hero-copy{top:53px;left:8%;right:8%}.hero h1{font-size:35px;line-height:1.85;margin:19px 0}.hero-copy>p{font-size:14px;max-width:270px}.hero .shade{background:linear-gradient(90deg,#284849a8,#28484915)}.hero .pill{margin-top:25px;font-size:13px}.access{padding-bottom:70px}.intro>p:not(.eyebrow){font-size:14px}.space p,.stories p,.history p,.house-grid p,.access p,.contact p{font-size:14px}.sansou-shortcut{font-size:11px}.round-note{font-family:Yomogi,sans-serif}summary{font-size:15px}}
@media(min-width:851px){.hero>img{object-position:center 41%;filter:brightness(1.085) contrast(1.035) saturate(1.04)}}
.brand{display:grid;grid-template-columns:65px 1fr;column-gap:12px;width:350px;align-items:center}.brand .header-symbol{grid-column:1;grid-row:1/3;width:65px;height:65px;filter:invert(1);mix-blend-mode:multiply;object-fit:contain}.brand>img:not(.header-symbol){grid-column:2;grid-row:1;width:100%;height:60px}.brand small{grid-column:2;grid-row:2;font-size:8px}.sansou-arrival{text-align:center;margin:-25px auto 65px}.sansou-arrival img{width:220px;height:220px;object-fit:contain;margin:auto;filter:invert(1);mix-blend-mode:multiply}.sansou-arrival p{font-family:Yomogi,sans-serif;font-size:21px;letter-spacing:.1em;margin:10px 0}.footer-symbol{width:140px!important;height:140px;margin:0 auto 25px!important;filter:invert(1);mix-blend-mode:multiply}.bus-art{width:min(100%,650px);height:290px;object-fit:contain;margin:30px auto;mix-blend-mode:multiply}.access{max-width:1160px}.access>div{max-width:900px}.access-guides{margin-top:28px;padding:24px;border:1px dashed #bfa67a;border-radius:20px 8px 19px 10px;background:#fffaf0}.access-guides summary{font-size:19px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:25px 0}.photo-open{border:0;background:#fffdf8;padding:9px;color:inherit;font:inherit;text-align:left;box-shadow:1px 4px 11px #614b3110;cursor:zoom-in;border-radius:3px 8px 4px 6px}.photo-open img{width:100%;height:190px;object-fit:contain}.photo-open span{display:block;font-size:12px;padding:10px 5px 5px}.photo-open:hover{transform:translateY(-3px)}.gallery{text-align:center;border-top:1px dashed #c5b68e}.gallery>p{font-size:15px}.gallery details{border:0;margin-top:30px}.gallery summary{display:inline-block;padding:14px 30px;border:1px solid #a99e78;border-radius:55% 45% 48% 52% / 30% 40% 50% 45%;background:#f0e5c7;font-family:Yomogi,sans-serif;font-size:22px}.gallery summary span{font-size:14px;margin-left:30px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:40px}.gallery-grid .photo-open img{height:220px;object-fit:cover}.gallery-grid .photo-open:nth-child(3n+1){transform:rotate(-2deg)}.gallery-grid .photo-open:nth-child(3n+2){transform:rotate(2deg)}dialog{border:0;border-radius:16px;background:#fff9eb;color:#514b3b;padding:55px 30px 20px;width:min(1060px,94vw);max-height:94vh;box-shadow:0 10px 90px #0005}dialog::backdrop{background:#233127dd}.viewer-close{position:absolute;right:20px;top:12px;border:0;background:none;color:inherit;font:inherit}.viewer-content img{height:calc(82vh - 140px);width:100%;object-fit:contain}.viewer-content p{text-align:center;font-size:13px;margin:12px 0}.viewer-controls{display:flex;align-items:center;justify-content:center;gap:25px;font-size:13px}.viewer-controls button{background:#e9e2c9;border:1px solid #a9a083;border-radius:20px;padding:7px 20px;color:inherit;font:inherit}body.modal-open{overflow:hidden}.nature-doodle{position:absolute;pointer-events:none;z-index:1;width:160px;height:170px;object-fit:contain;opacity:.6}main>section{position:relative}.doodle-blossom{right:3%;top:30px}.doodle-boar{left:1%;bottom:5px}.doodle-deer{right:1%;bottom:5px}.doodle-hikers{left:1%;top:15px}.doodle-cyclist{right:1%;bottom:15px}@media(max-width:1100px) and (min-width:851px){.brand{width:290px;grid-template-columns:52px 1fr;gap:7px}.brand .header-symbol{width:52px;height:52px}nav{gap:12px;font-size:11px}}@media(max-width:850px){.brand{width:265px;grid-template-columns:46px 1fr;gap:7px}.brand .header-symbol{width:46px;height:46px}.brand>img:not(.header-symbol){height:49px}.brand small{font-size:7px;letter-spacing:.18em}.sansou-arrival{margin:-10px auto 40px}.sansou-arrival img{width:190px;height:190px}.sansou-arrival p{font-size:19px}.bus-art{height:220px}.guide-grid{grid-template-columns:1fr}.guide-grid .photo-open{display:grid;grid-template-columns:95px 1fr;gap:15px;align-items:center}.guide-grid .photo-open img{height:100px}.guide-grid .photo-open span{font-size:13px}.access-guides{padding:18px}.access-guides summary{font-size:17px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:16px}.gallery-grid .photo-open img{height:180px}.photo-open span{font-size:11px}.gallery{padding-left:25px;padding-right:25px}.viewer-content img{height:65vh}.viewer-controls{gap:12px}.viewer-controls button{padding:6px 15px}dialog{padding:48px 12px 15px}.nature-doodle{width:95px;height:110px;opacity:.48}.doodle-blossom{right:0;top:0}.doodle-boar{left:0;bottom:0}.doodle-deer{right:0;bottom:0}.doodle-hikers{left:0;top:0}.doodle-cyclist{right:0;bottom:0}}
.nature-doodle{width:200px;height:145px}.doodle-blossom{width:240px;right:1%;top:20px}.doodle-deer{width:190px;height:180px;right:0;top:-85px;bottom:auto}.doodle-boar{left:0;bottom:-40px}.doodle-hikers{left:0;top:-35px;width:220px;height:160px}.doodle-cyclist{right:0;bottom:5px;width:210px;height:155px}.bus-art{height:auto;max-height:420px}.access h2{padding-right:20px}@media(max-width:850px){.nature-doodle{width:110px;height:100px}.doodle-blossom{width:130px;right:0;top:-20px}.doodle-boar{bottom:-20px}.doodle-deer{width:105px;height:110px;top:-60px}.doodle-hikers{width:125px;height:95px;top:-30px}.doodle-cyclist{width:115px;height:95px;bottom:-15px}.bus-art{height:auto;max-height:270px}.access h2{padding-right:0}}
.sansou-arrival .arrival-symbol{display:block;width:200px;height:195px;margin:auto;filter:invert(1);mix-blend-mode:multiply}.footer-symbol{display:block}.header-symbol{display:block}.nature-doodle{opacity:.75}@media(max-width:850px){.sansou-arrival .arrival-symbol{width:170px;height:165px}.nature-doodle{opacity:.65}}
.header-sketches{display:flex;align-items:center;justify-content:center;flex:1;min-width:65px;max-width:220px;gap:8px;opacity:.6}.header-sketches img:first-child{width:75px;height:45px;object-fit:contain;transform:rotate(-12deg)}.header-sketches img:last-child{width:85px;height:50px;object-fit:contain}.brand{width:315px}header{gap:18px}nav{gap:17px}.hero>img{filter:none!important;object-position:center!important}.hero{height:auto;min-height:380px;aspect-ratio:3.15/1}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero .shade{background:linear-gradient(90deg,#28484988,transparent 75%)}.space>img[src*="new-2"],.space>img[src*="new-3"]{filter:none;object-position:center}.gallery-link.photo-open{display:inline-block;width:auto;box-shadow:none;border:0;border-bottom:1px dashed #9e8c67;border-radius:0;background:transparent;padding:5px 0;margin:18px 0 0;color:#5e7352;font-size:14px;text-align:left;cursor:zoom-in}.gallery-link.photo-open:hover{transform:none;opacity:.8}.gallery-albums{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:28px 0 18px}.gallery-albums .gallery-link{border:1px solid #c4b48e;border-radius:25px;padding:7px 18px;margin:0;font-size:13px;background:#f7eed9}.gallery .gallery-grid{margin-top:26px}.gallery .gallery-all{margin-top:32px;padding:10px 24px;border:1px solid #b4a47f;border-radius:30px;background:#f1e7cb}.house-grid .gallery-link{display:block;max-width:100%;font-size:13px}.gallery{padding-top:75px;padding-bottom:80px}.gallery-grid .photo-open img{height:205px}.gallery-grid .photo-open span{font-size:12px}.gallery-grid .photo-open{transition:transform .15s}.gallery-grid .photo-open:hover{transform:rotate(0) translateY(-3px)}@media(min-width:1500px){.hero{max-height:600px}}@media(max-width:1100px) and (min-width:851px){.brand{width:260px}.header-sketches{max-width:80px}.header-sketches img:first-child{display:none}.header-sketches img:last-child{width:70px}header{gap:10px}nav{gap:12px}}@media(max-width:850px){.brand{width:235px;grid-template-columns:42px 1fr}.brand .header-symbol{width:42px;height:42px}.header-sketches{max-width:50px;min-width:30px}.header-sketches img:first-child{width:44px;height:40px;display:block}.header-sketches img:last-child{display:none}header{gap:7px;padding-left:15px;padding-right:15px}.menu{font-size:10px;white-space:nowrap}.hero{height:600px;min-height:0;aspect-ratio:auto}.hero>img{object-position:50% center!important}.hero .shade{background:linear-gradient(90deg,#284849a0,#28484910)}.gallery-albums{gap:8px}.gallery-albums .gallery-link{font-size:11px;padding:6px 11px}.gallery-grid .photo-open img{height:160px}.gallery-grid .photo-open span{font-size:11px}.gallery .gallery-all{font-size:12px}.gallery-link.photo-open{font-size:13px}.gallery{padding-top:55px;padding-bottom:55px}}
/* Immersive photographic entrances; retain the handwritten paper journey below. */
header{position:absolute;inset:0 0 auto;height:125px;z-index:20;background:transparent;color:white;border:0;box-shadow:none}header a,header .menu{color:white}header .brand>img{filter:invert(1)}header .brand .header-symbol{filter:none;mix-blend-mode:screen}header .header-sketches{filter:brightness(0) invert(1);opacity:.95}header .nav-cta{background:transparent;border:1px solid #ffffffa0;color:white}header .brand small{text-shadow:0 1px 6px #0007}.hero{height:92svh;min-height:640px;max-height:1050px;aspect-ratio:auto;overflow:hidden;color:white}.hero-slides,.hero-slides img{position:absolute;inset:0;width:100%;height:100%}.hero-slides img{object-fit:cover;object-position:center;opacity:0;transform:scale(1.035);transition:opacity 1.8s ease,transform 8s linear}.hero-slides img.active{opacity:1;transform:scale(1)}.hero .shade{position:absolute;inset:0;background:linear-gradient(180deg,#142c395e,transparent 40%),linear-gradient(90deg,#18363e88,transparent 85%)}.hero-copy{top:50%;transform:translateY(-35%);left:8%;right:8%;z-index:2}.hero h1{font-size:clamp(40px,4.4vw,68px);line-height:1.6;text-shadow:0 2px 16px #12343866}.hero-copy .eyebrow{color:white}.hero .pill{color:white;background:transparent;border:1px solid #fffc;font-size:14px}.hero .caption{left:8%;bottom:64px;color:white;z-index:2}.slide-controls{position:absolute;bottom:60px;right:8%;display:flex;align-items:center;gap:18px;z-index:4;color:white;font-size:12px;letter-spacing:.14em}.slide-controls button{border:1px solid #fff8;background:#15363b15;color:white;cursor:pointer;width:38px;height:38px;border-radius:50%;font:inherit}.slide-controls button:hover{background:#fff3}.sansou-banner{width:100%;height:78svh;min-height:550px;max-height:900px;overflow:hidden;isolation:isolate}.sansou-banner-photo{width:100%;height:100%;object-fit:cover;object-position:center}.sansou-banner:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#fff7,#fff1 58%,#fcf6e8);z-index:0}.sansou-banner-title{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1;color:#151c16;text-align:center}.sansou-banner-title img{width:min(740px,74%);height:auto;max-height:190px;object-fit:contain}.sansou-banner-title p,.sansou-banner-title span{font-family:Yomogi,sans-serif;font-size:22px;letter-spacing:.13em}.sansou-details{padding-top:65px}.sansou-details .sansou-arrival{margin-top:0}.sansou-details .arrival-symbol{width:125px;height:120px}.sansou-shortcut{z-index:15}.hero button:focus-visible,header a:focus-visible{outline:2px solid white;outline-offset:5px}@media(max-width:850px){header{height:108px;padding:12px 18px}header .brand{width:235px}header nav{top:108px;background:#23433fef;color:white;border:1px solid #fff4}header nav a{color:white}header .menu{background:transparent;border:0;color:white}.hero{height:90svh;min-height:630px;max-height:950px}.hero-copy{top:49%;transform:translateY(-30%);left:8%}.hero h1{font-size:36px;line-height:1.8}.hero-copy>p{font-size:13px}.hero .caption{bottom:87px;font-size:8px}.slide-controls{bottom:44px;left:8%;right:auto;gap:14px}.hero-slides img{object-position:50% center}.sansou-banner{height:68svh;min-height:440px}.sansou-banner-title img{width:88%}.sansou-banner-title p,.sansou-banner-title span{font-size:17px}.sansou-banner-photo{object-position:58% center}.sansou-details{padding-top:40px}}@media(prefers-reduced-motion:reduce){.hero-slides img{transition:none;transform:none}}
header .brand .header-symbol{mix-blend-mode:normal}.hero .caption{left:auto;right:25px}.slide-controls{right:16%}@media(max-width:850px){.slide-controls{right:auto;left:8%}}
/* Keep the tower and its tip inside the image, rather than cropping to a fixed height. */
.panorama>img{height:auto;aspect-ratio:auto;object-fit:contain;border-radius:6px}.sansou-slides,.sansou-slides img{position:absolute;inset:0;width:100%;height:100%}.sansou-slides img{object-fit:cover;object-position:center;opacity:0;transform:scale(1.035);transition:opacity 1.8s ease,transform 8s linear}.sansou-slides img.active{opacity:1;transform:scale(1)}.sansou-slides .tea-slide{object-position:center 42%;object-fit:contain;background:#eee9d6}.sansou-banner:after{background:linear-gradient(90deg,#142c3966,transparent 80%)}.sansou-banner-title{align-items:flex-start;padding:0 8%;text-align:left;color:white;pointer-events:none}.sansou-banner-title h2{font-size:clamp(38px,4vw,62px);line-height:1.7;text-shadow:0 2px 14px #18332c55}.sansou-banner .slide-controls{right:8%}@media(max-width:850px){.sansou-banner-title h2{font-size:36px}.sansou-banner .slide-controls{left:8%;right:auto}.sansou-slides img{object-position:center}.sansou-slides .tea-slide{object-fit:cover;object-position:center 50%}}@media(prefers-reduced-motion:reduce){.sansou-slides img{transition:none;transform:none}}
