/* One brand signature for every current page and language. Existing fonts retained. */
html[lang] body[data-page]>.site-header{
 height:138px;padding:16px var(--gutter);display:grid;
 grid-template-columns:minmax(0,1fr) auto auto;grid-template-rows:auto;gap:32px;align-items:center;
}
html[lang] body[data-page]>.site-header .identity{grid-column:1;grid-row:1;gap:18px;align-items:center;min-width:0}
html[lang] body[data-page]>.site-header .identity-mark{width:72px;flex:none}
html[lang] body[data-page]>.site-header .identity-wordmark{gap:7px;min-width:0}
html[lang] body[data-page]>.site-header .identity b{font-size:36px;line-height:1.1;letter-spacing:.015em;white-space:nowrap}
html[lang] body[data-page]>.site-header .identity small{font-size:12px;line-height:1.4;letter-spacing:.12em}
html[lang] body[data-page]>.site-header .identity-slogan{display:block;font-size:16px;line-height:1.5;letter-spacing:0;margin-top:3px;max-width:none}
html[lang] body[data-page]>.site-header nav{grid-column:2;grid-row:1;justify-self:end}
html[lang] body[data-page]>.site-header .lang-switch{grid-column:3;grid-row:1}
@media(min-width:761px) and (max-width:1000px){
 html[lang] body[data-page]>.site-header{height:164px;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:94px 34px;gap:4px 20px;padding:12px var(--gutter)}
 html[lang] body[data-page]>.site-header nav{grid-column:1/-1;grid-row:2;justify-self:center;background:none;padding:0;gap:28px}
 html[lang] body[data-page]>.site-header nav a+a:before{display:none}
 html[lang] body[data-page]>.site-header .lang-switch{grid-column:2;grid-row:1}
}
@media(max-width:760px){
 html[lang] body[data-page]>.site-header{height:156px;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:92px 36px;gap:4px 8px;padding:12px 20px}
 html[lang] body[data-page]>.site-header .identity{gap:12px}
 html[lang] body[data-page]>.site-header .identity-mark{width:48px}
 html[lang] body[data-page]>.site-header .identity-wordmark{gap:5px}
 html[lang] body[data-page]>.site-header .identity b{font-size:28px}
 html[lang] body[data-page]>.site-header .identity small{font-size:10px;letter-spacing:.1em}
 html[lang] body[data-page]>.site-header .identity-slogan{font-size:12px;line-height:1.5;margin-top:2px;max-width:210px}
 html[lang] body[data-page]>.site-header nav{grid-column:1/-1;grid-row:2;justify-self:center;background:none;padding:0;gap:24px}
 html[lang] body[data-page]>.site-header nav a+a:before{display:none}
 html[lang] body[data-page]>.site-header .lang-switch{grid-column:2;grid-row:1;min-width:50px}
}
@media(max-width:360px){html[lang] body[data-page]>.site-header .identity-slogan{font-size:11px}}

/* Text widths are fitted after local fonts load; slogans do not stretch the lockup. */
html[lang] body[data-page]>.site-header .identity b,html[lang] body[data-page]>.site-header .identity small,.site-footer .identity b,.site-footer .identity small{align-self:flex-start;white-space:nowrap}

/* Footer uses the same signature geometry as the top-left header. */
html[lang] body[data-page] .site-footer .identity{gap:18px;align-items:center}
html[lang] body[data-page] .site-footer .identity-mark{position:relative;display:block;flex:none;width:72px;aspect-ratio:371/236;overflow:hidden}
html[lang] body[data-page] .site-footer .identity-mark img{position:absolute;max-width:none;width:195.4178%;height:330.9322%;left:-45.5526%;top:-117.3729%;object-fit:fill}
html[lang] body[data-page] .site-footer .identity-wordmark{gap:7px;min-width:0}
html[lang] body[data-page] .site-footer .identity b{font-size:36px;line-height:1.1;letter-spacing:.015em}
html[lang] body[data-page] .site-footer .identity small{font-size:12px;line-height:1.4;letter-spacing:.12em;white-space:nowrap}
@media(max-width:760px){
 html[lang] body[data-page] .site-footer .identity{gap:12px}
 html[lang] body[data-page] .site-footer .identity-mark{width:48px}
 html[lang] body[data-page] .site-footer .identity-wordmark{gap:5px}
 html[lang] body[data-page] .site-footer .identity b{font-size:28px}
 html[lang] body[data-page] .site-footer .identity small{font-size:10px;letter-spacing:.1em}
}

/* Stable primary navigation: browse, learn, then meet the studio. */
html[lang] body[data-page]>.site-header nav{display:flex;gap:4px;align-items:center;flex-wrap:wrap}
html[lang] body[data-page]>.site-header nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;font-size:.875rem;line-height:1.5;white-space:nowrap;color:var(--ink);border:1px solid transparent;border-radius:0;transition:background-color .18s,color .18s,border-color .18s}
html[lang] body[data-page]>.site-header nav a::before,html[lang] body[data-page]>.site-header nav a::after{display:none}
html[lang] body[data-page]>.site-header nav a:hover{color:var(--purple);background:#e7dfe880}
html[lang] body[data-page]>.site-header nav a[aria-current]{color:var(--purple);background:var(--lavender);border-color:#83458f35}
html[lang] body[data-page]>.site-header nav a:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
@media(max-width:1000px){html[lang] body[data-page]>.site-header{height:auto;min-height:164px;grid-template-rows:auto auto}html[lang] body[data-page]>.site-header nav{justify-content:center;max-width:100%;row-gap:6px}}
@media(max-width:760px){html[lang] body[data-page]>.site-header{min-height:156px}html[lang] body[data-page]>.site-header nav{width:100%;gap:4px}html[lang] body[data-page]>.site-header nav a{padding:9px 6px}}
@media(prefers-reduced-motion:reduce){html[lang] body[data-page]>.site-header nav a{transition:none}}
