@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600&family=Noto+Serif+JP:wght@400;500;600&family=Noto+Sans+Thai:wght@400;500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=Noto+Serif+Thai:wght@400;500&display=swap");
/* /style.css?v=34 */

:root{--green:#183c34;--ink:#223c35;--paper:#f7f7f0;--gold:#d8bc73;--line:#cbd4c8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP','Noto Sans Thai',sans-serif;font-size:16px;line-height:1.95}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:var(--paper);gap:20px}.brand{font-family:Georgia,serif;letter-spacing:.17em;font-size:23px;line-height:1.4}.brand small{display:block;font:11px 'Noto Sans JP',sans-serif;letter-spacing:.22em}nav{display:flex;align-items:center;gap:28px;font-size:14px}.nav-cta{background:var(--green);color:white;padding:11px 21px}.hero{min-height:680px;height:calc(100svh - 90px);max-height:1000px;position:relative;color:white;display:flex;align-items:center}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center;filter:brightness(.75)}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,30,22,.52),transparent 85%)}.hero-content{z-index:1;position:relative;padding:65px 9%;width:100%}.eyebrow{font-size:13px;letter-spacing:.2em;display:block;margin-bottom:24px}.hero h1{font-family:'Noto Serif JP',serif;font-size:clamp(36px,4.8vw,68px);line-height:1.6;letter-spacing:.09em;font-weight:400;margin:0 0 22px}.hero p{font-size:17px;line-height:2.1}.thai{font-family:'Noto Sans Thai',sans-serif;letter-spacing:.03em}.button{display:inline-flex;justify-content:center;align-items:center;gap:30px;padding:16px 25px;border:1px solid var(--green);background:var(--green);color:white;cursor:pointer;font-size:14px;transition:.2s}.button:hover{background:#2b5548;transform:translateY(-2px)}.button.light{border-color:#ffffff99;background:#ffffff12;color:white}.hero-bottom{position:absolute;bottom:28px;left:9%;right:6%;z-index:1;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.15em}.strip{background:var(--green);color:white;display:flex;justify-content:space-between;padding:24px 9%;gap:18px;font-size:14px}.section{padding:110px 8%;max-width:1600px;margin:auto}.section h2{font:400 clamp(28px,3.3vw,46px)/1.65 'Noto Serif JP',serif;margin:0 0 28px}.section p{line-height:2.2}.overline{font:14px Georgia,serif;letter-spacing:.2em;color:#57705c;display:block;margin-bottom:22px}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.split .tall{width:100%;height:540px;object-fit:cover}.intro{position:relative}.intro .bigword{font:clamp(60px,9vw,150px)/1 Georgia,serif;color:#e0e6da;letter-spacing:.04em;margin-bottom:32px}.note{font-size:13px;color:#5b6d61}.caption{display:flex;justify-content:space-between;font-size:12px;margin-top:12px;letter-spacing:.07em}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:65px}.values article{border-top:1px solid var(--line);padding-top:25px}.values span{font:italic 25px Georgia,serif;color:#6b806c}.values h3{font:500 23px/1.6 'Noto Serif JP',serif}.values p{font-size:15px}.dark{background:var(--green);color:var(--paper)}.dark .overline,.dark .note{color:#c3cdbd}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-head p{max-width:420px}.compare{display:grid;grid-template-columns:1fr 1fr;gap:25px}.compare figure{margin:0}.compare img{height:390px;width:100%;object-fit:cover}.compare .plan{object-fit:contain;background:#fff}.compare figcaption{padding:18px 0;font-size:14px}.compare strong{font:24px Georgia,serif;margin-right:18px}.project-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff40;margin-top:35px;padding-top:30px;gap:25px}.project-bottom b{font:44px Georgia,serif}.grid-gallery{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:18px;margin-top:45px}.grid-gallery img{height:320px;object-fit:cover;width:100%}.grid-gallery figure{margin:0}.grid-gallery figcaption{font-size:13px;padding-top:10px}.quote{font:400 clamp(27px,3.2vw,46px)/1.8 'Noto Serif JP',serif}.stay-price{font:56px Georgia,serif}.stay-price small{font:16px 'Noto Sans JP',sans-serif}.details{margin-top:28px;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:500}details p{font-size:14px}.murabito{background:#e8eddf}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin:45px 0}.steps article{border-top:1px solid #a9b6a1;padding-top:20px}.steps b{font:italic 32px Georgia,serif}.steps h3{font-size:18px}.steps p{font-size:14px}.care{margin-top:65px;padding-top:40px;border-top:1px solid #a9b6a1;max-width:850px}.closing{padding:100px 8%;text-align:center;background:var(--green);color:white}.closing h2{font:400 38px/1.7 'Noto Serif JP',serif}.closing .button{background:var(--gold);color:var(--green);border-color:var(--gold)}footer{padding:50px 8%;display:flex;justify-content:space-between;gap:30px;font-size:12px}.fund-hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:590px}.fund-hero>img{height:100%;min-height:590px;object-fit:cover;width:100%}.fund-intro{background:var(--green);color:white;padding:60px 12%}.fund-intro h1{font:400 clamp(30px,3.1vw,45px)/1.65 'Noto Serif JP',serif}.fund-intro .overline{color:var(--gold)}.amount{font:56px Georgia,serif}.amount small{font:18px 'Noto Sans JP',sans-serif}.fund-meta{border-top:1px solid #ffffff55;margin-top:25px;padding-top:20px;font-size:14px}.rewards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.reward{padding:30px;border:1px solid var(--line);background:#fff;display:flex;flex-direction:column}.reward:last-child{background:var(--green);color:white}.reward .num{font:italic 15px Georgia,serif;letter-spacing:.1em}.reward h3{font:34px Georgia,serif;margin:20px 0 5px}.reward h3 small{font:13px 'Noto Sans JP',sans-serif}.reward ul{padding-left:20px;font-size:14px;flex:1}.reward .button{margin-top:15px}.reward:last-child .button{background:var(--gold);color:var(--green)}.status{background:#e8eddf;color:var(--green);padding:18px 25px;margin:25px 0;font-size:14px}.budget{width:100%;border-collapse:collapse;margin:30px 0}.budget td{border-bottom:1px solid var(--line);padding:18px 0}.budget td:last-child{text-align:right}.budget tr:last-child{font-weight:bold}.modal{border:0;max-width:560px;width:calc(100% - 32px);padding:40px;color:var(--green);background:var(--paper)}.modal::backdrop{background:#08281ecc}.modal h2{font:26px 'Noto Serif JP',serif}.modal p{font-size:15px}.modal .close{float:right;border:0;background:transparent;font-size:24px;cursor:pointer}.menu-toggle{display:none}.center{text-align:center}.linkline{border-bottom:1px solid;padding-bottom:5px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #bf9034;outline-offset:5px}@media(max-width:800px){header{height:76px;padding:0 6%}.brand{font-size:18px}nav{gap:15px}nav>a:not(.nav-cta){display:none}.nav-cta{font-size:12px;padding:9px 13px}.hero{height:760px;min-height:620px;max-height:calc(100svh - 76px)}.hero-content{padding:40px 7%}.hero h1{font-size:36px}.hero p{font-size:14px}.hero-bottom{left:7%;font-size:10px}.hero-bottom span:last-child{display:none}.strip{padding:22px 7%;font-size:12px;flex-wrap:wrap}.section{padding:70px 7%}.split{grid-template-columns:1fr;gap:35px}.split .tall{height:360px}.values{grid-template-columns:1fr;gap:20px;margin-top:35px}.section-head{display:block}.compare{grid-template-columns:1fr}.compare img{height:300px}.project-bottom{align-items:start;flex-direction:column}.grid-gallery{grid-template-columns:1fr 1fr;gap:12px}.grid-gallery figure:first-child{grid-column:1/-1}.grid-gallery img{height:230px}.steps{grid-template-columns:1fr 1fr;gap:20px}.rewards{grid-template-columns:1fr}.fund-hero{grid-template-columns:1fr}.fund-hero>img{height:300px;min-height:0}.fund-intro{padding:45px 7%}.closing{padding:70px 7%}.closing h2{font-size:28px}footer{flex-direction:column}.section h2{font-size:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
/* Lake journal — timber, sunlight, linen, unhurried movement. */
:root{--green:#303e2e;--ink:#394034;--paper:#f4f0e6;--gold:#dfc085;--line:#cfcbbc}body{background:var(--paper)}header{background:#f4f0e6f5;height:86px}.brand{font-weight:400}nav{font-size:13px}.nav-cta{border-radius:2px;background:#4e5a3e}.section{padding-top:125px;padding-bottom:125px}.overline{color:#776a50;font-size:13px}.eyebrow{letter-spacing:.24em}.cinematic{overflow:hidden;min-height:720px;height:calc(100svh - 86px)}.hero-slides{position:absolute;inset:0;overflow:hidden}.hero-slide{position:absolute;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.09);transition:opacity 2.2s ease,transform 9s linear;object-position:center 53%;filter:brightness(.82) saturate(.88)}.hero-slide.active{opacity:1;transform:scale(1)}.hero-slide:nth-child(3){object-position:center 43%}.cinematic:after{background:linear-gradient(90deg,#16271980,transparent 90%),linear-gradient(0deg,#14231580,transparent 35%);pointer-events:none}.hero-content{padding-left:9%}.hero h1{font-size:clamp(54px,7.8vw,112px);letter-spacing:.12em;line-height:1.5;text-shadow:0 2px 25px #0002}.hero p{font-family:'Noto Serif JP',serif;font-size:18px;line-height:2.15}.hero-link{display:inline-flex;gap:50px;padding:14px 0;border-bottom:1px solid #fff9;font-size:14px;margin-top:15px}.hero-bottom{align-items:end;bottom:32px}.hero-bottom .thai{font-size:14px;line-height:2.5;letter-spacing:.02em}.slide-controls{display:flex;gap:15px;align-items:center;z-index:3}.slide-controls button{border:0;border-bottom:1px solid #fff5;color:#fff;background:transparent;min-width:38px;min-height:44px;font:14px Georgia,serif;cursor:pointer;opacity:.65}.slide-controls button[aria-pressed=true]{opacity:1;border-bottom:2px solid #e7c990}.slide-controls .motion-toggle{font-size:19px;opacity:1}.strip{background:#e8e1d3;color:#645e4c;padding-top:21px;padding-bottom:21px;font-size:12px;letter-spacing:.08em}.intro .bigword{font-style:italic;color:#b4ae98;font-size:clamp(55px,8vw,122px);letter-spacing:-.04em;margin-bottom:65px}.intro .tall{border-radius:48% 48% 2px 2px;height:600px}.section h2{font-weight:400;letter-spacing:.06em}.values{gap:55px;margin-top:90px}.values span{font-size:21px;color:#918265}.values article{border-color:#c9c0ae}.values h3{font-size:23px}.values p{line-height:2.25}.lake-film{height:135vh;min-height:850px;position:relative;background:#233525}.film-sticky{height:100svh;min-height:600px;position:sticky;top:0;overflow:hidden;display:grid;place-items:center}.film-sticky>img{position:absolute;height:118%;width:100%;object-fit:cover;top:-9%;will-change:transform}.film-shade{position:absolute;inset:0;background:#10231550}.film-copy{position:relative;text-align:center;color:white;padding:40px 7%}.film-copy h2{font:400 clamp(36px,4.6vw,66px)/1.85 'Noto Serif JP',serif;letter-spacing:.12em}.film-copy p{line-height:2.4;font-size:17px}.film-copy>.thai{display:block;margin-top:40px;font-size:20px}.dark{background:#303e2e}.dark .section{padding-top:130px}.compare{gap:35px}.compare img{height:420px}.compare figure:first-child img{object-position:50% 43%}.button{background:#4e5a3e;border-color:#4e5a3e;border-radius:2px}.button:hover{background:#65704f}.living-journal{display:grid;grid-template-columns:1.05fr .25fr 1fr;gap:28px;margin:100px 0 60px;align-items:start}.living-journal figure{margin:0;overflow:hidden}.living-journal img{width:100%;object-fit:cover}.living-journal figcaption,.people-collage figcaption,.quiet-triptych figcaption{font-size:13px;letter-spacing:.04em;margin-top:15px;color:#72674f}.journal-tall{grid-column:1;grid-row:1/3}.journal-tall img{height:720px}.journal-small{grid-column:3}.journal-small img{height:440px}.journal-words{grid-column:3;padding:25px 0}.journal-words p{font:400 clamp(28px,3vw,43px)/1.8 'Noto Serif JP',serif;margin:0 0 20px}.journal-wide{grid-column:1/-1;margin-top:30px!important}.journal-wide img{max-height:660px;object-position:center 56%;aspect-ratio:1.85}.grid-gallery{gap:22px}.grid-gallery img{height:290px}.quiet-triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:60px 0}.quiet-triptych figure{margin:0}.quiet-triptych img{width:100%;height:280px;object-fit:cover}.quiet-triptych figure:nth-child(2){padding-top:60px}.murabito{background:#e7e3d4}.people-collage{display:grid;grid-template-columns:1.6fr 1fr;gap:8%;margin:65px 0 80px;align-items:center}.people-collage figure{margin:0}.people-main img{width:100%;height:520px;object-fit:cover}.people-detail{transform:rotate(3deg);padding:12px 12px 20px;background:#f8f4e9;box-shadow:0 10px 35px #31322416}.people-detail img{width:100%;height:430px;object-fit:cover}.people-detail figcaption{text-align:center;font-family:'Noto Serif JP',serif}.steps{gap:35px}.care .quote{font-size:36px}.photo-closing{position:relative;isolation:isolate;overflow:hidden;min-height:650px;display:flex;flex-direction:column;align-items:center;justify-content:center}.closing-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;object-position:center 40%}.photo-closing:before{content:'';position:absolute;inset:0;background:#14261b99;z-index:-1}.photo-closing h2{font-size:clamp(36px,4.5vw,62px);letter-spacing:.09em}.photo-closing>p{font-size:15px}.fund-hero{grid-template-columns:1.1fr 1fr}.fund-hero>img{object-position:center}.fund-intro{background:#303e2e}.fund-intro h1{font-size:clamp(36px,4vw,56px)}.support-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:0 8%}.support-photo-pair img{height:440px;width:100%;object-fit:cover}.support-photo-pair img:first-child{object-position:center 60%}.reward{background:#f8f5ed;padding:36px;border-color:#d2c9b7}.reward:last-child{background:#303e2e}.status{background:#e8e1d3}.reveal-ready{opacity:0;transform:translateY(32px);transition:opacity 1.15s ease,transform 1.15s cubic-bezier(.2,.7,.2,1)}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}.reveal-ready.people-detail{transform:translateY(32px) rotate(3deg)}.reveal-ready.people-detail.is-visible{transform:translateY(0) rotate(3deg)}@media(min-width:801px){.cinematic .hero-content{animation:enter 1.5s ease both}@keyframes enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}}@media(max-width:800px){header{height:76px}.cinematic{min-height:650px;max-height:none;height:calc(100svh - 76px)}.hero h1{font-size:clamp(48px,11vw,74px)}.hero p{font-size:16px}.hero-slide{object-position:57% center}.hero-content{padding:40px 7% 110px}.hero-bottom{right:7%;gap:10px;align-items:end}.hero-bottom>span:first-child{font-size:10px;line-height:1.8;display:block!important}.hero-bottom .thai{font-size:11px}.slide-controls{gap:6px}.slide-controls button{min-width:29px}.section{padding-top:80px;padding-bottom:80px}.intro .bigword{font-size:56px;margin-bottom:42px}.intro .tall{height:430px}.values{margin-top:45px;gap:30px}.lake-film{height:105svh;min-height:720px}.film-sticky{height:90svh;min-height:600px}.film-copy h2{font-size:36px}.film-copy p{font-size:14px}.dark .section{padding-top:80px}.compare img{height:300px}.living-journal{grid-template-columns:1fr 1fr;gap:17px;margin-top:65px}.journal-tall{grid-column:1;grid-row:1/3}.journal-tall img{height:455px}.journal-small{grid-column:2}.journal-small img{height:275px}.journal-words{grid-column:2;padding:10px 0}.journal-words p{font-size:23px}.journal-words .overline{font-size:10px;margin-bottom:10px;letter-spacing:.05em}.journal-words .thai{font-size:12px}.living-journal figcaption{font-size:11px;line-height:1.8}.journal-wide img{aspect-ratio:1.15;max-height:none}.grid-gallery img{height:220px}.quiet-triptych{gap:12px;margin:45px 0}.quiet-triptych img{height:185px}.quiet-triptych figcaption{font-size:11px}.quiet-triptych figure:nth-child(2){padding-top:30px}.people-collage{grid-template-columns:1fr 1fr;gap:22px;margin:45px 0}.people-main{grid-column:1/-1}.people-main img{height:400px}.people-detail{grid-column:2;margin-top:-85px!important;z-index:1;transform:rotate(3deg)}.people-detail img{height:210px}.people-detail figcaption{font-size:11px}.steps{margin-top:40px;gap:25px}.care .quote{font-size:27px}.photo-closing{min-height:580px;padding:70px 7%}.photo-closing h2{font-size:36px}.fund-hero{grid-template-columns:1fr}.fund-hero>img{height:390px;min-height:0}.support-photo-pair{padding:0 7%;gap:12px}.support-photo-pair img{height:300px}.reveal-ready{transform:translateY(22px)}}@media(prefers-reduced-motion:reduce){.hero-slide{transition:none;transform:none}.reveal-ready{opacity:1;transform:none;transition:none}.reveal-ready.people-detail{transform:rotate(3deg)}.film-sticky>img{will-change:auto}.cinematic .hero-content{animation:none}}
/* Shared life: expansive landscapes and intimate moments. */
.shared-table{display:grid;grid-template-columns:1fr 1fr;background:#e1d7bd;min-height:760px}.table-picture{position:relative;min-height:760px;overflow:hidden}.table-picture img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 48%}.photo-tag{position:absolute;bottom:28px;left:30px;color:white;font-size:12px;letter-spacing:.13em;background:#283324b0;padding:10px 15px}.table-story{padding:90px 13%;align-self:center}.table-story h2{font:400 clamp(30px,3.4vw,48px)/1.75 'Noto Serif JP',serif;letter-spacing:.04em}.table-story p{line-height:2.35;font-size:15px}.table-last{border-top:1px solid #9d917655;margin-top:30px;padding-top:25px;font-family:'Noto Serif JP',serif}.gathering-panorama{background:#303e2e;color:#fff;padding:0 0 90px}.panorama-photo{overflow:hidden}.panorama-photo img{width:100%;height:min(78vw,750px);object-fit:cover;object-position:center 55%}.panorama-caption{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:45px 8% 0}.panorama-caption p{font:400 clamp(22px,2.3vw,33px)/1.9 'Noto Serif JP',serif;margin:0}.panorama-caption .overline{color:#d3c7a8;max-width:170px;line-height:1.8}.panorama-caption .thai{font-size:14px;color:#d3c7a8}.moments{padding-top:110px}.moments-mosaic{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px 26px;align-items:start}.moments-mosaic figure{margin:0;overflow:hidden}.moments-mosaic img{width:100%;height:360px;object-fit:cover;transition:transform 1.4s cubic-bezier(.2,.65,.2,1)}.moments-mosaic figure:nth-child(1){grid-column:1/3}.moments-mosaic figure:nth-child(1) img{height:550px;object-position:center 55%}.moments-mosaic figure:nth-child(2){padding-top:90px}.moments-mosaic figure:nth-child(2) img{height:460px}.moments-mosaic figure:nth-child(4){padding-top:60px}.moments-mosaic figure:nth-child(5){padding-top:120px}.moments-mosaic figcaption{font-size:13px;padding-top:17px;color:#71664e;position:relative;background:var(--paper)}.expanded-pair img{height:420px}.hero-slide:first-child{object-position:center 60%}.hero-slide:nth-child(3){object-position:center 50%}@media(hover:hover){.moments-mosaic figure:hover img{transform:scale(1.025)}}@media(max-width:800px){.shared-table{grid-template-columns:1fr}.table-picture{min-height:550px}.table-story{padding:45px 7% 65px}.table-story h2{font-size:32px}.panorama-photo img{height:460px;object-position:50% center}.panorama-caption{display:block;padding:30px 7% 0}.panorama-caption .overline{max-width:none;font-size:11px}.panorama-caption p{font-size:24px}.panorama-caption .thai{display:block;margin-top:20px}.gathering-panorama{padding-bottom:30px}.moments-mosaic{grid-template-columns:1fr 1fr;gap:25px 15px}.moments-mosaic figure:nth-child(1){grid-column:1/-1}.moments-mosaic figure:nth-child(1) img{height:370px}.moments-mosaic figure:nth-child(2){padding-top:0}.moments-mosaic figure:nth-child(2) img{height:300px}.moments-mosaic figure:nth-child(3){padding-top:50px}.moments-mosaic figure:nth-child(4){padding-top:0}.moments-mosaic figure:nth-child(5){padding-top:50px}.moments-mosaic img{height:250px}.moments-mosaic figcaption{font-size:12px;line-height:1.9}.expanded-pair img{height:280px}}@media(prefers-reduced-motion:reduce){.moments-mosaic img{transition:none}.moments-mosaic figure:hover img{transform:none}}
/* Keep text in normal flow across narrow screens and enlarged text. */
header{height:auto;min-height:86px;padding-top:18px;padding-bottom:18px;flex-wrap:wrap}header nav{flex-wrap:wrap;row-gap:12px}.brand{flex-shrink:0}.split>*,.section-head>*,.project-bottom>*,.strip>*,.fund-hero>*,.panorama-caption>*,.living-journal>*,.people-collage>*{min-width:0}h1,h2,h3,p,li,figcaption,summary,.button{overflow-wrap:anywhere;word-break:normal}h1,h2,h3{line-height:1.75}.cinematic{height:auto;min-height:calc(100svh - 86px);max-height:none;display:flex;flex-direction:column;align-items:stretch;justify-content:center}.cinematic .hero-content{width:100%;padding-top:65px;padding-bottom:50px;flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.cinematic .hero-bottom{position:relative;left:auto;right:auto;bottom:auto;margin:0;padding:20px 7% 32px 9%;width:100%;flex-wrap:wrap;gap:24px}.cinematic .hero-bottom>span{display:block}.cinematic .hero-bottom .thai{display:block;line-height:1.9}.hero-link{max-width:100%}.hero h1{margin-bottom:22px;line-height:1.5}.hero-bottom .slide-controls{flex-shrink:0}.caption{flex-wrap:wrap;gap:8px}.amount,.stay-price,.reward h3{line-height:1.5;overflow-wrap:anywhere}.reward h3 small{display:inline-block}.button{white-space:normal;text-align:center;line-height:1.8;min-height:48px}.people-collage{align-items:start}.people-detail,.reveal-ready.people-detail,.reveal-ready.people-detail.is-visible{transform:none;margin-top:0!important}.people-detail figcaption{line-height:1.9}.journal-words p{line-height:1.9}.photo-tag{right:20px;max-width:calc(100% - 50px);line-height:1.8}.panorama-caption{flex-wrap:wrap}.photo-closing{height:auto}.modal{max-height:calc(100svh - 40px);overflow-y:auto}.modal h2{line-height:1.8;padding-right:20px}@media(max-width:1050px){header{justify-content:center}header nav{justify-content:center}.brand{text-align:center}.section-head{align-items:start;flex-wrap:wrap}.panorama-caption .overline{max-width:none}.people-detail img{height:340px}}@media(max-width:800px){header{min-height:76px;justify-content:space-between;padding:15px 6%;gap:16px}.brand{font-size:17px;text-align:left;letter-spacing:.12em}.brand small{font-size:10px;line-height:1.9;letter-spacing:.1em}header nav{margin-left:auto}.cinematic{min-height:690px}.cinematic .hero-content{padding:55px 7% 35px}.cinematic .hero-bottom{padding:20px 7% 28px;gap:22px}.cinematic .hero-bottom .thai{display:block!important}.people-collage{grid-template-columns:1fr;gap:28px}.people-main,.people-detail{grid-column:1}.people-detail{width:76%;justify-self:end}.people-detail img{height:320px}.people-main img{height:auto;aspect-ratio:1.3}.living-journal{grid-template-columns:1fr 1fr}.journal-tall{grid-column:1;grid-row:1}.journal-tall img{height:330px}.journal-small{grid-column:2;grid-row:1}.journal-small img{height:330px}.journal-words{grid-column:1/-1;grid-row:auto;padding:20px 0}.journal-words p br{display:none}.journal-wide{margin-top:0!important}.section h2{line-height:1.85}.quiet-triptych figcaption,.moments-mosaic figcaption{line-height:2}.film-copy h2{line-height:1.8}}@media(max-width:380px){header{justify-content:center}.brand{text-align:center}header nav{margin:0}.hero h1{font-size:44px}.steps{grid-template-columns:1fr}.strip{flex-direction:column}.slide-controls{gap:12px}}

.intro .journey-video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;border-radius:4px;background:#1c261b;max-height:780px}.intro figure:has(.journey-video){width:100%;max-width:440px;justify-self:center}@media(max-width:800px){.intro .journey-video{max-height:none}.intro figure:has(.journey-video){max-width:440px}}
.person-note{border-top:1px solid var(--line);margin-top:32px;padding-top:22px}.person-note h3{font-size:21px;margin-bottom:4px}.person-note>span{font-size:13px}.person-note p{font-size:15px}.people-story img{width:100%;height:540px;object-fit:cover}.repair-path{margin-top:50px;padding-top:35px;border-top:1px solid #9ca58c70}.repair-path h3,.lake-day h3,.dao-invitation h3{font:400 clamp(25px,2.8vw,37px)/1.8 'Noto Serif JP',serif}.repair-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:35px 0}.repair-grid p{font-size:14px}.repair-grid b{font-size:17px}.lake-day{padding:40px 0 0;margin-top:45px;border-top:1px solid var(--line)}.day-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.day-grid span{font-size:12px;color:#776a50}.day-grid h4{font-size:17px;line-height:1.9}.day-grid p{font-size:14px}.dao-invitation{margin-top:55px;background:#f4f0e6;padding:45px}.dao-invitation p{max-width:760px}.dao-invitation ul{line-height:2.4;padding-left:24px}.dao-invitation .button{margin-top:20px}.repair-support{padding-bottom:0}.repair-support .repair-path{margin-top:0}.swipe-hint{display:none}@media(max-width:800px){.people-story img{height:auto}.repair-grid,.day-grid{grid-template-columns:1fr 1fr;gap:25px}.repair-grid article:last-child{grid-column:1/-1}.dao-invitation{padding:28px 22px}.dao-invitation ul{font-size:15px}.swipe-hint{display:block;font-size:12px!important;color:#776a50}.moments-mosaic{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;padding:0 0 20px}.moments-mosaic figure,.moments-mosaic figure:nth-child(n){flex:0 0 84%;padding:0;scroll-snap-align:start}.moments-mosaic figure img,.moments-mosaic figure:nth-child(n) img{height:380px;object-fit:cover}.moments-mosaic figcaption{min-height:56px}.living-journal{margin-top:45px}.quiet-triptych{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.quiet-triptych figure,.quiet-triptych figure:nth-child(2){flex:0 0 78%;padding-top:0;scroll-snap-align:start}.quiet-triptych img{height:270px}}@media(max-width:380px){.day-grid,.repair-grid{grid-template-columns:1fr}}

.murabito-stay{margin-top:55px;border-top:1px solid var(--line);padding-top:35px}.murabito-stay h3{font:400 clamp(25px,2.8vw,37px)/1.8 "Noto Serif JP",serif}.murabito-stay .day-grid{grid-template-columns:repeat(3,1fr)}@media(max-width:800px){.murabito-stay .day-grid{grid-template-columns:1fr;gap:12px}}

.membership-intro,.dao-explained{margin-top:50px;padding:35px 0;border-top:1px solid var(--line)}.membership-intro h3,.dao-explained h3{font:400 clamp(25px,2.8vw,37px)/1.8 "Noto Serif JP",serif}.membership-intro strong{font-size:21px;line-height:1.9}.dao-explained p,.membership-intro p{max-width:820px;overflow-wrap:anywhere}@media(max-width:800px){.membership-intro strong{font-size:19px}}

.owner-layout{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.owner-layout figure{margin:0;position:sticky;top:35px}.owner-layout img{width:100%;height:auto;display:block;border-radius:3px}.owner-layout figcaption{font-size:13px;line-height:1.9;margin-top:15px;color:#776a50}.owner-words p{margin:0 0 25px;line-height:2.25}.owner-words blockquote{margin:30px 0;padding:20px 0 20px 24px;border-left:2px solid #aa9368;font:400 clamp(22px,2.3vw,30px)/1.95 "Noto Serif JP",serif;overflow-wrap:anywhere}@media(max-width:800px){.owner-layout{grid-template-columns:1fr;gap:35px}.owner-layout figure{position:static}.owner-words blockquote{padding-left:18px;font-size:24px}.owner-words p{font-size:16px}}

.people-collage{grid-template-columns:1fr}.people-collage .people-main{max-width:950px;width:100%;margin:0 auto}.people-collage .people-main img{height:auto}
.path-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:40px 0}.path-grid article{background:#e8e1d3}.path-grid article:nth-child(2){background:#dce4d5}.path-grid img{width:100%;height:370px;object-fit:cover}.path-copy{padding:35px}.path-copy h3{font:400 30px/1.8 'Noto Serif JP',serif}.path-copy .button{width:100%;margin-top:15px}.comparison-scroll{overflow-x:auto}.compare-options{border-collapse:collapse;width:100%;min-width:590px}.compare-options caption{text-align:left;font-size:21px;margin:25px 0}.compare-options th,.compare-options td{text-align:left;padding:18px;border-bottom:1px solid var(--line);font-size:14px}.compare-options thead{background:#e8e1d3}.member-hero{display:grid;grid-template-columns:1.1fr 1fr;background:#dce4d5}.member-hero>div:first-child img{width:100%;height:100%;min-height:650px;object-fit:cover}.member-lead{padding:65px 10%}.member-lead h1{font:400 clamp(35px,4vw,58px)/1.7 'Noto Serif JP',serif}.membership-price{font:50px/1.5 Georgia,serif}.membership-price small{font:16px sans-serif}.member-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.member-benefits img{height:330px;width:100%;object-fit:cover}.member-benefits h3{font:400 23px/1.8 'Noto Serif JP',serif}.member-benefits p{font-size:15px}.dao-page{background:#e8e1d3;max-width:none}.dao-page figure img{width:100%;max-height:570px;object-fit:cover}.member-scenes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:55px}.member-scenes img{width:100%;height:350px;object-fit:cover}.fund-label{color:#edd6a4}.expanded-pair img:last-child:nth-child(odd){grid-column:1/-1;max-height:380px}.two-ways{scroll-margin-top:30px}@media(max-width:800px){.path-grid,.member-hero,.member-benefits{grid-template-columns:1fr}.path-grid img{height:310px}.path-copy{padding:25px}.path-copy h3{font-size:27px}.member-hero>div:first-child img{min-height:0;height:370px}.member-lead{padding:40px 7%}.member-benefits{gap:40px}.member-benefits img{height:380px}.member-scenes{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.member-scenes img{flex:0 0 82%;width:82%;height:350px;scroll-snap-align:start}header nav>a[href='/murabito/']{display:inline;font-size:12px}header{justify-content:center}header nav{margin:0}.compare-options th,.compare-options td{padding:12px}.expanded-pair img:last-child:nth-child(odd){grid-column:auto}}
.quick-windows{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:16px 5% 20px;background:var(--paper);width:100%}.quick-windows a{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:76px;padding:12px 5px;border:1px solid #c9c2b0;background:#ece7db;color:#394034;font-size:14px;text-align:center;line-height:1.7;transition:background .2s}.quick-windows a:nth-child(4){background:#dce4d5}.quick-windows a:nth-child(5){background:#e4d7b8}.quick-windows a:hover{background:#d5d8c7}.quick-windows span{font:11px Georgia,serif;letter-spacing:.12em}.food-options{margin-top:30px;padding-top:25px;border-top:1px solid #9d917655}.food-options h3{font:400 26px/1.8 'Noto Serif JP',serif}.food-options ul{padding-left:22px;font-size:15px;line-height:2}.food-options li{margin:14px 0}.contact-section{background:#e8e1d3;max-width:none}.contact-section h2{font-size:34px}@media(max-width:800px){.quick-windows{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 6% 18px}.quick-windows a{min-height:70px;font-size:13px;padding:10px 4px}.quick-windows span{font-size:10px}.food-options h3{font-size:24px}.table-story{padding-left:7%;padding-right:7%}}
header{justify-content:space-between;flex-wrap:nowrap;position:relative;z-index:20;gap:20px}header .brand{text-align:left}header .site-menu{border:0;margin:0;padding:0;position:relative;flex-shrink:0}header .site-menu summary{display:flex;align-items:center;gap:18px;list-style:none;padding:12px 18px;border:1px solid #b8b5a3;background:#e7e3d4;font-size:15px;min-height:48px}header .site-menu summary::-webkit-details-marker{display:none}header .site-menu nav{position:absolute;right:0;top:calc(100% + 10px);width:265px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;align-items:stretch;gap:0;padding:12px;background:#f4f0e6;border:1px solid #c9c2b0;box-shadow:0 16px 40px #15271926}header .site-menu nav>a{display:block!important;padding:13px 16px;font-size:15px!important;border-bottom:1px solid #ded8cb;line-height:1.8}header .site-menu nav>a:last-child{border:0}header .site-menu nav>a:hover{background:#e0e6d6}header .site-menu[open] summary{background:#303e2e;color:#fff}@media(max-width:800px){header{padding:15px 6%;justify-content:space-between}.brand{max-width:calc(100% - 112px);font-size:16px;overflow-wrap:anywhere}.brand small{font-size:9px}header .site-menu summary{gap:10px;padding:10px 13px;font-size:14px}.owner-layout figure{position:static}}
.support-photo-pair figure{margin:0;min-width:0}.support-photo-pair figure img{height:420px;width:100%;object-fit:cover}.support-photo-pair figcaption{font-size:13px;line-height:1.9;padding-top:14px;color:#776a50}@media(max-width:800px){.support-photo-pair{grid-template-columns:1fr}.support-photo-pair figure img{height:330px}.support-photo-pair figure{margin-bottom:18px}}
.legacy-note{max-width:850px;font-size:16px;line-height:2.2;margin-bottom:35px}.legacy-note .linkline{display:inline;font-size:14px}.access-section iframe{display:block;width:100%;border-radius:3px}.ticket-validity{font-size:13px!important;line-height:1.8!important;border-top:1px solid #b4b99e66;padding-top:16px}.group-inquiry{background:#e8e1d3}.group-inquiry h2{font-size:30px}@media(max-width:800px){.access-section iframe{height:340px}}
.contact-phone{margin:30px 0;padding:25px 0;border-top:1px solid var(--line)}.contact-phone>a{font:clamp(25px,4vw,40px)/1.6 Georgia,serif;border-bottom:1px solid}.contact-phone p{font-size:16px}.contact-phone p a{text-decoration:underline}

/* Language navigation and readable reference prices. */
header .header-actions{display:flex;align-items:center;gap:20px;flex-shrink:0}header .language-picker{display:flex;gap:3px;margin:0;padding:0}header .language-picker a{display:block!important;font:13px/1.5 sans-serif;padding:9px 10px;white-space:nowrap}header .language-picker a[aria-current]{background:#344534;color:#fff;border-radius:3px}.currency-inline{padding:10px 6%;margin:0;font-size:12px;background:#e9e4d8;color:#59604f;line-height:1.8}.currency-notice{padding:28px 6%;background:#e9e4d8;font-size:12px;line-height:1.9}.currency-notice p{max-width:980px;margin:0 0 8px}.currency-notice a{text-decoration:underline}.minimum-stay{margin:28px 0;padding:22px;border-left:2px solid #9c875d;background:#abb89b18;line-height:1.9}.minimum-stay p{font-size:14px;margin:12px 0 0}.stay-price,.membership-price,.reward h3{font-size:clamp(24px,3vw,42px);overflow-wrap:anywhere;line-height:1.5}html[lang=en] h1,html[lang=th] h1{line-height:1.3;overflow-wrap:anywhere}html[lang=th] body{line-height:1.9}html[lang=th] h1,html[lang=th] h2,html[lang=th] h3{letter-spacing:0}html[lang=en] .hero h1,html[lang=th] .hero h1{font-size:clamp(34px,5vw,72px)}@media(max-width:800px){header{align-items:flex-start;gap:8px}header .brand{max-width:46%;font-size:15px}header .header-actions{flex-direction:column;align-items:flex-end;gap:8px}header .language-picker{gap:0}header .language-picker a{font-size:11px;padding:7px 6px}.currency-inline{font-size:11px}.minimum-stay{padding:18px}html[lang=en] .hero h1,html[lang=th] .hero h1{font-size:36px}.membership-price,.stay-price{font-size:28px}}

/* Let the aerial photograph carry the opening story. */
.hero.aerial-hero{height:auto;min-height:0;max-height:none;aspect-ratio:16/9;display:flex;flex-direction:column;justify-content:space-between}.aerial-hero .hero-slide{filter:none;object-position:50% 50%;transform:none}.aerial-hero .hero-slide.active{transform:none}.aerial-hero:after{background:linear-gradient(180deg,rgba(13,29,25,.35),transparent 52%,rgba(13,29,25,.12));pointer-events:none}.cinematic.aerial-hero .hero-content{flex:0;padding:4% 6% 0;justify-content:flex-start}.aerial-hero h1{font-size:clamp(36px,4.8vw,72px);line-height:1.35;letter-spacing:.08em;margin:12px 0}.aerial-hero .eyebrow{font-size:12px}.aerial-hero p{font-size:15px;margin:0;line-height:1.9}.aerial-hero .hero-link{font-size:13px;padding:8px 0;margin-top:8px}.cinematic.aerial-hero .hero-bottom{padding:18px 6%;position:relative}.aerial-hero .hero-bottom .thai{display:none!important}@media(max-width:800px){.hero.aerial-hero{aspect-ratio:auto;background:#ece7db;color:#344534;display:block}.aerial-hero .hero-slides{position:relative;inset:auto;width:100%;aspect-ratio:16/9}.aerial-hero:after{display:none}.cinematic.aerial-hero .hero-content{padding:25px 7% 12px;animation:none}.aerial-hero h1,html[lang=en] .aerial-hero h1,html[lang=th] .aerial-hero h1{font-size:34px;line-height:1.4;text-shadow:none;margin:8px 0 12px}.aerial-hero h1 br{display:none}.aerial-hero p{font-size:14px}.aerial-hero .hero-link{border-color:#75816a;gap:30px}.cinematic.aerial-hero .hero-bottom{padding:12px 7% 22px;gap:12px}.aerial-hero .slide-controls button{color:#344534;border-color:#8b957e}.aerial-hero .slide-controls button[aria-pressed=true]{background:#344534;color:#fff}}

/* Editorial spacing shared by the three language editions. */
:root{--reading-width:42rem;--section-space:clamp(64px,7vw,112px)}
header{height:auto;min-height:90px;padding-top:14px;padding-bottom:14px}
.section{padding-top:var(--section-space);padding-bottom:var(--section-space)}
.section p,.member-lead p,.fund-intro p{line-height:1.95;margin-top:0;margin-bottom:1.35em;max-width:var(--reading-width);overflow-wrap:break-word}
.section h2{line-height:1.5;margin-bottom:26px;letter-spacing:.025em;text-wrap:balance}
h3{line-height:1.55;text-wrap:balance}p{word-break:normal}h2+p,h3+p{margin-top:0}
.overline{font-size:12px;line-height:1.8;letter-spacing:.15em;margin-bottom:16px}
.split{gap:clamp(32px,6vw,92px);align-items:start}.split>*,.member-lead,.fund-intro,.reward{min-width:0}
.intro .bigword{font-size:clamp(48px,7vw,108px);margin-bottom:40px;line-height:1.12}
.intro .split>figure{align-self:center}.legacy-note{font-size:14px;line-height:1.95!important;padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:25px!important}
.caption{align-items:flex-start;gap:16px;line-height:1.7;margin-top:14px;letter-spacing:.025em}.caption>span:last-child{flex-shrink:0;font-size:10px}
.values{margin-top:52px;gap:36px}.values h3{margin:18px 0 14px}.values p{margin-bottom:0}
.compare figcaption{line-height:1.85}.compare figcaption strong{display:block;margin-bottom:8px}
.minimum-stay{margin:24px 0;padding:20px 22px}.minimum-stay strong{font-weight:500;font-size:16px}.minimum-stay p{margin:12px 0 0!important;font-size:13px;line-height:1.85!important}
.stay-price,.membership-price,.amount,.project-bottom b{display:block;font-size:clamp(26px,3.1vw,44px);line-height:1.5;overflow-wrap:anywhere;margin:12px 0 16px}
.reward h3{font-size:clamp(24px,2.4vw,34px);line-height:1.5}.reward h3 small{display:block;margin-top:5px}.reward{padding:28px}.reward li{margin-bottom:9px;line-height:1.8}.reward .button{gap:12px;text-align:center;line-height:1.65}
.member-benefits{gap:32px}.member-benefits h3{margin:20px 0 14px}.member-benefits img{height:auto;aspect-ratio:4/3;object-fit:cover}
.owner-words p{line-height:2!important;margin-bottom:24px!important}.owner-words blockquote{margin:32px 0;line-height:1.7}
.section .note{font-size:12px;line-height:1.85}.section-head{align-items:start}.section-head p{margin-bottom:0}
.button{min-height:48px;line-height:1.7;text-align:center}.ticket-validity{line-height:1.8!important}
html[lang=en] .section p{line-height:1.8}html[lang=th] .section p{line-height:1.95}html[lang=th] h2,html[lang=th] h3{font-family:'Noto Sans Thai',sans-serif;line-height:1.65}
@media(max-width:800px){
 header{min-height:100px;padding:14px 6%}.section{padding-left:7%;padding-right:7%}.section h2{font-size:29px;line-height:1.6;margin-bottom:24px}.section p{font-size:15px;line-height:1.95}
 .split{gap:30px}.intro .bigword{font-size:46px;margin-bottom:30px;letter-spacing:0}.legacy-note{font-size:13px!important}.values{gap:30px;margin-top:40px}.values article{padding-top:22px}.values h3{font-size:23px}
 .caption{flex-wrap:wrap;gap:5px 18px;font-size:12px}.caption>span:last-child{margin-left:auto}.compare{gap:28px}.compare img{height:auto;aspect-ratio:4/3}.compare .plan{aspect-ratio:4/3}.compare figcaption{padding-top:13px;font-size:13px}
 .member-lead,.fund-intro{padding:36px 7%}.member-lead h1,.fund-intro h1{font-size:32px;line-height:1.55}.member-scenes{margin-bottom:35px}.member-scenes img{height:290px}.member-benefits img{height:auto;aspect-ratio:4/3}.member-benefits{gap:32px}
 .rewards{gap:20px}.reward{padding:25px}.reward h3{font-size:30px}.steps{gap:28px}.steps h3{margin:12px 0}.steps p{font-size:14px}.minimum-stay strong{font-size:15px}.minimum-stay p{font-size:13px}
 .owner-words p{font-size:15px;line-height:2!important}.owner-words blockquote{font-size:23px;padding:16px 0 16px 18px}.owner-layout{gap:28px}.project-bottom{gap:24px}.project-bottom b{font-size:32px}
 .contact-section h2,.group-inquiry h2{font-size:28px}.closing{padding:64px 7%}.closing h2{font-size:29px}.strip{padding:18px 7%;line-height:1.8;font-size:12px;flex-wrap:wrap;gap:6px}
 .cinematic.aerial-hero .hero-content{padding-top:28px}.aerial-hero .eyebrow{margin-bottom:10px}.aerial-hero h1{margin-bottom:16px}.aerial-hero .hero-link{margin-top:14px}.cinematic.aerial-hero .hero-bottom{padding-bottom:25px}
}
@media(min-width:801px){.owner-layout{align-items:start}.owner-layout figure{position:sticky;top:30px}.reward .button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Cinematic opening, with a bounded reading area on small screens. */
.hero.aerial-hero{position:relative;isolation:isolate;min-height:680px;aspect-ratio:auto;height:calc(100svh - 100px);max-height:1000px;background:#183c34;color:#fff;overflow:hidden}
.aerial-hero .hero-slides{position:absolute;inset:0;aspect-ratio:auto;height:100%;width:100%;z-index:-2}
.aerial-hero .hero-slide{object-fit:cover;object-position:45% 62%;transform:scale(1.055);transition:opacity 2.4s ease,transform 10s linear}
.aerial-hero .hero-slide.active{transform:scale(1)}
.aerial-hero:after{display:block;z-index:-1;inset:0;background:linear-gradient(180deg,#0b241c66,transparent 58%,#0b241c99)}
.cinematic.aerial-hero .hero-content{padding:48px 7% 20px;animation:none;justify-content:flex-start;flex:1}
.aerial-hero h1{font-size:clamp(44px,6vw,86px);line-height:1.35;text-shadow:0 2px 26px #09231e40}
.aerial-hero h1 br{display:block}.aerial-hero p{max-width:32rem;text-shadow:0 1px 12px #09231e80}.aerial-hero .hero-link{border-color:#ffffff99}
.aerial-hero .hero-content>*{animation:saijai-arrive 1.35s cubic-bezier(.16,1,.3,1) both}
.aerial-hero .hero-content>.eyebrow{animation-delay:.1s}.aerial-hero .hero-content>h1{animation-delay:.3s}.aerial-hero .hero-content>p{animation-delay:.55s}.aerial-hero .hero-content>.hero-link{animation-delay:.8s}
@keyframes saijai-arrive{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.aerial-hero .slide-controls button{color:white;border-color:#ffffff80}.aerial-hero .slide-controls button[aria-pressed=true]{background:#fff;color:#183c34}
@media(max-width:800px){
 .hero.aerial-hero{display:flex;min-height:620px;height:auto;max-height:none;justify-content:space-between;background:#16382e}
 .aerial-hero .hero-slides{height:480px;inset:0 0 auto;width:100%}.aerial-hero .hero-slide{object-position:45% 58%}.aerial-hero:after{background:linear-gradient(180deg,#102c2366 0%,#102c2314 44%,#16382e00 58%,#16382e 78%)}
 .cinematic.aerial-hero .hero-content{padding:30px 7% 0;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto 1fr auto auto;align-content:start;align-items:start;min-height:558px;flex:none}
 .aerial-hero .hero-content>.eyebrow{font-size:11px;margin:0 0 12px;grid-row:1}.aerial-hero h1,html[lang=en] .aerial-hero h1,html[lang=th] .aerial-hero h1{font-size:clamp(34px,10vw,46px);line-height:1.38;letter-spacing:.03em;margin:0;grid-row:2;max-width:100%}
 .aerial-hero .hero-content>p{grid-row:4;font-size:14px;line-height:1.95;margin:280px 0 0;max-width:100%;text-shadow:none}.aerial-hero .hero-link{grid-row:5;justify-self:start;font-size:13px;margin-top:14px;padding:9px 0}
 .cinematic.aerial-hero .hero-bottom{padding:20px 7% 24px;align-items:center;gap:12px}.aerial-hero .hero-bottom>span{letter-spacing:.05em}
 header{gap:10px;min-height:96px}.brand small{letter-spacing:.08em;line-height:1.6}header .brand{flex:1;max-width:none;min-width:0;font-size:14px;letter-spacing:.1em}header .header-actions{flex:0 0 auto}
 .section p,.owner-words p,.member-lead p,.fund-intro p{word-break:normal;overflow-wrap:break-word;text-align:start;letter-spacing:.01em;text-indent:0}
 .section h2,.section h3{overflow-wrap:break-word;word-break:normal;text-wrap:pretty}.section h2 br{display:none}
 .section-head,.project-bottom{flex-direction:column;align-items:stretch}.section-head>*,.project-bottom>*{width:100%;max-width:100%}
 .steps,.repair-grid,.day-grid{grid-template-columns:minmax(0,1fr)}.steps article,.repair-grid article,.day-grid article{min-width:0}
 .split,.path-grid,.member-benefits,.owner-layout,.compare,.rewards{grid-template-columns:minmax(0,1fr)}
 .section figure{max-width:100%;min-width:0}.section img,.journey-video{max-width:100%}.caption{letter-spacing:0}.caption>span{min-width:0}
 .amount,.membership-price,.stay-price,.project-bottom b{font-size:28px;line-height:1.6;overflow-wrap:anywhere}.button{max-width:100%;white-space:normal}
 html[lang=th] .aerial-hero h1{line-height:1.6}html[lang=en] .aerial-hero h1{letter-spacing:0}
}
@media(prefers-reduced-motion:reduce){.aerial-hero .hero-content>*{animation:none}.aerial-hero .hero-slide,.aerial-hero .hero-slide.active{transform:none;transition:none}}
/* A family learning story, led by real moments on the lake. */
.world-hero{display:grid;grid-template-columns:1.1fr 1fr;background:#e6e4d5;align-items:center}.world-hero figure{margin:0;overflow:hidden}.world-hero figure img{width:100%;height:min(850px,90svh);min-height:620px;object-fit:cover;object-position:50% 65%}.world-hero>div{padding:60px 12%}.world-hero h1{font:400 clamp(38px,4.6vw,68px)/1.5 'Noto Serif JP',serif;letter-spacing:.03em;margin:18px 0 24px}.world-hero h2{font-size:20px;font-weight:400;line-height:1.8}.world-hero p{font-size:16px;line-height:2;margin:20px 0 30px}.world-hero>div>*{animation:saijai-arrive 1.4s ease both}.world-hero h1{animation-delay:.15s}.world-hero p{animation-delay:.35s}.world-intro{max-width:1040px}.world-intro p{max-width:none}.world-vision{padding:26px 30px;border-left:2px solid #9c875d;background:#e9e6da;margin-top:35px}.world-vision p:last-child{margin-bottom:0}.world-discover{background:#233f33;color:#f4f0e6;max-width:none}.world-discover .overline{color:#d4c599}.world-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:36px}.world-cards article{border-top:1px solid #9aab9270;padding-top:24px}.world-cards h3{font:400 25px/1.65 'Noto Serif JP',serif;margin:12px 0 20px}.world-cards p{font-size:15px}.world-paths,.world-teaser{background:#e7e9dc}.world-teaser figure,.world-paths figure{margin:0}.world-teaser img{width:100%;max-height:550px;object-fit:cover;object-position:50% 75%}.film-copy{max-width:1150px}.film-copy h2{letter-spacing:.04em;line-height:1.5;text-wrap:balance}.film-copy p{max-width:700px;margin:22px auto;line-height:2}.film-copy>.thai{margin-top:20px}
@media(max-width:800px){.world-hero{grid-template-columns:minmax(0,1fr)}.world-hero figure img{height:auto;min-height:0;max-height:none;aspect-ratio:4/5;object-fit:cover;object-position:50% 68%}.world-hero>div{padding:34px 7% 44px}.world-hero h1{font-size:36px;line-height:1.55;margin:14px 0 20px}.world-hero h2{font-size:19px}.world-hero p{font-size:15px;line-height:1.95}.world-cards{grid-template-columns:minmax(0,1fr);gap:20px;margin-top:28px}.world-cards h3{font-size:23px;margin:6px 0 14px}.world-vision{padding:22px;margin-top:28px}.world-teaser img{height:auto;aspect-ratio:4/5;max-height:none}.film-copy{padding:35px 7%}.film-copy h2{font-size:32px;line-height:1.65}.film-copy p{font-size:15px;line-height:1.95}.film-sticky{height:auto;min-height:90svh}.film-copy>.thai{font-size:16px}}
@media(prefers-reduced-motion:reduce){.world-hero>div>*{animation:none}}
.camp-announcement{border-left:2px solid #9b8151;padding:12px 18px;background:#d5d9be55;font-weight:500;line-height:1.8!important}.camp-invite{background:#1d3b30;color:#f4f0e6;max-width:none}.camp-invite .overline,.camp-invite .note{color:#d4d6bf}.camp-invite h2{max-width:800px}.camp-invite .button{background:#e0c697;color:#203b30;border-color:#e0c697}.camp-album{background:#ede9dc}.camp-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin:36px 0}.camp-photo-grid figure{margin:0}.camp-photo-grid img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.camp-photo-grid figcaption{padding:14px 0;font-size:14px;line-height:1.8}.camp-photo-grid figure:nth-child(even){margin-top:65px}.camp-lake-view{margin:0;overflow:hidden}.camp-lake-view img{width:100%;height:auto;max-height:720px;object-fit:cover}.world-hero figure img[src*="camp-185"]{object-position:center;min-height:0;height:auto}.camp-album>.note{margin-top:18px}@media(max-width:800px){.camp-photo-grid{grid-template-columns:minmax(0,1fr);gap:28px;margin:28px 0}.camp-photo-grid figure:nth-child(even){margin-top:0}.camp-photo-grid img{aspect-ratio:auto}.camp-photo-grid figcaption{padding:12px 0 0;font-size:13px}.camp-announcement{font-size:15px!important}.camp-lake-view img{min-height:300px;object-position:center}.world-hero figure img[src*="camp-185"]{aspect-ratio:auto}.camp-invite h2{font-size:30px}}
.offgrid-story{background:#e2e5d7;max-width:none}.offgrid-story>h2,.offgrid-story>p,.offgrid-story>.overline,.offgrid-story>blockquote{max-width:780px;margin-left:auto;margin-right:auto}.offgrid-story blockquote{font:400 clamp(23px,2.7vw,34px)/1.8 'Noto Serif JP','Noto Sans Thai',serif;margin-top:34px;margin-bottom:0;padding:12px 0 12px 24px;border-left:2px solid #8c805b}.offgrid-story p{margin-bottom:24px}@media(max-width:800px){.offgrid-story blockquote{font-size:23px;line-height:1.85;padding-left:18px}.offgrid-story h2{font-size:28px}}
/* Phrase-aware typography: keep Japanese words intact on phone screens. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.film-copy .village-headline{font-size:clamp(30px,4.5vw,62px);line-height:1.55;letter-spacing:.035em;margin:22px auto 30px;max-width:100%;text-wrap:initial}
.village-headline span{display:inline-block;white-space:nowrap}.village-lines span{display:inline-block}.film-copy .village-lines{margin:24px auto;line-height:2.05}.film-shade{background:linear-gradient(180deg,#132f2940,#132f296e 50%,#132f2938)}
@media(max-width:800px){
 .film-copy{width:100%;max-width:100%;padding:48px 7%;text-align:center}.film-copy .eyebrow{font-size:10px;letter-spacing:.14em;line-height:1.9;max-width:100%;margin:0 auto 22px}.film-copy .village-headline{font-size:clamp(28px,8vw,36px);line-height:1.5;letter-spacing:.045em;margin:0 auto 28px}.village-headline span{display:block}.film-copy .village-lines{font-size:15px;line-height:1.95;margin:22px auto;letter-spacing:.01em}.village-lines span{display:block}.film-copy>.thai{font-size:14px;margin-top:27px;opacity:.85}.film-sticky{min-height:820px;min-height:max(820px,100svh);height:auto}.lake-film{height:auto;min-height:0}.film-sticky{position:relative}
 .section h2,.world-hero h1,.member-lead h1,.fund-intro h1{line-break:strict;word-break:normal;overflow-wrap:normal;text-wrap:balance;letter-spacing:.015em}.section p,.world-hero p,.member-lead p,.fund-intro p{line-break:strict;text-wrap:pretty;letter-spacing:0}.section .overline{letter-spacing:.1em;font-size:11px}.section h2{font-size:clamp(25px,7vw,30px)}.offgrid-story h2,.camp-invite h2,.world-teaser h2{max-width:19em;margin-left:auto;margin-right:auto}.caption{line-height:1.8}.section p+p{margin-top:22px}.world-hero h1{font-size:34px}
 html[lang=en] .film-copy h2,html[lang=th] .film-copy h2{font-size:30px;letter-spacing:0;line-height:1.65;text-wrap:balance}html[lang=en] .film-copy p,html[lang=th] .film-copy p{line-height:1.9;text-wrap:pretty}
}
/* Preserve editorial phrases rather than balancing individual Japanese characters. */
h2[data-phrased]{text-wrap:initial!important;word-break:normal!important;overflow-wrap:normal!important}.heading-phrase{display:inline-block;white-space:nowrap;letter-spacing:0}
@media(max-width:800px){
 html[lang=ja] .section h2[data-phrased],html[lang=ja] .world-hero h2[data-phrased]{font-size:clamp(20px,6vw,28px);line-height:1.65;letter-spacing:0;text-align:start;max-width:100%}
 h2[data-phrased] .heading-phrase{display:block;white-space:nowrap}.camp-invite h2[data-phrased],.offgrid-story h2[data-phrased],.world-teaser h2[data-phrased]{margin-left:0;margin-right:0}
 .world-intro .linkline{font-size:13px;line-height:1.8;display:inline;overflow-wrap:anywhere}.camp-invite p{max-width:34em}.section p{line-height:2!important}.world-vision{padding:20px}.world-vision p{margin-bottom:0}
}
.path-grid img[src*="sponsor-walkway"]{height:auto;aspect-ratio:4/3;object-fit:cover}.sponsor-heading span{display:inline-block;white-space:nowrap}@media(max-width:800px){.path-copy .sponsor-heading{font-size:clamp(20px,5.8vw,26px);line-height:1.65}.sponsor-heading span{display:block}}

/* /stay-options.css?v=42 */
.stay-option{margin:48px 0 72px;background:transparent;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:center}.stay-gallery{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;min-width:0;padding:0 0 12px;scrollbar-color:#59664b transparent}.stay-gallery figure{flex:0 0 100%;aspect-ratio:4/3;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;overflow:hidden;scroll-snap-align:start}.stay-gallery img,.stay-gallery svg{display:block;width:100%!important;height:100%!important;object-fit:cover;border-radius:0;transform:none!important}.stay-option-copy{min-width:0}.stay-option-copy h3{font-size:clamp(28px,3.5vw,44px);line-height:1.3;margin:0 0 20px;letter-spacing:0}.stay-option-price strong{font-size:clamp(38px,5vw,58px);font-weight:400}.stay-option-price span{display:block;font-size:16px}.stay-option-price small{font-size:16px}.stay-option-copy .button{white-space:normal;max-width:100%;text-align:center}.boat-schedule{border-top:1px solid #9a9f87;padding:24px 0 0}.boat-schedule p{max-width:760px}@media(max-width:760px){.stay-option{display:block;margin:32px 0 56px}.stay-gallery{margin-left:-24px;margin-right:-24px}.stay-gallery figure{flex-basis:92%}.stay-option-copy{padding-top:22px}.stay-choice h2{font-size:28px;line-height:1.5;letter-spacing:0}.stay-option-copy p{font-size:16px;line-height:1.9}}

/* /home-layout.css?v=47 */
.values.value-stories{display:block;margin-top:56px}.value-stories .value-scene{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(24px,5vw,72px);align-items:center;border:0;padding:0;margin:0 0 80px}.value-scene .value-copy{border-top:1px solid #babdaa;padding-top:24px;min-width:0}.value-scene:nth-child(2) .value-copy{order:2}.value-stories figure{margin:0;padding:0;background:transparent;border:0;box-shadow:none;overflow:hidden;aspect-ratio:4/3}.value-stories figure img{display:block;width:100%;height:100%;object-fit:cover;transform:none}.value-stories h3{font-size:clamp(25px,3vw,38px);line-height:1.55;letter-spacing:0}.value-stories p{font-size:17px;line-height:2}.value-stories .value-copy>span{font-size:22px}.offgrid-story{max-width:1000px}.world-teaser{margin-top:50px}@media(max-width:760px){.values.value-stories{margin-top:36px}.value-stories .value-scene{display:flex;flex-direction:column;gap:24px;align-items:stretch;margin-bottom:44px}.value-scene:nth-child(2) .value-copy{order:0}.value-stories figure{aspect-ratio:4/3;margin-left:-24px;margin-right:-24px}.value-stories .value-copy{padding-top:22px}.value-stories p{font-size:16px;line-height:1.95}.value-stories h3{font-size:25px;line-height:1.6}}
.inherited-story{max-width:920px;margin:0 auto;padding-top:clamp(40px,7vw,90px);padding-bottom:clamp(40px,7vw,90px)}.inherited-story h2{font-size:clamp(26px,3.7vw,40px);line-height:1.65;letter-spacing:0}.inherited-story p{font-size:17px;line-height:2.1;margin:26px 0}.inherited-story p:nth-of-type(2){border-left:2px solid #a38a59;padding-left:22px;font-family:serif;font-size:clamp(21px,2.6vw,28px)}@media(max-width:760px){.inherited-story p{font-size:16px;line-height:2}.inherited-story p:nth-of-type(2){font-size:22px}}
.home-calendar-section{display:grid;grid-template-columns:1fr 1fr;max-width:1300px;margin:40px auto 70px;gap:0;background:#ece9df}.calendar-invitation{position:relative;min-width:0;min-height:600px;overflow:hidden;background:#183c34}.calendar-invitation>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.calendar-invitation:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 10%,rgba(10,32,28,.85))}.calendar-invitation-copy{position:relative;z-index:1;color:#fff;padding:clamp(24px,4vw,52px);padding-top:280px}.calendar-invitation-copy h2{font-size:clamp(28px,3vw,40px);line-height:1.65;letter-spacing:0}.calendar-invitation-copy .overline{color:#f0dec0}.calendar-invitation-copy .button{background:#e6d0a5;color:#203b30}.home-calendar{padding:clamp(20px,3vw,40px);min-width:0}.home-calendar h2{font-size:clamp(25px,3vw,34px);line-height:1.5;letter-spacing:0;margin:0 0 16px}.hc-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}.hc-controls h3{font:500 20px/1.5 sans-serif;margin:0}.hc-controls button{width:44px;height:44px;border:1px solid #a6af9b;background:transparent;color:#233e33;font-size:28px;cursor:pointer}.hc-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.hc-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.hc-weekday{text-align:center;font-size:14px;padding:8px 0}.hc-day{min-width:0;min-height:48px;border:1px solid #d3d8c8;background:#f7f5ee;color:#223f33;font:16px/1.5 sans-serif;padding:5px 0;cursor:pointer}.hc-day[aria-current=date]{box-shadow:inset 0 0 0 2px #a1864e}.hc-day.hc-selected{background:#234537;color:white}.hc-marks{display:flex;justify-content:center;gap:2px;min-height:8px;flex-wrap:wrap}.hc-marks i{width:5px;height:5px;border-radius:50%;background:var(--mark)}.hc-available{--mark:#3d8050}.hc-unavailable{--mark:#aa4840}.hc-private{--mark:#665699}.hc-retreat{--mark:#b77826}.hc-worldschool{--mark:#287b98}.hc-other{--mark:#73746c}.hc-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:16px}.hc-key{font-size:14px}.hc-key:before{content:"";display:inline-block;width:8px;height:8px;background:var(--mark);margin-right:6px;border-radius:50%}.hc-note,.hc-status{font-size:14px;line-height:1.8}.hc-status:empty{display:none}.hc-events{max-height:300px;overflow:auto;margin:20px 0}.hc-events p{font-size:16px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.hc-event{border-top:1px solid #bdc5b3;padding:15px 0}.hc-event h4{font-size:19px;margin:8px 0}.hc-events button{font:14px/1.6 sans-serif;padding:8px 12px;background:#234537;color:white;border:0;cursor:pointer}.hc-full{font-size:15px;text-decoration:underline}@media(max-width:760px){.home-calendar-section{display:block;margin:20px 0 40px}.calendar-invitation{min-height:360px}.calendar-invitation-copy{padding-top:120px;padding-bottom:30px}.calendar-invitation-copy h2{font-size:28px}.home-calendar{padding:28px 20px}.hc-grid{gap:2px}.hc-day{min-height:48px}.hc-controls h3{font-size:19px}}

/* /refinement.css?v=48 */
:root{--ui-ink:#203c31;--ui-line:#d2d9cc;--ui-focus:#af8143;--ui-radius:12px}a,button,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--ui-focus);outline-offset:4px}button,.button{min-height:44px;transition:background-color .18s,box-shadow .18s,transform .18s}.button:hover{box-shadow:0 5px 16px #173b3020;transform:translateY(-1px)}.site-menu nav a{min-height:44px;display:flex;align-items:center}.site-menu[open]{box-shadow:0 12px 36px #11251d1c}section[id]{scroll-margin-top:28px}.gallery-navigation{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin:12px 0 20px;font:14px/1.5 system-ui;color:#294735}.gallery-navigation button{border:1px solid var(--ui-line);border-radius:50%;width:44px;min-height:44px;background:transparent;color:inherit;font-size:22px;cursor:pointer}.gallery-navigation button:disabled{opacity:.35;cursor:default}.stay-option{align-items:start}.stay-option-copy{padding-top:12px}.boat-schedule{background:#e9ecdf;border:0;border-radius:var(--ui-radius);padding:28px}.home-calendar{background:#f7f6ef}.hc-controls button{border-radius:50%}.hc-day{border-radius:6px}.hc-event h4{line-height:1.5}.hc-full{display:inline-block;padding:10px 0}.form-group{grid-column:1/-1;min-width:0;margin:0 0 20px;padding:24px 0;border:0;border-top:1px solid var(--ui-line)}.form-group legend{font-size:21px;line-height:1.5;font-weight:600;padding:0 12px 0 0}.form-group-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.form-group-grid>label{min-width:0}.form-group-grid>#guestDetails{grid-column:1/-1}.form-group-grid p{grid-column:1/-1}#application{border:1px solid var(--ui-line);border-radius:18px;box-shadow:0 8px 32px #173b3008;padding:clamp(18px,4vw,36px)}#application input,#application select,#application textarea{border:1px solid #bdc8b6;border-radius:8px;min-height:48px;font-size:16px;color:#203b30;background:#fdfefa}#application input:user-invalid,#application select:user-invalid{border-color:#ae5040;background:#fff8f5}#application label{line-height:1.65}#application button[type=submit]{width:100%;border-radius:10px;font-weight:600}#result:not(:empty){padding:16px;border-radius:8px;background:#edf1e5}#application [data-submit-state=error]{color:#913d2f}#guestDetails fieldset{background:#f5f7f0}.panel{box-shadow:0 4px 24px #173b3005}body[data-admin=true] main>.row{padding:12px 0;gap:10px 24px;border-bottom:1px solid var(--ui-line)}body[data-admin=true] details summary{cursor:pointer;padding:12px 0}body[data-admin=true] td{white-space:pre-wrap}body[data-admin=true] .panel{border-radius:14px}@media(max-width:650px){.form-group-grid{display:block}.form-group{padding:20px 0;margin-bottom:8px}.gallery-navigation{justify-content:space-between}.boat-schedule{padding:22px}.heading-phrase{max-width:100%;white-space:normal!important;text-wrap:pretty}.section p{overflow-wrap:break-word}.home-calendar-section{border-radius:0}.stay-option-copy .button{display:block}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* /village-participation.css?v=132 */
.village-moment{margin:2.5rem 0;min-width:0}.village-moment img{display:block;width:100%;height:auto;max-height:680px;object-fit:cover}.village-moment figcaption{font-size:.8rem;line-height:1.7;letter-spacing:.04em;margin-top:.8rem;opacity:.8}.village-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:2.5rem 0}.village-photo-pair .village-moment{margin:0}.village-photo-pair img{aspect-ratio:3/4;object-fit:cover}.shared-table>.village-moment{grid-column:1/-1;width:min(760px,90%);margin:1rem auto 4rem}.shared-table>.village-moment img{max-height:760px;object-fit:contain}.offgrid-story>.village-moment{width:min(440px,100%);margin:3rem auto}.offgrid-story>.village-moment img{max-height:620px;object-fit:contain}.inherited-story>.village-moment{float:right;width:38%;margin:0 0 2rem 3rem}.inherited-story:after{content:'';display:block;clear:both}.village-participation{max-width:850px;margin:3rem 0}.village-participation h2{font-size:clamp(1.65rem,3.2vw,2.8rem);line-height:1.6;letter-spacing:.025em;word-break:normal;overflow-wrap:anywhere}.village-participation p{line-height:2;max-width:44em}.two-ways>.village-photo-pair{max-width:860px;margin:3rem auto 4rem}.participation-intro .village-photo-pair{max-width:800px}@media(max-width:600px){.village-photo-pair{gap:12px;margin:2rem 0}.village-moment figcaption{font-size:.72rem;letter-spacing:0}.inherited-story>.village-moment{float:none;width:100%;margin:2rem 0}.inherited-story>.village-moment img{max-height:520px;object-fit:contain}.village-participation{margin:2.5rem 0}.shared-table>.village-moment{width:100%;margin:1rem 0 2.5rem}.village-participation h2{font-size:1.65rem}}
.two-ways>.village-photo-pair{grid-template-columns:repeat(3,minmax(0,1fr));max-width:1100px}@media(max-width:600px){.two-ways>.village-photo-pair{grid-template-columns:1fr 1fr}.two-ways>.village-photo-pair>.village-moment:last-child{grid-column:1/-1;width:72%;margin:1rem auto 0}}

/* Keep the family name prominent and the lake invitation on its own line. */
.village-participation .family-heading{font-size:clamp(1.75rem,3.2vw,2.8rem);line-height:1.4}
.village-participation .family-name{display:block;font:inherit;letter-spacing:inherit;overflow-wrap:break-word}
.village-participation .family-subtitle{display:block;margin-top:.4em;font-size:.72em;line-height:1.75;letter-spacing:.02em;word-break:normal;overflow-wrap:break-word;text-wrap:balance}

/* Distinct photographs above; shared daily work needs no repeated image. */
#membership .member-benefits-distinct{grid-template-columns:repeat(2,minmax(0,1fr))}
#membership .member-benefits-distinct .member-service{grid-column:1/-1;padding-top:1.75rem;border-top:1px solid var(--line,#d7d4c8)}
#membership .member-benefits-distinct .member-service h3{margin-top:0}
#membership .member-benefits-distinct .member-service p{max-width:54em}
@media(max-width:700px){#membership .member-benefits-distinct{grid-template-columns:minmax(0,1fr)}}

/* /hero-menu.css?v=56 */
body>header{align-items:center;padding-top:14px;padding-bottom:14px;gap:12px}header .header-actions{display:flex;flex-direction:row;align-items:center;gap:8px}header .site-menu{position:relative;top:auto;right:auto;flex-shrink:0}header .site-menu summary{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-height:44px;padding:0;border:0;background:transparent;color:#263d32;font-size:24px;cursor:pointer;list-style:none;gap:0}header .site-menu summary::-webkit-details-marker{display:none}header .site-menu[open] summary{background:#263d32;color:#fff;border-radius:4px}header .site-menu nav{width:300px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 140px);overflow-y:auto;overscroll-behavior:contain}header .site-menu nav>a{padding:10px 14px}.hero{margin-top:0}@media(max-width:800px){body>header{padding:12px 4%;gap:8px;flex-wrap:wrap}header .brand{max-width:none;flex:1 1 145px;font-size:14px;letter-spacing:.08em}header .brand small{font-size:8px;letter-spacing:.02em}header .header-actions{flex:0 0 auto;flex-direction:row;gap:2px;margin-left:auto}header .language-picker a{font-size:11px;padding:7px 4px}header .site-menu summary{width:40px;height:44px;font-size:23px}header .site-menu nav>a{font-size:14px!important}}
header .site-menu summary{width:auto;min-width:88px;gap:9px;padding:0 9px;font-size:14px}header .site-menu summary span[aria-hidden]{font-size:23px}@media(max-width:800px){header .header-actions{gap:3px}header .site-menu summary{width:auto;min-width:80px;font-size:12px;padding:0 6px}}

/* /multipage.css?v=59 */
.section-navigation{display:flex;justify-content:center;gap:24px;padding:14px 5%;background:#f4f0e6;border-top:1px solid #d8d5c9;border-bottom:1px solid #d8d5c9;overflow-x:auto}.section-navigation a{white-space:nowrap;font-size:14px;text-decoration:none;padding:8px 0}.section-navigation a[aria-current]{border-bottom:2px solid #284938}.home-gateway{max-width:1180px;margin:auto;padding:70px 5%}.home-gateway>h2{font-size:clamp(26px,4vw,46px);line-height:1.5}.home-gateway>p{max-width:660px;line-height:2}.explore-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 24px;margin:44px 0}.explore-card{text-decoration:none;min-width:0}.explore-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.explore-card>div{display:flex;align-items:center;gap:12px;border-bottom:1px solid #c7cdbd;padding:18px 0}.explore-card h3{font-size:20px;line-height:1.5;margin:0;flex:1}.explore-card span{font-size:12px}.gateway-actions{display:flex;flex-wrap:wrap;gap:12px}.page-heading{padding:48px 6% 28px;border-bottom:1px solid #d8d5c9}.page-heading h1{font-size:clamp(30px,5vw,60px);line-height:1.4;margin:12px 0}.page-heading>span{font-size:12px;letter-spacing:.15em}.home-gateway .button{font-size:15px}.explore-card:hover img{opacity:.9}@media(max-width:800px){.section-navigation{justify-content:flex-start;gap:22px;padding:7px 5%;scrollbar-width:thin}.section-navigation a{font-size:12px}.explore-grid{grid-template-columns:1fr 1fr;gap:26px 14px}.explore-card h3{font-size:16px;overflow-wrap:anywhere}.explore-card>div{gap:6px}.explore-card>div>span:first-child{display:none}.home-gateway{padding:40px 6%}.gateway-actions .button{flex:1 1 140px;text-align:center;padding:14px}.page-heading{padding:30px 6%}.page-heading h1{font-size:32px}}

/* /photo-finish.css?v=61 */
/* Source images retain their original resolution. Mild edge definition at display time. */
main img[src^="/assets/"]{filter:contrast(1.045) saturate(1.025) url('/photo-detail.svg#detail');image-rendering:auto}
main .aerial-hero .hero-slide{filter:contrast(1.065) saturate(1.035) url('/photo-detail.svg#detail')}
main img[src*="camp-"],main img[src*="join-"]{filter:contrast(1.025) saturate(1.015) url('/photo-detail.svg#detail')}
main img[src*="gather-1000010133"],main img[src*="village-1000010266"]{filter:contrast(1.025) saturate(1.015)}
main img.plan{filter:none}
/* Avoid animated enlargement and resampling of large landscape photos. */
main .aerial-hero .hero-slide,main .aerial-hero .hero-slide.active{transform:none;transition:opacity 2.4s ease}
.explore-card img{opacity:1;object-position:center}
.explore-card:hover img{opacity:1}
.explore-card img[src*="camp-185"]{object-position:50% 66%}
.explore-card img[src*="nature-sup"]{object-position:60% 50%}
.home-gateway .explore-card > img[src*="basecamp-stay-collage"]{aspect-ratio:4/3;height:auto;object-fit:contain}
@media(prefers-reduced-motion:reduce){main .aerial-hero .hero-slide{transition:none}}

/* /editorial.css?v=90 */

:root{--editorial-serif:'Cormorant Garamond','Noto Serif JP','Noto Serif Thai',serif;--paper:#f3f0e7;--ink:#283b31;--green:#193d33}
body{background:var(--paper);color:var(--ink)}
h1,h2,h3,.section h2,.quote,.page-heading h1{font-family:var(--editorial-serif);font-weight:400;letter-spacing:.025em}
html[lang="th"] h1,html[lang="th"] h2,html[lang="th"] h3{font-family:'Noto Serif Thai',serif;letter-spacing:0}
.brand{font-family:var(--editorial-serif);letter-spacing:.12em}
.section-navigation{background:var(--paper);border-top:0;gap:28px}
.section-navigation a{font-size:14px}
.home-gateway{max-width:none;padding:100px 6% 80px}
.home-gateway>.overline,.home-gateway>h2,.home-gateway>p{max-width:760px;margin-left:auto;margin-right:auto;text-align:center}
.home-gateway>.overline{font-size:12px;letter-spacing:.22em;color:#72745d}
.home-gateway>h2{font-size:clamp(30px,3.5vw,52px);line-height:1.7;margin-top:24px;margin-bottom:25px;text-wrap:balance}
.home-gateway>p{font-size:16px;line-height:2.1;max-width:560px;color:#596456}
.explore-grid{display:flex;flex-direction:column;gap:100px;max-width:1440px;margin:80px auto}
.explore-card{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:center;gap:7%;color:var(--ink);text-decoration:none}
.explore-card:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}
.explore-card:nth-child(even) img{grid-column:2;grid-row:1}
.explore-card:nth-child(even)>div{grid-column:1;grid-row:1}
.explore-card img{width:100%;height:auto;aspect-ratio:5/4;object-fit:cover;border-radius:2px;display:block}
.explore-card>div{display:flex;align-items:flex-start;flex-direction:column;border:0;padding:25px 0;gap:22px}
.explore-card>div>span:first-child{font:400 16px var(--editorial-serif);color:#73735c;letter-spacing:.15em;display:block}
.explore-card h3{font:400 clamp(28px,3vw,48px)/1.65 var(--editorial-serif);margin:0;overflow-wrap:normal;line-break:strict;text-wrap:balance}


.explore-card:focus-visible{outline:2px solid var(--green);outline-offset:8px}
.gateway-actions{justify-content:center;border-top:1px solid #c6ccbd;padding-top:45px;gap:16px}
.gateway-actions .button{background:transparent;color:var(--ink);border:1px solid #84927f;padding:18px 28px;min-height:56px}
.gateway-actions .button:nth-child(2){background:var(--green);color:white}
.page-heading{text-align:center;padding:64px 6% 48px;border:0}
.page-heading h1{font-size:clamp(36px,5vw,68px);line-height:1.5}
.section{padding-top:80px;padding-bottom:80px}
.section h2{line-height:1.7;text-wrap:balance}
.section p{line-height:2.05}
@media(max-width:800px){
 .home-gateway{padding:58px 6% 48px}
 .home-gateway>h2{font-size:30px;line-height:1.65;letter-spacing:.015em}
 .explore-grid{gap:52px;margin:42px -2% 50px}
 .explore-card,.explore-card:nth-child(even){display:flex;flex-direction:column;gap:0;align-items:stretch}
 .explore-card img{aspect-ratio:4/3;min-height:0}
 .explore-card>div{display:grid;grid-template-columns:1fr 44px;gap:8px 16px;padding:22px 2% 0}
 .explore-card>div>span:first-child{grid-column:1;font-size:14px}
 .explore-card h3{grid-column:1;font-size:clamp(24px,6.8vw,32px);line-height:1.6;letter-spacing:.01em}
 
 .gateway-actions{padding-top:30px}
 .gateway-actions .button{flex:1 1 200px}
 .section{padding-top:52px;padding-bottom:52px}
 .page-heading{padding:40px 6% 28px}
 .page-heading h1{font-size:34px}
}
@media(prefers-reduced-motion:reduce){}
/* Short introductions keep each photograph connected to its purpose. */
.explore-card .explore-description{font-family:'Noto Sans JP','Noto Sans Thai',sans-serif;font-size:16px;font-weight:400;line-height:2;color:#536052;max-width:34em;margin:0;text-wrap:pretty;letter-spacing:.015em}
.explore-card>div{gap:18px}

@media(max-width:800px){
 .explore-card>div{gap:9px 16px}
 .explore-card .explore-description{grid-column:1/-1;margin-top:6px;max-width:none;font-size:16px;line-height:1.95;letter-spacing:0}
 
 .explore-grid{gap:58px}
}
/* A quieter introduction and generous photographic chapters. */
.gateway-introduction{max-width:850px;margin:0 auto;text-align:center;padding:0 12px 12px}
.gateway-introduction .overline{font:400 12px/1.6 'Noto Sans JP',sans-serif;letter-spacing:.22em;color:#737662;margin:0 0 28px}
.gateway-introduction h2{font:400 clamp(34px,4.2vw,62px)/1.5 var(--editorial-serif);letter-spacing:.02em;margin:0 0 30px;max-width:none}
.gateway-introduction h2>span{display:block}
.gateway-introduction p{font-size:16px;line-height:2;margin:10px auto 0;color:#526052;max-width:40em}
.gateway-introduction .intro-lead{font-family:var(--editorial-serif);font-size:19px;color:#283b31}
.home-gateway .explore-grid{gap:110px}
.explore-card{gap:6%}
.explore-card .explore-copy{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:25px 0;min-width:0}
.explore-card .explore-number{font-family:'Cormorant Garamond',serif;font-size:18px;letter-spacing:.12em;margin-bottom:18px}
.explore-card h3{font-size:clamp(28px,3vw,46px);line-height:1.5;margin:0 0 28px;max-width:100%;overflow-wrap:anywhere;text-wrap:pretty}
.explore-card .explore-lead{font-family:var(--editorial-serif);font-size:clamp(18px,1.5vw,22px);line-height:1.8;color:#283b31;margin:0 0 12px;text-wrap:pretty}
.explore-card .explore-description{font-size:16px;line-height:1.95;color:#526052;max-width:30em;margin:0;word-break:normal;line-break:strict;overflow-wrap:break-word}
.explore-card>div>.explore-link{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;width:max-content;max-width:100%;height:auto;min-height:44px;white-space:nowrap;flex-shrink:0;align-self:flex-start;border:0;border-bottom:1px solid #8c9a87;border-radius:0;padding:12px 0;margin-top:24px;font:400 14px/1.5 'Noto Sans JP','Noto Sans Thai',sans-serif;letter-spacing:.04em;background:none;color:var(--ink)}
.explore-card .explore-link>span{font-size:22px;transition:transform .25s}
.explore-card:hover>div>.explore-link{background:none;color:var(--ink);border-color:var(--green)}
.explore-card:hover .explore-link>span{transform:translate(3px,-3px)}
.explore-card:nth-child(4){background:#1d3e34;color:#f5f0e5;padding:48px;margin:0 -3%}
.explore-card:nth-child(4) h3,.explore-card:nth-child(4) .explore-lead,.explore-card:nth-child(4) .explore-link{color:#f5f0e5}
.explore-card:nth-child(4) .explore-number,.explore-card:nth-child(4) .explore-description{color:#d7dfce}
.explore-card:nth-child(4) .explore-link{border-color:#95a48a}
@media(max-width:800px){
 .home-gateway{padding:52px 6% 48px}
 .gateway-introduction{padding:0}
 .gateway-introduction .overline{font-size:12px;letter-spacing:.17em;margin-bottom:24px}
 .gateway-introduction h2{font-size:clamp(28px,7.5vw,36px);line-height:1.6;letter-spacing:.015em;margin-bottom:24px}
 .gateway-introduction h2>span{white-space:nowrap}
 html[lang="th"] .gateway-introduction h2>span{white-space:normal}
 .gateway-introduction p{font-size:15px;line-height:2;text-wrap:pretty}
 .gateway-introduction .intro-lead{font-size:17px}
 .home-gateway .explore-grid{gap:56px;margin-top:44px}
 .explore-card .explore-copy{padding:24px 3% 0}
 .explore-card .explore-number{font-size:15px;margin-bottom:12px}
 .explore-card h3{font-size:clamp(25px,6.9vw,32px);line-height:1.5;margin-bottom:20px;width:100%}
 html[lang="ja"] .explore-card h3{letter-spacing:0;font-size:clamp(23px,6.25vw,30px)}
 .explore-card .explore-lead{font-size:17px;line-height:1.85;margin-bottom:10px}
 .explore-card .explore-description{font-size:16px;line-height:1.95;margin:0;max-width:none}
 .explore-card>div>.explore-link{margin-top:18px;font-size:14px;min-height:44px;gap:24px}
 .explore-card:nth-child(4){padding:22px 0 30px;margin:0 -4.6%;gap:0}
 .explore-card:nth-child(4) img{width:100%;aspect-ratio:4/3}
 .explore-card:nth-child(4) .explore-copy{padding:26px 8% 0}
}
@media(max-width:359px){.gateway-introduction h2{font-size:26px}.gateway-introduction p br{display:none}}
@media(prefers-reduced-motion:reduce){.explore-card .explore-link>span{transition:none;transform:none}}
.age-rate-notice{max-width:1100px;margin:30px auto 65px;padding:28px 5%;background:#e8ecdf;border-top:1px solid #b8c5ae;color:#283b31}.age-rate-notice p{font-size:16px;line-height:1.95;margin:12px 0}.age-rate-notice strong{font-weight:500}@media(max-width:800px){.age-rate-notice{margin:20px 6% 45px;padding:20px 6%}}
.contact-email{max-width:620px;margin:32px 0 24px}
a.email-contact-button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:100%;min-height:92px;padding:24px 28px;border:1px solid #294d3e;background:#193d33;color:#fffdf5;text-decoration:none;border-radius:4px}
.email-contact-label{font-size:20px;line-height:1.6;font-weight:500}
.email-contact-address{font-size:16px;line-height:1.7;overflow-wrap:anywhere}
a.email-contact-button:hover{background:#2b5142}
a.email-contact-button:focus-visible{outline:3px solid #b29556;outline-offset:5px}
.contact-email .email-contact-hint{font-size:14px;line-height:1.7;margin:10px 0 0}
@media(max-width:600px){a.email-contact-button{padding:22px 18px}.email-contact-label{font-size:18px}.email-contact-address{font-size:16px}}
a.instagram-link{display:inline-flex;align-items:center;gap:14px;min-height:56px;max-width:100%;padding:14px 18px;border:1px solid #879681;border-radius:4px;color:inherit;text-decoration:none;font:400 16px/1.5 'Noto Sans JP','Noto Sans Thai',sans-serif}
.instagram-link .instagram-icon{display:block;flex:0 0 36px;width:36px;height:36px;filter:none;object-fit:contain;border-radius:9px}
.instagram-link .instagram-handle{display:block;font-size:14px;letter-spacing:.02em;overflow-wrap:anywhere}
a.instagram-link:hover{background:#e3e8dc;color:#193d33}
a.instagram-link:focus-visible{outline:3px solid #b29556;outline-offset:4px}
.contact-instagram{max-width:620px;margin:22px 0 30px}
.contact-instagram .instagram-link{width:100%;padding:18px 24px}
footer .instagram-link{flex-shrink:0;align-self:center}
@media(max-width:600px){.contact-instagram .instagram-link{padding:18px}footer .instagram-link{align-self:flex-start}}

/* Quiet social entry between the masthead and photography. */
.top-instagram{padding:0 clamp(20px,4vw,64px);background:#f3f0e6;color:#34493d}
.top-instagram-inner{max-width:1320px;margin:0 auto;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid rgba(52,73,61,.14)}
.top-instagram-caption{font-size:12px;line-height:1.6;letter-spacing:.07em;color:#667064}
.top-instagram-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:4px 0;text-decoration:none;color:#34493d;font:400 13px/1.4 'Noto Sans JP','Noto Sans Thai',sans-serif;letter-spacing:.025em;white-space:nowrap}
.top-instagram-link img{display:block;width:22px;height:22px;flex:0 0 22px;border-radius:6px;filter:none;object-fit:contain}
.social-arrow{font-size:17px;color:#7c8877;transition:transform .2s}
.top-instagram-link:hover{color:#163c30}
.top-instagram-link:hover .social-arrow{transform:translate(2px,-2px)}
.top-instagram-link:focus-visible{outline:2px solid #52654c;outline-offset:3px;border-radius:3px}
@media(max-width:480px){.top-instagram{padding:0 20px}.top-instagram-inner{min-height:50px;gap:10px}.top-instagram-caption{font-size:11px;letter-spacing:.02em}.top-instagram-link{font-size:12px;gap:8px}.top-instagram-link img{width:20px;height:20px;flex-basis:20px}}
@media(max-width:350px){.top-instagram{padding:0 14px}.top-instagram-caption{font-size:10px}.top-instagram-link{gap:6px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.social-arrow{transition:none}}

/* /stay-updates.css?v=20261007 */
.local-stay-offer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:clamp(20px,4vw,36px);margin:20px 0;background:#e9eee6;border-left:4px solid #183c34;overflow-wrap:anywhere}
.local-stay-offer h3{margin:0 0 10px;font-size:1.5rem;line-height:1.5;color:#183c34}
.local-stay-offer p{font-size:1rem;line-height:1.8;margin:8px 0;max-width:65ch}
.local-stay-price{display:grid;gap:4px}
.local-stay-price small{font-size:1rem}
.local-stay-price strong{font-size:1.875rem;line-height:1.5;color:#183c34}
.local-stay-offer .button{flex-shrink:0;max-width:100%;white-space:normal;text-align:center}
@media(max-width:640px){.local-stay-offer{align-items:stretch;flex-direction:column;gap:14px}}

/* /desktop-navigation.css?v=161 */
/* Compact page links between the wordmark and language controls. */
header .desktop-navigation {
  display: none;
}

@media (min-width: 60rem) {
  body > header {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    column-gap: clamp(1rem, 1.8vw, 1.75rem);
  }

  header .brand {
    white-space: nowrap;
    font-size: clamp(1.375rem, 2vw, 1.5625rem);
  }

  header .desktop-navigation {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: row nowrap;
    gap: clamp(.75rem, 1.25vw, 1.5rem);
    min-width: 0;
    margin: 0;
    padding: 0;
    font-size: .875rem;
  }

  header .desktop-navigation > a {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    min-height: 44px;
    padding: .25rem 0;
    border-bottom: 2px solid transparent;
    font-size: .875rem;
    line-height: 1.5;
    white-space: nowrap;
    text-underline-offset: .35em;
  }

  header .desktop-navigation > a:hover {
    text-decoration: underline;
  }

  header .desktop-navigation > a[aria-current="page"] {
    border-bottom-color: currentColor;
  }

  header .desktop-navigation > a:focus-visible {
    outline: 2px solid #245b44;
    outline-offset: 4px;
    border-radius: 2px;
  }

  header .header-actions {
    gap: clamp(.625rem, 1.25vw, 1.25rem);
  }

  header .site-menu summary {
    min-width: 80px;
    padding-left: 12px;
    gap: 8px;
  }
}

/* Keep all seven links readable on smaller desktop screens. */
@media (min-width: 60rem) and (max-width: 74.999rem) {
  body > header {
    padding-inline: 1.5rem;
    column-gap: 1rem;
  }

  header .header-actions {
    gap: .5rem;
  }

  header .site-menu summary {
    min-width: 44px;
    padding-inline: 10px 0;
    gap: 0;
  }

  header .site-menu summary span:first-child {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip-path: inset(50%);
  }
}

/* /desktop-editorial.css?v=162.1 */
@media (min-width: 60rem){
/* A photographic, spacious desktop layout. Small-screen rules remain independent. */
@media (min-width: 60rem) {
  :root {
    --desktop-gutter: clamp(1.5rem, 4vw, 4.5rem);
    --desktop-width: 90rem;
  }

  html { scroll-padding-top: 7.5rem; }
  body { line-height: 1.95; }

  body > header {
    position: sticky;
    top: 0;
    z-index: 40;
    min-height: 92px;
    padding-block: 17px;
    padding-inline: max(var(--desktop-gutter), calc((100% - var(--desktop-width)) / 2));
    background: rgb(255 255 255 / 97%);
    border-bottom-color: #e5ece7;
  }
  header .brand { letter-spacing: .08em; }
  header .brand small { color: #53685d; letter-spacing: .12em; }
  header .desktop-navigation { flex-wrap: wrap; gap: 0 clamp(.75rem, 1.2vw, 1.4rem); }
  header .desktop-navigation > a { color: #35534a; border-bottom-width: 1px; }
  header .desktop-navigation > a[aria-current="page"] { color: #123f34; }
  header .language-picker a { border-radius: 2px; }
  header .language-picker a[aria-current="page"] { background: #edf3ef; color: #173f35; }
  header .site-menu nav { border-radius: 4px; box-shadow: 0 18px 48px #183c3417; }

  /* An inset landscape and a quieter, consistently aligned caption. */
  .hero.aerial-hero {
    width: 100%;
    aspect-ratio: auto;
    max-width: 100rem;
    padding: 24px var(--desktop-gutter) 0;
    margin-inline: auto;
    overflow: visible;
  }
  .cinematic.aerial-hero .hero-photograph {
    min-height: clamp(32rem, 43vw, 40rem);
    border-radius: 4px;
  }
  .hero-photograph::before { display: none; }
  .hero-photograph::after {
    background: linear-gradient(90deg, #102e38b8 0%, #102e3873 33%, #102e3820 62%, transparent 88%);
  }
  .cinematic.aerial-hero .hero-photo-title {
    max-width: 38rem;
    margin: clamp(2.5rem, 4.5vw, 4.5rem) clamp(2.5rem, 5vw, 5rem);
    align-self: center;
  }
  .hero-photo-title .eyebrow { font-size: .8125rem; letter-spacing: .2em; margin: 0 0 22px; }
  .aerial-hero .hero-photo-title h1 {
    font-size: clamp(3.25rem, 4.8vw, 4.5rem);
    line-height: 1.4;
    letter-spacing: .075em;
    margin: 0;
    text-shadow: 0 2px 24px #102b3430;
  }
  html[lang="en"] .aerial-hero .hero-photo-title h1 {
    font-size: clamp(3.5rem, 5.2vw, 5rem);
    line-height: 1.12;
    letter-spacing: .015em;
  }
  html[lang="th"] .aerial-hero .hero-photo-title h1 {
    font-size: clamp(2.8rem, 4.1vw, 3.8rem);
    line-height: 1.5;
    letter-spacing: 0;
  }
  .hero-photo-title .hero-location {
    max-width: 34em;
    margin-top: 26px;
    font-size: 1rem;
    line-height: 1.9;
    letter-spacing: .025em;
  }
  .hero-photo-title .hero-future {
    margin-top: 24px;
    font-size: 1rem;
    line-height: 1.9;
    letter-spacing: .035em;
    color: #f0f5f1;
  }
  .cinematic.aerial-hero .hero-content { padding: 24px 0; }
  .hero-content .hero-actions { justify-content: flex-start; gap: 12px; }
  .hero-content .hero-actions > a { max-width: 260px; min-height: 52px; border-radius: 2px; }
  .hero-actions .hero-primary { background: #164b3f; border-color: #164b3f; }
  .hero-actions .hero-secondary { border-color: #b9c9c1; }
  .cinematic.aerial-hero .hero-bottom { padding: 18px 0; border-color: #e1e8e3; }
  .hero-bottom > span { color: #657c70; letter-spacing: .2em; }
  .slide-controls { gap: 10px; }
  .slide-controls button { min-width: 38px; min-height: 42px; border-radius: 2px; }

  /* Seven existing stories, with one rhythm for photos, copy and links. */
  .home-gateway {
    max-width: var(--desktop-width);
    padding: clamp(72px, 7vw, 108px) var(--desktop-gutter) 80px;
  }
  .gateway-introduction { max-width: 58rem; }
  .gateway-introduction .overline { margin-bottom: 20px; color: #587469; }
  .gateway-introduction h2 { font-size: clamp(2.25rem, 3.4vw, 3.25rem); line-height: 1.6; margin: 0 0 24px; }
  .gateway-introduction h2 > span { display: inline; }
  .gateway-introduction h2 > span + span { margin-left: .25em; }
  .gateway-introduction p { font-size: 1rem; line-height: 2; color: #536b60; }
  .gateway-introduction .intro-lead { font-size: 1.1875rem; color: #315447; }
  .home-gateway .explore-grid { gap: 64px 40px; margin: 64px 0; }
  .explore-card img, .explore-card:nth-child(even) img {
    aspect-ratio: 16 / 10;
    border-radius: 4px;
  }
  .explore-card .explore-copy, .explore-card:nth-child(even) .explore-copy { padding-top: 26px; }
  .explore-card .explore-number { margin-bottom: 12px; color: #617c6f; }
  .explore-card h3, html[lang="ja"] .explore-card h3 { font-size: clamp(1.75rem, 2.25vw, 2.2rem); line-height: 1.5; margin-bottom: 14px; }
  .explore-card .explore-lead { font-size: 1.1875rem; line-height: 1.8; margin-bottom: 12px; }
  .explore-card .explore-description { max-width: 34em; font-size: 1rem; line-height: 1.95; color: #536b60; }
  .explore-card > div > .explore-link { min-width: 132px; margin-top: 18px; border-color: #afc0b5; }
  .explore-card:first-child {
    grid-template-columns: minmax(0, 1.22fr) minmax(0, 1fr);
    gap: clamp(40px, 5vw, 72px);
    padding-bottom: 52px;
    border-bottom-color: #dce6df;
  }
  .explore-card:first-child img { aspect-ratio: 16 / 11; }
  .explore-card:first-child .explore-copy { padding: 8px 0; }
  .explore-card:first-child h3, html[lang="ja"] .explore-card:first-child h3 { font-size: clamp(2rem, 3vw, 2.75rem); }
  .explore-card:nth-child(4) { grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); background: #173f35; border-radius: 4px; }
  .explore-card:nth-child(4) img { aspect-ratio: 4 / 3; min-height: 390px; height: 100%; border-radius: 0; }
  .explore-card:nth-child(4) .explore-copy { padding: clamp(32px, 4vw, 58px); }
  .explore-card:nth-child(4) .explore-number, .explore-card:nth-child(4) .explore-description { color: #dbe8df; }
  .explore-card:nth-child(4) .explore-link { color: #fff; border-color: #a3bdae; }
  .explore-card:nth-child(4):hover .explore-link { color: #fff; }
  .explore-card:last-child { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: 6%; padding-top: 48px; }
  .explore-card:last-child img { aspect-ratio: 16 / 10; }
  .explore-card:last-child .explore-copy { padding: 0; }
  .gateway-actions { padding-top: 32px; border-color: #dce6df; }
  .gateway-actions .button { min-width: 180px; border-color: #a9bdb0; }

  /* Shared page proportions, with readable line lengths and restrained borders. */
  .page-heading:not(.stay-page-heading) { max-width: 82rem; padding: 56px var(--desktop-gutter) 24px; }
  .page-heading > span { letter-spacing: .15em; color: #597467; }
  .page-heading h1 { font-size: clamp(2.75rem, 4.3vw, 3.75rem); line-height: 1.4; margin-top: 16px; }
  .section { max-width: 82rem; padding: 72px var(--desktop-gutter); }
  .section h2 { font-size: clamp(2rem, 3vw, 2.75rem); line-height: 1.6; letter-spacing: .035em; }
  .section p, .section li { line-height: 2; }
  .section p { max-width: 42em; }
  .section .split { gap: clamp(40px, 5vw, 76px); }
  .section img { border-radius: 4px; }
  .button { border-radius: 2px; letter-spacing: .035em; }
  .section .details { max-width: 56rem; }
  .details summary { min-height: 48px; }
  .offgrid-story, .group-inquiry { max-width: none; }
  .owner-layout figure { top: 116px; }

  /* Keep the stay choices compact; all details still open on demand. */
  .page-heading.stay-page-heading {
    width: calc(100% - 2 * var(--desktop-gutter));
    max-width: 72rem;
    min-height: 17rem;
    margin-top: 32px;
    border-radius: 4px;
  }
  .stay-page-heading .stay-hero-copy { padding: 32px 40px; }
  .page-heading.stay-page-heading h1 { font-size: 2.75rem; }
  .stay-page-heading .stay-hero-copy p { margin-top: 10px; font-size: 1rem; }
  #stay.section { max-width: calc(72rem + 2 * var(--desktop-gutter)); padding: 36px var(--desktop-gutter) 64px; }
  #stay > h2 { font-size: 1.75rem; margin-bottom: 10px; }
  #stay > .stay-minimum { margin-bottom: 26px; }
  #stay .stay-plan-list { gap: 16px; }
  #stay .stay-plan { border-color: #d8e3db; border-radius: 4px; }
  #stay .stay-plan > summary, #stay .stay-family-link { grid-template-columns: 112px minmax(0, 1fr) 24px; gap: 26px; padding: 20px 28px; }
  #stay .stay-plan > summary > img, #stay .stay-family-link > img { width: 112px; height: 100px; border-radius: 3px; }
  #stay .stay-plan-label > strong { font-size: 1.25rem; font-weight: 500; }
  #stay .stay-plan-content { padding: 28px; }
  #stay .stay-option-copy { padding: 28px; }
  #stay .stay-booking-action { margin-top: 28px; }
  #stay .stay-booking-action > .button { max-width: 100%; }
  #stay details[id] { scroll-margin-top: 7.5rem; }

  .fund-hero { max-width: 92rem; min-height: 550px; margin: 24px var(--desktop-gutter) 0; border-radius: 4px; overflow: hidden; }
  .fund-hero > img { min-height: 550px; }
  .fund-intro { padding: clamp(36px, 4.5vw, 68px); }
  .fund-intro h1 { font-size: clamp(2.25rem, 3.3vw, 3rem); }
  .rewards { gap: 24px; }
  .reward, .private-plan { border-radius: 4px; border-color: #d7e3da; }
  .reward { padding: 36px; }
  .access-section iframe { border-radius: 4px; }
  .contact-section { border-top: 1px solid #dce6df; }

  footer {
    padding: 48px max(var(--desktop-gutter), calc((100% - var(--desktop-width)) / 2));
    background: #f3f7f4;
    border-top-color: #dce6df;
    gap: 40px;
  }
  footer .brand { font-size: 1.625rem; }
  footer > div { max-width: 32rem; color: #526b5d; }
}

@media (min-width: 60rem) and (max-width: 74.999rem) {
  body > header { padding-inline: 24px; column-gap: 16px; }
  .cinematic.aerial-hero .hero-photo-title { max-width: 34rem; margin: 40px; }
  .home-gateway .explore-grid { gap: 48px 32px; }
  .explore-card:nth-child(4) .explore-copy { padding: 32px; }
}

@media (min-width: 80rem) {
  .hero.aerial-hero { display: grid; grid-template-columns: 1.1fr 1fr; }
  .cinematic.aerial-hero .hero-photograph { grid-column: 1 / -1; }
  .cinematic.aerial-hero .hero-content { grid-column: 1; grid-row: 2; padding-right: 28px; }
  .cinematic.aerial-hero .hero-bottom { grid-column: 2; grid-row: 2; align-items: center; padding: 24px 0 24px 28px; border-top: 0; }
}

@media (min-width: 100rem) {
  .fund-hero { margin-inline: auto; width: calc(100% - 2 * var(--desktop-gutter)); }
}

@media (min-width: 60rem) and (hover: hover) and (prefers-reduced-motion: no-preference) {
  header .desktop-navigation > a { transition: color .2s ease, border-color .2s ease; }
  header .desktop-navigation > a:hover { color: #123f34; border-bottom-color: #5c806c; text-decoration: none; }
  .hero-actions a { transition: background .2s ease, border-color .2s ease; }
  .hero-actions .hero-primary:hover { background: #22644f; border-color: #22644f; transform: none; }
  .hero-actions .hero-secondary:hover { background: #f0f5f1; transform: none; }
  #stay .stay-plan > summary, #stay .stay-family-link { transition: background .2s ease; }
}

}
/* /header-layout.css?v=20261007-9 */
/* Eight page links beside the wordmark; only a slim social strip below. */
body > header.compact-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;height:auto;min-height:76px;padding:12px clamp(16px,4vw,64px);gap:12px}
header.compact-header .brand{min-width:0;max-width:none;white-space:nowrap;font-size:clamp(1.125rem,2vw,1.5625rem)}
header.compact-header .brand small{line-height:1.4}
header.compact-header .desktop-navigation{display:flex;flex-flow:row nowrap;align-items:center;justify-content:flex-start;gap:12px;min-width:0;margin:0;padding:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scroll-snap-type:x proximity}
header.compact-header .desktop-navigation > a{display:inline-flex;align-items:center;flex:0 0 auto;min-height:44px;padding-block:4px;border-bottom:1px solid transparent;font-size:.875rem;line-height:1.5;white-space:nowrap;scroll-snap-align:start}
header.compact-header .desktop-navigation > a[aria-current="page"]{border-bottom-color:currentColor}
header.compact-header .desktop-navigation > a:focus-visible{outline:2px solid #245b44;outline-offset:-2px}
header.compact-header .header-actions{display:flex;flex:0 0 auto;flex-direction:row;align-items:center;gap:12px;margin-left:0}
header .language-switcher{position:relative;flex:0 0 auto;margin:0;padding:0;border:0}
header .language-switcher > summary{min-height:44px;padding:10px 8px;font-size:.875rem;line-height:1.5;font-weight:400;cursor:pointer;white-space:nowrap}
header .language-switcher > .language-picker{position:absolute;top:100%;right:0;z-index:50;display:flex;flex-direction:column;align-items:stretch;width:10rem;padding:8px;margin-top:4px;gap:0;background:#fff;border:1px solid #dbe2d9;border-radius:4px;box-shadow:0 12px 32px #183c3414}
header .language-switcher:not([open]) > .language-picker{display:none}
header .language-switcher .language-picker > a:not(.nav-cta){display:flex;min-height:44px;align-items:center;padding:10px 12px;font-size:.875rem}
header.compact-header .site-menu > summary{width:44px;min-width:44px;min-height:44px;padding:0;gap:0}
header.compact-header .site-menu > summary > span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
/* Keep the opened menu in a single vertical column on touch screens too. */
header.compact-header .site-menu{position:relative;flex:0 0 auto}
header.compact-header .site-menu > nav{position:absolute;inset:auto 0 auto auto;top:calc(100% + 8px);z-index:100;display:flex;flex-flow:column nowrap;justify-content:flex-start;align-items:stretch;gap:0;width:300px;max-width:calc(100vw - 32px);max-height:calc(100vh - 112px);max-height:calc(100dvh - 112px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:8px 12px;border:1px solid #d8d5c9;border-radius:3px;background:#f3f0e7;box-shadow:0 16px 40px #183c3420}
header.compact-header .site-menu:not([open]) > nav{display:none}
header.compact-header .site-menu > nav > a:not(.nav-cta){display:block!important;flex:0 0 auto;min-height:44px;width:100%;padding:12px 10px;font-size:.875rem!important;line-height:1.65;white-space:normal;overflow-wrap:break-word;text-align:left}
body > .top-instagram{display:block}
.top-instagram-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;min-height:44px;gap:16px;padding-block:0}
.top-notice{display:block;min-width:0;overflow-x:auto;overflow-y:hidden;white-space:nowrap;font-size:.875rem;line-height:1.5;scrollbar-width:none}
.top-notice::-webkit-scrollbar{display:none}
.top-notice > a,.top-notice > span{display:flex;align-items:center;min-height:44px;width:max-content;max-width:none}
.top-notice-link{color:#34493d;text-decoration:underline;text-underline-offset:.25em}
.top-notice-link:focus-visible{outline:2px solid #52654c;outline-offset:-2px}
.top-instagram-caption{font-size:.875rem;line-height:1.6;letter-spacing:.025em}
.top-social-links{display:flex;align-items:center;justify-self:end;gap:8px;min-width:0}
.top-social-links .top-instagram-link,.top-social-links .top-airbnb-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding-block:0;font:400 .875rem/1.5 'Noto Sans JP','Noto Sans Thai',sans-serif;letter-spacing:.025em;text-decoration:none;color:#34493d;white-space:nowrap}
.top-social-links .top-instagram-link{gap:.625rem;min-width:44px}
.top-social-links .top-airbnb-link{min-width:44px;gap:0}
.top-social-links img{display:block;object-fit:contain;max-width:none}
.top-social-links .top-instagram-link img{width:22px;height:22px;flex-basis:22px;transform:translateX(6px)}
.top-social-links .top-airbnb-link img{width:22px;height:22px;border-radius:6px;filter:none}
.top-airbnb-link::before{display:none}
.top-airbnb-link:hover span{text-decoration:underline;text-underline-offset:.3em}
.top-airbnb-link:focus-visible{outline:2px solid #52654c;outline-offset:3px;border-radius:3px}
@media(min-width:70rem){
 body > header.compact-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:clamp(12px,1.5vw,24px);min-height:84px}
 header.compact-header .brand{white-space:nowrap}
 header.compact-header .desktop-navigation{justify-content:safe center;gap:clamp(12px,1.3vw,22px)}
}
@media(max-width:1199px) and (min-width:70rem){body > header.compact-header{padding-inline:24px}header.compact-header .brand{font-size:1.375rem}header.compact-header .desktop-navigation{gap:12px}}
/* Keep a usable space for touch scrolling beside the wordmark on phones. */
@media(max-width:520px){body > header.compact-header{padding-inline:12px;gap:8px}header.compact-header .brand{width:120px;font-size:.875rem;letter-spacing:.015em}header.compact-header .brand small{display:none}header.compact-header .header-actions{gap:4px}header .language-switcher > summary{padding-inline:4px;font-size:.75rem}header.compact-header .desktop-navigation{gap:12px}}
@media(max-width:520px){.top-instagram{padding-inline:12px}.top-instagram-inner{gap:8px}.top-instagram-caption{font-size:.75rem;max-width:none;white-space:nowrap}.top-social-links{gap:4px}.top-social-links .top-instagram-link{min-width:44px}}
@media(max-width:350px){header.compact-header .header-actions{gap:4px}}

/* The original gold-and-green village mark anchors both ends of each page. */
.village-mark{display:block;flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:#104b3b url('/assets/saaijai-mark-192.png') center/cover no-repeat;box-shadow:0 0 0 1px #b79b6033}
header.compact-header .brand{display:flex;align-items:center;gap:10px;text-decoration:none;line-height:1.4}
header.compact-header .brand-wordmark{display:block;min-width:0}
header.compact-header .brand:focus-visible{outline:2px solid #245b44;outline-offset:4px;border-radius:3px}
body > footer.village-footer{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:24px;padding:36px clamp(20px,4vw,64px);background:#153e34;color:#e5eadd;border-top:2px solid #c5ac6e;font-size:.8125rem;line-height:1.9}
footer.village-footer > .brand{display:flex;align-items:center;gap:14px;max-width:none;min-width:0;font-size:1.25rem;line-height:1.5;letter-spacing:.08em;text-align:left;text-decoration:none;color:#f6f1e3}
footer.village-footer .village-mark{width:56px;height:56px;box-shadow:0 0 0 1px #c5ac6e55}
footer.village-footer .brand-wordmark{display:block;min-width:0}
footer.village-footer .brand small{margin-top:4px;font-size:.625rem;line-height:1.6;letter-spacing:.09em;color:#c4d0c1}
footer.village-footer > .footer-description{max-width:none;min-width:0;color:#c4d0c1}
footer.village-footer .footer-description a{color:#eee1bd;text-decoration:underline;text-underline-offset:.25em}
footer.village-footer .footer-socials{display:flex;flex-flow:row wrap;gap:12px;min-width:0;margin:0;padding:0}
footer.village-footer .footer-socials > a{display:inline-flex;align-items:center;align-self:stretch;gap:12px;min-height:52px;max-width:100%;padding:10px 14px;border:1px solid #d7e0cf40;border-radius:8px;background:#ffffff05;color:#f6f1e3;text-decoration:none;font:400 .875rem/1.5 'Noto Sans JP','Noto Sans Thai',sans-serif;letter-spacing:.01em}
footer.village-footer .footer-socials img{display:block;flex:0 0 32px;width:32px;height:32px;border-radius:8px;object-fit:contain;filter:none}
footer.village-footer .instagram-handle{font-size:.6875rem;line-height:1.5;color:#c4d0c1}
footer.village-footer .footer-socials > a:hover{border-color:#c5ac6e;background:#ffffff0c}
footer.village-footer a:focus-visible{outline:2px solid #e0c780;outline-offset:4px;border-radius:4px}
@media(min-width:44rem){
 body > footer.village-footer{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:28px 40px;padding-block:44px}
 footer.village-footer .footer-socials{grid-column:1/-1}
}
@media(min-width:70rem){
 body > footer.village-footer{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) auto;gap:32px;padding:48px max(clamp(24px,4vw,64px),calc((100% - 1320px)/2))}
 footer.village-footer .village-mark{width:64px;height:64px}
 footer.village-footer .footer-socials{grid-column:auto;flex-direction:column}
}
@media(max-width:520px){
 header.compact-header .brand{width:120px;gap:7px;white-space:normal;font-size:.875rem;letter-spacing:.015em}
 header.compact-header .village-mark{width:32px;height:32px}
 header.compact-header .brand-wordmark{flex:1;line-height:1.4}
}
