
.preopen-announcement{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:10px 16px;background:#e3eef2;color:#3b4648;text-decoration:none;border-bottom:1px solid #cedce2;font-family:var(--font-jp);font-size:13px;line-height:1.5;letter-spacing:.035em;text-align:center}
.preopen-announcement:hover{background:#d7e7ed}
.preopen-announcement:focus-visible{outline:2px solid #90553f;outline-offset:-3px}
.header-shell .mobile-menu{z-index:40;max-height:calc(100svh - 70px);overflow:auto}
.campaign-photo-hero{height:calc(100svh - 157px)}
.visit-welcome{max-width:1260px;margin:auto;text-align:center;padding-top:65px;padding-bottom:60px}
.visit-welcome>h1{font-family:var(--font-jp);font-weight:400;color:var(--rust);font-size:clamp(30px,3.5vw,49px);line-height:1.55;letter-spacing:.07em;margin:25px 0}
.visit-welcome-lead{max-width:640px;margin:0 auto;font-size:16px;line-height:2}
.visit-invitation{font-size:14px;line-height:1.9;margin:18px auto 36px}
.visit-benefits{display:grid;grid-template-columns:repeat(3,1fr);text-align:left;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:35px 0}
.visit-benefits>div{padding:28px}
.visit-benefits>div+div{border-left:1px solid var(--line)}
.visit-benefits h2{font-size:18px;font-weight:400;line-height:1.6;margin:12px 0}
.visit-benefits p{font-size:14px;line-height:1.9;margin:0}
#studio-access{scroll-margin-top:165px}
@media(max-width:650px){
.preopen-announcement{font-size:11px;letter-spacing:0;line-height:1.6;padding:9px 8px;gap:2px}
.campaign-photo-hero{height:calc(100svh - 114px);min-height:420px}
.visit-welcome{padding:35px 22px}
.visit-welcome>h1{font-size:30px;margin:20px 0}
.visit-welcome-lead{font-size:14px;line-height:1.9}
.visit-invitation{font-size:13px;line-height:1.8}
.visit-benefits{grid-template-columns:1fr;margin:26px 0}
.visit-benefits>div{padding:20px 0}
.visit-benefits>div+div{border-left:0;border-top:1px solid var(--line)}
.visit-benefits h2{font-size:17px;margin:7px 0}
.visit-benefits p{font-size:13px;line-height:1.8}
#studio-access{scroll-margin-top:122px}
.home-first{padding:24px 18px 36px}
.home-first>.eyebrow{margin:0;font-size:10px}
.home-first>h2{font-size:22px;line-height:1.25;margin:9px 0 14px}
.home-first>h2 span{font-size:18px;margin-top:4px;line-height:1.4}
.home-first .inheritance-text:has(.herstone-poem){margin:0 auto 26px;max-width:430px}
.home-first .herstone-poem{font-size:13px;line-height:1.55;letter-spacing:0}
.home-first .inheritance-text .herstone-poem p{font-size:inherit;line-height:1.55;margin:0 0 5px;text-wrap:pretty}
.home-first .inheritance-text .herstone-poem .poem-lead{font-size:17px;line-height:1.5;letter-spacing:0;margin-bottom:10px}
.home-first .herstone-poem .poem-lead span{display:inline}
.home-first .herstone-poem .poem-stanza+.poem-stanza{margin-top:12px}
.home-first .herstone-poem .poem-stanza:not(.poem-opening) p{display:inline;margin:0}
.home-first .inheritance-text .herstone-poem .poem-closing p:last-child{display:block;margin-top:7px}
}
