/* Shared portfolio navigation and control typography, based on Frame 17. */
@font-face{font-family:'LT Wave';src:url('../assets/fonts/LTWave-Regular.otf') format('opentype');font-weight:400;font-style:normal;font-display:swap}
:root{--ui-font:'LT Wave',Archivo,sans-serif;--ui-ink:#1c1b1b;--ui-page:#f5f3ef;--ui-accent:#f8d185;--ui-hover:#cf8900}
.header-shell{position:sticky;top:0;z-index:20;background:var(--ui-page)}
.header-shell .header{box-sizing:border-box;width:min(1216px,calc(100% - 64px));min-height:78px;height:78px;margin:0 auto;padding:16px 0;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:24px;color:var(--ui-ink);font-family:var(--ui-font);font-size:18px;font-weight:400;line-height:1.2;letter-spacing:.02em}
.header-brand{flex:none;font-family:var(--ui-font);font-size:19px;font-weight:400;line-height:23px;letter-spacing:.02em;white-space:nowrap;text-decoration:none;color:var(--ui-ink);transition:color 200ms}
.header-shell .navigation{display:flex;align-items:center;gap:50px;margin:0;padding:0;white-space:nowrap}
.header-shell .navigation a{color:var(--ui-ink);font-family:var(--ui-font);font-size:18px;font-weight:400;line-height:22px;text-decoration:none;transition:color 200ms}
.header-shell .header-actions{display:flex;align-items:center;gap:50px;margin:0}
.header-shell .languages{display:flex;gap:8px;align-items:center}
.header-shell .languages button{box-sizing:border-box;display:inline-flex;justify-content:center;align-items:center;height:46px;padding:12px 10px;border:0;border-bottom:2px solid transparent;border-radius:12px;background:transparent;color:var(--ui-ink);font-family:var(--ui-font);font-size:18px;font-weight:400;line-height:20px;letter-spacing:.02em;cursor:pointer;transition:color 200ms}
.header-shell .languages button[aria-pressed=true]{border-bottom-color:var(--ui-accent);cursor:default}
.button,.contact-pill{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:11px 32px 12px;border:0;border-radius:12px;background:var(--ui-accent);color:var(--ui-ink);font-family:var(--ui-font);font-size:18px;font-weight:400;line-height:22px;letter-spacing:.02em;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color 200ms}
.header-shell .button{padding:11px 32px 12px;font-size:18px;line-height:22px}
.button:hover,.contact-pill:hover{background:#f1c572}
.header-shell .navigation a:hover,.header-shell .languages button:not([aria-pressed=true]):hover,.footer a:hover,.footer .text-button:hover{color:var(--ui-hover)}
button:not(.case-card){font-family:var(--ui-font);font-weight:400}
.footer a,.footer .text-button,.site-footer a{font-family:var(--ui-font);font-weight:400;letter-spacing:.02em;transition:color 200ms}
.header-shell a:focus-visible,.header-shell button:focus-visible{outline:3px solid #9e772b;outline-offset:5px}
@media(max-width:980px) and (min-width:621px){.header-shell .header{height:auto;display:grid;grid-template-columns:auto 1fr;gap:12px 24px}.header-shell .header-actions{justify-self:end}.header-shell .navigation{grid-row:2;grid-column:1/-1;justify-content:center}}
@media(max-width:620px){.header-shell .header{width:calc(100% - 40px);height:auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px 0}.header-brand{grid-row:1;grid-column:1;font-size:18px;line-height:22px}.header-shell .header-actions{display:contents}.header-shell .languages{grid-row:1;grid-column:2;justify-self:end}.header-shell .languages button{font-size:14px;height:36px;padding:7px 8px;line-height:20px}.header-shell .navigation{grid-row:2;grid-column:1;justify-content:space-between;gap:10px}.header-shell .navigation a{font-size:12px;line-height:18px}.header-shell .button{grid-row:2;grid-column:2;font-size:13px;line-height:18px;padding:10px 12px}.button,.contact-pill{font-size:16px;line-height:22px}.footer a,.footer .text-button{font-size:14px}}
@media(max-width:360px){.header-shell .navigation{grid-column:1/-1;justify-content:space-between}.header-shell .button{grid-row:3;grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.header-shell a,.header-shell button,.button,.contact-pill,.footer a,.footer .text-button{transition:none}}

/* Case navigation and shared contact footer. */
body.study-page .header-shell,body[data-page]:not([data-page="home"]) .header-shell{background:#fff}
.case-footer{box-sizing:border-box;width:min(1216px,calc(100% - 64px));margin:100px auto 0;padding:0 0 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-family:var(--ui-font);font-size:18px;line-height:1.4;color:var(--ui-ink)}
.case-footer nav{display:flex;flex-wrap:wrap;gap:32px}.case-footer a{color:inherit;text-decoration:none}.case-footer a:hover{color:var(--ui-hover)}.case-footer p{margin:0;color:var(--ui-muted,#858585)}
@media(max-width:620px){.case-footer{width:calc(100% - 40px);margin-top:64px;flex-direction:column;align-items:flex-start;font-size:14px;padding-bottom:40px}.case-footer nav{gap:24px}}
