/* Shared client revision: logo, warm red accents and editorial headings. */
:root{--accent:#D63A2F;--accent-soft:#FF8B80}
.brand-with-logo{display:flex;flex-direction:column;gap:9px;letter-spacing:0}
.logo-crop{position:relative;display:block;width:222px;height:59px;overflow:hidden;flex:none}
.logo-crop img{position:absolute;max-width:none;width:282px;height:94px;left:-30px;top:-17px;object-fit:fill}
.brand-with-logo small{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans",sans-serif;font-size:9px;letter-spacing:.12em;margin-left:2px}
.footer-brand .logo-crop{transform:scale(.82);transform-origin:left top;margin-bottom:-8px}
.eyebrow,.num,.process-label,.choice-index,.english-senses span{color:var(--accent)}
.eyebrow{margin-bottom:.5em}
.hero-immersive .eyebrow,.photo-intro .eyebrow{color:#fff}
.section.dark .eyebrow{color:var(--accent-soft)}
.btn{border-color:var(--accent);color:var(--accent)}
.btn.primary,.nav .btn.primary{background:var(--accent);border-color:var(--accent);color:white}
.btn.light,.hero-immersive .btn.primary{background:white;border-color:white;color:var(--accent)}
.hero-immersive .btn:not(.primary){color:white;border-color:white}
.nav a[aria-current=page]{border-color:var(--accent)}
.form-options input,.privacy-check input{accent-color:var(--accent)}
.history-year strong{color:var(--accent)}
.section h2::after{content:"";display:block;width:68px;height:3px;background:var(--accent);margin-top:14px}
.section.dark h2::after{background:var(--accent-soft)}
.section .heritage-line{font-family:"Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",serif;text-align:center;color:#936472;font-size:clamp(25px,3vw,35px);font-weight:500;line-height:1.6;margin:0 0 48px}
.page-home .feature-copy{background:#fff;padding:24px}
.page-home #try h2{line-height:1.4}
.page-home .visit-details{font-size:1.15em;line-height:1.85;margin:18px 0 4px}
.page-home .visit-details strong{font-size:.78em;letter-spacing:.06em;color:var(--accent);margin-right:8px}
.page-home .visit-details a{text-decoration:none}
@media(max-width:700px){
 .logo-crop{width:163px;height:45px}.logo-crop img{width:207px;height:69px;left:-22px;top:-12px}
 .brand-with-logo{min-width:0}.header .brand-with-logo small{display:none}
 .footer-brand .logo-crop{transform:none;margin-bottom:0}
 .section h2::after{width:50px;margin-top:11px}
 .section .heritage-line{font-size:22px;margin-bottom:30px;text-wrap:balance}
 .page-home .feature-copy{padding:18px 0;background:transparent}
 .page-home .visit-details{font-size:1.05em}
}

/* Let the footer background show through the supplied white-backed logo. */
.footer-brand .logo-crop{mix-blend-mode:multiply}
