/* um2-radar-hero — Lagom Core layout + structural glue only */

.section-um2-radar-hero .container-title {
    text-align: center;
    max-width: 776px;
    margin-bottom: 30px;
}

.section-um2-radar-hero .container-title .section-subtitle {
    margin-top: 20px;
}

/* Sketch: meta content packs against the edge shared with the visual/radar
   column (zero gap there), leaving the slack on the outer/page-edge side —
   NOT flush at the section's outer edge. This holds for both languages: the
   flex-end side is always logically "inline-end", which stays adjacent to
   the radar column in both the base (Arabic) and mirrored (English) decks. */
.section-um2-radar-hero .um2-radar-hero__meta {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-end;
    gap: 15px;
    direction: ltr;
}

.section-um2-radar-hero .um2-radar-hero__links {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
    font-size: var(--font-size-md);
    font-weight: 500;
}

.section-um2-radar-hero .um2-radar-hero__links a {
    color: var(--text-heading-color);
    text-decoration: none;
}

.section-um2-radar-hero .um2-radar-hero__links a:hover {
    color: var(--brand-primary);
    text-decoration: underline;
}

.section-um2-radar-hero .um2-radar-hero__specs {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 15px;
}

.section-um2-radar-hero .um2-radar-hero__specs .label {
    padding: var(--spacing-1x) var(--spacing-2x);
}

.section-um2-radar-hero .um2-radar-hero__deck {
    --bs-gutter-x: 0;
    --bs-gutter-y: 0;
    margin-left: 0;
    margin-right: 0;
    direction: ltr;
    align-items: stretch;
}

.section-um2-radar-hero .um2-radar-hero__deck > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}


/* Exact Sketch artboard: panel 864px + gap 16px + visual 400px = 1280px.
   Meta sits in row 1 above the panel (864px width only); visual card starts
   at row 2, aligned with the panel. */
@media (min-width: 1280px) {
    .section-um2-radar-hero .um2-radar-hero__deck {
        display: grid;
        grid-template-columns: 864px 400px;
        grid-template-rows: auto auto;
        column-gap: 16px;
        row-gap: 30px;
        width: 1280px;
        max-width: 100%;
        margin-inline: auto;
    }

    .section-um2-radar-hero .um2-radar-hero__deck > [class*="col-"] {
        width: auto;
        max-width: none;
        flex: none;
    }

    .section-um2-radar-hero .um2-radar-hero__meta-col {
        grid-column: 1;
        grid-row: 1;
        width: 864px;
    }

    .section-um2-radar-hero .um2-radar-hero__panel-col {
        grid-column: 1;
        grid-row: 2;
        width: 864px;
        height: auto;
        min-height: 400px;
        align-self: start;
    }

    /* Fixed 400×400 square — align-self:start so grid stretch cannot break
       the 1:1 ratio when the sibling panel has more/less intrinsic content. */
    .section-um2-radar-hero .um2-radar-hero__deck > .um2-radar-hero__visual-col {
        grid-column: 2;
        grid-row: 2;
        width: 400px;
        height: 400px;
        max-width: 400px;
        aspect-ratio: 1 / 1;
        align-self: start;
    }
}

@media (min-width: 992px) and (max-width: 1279.98px) {
    .section-um2-radar-hero .um2-radar-hero__deck {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 400px);
        grid-template-rows: auto auto;
        column-gap: 16px;
        row-gap: 30px;
        width: 100%;
        max-width: 100%;
        margin-inline: auto;
    }

    .section-um2-radar-hero .um2-radar-hero__deck > [class*="col-"] {
        width: auto;
        max-width: 100%;
        min-width: 0;
        flex: none;
    }

    .section-um2-radar-hero .um2-radar-hero__meta-col {
        grid-column: 1;
        grid-row: 1;
        width: auto;
        max-width: 100%;
        min-width: 0;
    }

    .section-um2-radar-hero .um2-radar-hero__panel-col {
        grid-column: 1;
        grid-row: 2;
        width: auto;
        max-width: 100%;
        min-width: 0;
        height: auto;
        min-height: 0;
        align-self: start;
    }

    .section-um2-radar-hero .um2-radar-hero__deck > .um2-radar-hero__visual-col {
        grid-column: 2;
        grid-row: 2;
        width: 100%;
        max-width: 100%;
        height: auto;
        min-width: 0;
        aspect-ratio: 1 / 1;
        align-self: start;
    }
}

@media (max-width: 991px) {
    .section-um2-radar-hero .um2-radar-hero__deck {
        row-gap: 20px;
        width: 100%;
    }

    .section-um2-radar-hero .um2-radar-hero__meta-col,
    .section-um2-radar-hero .um2-radar-hero__panel-col {
        width: 100%;
        height: auto;
        min-height: 0;
    }

    .section-um2-radar-hero .um2-radar-hero__panel.um2-ps-box {
        height: auto;
        overflow: visible;
    }

    .section-um2-radar-hero .um2-radar-hero__meta-col {
        order: -2;
        margin-bottom: 20px;
    }
}

.section-um2-radar-hero .um2-ps-box {
    background: var(--package-bg);
    border: var(--package-border);
    border-radius: var(--package-border-radius);
    box-shadow: var(--package-block-shadow);
    padding: var(--package-padding);
}

.section-um2-radar-hero .um2-ps-box-inner {
    display: flex;
    gap: 16px;
    min-height: 0;
}

/* Both classes live on the same node in the tpl — width + column flex live here
   only; never set flex-grow on .um2-radar-hero__pricing alone (same element). */
.section-um2-radar-hero .um2-ps-price-col.um2-radar-hero__pricing {
    flex: 0 0 228px;
    width: 228px;
    max-width: 228px;
    padding-inline-start: 24px;
    border-inline-start: var(--ui-block-divider-border);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    min-height: 0;
    height: auto;
    overflow: visible;
}

.section-um2-radar-hero .um2-ps-desc-col {
    flex: 1 1 0;
    min-width: 0;
    padding-inline-end: 8px;
}

.section-um2-radar-hero .um2-radar-hero__panel.um2-ps-box {
    width: 100%;
    height: auto;
    min-height: 400px;
    display: flex;
    flex-direction: column;
    overflow: visible;
}

/* Compact metric strip tuned for the 400px-tall panel (Sketch proportions). */
.section-um2-radar-hero .um2-metric-strip {
    direction: ltr;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 10px;
    row-gap: 10px;
    margin-bottom: 30px;
}

.section-um2-radar-hero .um2-metric-strip__item {
    padding: 12px 10px;
}

.section-um2-radar-hero .um2-metric-strip__value {
    font-size: 24px;
    line-height: 1.15;
}

.section-um2-radar-hero .um2-metric-strip__label {
    margin-top: 4px;
    font-size: var(--font-size-xs, 13px);
    letter-spacing: 0.02em;
}

.section-um2-radar-hero .um2-radar-hero__panel-body {
    direction: ltr;
    flex: 1;
    min-height: 0;
    padding-top: 25px;
    border-top: var(--ui-block-divider-border);
    align-items: stretch;
}

/* The panel-body flex container stays direction:ltr so desc-col/price-col
   keep their Sketch order (features left, price right). But the features
   text itself is Arabic prose and must read/align naturally RTL — giving
   it its own direction here (it has no flex children whose order matters)
   fixes both text-align and correct bidi shaping of embedded numbers. */
.section-um2-radar-hero[dir="rtl"] .um2-radar-hero__features {
    direction: rtl;
    text-align: start;
}

.section-um2-radar-hero[dir="ltr"] .um2-radar-hero__features {
    direction: ltr;
    text-align: start;
}

.section-um2-radar-hero .um2-radar-hero__features {
    color: var(--text-body-color);
    font-size: var(--font-size-base, 15px);
    line-height: 1.7;
    overflow: visible;
}

.section-um2-radar-hero .um2-radar-hero__features p {
    margin: 0 0 10px;
}

.section-um2-radar-hero .um2-radar-hero__features p:last-child {
    margin-bottom: 0;
}

.section-um2-radar-hero .um2-radar-hero__pricing .package-price {
    margin-bottom: 12px;
    width: 100%;
}

.section-um2-radar-hero .um2-radar-hero__pricing .product-billing-switcher {
    width: 100%;
    margin-bottom: 10px;
}

.section-um2-radar-hero .um2-radar-hero__pricing .product-billing-switcher .btn-group {
    display: flex;
    flex-direction: row-reverse;
    direction: ltr;
    gap: 0;
    width: 100%;
    padding: 3px;
    overflow: hidden;
    background: color-mix(in srgb, var(--text-heading-color, #17191c) 6%, var(--ui-block-bg, #fff));
    border: 1px solid color-mix(in srgb, var(--text-heading-color, #17191c) 16%, transparent);
    border-radius: 999px;
    box-sizing: border-box;
}

.section-um2-radar-hero .um2-radar-hero__pricing .product-billing-switcher .btn {
    flex: 1 1 0;
    width: auto;
    max-width: none;
    margin-top: 0;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    height: auto;
    min-height: 44px;
    padding: 6px 8px;
    overflow: visible;
    white-space: normal;
    line-height: 1.2;
    margin: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--text-heading-color, #17191c) !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

.section-um2-radar-hero .um2-radar-hero__pricing .product-billing-switcher .btn.active {
    background: var(--btn-primary-bg, #d50c0c) !important;
    color: var(--btn-primary-color, #fff) !important;
    border-color: var(--btn-primary-bg, #d50c0c) !important;
}

.section-um2-radar-hero .um2-radar-hero__pricing .product-billing-switcher .btn:first-child {
    margin-left: -1px !important;
    border-radius: 0 999px 999px 0 !important;
}

.section-um2-radar-hero .um2-radar-hero__pricing .product-billing-switcher .btn:last-child {
    border-radius: 999px 0 0 999px !important;
}

.section-um2-radar-hero .um2-radar-hero__pricing .product-billing-switcher .btn-text {
    direction: ltr;
    unicode-bidi: isolate;
    color: inherit !important;
    font-size: 13px;
    line-height: 1.2;
    white-space: nowrap;
}

.section-um2-radar-hero .um2-radar-hero__pricing .product-billing-switcher .label-save {
    position: static;
    top: auto;
    margin: 0;
    padding: 1px 6px;
    font-size: 10px;
    line-height: 1.4;
    border-radius: 999px;
}

.section-um2-radar-hero .um2-radar-hero__pricing .product-billing-switcher .btn.active .label-save {
    background: color-mix(in srgb, #fff 22%, transparent);
    color: #fff !important;
}

.section-um2-radar-hero .um2-radar-hero__pricing .price-ammount,
.section-um2-radar-hero .um2-radar-hero__pricing .price-discount,
.section-um2-radar-hero .um2-radar-hero__pricing .label-save {
    direction: ltr;
    unicode-bidi: isolate;
}

.section-um2-radar-hero[dir="rtl"] [data-um2-hero-date] {
    direction: rtl;
    unicode-bidi: isolate;
}

.section-um2-radar-hero[dir="rtl"] .um2-metric-strip__label {
    direction: rtl;
    unicode-bidi: isolate;
}

button.um2-hero-version {
    cursor: pointer;
    border: 0;
    appearance: none;
    font: inherit;
    line-height: inherit;
}

button.um2-hero-version:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}

.section-um2-radar-hero .um2-radar-hero__pricing .price-ammount {
    font-size: 28px;
    font-weight: 800;
    line-height: 1.1;
}

.section-um2-radar-hero .um2-radar-hero__pricing .price-cycle {
    display: block;
    margin-top: 4px;
    font-size: 13px;
    color: var(--text-faded-color);
}

.section-um2-radar-hero .um2-radar-hero__pricing .btn {
    margin-top: auto;
    width: 100%;
    max-width: 144px;
}

.section-um2-radar-hero .um2-radar-hero__visual {
    width: 100%;
    height: 100%;
    min-height: 0;
    border-radius: var(--ui-block-border-radius);
    overflow: hidden;
    box-shadow: var(--ui-block-shadow-lg);
}

.section-um2-radar-hero .um2-radar-frame {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 0;
    border-radius: var(--ui-block-border-radius);
    overflow: hidden;
    background: var(--gray-darker);
}

.section-um2-radar-hero .um2-radar-frame img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.section-um2-radar-hero .um2-radar-frame--placeholder {
    background: linear-gradient(
        155deg,
        var(--gray-darker) 0%,
        color-mix(in srgb, var(--brand-primary) 18%, var(--gray-darker)) 45%,
        var(--gray-darker) 100%
    );
    color: var(--gray-lighter-4);
}

.section-um2-radar-hero .um2-radar-mock {
    position: relative;
    z-index: 2;
    padding: var(--spacing-3x);
    display: flex;
    flex-direction: column;
    gap: var(--spacing-2x);
    height: 100%;
    min-height: 0;
}

.section-um2-radar-hero .um2-radar-mock__bar {
    display: inline-flex;
    align-items: center;
    gap: var(--spacing-1x);
    font-size: var(--font-size-xs);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: color-mix(in srgb, var(--gray-lighter-4) 85%, transparent);
}

.section-um2-radar-hero .um2-radar-mock__dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
}

.section-um2-radar-hero .um2-radar-mock__dot--up {
    background: var(--brand-success);
    box-shadow: 0 0 0 6px color-mix(in srgb, var(--brand-success) 22%, transparent);
}

.section-um2-radar-hero .um2-radar-mock__metrics {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: var(--spacing-2x);
}

.section-um2-radar-hero .um2-radar-mock__metrics div {
    padding: var(--spacing-2x);
    border-radius: var(--ui-block-border-radius);
    background: color-mix(in srgb, var(--gray-lighter-4) 6%, transparent);
    border: 1px solid color-mix(in srgb, var(--gray-lighter-4) 10%, transparent);
}

.section-um2-radar-hero .um2-radar-mock__metrics strong {
    display: block;
    font-size: var(--font-size-lg);
    line-height: 1.15;
    color: var(--gray-lighter-4);
}

.section-um2-radar-hero .um2-radar-mock__metrics span {
    display: block;
    margin-top: 4px;
    font-size: var(--font-size-xs);
    opacity: 0.7;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.section-um2-radar-hero .um2-radar-mock__heatmap {
    margin-top: auto;
    height: 44px;
    border-radius: var(--ui-block-border-radius);
    background: linear-gradient(
        90deg,
        var(--brand-success) 0%,
        var(--brand-success) 70%,
        var(--brand-danger) 70%,
        var(--brand-danger) 76%,
        var(--brand-success) 76%,
        var(--brand-success) 100%
    );
    opacity: 0.95;
}

.section-um2-radar-hero .um2-radar-grid {
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(color-mix(in srgb, var(--gray-lighter-4) 6%, transparent) 1px, transparent 1px),
        linear-gradient(90deg, color-mix(in srgb, var(--gray-lighter-4) 6%, transparent) 1px, transparent 1px);
    background-size: 20px 20px;
    opacity: 0.5;
}

.section-um2-radar-hero .um2-radar-sweep {
    position: absolute;
    inset: -40%;
    background: conic-gradient(
        from 0deg,
        transparent 0deg,
        color-mix(in srgb, var(--brand-primary) 18%, transparent) 42deg,
        transparent 84deg
    );
    animation: um2-hero-radar-spin 7s linear infinite;
    pointer-events: none;
}

@keyframes um2-hero-radar-spin {
    to { transform: rotate(360deg); }
}

@media (max-width: 991px) {
    .section-um2-radar-hero .um2-ps-box-inner {
        flex-direction: column;
    }

    .section-um2-radar-hero .um2-ps-price-col {
        padding-inline-start: 0;
        padding-top: var(--spacing-4x);
        border-inline-start: none;
        border-top: var(--ui-block-divider-border);
    }

    .section-um2-radar-hero .um2-radar-hero__visual-col {
        order: -1;
        margin-bottom: var(--spacing-3x);
        width: 100%;
        max-width: 400px;
        aspect-ratio: 1 / 1;
        height: auto;
    }

    .section-um2-radar-hero .um2-radar-frame {
        min-height: 0;
    }
}

@media (max-width: 767px) {
    .section-um2-radar-hero .um2-radar-hero__meta {
        flex-wrap: wrap;
        gap: 15px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .section-um2-radar-hero .um2-radar-sweep {
        animation: none;
        opacity: 0.15;
    }
}

/* Sketch source of truth: "RTL - Arabic" frame is the base (unflipped) layout
   — card/meta on the left, visual panel on the right, features left / price
   right, badges/metrics left→right as authored above. The "LTR - English"
   frame is that same frame with a horizontal flip applied at the artboard
   level: card+meta move to the right, visual panel to the left, price moves
   left / features move right, and the meta links + version badges + metric
   boxes all reverse order. `direction: rtl` reproduces exactly that mirror
   for flex/grid ordering and logical (inline-start/end) properties without
   mirroring the text glyphs themselves (English stays readable).
   The mirror is selected by data-um2-lang="english", not by html[lang="en"]. */
.section-um2-radar-hero[data-um2-lang="english"] .um2-radar-hero__deck {
    direction: rtl;
}

.section-um2-radar-hero[data-um2-lang="english"] .um2-metric-strip {
    direction: rtl;
}

.section-um2-radar-hero[data-um2-lang="english"] .um2-metric-strip__value {
    direction: ltr;
    unicode-bidi: isolate;
}

.section-um2-radar-hero[data-um2-lang="english"] .um2-radar-hero__panel-body {
    direction: rtl;
}

.section-um2-radar-hero[data-um2-lang="english"] .um2-radar-hero__meta {
    direction: rtl;
}

/* The mirror above reverses box/flex ORDER (correct) — but English sentences
   are still LTR text runs, so leaf text content must be reset back to ltr
   to avoid bidi artifacts (e.g. a leading "." before "One license..."). */
.section-um2-radar-hero[data-um2-lang="english"] .um2-radar-hero__features {
    direction: ltr;
    text-align: left;
    padding-inline-end: 0;
    padding-inline-start: 8px;
}

.section-um2-radar-hero[data-um2-lang="english"] .um2-radar-hero__pricing .btn {
    margin-bottom: 12px;
}
