@import "./common-var.css";

/* -------------------------------------------------------
   Section Shell
   ------------------------------------------------------- */
.numbers-section {
    background: var(--background-light);
}

/* -------------------------------------------------------
   Cards Grid — 4 columns, 2 rows
   ------------------------------------------------------- */
.numbers-cards-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;

    @media (max-width: 1200px) { grid-template-columns: repeat(3, 1fr); }
    @media (max-width: 992px)  { grid-template-columns: repeat(2, 1fr); }
    @media (max-width: 576px)  { grid-template-columns: 1fr; }
}

/* -------------------------------------------------------
   Individual Card
   ------------------------------------------------------- */
.number-card {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
    background: var(--primary-color);
    padding: 30px;
    transition: box-shadow 0.35s ease;

    &:hover {
        box-shadow: 0 12px 40px rgba(15, 63, 71, 0.25);

        .card-circle {
            transform: scale(1.35);
            @media (max-width: 1440px) { transform: scale(1.2); }
            @media (max-width: 992px) { transform: scale(1.35); }
        }
    }
}

/* -------------------------------------------------------
   Corner Circle — default partially outside top-right
   Hover: scales up (visible arc grows = "pop" effect)
   ------------------------------------------------------- */
.card-circle {
    position: absolute;
    top: -43px;
    right: -42px;
    width: 104px;
    height: 104px;
    border-radius: 50%;
    background: var(--light-teal);
    transform-origin: top right;
    transition: transform 0.35s ease;

    @media (max-width: 900px) {
        width: 90px;
        height: 90px;
        top: -38px;
        right: -36px;
    }
    @media (max-width: 576px) {
        width: 100px;
        height: 100px;
        top: -40px;
        right: -40px;
    }
}

/* -------------------------------------------------------
   Card Content Layout
   ------------------------------------------------------- */
.card-content {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 60px;

    @media (max-width: 1440px) { gap: 45px; }
    @media (max-width: 900px)  { gap: 35px; }
    @media (max-width: 576px)  { gap: 30px; }
}

/* Card Label — uses cms-text6 from common.css (white, 14px, uppercase) */
.card-label { text-transform: uppercase; letter-spacing: 0.5px; }

/* Card Stat: value + sub-label */
.card-stat {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

/* -------------------------------------------------------
   Card Value (large number)
   ------------------------------------------------------- */
.card-value {
    color: var(--secondary-color);
   font-size: 52px;
    font-weight: 800;
    line-height: 51px;

    @media (max-width: 1680px) { font-size: 48px; line-height: 41px; }
    @media (max-width: 1440px) { font-size: 46px; line-height: 39px; }
    @media (max-width: 1200px) { font-size: 44px; line-height: 37px; }
    @media (max-width: 900px)  { font-size: 42px; line-height: 35px; }
    @media (max-width: 576px)  { font-size: 40px; line-height: 33px; }
}

/* Suffix for mixed values like "23.9mn" */
.card-value-suffix {
    font-size: 48px;
    font-weight: 800;
    line-height: 1;
    color: var(--secondary-color);
    vertical-align: baseline;

    @media (max-width: 1680px) { font-size: 40px; }
    @media (max-width: 1440px) { font-size: 34px; }
    @media (max-width: 1200px) { font-size: 30px; }
    @media (max-width: 900px)  { font-size: 36px; }
    @media (max-width: 576px)  { font-size: 40px; }
}

/* Card Sub-label — uses cms-text2 from common.css (white, 18px, 300 weight) */
.card-sublabel {
    @media (max-width: 1200px) { font-size: 16px; line-height: 24px; }
    @media (max-width: 576px)  { font-size: 17px; }
}

/* -------------------------------------------------------
   Footer Note
   ------------------------------------------------------- */
.numbers-note {
    text-align: right;
    margin: 30px 0 0;

    @media (max-width: 1440px) { margin: 20px 0 0; }
}

/* -------------------------------------------------------
   RTL Support
   ------------------------------------------------------- */
[dir="rtl"] {
    .numbers-heading { text-align: right; }

    .card-circle {
        right: auto;
        left: -42px;
        transform-origin: top left;

        @media (max-width: 900px) {
            left: -36px;
        }
        @media (max-width: 576px) {
            left: -40px;
        }
    }

    .card-label { text-align: right; }

    .card-value { text-align: right; }

    .card-sublabel { text-align: right; }

    .numbers-note {
        text-align: left;
    }
}
