/* ============================================================
   NET RENTALS — GROWING RENTAL COMPANIES
   /css/marketing/solutions/growing-rental-companies.css

   DEPENDS ON:
   /css/marketing/rentals-marketing-ui.css

   DESIGN LANGUAGE:
   - Net Rentals Owner OS
   - real admin-console visual language
   - fleet / bookings / operations / collections
   - DM Sans + DM Mono
   - matte black / graphite surfaces
   - operational green / blue / amber / red
   - no gradients
   ============================================================ */


/* ============================================================
   01. TOKENS
   ============================================================ */

.growing-ops-page {
    --grow-bg: #09090b;
    --grow-surface: #111113;
    --grow-surface-2: #18181b;
    --grow-surface-3: rgba(255,255,255,0.04);

    --grow-border: rgba(255,255,255,0.06);
    --grow-border-2: rgba(255,255,255,0.10);
    --grow-border-3: rgba(255,255,255,0.14);

    --grow-text: #fafafa;
    --grow-muted: #71717a;
    --grow-dim: #52525b;

    --grow-green: #4ade80;
    --grow-green-bg: rgba(74,222,128,0.08);
    --grow-green-border: rgba(74,222,128,0.20);

    --grow-amber: #fbbf24;
    --grow-amber-bg: rgba(251,191,36,0.08);
    --grow-amber-border: rgba(251,191,36,0.20);

    --grow-red: #f87171;
    --grow-red-bg: rgba(248,113,113,0.08);
    --grow-red-border: rgba(248,113,113,0.20);

    --grow-blue: #60a5fa;
    --grow-blue-bg: rgba(96,165,250,0.08);
    --grow-blue-border: rgba(96,165,250,0.20);

    --grow-side-w: 260px;

    --grow-font:
        "DM Sans",
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif;

    --grow-mono:
        "DM Mono",
        "SFMono-Regular",
        Consolas,
        monospace;

    background: var(--grow-bg);
    color: var(--grow-text);

    font-family: var(--grow-font);
}


/* ============================================================
   02. BASE
   ============================================================ */

.growing-ops-page,
.growing-ops-page * {
    box-sizing: border-box;
}

.growing-ops-page code,
.growing-ops-page time {
    font-family: var(--grow-mono);
}

.growing-ops-page button,
.growing-ops-page input,
.growing-ops-page textarea,
.growing-ops-page select {
    font-family: var(--grow-font);
}

.growing-ops-page button {
    -webkit-tap-highlight-color: transparent;
}

.growing-ops-page a {
    text-decoration: none;
}

.growing-ops-page button {
    cursor: default;
}

.growing-ops-page ::selection {
    background: rgba(74,222,128,0.25);
    color: #ffffff;
}


/* ============================================================
   03. MARKETING HEADER → OWNER CONSOLE MODE
   ============================================================ */

.growing-marketing-header {
    border-bottom: 1px solid var(--grow-border);

    background: rgba(9,9,11,0.96);

    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.growing-marketing-header .nr-nav-link,
.growing-marketing-header .nr-nav-dropdown-button,
.growing-marketing-header .nr-header-login {
    color: #a1a1aa;
}

.growing-marketing-header .nr-nav-link:hover,
.growing-marketing-header .nr-nav-dropdown-button:hover,
.growing-marketing-header .nr-header-login:hover {
    color: #fafafa;
}

.growing-marketing-header .nr-header-signup {
    border: 1px solid #fafafa;

    background: #fafafa;
    color: #09090b;
}

.growing-marketing-header .nr-header-signup:hover {
    background: #e5e5e5;
}

.growing-marketing-header .nr-menu-button span {
    background: #fafafa;
}

.growing-marketing-header .nr-nav-menu {
    border-color: var(--grow-border-2);

    background: #111113;
}

.growing-marketing-header .nr-nav-menu-link:hover {
    background: var(--grow-surface-2);
}

.growing-marketing-header .nr-nav-menu-title {
    color: #fafafa;
}

.growing-marketing-header .nr-nav-menu-description {
    color: #71717a;
}


/* ============================================================
   04. OWNER OS SHELL
   ============================================================ */

.growing-os {
    min-height: 100vh;

    background: var(--grow-bg);
}

.growing-os-main {
    min-width: 0;
    min-height: 100vh;

    margin-left: var(--grow-side-w);

    background: var(--grow-bg);
}

.growing-ops-page-inner {
    width: min(
        calc(100% - 64px),
        1320px
    );

    margin-inline: auto;
}


/* ============================================================
   05. OWNER SIDEBAR
   ============================================================ */

.growing-os-sidebar {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;

    z-index: 100;

    width: var(--grow-side-w);

    display: flex;
    flex-direction: column;

    padding:
        24px
        16px;

    border-right: 1px solid var(--grow-border);

    background: var(--grow-surface);
}

.growing-sidebar-brand {
    min-height: 46px;

    display: flex;
    align-items: center;

    margin-bottom: 22px;
    padding:
        0
        4px;
}

.growing-sidebar-brand > div {
    min-width: 0;
}

.growing-sidebar-brand strong {
    display: block;

    overflow: hidden;

    color: var(--grow-text);

    font-size: 15px;
    font-weight: 800;

    letter-spacing: -0.025em;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.growing-sidebar-brand span {
    display: block;

    margin-top: 2px;

    color: var(--grow-muted);

    font-size: 11px;
    font-weight: 500;
}

.growing-sidebar-nav {
    min-height: 0;

    display: flex;
    flex: 1;
    flex-direction: column;

    gap: 2px;

    overflow-y: auto;

    scrollbar-width: none;
}

.growing-sidebar-nav::-webkit-scrollbar {
    display: none;
}

.growing-sidebar-label {
    display: block;

    padding:
        18px
        12px
        8px;

    color: var(--grow-dim);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.10em;
    text-transform: uppercase;
}

.growing-sidebar-system-label {
    padding-top: 26px;
}

.growing-sidebar-nav a {
    min-height: 40px;

    display: flex;
    align-items: center;

    gap: 10px;

    padding:
        0
        12px;

    border-radius: 8px;

    color: var(--grow-muted);

    font-size: 13px;
    font-weight: 500;

    transition:
        color 140ms ease,
        background 140ms ease;
}

.growing-sidebar-nav a svg {
    flex: 0 0 auto;

    width: 18px;
    height: 18px;

    opacity: 0.48;
}

.growing-sidebar-nav a:hover {
    background: var(--grow-surface-3);
    color: var(--grow-text);
}

.growing-sidebar-nav a.is-active {
    background: var(--grow-surface-2);
    color: var(--grow-text);

    font-weight: 600;
}

.growing-sidebar-nav a.is-active svg {
    opacity: 1;
}

.growing-sidebar-footer {
    margin-top: auto;
    padding-top: 16px;

    border-top: 1px solid var(--grow-border);
}

.growing-sidebar-user {
    display: flex;
    align-items: center;

    gap: 10px;

    padding:
        8px
        4px;
}

.growing-sidebar-avatar {
    width: 34px;
    height: 34px;

    flex: 0 0 auto;

    display: grid;
    place-items: center;

    border: 1px solid var(--grow-border);
    border-radius: 8px;

    background: var(--grow-surface-2);
    color: var(--grow-muted);

    font-size: 11px;
    font-weight: 800;
}

.growing-sidebar-user > div:last-child {
    min-width: 0;
}

.growing-sidebar-user strong {
    display: block;

    overflow: hidden;

    color: var(--grow-text);

    font-size: 12px;
    font-weight: 600;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.growing-sidebar-user span {
    display: block;

    margin-top: 2px;

    color: var(--grow-muted);

    font-size: 10px;
}

.growing-sidebar-footer-link {
    min-height: 36px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-top: 5px;
    padding:
        0
        10px;

    border-radius: 7px;

    color: var(--grow-dim);

    font-size: 10px;
    font-weight: 650;
}

.growing-sidebar-footer-link:hover {
    background: var(--grow-surface-3);
    color: var(--grow-green);
}

.growing-sidebar-footer-link span {
    font-size: 13px;
}

.growing-sidebar-overlay {
    display: none;
}


/* ============================================================
   06. OWNER TOPBAR
   ============================================================ */

.growing-os-topbar {
    position: sticky;
    top: 0;
    z-index: 50;

    min-height: 64px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    padding:
        0
        32px;

    border-bottom: 1px solid var(--grow-border);

    background: rgba(9,9,11,0.88);

    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.growing-os-topbar-left,
.growing-os-topbar-right {
    display: flex;
    align-items: center;

    gap: 10px;
}

.growing-os-topbar-title {
    color: var(--grow-text);

    font-size: 14px;
    font-weight: 700;
}

.growing-os-badge {
    display: inline-flex;
    align-items: center;

    min-height: 24px;

    padding:
        0
        9px;

    border: 1px solid var(--grow-border);
    border-radius: 6px;

    background: var(--grow-surface-3);
    color: var(--grow-muted);

    font-size: 10px;
    font-weight: 650;
}

.growing-os-badge.is-live {
    border-color: var(--grow-green-border);

    background: var(--grow-green-bg);
    color: var(--grow-green);
}

.growing-topbar-link {
    color: var(--grow-muted);

    font-size: 11px;
    font-weight: 600;
}

.growing-topbar-link:hover {
    color: var(--grow-text);
}

.growing-topbar-action {
    min-height: 34px;

    display: inline-flex;
    align-items: center;

    padding:
        0
        12px;

    border-radius: 7px;

    background: #fafafa;
    color: #09090b;

    font-size: 11px;
    font-weight: 750;
}

.growing-topbar-action:hover {
    background: #e5e5e5;
}

.growing-os-menu-button {
    display: none;

    width: 36px;
    height: 36px;

    align-items: center;
    justify-content: center;

    padding: 0;

    border: 0;

    background: transparent;
    color: var(--grow-text);
}

.growing-os-menu-button svg {
    width: 20px;
    height: 20px;
}


/* ============================================================
   07. OPERATIONS HERO
   ============================================================ */

.growing-operations-hero {
    scroll-margin-top: 145px;

    padding:
        62px
        0
        42px;

    border-bottom: 1px solid var(--grow-border);

    background: var(--grow-bg);
}

.growing-ops-hero-heading {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        auto;

    gap: 48px;

    align-items: end;
}

.growing-ops-hero-heading > div:first-child {
    max-width: 840px;
}

.growing-ops-kicker {
    display: block;

    margin-bottom: 14px;

    color: var(--grow-green);

    font-size: 10px;
    font-weight: 800;

    letter-spacing: 0.11em;
}

.growing-ops-hero-heading h1 {
    max-width: 860px;

    margin: 0;

    color: var(--grow-text);

    font-size:
        clamp(
            3.2rem,
            6vw,
            6.2rem
        );

    line-height: 0.94;
    font-weight: 800;

    letter-spacing: -0.065em;
}

.growing-ops-hero-heading p {
    max-width: 730px;

    margin:
        24px
        0
        0;

    color: var(--grow-muted);

    font-size: 1rem;
    line-height: 1.72;
}

.growing-ops-hero-actions {
    display: flex;
    flex-direction: column;

    gap: 8px;

    min-width: 190px;
}

.growing-primary-button,
.growing-secondary-button {
    min-height: 44px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding:
        0
        15px;

    border-radius: 8px;

    font-size: 12px;
    font-weight: 700;

    white-space: nowrap;
}

.growing-primary-button {
    border: 1px solid #fafafa;

    background: #fafafa;
    color: #09090b;
}

.growing-primary-button:hover {
    background: #e5e5e5;
}

.growing-secondary-button {
    border: 1px solid var(--grow-border-2);

    background: var(--grow-surface);
    color: var(--grow-text);
}

.growing-secondary-button:hover {
    border-color: var(--grow-border-3);
    background: var(--grow-surface-2);
}


/* ============================================================
   08. HERO STATS
   ============================================================ */

.growing-stat-grid {
    display: grid;
    grid-template-columns:
        repeat(
            4,
            minmax(0, 1fr)
        );

    gap: 12px;

    margin-top: 44px;
}

.growing-stat-grid article {
    min-width: 0;

    padding:
        18px
        18px
        20px;

    border: 1px solid var(--grow-border);
    border-radius: 12px;

    background: var(--grow-surface);
}

.growing-stat-top {
    min-height: 24px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 8px;

    margin-bottom: 18px;
}

.growing-stat-top > span {
    color: var(--grow-dim);

    font-size: 9px;
    font-weight: 800;

    letter-spacing: 0.10em;
}

.growing-stat-top small {
    padding:
        4px
        6px;

    border-radius: 5px;

    font-size: 8px;
    font-weight: 700;
}

.growing-stat-grid article > strong {
    display: block;

    color: var(--grow-text);

    font-size:
        clamp(
            2rem,
            3vw,
            2.8rem
        );

    line-height: 1;
    font-weight: 800;

    letter-spacing: -0.05em;
}

.growing-stat-grid article > p {
    margin:
        9px
        0
        0;

    color: var(--grow-muted);

    font-size: 11px;
    line-height: 1.45;
}


/* ============================================================
   09. STATUS UTILITIES
   ============================================================ */

.growing-ops-page .is-good {
    color: var(--grow-green) !important;
}

.growing-ops-page .is-blue {
    color: var(--grow-blue) !important;
}

.growing-ops-page .is-warning {
    color: var(--grow-amber) !important;
}

.growing-ops-page .is-red {
    color: var(--grow-red) !important;
}

.growing-stat-top small.is-good {
    border: 1px solid var(--grow-green-border);

    background: var(--grow-green-bg);
}

.growing-stat-top small.is-blue {
    border: 1px solid var(--grow-blue-border);

    background: var(--grow-blue-bg);
}

.growing-stat-top small.is-warning {
    border: 1px solid var(--grow-amber-border);

    background: var(--grow-amber-bg);
}


/* ============================================================
   10. ATTENTION STRIP
   ============================================================ */

.growing-attention-strip {
    min-height: 56px;

    display: grid;
    grid-template-columns:
        auto
        minmax(0, 1fr)
        auto;

    gap: 18px;

    align-items: center;

    margin-top: 12px;
    padding:
        0
        16px;

    border: 1px solid var(--grow-amber-border);
    border-radius: 10px;

    background: var(--grow-amber-bg);
}

.growing-attention-label {
    display: flex;
    align-items: center;

    gap: 8px;
}

.growing-attention-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: var(--grow-amber);
}

.growing-attention-label strong {
    color: #fde68a;

    font-size: 11px;
    font-weight: 700;
}

.growing-attention-items {
    display: flex;
    flex-wrap: wrap;

    gap: 6px 18px;
}

.growing-attention-items span {
    color: #a78b54;

    font-size: 10px;
}

.growing-attention-strip > a {
    color: var(--grow-amber);

    font-size: 10px;
    font-weight: 700;

    white-space: nowrap;
}


/* ============================================================
   11. GENERIC OPERATIONS SECTION
   ============================================================ */

.growing-ops-section {
    scroll-margin-top: 145px;

    padding:
        72px
        0;

    border-bottom: 1px solid var(--grow-border);

    background: var(--grow-bg);
}

.growing-ops-section:nth-of-type(even) {
    background: #0b0b0d;
}

.growing-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 42px;

    margin-bottom: 32px;
}

.growing-section-heading > div:first-child {
    display: grid;
    grid-template-columns:
        42px
        minmax(0, 1fr);

    gap: 16px;

    max-width: 850px;
}

.growing-section-number {
    display: block;

    color: var(--grow-dim);

    font-family: var(--grow-mono);
    font-size: 11px;
    font-weight: 500;
}

.growing-section-heading small,
.growing-booking-copy > small,
.growing-collections-copy > small,
.growing-direct-copy > small {
    display: block;

    margin-bottom: 8px;

    color: var(--grow-green);

    font-size: 9px;
    font-weight: 800;

    letter-spacing: 0.11em;
}

.growing-section-heading h2,
.growing-booking-copy h2,
.growing-collections-copy h2,
.growing-direct-copy h2 {
    max-width: 760px;

    margin: 0;

    color: var(--grow-text);

    font-size:
        clamp(
            2rem,
            4vw,
            4rem
        );

    line-height: 0.98;
    font-weight: 800;

    letter-spacing: -0.055em;
}

.growing-section-heading p,
.growing-booking-copy > p,
.growing-collections-copy > p,
.growing-direct-copy > p {
    max-width: 680px;

    margin:
        16px
        0
        0;

    color: var(--grow-muted);

    font-size: 13px;
    line-height: 1.68;
}

.growing-section-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;

    gap: 7px;
}

.growing-section-meta span {
    padding:
        5px
        8px;

    border: 1px solid var(--grow-border);
    border-radius: 6px;

    background: var(--grow-surface);

    font-size: 9px;
    font-weight: 700;
}

.growing-section-meta span.is-good {
    border-color: var(--grow-green-border);

    background: var(--grow-green-bg);
}

.growing-section-meta span.is-blue {
    border-color: var(--grow-blue-border);

    background: var(--grow-blue-bg);
}

.growing-section-meta span.is-warning {
    border-color: var(--grow-amber-border);

    background: var(--grow-amber-bg);
}


/* ============================================================
   12. CALENDAR WINDOW
   ============================================================ */

.growing-calendar-window {
    overflow: hidden;

    border: 1px solid var(--grow-border);
    border-radius: 14px;

    background: var(--grow-surface);
}

.growing-calendar-toolbar {
    min-height: 64px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 20px;

    padding:
        0
        16px;

    border-bottom: 1px solid var(--grow-border);

    background: var(--grow-surface);
}

.growing-calendar-toolbar > div:first-child {
    display: flex;
    align-items: center;

    gap: 10px;
}

.growing-calendar-toolbar button {
    width: 32px;
    height: 32px;

    display: grid;
    place-items: center;

    padding: 0;

    border: 1px solid var(--grow-border);
    border-radius: 7px;

    background: var(--grow-surface-2);
    color: var(--grow-muted);

    font-size: 13px;
}

.growing-calendar-toolbar strong {
    color: var(--grow-text);

    font-size: 12px;
    font-weight: 700;
}

.growing-calendar-view-switch {
    display: flex;

    padding: 3px;

    border: 1px solid var(--grow-border);
    border-radius: 7px;

    background: var(--grow-bg);
}

.growing-calendar-view-switch span {
    min-height: 28px;

    display: inline-flex;
    align-items: center;

    padding:
        0
        9px;

    border-radius: 5px;

    color: var(--grow-dim);

    font-size: 9px;
    font-weight: 700;
}

.growing-calendar-view-switch span.is-active {
    background: var(--grow-surface-2);
    color: var(--grow-text);
}


/* ============================================================
   13. CALENDAR GRID
   ============================================================ */

.growing-calendar {
    min-width: 980px;

    overflow: hidden;
}

.growing-calendar-header {
    display: grid;
    grid-template-columns:
        190px
        repeat(
            7,
            minmax(90px, 1fr)
        );

    min-height: 58px;

    border-bottom: 1px solid var(--grow-border);

    background: #0f0f11;
}

.growing-calendar-header > div {
    min-width: 0;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    border-right: 1px solid var(--grow-border);
}

.growing-calendar-header > div:last-child {
    border-right: 0;
}

.growing-calendar-header .growing-calendar-vehicle-head {
    align-items: flex-start;

    padding-left: 16px;

    color: var(--grow-dim);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.growing-calendar-header small {
    color: var(--grow-dim);

    font-size: 8px;
    font-weight: 700;
}

.growing-calendar-header strong {
    margin-top: 3px;

    color: var(--grow-muted);

    font-family: var(--grow-mono);
    font-size: 11px;
    font-weight: 500;
}

.growing-calendar-row {
    display: grid;
    grid-template-columns:
        190px
        minmax(790px, 1fr);

    min-height: 88px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-calendar-row:last-child {
    border-bottom: 0;
}

.growing-calendar-vehicle {
    min-width: 0;

    display: flex;
    align-items: center;

    gap: 10px;

    padding:
        0
        16px;

    border-right: 1px solid var(--grow-border);

    background: #0f0f11;
}

.growing-vehicle-dot {
    width: 7px;
    height: 7px;

    flex: 0 0 auto;

    border-radius: 50%;
}

.growing-vehicle-dot.is-good {
    background: var(--grow-green);
}

.growing-vehicle-dot.is-blue {
    background: var(--grow-blue);
}

.growing-vehicle-dot.is-warning {
    background: var(--grow-amber);
}

.growing-vehicle-dot.is-red {
    background: var(--grow-red);
}

.growing-calendar-vehicle > div {
    min-width: 0;
}

.growing-calendar-vehicle strong {
    display: block;

    overflow: hidden;

    color: #e4e4e7;

    font-size: 10px;
    font-weight: 700;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.growing-calendar-vehicle small {
    display: block;

    overflow: hidden;

    margin-top: 3px;

    color: var(--grow-dim);

    font-size: 8px;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.growing-calendar-track {
    position: relative;

    display: grid;
    grid-template-columns:
        repeat(
            7,
            minmax(90px, 1fr)
        );

    align-items: center;

    min-width: 0;

    background-color: var(--grow-bg);
}

.growing-calendar-track::before {
    content: "";

    position: absolute;
    inset: 0;

    pointer-events: none;

    background-size: 14.2857% 100%;
}

.growing-calendar-track > * {
    position: relative;
    z-index: 1;
}

.growing-calendar-track::after {
    content: "";

    position: absolute;
    inset: 0;

    pointer-events: none;

    border-left: 0;
}


/* individual calendar vertical rules */

.growing-calendar-track {
    box-shadow:
        inset calc(14.2857% * 1) 0 0 -1px var(--grow-border),
        inset calc(14.2857% * 2) 0 0 -1px var(--grow-border),
        inset calc(14.2857% * 3) 0 0 -1px var(--grow-border),
        inset calc(14.2857% * 4) 0 0 -1px var(--grow-border),
        inset calc(14.2857% * 5) 0 0 -1px var(--grow-border),
        inset calc(14.2857% * 6) 0 0 -1px var(--grow-border);
}

.growing-calendar-event,
.growing-calendar-available,
.growing-calendar-buffer {
    grid-column:
        var(--event-start)
        /
        span var(--event-span);

    align-self: center;

    min-width: 0;
    min-height: 58px;

    margin:
        8px
        5px;

    padding:
        9px
        10px;

    border-radius: 8px;
}

.growing-calendar-event {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.growing-calendar-event > span {
    margin-bottom: 4px;

    font-size: 7px;
    font-weight: 800;

    letter-spacing: 0.08em;
}

.growing-calendar-event > strong {
    overflow: hidden;

    font-size: 9px;
    font-weight: 700;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.growing-calendar-event > small {
    overflow: hidden;

    margin-top: 2px;

    font-size: 7px;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.growing-calendar-event.is-active {
    border: 1px solid var(--grow-blue-border);

    background: var(--grow-blue-bg);
    color: var(--grow-blue);
}

.growing-calendar-event.is-active strong {
    color: #bfdbfe;
}

.growing-calendar-event.is-active small {
    color: #6c8ab2;
}

.growing-calendar-event.is-booked {
    border: 1px solid var(--grow-border-2);

    background: var(--grow-surface-2);
    color: #d4d4d8;
}

.growing-calendar-event.is-booked span {
    color: #a1a1aa;
}

.growing-calendar-event.is-booked small {
    color: #71717a;
}

.growing-calendar-event.is-ready {
    border: 1px solid var(--grow-green-border);

    background: var(--grow-green-bg);
    color: var(--grow-green);
}

.growing-calendar-event.is-ready strong {
    color: #bbf7d0;
}

.growing-calendar-event.is-ready small {
    color: #6b987b;
}

.growing-calendar-event.is-maintenance {
    border: 1px solid var(--grow-amber-border);

    background: var(--grow-amber-bg);
    color: var(--grow-amber);
}

.growing-calendar-event.is-maintenance strong {
    color: #fde68a;
}

.growing-calendar-event.is-maintenance small {
    color: #9d8650;
}

.growing-calendar-event.is-late {
    border: 1px solid var(--grow-red-border);

    background: var(--grow-red-bg);
    color: var(--grow-red);
}

.growing-calendar-event.is-late strong {
    color: #fecaca;
}

.growing-calendar-event.is-late small {
    color: #9e6a6a;
}

.growing-calendar-available,
.growing-calendar-buffer {
    min-height: 34px;

    align-self: center;

    display: flex;
    align-items: center;

    padding:
        0
        10px;

    font-size: 8px;
    font-weight: 700;
}

.growing-calendar-available {
    border: 1px solid var(--grow-green-border);

    background: rgba(74,222,128,0.025);
    color: #579a6b;
}

.growing-calendar-buffer {
    border: 1px dashed var(--grow-border-2);

    background: rgba(255,255,255,0.015);
    color: var(--grow-dim);
}


/* ============================================================
   14. OPERATOR NOTE
   ============================================================ */

.growing-operator-note {
    display: grid;
    grid-template-columns:
        120px
        minmax(220px, 0.7fr)
        minmax(300px, 1fr);

    gap: 24px;

    align-items: start;

    margin-top: 16px;
    padding:
        22px
        24px;

    border: 1px solid var(--grow-border);
    border-radius: 10px;

    background: var(--grow-surface);
}

.growing-operator-note > span {
    color: var(--grow-green);

    font-family: var(--grow-mono);
    font-size: 9px;
    font-weight: 500;

    letter-spacing: 0.07em;
}

.growing-operator-note > strong {
    color: var(--grow-text);

    font-size: 14px;
    line-height: 1.45;
    font-weight: 700;
}

.growing-operator-note > p {
    margin: 0;

    color: var(--grow-muted);

    font-size: 11px;
    line-height: 1.6;
}


/* ============================================================
   15. ACTIVITY LAYOUT
   ============================================================ */

.growing-activity-layout {
    display: grid;
    grid-template-columns:
        minmax(0, 1.25fr)
        minmax(310px, 0.75fr);

    gap: 14px;

    align-items: start;
}

.growing-activity-feed,
.growing-today-panel,
.growing-collections-board,
.growing-customer-list,
.growing-message-thread,
.growing-website-admin {
    overflow: hidden;

    border: 1px solid var(--grow-border);
    border-radius: 12px;

    background: var(--grow-surface);
}

.growing-panel-head {
    min-height: 62px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 14px;

    padding:
        0
        16px;

    border-bottom: 1px solid var(--grow-border);

    background: var(--grow-surface);
}

.growing-panel-head strong {
    display: block;

    color: var(--grow-text);

    font-size: 12px;
    font-weight: 700;
}

.growing-panel-head span {
    display: block;

    margin-top: 3px;

    color: var(--grow-muted);

    font-size: 9px;
}

.growing-live-indicator {
    display: inline-flex !important;
    align-items: center;

    gap: 6px;

    margin-top: 0 !important;

    color: var(--grow-green) !important;

    font-family: var(--grow-mono);
    font-size: 8px !important;
    font-weight: 500;
}

.growing-live-indicator i {
    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: var(--grow-green);
}


/* ============================================================
   16. ACTIVITY ROWS
   ============================================================ */

.growing-activity-row {
    display: grid;
    grid-template-columns:
        74px
        30px
        minmax(0, 1fr)
        auto;

    gap: 12px;

    align-items: center;

    min-height: 68px;

    padding:
        10px
        16px;

    border-bottom: 1px solid var(--grow-border);

    background: var(--grow-surface);
}

.growing-activity-row:last-child {
    border-bottom: 0;
}

.growing-activity-row.is-danger {
    background: rgba(248,113,113,0.025);
}

.growing-activity-row time {
    color: var(--grow-dim);

    font-size: 9px;
}

.growing-activity-icon {
    width: 28px;
    height: 28px;

    display: grid;
    place-items: center;

    border: 1px solid var(--grow-border);
    border-radius: 7px;

    background: var(--grow-surface-2);

    font-size: 9px;
    font-weight: 800;
}

.growing-activity-icon.is-good {
    border-color: var(--grow-green-border);

    background: var(--grow-green-bg);
}

.growing-activity-icon.is-blue {
    border-color: var(--grow-blue-border);

    background: var(--grow-blue-bg);
}

.growing-activity-icon.is-warning {
    border-color: var(--grow-amber-border);

    background: var(--grow-amber-bg);
}

.growing-activity-icon.is-red {
    border-color: var(--grow-red-border);

    background: var(--grow-red-bg);
}

.growing-activity-row > div {
    min-width: 0;
}

.growing-activity-row > div strong {
    display: block;

    overflow: hidden;

    color: #e4e4e7;

    font-size: 11px;
    font-weight: 650;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.growing-activity-row > div small {
    display: block;

    overflow: hidden;

    margin-top: 3px;

    color: var(--grow-muted);

    font-size: 9px;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.growing-activity-state {
    padding:
        4px
        7px;

    border-radius: 5px;

    font-size: 8px;
    font-weight: 750;
}

.growing-activity-state.is-good {
    border: 1px solid var(--grow-green-border);

    background: var(--grow-green-bg);
}

.growing-activity-state.is-blue {
    border: 1px solid var(--grow-blue-border);

    background: var(--grow-blue-bg);
}

.growing-activity-state.is-warning {
    border: 1px solid var(--grow-amber-border);

    background: var(--grow-amber-bg);
}

.growing-activity-state.is-red {
    border: 1px solid var(--grow-red-border);

    background: var(--grow-red-bg);
}


/* ============================================================
   17. TODAY PANEL
   ============================================================ */

.growing-today-item {
    display: grid;
    grid-template-columns:
        54px
        minmax(0, 1fr)
        auto;

    gap: 12px;

    align-items: center;

    min-height: 72px;

    padding:
        10px
        15px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-today-time {
    color: var(--grow-dim);

    font-family: var(--grow-mono);
    font-size: 9px;
}

.growing-today-item > div {
    min-width: 0;
}

.growing-today-item strong {
    display: block;

    color: #e4e4e7;

    font-size: 10px;
    font-weight: 650;
}

.growing-today-item small {
    display: block;

    margin-top: 3px;

    color: var(--grow-muted);

    font-size: 8px;
}

.growing-today-item > span:last-child {
    padding:
        4px
        6px;

    border: 1px solid var(--grow-border);
    border-radius: 5px;

    background: var(--grow-surface-3);

    font-size: 7px;
    font-weight: 800;
}

.growing-today-item > span:last-child.is-good {
    border-color: var(--grow-green-border);

    background: var(--grow-green-bg);
}

.growing-today-item > span:last-child.is-blue {
    border-color: var(--grow-blue-border);

    background: var(--grow-blue-bg);
}

.growing-today-item > span:last-child.is-warning {
    border-color: var(--grow-amber-border);

    background: var(--grow-amber-bg);
}

.growing-today-summary {
    display: grid;
    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );
}

.growing-today-summary > div {
    min-height: 76px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding:
        0
        14px;

    border-right: 1px solid var(--grow-border);
}

.growing-today-summary > div:last-child {
    border-right: 0;
}

.growing-today-summary span {
    color: var(--grow-dim);

    font-size: 8px;
}

.growing-today-summary strong {
    margin-top: 5px;

    color: var(--grow-text);

    font-size: 18px;
    font-weight: 800;
}


/* ============================================================
   18. BOOKING SECTION
   ============================================================ */

.growing-booking-section {
    background: #0b0b0d;
}

.growing-booking-layout {
    display: grid;
    grid-template-columns:
        minmax(300px, 0.72fr)
        minmax(560px, 1.28fr);

    gap: 70px;

    align-items: center;
}

.growing-booking-copy {
    max-width: 600px;
}

.growing-booking-copy > .growing-section-number,
.growing-collections-copy > .growing-section-number,
.growing-direct-copy > .growing-section-number {
    margin-bottom: 14px;
}

.growing-booking-copy-rule {
    margin-top: 28px;
    padding:
        17px
        18px;

    border-left: 2px solid var(--grow-green);

    background: var(--grow-green-bg);
}

.growing-booking-copy-rule span {
    color: var(--grow-green);

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 0.09em;
}

.growing-booking-copy-rule p {
    margin:
        7px
        0
        0;

    color: #a7b7ac;

    font-size: 11px;
    line-height: 1.6;
}


/* ============================================================
   19. BOOKING INSPECTOR
   ============================================================ */

.growing-booking-inspector {
    overflow: hidden;

    border: 1px solid var(--grow-border-2);
    border-radius: 14px;

    background: var(--grow-surface);
}

.growing-booking-inspector-head {
    min-height: 62px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 14px;

    padding:
        0
        18px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-booking-inspector-head > div span {
    display: block;

    color: var(--grow-dim);

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 0.08em;
}

.growing-booking-inspector-head > div strong {
    display: block;

    margin-top: 4px;

    color: var(--grow-text);

    font-family: var(--grow-mono);
    font-size: 11px;
    font-weight: 500;
}

.growing-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding:
        5px
        7px;

    border: 1px solid var(--grow-border);
    border-radius: 5px;

    background: var(--grow-surface-3);
    color: var(--grow-muted);

    font-size: 7px;
    font-weight: 800;

    white-space: nowrap;
}

.growing-status-pill.is-good {
    border-color: var(--grow-green-border);

    background: var(--grow-green-bg);
}

.growing-status-pill.is-blue {
    border-color: var(--grow-blue-border);

    background: var(--grow-blue-bg);
}

.growing-status-pill.is-warning {
    border-color: var(--grow-amber-border);

    background: var(--grow-amber-bg);
}

.growing-status-pill.is-red {
    border-color: var(--grow-red-border);

    background: var(--grow-red-bg);
}

.growing-booking-customer {
    min-height: 88px;

    display: grid;
    grid-template-columns:
        42px
        minmax(0, 1fr)
        auto;

    gap: 12px;

    align-items: center;

    padding:
        0
        18px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-booking-avatar {
    width: 40px;
    height: 40px;

    display: grid;
    place-items: center;

    border: 1px solid var(--grow-border);
    border-radius: 9px;

    background: var(--grow-surface-2);
    color: var(--grow-muted);

    font-size: 10px;
    font-weight: 800;
}

.growing-booking-customer > div:nth-child(2) {
    min-width: 0;
}

.growing-booking-customer > div:nth-child(2) strong {
    display: block;

    color: var(--grow-text);

    font-size: 12px;
    font-weight: 700;
}

.growing-booking-customer > div:nth-child(2) span {
    display: block;

    margin-top: 3px;

    color: var(--grow-muted);

    font-size: 9px;
}

.growing-booking-dates {
    text-align: right;
}

.growing-booking-dates small {
    display: block;

    color: var(--grow-dim);

    font-size: 7px;
    font-weight: 800;

    letter-spacing: 0.08em;
}

.growing-booking-dates strong {
    display: block;

    margin-top: 4px;

    color: #d4d4d8;

    font-family: var(--grow-mono);
    font-size: 9px;
    font-weight: 500;
}


/* ============================================================
   20. BOOKING PROGRESS
   ============================================================ */

.growing-booking-progress {
    display: grid;
    grid-template-columns:
        auto
        1fr
        auto
        1fr
        auto
        1fr
        auto;

    align-items: center;

    padding:
        20px
        18px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-booking-progress > div {
    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 5px;
}

.growing-booking-progress > div > span {
    width: 22px;
    height: 22px;

    display: grid;
    place-items: center;

    border: 1px solid var(--grow-border);
    border-radius: 50%;

    background: var(--grow-bg);
    color: var(--grow-dim);

    font-family: var(--grow-mono);
    font-size: 7px;
}

.growing-booking-progress > div > strong {
    color: var(--grow-dim);

    font-size: 7px;
    font-weight: 650;
}

.growing-booking-progress > div.is-complete > span {
    border-color: var(--grow-green-border);

    background: var(--grow-green-bg);
    color: var(--grow-green);
}

.growing-booking-progress > div.is-complete > strong {
    color: var(--grow-green);
}

.growing-booking-progress > div.is-current > span {
    border-color: var(--grow-blue-border);

    background: var(--grow-blue-bg);
    color: var(--grow-blue);
}

.growing-booking-progress > div.is-current > strong {
    color: var(--grow-blue);
}

.growing-booking-progress > i {
    height: 1px;

    margin:
        0
        8px
        17px;

    background: var(--grow-border-2);
}


/* ============================================================
   21. BOOKING GATES
   ============================================================ */

.growing-booking-gates {
    display: grid;
    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    border-bottom: 1px solid var(--grow-border);
}

.growing-booking-gates > div {
    min-height: 68px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding:
        10px
        16px;

    border-right: 1px solid var(--grow-border);
    border-bottom: 1px solid var(--grow-border);
}

.growing-booking-gates > div:nth-child(3n) {
    border-right: 0;
}

.growing-booking-gates > div:nth-last-child(-n + 3) {
    border-bottom: 0;
}

.growing-booking-gates span {
    color: var(--grow-dim);

    font-size: 8px;
}

.growing-booking-gates strong {
    margin-top: 5px;

    color: #d4d4d8;

    font-family: var(--grow-mono);
    font-size: 8px;
    font-weight: 500;
}

.growing-booking-footer {
    min-height: 70px;

    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1fr)
        auto;

    gap: 16px;

    align-items: center;

    padding:
        0
        18px;
}

.growing-booking-footer span {
    display: block;

    color: var(--grow-dim);

    font-size: 7px;
}

.growing-booking-footer strong {
    display: block;

    margin-top: 4px;

    color: #d4d4d8;

    font-size: 9px;
    font-weight: 650;
}

.growing-booking-footer button {
    min-height: 34px;

    padding:
        0
        11px;

    border: 1px solid var(--grow-border-2);
    border-radius: 6px;

    background: var(--grow-surface-2);
    color: var(--grow-text);

    font-size: 9px;
    font-weight: 700;
}


/* ============================================================
   22. FLEET SECTION
   ============================================================ */

.growing-add-vehicle {
    min-height: 40px;

    display: inline-flex;
    align-items: center;

    gap: 8px;

    padding:
        0
        14px;

    border: 0;
    border-radius: 8px;

    background: #fafafa;
    color: #09090b;

    font-size: 11px;
    font-weight: 750;
}

.growing-add-vehicle > span {
    font-size: 16px;
    font-weight: 500;
}

.growing-fleet-grid {
    display: grid;
    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    gap: 14px;
}

.growing-fleet-card {
    min-width: 0;

    overflow: hidden;

    border: 1px solid var(--grow-border);
    border-radius: 14px;

    background: var(--grow-surface);
}

.growing-fleet-media {
    position: relative;

    height: 178px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-bottom: 1px solid var(--grow-border);

    background: var(--grow-surface-2);
}

.growing-fleet-media.is-sclass {
    background: #16171a;
}

.growing-fleet-media.is-bmw {
    background: #14181c;
}

.growing-fleet-media.is-range {
    background: #191714;
}

.growing-fleet-media-placeholder {
    color: rgba(255,255,255,0.07);

    font-size: 62px;
    font-weight: 900;

    letter-spacing: -0.07em;
}

.growing-fleet-status {
    position: absolute;
    top: 12px;
    right: 12px;

    padding:
        4px
        8px;

    border-radius: 5px;

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 0.06em;
}

.growing-fleet-status.is-active {
    border: 1px solid var(--grow-green-border);

    background: rgba(17,17,19,0.88);
    color: var(--grow-green);
}

.growing-fleet-status.is-maintenance {
    border: 1px solid var(--grow-amber-border);

    background: rgba(17,17,19,0.88);
    color: var(--grow-amber);
}

.growing-fleet-body {
    padding:
        15px
        17px;
}

.growing-fleet-body > strong {
    display: block;

    color: var(--grow-text);

    font-size: 14px;
    font-weight: 800;
}

.growing-fleet-body > span {
    display: block;

    margin-top: 3px;

    color: var(--grow-muted);

    font-size: 10px;
}

.growing-fleet-body > small {
    display: block;

    margin-top: 8px;

    color: var(--grow-dim);

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 0.10em;
}

.growing-fleet-info {
    display: grid;
    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    border-top: 1px solid var(--grow-border);
}

.growing-fleet-info > div {
    min-height: 62px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding:
        0
        16px;

    border-right: 1px solid var(--grow-border);
}

.growing-fleet-info > div:last-child {
    border-right: 0;
}

.growing-fleet-info span {
    color: var(--grow-dim);

    font-size: 8px;
}

.growing-fleet-info strong {
    margin-top: 4px;

    color: #d4d4d8;

    font-size: 9px;
    font-weight: 650;
}

.growing-fleet-footer {
    min-height: 58px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 12px;

    padding:
        0
        16px;

    border-top: 1px solid var(--grow-border);
}

.growing-fleet-footer > strong {
    color: var(--grow-green);

    font-size: 14px;
    font-weight: 800;
}

.growing-fleet-footer > strong span {
    color: var(--grow-muted);

    font-size: 9px;
    font-weight: 500;
}

.growing-fleet-footer button {
    min-height: 30px;

    padding:
        0
        9px;

    border: 1px solid var(--grow-border);
    border-radius: 6px;

    background: transparent;
    color: var(--grow-muted);

    font-size: 8px;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: 0.05em;
}


/* ============================================================
   23. FLEET CAPABILITIES
   ============================================================ */

.growing-fleet-capabilities {
    display: grid;
    grid-template-columns:
        repeat(
            6,
            minmax(0, 1fr)
        );

    margin-top: 14px;

    border-top: 1px solid var(--grow-border);
    border-left: 1px solid var(--grow-border);
}

.growing-fleet-capabilities > div {
    min-height: 84px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding:
        12px
        14px;

    border-right: 1px solid var(--grow-border);
    border-bottom: 1px solid var(--grow-border);

    background: #0d0d0f;
}

.growing-fleet-capabilities span {
    color: var(--grow-dim);

    font-size: 8px;
}

.growing-fleet-capabilities strong {
    margin-top: 4px;

    color: #a1a1aa;

    font-size: 9px;
    font-weight: 650;
}


/* ============================================================
   24. COLLECTIONS
   ============================================================ */

.growing-collections-section {
    background: #0b0b0d;
}

.growing-collections-layout {
    display: grid;
    grid-template-columns:
        minmax(300px, 0.75fr)
        minmax(520px, 1.25fr);

    gap: 70px;

    align-items: end;

    margin-bottom: 32px;
}

.growing-collections-copy {
    max-width: 620px;
}

.growing-money-summary {
    display: grid;
    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    border-top: 1px solid var(--grow-border);
    border-left: 1px solid var(--grow-border);
}

.growing-money-summary > div {
    min-height: 138px;

    display: flex;
    flex-direction: column;

    padding:
        18px;

    border-right: 1px solid var(--grow-border);
    border-bottom: 1px solid var(--grow-border);

    background: var(--grow-surface);
}

.growing-money-summary span {
    color: var(--grow-dim);

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 0.08em;
}

.growing-money-summary strong {
    margin-top: 24px;

    color: var(--grow-text);

    font-size: 22px;
    font-weight: 800;

    letter-spacing: -0.04em;
}

.growing-money-summary small {
    margin-top: auto;

    font-size: 8px;
    font-weight: 650;
}

.growing-count {
    margin-top: 0 !important;

    padding:
        4px
        7px;

    border: 1px solid var(--grow-border);
    border-radius: 5px;

    background: var(--grow-surface-2);
    color: var(--grow-muted) !important;

    font-size: 8px !important;
    font-weight: 700;
}


/* ============================================================
   25. COLLECTION TABLE
   ============================================================ */

.growing-collection-table {
    display: grid;
    grid-template-columns:
        minmax(170px, 1fr)
        100px
        minmax(120px, 0.8fr)
        90px
        minmax(140px, auto);

    gap: 12px;

    align-items: center;

    min-height: 64px;

    padding:
        10px
        16px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-collection-table:last-child {
    border-bottom: 0;
}

.growing-collection-head {
    min-height: 40px;

    background: #0f0f11;
}

.growing-collection-head span {
    color: var(--grow-dim);

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 0.06em;
}

.growing-collection-table > div strong {
    display: block;

    color: #e4e4e7;

    font-size: 10px;
    font-weight: 650;
}

.growing-collection-table > div small {
    display: block;

    margin-top: 3px;

    color: var(--grow-muted);

    font-size: 8px;
}

.growing-collection-table code {
    color: var(--grow-muted);

    font-size: 8px;
}

.growing-collection-table > span:not(.growing-status-pill) {
    color: #a1a1aa;

    font-size: 9px;
}

.growing-collection-table > strong {
    color: var(--grow-text);

    font-size: 10px;
    font-weight: 700;
}


/* ============================================================
   26. CUSTOMER WORKSPACE
   ============================================================ */

.growing-customer-workspace {
    display: grid;
    grid-template-columns:
        320px
        minmax(0, 1fr);

    gap: 14px;
}

.growing-customer-row {
    display: grid;
    grid-template-columns:
        36px
        minmax(0, 1fr)
        auto;

    gap: 10px;

    align-items: center;

    min-height: 68px;

    padding:
        10px
        14px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-customer-row:last-child {
    border-bottom: 0;
}

.growing-customer-row.is-active {
    background: var(--grow-surface-2);
}

.growing-customer-avatar {
    width: 34px;
    height: 34px;

    display: grid;
    place-items: center;

    border: 1px solid var(--grow-border);
    border-radius: 8px;

    background: var(--grow-bg);
    color: var(--grow-muted);

    font-size: 9px;
    font-weight: 800;
}

.growing-customer-row > div:nth-child(2) {
    min-width: 0;
}

.growing-customer-row strong {
    display: block;

    overflow: hidden;

    color: #e4e4e7;

    font-size: 10px;
    font-weight: 650;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.growing-customer-row small {
    display: block;

    overflow: hidden;

    margin-top: 3px;

    color: var(--grow-muted);

    font-size: 8px;

    white-space: nowrap;
    text-overflow: ellipsis;
}

.growing-customer-row > span {
    font-size: 7px;
    font-weight: 800;
}


/* ============================================================
   27. MESSAGE THREAD
   ============================================================ */

.growing-message-head {
    min-height: 70px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 16px;

    padding:
        0
        16px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-message-head > div {
    min-width: 0;

    display: flex;
    align-items: center;

    gap: 10px;
}

.growing-message-head > div > div:last-child {
    min-width: 0;
}

.growing-message-head strong {
    display: block;

    color: var(--grow-text);

    font-size: 10px;
    font-weight: 700;
}

.growing-message-head span:not(.growing-status-pill) {
    display: block;

    margin-top: 3px;

    color: var(--grow-muted);

    font-size: 8px;
}

.growing-message-history {
    min-height: 310px;

    display: flex;
    flex-direction: column;

    gap: 12px;

    padding:
        22px
        18px;

    background: #0d0d0f;
}

.growing-message {
    max-width: 72%;

    display: flex;
    flex-direction: column;

    gap: 5px;
}

.growing-message p {
    margin: 0;

    padding:
        10px
        12px;

    border: 1px solid var(--grow-border);
    border-radius: 9px;

    color: #d4d4d8;

    font-size: 10px;
    line-height: 1.5;
}

.growing-message > span {
    color: var(--grow-dim);

    font-size: 7px;
}

.growing-message.is-system {
    max-width: 100%;

    align-items: center;

    text-align: center;
}

.growing-message.is-system p {
    padding:
        7px
        10px;

    border-color: var(--grow-border);

    background: rgba(255,255,255,0.02);
    color: var(--grow-muted);

    font-size: 8px;
}

.growing-message.is-customer {
    align-self: flex-start;
}

.growing-message.is-customer p {
    background: var(--grow-surface-2);
}

.growing-message.is-owner {
    align-self: flex-end;
    align-items: flex-end;
}

.growing-message.is-owner p {
    border-color: var(--grow-blue-border);

    background: var(--grow-blue-bg);
    color: #dbeafe;
}

.growing-message-compose {
    min-height: 60px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 14px;

    padding:
        0
        14px;

    border-top: 1px solid var(--grow-border);
}

.growing-message-compose > span {
    color: var(--grow-dim);

    font-size: 9px;
}

.growing-message-compose button {
    min-height: 32px;

    padding:
        0
        11px;

    border: 0;
    border-radius: 6px;

    background: #fafafa;
    color: #09090b;

    font-size: 9px;
    font-weight: 750;
}


/* ============================================================
   28. DIRECT WEBSITE
   ============================================================ */

.growing-direct-section {
    background: #0b0b0d;
}

.growing-direct-layout {
    display: grid;
    grid-template-columns:
        minmax(300px, 0.72fr)
        minmax(560px, 1.28fr);

    gap: 70px;

    align-items: center;
}

.growing-direct-copy {
    max-width: 620px;
}

.growing-direct-details {
    display: grid;

    margin-top: 28px;

    border-top: 1px solid var(--grow-border);
}

.growing-direct-details > div {
    min-height: 52px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 16px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-direct-details span {
    color: var(--grow-muted);

    font-size: 10px;
}

.growing-direct-details strong {
    color: var(--grow-text);

    font-size: 10px;
    font-weight: 650;
}

.growing-website-domain {
    min-height: 74px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 16px;

    padding:
        0
        16px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-website-domain small {
    display: block;

    color: var(--grow-dim);

    font-size: 7px;
    font-weight: 800;

    letter-spacing: 0.08em;
}

.growing-website-domain strong {
    display: block;

    margin-top: 4px;

    color: var(--grow-text);

    font-family: var(--grow-mono);
    font-size: 10px;
    font-weight: 500;
}

.growing-website-domain > span {
    padding:
        4px
        7px;

    border: 1px solid var(--grow-green-border);
    border-radius: 5px;

    background: var(--grow-green-bg);
    color: var(--grow-green);

    font-size: 7px;
    font-weight: 800;
}


/* ============================================================
   29. WEBSITE PREVIEW
   ============================================================ */

.growing-website-preview {
    margin: 14px;

    overflow: hidden;

    border: 1px solid rgba(43,41,37,0.12);
    border-radius: 10px;

    background: #f4f0e8;
}

.growing-website-preview-nav {
    min-height: 54px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 18px;

    padding:
        0
        16px;

    border-bottom: 1px solid rgba(43,41,37,0.10);

    background: #fbf8f2;
}

.growing-website-preview-nav strong {
    color: #27231f;

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 0.05em;
}

.growing-website-preview-nav > div {
    display: flex;
    align-items: center;

    gap: 14px;
}

.growing-website-preview-nav span {
    color: #7d756a;

    font-size: 7px;
    font-weight: 650;
}

.growing-website-preview-content {
    min-height: 300px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;

    padding:
        36px
        40px;

    background: #f4f0e8;
}

.growing-website-preview-content small {
    color: #98744d;

    font-size: 7px;
    font-weight: 850;

    letter-spacing: 0.12em;
}

.growing-website-preview-content h3 {
    max-width: 450px;

    margin:
        10px
        0
        0;

    color: #221f1b;

    font-size:
        clamp(
            2.4rem,
            5vw,
            4.3rem
        );

    line-height: 0.95;
    font-weight: 450;

    letter-spacing: -0.06em;
}

.growing-website-preview-content p {
    margin:
        12px
        0
        0;

    color: #756d62;

    font-size: 10px;
}

.growing-website-preview-content button {
    min-height: 38px;

    margin-top: 22px;

    padding:
        0
        15px;

    border: 1px solid #2b2925;
    border-radius: 999px;

    background: #2b2925;
    color: #fffdf9;

    font-size: 9px;
    font-weight: 700;
}

.growing-website-admin-footer {
    display: grid;
    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    border-top: 1px solid var(--grow-border);
}

.growing-website-admin-footer > div {
    min-height: 62px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    padding:
        0
        15px;

    border-right: 1px solid var(--grow-border);
}

.growing-website-admin-footer > div:last-child {
    border-right: 0;
}

.growing-website-admin-footer span {
    color: var(--grow-dim);

    font-size: 8px;
}

.growing-website-admin-footer strong {
    margin-top: 4px;

    color: #d4d4d8;

    font-size: 9px;
    font-weight: 650;
}


/* ============================================================
   30. SYSTEM GRID
   ============================================================ */

.growing-system-grid {
    display: grid;
    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );

    border-top: 1px solid var(--grow-border);
    border-left: 1px solid var(--grow-border);
}

.growing-system-grid article {
    min-height: 280px;

    display: flex;
    flex-direction: column;

    padding: 22px;

    border-right: 1px solid var(--grow-border);
    border-bottom: 1px solid var(--grow-border);

    background: var(--grow-surface);
}

.growing-system-grid article > span {
    color: var(--grow-dim);

    font-family: var(--grow-mono);
    font-size: 9px;
}

.growing-system-icon {
    width: 38px;
    height: 38px;

    display: grid;
    place-items: center;

    margin-top: 44px;

    border: 1px solid var(--grow-border);
    border-radius: 9px;

    background: var(--grow-surface-2);
    color: var(--grow-muted);
}

.growing-system-icon svg {
    width: 18px;
    height: 18px;
}

.growing-system-grid h3 {
    margin:
        26px
        0
        0;

    color: var(--grow-text);

    font-size: 15px;
    font-weight: 750;

    letter-spacing: -0.025em;
}

.growing-system-grid p {
    margin:
        9px
        0
        0;

    color: var(--grow-muted);

    font-size: 10px;
    line-height: 1.62;
}


/* ============================================================
   31. SCALE SECTION
   ============================================================ */

.growing-scale-section {
    background: #070709;
}

.growing-scale-header {
    max-width: 800px;

    margin-bottom: 36px;
}

.growing-scale-header > span {
    display: block;

    margin-bottom: 12px;

    color: var(--grow-green);

    font-size: 9px;
    font-weight: 800;

    letter-spacing: 0.11em;
}

.growing-scale-header h2 {
    margin: 0;

    color: var(--grow-text);

    font-size:
        clamp(
            2.8rem,
            5.5vw,
            5.5rem
        );

    line-height: 0.95;
    font-weight: 800;

    letter-spacing: -0.065em;
}

.growing-scale-header p {
    max-width: 650px;

    margin:
        20px
        0
        0;

    color: var(--grow-muted);

    font-size: 13px;
    line-height: 1.7;
}

.growing-scale-dashboard {
    overflow: hidden;

    border: 1px solid var(--grow-border-2);
    border-radius: 14px;

    background: var(--grow-surface);
}

.growing-scale-top {
    min-height: 66px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 14px;

    padding:
        0
        18px;

    border-bottom: 1px solid var(--grow-border);
}

.growing-scale-top strong {
    display: block;

    color: var(--grow-text);

    font-size: 12px;
    font-weight: 700;
}

.growing-scale-top span:not(.growing-status-pill) {
    display: block;

    margin-top: 3px;

    color: var(--grow-muted);

    font-size: 9px;
}

.growing-scale-stats {
    display: grid;
    grid-template-columns:
        repeat(
            6,
            minmax(0, 1fr)
        );

    border-bottom: 1px solid var(--grow-border);
}

.growing-scale-stats > div {
    min-height: 112px;

    display: flex;
    flex-direction: column;

    padding:
        15px;

    border-right: 1px solid var(--grow-border);
}

.growing-scale-stats > div:last-child {
    border-right: 0;
}

.growing-scale-stats span {
    color: var(--grow-dim);

    font-size: 8px;
}

.growing-scale-stats strong {
    margin-top: 18px;

    color: var(--grow-text);

    font-size: 19px;
    font-weight: 800;

    letter-spacing: -0.035em;
}

.growing-scale-stats small {
    margin-top: auto;

    font-size: 8px;
    font-weight: 650;
}

.growing-scale-bottom {
    display: grid;
    grid-template-columns:
        repeat(
            3,
            minmax(0, 1fr)
        );
}

.growing-scale-bar-block {
    padding:
        18px;

    border-right: 1px solid var(--grow-border);
}

.growing-scale-bar-block:last-child {
    border-right: 0;
}

.growing-scale-bar-block > div:first-child {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 14px;

    margin-bottom: 11px;
}

.growing-scale-bar-block span {
    color: var(--grow-muted);

    font-size: 9px;
}

.growing-scale-bar-block strong {
    color: var(--grow-text);

    font-family: var(--grow-mono);
    font-size: 9px;
    font-weight: 500;
}

.growing-scale-bar {
    height: 5px;

    overflow: hidden;

    border-radius: 999px;

    background: var(--grow-surface-2);
}

.growing-scale-bar i {
    display: block;

    height: 100%;

    border-radius: 999px;

    background: var(--grow-green);
}


/* ============================================================
   32. CTA
   ============================================================ */

.growing-os-cta {
    padding:
        72px
        0;

    border-bottom: 1px solid var(--grow-border);

    background: var(--grow-bg);
}

.growing-os-cta-panel {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        auto;

    gap: 60px;

    align-items: end;

    padding:
        38px;

    border: 1px solid var(--grow-border-2);
    border-radius: 14px;

    background: var(--grow-surface);
}

.growing-os-cta-panel > div:first-child {
    max-width: 760px;
}

.growing-os-cta-panel > div:first-child > span {
    display: block;

    margin-bottom: 13px;

    color: var(--grow-green);

    font-size: 9px;
    font-weight: 800;

    letter-spacing: 0.11em;
}

.growing-os-cta-panel h2 {
    margin: 0;

    color: var(--grow-text);

    font-size:
        clamp(
            2.8rem,
            5vw,
            5rem
        );

    line-height: 0.96;
    font-weight: 800;

    letter-spacing: -0.06em;
}

.growing-os-cta-panel p {
    max-width: 650px;

    margin:
        18px
        0
        0;

    color: var(--grow-muted);

    font-size: 12px;
    line-height: 1.68;
}

.growing-os-cta-actions {
    min-width: 180px;

    display: flex;
    flex-direction: column;

    gap: 8px;
}


/* ============================================================
   33. SOLUTION SWITCHER
   ============================================================ */

.growing-solution-switcher {
    padding:
        40px
        0
        62px;

    border-bottom: 1px solid var(--grow-border);

    background: #0b0b0d;
}

.growing-solution-switcher > .growing-ops-page-inner > span {
    display: block;

    margin-bottom: 12px;

    color: var(--grow-dim);

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 0.10em;
}

.growing-solution-switcher-grid {
    display: grid;
    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    border-top: 1px solid var(--grow-border);
    border-left: 1px solid var(--grow-border);
}

.growing-solution-switcher-grid a {
    min-height: 110px;

    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        auto;

    grid-template-areas:
        "small arrow"
        "strong arrow";

    gap:
        5px
        18px;

    align-content: center;

    padding:
        20px;

    border-right: 1px solid var(--grow-border);
    border-bottom: 1px solid var(--grow-border);

    background: var(--grow-surface);
}

.growing-solution-switcher-grid a:hover {
    background: var(--grow-surface-2);
}

.growing-solution-switcher-grid small {
    grid-area: small;

    color: var(--grow-dim);

    font-size: 8px;
    font-weight: 800;

    letter-spacing: 0.08em;
}

.growing-solution-switcher-grid strong {
    grid-area: strong;

    color: var(--grow-text);

    font-size: 13px;
    font-weight: 700;
}

.growing-solution-switcher-grid span {
    grid-area: arrow;

    align-self: center;

    color: var(--grow-muted);

    font-size: 16px;
}


/* ============================================================
   34. FOOTER
   ============================================================ */

.growing-ops-footer {
    border-top: 0;

    background: #09090b;
}

.growing-ops-footer .nr-footer-group summary {
    color: #d4d4d8;
}

.growing-ops-footer .nr-footer-links a,
.growing-ops-footer .nr-footer-description,
.growing-ops-footer .nr-footer-country,
.growing-ops-footer .nr-footer-copyright,
.growing-ops-footer .nr-footer-legal a {
    color: #71717a;
}

.growing-ops-footer .nr-footer-description a {
    color: #a1a1aa;
}

.growing-ops-footer .nr-footer-links a:hover,
.growing-ops-footer .nr-footer-description a:hover,
.growing-ops-footer .nr-footer-legal a:hover {
    color: #fafafa;
}


/* ============================================================
   35. LARGE TABLET
   ============================================================ */

@media (max-width: 1180px) {

    .growing-ops-page-inner {
        width: min(
            calc(100% - 48px),
            1320px
        );
    }

    .growing-stat-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

    .growing-booking-layout,
    .growing-direct-layout,
    .growing-collections-layout {
        grid-template-columns: 1fr;

        gap: 40px;
    }

    .growing-booking-copy,
    .growing-direct-copy,
    .growing-collections-copy {
        max-width: 760px;
    }

    .growing-booking-inspector,
    .growing-website-admin {
        max-width: 900px;
    }

    .growing-fleet-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

    .growing-fleet-capabilities {
        grid-template-columns:
            repeat(
                3,
                minmax(0, 1fr)
            );
    }

    .growing-system-grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

    .growing-scale-stats {
        grid-template-columns:
            repeat(
                3,
                minmax(0, 1fr)
            );
    }

    .growing-scale-stats > div:nth-child(3) {
        border-right: 0;
    }

    .growing-scale-stats > div:nth-child(-n + 3) {
        border-bottom: 1px solid var(--grow-border);
    }
}


/* ============================================================
   36. OWNER SIDEBAR COLLAPSE
   ============================================================ */

@media (max-width: 900px) {

    .growing-os-main {
        width: 100%;

        margin-left: 0;
    }

    .growing-os-sidebar {
        position: fixed;
        top: 0;
        bottom: 0;
        z-index: 100;
        width: 280px;

        transform: translateX(-100%);

        transition:
            transform 260ms cubic-bezier(0.16,1,0.3,1);
    }

    .growing-os-sidebar.is-open {
        transform: translateX(0);
    }

    .growing-sidebar-overlay {
        position: fixed;
        inset: 0;

        z-index: 90;

        display: block;

        background: rgba(0,0,0,0.58);

        opacity: 0;
        pointer-events: none;

        backdrop-filter: blur(4px);
        -webkit-backdrop-filter: blur(4px);

        transition: opacity 200ms ease;
    }

    .growing-sidebar-overlay.is-visible {
        opacity: 1;
        pointer-events: auto;
    }

    body.growing-sidebar-open {
        overflow: hidden;
    }

    .growing-os-topbar {
        top: 0;

        padding:
            0
            20px;
    }

    .growing-os-topbar-right .growing-topbar-link:first-child,
    .growing-os-topbar-right .growing-topbar-link:nth-child(2) {
        display: none;
    }

    .growing-os-menu-button {
        display: flex;
    }

    .growing-ops-hero-heading {
        grid-template-columns: 1fr;

        align-items: start;

        gap: 28px;
    }

    .growing-ops-hero-actions {
        min-width: 0;

        flex-direction: row;
    }

    .growing-attention-strip {
        grid-template-columns: 1fr;

        gap: 10px;

        padding:
            14px
            16px;
    }

    .growing-section-heading {
        align-items: flex-start;
        flex-direction: column;

        gap: 22px;
    }

    .growing-section-meta {
        justify-content: flex-start;
    }

    .growing-calendar-window {
        overflow-x: auto;
    }

    .growing-operator-note {
        grid-template-columns: 1fr;

        gap: 10px;
    }

    .growing-activity-layout {
        grid-template-columns: 1fr;
    }

    .growing-customer-workspace {
        grid-template-columns: 1fr;
    }

    .growing-customer-list {
        max-width: none;
    }

    .growing-money-summary {
        max-width: 780px;
    }

    .growing-collections-board {
        overflow-x: auto;
    }

    .growing-collection-table {
        min-width: 760px;
    }

    .growing-os-cta-panel {
        grid-template-columns: 1fr;

        gap: 30px;
    }

    .growing-os-cta-actions {
        min-width: 0;

        flex-direction: row;
    }
}


/* ============================================================
   37. MOBILE
   ============================================================ */

@media (max-width: 700px) {

    .growing-ops-page-inner {
        width: min(
            calc(100% - 28px),
            1320px
        );
    }

    .growing-os-topbar {
        min-height: 56px;

        padding:
            0
            14px;
    }

    .growing-os-badge:last-of-type {
        display: none;
    }

    .growing-os-topbar-right .growing-topbar-link {
        display: none;
    }

    .growing-topbar-action {
        display: inline-flex;
        min-height: 32px;
        padding-inline: 10px;
        font-size: 10px;
    }

    .growing-operations-hero {
        padding:
            48px
            0
            34px;
    }

    .growing-ops-hero-heading h1 {
        font-size:
            clamp(
                3rem,
                14vw,
                4.8rem
            );
    }

    .growing-ops-hero-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .growing-primary-button,
    .growing-secondary-button {
        width: 100%;
    }

    .growing-stat-grid {
        grid-template-columns: 1fr;
    }

    .growing-stat-grid article {
        min-height: 122px;
    }

    .growing-ops-section {
        padding:
            58px
            0;
    }

    .growing-section-heading > div:first-child {
        grid-template-columns: 1fr;

        gap: 9px;
    }

    .growing-section-heading h2,
    .growing-booking-copy h2,
    .growing-collections-copy h2,
    .growing-direct-copy h2 {
        font-size:
            clamp(
                2.4rem,
                11vw,
                3.5rem
            );
    }

    .growing-calendar-toolbar {
        min-width: 980px;
    }

    .growing-calendar-window {
        border-radius: 10px;
    }

    .growing-booking-gates {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

    .growing-booking-gates > div {
        border-right: 1px solid var(--grow-border);
        border-bottom: 1px solid var(--grow-border);
    }

    .growing-booking-gates > div:nth-child(2n) {
        border-right: 0;
    }

    .growing-booking-gates > div:nth-last-child(-n + 2) {
        border-bottom: 0;
    }

    .growing-booking-footer {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

        padding:
            14px
            16px;
    }

    .growing-booking-footer button {
        grid-column:
            1
            / -1;

        width: 100%;
    }

    .growing-fleet-grid {
        grid-template-columns: 1fr;
    }

    .growing-fleet-capabilities {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

    .growing-money-summary {
        grid-template-columns: 1fr;
    }

    .growing-money-summary > div {
        min-height: 110px;
    }

    .growing-message {
        max-width: 84%;
    }

    .growing-system-grid {
        grid-template-columns: 1fr;
    }

    .growing-system-grid article {
        min-height: 230px;
    }

    .growing-scale-stats {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );
    }

    .growing-scale-stats > div {
        border-right: 1px solid var(--grow-border) !important;
        border-bottom: 1px solid var(--grow-border);
    }

    .growing-scale-stats > div:nth-child(2n) {
        border-right: 0 !important;
    }

    .growing-scale-stats > div:nth-last-child(-n + 2) {
        border-bottom: 0;
    }

    .growing-scale-bottom {
        grid-template-columns: 1fr;
    }

    .growing-scale-bar-block {
        border-right: 0;
        border-bottom: 1px solid var(--grow-border);
    }

    .growing-scale-bar-block:last-child {
        border-bottom: 0;
    }

    .growing-os-cta {
        padding:
            56px
            0;
    }

    .growing-os-cta-panel {
        padding:
            26px
            22px;
    }

    .growing-os-cta-panel h2 {
        font-size:
            clamp(
                2.7rem,
                12vw,
                4rem
            );
    }

    .growing-os-cta-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    .growing-solution-switcher-grid {
        grid-template-columns: 1fr;
    }
}


/* ============================================================
   38. SMALL MOBILE
   ============================================================ */

@media (max-width: 520px) {

    .growing-os-topbar-left {
        gap: 7px;
    }

    .growing-os-topbar-title {
        font-size: 12px;
    }

    .growing-ops-kicker {
        font-size: 8px;
    }

    .growing-ops-hero-heading p {
        font-size: 0.92rem;
    }

    .growing-attention-items {
        display: grid;

        gap: 5px;
    }

    .growing-activity-row {
        grid-template-columns:
            28px
            minmax(0, 1fr)
            auto;

        gap: 10px;
    }

    .growing-activity-row time {
        display: none;
    }

    .growing-activity-row > div strong {
        font-size: 10px;
    }

    .growing-today-item {
        grid-template-columns:
            46px
            minmax(0, 1fr);
    }

    .growing-today-item > span:last-child {
        grid-column: 2;
        justify-self: start;
    }

    .growing-booking-customer {
        grid-template-columns:
            38px
            minmax(0, 1fr);
    }

    .growing-booking-dates {
        grid-column:
            2
            / -1;

        text-align: left;
    }

    .growing-booking-progress {
        grid-template-columns:
            repeat(
                4,
                minmax(0, 1fr)
            );

        gap: 6px;
    }

    .growing-booking-progress > i {
        display: none;
    }

    .growing-booking-gates {
        grid-template-columns: 1fr;
    }

    .growing-booking-gates > div {
        border-right: 0 !important;
        border-bottom: 1px solid var(--grow-border) !important;
    }

    .growing-booking-gates > div:last-child {
        border-bottom: 0 !important;
    }

    .growing-fleet-capabilities {
        grid-template-columns: 1fr;
    }

    .growing-website-preview-nav > div {
        display: none;
    }

    .growing-website-preview-content {
        min-height: 280px;

        padding:
            28px
            22px;
    }

    .growing-website-preview-content h3 {
        font-size:
            clamp(
                2.5rem,
                13vw,
                3.7rem
            );
    }

    .growing-website-admin-footer {
        grid-template-columns: 1fr;
    }

    .growing-website-admin-footer > div {
        min-height: 52px;

        border-right: 0;
        border-bottom: 1px solid var(--grow-border);
    }

    .growing-website-admin-footer > div:last-child {
        border-bottom: 0;
    }

    .growing-scale-header h2 {
        font-size:
            clamp(
                2.8rem,
                13vw,
                4.2rem
            );
    }

    .growing-scale-stats {
        grid-template-columns: 1fr;
    }

    .growing-scale-stats > div {
        min-height: 96px;

        border-right: 0 !important;
        border-bottom: 1px solid var(--grow-border) !important;
    }

    .growing-scale-stats > div:last-child {
        border-bottom: 0 !important;
    }
}


/* ============================================================
   39. FOCUS
   ============================================================ */

.growing-ops-page a:focus-visible,
.growing-ops-page button:focus-visible {
    outline: 2px solid var(--grow-green);
    outline-offset: 3px;
}


/* ============================================================
   40. REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .growing-os-sidebar,
    .growing-sidebar-overlay,
    .growing-sidebar-nav a {
        transition: none;
    }

    html {
        scroll-behavior: auto;
    }
}
