@font-face{font-family:'Zen Old Mincho';font-style:normal;font-weight:400;font-display:optional;src:url('fonts/zen-old-mincho.ttf') format('truetype')}
@font-face{font-family:'Libre Caslon Display';font-style:normal;font-weight:400;font-display:optional;src:url('fonts/libre-caslon-display.ttf') format('truetype')}
:root{--paper:#f4f1eb;--ink:#34342f;--muted:#796f5c;--line:#c9c2b7;--dark:#343530;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.8 'Zen Old Mincho',serif;letter-spacing:.04em}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}p,h1,h2,h3,figure,dl,dd{margin:0}a:focus-visible{outline:2px solid #8c7855;outline-offset:6px}.page{overflow:clip}.sample-bar{height:40px;position:relative;z-index:10;background:var(--paper)}.sample-bar__inner{height:100%;padding:0 25px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;letter-spacing:.02em}.sample-bar a{text-decoration:underline;text-underline-offset:4px}.frame{width:100%;margin:auto}.hero{position:relative;padding:0;min-height:calc(100vh - 40px)}.hero__grid{display:grid;grid-template-columns:1fr;grid-template-rows:calc(100vh - 40px) auto auto;position:relative}.hero__intro,.hero__intro>div,.hero__copy{display:contents}.eyebrow{position:absolute;top:35px;left:25px;font:15px/1.6 'Libre Caslon Display',Georgia,serif;color:#837b6b;max-width:260px;letter-spacing:0;z-index:2}.hero h1{position:absolute;right:3vw;top:calc(13vh - 40px);width:50vw;z-index:3;display:grid;font-size:90px;line-height:1.3;font-weight:400;letter-spacing:.04em;color:#302f2a}.hero h1 br{display:none}.sen-name-0{grid-row:1;justify-self:start}.sen-roman{grid-row:2;justify-self:center;font:italic 48px/1.15 'Libre Caslon Display',Georgia,serif;letter-spacing:-.035em}.sen-name-1{grid-row:3;justify-self:end}.hero__visual{grid-column:1;grid-row:1;position:relative;margin-top:calc(23vh - 40px);width:83%;height:77vh;overflow:hidden;background:#d0c4ad}.hero__visual img{height:100%;object-position:50% 55%;animation:sen-photo 1.8s var(--ease) both}.hero__visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(244,241,235,.70),rgba(244,241,235,.1) 55%,transparent);pointer-events:none}.hero__badge{position:absolute;right:25px;bottom:25px;color:#fff;z-index:2;writing-mode:vertical-rl;font-size:13px;letter-spacing:.15em;text-shadow:0 1px 4px #222}.hero__grid:after{content:'';position:absolute;right:8.5%;top:calc(100vh - 195px);width:1px;height:95px;background:var(--line)}.hero__lead{grid-column:1;grid-row:2;max-width:740px;margin:90px auto 55px;font-size:20px;line-height:2.2;letter-spacing:.09em}.hero__meta{grid-column:1;grid-row:3;width:min(1000px,86%);margin:0 auto 130px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}.hero__meta>div{border-top:1px solid var(--line);padding-top:20px}.hero__meta dt{font-size:15px;color:var(--muted);margin-bottom:12px}.hero__meta dd{font-size:16px;line-height:1.8}.section-box{position:relative}.section-head__label{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;letter-spacing:-.035em;line-height:1;font-size:160px}.section-head__title{font-size:34px;line-height:1.7;font-weight:400}.frame[data-ref-section=s02]{padding:150px max(7%,calc((100% - 1015px)/2));background:var(--dark);color:#f4f1eb}.frame[data-ref-section=s02] .section-head{width:43%;margin-bottom:44px}.frame[data-ref-section=s02] .section-head__label{font-size:18px;color:#cbb991;letter-spacing:0;line-height:1.8;margin-bottom:28px}.frame[data-ref-section=s02] .section-head__title{font-size:50px;line-height:1.5}.kodawari__body{position:relative}.sen-craft-photo{position:absolute;width:53.2%;height:354px;right:0;top:-162px}.kodawari__text{width:43%;font-size:16px;line-height:2.2;min-height:420px}.kodawari__text p+p{margin-top:22px}.note{font-size:15px;color:#d6c8ac}.kodawari__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:80px 100px;margin-top:100px}.kodawari__item{border-top:1px solid #ffffff32;padding-top:32px}.kodawari__item h3{font-weight:400;font-size:27px;line-height:1.7;margin-bottom:24px}.kodawari__item p{font-size:16px;line-height:2.2}.frame[data-ref-section=s04]{padding:230px max(6.25%,calc((100% - 1120px)/2)) 150px}.frame[data-ref-section=s04] .section-head{text-align:center;margin-bottom:90px}.frame[data-ref-section=s04] .section-head__label{margin-bottom:25px}.frame[data-ref-section=s04] .section-head__title{font-size:32px}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:55px}.menu-card{padding:30px 0;border-top:1px solid var(--line);transition:transform .6s var(--ease)}.menu-card:hover{transform:translateY(-6px)}.menu-card h3{font-size:27px;font-weight:400;line-height:1.7;margin-bottom:25px}.menu-card p{font-size:16px;line-height:2}.price{font:38px/1.2 'Libre Caslon Display',Georgia,serif;letter-spacing:0;margin-top:35px}.menu-sub{margin-top:55px;display:grid;grid-template-columns:repeat(3,1fr);gap:55px}.menu-sub__row{display:flex;justify-content:space-between;gap:15px;padding-top:20px;border-top:1px solid var(--line);font-size:15px}.menu-sub__name{color:var(--muted);white-space:nowrap}.frame[data-ref-section=s03]{padding:100px 0 150px}.frame[data-ref-section=s03] .section-head{padding:0 5%;position:relative;margin-bottom:90px}.frame[data-ref-section=s03] .section-head__label{font-size:160px}.frame[data-ref-section=s03] .section-head__title{position:absolute;right:7%;bottom:15px;font-size:34px}.gallery-stack{display:grid;gap:150px}.photo-card{display:grid;grid-template-columns:50% 50%;position:relative;align-items:center;margin:0}.photo-card img{height:580px;object-fit:cover;transition:transform 1s var(--ease)}.photo-card figcaption{padding:80px 13%;line-height:2.1;font-size:16px}.caption-label{display:block;font:50px/1.3 'Libre Caslon Display',Georgia,serif;letter-spacing:0;color:var(--muted);margin-bottom:45px}.photo-card:nth-child(2) img{grid-column:2;grid-row:1}.photo-card:nth-child(2) figcaption{grid-column:1;grid-row:1}.photo-card:nth-child(3){width:75%;margin:auto;grid-template-columns:45% 55%;direction:rtl}.photo-card:nth-child(3)>*{direction:ltr}.photo-card:nth-child(3) img{height:340px}.photo-card:nth-child(3) figcaption{padding:40px 13% 40px 0}.photo-card:hover img{transform:scale(.985)}.frame[data-ref-section=s06]{padding:150px max(6.25%,calc((100% - 1120px)/2)) 100px;background:#e9e4db}.frame[data-ref-section=s06] .section-head{display:flex;align-items:baseline;justify-content:space-between;gap:30px;margin-bottom:70px}.frame[data-ref-section=s06] .section-head__label{font-size:160px}.frame[data-ref-section=s06] .section-head__title{font-size:25px}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.info-row{display:grid;grid-template-columns:100px 1fr;gap:20px;border-top:1px solid var(--line);padding:18px 0}.info-row dt{font-size:15px;color:var(--muted)}.info-row dd{font-size:16px}.access-note{font-size:15px;line-height:2.1;margin-top:28px}#noren-direct-reception{padding:100px 0;min-height:0}footer{padding:90px 7% 120px;border-top:1px solid var(--line);font-size:15px;line-height:2}.footer-box{max-width:1100px;margin:auto}footer a{text-decoration:underline}.reveal{opacity:1}.sen-motion .reveal{opacity:0;transform:translateY(35px);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}.sen-motion .reveal.is-visible{opacity:1;transform:none}.hero h1>span{animation:sen-text 1.3s var(--ease) both}.hero h1 .sen-roman{animation-delay:.13s}.hero h1 .sen-name-1{animation-delay:.25s}@keyframes sen-text{from{opacity:0;transform:translateY(30px);clip-path:inset(100% 0 0)}to{opacity:1;transform:none;clip-path:inset(0)}}@keyframes sen-photo{from{transform:scale(1.04);opacity:0}to{transform:scale(1);opacity:1}}
@media(max-width:1000px) and (min-width:701px){.hero h1{font-size:75px}.sen-roman{font-size:35px}.hero__lead{width:75%}.hero__meta{gap:15px}.kodawari__grid{gap:60px}.section-head__title{font-size:26px}.menu-grid,.menu-sub{gap:30px}.info-grid{gap:40px}}
@media(max-width:700px){.sample-bar{height:66px}.sample-bar__inner{padding:8px 20px;display:block;font-size:11px;line-height:1.8}.sample-bar a{display:block}.hero__grid{grid-template-rows:calc(100svh - 66px) auto auto}.eyebrow{top:18px;left:20px;font-size:15px;max-width:190px;line-height:1.4}.hero h1{top:107px;right:5%;width:78%;font-size:62px;line-height:1.2;letter-spacing:.06em}.sen-roman{font-size:29px;line-height:1.3;margin:8px 0}.hero__visual{margin-top:175px;width:85%;height:calc(100svh - 241px);min-height:420px}.hero__visual img{object-position:45% 50%}.hero__visual:after{background:linear-gradient(180deg,rgba(244,241,235,.76),rgba(244,241,235,.05) 55%,transparent)}.hero__badge{right:18px;bottom:20px;font-size:12px}.hero__grid:after{right:7.5%;top:calc(100svh - 225px);height:100px}.hero__lead{width:86%;margin:65px auto 38px;font-size:18px;line-height:2.2;letter-spacing:.05em}.hero__meta{width:86%;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px;margin-bottom:80px}.hero__meta dt{font-size:15px}.hero__meta dd{font-size:15px;line-height:1.9}.frame[data-ref-section=s02]{padding:80px 7%}.frame[data-ref-section=s02] .section-head{width:100%;margin-bottom:30px}.frame[data-ref-section=s02] .section-head__label{font-size:18px;margin-bottom:16px}.frame[data-ref-section=s02] .section-head__title{font-size:39px}.kodawari__body{display:flex;flex-direction:column}.sen-craft-photo{position:static;width:100%;height:280px;order:0;margin-bottom:40px}.kodawari__text{width:100%;min-height:0;order:1;font-size:16px}.note{font-size:15px}.kodawari__grid{order:2;grid-template-columns:1fr;gap:40px;margin-top:65px}.kodawari__item h3{font-size:24px;margin-bottom:15px}.kodawari__item p{font-size:16px}.frame[data-ref-section=s04]{padding:100px 7% 60px}.frame[data-ref-section=s04] .section-head{margin-bottom:50px}.section-head__label,.frame[data-ref-section=s03] .section-head__label,.frame[data-ref-section=s06] .section-head__label{font-size:90px}.frame[data-ref-section=s04] .section-head__title{font-size:25px}.menu-grid{grid-template-columns:1fr;gap:25px}.menu-card{padding:28px 0}.menu-card h3{font-size:27px;margin-bottom:20px}.menu-card p{font-size:16px}.price{font-size:36px;margin-top:25px}.menu-sub{grid-template-columns:1fr;gap:22px;margin-top:20px}.menu-sub__row{font-size:15px}.frame[data-ref-section=s03]{padding:50px 0 80px}.frame[data-ref-section=s03] .section-head{padding:0 7%;margin-bottom:45px}.frame[data-ref-section=s03] .section-head__title{position:static;font-size:24px;margin-top:20px}.gallery-stack{gap:65px}.photo-card,.photo-card:nth-child(3){display:flex;flex-direction:column;width:100%;direction:ltr}.photo-card img{width:88%;align-self:flex-start;height:390px}.photo-card:nth-child(2) img{align-self:flex-end}.photo-card:nth-child(3) img{width:78%;height:310px}.photo-card figcaption,.photo-card:nth-child(3) figcaption{padding:28px 9% 0;font-size:16px;line-height:2.1;width:100%}.caption-label{font-size:43px;margin-bottom:20px}.frame[data-ref-section=s06]{padding:80px 7%}.frame[data-ref-section=s06] .section-head{display:block;margin-bottom:45px}.frame[data-ref-section=s06] .section-head__title{font-size:24px;margin-top:20px}.info-grid{grid-template-columns:1fr;gap:45px}.info-row{grid-template-columns:85px 1fr;gap:14px}.info-row dd{font-size:15px;overflow-wrap:anywhere}.access-note{font-size:15px}#noren-direct-reception{padding:60px 0}footer{padding:50px 7% 70px;font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.sen-motion .reveal{opacity:1;transform:none}}
/* Match the archived reference's 2000px opening, retaining all source copy. */
@media(min-width:701px){
.hero{height:2000px;min-height:0}.hero__grid{height:2000px;display:block}.hero__visual{position:absolute;left:0;top:460px;margin:0;width:83%;height:1540px}.hero h1{top:265px}.hero__lead{position:absolute;top:92px;left:25px;width:350px;margin:0;font-size:16px;line-height:2;letter-spacing:.04em}.hero__meta{position:absolute;right:2.5%;top:900px;width:12%;margin:0;display:grid;grid-template-columns:1fr;gap:42px}.hero__meta dd{font-size:15px;line-height:1.9}.hero__meta dt{font-size:15px}.hero__grid:after{top:1800px;height:150px}.hero__visual:after{background:linear-gradient(180deg,rgba(244,241,235,.66),rgba(244,241,235,.04) 36%,transparent)}
}
.eyebrow,.section-head__label,.caption-label{text-transform:uppercase}
@media(max-width:700px){.frame[data-ref-section=s03] .section-head__label{font-size:74px}}
