/* White space, warm paper and quiet gold — adopted from the supplied visual brief. */
:root{--paper:#fff;--cream:#f8f6f2;--ink:#48433d;--muted:#70685e;--rust:#80643a;--green:#80643a;--line:#e5ddcf;--white:#fff;--gold:#bca371}
body{font-family:var(--serif);letter-spacing:.035em}h2{font-size:32px;letter-spacing:.1em;line-height:1.9}h3{letter-spacing:.07em}.wrap{width:min(1060px,calc(100% - 112px))}.section{padding-block:130px}.note,small{color:var(--muted)}.label{color:var(--muted)}
.preview-bar{background:#f5f2eb;color:#6e5d40;padding:5px 16px;font-size:10px}.preview-bar a{border-color:#c3b28d}.site-header{position:relative;background:#fff;border:0;backdrop-filter:none}.header-inner{height:108px;width:calc(100% - 88px);max-width:1440px}.brand-mark{font-size:47px;font-style:normal;color:var(--gold);letter-spacing:-5px}.brand-title{font-size:14px;letter-spacing:.2em}.brand-title small{font-size:9px;margin-top:4px}.desktop-nav{gap:26px;font-size:14px;letter-spacing:.08em}.desktop-nav .nav-cta{background:transparent;color:var(--rust);border:1px solid var(--line);border-radius:40px;padding:12px 19px}.desktop-nav .nav-cta:after{display:none}.menu-toggle{border:1px solid var(--line);border-radius:50%;width:48px;height:48px;padding:13px}.menu-toggle span{background:var(--rust);margin:5px 0}.menu-toggle small{display:none}.menu-close{border-radius:50%;color:var(--rust)}
.btn{background:#fff;color:var(--rust);border-color:#c9b58c;border-radius:40px;padding:13px 25px;font-family:var(--serif);font-size:15px;min-height:48px}.btn:after,.text-link:after{font-size:17px}.btn:hover,.btn.solid:hover{background:#70552e;color:#fff}.btn.solid{background:var(--rust);color:#fff;border-color:var(--rust)}.text-link{font-family:var(--serif);color:var(--rust);border-color:var(--line);font-size:15px;letter-spacing:.07em}.eyebrow{font:11px/1.7 var(--sans);font-style:normal;letter-spacing:.16em;gap:14px;margin-bottom:22px;color:var(--rust)}.eyebrow b{font-family:var(--serif);font-size:13px;font-weight:400;letter-spacing:.15em}.eyebrow:before{width:22px;background:var(--gold)}
.hero{padding:0;min-height:0;height:min(820px,calc(100svh - 134px));min-height:660px;overflow:hidden;background:#fff}.hero-inner{display:block;max-width:none;width:100%;height:100%;margin:0}.hero-photo{position:absolute;inset:0 0 0 30%;padding:0;margin:0;overflow:hidden}.hero-photo:after{content:'';position:absolute;inset:0;z-index:1;width:100%;background:linear-gradient(90deg,#fff 0%,#ffffffd9 4%,#ffffff00 27%),linear-gradient(0deg,#fff 0%,#ffffff00 22%);pointer-events:none}.hero-poster,.hero-poster img,.hero-video{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-poster{z-index:0}.hero-poster img{filter:brightness(1.02)}.hero-video{opacity:0;transition:opacity .8s;z-index:0}.hero-video.is-playing{opacity:1}.hero-copy{position:absolute;left:8%;top:30px;padding:0;width:270px;z-index:3}.j .hero-copy{animation:none}.hero-location{font-family:var(--sans);font-size:10px;letter-spacing:.18em;margin:0 0 37px;color:#756b5d}.hero h1{display:flex;flex-direction:row-reverse;justify-content:flex-end;gap:22px;font-size:32px;line-height:1.7;letter-spacing:.18em;white-space:normal;margin:0 0 35px}.hero h1 .hero-title-column{writing-mode:vertical-rl;text-orientation:upright;white-space:nowrap;display:block;padding:0}.hero h1 .hero-title-column:first-child{color:var(--rust)}.hero-lead{font-size:18px;line-height:2;letter-spacing:.08em;margin:0;max-width:270px}.hero-copy .text-link{margin-top:23px;font-size:14px}.hero-tail{position:absolute;left:8%;bottom:18px;width:84%;margin:0;z-index:3;font:10px/1.6 var(--sans);letter-spacing:.12em;pointer-events:none}.hero-tail a{pointer-events:auto}.scroll-cue{font-size:9px}.film-controls{position:absolute;z-index:4;right:44px;bottom:50px;display:flex;gap:12px;align-items:center}.film-chapter{padding:10px 17px;background:#ffffffeb;color:#574932;font:11px/1.7 var(--serif);letter-spacing:.13em}.film-chapter b{font-weight:400;margin-left:14px}.film-toggle{background:#ffffffed;color:#5b4a30;border:1px solid #d0c2a6;border-radius:25px;padding:9px 15px;font-size:12px;min-height:44px;display:flex;gap:8px;align-items:center}.film-toggle[hidden]{display:none}.film-icon{font:12px var(--sans)}.hero-still-notice{font-size:12px;position:absolute;bottom:76px;right:44px;z-index:4;background:#fff;padding:6px 12px}.hero-still-notice[hidden]{display:none}
.open-note{padding:26px 0;grid-template-columns:145px 1fr auto;border-bottom:0;gap:30px}.open-note .heading{font-family:var(--serif);color:var(--rust);letter-spacing:.12em}.open-note .heading:before{width:4px;height:4px;background:var(--gold)}.open-note p{font-size:16px}.open-note p small{font-size:12px}.intro{padding:145px 0}.intro-grid{max-width:940px;grid-template-columns:.85fr 1fr;gap:110px}.intro-left{padding:0 0 30px 0}.intro-left img{aspect-ratio:.94;object-fit:cover}.intro-left:before{left:-35px;bottom:0;background:#f7f4ee;width:80%;height:75%}.giant-word{display:none}.intro-text h2{font-size:32px;margin-bottom:27px}.intro-text p{line-height:2.15}.grains{color:var(--gold)}.image-caption{font-family:var(--serif);font-size:12px;line-height:1.8}
.menu-section{background:#fff;padding:40px 0 130px;position:relative}.menu-section:before{content:'';position:absolute;top:33%;left:26%;right:0;bottom:0;background:var(--cream);z-index:-1}.section-head{display:block;text-align:center;margin-bottom:70px}.section-head .eyebrow{justify-content:center;margin-bottom:18px}.section-head .text-link{margin-top:20px}.menu-grid{max-width:870px;margin:auto;grid-template-columns:1fr 1fr;gap:70px 100px;align-items:start}.menu-item{position:relative;padding:0 40px 0 0}.menu-item:nth-child(2n){padding:80px 40px 0 0}.menu-item .photo-link{overflow:visible}.menu-item .photo-link img{aspect-ratio:1;object-fit:cover}.menu-item .menu-title{position:absolute;top:0;right:0;writing-mode:vertical-rl;display:flex;flex-direction:row;gap:18px;padding:0 0 0 13px;border-left:1px solid var(--line);border-bottom:0;margin:0;color:var(--rust)}.menu-item:nth-child(2n) .menu-title{top:80px}.menu-title h3{font-size:19px;line-height:1.65;letter-spacing:.16em}.menu-title span{font-size:16px}.photo-link .photo-count{display:none}.menu-item p{font-size:18px;line-height:2;margin-top:24px}.menu-note{max-width:870px;margin:60px auto 0;line-height:1.9}.menu-note .jp-phrase{white-space:nowrap}
.place-section{padding-top:135px}.place-heading{gap:100px;margin-bottom:65px}.place-photo{width:min(1060px,calc(100% - 112px));margin:auto}.place-photo img{height:470px;object-position:50% 60%}.place-photo figcaption{font-size:13px}.place-strip{margin:40px auto 0;padding:0;gap:30px;max-width:780px}.place-strip img{aspect-ratio:1.3}.place-footnote{padding:0;max-width:780px;font-size:13px;margin-top:24px}.story-section{padding:150px 0}.story-grid{max-width:940px;grid-template-columns:.95fr 1fr;gap:100px}.story-grid>div{grid-column:2;grid-row:1}.story-visual{grid-column:1;grid-row:1;padding:0}.story-visual img{aspect-ratio:.75;object-fit:cover;object-position:50% 45%}.story-visual:after{display:none}.story-name{display:block;border-left:1px solid var(--line);padding-left:20px}.story-name small{display:block;margin-bottom:4px}.story-name span{font-size:23px;letter-spacing:.15em}.beyond{background:var(--cream);color:var(--ink);padding:100px 0}.beyond .eyebrow,.beyond .note{color:var(--muted)}.beyond-list a,.beyond-list a:last-child{border-color:var(--line)}.beyond-list .num{color:var(--rust);font-size:20px}.beyond-list strong{font-size:25px;letter-spacing:.1em}.beyond-list p{font-size:18px}.beyond-list .arrow{color:var(--rust)}
.journal-list{max-width:940px;margin:auto;grid-template-columns:1.05fr 1fr;gap:32px 45px}.journal-card:first-child{grid-row:1/3;display:block}.journal-card:first-child .photo-link img{aspect-ratio:1.05}.journal-card:not(:first-child){display:grid;grid-template-columns:132px 1fr;column-gap:24px;align-items:start}.journal-card:not(:first-child) .photo-link img{aspect-ratio:1.1}.journal-card h3{font-size:19px;line-height:1.9}.journal-meta{font-family:var(--sans);color:var(--rust);font-size:10px;margin:13px 0 11px;gap:9px}.journal-card:not(:first-child) .journal-meta{margin-top:0}.draft-tag{font-family:var(--sans);font-size:9px;color:var(--muted)}
.visit-section{max-width:1250px;width:calc(100% - 80px);margin:auto;background:var(--cream);padding:95px 0}.visit-section .wrap{width:calc(100% - 100px)}.visit-grid{grid-template-columns:.9fr 1fr;gap:75px}.visit-image{border:0;padding:0}.visit-image img{aspect-ratio:.9;object-position:45% 50%}.info-list>div{border-color:var(--line)}.info-list dt{font-family:var(--sans);font-size:12px}.google-reviews{margin-block:100px;padding-block:70px;grid-template-columns:230px 1fr;gap:60px}.google-score strong{color:var(--rust);font-size:76px}.google-reviews-body h2{font-size:28px}.google-stars-fill{color:#8b6c2c}.google-review-actions .btn{font-size:14px}.google-review-note{font-family:var(--sans)}.location-map-frame{background:#fff}.location-map-heading h3{font-size:25px}.location-map-heading p{font-size:16px}.faq-section .faq-grid{grid-template-columns:1fr 1.7fr}.closing{padding:100px 24px 110px;border:0;background:#fff}.closing h2{font-size:30px}.closing p{font-size:17px}.closing .btn{margin-top:26px}.site-footer{background:#c3ad7d;color:#383229;padding:75px 0 35px}.site-footer .brand-mark,.site-footer .brand-title,.site-footer .brand-title small,.footer-address,.footer-bottom{color:#383229}.footer-grid{gap:90px}.footer-nav{font-family:var(--serif);font-size:14px;letter-spacing:.1em}.footer-bottom{border-color:#aa9160;font-size:11px}.footer-bottom a{color:#383229}.mobile-cta{background:#fff;border-color:var(--line);transition:transform .3s}.mobile-cta a{border-radius:30px;color:var(--rust);border-color:#c9b58c;font-family:var(--serif)}.mobile-cta a:last-child{background:var(--rust);color:#fff}.hero-in-view .mobile-cta{transform:translateY(120%)}
.page-hero{background:#fff;padding:65px 0 80px}.page-hero h1{font-size:40px;letter-spacing:.14em}.page-hero .big-en{display:none}.content-section{background:#fff}.alert-box{background:var(--cream);border-color:var(--line)}.contact-callout{background:var(--cream)}.filter-row button{border-radius:30px}.breadcrumb{font-family:var(--sans);font-size:11px}.service-links h3{font-size:27px}.content-section h2{font-size:30px}
@media(min-width:769px) and (max-width:1180px){.desktop-nav{display:none}.menu-toggle{display:block}.hero-copy{left:6%;width:250px}.hero-photo{left:31%}.hero h1{font-size:29px;gap:17px}.hero-lead{font-size:18px;max-width:235px}.hero-copy .text-link{font-size:13px}.hero-tail{left:6%;width:88%}.intro-grid,.story-grid{gap:65px}.menu-grid{gap:60px}.beyond-grid{gap:45px}.journal-card:not(:first-child){grid-template-columns:105px 1fr;gap:18px}.visit-grid{gap:40px}}
@media(max-width:768px){.wrap{width:calc(100% - 48px)}.section{padding-block:85px}.header-inner{height:90px;width:calc(100% - 42px)}.brand-mark{font-size:41px}.brand-title{font-size:12px}.brand-title small{font-size:8px}.menu-toggle{width:44px;height:44px}.preview-bar{font-size:9px;padding:5px 12px;gap:5px}.site-header{position:relative}.eyebrow{font-size:10px;gap:11px;margin-bottom:20px}.eyebrow b{font-size:11px}.eyebrow:before{width:18px}h2{font-size:27px;line-height:1.9}.hero{height:740px;min-height:0;max-height:none}.hero-inner{width:100%;height:100%;display:block}.hero-photo{inset:0;width:100%;height:560px;margin:0;padding:0}.hero-photo:after{background:linear-gradient(0deg,#fff 1%,#ffffffed 12%,#ffffff00 48%),linear-gradient(90deg,#ffffffed 0%,#ffffffa3 10%,#ffffff00 40%);inset:0}.hero-photo .hero-video,.hero-poster img{object-position:50% 43%}.hero-copy{left:28px;top:295px;width:calc(100% - 56px);padding:0;display:grid;grid-template-columns:112px minmax(0,1fr);gap:0 24px;align-items:end}.hero-location{grid-column:1/3;margin-bottom:22px;font-size:8px;letter-spacing:.13em}.hero h1{grid-column:1;grid-row:2/4;font-size:24px;gap:14px;letter-spacing:.13em;margin:0;align-self:start;justify-content:flex-end}.hero h1 .hero-title-column{line-height:1.6}.hero-lead{grid-column:2;grid-row:2;font-size:18px;line-height:2.05;letter-spacing:.04em;align-self:end;margin:105px 0 0}.hero-copy .text-link{grid-column:2;grid-row:3;margin-top:17px;font-size:12px;gap:10px;justify-self:start}.hero-tail{left:28px;width:calc(100% - 56px);bottom:12px;font-size:8px;letter-spacing:.05em}.hero-tail>span{max-width:200px}.scroll-cue{font-size:8px;gap:8px}.scroll-cue:before{width:20px}.film-controls{right:18px;bottom:auto;top:225px;gap:6px}.film-chapter{font-size:9px;padding:6px 10px;letter-spacing:.04em}.film-chapter b{margin-left:8px}.film-toggle{font-size:10px;padding:7px 10px;min-height:40px}.film-icon{font-size:10px}.hero-still-notice{top:195px;bottom:auto;right:18px;font-size:10px}.open-note{padding:23px 0;margin-top:20px;grid-template-columns:1fr;gap:9px;border-top:1px solid var(--line)}.open-note .heading{font-size:13px}.open-note p{font-size:15px}.open-note p small{font-size:11px}.open-note .text-link{font-size:13px;justify-self:start;margin-top:3px}.intro{padding:90px 0}.intro-grid{display:flex;flex-direction:column;gap:40px;max-width:470px}.intro-left{width:78%;align-self:flex-start;padding:0 0 20px}.intro-left img{aspect-ratio:1.05}.intro-left:before{left:-25px;bottom:0}.intro-text{width:100%;padding-left:28px}.intro-text h2{font-size:27px}.intro-text p{line-height:2.1}.image-caption{font-size:11px}.menu-section{padding:0 0 85px}.section-head{margin-bottom:42px}.section-head .text-link{font-size:13px;margin-top:15px}.menu-grid{grid-template-columns:1fr 1fr;gap:40px 24px;max-width:470px}.menu-item{padding:0 23px 0 0}.menu-item:nth-child(2n){padding:48px 23px 0 0}.menu-item .menu-title{padding-left:5px;gap:8px}.menu-item:nth-child(2n) .menu-title{top:48px}.menu-title h3{font-size:14px;line-height:1.4;letter-spacing:.13em}.menu-title span{font-size:12px}.menu-item p{font-size:15px;line-height:1.9;margin-top:18px}.menu-item p br{display:none}.menu-note{font-size:12px;margin-top:37px;max-width:470px}.place-section{padding-top:90px}.place-heading{gap:24px;margin-bottom:35px}.place-heading p{font-size:18px}.place-photo{width:calc(100% - 48px)}.place-photo img{height:290px;object-position:50% 57%}.place-photo figcaption{left:18px;bottom:16px;font-size:11px}.place-strip{width:calc(100% - 88px);gap:16px;margin-top:24px;padding:0}.place-strip img{aspect-ratio:.95;object-fit:cover}.place-footnote{width:calc(100% - 88px);padding:0;font-size:12px;margin:19px auto 0}.story-section{padding:90px 0}.story-grid{display:flex;flex-direction:column;gap:38px;max-width:470px}.story-grid>div{order:1;width:100%;padding-left:22px}.story-visual{order:0;width:80%;align-self:flex-start;padding:0}.story-visual img{aspect-ratio:.8}.story-visual:after{display:none}.story-name{margin-top:25px}.story-name span{font-size:22px}.beyond{padding:75px 0}.beyond-grid{gap:30px}.beyond-list strong{font-size:23px}.beyond-list p{font-size:18px}.beyond-list .num{font-size:18px}.beyond-list a{gap:14px}.journal-list{grid-template-columns:1fr;gap:30px;max-width:470px}.journal-card:first-child{grid-row:auto;display:block}.journal-card:first-child .photo-link img{width:100%;aspect-ratio:1.3}.journal-card:first-child .photo-link{grid-row:auto}.journal-card:not(:first-child){grid-template-columns:106px 1fr;gap:20px}.journal-card:not(:first-child) .photo-link img{width:106px;aspect-ratio:.95}.journal-card h3{font-size:19px;line-height:1.8}.journal-meta{font-size:10px;flex-wrap:wrap}.journal-card:not(:first-child) .journal-meta{font-size:9px}.draft-tag{font-size:9px}.visit-section{width:calc(100% - 30px);padding:65px 0}.visit-section .wrap{width:calc(100% - 40px)}.visit-grid{gap:35px}.visit-image{order:0;width:80%;padding:0;margin:0}.visit-image img{aspect-ratio:1;object-position:50% 50%}.info-list dd{font-size:18px}.info-list dt{font-size:12px}.info-list>div{grid-template-columns:67px 1fr;gap:14px}.visit-grid .btn{font-size:13px;margin-right:0;margin-bottom:13px;max-width:100%}.location-map-heading h3{font-size:23px}.location-map-heading p{font-size:14px}.location-map-heading .btn{font-size:13px}.google-reviews{gap:29px;margin:70px 0;padding:45px 0}.google-reviews-body h2{font-size:27px}.google-review-actions .btn{font-size:14px}.google-score strong{font-size:68px}.faq-section .faq-grid{grid-template-columns:1fr;gap:30px}.closing{padding:70px 24px 80px}.closing h2{font-size:27px}.closing p{font-size:15px}.closing .btn{font-size:14px;max-width:100%;gap:20px}.site-footer{padding:50px 0 95px}.footer-grid{gap:35px}.footer-nav{font-size:13px;gap:17px}.footer-address{font-size:13px}.footer-bottom{font-size:10px;line-height:1.9}.page-hero{padding:40px 0 50px}.page-hero h1{font-size:30px}.page-hero .lead{font-size:18px}.content-section h2{font-size:27px}.service-links h3{font-size:22px}.google-reviews-body .google-review-note{font-size:13px}.film-toggle-label{white-space:nowrap}.menu-panel{background:#fff}.mobile-cta a{font-size:12px}.hero-in-view .mobile-cta{transform:translateY(120%)}}
@media(max-width:360px){.hero-copy{left:24px;width:calc(100% - 48px);grid-template-columns:100px 1fr;gap:0 17px}.hero h1{font-size:22px;gap:12px}.hero-lead{font-size:17px}.hero-copy .text-link{font-size:11px}.menu-grid{gap:35px 18px}.menu-item p{font-size:14px}.wrap{width:calc(100% - 44px)}}
@media(prefers-reduced-motion:reduce){.hero-video{transition:none}.mobile-cta{transition:none}}
.hero-lead .jp-phrase{display:block;white-space:nowrap}
@media(min-width:769px) and (max-height:850px){.hero{height:calc(100svh - 134px);min-height:560px}.hero-copy{top:15px}.hero-location{margin-bottom:22px}.hero h1{font-size:27px;letter-spacing:.13em;margin-bottom:22px;gap:18px}.hero-lead{font-size:18px;line-height:1.9}.hero-copy .text-link{margin-top:14px}.film-controls{bottom:40px}.hero-tail{bottom:10px}}
@media(max-width:768px){.hero-photo:after{background:linear-gradient(0deg,#fff 0%,#fffffff5 18%,#ffffffd6 32%,#ffffff00 67%),linear-gradient(90deg,#fffffff5 0%,#ffffffbf 13%,#ffffff00 43%)}.hero-lead{letter-spacing:.02em}}
/* Legible gold accents and explicit labels for expanded navigation and steps. */
.site-header .brand-mark{color:#967a45}.footer-nav a:hover,.footer-nav a:focus-visible,.footer-nav a:active{color:#383229;text-decoration:underline;text-underline-offset:5px}.google-stars{color:#746b60}.faq-list summary:before,.flow-list li:before{display:none}.faq-q{font:italic 22px Georgia,serif;color:var(--rust);flex-shrink:0}.flow-list li{position:relative}.step-number{position:absolute;left:0;top:0;color:var(--rust);font:italic 23px/1.6 Georgia,serif}.place-photo{overflow:visible}.place-photo:after{display:none}.place-photo figcaption{position:static;max-width:100%;margin:13px 0 0;background:#fff;color:var(--muted);text-shadow:none;font-size:12px;line-height:1.8}
.faq-list summary:before,.flow-list li:before{content:none}.step-number{top:24px}
@media(max-width:768px){.visit-grid{grid-template-columns:1fr}.service-links h3{font-size:21px;letter-spacing:.02em}}
.menu-section{isolation:isolate}.intro-left{isolation:isolate}
@media(max-width:768px){.menu-item>p{display:none}}
/* Keep the photographs present while scrolling; motion belongs to the opening film. */
.js-reveal,.js-reveal.is-near{animation:none;opacity:1;transform:none;transition:none}.menu-title h3{white-space:nowrap}
/* The image stays clear of badges and labels; tap the image to pause or resume. */
.hero .film-surface{position:absolute;inset:0 0 0 30%;width:70%;height:100%;z-index:2;padding:0;min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none;display:block;cursor:pointer}.hero .film-surface:hover,.hero .film-surface:active{background:transparent;box-shadow:none}.hero .film-surface:focus-visible{outline:2px solid var(--rust);outline-offset:-4px}.hero .film-surface[hidden]{display:none}
@media(max-width:768px){.hero .film-surface{inset:0;width:100%;height:560px}}
