/* About: real Midori photography, with contrast confined to each text area. */
.about-page{--about-deep:#0b241b;--about-rule:#a2ab915c;background:var(--forest);color:var(--cream)}
.about-page .site-header{position:fixed;inset:0 0 auto;border-bottom-color:transparent;background:linear-gradient(#0b241be8,transparent)}
.about-page .site-header [aria-current=page]{border-color:var(--cream)}
.about-main{max-width:2200px;margin-inline:auto}
.about-main h1,.about-main h2{letter-spacing:-.04em;text-wrap:balance;overflow-wrap:break-word}
.about-main h1{font-size:clamp(48px,7.3vw,116px);line-height:.96}
.about-main h2{font-size:clamp(44px,5.4vw,88px);line-height:1.02}
.about-main .eyebrow{font-size:12px;letter-spacing:.19em;line-height:1.6;margin-bottom:22px}
.about-main .button{font:400 16px/1.4 var(--sans);min-height:52px;padding:15px 28px}
.about-main .text-link{font-size:15px;padding-block:12px 6px;min-height:40px;max-width:100%}
.about-scene{isolation:isolate;display:flex;align-items:flex-end;min-height:660px;padding:80px var(--gutter);background:var(--about-deep)}
.about-scene>.about-photo{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}
.about-scene::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none}
.about-scene-copy{position:relative;max-width:860px;min-width:0}
.about-scene-copy>p:not(.eyebrow){font-size:clamp(16px,1.3vw,20px);line-height:1.65;max-width:44ch;margin-block:22px 24px;text-wrap:pretty}
.about-hero{height:min(900px,100svh);padding-top:180px}
.about-hero>.about-photo{object-position:50% 45%}
.about-hero::before{background:radial-gradient(ellipse at 15% 105%,#0b241bf0 5%,#0b241bae 30%,#0b241b42 50%,transparent 74%)}
.about-hero .about-lede{margin-block:22px 16px}
.about-heritage{position:relative;max-width:1600px;margin:auto;padding:94px var(--gutter) 82px;text-align:center}
.about-heritage .eyebrow{justify-content:center;font-family:var(--sans);font-weight:400}
.about-heritage .about-year{display:block;font:500 clamp(124px,18vw,264px)/.85 var(--serif);letter-spacing:-.06em;margin-bottom:34px}
.about-heritage>p{max-width:56ch;margin-inline:auto;font-size:clamp(16px,1.25vw,19px);line-height:1.8;text-wrap:pretty}
.about-heritage>p::before{content:'';display:block;width:64px;height:1px;background:var(--about-rule);margin:0 auto 28px}
.about-section-note{display:block;border-bottom:1px solid var(--about-rule);padding:56px 0 18px;text-align:left;font:400 10px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.18em;color:#c5cdbc}
.about-room{height:min(900px,64vw);justify-content:flex-end}
.about-room>.about-photo{object-position:50% 40%}
.about-room .about-scene-copy{width:44%;max-width:540px}
.about-room::before{background:radial-gradient(ellipse at 100% 100%,#0b241bf5 2%,#0b241bcd 24%,#0b241b66 40%,transparent 70%)}
.about-details{max-width:1700px;margin:auto;padding:100px var(--gutter) 112px}
.about-details-heading{width:58%;margin-bottom:40px}
.about-details-heading h2{font-size:clamp(44px,4.7vw,76px)}
.about-details-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px;align-items:start}
.about-details-grid figure{min-width:0}
.about-details-grid figure:last-child{margin-top:-118px}
.about-photo-frame{overflow:hidden;background:var(--about-deep)}
.about-details-grid figure:first-child .about-photo-frame{aspect-ratio:4/3}
.about-details-grid figure:last-child .about-photo-frame{aspect-ratio:.91}
.about-details-grid img{width:100%;height:100%;object-fit:cover}
.about-details-grid figure:last-child img{object-position:38% center}
.about-details figcaption{display:flex;gap:22px;align-items:baseline;margin-top:22px;padding-top:16px;border-top:1px solid var(--about-rule);font:500 21px/1.4 var(--serif)}
.about-details figcaption span{font:400 11px/1.5 var(--sans);color:#c5cdbc;flex-shrink:0}
.about-table{height:min(980px,70vw);min-height:730px;text-align:center;justify-content:center;padding-bottom:56px}
.about-table>.about-photo{object-position:50% 38%}
.about-table::before{background:linear-gradient(transparent 38%,#0b241b38 48%,#0b241bdb 76%,var(--about-deep) 100%)}
.about-table .about-scene-copy{max-width:1100px;width:100%}
.about-table .eyebrow{justify-content:center}
.about-table .about-scene-copy>p:not(.eyebrow){max-width:70ch;margin-inline:auto;margin-block:18px 22px}
.about-table-actions{display:flex;flex-direction:column;align-items:center;gap:12px}
.about-visit{background:var(--about-deep);padding:100px var(--gutter) 66px;text-align:center}
.about-visit>.eyebrow{justify-content:center;color:#c5cdbc}
.about-visit address{font-style:normal;font-size:clamp(18px,1.6vw,24px);line-height:1.55;margin-block:30px}
.about-visit>.actions{justify-content:center;gap:24px 32px}
.about-specials{max-width:1300px;margin:64px auto 28px;padding-block:34px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-block:1px solid var(--about-rule)}
.about-specials>div{padding:10px 24px;min-width:0}
.about-specials>div+div{border-left:1px solid var(--about-rule)}
.about-specials h3{font:400 12px/1.6 var(--sans);text-transform:uppercase;letter-spacing:.18em;color:#c5cdbc}
.about-specials .about-special-time{font:500 clamp(28px,3.2vw,48px)/1.2 var(--serif);margin:14px auto 12px;letter-spacing:-.02em}
.about-specials p:not(.about-special-time){font-size:15px;margin:12px auto 0;min-height:40px;padding-top:8px}
.about-main .about-hours-link{font-size:13px;color:#c5cdbc}
.about-page .site-footer{background:var(--about-deep)}
@media(max-width:1000px){
 .about-details-grid{gap:24px}
 .about-details-grid figure:last-child{margin-top:-80px}
 .about-room .about-scene-copy{width:52%}
}
@media(max-width:760px){
 .about-page{--gutter:clamp(20px,6vw,38px)}
 .about-main h1{font-size:clamp(32px,10.5vw,76px);line-height:1.02}
 .about-main h2{font-size:clamp(34px,10vw,64px);line-height:1.04}
 .about-main .eyebrow{font-size:10px;letter-spacing:.14em;gap:14px;margin-bottom:18px}
 .about-scene{padding:52px var(--gutter);min-height:640px}
 .about-hero{min-height:660px;height:92svh;padding-top:160px}
 .about-hero>.about-photo{object-position:49% center}
 .about-hero::before{background:linear-gradient(transparent 30%,#0b241b26 42%,#0b241bb3 66%,#0b241bf0 100%)}
 .about-scene-copy>p:not(.eyebrow){font-size:16px;line-height:1.65;margin-block:20px}
 .about-heritage{padding:68px var(--gutter) 52px}
 .about-heritage .about-year{font-size:clamp(112px,31vw,210px);margin-bottom:28px}
 .about-heritage>p{font-size:16px;line-height:1.8}
 .about-section-note{padding-top:38px}
 .about-room{height:740px;min-height:0;padding-top:320px}
 .about-room .about-scene-copy{width:100%;max-width:420px}
 .about-room>.about-photo{object-position:39% center}
 .about-room::before{background:linear-gradient(transparent 25%,#0b241b38 40%,#0b241bcc 67%,#0b241bf0 100%)}
 .about-details{padding:64px var(--gutter) 72px}
 .about-details-heading{width:100%;margin-bottom:30px}
 .about-details-grid{grid-template-columns:minmax(0,1fr);gap:38px}
 .about-details-grid figure:last-child{margin:0 0 0 12%}
 .about-details-grid figure:last-child .about-photo-frame{aspect-ratio:1.05}
 .about-details figcaption{font-size:20px;gap:18px;margin-top:16px;padding-top:14px}
 .about-table{height:auto;min-height:720px;padding-top:340px;padding-bottom:46px}
 .about-table>.about-photo{object-position:57% 35%}
 .about-table::before{background:linear-gradient(transparent 25%,#0b241b24 36%,#0b241be0 67%,var(--about-deep) 100%)}
 .about-table .about-scene-copy>p:not(.eyebrow){max-width:36ch}
 .about-visit{padding:68px var(--gutter) 48px}
 .about-visit>.actions{flex-direction:column;gap:14px}
 .about-specials{grid-template-columns:minmax(0,1fr);margin-top:44px;padding:0}
 .about-specials>div{padding:30px 8px}
 .about-specials>div+div{border-left:0;border-top:1px solid var(--about-rule)}
 .about-specials .about-special-time{font-size:clamp(28px,8.4vw,38px)}
}
@media(max-width:359px){
 .about-main h1{font-size:10.8vw}
 .about-main h2{font-size:10.4vw}
 .about-main .eyebrow{font-size:9px;letter-spacing:.1em}
 .about-hero{min-height:600px}
 .about-heritage>p,.about-scene-copy>p:not(.eyebrow){font-size:15px}
 .about-details figcaption{font-size:18px;gap:12px}
}
@media(prefers-reduced-motion:no-preference){
 .about-hero .about-scene-copy{animation:about-arrive .75s ease-out both}
 @keyframes about-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
}
