:root{--navy:#101620;--white:#f7f4ee;--muted:#bfc4cd;--line:#67707d;--gutter:40px;--serif:Didot,'Bodoni 72',Baskerville,'Times New Roman',serif;--serif-jp:'Yu Mincho','Hiragino Mincho ProN','Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif}*{box-sizing:border-box}html{scroll-padding-top:110px}body{margin:0;background:var(--navy);color:var(--white);font-family:var(--sans);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}::selection{background:var(--white);color:var(--navy)}:focus-visible{outline:2px solid var(--white);outline-offset:6px}
/* Keep the skip-link landmark focus without outlining the entire page. */
main#main[tabindex="-1"]:focus{outline:none}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-100px;background:var(--white);color:var(--navy);padding:12px 20px;z-index:200}.skip-link:focus{top:12px}.eyebrow{font:10px/1.5 Arial,sans-serif;letter-spacing:.17em}.round-control{display:grid;place-items:center;background:rgba(16,22,32,.22);border:1px solid #a0a7b2;border-radius:50%;width:48px;height:48px;padding:0;flex:none;transition:background .25s}.round-control:hover{background:rgba(247,244,238,.16)}.round-control[hidden]{display:none}.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;min-height:112px;padding:23px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:14px;flex-shrink:0;line-height:1.6}.brand img{width:88px;height:60px;object-fit:contain}.brand>span{font-size:13px;letter-spacing:.06em}.brand small{display:block;font-size:8px;letter-spacing:.12em;margin-top:4px}.header-actions{display:flex;align-items:center;gap:16px}.inquiry-pill{display:flex;align-items:center;gap:20px;min-height:46px;padding:7px 23px;border:1px solid #a0a7b2;border-radius:30px;background:#10162048;font-size:13px;transition:background .25s}.inquiry-pill:hover{background:#101620aa}.inquiry-pill span[aria-hidden]{font-size:18px}.menu-open{display:none}.js .menu-open{display:grid}.menu-mark{display:grid;grid-template-columns:repeat(2,3px);gap:5px}.menu-mark i{width:3px;height:3px;background:var(--white);border-radius:50%}.static-nav{display:flex;gap:20px;position:absolute;top:112px;left:var(--gutter);right:var(--gutter);flex-wrap:wrap;padding:12px;background:#101620d9;font-size:13px}.static-nav a{min-height:44px;display:flex;align-items:center}.js .static-nav{display:none}
.hero{position:relative;min-height:700px;height:100svh;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;isolation:isolate}.hero-media{position:absolute;inset:0;z-index:-2;background:var(--navy)}.hero-poster,.hero-video{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% center}.hero-video{opacity:0;transition:opacity .4s}.hero-video.has-frame{opacity:1}.hero-stage:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(16,22,32,.16),transparent 27%,transparent 48%,rgba(16,22,32,.15) 70%,rgba(16,22,32,.63) 100%)}.hero-orbit{position:absolute;left:50%;top:51%;width:min(88vw,1280px);height:min(88vw,1280px);border:1px solid #f7f4ee24;border-radius:50%;transform:translate(-50%,-50%);z-index:0;pointer-events:none}.hero-message{position:relative;text-align:center;padding:200px 24px 0;margin-bottom:122px;z-index:1}.hero h1{font-family:var(--serif);font-size:50.4px;line-height:1.2;letter-spacing:-.025em}.hero h1>span{display:block}.hero h1 .hero-japanese{font-family:var(--sans);font-size:18px;font-weight:400;line-height:1.8;letter-spacing:.18em;margin-top:19px}.hero-scroll{position:absolute;left:50%;bottom:31px;transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;gap:17px;padding:8px 12px;font:8px/1.5 Arial,sans-serif;letter-spacing:.13em;white-space:nowrap}.scroll-line{height:24px;width:1px;background:var(--white)}.video-control{position:absolute;bottom:40px;right:40px}.video-icon{width:10px;height:13px;border-left:2px solid currentColor;border-right:2px solid currentColor}.video-control.is-paused .video-icon{width:0;height:0;border:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor;margin-left:3px}
.statement{position:relative;overflow:hidden;min-height:840px;padding:180px var(--gutter) 190px;display:flex;align-items:flex-start;justify-content:center;text-align:center}.statement-inner{width:906.67px;max-width:100%;padding:0 40px;position:relative;z-index:1}.statement .eyebrow{color:var(--muted);margin-bottom:43px}.statement h2{font-family:var(--serif-jp);font-size:48px;line-height:1.45;letter-spacing:.035em}.statement h2>span{display:block}.statement-note{font-size:14px;color:var(--muted);line-height:2;margin-top:31px;letter-spacing:.06em}.statement-arc{position:absolute;top:690px;left:50%;transform:translateX(-50%);width:840px;height:840px;border:1px solid #394653;border-radius:50%;pointer-events:none}.statement-arc span{position:absolute;width:7px;height:7px;background:var(--white);border-radius:50%;top:-4px;left:calc(50% - 3px)}
.chapter{position:relative;min-height:720px;height:95svh;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;overflow:hidden;scroll-margin-top:0}.chapter-media{position:absolute;inset:0;z-index:-2;background:#1a2330;overflow:hidden}.chapter-media img{width:100%;height:106%;object-fit:cover;object-position:center}.chapter:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 35%,rgba(16,22,32,.15) 55%,rgba(16,22,32,.87) 100%);pointer-events:none}.chapter-content{padding:130px var(--gutter) 46px}.chapter-index{font:11px/1.5 Arial,sans-serif;letter-spacing:.08em;margin-bottom:24px}.chapter-heading{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end}.chapter h2{line-height:1}.chapter-en{display:block;font-family:var(--serif);font-size:96px;line-height:1;letter-spacing:-.03em}.chapter-ja{display:block;font-size:18px;line-height:1.6;margin-top:18px;letter-spacing:.12em}.chapter-detail{max-width:480px;padding-bottom:3px;margin-left:auto;width:100%}.chapter-detail p{font-size:15px;line-height:2;letter-spacing:.035em}.chapter-links{display:flex;gap:30px;flex-wrap:wrap;margin-top:22px}.chapter-links a{display:inline-flex;align-items:center;justify-content:space-between;min-height:44px;gap:28px;border-bottom:1px solid #b8c0c9;font-size:13px}.chapter-links a span[aria-hidden]{font-size:20px;transition:transform .25s}.chapter-links a:hover span[aria-hidden]{transform:translate(3px,-3px)}.chapter-find .chapter-media img{object-position:center 58%}.chapter-connect .chapter-media img{object-position:center 60%}
.one-partner{padding:153px var(--gutter) 105px;text-align:center}.one-partner h2{font-family:var(--serif-jp);font-size:50px;line-height:1.65;letter-spacing:.06em;margin:33px 0 31px}.partner-description{font-size:15px;line-height:2.2;color:var(--muted)}.company-line{max-width:1030px;margin:85px auto 0;border-top:1px solid #505b68;padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:35px;text-align:left}.company-line p{font-size:13px;color:var(--muted);line-height:2}.text-link{min-height:44px;display:inline-flex;align-items:center;justify-content:space-between;gap:42px;border-bottom:1px solid #aeb6c1;font-size:13px}.text-link span[aria-hidden]{font-size:23px}.contact{position:relative;overflow:hidden;padding:120px var(--gutter) 142px;text-align:center;isolation:isolate}.contact-circle{position:absolute;left:50%;top:80px;transform:translateX(-50%);width:850px;height:850px;border:1px solid #3a4552;border-radius:50%;z-index:-1}.contact-inner{max-width:800px;margin:auto}.contact h2{font-family:var(--serif-jp);font-size:48px;line-height:1.6;letter-spacing:.045em;margin-top:38px}.contact-inner>p:not(.eyebrow):not(.contact-note){font-size:15px;color:var(--muted);line-height:2;margin-top:25px}.contact-link{display:inline-flex;align-items:center;gap:56px;min-height:72px;margin-top:30px;font-size:15px}.round-arrow{width:58px;height:58px;border:1px solid #aeb6c1;display:grid;place-items:center;border-radius:50%;font-size:25px;transition:background .25s,transform .25s}.contact-link:hover .round-arrow{background:#f7f4ee14;transform:rotate(45deg)}.contact-note{font-size:10px;color:var(--muted);margin-top:17px}.site-footer{padding:42px var(--gutter) 28px;border-top:1px solid #394553}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:40px}.site-footer .brand>span{font-size:13px}.site-footer .brand small{font-size:10px;letter-spacing:.08em}.footer-main nav{display:flex;align-items:center;gap:clamp(16px,1.6vw,28px);flex-wrap:nowrap;font-size:12px}.footer-main nav a{min-height:44px;display:flex;align-items:center;gap:15px;white-space:nowrap;flex-shrink:0}.footer-bottom{display:flex;justify-content:space-between;gap:35px;margin-top:35px;padding-top:23px;border-top:1px solid #394553;color:var(--muted)}.footer-bottom small{font:9px/1.8 Arial,sans-serif}.footer-bottom p{font-size:9px;line-height:1.9;text-align:right}
.menu-dialog{border:0;color:var(--white);background:var(--navy);width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:32px var(--gutter) 45px;overflow-y:auto}.menu-dialog::backdrop{background:var(--navy)}.menu-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.menu-top p{font-size:14px;letter-spacing:.12em}.menu-close>span{font-size:31px;font-weight:200;line-height:1}.overlay-nav{display:flex;flex-direction:column;width:min(780px,100%);margin:65px auto 0}.overlay-nav a{display:flex;align-items:baseline;gap:36px;justify-content:space-between;padding:13px 0;border-bottom:1px solid #46515e;min-height:78px}.overlay-nav a>span:first-child{font-family:var(--serif);font-size:54px;line-height:1.2;letter-spacing:-.03em}.overlay-nav a>span:last-child{font-size:14px;letter-spacing:.05em}.overlay-nav a:hover{color:#cbd5df}.menu-contact{display:flex;align-items:center;min-height:48px;width:fit-content;margin:35px auto 0;border-bottom:1px solid #aeb6c1;font-size:14px}.menu-dialog:not([open]){display:none}
@media(max-width:900px){:root{--gutter:28px}.site-header{padding-top:22px;padding-bottom:22px}.hero h1{font-size:42px}.statement{min-height:750px;padding-top:145px;padding-bottom:150px}.statement-inner{padding:0 15px}.statement h2{font-size:39px}.statement-arc{top:650px;width:720px;height:720px}.chapter{min-height:720px}.chapter-en{font-size:78px}.chapter-heading{gap:30px;grid-template-columns:1fr 1fr}.chapter-detail p{font-size:14px}.chapter-links{gap:17px;margin-top:15px}.chapter-links a{font-size:12px;gap:18px}.chapter-ja{font-size:16px}.one-partner{padding-top:120px;padding-bottom:85px}.one-partner h2{font-size:41px}.company-line{margin-top:62px}.contact{padding-top:100px;padding-bottom:115px}.contact h2{font-size:41px}.footer-main{flex-wrap:wrap;gap:25px}.footer-main nav{gap:24px}}
@media(max-width:600px){:root{--gutter:16px}html{scroll-padding-top:20px}.site-header{min-height:112px;padding:22px 16px;gap:12px;align-items:flex-start}.brand{gap:5px}.brand img{width:59px;height:45px}.brand>span{font-size:10px;letter-spacing:.025em;padding-top:3px}.brand small{font-size:6px;letter-spacing:.08em;margin-top:4px}.header-actions{gap:9px}.inquiry-pill{min-height:44px;font-size:11px;padding:6px 14px;gap:10px}.round-control{width:48px;height:48px}.hero{min-height:620px;height:100svh}.hero-poster,.hero-video{object-position:55% center}.hero-message{margin-bottom:122px;padding:200px 16px 0}.hero h1{font-size:30px;line-height:1.2;letter-spacing:-.035em}.hero h1 .hero-japanese{font-size:15px;line-height:1.8;letter-spacing:.11em;margin-top:19px}.hero-orbit{width:170vw;height:170vw;top:48%;border-color:#f7f4ee24}.hero-scroll{font-size:7px;bottom:27px;gap:14px}.video-control{right:16px;bottom:31px}.statement{min-height:685px;padding:127px 16px 145px}.statement-inner{width:358px;padding:0 8px}.statement .eyebrow{font-size:8px;margin-bottom:32px}.statement h2{font-size:30px;line-height:1.55;letter-spacing:.015em}.statement-note{font-size:12px;line-height:2;margin-top:28px}.statement-arc{top:584px;width:570px;height:570px}.chapter{height:100svh;min-height:740px}.chapter-content{padding:160px 20px 35px}.chapter-index{font-size:10px;margin-bottom:20px}.chapter-heading{display:block}.chapter-en{font-size:72px;line-height:1;letter-spacing:-.045em}.chapter-ja{font-size:16px;letter-spacing:.08em;margin-top:12px}.chapter-detail{margin:24px 0 0;max-width:none;padding:0}.chapter-detail p{font-size:14px;line-height:1.9}.chapter-links{gap:24px;row-gap:10px;margin-top:18px}.chapter-links a{font-size:12px;gap:21px;min-height:44px}.chapter:after{background:linear-gradient(180deg,transparent 25%,rgba(16,22,32,.16) 43%,rgba(16,22,32,.9) 100%)}.chapter-media img{object-position:51% center}.chapter-find .chapter-media img{object-position:50% center}.chapter-connect .chapter-media img{object-position:60% center}.chapter-renew .chapter-media img{object-position:45% center}.one-partner{padding:94px 24px 70px}.one-partner .eyebrow{font-size:8px}.one-partner h2{font-size:30px;line-height:1.7;letter-spacing:.025em;margin:29px 0 25px}.partner-description{font-size:13px;line-height:2.2;max-width:340px;margin:auto}.partner-description br:nth-of-type(3){display:none}.company-line{display:block;margin-top:48px;padding-top:23px;text-align:left}.company-line p{font-size:12px;line-height:1.95}.company-line p br{display:none}.company-line .text-link{font-size:13px;margin-top:16px;gap:29px}.contact{padding:94px 20px 100px}.contact-circle{width:590px;height:590px;top:65px}.contact .eyebrow{font-size:9px}.contact h2{font-size:30px;line-height:1.6;letter-spacing:.015em;margin-top:33px}.contact-inner>p:not(.eyebrow):not(.contact-note){font-size:13px;margin-top:24px}.contact-link{font-size:14px;gap:28px;margin-top:28px}.round-arrow{width:52px;height:52px;font-size:24px}.contact-note{font-size:9px;margin-top:15px}.site-footer{padding:30px 20px 25px}.site-footer .brand{gap:9px}.site-footer .brand img{width:65px;height:47px}.site-footer .brand>span{font-size:11px;padding:0}.site-footer .brand small{font-size:8px}.footer-main{display:block}.footer-main nav{gap:18px;margin-top:21px;font-size:11px}.footer-main nav a{gap:8px}.footer-bottom{display:block;margin-top:21px;padding-top:20px}.footer-bottom small{font-size:8px}.footer-bottom p{text-align:left;font-size:8px;line-height:1.9;margin-top:14px}.menu-dialog{padding:25px 20px 40px}.menu-top p{font-size:12px}.overlay-nav{margin-top:52px}.overlay-nav a{min-height:78px;padding:17px 0;gap:15px}.overlay-nav a>span:first-child{font-size:39px}.overlay-nav a>span:last-child{font-size:11px;max-width:143px}.menu-contact{font-size:13px;margin-top:31px}}
@media(max-width:360px){.site-header{gap:6px}.site-header .brand img{width:47px;height:41px}.site-header .brand>span{font-size:9px}.inquiry-pill{padding:6px 10px;font-size:10px;gap:5px}.header-actions{gap:7px}.hero h1{font-size:26px}.hero h1 .hero-japanese{font-size:14px}.statement{padding-left:16px;padding-right:16px}.statement-inner{padding:0}.statement h2{font-size:26px}.chapter-en{font-size:65px}.chapter-links{gap:15px}.chapter-links a{font-size:11px;gap:12px}.one-partner h2,.contact h2{font-size:26px}.overlay-nav a>span:first-child{font-size:34px}.overlay-nav a>span:last-child{font-size:10px;max-width:130px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-video{display:none}.hero-media,.hero-message,.chapter-media img,.chapter-en,.statement h2>span{transform:none!important}}

/* Measured reference refinements: restrained mobile chapter labels and native short sticky sequence. */
.js .site-header{position:fixed;transition:background .3s}.site-header.is-scrolled{background:#101620eb}
.hero{height:180svh;min-height:0;display:block;overflow:visible;isolation:auto}
.hero-stage{position:sticky;top:0;min-height:700px;height:100svh;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;overflow:hidden}
.hero-english{display:grid!important;place-items:center;min-height:121px}.hero-english>span{grid-area:1/1}.hero-line-secondary{opacity:0;pointer-events:none;font-size:.84em;line-height:1.2}
.hero-scroll{font-size:12px;line-height:18px;bottom:40px}
.statement{min-height:75svh;padding-top:130px;padding-bottom:160px;align-items:center}
.statement h2{line-height:1.1}.statement h2>span+span{margin-top:9px}
.statement-arc{top:auto;bottom:-760px}
.chapter{height:125svh;min-height:820px}
.chapter-title-mask{display:block;overflow:hidden;line-height:1;padding-bottom:4px}
.overlay-nav a>span:first-child{font-size:60px;line-height:.8}.overlay-nav a{padding-top:22px;padding-bottom:22px}
@media(max-width:900px){.hero-stage{min-height:700px}.statement{padding-top:130px;padding-bottom:150px}.statement h2{line-height:1.1}.chapter{min-height:800px}}
@media(max-width:600px){
 .hero-stage{min-height:620px;height:100svh}.hero-orbit{display:none}.hero-english{min-height:72px}.hero-message{padding-top:180px}
 .hero-scroll{font-size:12px;line-height:18px;bottom:34px;gap:10px}
 .statement{min-height:100svh;padding:150px 16px 170px}.statement-inner{width:358px;padding:0 16px}.statement h2{font-size:30px;line-height:33px;letter-spacing:-.025em}.statement h2>span+span{margin-top:7px}.statement-arc{bottom:-495px;top:auto}
 .chapter{height:120svh;min-height:760px}.chapter-en{font-size:32px;line-height:32px;letter-spacing:-.025em}.chapter-index{font-size:14px;margin-bottom:20px}.chapter-content{padding-left:16px;padding-right:16px;padding-bottom:24px}.chapter-ja{margin-top:12px}.chapter-detail{margin-top:20px}
 .overlay-nav a>span:first-child{font-size:40px;line-height:32px}
}
@media(max-width:360px){.statement-inner{padding:0 8px}.statement h2{font-size:26px;line-height:30px}.chapter-en{font-size:32px;line-height:32px}.overlay-nav a>span:first-child{font-size:36px;line-height:32px}}
@media(prefers-reduced-motion:reduce){.hero{height:auto}.hero-stage{position:relative}.hero-line-primary{opacity:1!important;filter:none!important}.hero-line-secondary{opacity:0!important}.statement h2>span{opacity:1!important}.chapter{height:100svh}.hero-english>span{transform:none!important}}

.site-header .brand{min-width:0;flex-shrink:1}.site-header .brand img{flex-shrink:0}.site-header .brand>span{min-width:0;overflow-wrap:anywhere}.header-actions{flex-shrink:0}
@media(max-width:360px){.statement h2{font-size:25px;line-height:30px}}

.keep-phrase{white-space:nowrap}
.concept-label{position:absolute;z-index:2;font-size:11px;line-height:1.5;letter-spacing:.03em;padding:4px 7px;background:#101620c9;color:var(--white);width:fit-content;max-width:calc(100% - 32px);pointer-events:none}
.hero-stage>.concept-label{left:var(--gutter);bottom:49px}

@media(max-width:600px){.concept-label{font-size:10px}.hero-stage>.concept-label{top:112px;bottom:auto;left:16px}}

.chapter-meta{display:flex;align-items:baseline;gap:24px;flex-wrap:wrap;margin-bottom:24px}
.chapter-meta .chapter-index{margin:0}
.chapter-meta .concept-label{position:static;padding:0;margin:0;background:none;font-size:11px;max-width:100%}
@media(max-width:600px){.chapter-meta{gap:18px;row-gap:8px;margin-bottom:20px}.chapter-meta .concept-label{font-size:10px}}

/* Shared navigation: one balanced desktop row and a bounded compact row. */
.header-nav{display:flex;align-items:center;justify-content:safe center;gap:25px;min-width:0;overflow-x:auto;scrollbar-width:thin;padding:4px 0}
.header-nav a{display:flex;flex:0 0 auto;flex-direction:column;align-items:center;justify-content:center;min-height:48px;gap:9px;line-height:1.2;white-space:nowrap}
.header-nav a>span{position:relative;font-family:var(--serif);font-size:20px;line-height:1.2}
.header-nav small{font-size:10px;line-height:1.4;white-space:nowrap;color:var(--muted)}
.header-nav a>span:after{content:'';position:absolute;left:0;right:0;bottom:-5px;height:1px;background:var(--white);opacity:0}
.header-nav a[aria-current]>span:after,.header-nav a:hover>span:after{opacity:1}
.header-nav a:focus-visible{outline-offset:2px}
html:not(.js) .header-nav{display:none}
.menu-dialog{padding-top:32px}
.menu-top{min-height:48px;padding-right:72px}
.menu-close{position:fixed;top:32px;right:var(--gutter);z-index:3;background:var(--navy)}
.menu-close .close-mark{position:relative;display:block;width:20px;height:20px;font-size:0}
.close-mark:before,.close-mark:after{content:'';position:absolute;left:0;top:9px;width:20px;height:1px;background:currentColor;transform:rotate(45deg);transform-origin:center}
.close-mark:after{transform:rotate(-45deg)}
@media(min-width:960px){
 .site-header{display:grid;grid-template-columns:minmax(190px,240px) minmax(0,1fr) auto;gap:24px}
 html:not(.js) .site-header{display:flex}.static-nav{flex-basis:100%}
}
@media(min-width:960px) and (max-width:1279px){
 .site-header{grid-template-columns:210px minmax(0,1fr) auto;gap:20px}
 .site-header .brand{gap:8px}.site-header .brand img{width:72px}
 .site-header .brand>span{font-size:12px}
 .header-nav{gap:18px}.header-nav a>span{font-size:18px}.header-nav small{font-size:9px}
}
@media(max-width:600px){.menu-dialog{padding-top:25px}.menu-top{min-height:48px}.menu-close{top:25px;right:20px}.overlay-nav{margin-top:38px}.overlay-nav a{min-height:70px}.overlay-nav a>span:first-child{font-size:36px}.overlay-nav a>span:last-child{font-size:12px}}
.overlay-nav [aria-current=location],.static-nav [aria-current=location]{text-decoration:underline;text-underline-offset:10px}
@media(max-width:959px){
 .site-header{display:flex;flex-wrap:wrap;align-items:center;column-gap:16px;row-gap:8px;padding-bottom:10px}
 .site-header>.brand{order:0;flex-shrink:0}.site-header>.brand>span{white-space:nowrap}
 .site-header>.header-actions{order:1;margin-left:auto}
 .header-nav{order:2;flex-basis:100%;max-width:560px;width:100%;margin:0 auto;justify-content:space-between;gap:12px;overflow-x:auto;scrollbar-width:thin;padding:2px 0}
 .header-nav a{min-height:44px;padding:8px 5px;gap:0}
 .header-nav a>span{font-size:18px}.header-nav small{display:none}
 .header-nav a:focus-visible{outline-offset:-2px}
}
@media(max-width:600px){
 .site-header{padding-top:18px;padding-bottom:8px;row-gap:5px}
 .header-nav{gap:2px}.header-nav a{padding:8px 4px}.header-nav a>span{font-size:16px}
}
@media(max-width:360px){
 .header-nav a{padding:8px 3px}.header-nav a>span{font-size:13px}
}
/* After scrolling, previous chapter text must not show through the navigation. */
.js .site-header.is-scrolled{background:#101620}

/* Keep the explicit full service name intact on compact menus. */
.overlay-nav a[href="renovation.html"]>span:first-child{white-space:nowrap}
@media(max-width:360px){.overlay-nav a[href="renovation.html"]>span:first-child{font-size:28px}}

.overlay-nav .menu-phrase{display:inline-block;max-width:100%}

/* Allow enlarged menu text to stack without colliding with its Japanese label. */
.overlay-nav a{flex-wrap:wrap;row-gap:12px}
.overlay-nav a>span:first-child{flex-shrink:0;max-width:100%;white-space:nowrap}
.overlay-nav a>span:last-child{margin-left:auto}

.overlay-nav a>span:last-child{max-width:100%}

/* Seven destinations retain readable labels and purposeful grouping. */
.nav-services,.nav-company{display:contents}
.site-footer{padding-top:32px;padding-bottom:32px}
@media(max-width:959px){
 .header-nav{display:flex;flex-direction:column;align-items:stretch;gap:2px;max-width:560px;overflow:visible}
 .nav-services{display:grid;grid-template-columns:1fr 1fr 1fr 1.7fr;gap:4px;min-width:0}
 .nav-company{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;min-width:0}
 .header-nav a{min-width:0;min-height:44px;padding:8px 2px}
 .header-nav a>span{font-size:16px}
 .header-nav a:focus-visible{outline-offset:-2px}
}
@media(max-width:600px){.site-footer{padding-top:24px;padding-bottom:24px}}

/* Intrinsic label widths allow enlarged type to wrap rows, never split words. */
@media(max-width:959px){
 .nav-services,.nav-company{display:flex;flex-wrap:wrap}
 .nav-services a{flex:1 0 max-content}
 .nav-services a:nth-child(4){flex-grow:1.7}
 .nav-company a{flex:1 0 max-content}
}
.snap-page .site-footer.site-footer{padding-top:32px;padding-bottom:32px}
@media(max-width:600px){.snap-page .site-footer.site-footer{padding-top:24px;padding-bottom:24px}}

@media(min-width:960px) and (max-width:1279px){.header-nav{gap:14px}}

/* Keep desktop footer destinations together; labels never split on narrow screens. */
.footer-main{flex-wrap:wrap}.footer-main>.brand{flex-shrink:0}
@media(max-width:767px){.footer-main nav{flex-wrap:wrap;column-gap:20px;row-gap:3px}}

/* English wordmark: one line in the header, with the existing Japanese footer tagline. */
.site-header .brand .brand-wordmark,.site-footer .brand .brand-wordmark{display:block;font-family:var(--serif);font-size:26px;font-weight:400;line-height:1.15;letter-spacing:-.02em;white-space:nowrap;padding:0}
.site-footer .brand .brand-copy{padding:0}
.site-footer .brand .brand-copy small{margin-top:9px;font-family:var(--sans);font-size:11px;font-weight:400;line-height:1.6;letter-spacing:.06em}
@media(min-width:1280px){.site-header{grid-template-columns:minmax(210px,260px) minmax(0,1fr) auto}}
@media(min-width:960px) and (max-width:1279px){.site-header{grid-template-columns:230px minmax(0,1fr) auto}.site-header .brand .brand-wordmark{font-size:24px}}
@media(max-width:600px){.site-header{column-gap:8px}.site-header .brand .brand-wordmark{font-size:clamp(14px,calc(6.25vw - 6.5px),20px)}.site-footer .brand .brand-wordmark{font-size:26px}.site-footer .brand .brand-copy small{font-size:10px;margin-top:7px}}
@media(max-width:360px){.site-header{column-gap:6px}}

/* Compact navigation is available from the existing menu dialog. */
@media(max-width:959px){.js .site-header .header-nav{display:none}}
