/* K-LINK corporate site - pages.css. Styling that only the secondary pages need: legal pages (/terms/ /privacy/ /disclaimer/),
   entry pages (/b/ /c/ /d/), 404 and the English page. Loaded AFTER site.css by those pages only; the landing page does not load it.
   Same navy design system: tokens come from site.css (:root), the heading face is the self-hosted Noto Serif JP subset declared there.
   No third-party URLs, no @import, no inline-style needs (CSP style-src 'self'). tools/subset_fonts.py reads this file too
   (`font-family: var(--font-heading)` rules: simple selectors only). */

/* ---------- short pages: the footer stays at the bottom of the window ---------- */
.page-fill{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
.page-fill>main{flex:1 0 auto;display:flex;flex-direction:column}

/* ---------- legal pages: navy page head (breadcrumb, mincho h1, date), white prose ---------- */
.page-head.band-navy{padding-block:clamp(36px,5vw,64px);border-bottom:0;background:var(--navy-900)}
.page-head.band-navy h1{font-size:clamp(1.75rem,4vw,2.625rem);line-height:1.35}
.page-head nav p{display:flex;flex-wrap:wrap;align-items:center;gap:0 .5em;margin-bottom:.25rem}
.page-head nav a{display:inline-flex;align-items:center;min-height:var(--tap);color:var(--sky)}
.page-head nav a:hover{color:var(--white)}
.page-head nav [aria-current]{color:var(--on-navy-1)}
.page-head__meta{margin-top:.75rem;color:var(--on-navy-1)}
.prose{padding-block:clamp(40px,5vw,64px) clamp(56px,7vw,96px)}
.prose__nav{display:flex;flex-wrap:wrap;margin:2rem 0 0}
.prose__nav a{display:inline-flex;align-items:center;min-height:var(--tap)}

/* ---------- entry pages and 404: the navy first-screen look of the landing page, no animation ---------- */
.hero--fill{flex:1 0 auto;display:flex;align-items:center}
.entry__more{margin-top:.25rem}
.entry__more a{display:inline-flex;align-items:center;gap:.5em;min-height:var(--tap);color:var(--sky);font-weight:700}
.entry__more a::after{content:"\2192";content:"\2192"/"";transition:transform .2s}
.entry__more a:hover{color:var(--white)}
.entry__more a:hover::after{transform:translateX(4px)}
.btn-light{background:var(--white);border-color:var(--white);color:var(--navy-900)}
.btn-light:hover{background:var(--light);border-color:var(--light);color:var(--navy-900)}
.hero--fill .notfound{padding-block:0;text-align:center}
.hero--fill .notfound__code{color:var(--sky)}
.hero--fill .notfound h1{font-size:clamp(1.5rem,5vw,2.5rem)}
.hero--fill .notfound p{max-width:34em;margin-inline:auto;color:var(--on-navy-1)}

/* ---------- English page: Latin headings run a little smaller than the Japanese ones ---------- */
.hero h1:lang(en){font-size:clamp(1.875rem,4.6vw,3.25rem);line-height:1.3}
.contact__links:lang(en) li{column-gap:.3em}   /* the space after "LINE:" / "E-mail:" is lost in a flex row otherwise */
