/* Shared visual foundations. Context owns content, placement, and card palettes. */
#main {--ui-ink:#21192f;--ui-focus:#633b7a;--ui-menu:#fff8f4;--ui-hover:#e6d7ef;--ui-selected:#e6d7ef;--ui-rule:rgba(33,25,47,.24);--ui-shadow:0 18px 48px rgba(33,25,47,.18);--ui-download:#21192f;--ui-download-ink:#fff8f4;--ui-segment-base:rgba(255,248,244,.35);--ui-ring:#80628c;--ui-card-radius:24px;--ui-card-padding:28px 24px;--ui-card-gap:16px;--ui-card-title:24px;--ui-card-copy:16px}
html[data-portfolio-theme="dark"] #main {--ui-ink:#fff8f4;--ui-focus:#ffe57a;--ui-menu:#272030;--ui-hover:#493653;--ui-selected:#493653;--ui-rule:rgba(255,248,244,.28);--ui-shadow:0 18px 48px rgba(0,0,0,.36);--ui-download:#fff8f4;--ui-download-ink:#21192f;--ui-segment-base:rgba(39,32,48,.35);--ui-ring:#c7a7de}
#main .ui-action-link {display:inline-flex!important;align-items:center;gap:8px!important;min-height:44px;max-width:100%;padding:4px 0!important;border:0;background:transparent;color:var(--ui-ink)!important;font:500 16px/1.5 "Instrument Sans",sans-serif!important;letter-spacing:0!important;text-transform:none!important;text-align:left;text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:5px!important;cursor:pointer;white-space:normal;overflow-wrap:normal}
#main .ui-action-link span {min-width:0;font:inherit!important;color:inherit!important}
#main .ui-action-link svg {flex:none;width:18px;height:18px;margin:0!important}
#main .ui-action-link:hover,#main .ui-action-link:hover span {text-decoration:none!important}
#main .ui-action-link:focus-visible,#main .ui-download-button:focus-visible {outline:3px solid var(--ui-focus)!important;outline-offset:4px!important;border-radius:4px}
#main .ui-action-link:active {color:var(--ui-focus)!important}
#main .ui-download-button {display:inline-flex!important;align-items:center;justify-content:center;gap:10px;box-sizing:border-box;min-height:44px;max-width:100%;padding:10px 20px!important;border:1.5px solid var(--ui-download)!important;border-radius:999px!important;background:var(--ui-download)!important;color:var(--ui-download-ink)!important;font:500 14px/1.4 "Instrument Sans",sans-serif!important;text-align:center;text-decoration:none!important;transition:none!important}
#main .ui-download-button :is(span,svg) {color:inherit!important;font:inherit!important}
#main .ui-download-button svg {flex-shrink:0;width:20px;height:20px}
#main .ui-download-button:is(:hover,:focus-visible) {background:transparent!important;color:var(--ui-ink)!important;border-color:var(--ui-download)!important}
#main .ui-download-button:active {box-shadow:inset 0 0 0 1px currentColor}
#main .ui-segmented {align-items:stretch;max-width:100%;box-sizing:border-box;padding:4px;gap:0;border:1px solid var(--ui-rule);border-radius:999px;background:var(--ui-segment-base);backdrop-filter:blur(14px);color:var(--ui-ink)}
#main .ui-segmented>:is(button,label) {box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:inherit;font:700 13px/1.4 "Instrument Sans",sans-serif;cursor:pointer;text-align:center}
#main .ui-segmented>:is([aria-pressed="true"],label:has(input:checked)) {background:#ffe57a;color:#21192f;box-shadow:none}
#main .ui-segmented>:is(button,label):hover {background:var(--ui-hover);color:var(--ui-ink);box-shadow:inset 0 0 0 1.5px var(--ui-ring)}
#main .ui-segmented>:is([aria-pressed="true"],label:has(input:checked)):hover {background:#ffda58;color:#21192f}
#main .ui-segmented>:is(button:focus-visible,label:has(input:focus-visible)) {outline:3px solid var(--ui-focus);outline-offset:3px}
#main .ui-menu {box-sizing:border-box;padding:8px!important;border:1px solid var(--ui-rule)!important;border-radius:20px!important;background:var(--ui-menu)!important;color:var(--ui-ink)!important;box-shadow:var(--ui-shadow)!important}
#main .ui-menu[hidden] {display:none!important}
#main .ui-menu :is(a,button[role="option"],button[role="menuitemradio"]) {box-sizing:border-box;min-height:44px;padding:10px!important;border-radius:12px!important;color:var(--ui-ink)!important;font:400 15px/1.4 "Instrument Sans",sans-serif!important;text-decoration:none!important;white-space:normal}
#main .ui-menu :is(a,button[role="option"],button[role="menuitemradio"]):is(:hover,:focus-visible) {background:var(--ui-hover)!important}
#main .ui-menu :is([aria-current="page"],[aria-selected="true"],[aria-checked="true"]) {background:var(--ui-selected)!important;font-weight:600!important}
#main .ui-menu :is(a,button):focus-visible {outline:3px solid var(--ui-focus)!important;outline-offset:-3px!important}
#main .ui-menu :is(.portfolio-navigation__menu-label,.presentation-viewer__picker-heading) {padding:8px 10px!important;font:700 11px/1.4 "Instrument Sans",sans-serif!important;letter-spacing:.04em;text-transform:uppercase}
/* Separate each navigation menu's collection link with a straight rule. */
#main .portfolio-navigation .ui-menu>a:last-child {position:relative;margin-top:16px;border:0!important;box-shadow:none}
#main .portfolio-navigation .ui-menu>a:last-child::before {content:"";position:absolute;top:-8px;left:10px;right:10px;border-top:1px solid var(--ui-rule);pointer-events:none}
#main .ui-card {box-sizing:border-box;border-radius:var(--ui-card-radius)!important;padding:var(--ui-card-padding)!important;gap:var(--ui-card-gap)!important;min-width:0}
#main .ui-card :is(h2,h3),#main .ui-card [data-framer-name="accessibility-card-title"] h3 {font-family:"Satoshi","Instrument Sans",sans-serif!important;font-size:var(--ui-card-title)!important;line-height:1.2!important;letter-spacing:0!important}
#main .ui-card>p,#main .ui-card [data-framer-name="accessibility-card-summary"] p {font-size:var(--ui-card-copy)!important;line-height:1.65!important}
#main a.ui-card {text-decoration:none;transition:transform .18s ease}
#main a.ui-card:hover {transform:translateY(-4px)}
#main a.ui-card:focus-visible {outline:3px solid var(--ui-focus)!important;outline-offset:4px!important}
@media(max-width:360px) {
 #main {--ui-card-padding:28px 12px;--ui-card-title:27px}
 #main .ui-action-link {width:100%;font-size:16px!important}
 #main .ui-download-button {width:100%;padding:10px 12px!important;gap:6px}
 #main .ui-segmented.presentation-viewer__segments {display:flex;flex-direction:column;width:100%;border-radius:16px}
 #main .ui-segmented.presentation-viewer__segments>label {min-height:44px;width:100%;padding:10px 8px;border-radius:12px;white-space:normal}
 #main .ui-menu {padding:6px!important;border-radius:16px!important}
 #main .ui-menu :is(a,button[role="option"],button[role="menuitemradio"]) {padding:8px 6px!important;font-size:13px!important}
}
@media(max-width:280px) {
 #main {--ui-card-padding:28px 8px;--ui-card-title:20px}
 #main .ui-download-button {flex-direction:column;gap:8px;padding:12px 8px!important;border-radius:16px!important}
}
@media(prefers-reduced-motion:reduce) {#main a.ui-card {transition:none}#main a.ui-card:hover {transform:none}}
@media(forced-colors:active) {#main :is(.ui-action-link,.ui-download-button,.ui-menu a,.ui-menu button):focus-visible {outline-color:Highlight!important}}

@media(max-width:280px){#main .portfolio-navigation__brand-name{font-size:12px!important;line-height:1.5!important}}
