@font-face{font-family:VillaSans;src:url('assets/sans.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:VillaSerif;src:url('assets/serif.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--paper:#f4f1e9;--cream:#e9e4d8;--ink:#302f28;--olive:#40473c;--muted:#69685e;--copper:#90643f;--line:#d3cfc3;--white:#fff;--serif:VillaSerif,'Yu Mincho','Hiragino Mincho ProN',serif;--sans:VillaSans,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.95;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}button:disabled{opacity:.4;cursor:not-allowed}button,a,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--copper);outline-offset:5px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h2{font-family:var(--serif);font-size:clamp(29px,3vw,42px);line-height:1.7;letter-spacing:.09em}h3{font-family:var(--serif);font-size:26px;line-height:1.65;letter-spacing:.06em}sup{font-size:.55em}p+p{margin-top:24px}.wrap{width:min(1200px,86%);margin-inline:auto}.section{padding-block:100px}.eyebrow{font-size:12px;line-height:1.6;letter-spacing:.17em;color:var(--copper)}h2+.eyebrow,.eyebrow+h2{margin-top:24px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:58px}.section-top>p{color:var(--muted);font-size:15px}.section-note{color:var(--muted);font-size:13px;line-height:1.85;margin-top:28px}.skip{position:absolute;top:-100px;left:12px;z-index:30;background:var(--paper);padding:14px}.skip:focus{top:12px}.header{height:100px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;flex-direction:column;align-items:center;gap:9px;flex-shrink:0}.brand img{width:183px;filter:brightness(.18);height:auto}.brand>span{font-size:10px;letter-spacing:.2em;line-height:1}.desktop-nav{display:flex;align-items:center;gap:30px;font-size:13px}.desktop-nav>a:not(.nav-contact){padding-block:12px}.desktop-nav>a:hover{color:var(--copper)}.nav-contact{background:var(--olive);color:var(--paper);padding:14px 23px;display:flex;gap:28px;align-items:center}.desktop-nav>.nav-contact:hover{background:#293226;color:var(--white)}.mobile-menu{display:none}.hero{display:grid;grid-template-columns:41% 59%;min-height:660px;max-width:1800px;margin:auto}.hero-copy{position:relative;padding:46px 6% 52px 16%;display:flex;flex-direction:column;justify-content:center}.short-rule{display:inline-block;width:32px;height:1px;background:var(--copper);vertical-align:middle;margin-right:8px}.hero-copy h1{font-family:var(--serif);font-size:clamp(39px,4.03vw,60px);letter-spacing:.075em;line-height:1.63;margin-top:24px;white-space:nowrap}.hero-lead{font-size:16px;line-height:2;margin-top:27px}.text-link{font-size:14px;display:inline-flex;align-items:center;justify-content:space-between;gap:42px;border-bottom:1px solid var(--ink);padding:11px 0;width:fit-content;min-height:48px}.text-link:hover{color:var(--copper);border-color:var(--copper)}.hero-copy .text-link{margin-top:28px}.hero-en{font-size:10px;letter-spacing:.2em;color:var(--muted);margin-top:40px}.hero-visual{position:relative;min-width:0}.hero-visual>img{height:100%;width:100%;object-fit:cover;object-position:76% center}.hero-visual figcaption{position:absolute;right:18px;bottom:16px;font-size:11px;line-height:1.5;background:rgba(35,36,30,.82);color:var(--paper);padding:5px 9px}.intro-bar{display:flex;align-items:center;gap:34px;padding:26px 7%;border-bottom:1px solid var(--line);font-size:13px}.intro-bar>span:first-child{font-size:15px;letter-spacing:.13em}.intro-bar>span:nth-child(2){color:var(--muted)}.intro-bar>a{margin-left:auto;font-size:10px;letter-spacing:.16em}.intro-bar>a span{font-size:20px;margin-left:24px}.concept{display:grid;grid-template-columns:1fr 1fr;column-gap:80px}.concept-body{padding-top:54px;font-size:15px;line-height:2.15}.three-wishes{grid-column:1/-1;margin-top:68px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.three-wishes>div{border-top:1px solid var(--line);padding-top:27px;position:relative;padding-left:54px}.three-wishes>div>span{position:absolute;left:0;top:27px;font-family:Georgia,serif;color:var(--copper);font-size:24px;line-height:1.6}.three-wishes h3{font-size:24px}.three-wishes p{font-size:13px;margin-top:18px;color:var(--muted)}.lifestyle{background:#eae6dd}.lifestyle-grid{display:grid;grid-template-columns:1.23fr 1fr;gap:6%;align-items:start}.life-main{padding-top:0}.life-small{padding-top:92px}.lifestyle figure{position:relative}.lifestyle figure img{width:100%;aspect-ratio:1.28;object-fit:cover}.life-small figure img{aspect-ratio:1.13;object-position:53% center}.lifestyle figcaption{position:absolute;right:10px;bottom:10px;background:rgba(35,36,30,.82);color:#fff;padding:3px 7px;font-size:10px}.life-caption{display:flex;gap:22px;padding-top:27px}.scene-no{font-family:Georgia,serif;font-size:46px;font-style:italic;line-height:1.1;color:var(--copper)}.life-caption h3{margin-top:14px;font-size:30px}.life-caption h3+p{margin-top:20px;font-size:14px;line-height:1.95}.homecoming{margin-top:64px;border-top:1px solid #ccc5b7;display:grid;grid-template-columns:1fr 1.35fr;column-gap:60px;padding-top:35px}.homecoming>.eyebrow{grid-column:1/-1;margin-bottom:14px}.homecoming h3{font-size:25px}.homecoming>p{font-size:14px}.space{padding-bottom:84px}.space-head{display:grid;grid-template-columns:1.3fr 1fr;column-gap:60px;margin-bottom:48px}.space-head>.eyebrow{grid-column:1/-1}.space-head h2{margin-top:22px}.space-head>p:last-child{align-self:end;color:var(--muted);font-size:15px}.space-photo{position:relative;width:100%}.space-photo>img{width:100%;aspect-ratio:2.3;object-fit:cover;object-position:center 53%}.space-photo>figcaption{position:absolute;right:22px;bottom:17px;color:#fff;font-size:11px;background:rgba(35,36,30,.82);padding:4px 9px}.space-details{display:grid;grid-template-columns:repeat(3,1fr);gap:52px;padding-top:50px}.space-no{font-size:11px;letter-spacing:.13em;color:var(--copper)}.space-details h3{font-size:26px;margin-top:16px}.space-details h3+p{font-size:14px;color:var(--muted);margin-top:18px}.plans{background:#e9e4d8}.plan-feature{display:grid;grid-template-columns:1.08fr 1fr;background:var(--paper);align-items:center}.plan-figure{padding:28px 40px 23px;background:#fff;text-align:center;height:100%;display:flex;flex-direction:column;align-items:center}.plan-ref{align-self:flex-start;color:var(--muted);font-size:11px;letter-spacing:.18em}.plan-image-button{display:block;width:100%;padding:0}.plan-figure .plan-image-button{flex:1;display:flex;align-items:center;justify-content:center}.plan-figure .plan-image-button img{width:100%;height:490px;object-fit:contain}.zoom-link{font-size:13px;display:inline-flex;gap:50px;border-bottom:1px solid var(--line);align-items:center;min-height:44px;margin-top:8px}.zoom-link span{font-size:24px}.plan-info{padding:45px 48px}.plan-size{font-family:Georgia,serif;font-size:88px;line-height:1.1;margin-top:16px;letter-spacing:-.04em;color:var(--olive)}.plan-size span{font-size:32px;letter-spacing:.05em;margin-left:7px}.plan-info h3{font-size:29px;margin-top:25px}.plan-info h3+p{font-size:14px;margin-top:20px}.plan-info ul{padding:0;list-style:none;font-size:13px;margin:24px 0 0}.plan-info li{padding:9px 0;border-bottom:1px solid var(--line)}.plan-info li::before{content:'—';color:var(--copper);margin-right:10px}.plan-small-note{font-size:12px;line-height:1.75;color:var(--muted);margin-top:17px}.button{padding:17px 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:40px;font-size:14px;line-height:1.5;min-height:56px;text-align:left;transition:background .2s}.button.dark{background:var(--olive);color:var(--paper)}.button.dark:hover{background:#273021}.button.light{background:var(--paper);color:var(--olive)}.button.light:hover{background:#fff}.plan-info .button{margin-top:26px;width:100%}.plan-secondary{display:grid;grid-template-columns:1fr 250px;align-items:center;margin-top:30px;padding:30px 48px;gap:40px;border:1px solid #cdc6b8}.plan-secondary h3{font-size:24px;margin-top:14px}.small-plan-size{font-family:Georgia,serif;color:var(--copper);font-size:32px;margin-right:12px;letter-spacing:-.025em}.plan-secondary h3+p{font-size:14px;margin-top:18px}.plan-secondary .text-link{margin-top:15px}.plan-secondary .plan-image-button img{height:245px;width:100%;object-fit:contain}.quality-intro{display:grid;grid-template-columns:1fr 1.2fr;gap:60px;align-items:center}.quality-intro>div:first-child>p:last-child{font-size:14px;margin-top:27px;color:var(--muted)}.wood-panel{display:grid;grid-template-columns:.9fr 1fr;gap:22px;align-items:center}.wood-panel img{mix-blend-mode:multiply;width:100%}.wood-panel h3{font-family:Georgia,serif;font-size:23px;letter-spacing:0;white-space:nowrap;margin-top:14px}.wood-panel h3+p{font-size:13px;line-height:1.85;margin-top:17px}.assurance-list{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:65px}.assurance-list>article{border-top:1px solid var(--line);padding-top:23px}.assurance-list span{font-size:11px;color:var(--copper);letter-spacing:.13em}.assurance-list h3{font-size:23px;margin-top:14px}.assurance-list h3+p{font-size:13px;color:var(--muted);margin-top:17px}.faq{background:#eeebe3}.faq-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:65px}.faq-layout h2{font-size:31px}.faq-layout>div:first-child>p:last-child{margin-top:24px;font-size:14px;color:var(--muted)}.faq-items details{border-top:1px solid var(--line)}.faq-items details:last-child{border-bottom:1px solid var(--line)}.faq-items summary{list-style:none;display:flex;gap:24px;justify-content:space-between;padding:24px 0;font-size:15px;cursor:pointer}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary span{font-size:24px;font-weight:400;line-height:1.3;color:var(--copper);flex-shrink:0}.faq-items details[open] summary span{transform:rotate(45deg)}.faq-items details>p{font-size:14px;color:var(--muted);padding:0 30px 28px 0}.visit{background:var(--olive);color:var(--paper)}.visit .eyebrow{color:#d9c3a4}.visit .section-top>p{color:#dfdfd4}.visit .section-top{margin-bottom:33px}.visit-disclaimer{font-size:13px;line-height:1.9;border-top:1px solid #767d6f;border-bottom:1px solid #767d6f;padding:15px 0;margin-bottom:32px;color:#f0e9db}.visit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:42px}.visit-grid article>img{width:100%;aspect-ratio:1.75;object-fit:cover}.visit-grid article:nth-child(2)>img{object-position:center}.visit-detail{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px}.visit-detail h3{font-size:25px;margin-top:10px}.visit-detail h3+p{color:#d8dacf;font-size:13px;margin-top:6px}.round-link{display:flex;align-items:center;justify-content:center;border:1px solid #b0b5a6;border-radius:50%;width:60px;height:60px;flex-shrink:0;font-size:24px}.round-link:hover{color:var(--olive);background:var(--paper)}.document-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;border-top:1px solid #7a8072;margin-top:64px;padding-top:45px}.document-cta h3{font-size:26px;margin-top:11px}.document-cta h3+p{font-size:13px;color:#d8dacf;margin-top:12px}.document-cta .button{flex-shrink:0}.footer{padding-block:56px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:36px}.footer-logo{width:175px;filter:brightness(.18)}.footer>div:first-child>p{font-family:var(--serif);font-size:14px;margin-top:15px}.footer-partners{text-align:right}.footer-partners>img{width:200px;margin-left:auto}.footer-partners>p{font-size:10px;margin-top:20px;color:var(--muted);letter-spacing:.06em}.mobile-cta{display:none}dialog{border:0;background:var(--paper);padding:26px;color:var(--ink);font-family:var(--sans);max-width:calc(100% - 28px);max-height:calc(100dvh - 32px)}dialog::backdrop{background:rgba(22,27,19,.76);backdrop-filter:blur(4px)}.dialog-top{display:flex;gap:24px;justify-content:space-between;align-items:center}.dialog-top h2{font-size:21px;line-height:1.5;letter-spacing:.03em}.dialog-close{min-width:76px;min-height:44px;padding:4px 9px;font-size:13px;flex-shrink:0;border:1px solid var(--line)}#plan-dialog{width:820px}.plan-zoom-controls{display:flex;gap:14px;align-items:center;margin:18px 0}.plan-zoom-controls button{min-width:44px;min-height:44px;border:1px solid var(--line);padding:5px 12px;font-size:15px}.plan-zoom-controls output{font-size:13px;min-width:45px;text-align:center}.plan-viewport{max-height:65dvh;overflow:auto;background:#fff}.plan-viewport>img{max-width:none;width:100%;height:auto;margin:auto}.dialog-caption{font-size:11px;color:var(--muted);margin-top:14px}
@media(min-width:1600px){.hero-copy{padding-left:19%}.hero{min-height:730px}}
@media(max-width:1100px){.desktop-nav{gap:19px;font-size:12px}.nav-contact{padding:13px 15px;gap:16px}.brand img{width:162px}.wrap{width:88%}.hero-copy{padding-left:13%;padding-right:3%}.hero-copy h1{font-size:4.05vw}.hero{min-height:610px}.concept{column-gap:40px}.three-wishes{gap:25px}.three-wishes>div{padding-left:39px}.three-wishes h3{font-size:22px}.plan-info{padding:30px}.plan-figure{padding:28px}.quality-intro{gap:30px;grid-template-columns:1fr 1.12fr}.wood-panel{gap:15px}.wood-panel h3{font-size:20px}.faq-layout{gap:35px}.faq-layout h2{font-size:28px}.assurance-list{gap:28px}}
@media(max-width:820px){.header{height:84px;padding-inline:6%}.desktop-nav{display:none}.mobile-menu{display:block;position:relative;font-size:13px}.mobile-menu>summary{list-style:none;cursor:pointer;padding:10px 0;display:flex;align-items:center;gap:14px;min-height:44px}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu>summary>span{font-size:22px;line-height:1}.mobile-menu[open]>summary>span{transform:rotate(45deg)}.mobile-menu>nav{position:absolute;z-index:10;right:0;top:55px;width:250px;background:var(--paper);border:1px solid var(--line);padding:12px 25px;box-shadow:0 10px 24px #1c221426}.mobile-menu nav a{display:block;padding:13px 0;border-bottom:1px solid var(--line)}.mobile-menu nav a:last-child{border-bottom:0}.hero{grid-template-columns:42% 58%;min-height:550px}.hero-copy{padding-top:25px;padding-bottom:30px}.hero-copy h1{font-size:4.3vw}.hero-copy .eyebrow{font-size:10px;letter-spacing:.06em}.short-rule{width:18px;margin-right:4px}.hero-lead{font-size:13px}.hero-copy .text-link{font-size:12px;gap:20px}.hero-en{font-size:9px}.hero-visual img{object-position:79% center}.intro-bar{gap:20px;padding-inline:6%}.intro-bar>span:nth-child(2){font-size:11px}.concept{column-gap:30px}.concept-body{font-size:14px}.section{padding-block:76px}.section-top{gap:24px}.section-top>p{font-size:13px}.three-wishes{gap:19px;margin-top:48px}.three-wishes>div{padding-left:0}.three-wishes>div>span{position:static;font-size:20px;display:block;margin-bottom:12px}.three-wishes h3{font-size:21px}.three-wishes p{font-size:12px}.life-caption{gap:14px}.scene-no{font-size:35px}.life-caption h3{font-size:25px}.life-caption h3+p{font-size:13px}.life-small{padding-top:70px}.homecoming{gap:30px}.homecoming h3{font-size:22px}.homecoming>p{font-size:13px}.space-details{gap:30px}.space-details h3{font-size:21px}.space-details h3+p{font-size:13px}.plan-feature{grid-template-columns:1fr 1fr}.plan-info{padding:28px 24px}.plan-size{font-size:72px}.plan-info h3{font-size:25px}.plan-info h3+p{font-size:13px}.plan-info li{font-size:12px}.plan-info .button{font-size:12px;padding:15px;gap:10px}.plan-figure{padding:24px 18px}.plan-figure .plan-image-button img{height:470px}.plan-secondary{padding:28px;grid-template-columns:1fr 185px;gap:20px}.plan-secondary h3{font-size:20px}.plan-secondary h3+p{font-size:13px}.small-plan-size{font-size:27px}.quality-intro{grid-template-columns:1fr;gap:30px}.wood-panel{max-width:640px;gap:40px;grid-template-columns:.8fr 1fr}.wood-panel img{max-height:200px;object-fit:contain}.wood-panel h3{font-size:28px}.assurance-list{margin-top:36px;gap:25px}.assurance-list h3{font-size:20px}.assurance-list h3+p{font-size:12px}.faq-layout{grid-template-columns:1fr;gap:30px}.faq-layout h2{font-size:31px}.visit-grid{gap:28px}.visit-detail h3{font-size:21px}.round-link{height:48px;width:48px}.visit-detail .eyebrow{font-size:10px;letter-spacing:.1em}.document-cta{gap:25px}.document-cta h3{font-size:22px}.document-cta .button{font-size:12px;padding:17px;gap:20px}}
@media(max-width:600px){body{font-size:16px}.header{height:80px;padding-inline:6%}.brand img{width:153px}.brand>span{font-size:9px}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:31px 7% 31px;display:block}.hero-copy .eyebrow{font-size:11px;letter-spacing:.1em}.short-rule{width:25px}.hero-copy h1{font-size:clamp(32px,7.9vw,44px);line-height:1.55;margin-top:18px;letter-spacing:.07em}.hero-lead{font-size:14px;line-height:1.95;margin-top:18px}.hero-lead br:first-child{display:none}.hero-copy .text-link{font-size:13px;margin-top:17px;gap:38px;min-height:45px;padding-block:7px}.hero-en{display:none}.hero-visual{height:auto;aspect-ratio:1.22}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:82% center}.hero-visual figcaption{right:10px;bottom:10px;font-size:10px;padding:4px 7px}.intro-bar{padding:17px 6%;gap:12px}.intro-bar>span:first-child{font-size:12px;letter-spacing:.05em}.intro-bar>span:nth-child(2){display:none}.intro-bar>a{font-size:9px;letter-spacing:.08em;min-height:30px;display:flex;align-items:center}.intro-bar>a span{font-size:18px;margin-left:18px}.wrap{width:86%}.section{padding-block:62px}.eyebrow{font-size:10px;letter-spacing:.14em}h2{font-size:28px;line-height:1.75;letter-spacing:.055em}.eyebrow+h2{margin-top:18px}.concept{display:block}.concept-body{padding-top:25px;font-size:14px;line-height:2.1}.desktop-break{display:none}.concept-body p+p{margin-top:20px}.three-wishes{margin-top:32px;display:block}.three-wishes>div{padding:23px 0 23px 45px}.three-wishes>div>span{position:absolute;top:23px;left:0;font-size:23px}.three-wishes h3{font-size:22px}.three-wishes h3 br{display:none}.three-wishes p{font-size:12px;margin-top:8px}.three-wishes>div:last-child{border-bottom:1px solid var(--line)}.section-top{display:block;margin-bottom:31px}.section-top>p{font-size:13px;margin-top:20px}.lifestyle-grid{display:block}.lifestyle figure img{aspect-ratio:1.2;object-position:48% center}.life-caption{gap:18px;padding-top:22px}.scene-no{font-size:34px}.life-caption h3{font-size:26px;line-height:1.65;margin-top:12px}.life-caption h3+p{font-size:14px;margin-top:15px;line-height:1.95}.life-caption p br{display:none}.life-small{padding-top:43px}.life-small figure{width:88%;margin-left:auto}.life-small figure img{aspect-ratio:1.1;object-position:54% center}.life-small .life-caption{padding-left:10%}.homecoming{display:block;padding-top:30px;margin-top:39px}.homecoming>.eyebrow{display:block;margin-bottom:15px}.homecoming h3{font-size:23px;line-height:1.8;letter-spacing:.035em}.homecoming>p{font-size:14px;margin-top:17px}.space-head{display:block;margin-bottom:30px}.space-head>p:last-child{font-size:14px;margin-top:20px}.space-photo>img{aspect-ratio:1.15;object-position:51% center}.space-photo>figcaption{left:10px;right:auto;bottom:10px;max-width:calc(100% - 20px);font-size:10px;padding:4px 7px}.space-details{display:block;padding-top:15px}.space-details article{padding-block:27px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr;gap:0}.space-no{font-size:10px}.space-details h3{font-size:23px;margin-top:11px}.space-details h3 br{display:none}.space-details h3+p{font-size:14px;margin-top:13px;line-height:1.9}.plan-feature{display:flex;flex-direction:column}.plan-figure{width:100%;padding:23px 22px 18px}.plan-ref{font-size:10px}.plan-figure .plan-image-button img{height:auto;max-height:430px;object-fit:contain}.plan-figure .plan-image-button{width:100%}.zoom-link{font-size:13px;margin-top:3px;gap:65px}.plan-info{width:100%;padding:29px 25px 32px}.plan-size{font-size:70px;margin-top:11px}.plan-size span{font-size:29px}.plan-info h3{font-size:27px;line-height:1.65;margin-top:20px}.plan-info h3+p{font-size:14px;line-height:1.9;margin-top:19px}.plan-info h3+p br{display:none}.plan-info ul{margin-top:20px}.plan-info li{font-size:13px;line-height:1.8;padding-block:9px}.plan-small-note{font-size:12px}.plan-info .button{font-size:14px;padding:17px;gap:18px;margin-top:21px}.plan-secondary{display:flex;flex-direction:column-reverse;padding:23px;gap:22px;margin-top:24px}.plan-secondary .plan-image-button{width:75%}.plan-secondary .plan-image-button img{height:220px}.plan-secondary-copy{width:100%}.plan-secondary h3{font-size:23px;line-height:1.6}.small-plan-size{display:block;font-size:29px;margin:0 0 7px}.plan-secondary h3+p{font-size:14px;line-height:1.85}.plan-secondary h3+p br{display:none}.plan-secondary .text-link{font-size:13px;margin-top:15px}.section-note{font-size:12px;line-height:1.8;margin-top:24px}.quality-intro{display:block}.quality-intro>div:first-child>p:last-child{font-size:14px;margin-top:19px}.wood-panel{display:block;margin-top:29px}.wood-panel img{width:80%;max-height:250px;margin:auto}.wood-panel>div{padding-top:17px}.wood-panel h3{font-size:27px;margin-top:12px}.wood-panel h3+p{font-size:14px}.assurance-list{display:block;margin-top:33px}.assurance-list article{padding:23px 0}.assurance-list article:last-child{border-bottom:1px solid var(--line)}.assurance-list h3{font-size:22px;margin-top:10px}.assurance-list h3+p{font-size:14px;margin-top:11px}.assurance-list span{font-size:10px}.quality .section-note{margin-top:10px}.faq-layout{display:block}.faq-layout h2{font-size:27px}.faq-layout>div:first-child>p:last-child{font-size:14px;margin-top:17px}.faq-items{margin-top:26px}.faq-items summary{font-size:14px;gap:16px;padding-block:22px;line-height:1.9}.faq-items summary span{font-size:23px;padding-top:2px}.faq-items details>p{font-size:14px;padding-right:0;padding-bottom:23px}.visit .section-top>p{font-size:14px}.visit-disclaimer{font-size:12px;padding-block:15px;line-height:1.9;margin-bottom:27px}.visit-grid{display:block}.visit-grid article+article{margin-top:35px}.visit-grid article>img{aspect-ratio:1.65}.visit-detail{margin-top:18px}.visit-detail h3{font-size:23px;margin-top:9px}.visit-detail h3+p{font-size:13px}.round-link{width:52px;height:52px}.document-cta{display:block;margin-top:39px;padding-top:33px}.document-cta h3{font-size:24px;line-height:1.75;margin-top:12px}.document-cta h3+p{font-size:14px;line-height:1.85}.document-cta .button{width:100%;font-size:14px;padding:18px 20px;margin-top:24px}.footer{display:block;padding-top:43px;padding-bottom:calc(116px + env(safe-area-inset-bottom,0px))}.footer-logo{width:166px}.footer>div:first-child>p{font-size:14px;margin-top:17px}.footer-partners{text-align:left;margin-top:36px}.footer-partners>img{width:173px;margin-left:0}.footer-partners>p{font-size:10px;margin-top:18px}.mobile-cta{position:fixed;z-index:20;bottom:0;left:0;width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));box-shadow:0 -3px 14px #1f281b14;background:var(--paper)}.mobile-cta>a{min-width:0;font-size:clamp(14px,3.85vw,16px);font-weight:500;line-height:1.5;letter-spacing:.02em;white-space:nowrap;min-height:calc(64px + env(safe-area-inset-bottom,0px));padding:12px 5px calc(12px + env(safe-area-inset-bottom,0px));display:flex;align-items:center;justify-content:center;border-top:1px solid var(--line)}.mobile-cta>.mobile-cta-visit{background:var(--olive);color:var(--paper);border-color:var(--olive)}.mobile-cta-visit+.mobile-cta-visit{border-left:1px solid #f4f1e94d}.mobile-cta>a:focus-visible{outline:2px solid currentColor;outline-offset:-6px}dialog{padding:18px}.dialog-top{gap:16px}.dialog-top h2{font-size:17px}.dialog-close{font-size:12px;min-width:74px;padding-inline:7px}.plan-zoom-controls{gap:9px;margin:16px 0}.plan-zoom-controls button{padding:5px 10px;font-size:14px}.plan-zoom-controls output{font-size:12px;min-width:36px}.plan-viewport{max-height:60dvh}.dialog-caption{font-size:11px;line-height:1.7}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
@media(max-width:600px){.hero-lead,.concept-body,.life-caption h3+p,.homecoming>p,.space-head>p:last-child,.space-details h3+p,.plan-info h3+p,.plan-secondary h3+p,.quality-intro>div:first-child>p:last-child,.wood-panel h3+p,.assurance-list h3+p,.faq-items summary,.faq-items details>p,.visit .section-top>p,.document-cta h3+p{font-size:16px;line-height:1.95}.plan-info li{font-size:14px}.hero-copy h1{font-size:clamp(32px,7.9vw,44px)}}
@media print{.mobile-cta,.mobile-menu,.desktop-nav,dialog{display:none!important}.section{break-inside:avoid}body{background:white}.hero{min-height:0}.footer{padding-bottom:30px}}
@media(max-width:600px){.hero-lead br:first-child{display:initial}}

/* Revision 03: a shared concept, six deliberately different compositions. */
.hero-copy h1{font-size:clamp(32px,3.4vw,50px);line-height:1.68;letter-spacing:.055em}
.editorial{padding:96px 0 0;background:var(--paper)}
.editorial-intro{display:grid;grid-template-columns:1.65fr 1fr;gap:40px;align-items:end;margin-bottom:60px}
.editorial-intro h2{font-size:clamp(38px,4.35vw,62px);line-height:1.55;letter-spacing:.04em;margin-top:25px}
.editorial-intro h2 span{color:var(--olive)}
.editorial-intro>p{font-size:16px;line-height:2.1;padding-bottom:12px;color:var(--muted)}
.story{position:relative;min-width:0}
.editorial .story figure{margin:0;position:relative;min-width:0}
.editorial .story figure img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center}
.editorial .story figcaption{font-size:10px;line-height:1.6;right:12px;bottom:12px;padding:4px 8px;max-width:calc(100% - 24px)}
.story-copy{position:relative;min-width:0}
.story-meta{display:flex;align-items:center;gap:18px;color:var(--copper);font-size:10px;line-height:1.7;letter-spacing:.12em}
.story-meta .scene-no{font-size:36px;line-height:1;color:inherit;flex-shrink:0}
.story-copy h3{font-size:clamp(28px,3.05vw,44px);line-height:1.6;letter-spacing:.045em;margin-top:20px}
.story-body{margin-top:22px;font-size:16px;line-height:2}
.story-body p{margin:0}
.story-body .story-place{font-size:11px;color:var(--muted);letter-spacing:.08em;margin-top:22px}
.story-place::before{content:'';display:inline-block;vertical-align:middle;width:23px;height:1px;background:currentColor;margin-right:12px}

.story-morning{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));margin-bottom:124px}
.story-morning figure{grid-column:4/13;grid-row:1}
.story-morning .story-copy{grid-column:1/6;grid-row:1;align-self:end;background:#e8e2d5;padding:34px 38px 35px;z-index:1;margin-bottom:-34px}
.story-morning .story-copy h3{font-size:38px}
.story-morning .story-body{font-size:15px}
.story-private{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;align-items:center;margin-bottom:110px}
.story-private figure{grid-column:2/6}
.editorial .story-private figure img{aspect-ratio:4/5;object-position:53% center}
.story-private .story-copy{grid-column:7/13;padding-left:10px}
.story-private .story-body{margin-top:26px}
.story-aside{font-family:Georgia,serif;font-style:italic;font-size:22px;letter-spacing:.035em;color:#a99c85;margin-top:35px;line-height:1.4}

.story-ride{background:var(--olive);color:var(--paper);padding:72px 0 0}
.story-ride .story-copy{display:grid;grid-template-columns:1.3fr 1fr;column-gap:70px}
.story-ride .story-meta{grid-column:1/-1;color:#d9c3a4}
.story-ride h3{font-size:clamp(38px,4.5vw,66px);line-height:1.5;margin-top:18px;letter-spacing:.05em}
.story-ride .story-body{align-self:end;margin-bottom:10px;max-width:390px;color:#edece4}
.story-ride .story-place{color:#c5c9ba}
.editorial .story-ride figure{width:min(1440px,93%);margin:38px 0 0 auto}
.editorial .story-ride figure img{aspect-ratio:1.95;object-position:center 53%}

.story-reset{display:grid;grid-template-columns:1fr 1.08fr;gap:6%;align-items:center;margin-block:110px}
.story-reset .story-copy{display:grid;grid-template-columns:auto minmax(0,1fr);gap:30px 32px;align-items:center}
.story-reset .story-meta{grid-column:1/-1}
.story-reset h3{writing-mode:vertical-rl;text-orientation:mixed;height:360px;font-size:30px;line-height:1.8;letter-spacing:.09em;margin:0}
.story-reset .story-body{margin:0;font-size:15px}
.story-reset .story-body br{display:none}
.editorial .story-reset figure{margin-top:48px}

.story-reunion{background:#e8e2d5;padding-bottom:66px}
.editorial .story-reunion figure{width:min(1260px,88%)}
.editorial .story-reunion figure img{aspect-ratio:1.9;object-position:center 58%}
.story-reunion .story-copy{display:grid;grid-template-columns:1.15fr 1fr;column-gap:65px;padding-top:38px}
.story-reunion .story-meta{grid-column:1/-1}
.story-reunion h3{font-size:42px}
.story-reunion .story-body{align-self:end;margin-bottom:5px}

.story-night{background:#293027;color:var(--paper);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));padding-block:72px;align-items:center}
.story-night figure{grid-column:5/13;grid-row:1}
.story-night .story-copy{grid-column:2/6;grid-row:1;z-index:1;background:#293027;padding:36px 30px 40px 0}
.story-night .story-meta{color:#d9c3a4}
.story-night h3{font-size:clamp(29px,3vw,44px)}
.story-night .story-body{font-size:15px;color:#e5e6dc}
.story-night .story-place{color:#c5c9ba}
.editorial-close{padding-top:30px;padding-bottom:90px}
.scene-image-note{font-size:12px;line-height:1.9;color:var(--muted)}
.editorial .homecoming{margin-top:56px;padding-top:42px;display:grid;grid-template-columns:1.2fr 1fr;gap:50px;border-top:1px solid var(--line)}
.editorial .homecoming h3{font-size:32px;margin-top:14px;line-height:1.7}
.editorial .homecoming>div:last-child{align-self:end}
.editorial .homecoming>div>p:not(.eyebrow){font-size:15px;line-height:2}
.editorial .homecoming .text-link{margin-top:18px}

@media(max-width:1100px){
 .editorial-intro{grid-template-columns:1.5fr 1fr;gap:26px}.editorial-intro>p{font-size:14px}
 .story-morning .story-copy{padding:27px 26px;grid-column:1/7}.story-morning .story-copy h3{font-size:32px}.story-morning .story-body{font-size:14px}
 .story-private{gap:18px}.story-private figure{grid-column:1/6}.story-private .story-copy{padding-left:0}.story-private h3{font-size:32px}
 .story-ride .story-copy{column-gap:40px}.story-ride .story-body{font-size:15px}
 .story-reset{gap:4%}.story-reset .story-copy{gap:23px}.story-reset h3{font-size:28px;height:340px}.story-reset .story-body{font-size:14px}
 .story-reunion .story-copy{column-gap:40px}.story-reunion h3{font-size:35px}.story-reunion .story-body{font-size:15px}
 .story-night .story-copy{grid-column:1/7;margin-left:12%;padding:30px 27px 32px 0}.story-night h3{font-size:33px}.story-night .story-body{font-size:14px}
 .editorial .homecoming{gap:30px}.editorial .homecoming h3{font-size:28px}
}
@media(max-width:820px){
 .hero-copy h1{font-size:3.65vw}.editorial{padding-top:74px}.editorial-intro{display:block;margin-bottom:36px}.editorial-intro h2{font-size:43px}.editorial-intro>p{margin-top:24px;padding:0;font-size:15px}
 .story-meta{font-size:9px;gap:12px}.story-meta .scene-no{font-size:29px}.story-body{font-size:15px}
 .story-morning{margin-bottom:85px}.story-morning figure{grid-column:3/13}.story-morning .story-copy{padding:23px 25px;grid-column:1/8}.story-morning .story-copy h3{font-size:29px}.story-morning .story-body br{display:none}
 .story-private{margin-bottom:75px}.story-private .story-copy{grid-column:6/13}.story-private h3{font-size:28px}.story-private .story-body{font-size:14px}.story-aside{font-size:18px;margin-top:24px}
 .story-ride{padding-top:48px}.story-ride .story-copy{grid-template-columns:1fr 1fr;gap:0 28px}.story-ride h3{font-size:38px}.story-ride .story-body{font-size:14px;margin-bottom:0}.editorial .story-ride figure{margin-top:28px;width:94%}
 .story-reset{margin-block:76px;grid-template-columns:1fr 1.04fr;gap:5%}.story-reset .story-copy{display:block}.story-reset h3{writing-mode:horizontal-tb;height:auto;font-size:26px;line-height:1.7;letter-spacing:.025em;margin-top:19px}.story-reset .story-body{margin-top:19px;font-size:14px}.story-reset .story-body br{display:initial}.editorial .story-reset figure{margin-top:38px}
 .story-reunion{padding-bottom:48px}.story-reunion h3{font-size:30px}.story-reunion .story-copy{gap:0 30px;padding-top:30px}.story-reunion .story-body{font-size:14px}.story-reunion .story-body br{display:none}
 .story-night{padding-block:50px}.story-night .story-copy{grid-column:1/8;margin-left:11%;padding:23px 24px 27px 0}.story-night figure{grid-column:6/13}.editorial .story-night figure img{aspect-ratio:.92;object-position:73% center}.story-night h3{font-size:30px}.story-night .story-body{font-size:14px}.story-night .story-body br{display:none}
 .editorial-close{padding-bottom:65px}.editorial .homecoming h3{font-size:26px}.editorial .homecoming>div>p:not(.eyebrow){font-size:14px}.editorial .homecoming .text-link{font-size:12px;gap:20px}
}
@media(max-width:600px){
 .hero-copy h1{font-size:clamp(29px,8.6vw,39px);line-height:1.6;letter-spacing:.04em}
 .editorial{padding-top:57px}.editorial-intro{margin-bottom:29px}.editorial-intro h2{font-size:clamp(27px,7.7vw,38px);line-height:1.65;letter-spacing:.03em;margin-top:18px}.editorial-intro>p{font-size:16px;line-height:2;margin-top:23px}.editorial-intro>p br{display:none}
 .story-meta{font-size:9px;gap:13px;letter-spacing:.08em}.story-meta .scene-no{font-size:30px}.story-copy h3{font-size:clamp(25px,7.6vw,33px);letter-spacing:.035em;line-height:1.7;margin-top:17px}.story-body{font-size:16px;line-height:2;margin-top:17px}.story-body br{display:none}.story-body .story-place{font-size:10px;margin-top:19px;line-height:1.8;letter-spacing:.03em}
 .editorial .story figcaption{right:8px;bottom:8px;font-size:9px;max-width:calc(100% - 16px);padding:3px 6px}
 .story-morning{width:100%;display:block;margin-bottom:62px}.story-morning figure{width:93%;margin-left:auto}.editorial .story-morning figure img{aspect-ratio:1.43;object-position:center}.story-morning .story-copy{width:86%;margin:-19px auto 0;padding:25px 25px 27px}.story-morning .story-copy h3{font-size:30px}.story-morning .story-body{font-size:16px}
 .story-private{display:block;margin-bottom:56px}.editorial .story-private figure{width:76%;margin-left:0}.editorial .story-private figure img{aspect-ratio:.93;object-position:53% center}.story-private .story-copy{padding:25px 0 0 11%}.story-private h3{font-size:clamp(23px,6.6vw,29px);letter-spacing:.025em}.story-private .story-body{font-size:16px;margin-top:17px}.story-private .story-body br{display:none}.story-aside{font-size:16px;margin-top:24px}
 .story-ride{padding-top:40px}.story-ride .story-copy{display:block}.story-ride .story-meta .scene-no{font-size:34px}.story-ride h3{font-size:clamp(33px,10.2vw,43px);line-height:1.5;margin-top:20px;letter-spacing:.04em}.story-ride .story-body{font-size:16px;margin-top:22px}.story-ride .story-body br{display:none}.editorial .story-ride figure{width:100%;margin-top:28px}.editorial .story-ride figure img{aspect-ratio:1.5;object-position:center}
 .story-reset{display:flex;flex-direction:column;align-items:stretch;gap:27px;margin-block:57px}.story-reset .story-copy{width:92%;margin-left:8%}.story-reset h3{font-size:clamp(22px,6.5vw,28px);letter-spacing:.015em;line-height:1.8}.story-reset .story-body{font-size:16px;margin-top:20px}.story-reset .story-body br{display:none}.editorial .story-reset figure{width:100%;margin:0}.editorial .story-reset figure img{aspect-ratio:1.5}
 .story-reunion{padding-bottom:37px}.editorial .story-reunion figure{width:100%}.editorial .story-reunion figure img{aspect-ratio:1.5;object-position:center}.story-reunion .story-copy{display:block;padding-top:28px}.story-reunion h3{font-size:clamp(25px,7.5vw,32px)}.story-reunion .story-body{font-size:16px;margin-top:20px}
 .story-night{display:block;padding:0 0 37px}.editorial .story-night figure{width:100%}.editorial .story-night figure img{aspect-ratio:1.5;object-position:center}.story-night .story-copy{width:86%;margin:-17px auto 0;padding:27px 22px 0;background:#293027}.story-night h3{font-size:clamp(25px,7.2vw,31px);letter-spacing:.025em}.story-night .story-body{font-size:16px;line-height:2;margin-top:18px}.editorial .story-night figcaption,.editorial .story-morning figcaption{bottom:28px}
 .editorial-close{padding-top:23px;padding-bottom:54px}.scene-image-note{font-size:11px;line-height:1.9}.editorial .homecoming{display:block;margin-top:33px;padding-top:29px}.editorial .homecoming h3{font-size:clamp(22px,6.3vw,27px);line-height:1.85;letter-spacing:.02em;margin-top:16px}.editorial .homecoming>div:last-child{margin-top:21px}.editorial .homecoming>div>p:not(.eyebrow){font-size:16px;line-height:2}.editorial .homecoming>div>p br{display:none}.editorial .homecoming .text-link{font-size:12px;gap:14px;line-height:1.8;width:100%}
}
