/* Workspace picker — full-page card chooser shown after sign-in
 * Hero + card treatment mirrors blog.css (.blog-index-hero / .blog-card)
 * so this page reads as the same visual system as the blog index. */

/* ============================================================
   HERO — photo banner, same pattern as .blog-index-hero
   ============================================================ */

.workspace-picker-hero {
    position: relative;
    width: 100%;
    min-height: 30vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 0;
    margin: 0;
    background: none;
    /* Override header.css's generic `section` rule (white background, 1px
       border, box-shadow, 40px margin-bottom) — without this reset the
       hero renders inset with a visible border/shadow instead of full-bleed
       flush against the navbar. Same pattern as section.legal-hero
       (privacy-policy.css) and section.blog-index-hero (blog.css). */
    border: none;
    box-shadow: none;
}

.workspace-picker-hero-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
}

.workspace-picker-hero-scrim {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: rgba(5, 15, 20, 0.5);
    pointer-events: none;
}

.workspace-picker-hero-content {
    position: relative;
    z-index: 2;
    text-align: center;
    padding: clamp(32px, 5vh, 56px) 24px;
    max-width: 640px;
    width: 100%;
}

.workspace-picker-eyebrow {
    display: inline-block;
    font-family: var(--font-body);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2.8px;
    text-transform: uppercase;
    color: rgba(201, 166, 97, 0.95);
    margin-bottom: 16px;
}

.workspace-picker-title {
    font-family: var(--font-display);
    font-size: clamp(28px, 3.6vw, 40px);
    font-weight: 700;
    color: var(--white);
    margin-bottom: 8px;
    text-align: center;
    text-shadow: 0 2px 16px rgba(0, 0, 0, 0.45);
}

.workspace-picker-subtitle {
    font-family: var(--font-body);
    font-size: clamp(14px, 1.3vw, 16px);
    color: var(--white);
    line-height: 1.6;
    max-width: 640px;
    margin: 0 auto;
    text-shadow: 0 2px 16px rgba(0, 0, 0, 0.45);
}

/* ============================================================
   CARD GRID
   ============================================================ */

.workspace-picker-container {
    max-width: var(--content-max-width);
    margin: 0 auto;
    padding: clamp(56px, 9vh, 96px) 24px;
}

.workspace-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 0;
    text-align: left;
    font-family: inherit;
    cursor: pointer;
    background: var(--white);
    border: 1px solid var(--mist);
    border-radius: 14px;
    box-shadow: 0 4px 18px rgba(44, 53, 57, 0.07);
    overflow: hidden;
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.16s ease;
    position: relative;
    animation: workspace-card-in 0.35s ease backwards;
}
.row.justify-content-center > *:nth-child(1) .workspace-card { animation-delay: 0s; }
.row.justify-content-center > *:nth-child(2) .workspace-card { animation-delay: 0.05s; }
.row.justify-content-center > *:nth-child(3) .workspace-card { animation-delay: 0.1s; }

@keyframes workspace-card-in {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

.workspace-card:hover,
.workspace-card:focus-visible {
    transform: translateY(-4px);
    box-shadow: 0 18px 48px rgba(44, 53, 57, 0.14);
    border-color: var(--topographic-teal);
}
.workspace-card-last { border-width: 2px; border-color: var(--topographic-teal); }

.workspace-card:hover .workspace-card-label,
.workspace-card:focus-visible .workspace-card-label {
    color: var(--topographic-teal);
}

.workspace-card-image-wrap {
    position: relative;
    display: block;
    flex: 0 0 auto;
}

.workspace-card-image {
    display: block;
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
}

.workspace-card-body {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: clamp(18px, 2vw, 24px);
}
.workspace-card-label {
    font-family: var(--font-display);
    font-size: var(--text-lg);
    font-weight: 700;
    color: var(--charcoal);
    transition: color 0.16s ease;
}
.workspace-card-desc { font-size: var(--text-sm); color: var(--slate-gray); line-height: 1.5; }
.workspace-card-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    font-size: var(--text-xs);
    padding: 2px 8px;
    border-radius: var(--radius-pill);
    background: rgba(255, 255, 255, 0.92);
    color: var(--topographic-teal);
    font-weight: 700;
}
