.workdesk-demo .family-hub-thumbs { grid-template-columns:repeat(2,minmax(0,1fr)); }
.workdesk-demo .family-hub-shot-primary,.workdesk-demo .family-hub-shot-thumb { min-height:0; }
.workdesk-demo .family-hub-shot img { width:100%; height:auto; object-fit:contain; }
.workdesk-demo .family-hub-shot figcaption { position:static; display:block; border:0; border-radius:0; padding:.6rem .8rem; background:#102236; box-shadow:none; text-align:center; }
.workdesk-demo .family-hub-description + .family-hub-description { margin-top:1rem; }
.workdesk-demo .family-hub-layout { grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr); }
@media(max-width:900px) { .workdesk-demo .family-hub-layout { grid-template-columns:1fr; } }
.workdesk-demo .family-hub-shot-button { height:auto; }
.workdesk-demo { scroll-margin-top:5rem; }

/* Shared portfolio stage: only the selected app occupies page space. */
.portfolio-showcase { padding-top:3rem; scroll-margin-top:6rem; }
.portfolio-switcher { text-align:center; }
.portfolio-switcher > p { margin:.75rem auto; max-width:600px; }
.portfolio-tabs { display:flex; flex-wrap:wrap; justify-content:center; gap:.75rem; margin:1.5rem auto 0; }
.portfolio-tabs [role="tab"] { display:inline-flex; align-items:center; justify-content:center; gap:.55rem; min-width:160px; background:#14243a; color:var(--color-text,#dbe9fb); border:1px solid #406081; cursor:pointer; }
.portfolio-tabs [role="tab"][aria-selected="true"] { background:#69b8ef; color:#091423; border-color:#69b8ef; box-shadow:0 0 0 3px #69b8ef22; }
.portfolio-tabs [role="tab"]:focus-visible { outline:3px solid #a5dcff; outline-offset:4px; }
.portfolio-showcase > [role="tabpanel"] { padding-top:2.25rem; border-top:0; }
.portfolio-showcase > [role="tabpanel"][hidden] { display:none !important; }
@media(max-width:480px) { .portfolio-tabs [role="tab"] { min-width:0; flex:1 1 130px; max-width:190px; } }
