/* Stats Block Styles */
.stats-block {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease, transform 0.6s ease;
    background-color: #ffffff;
    border-radius: 0;
    padding: 6rem 0;
}

.stats-block.stats-animated {
    opacity: 1;
    transform: translateY(0);
}

.stats-container {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 0.5rem;
    align-items: center;
    min-height: 500px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
    overflow: visible;
}

/* Stats Left Layout */
.stats-block.stats-left .stats-container {
    grid-template-columns: 2fr 1fr;
}

.stats-block.stats-left .stats-items {
    order: 1;
}

.stats-block.stats-left .stats-content {
    order: 2;
}

/* Stats Right Layout (default) */
.stats-block.stats-right .stats-container,
.stats-block .stats-container {
    grid-template-columns: 2fr 1fr;
}

.stats-block.stats-right .stats-content,
.stats-block .stats-content {
    order: 1;
}

.stats-block.stats-right .stats-items,
.stats-block .stats-items {
    order: 2;
}

.stats-content {
    padding: 0;
    color: #333333;
}

.stats-heading {
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1;
    margin: 0 0 1.5rem 0;
    color: #333333;
    letter-spacing: -0.02em;
    font-family: 'Open Sans', sans-serif;
}

.stats-heading span {
    font-weight: 700;
}

.stats-text {
    font-size: 1.125rem;
    line-height: 1.7;
    margin: 0 0 2rem 0;
    color: #444444;
}

.stats-text p {
    margin: 0 0 1.5rem 0;
}

.stats-text p:last-child {
    margin-bottom: 0;
}

.stats-ctas {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.stats-cta {
    display: inline-block;
    padding: 0.5rem 1rem;
    text-decoration: none;
    border-radius: 6px;
    font-weight: 600;
    font-size: 1rem;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    text-align: center;
    letter-spacing: 0.5px;
}

.stats-cta--btn-primary {
    background: linear-gradient(135deg, #c62d42 0%, #a02237 100%);
    color: white;
    border-color: #c62d42;
    box-shadow: 0 4px 15px rgba(198, 45, 66, 0.3);
}

.stats-cta--btn-primary:hover {
    background: linear-gradient(135deg, #a02237 0%, #c62d42 100%);
    color: white;
}

.stats-cta--secondary {
    background-color: transparent;
    color: #333333;
    border-color: #333333;
}

.stats-cta--secondary:hover {
    background-color: #333333;
    border-color: #333333;
    color: #ffffff;
}

.stats-cta--outline {
    background-color: transparent;
    color: #c62d42;
    border-color: #c62d42;
}

.stats-cta--outline:hover {
    background-color: #c62d42;
    color: white;
}

/* Stats Items Section */
.stats-items {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    padding: 2rem;
    justify-content: center;
    align-items: center;
}

.stats-item {
    text-align: center;
    padding: 1.5rem;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    min-width: 350px;
    min-height: 200px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.stats-item-top {
    font-size: 1.25rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #ffffff;
    opacity: 0.8;
}

.stats-item-number {
    font-size: 6rem;
    font-weight: 700;
    line-height: 1;
    color: #ffffff;
    letter-spacing: -0.02em;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.stats-item-bottom {
    font-size: 1.25rem;
    font-weight: 400;
    color: #ffffff;
    opacity: 0.9;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.stats-placeholder-items {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 300px;
    background: rgba(255, 255, 255, 0.05);
    border: 2px dashed rgba(255, 255, 255, 0.2);
    border-radius: 12px;
    color: rgba(255, 255, 255, 0.6);
    text-align: center;
    padding: 2rem;
}

.stats-placeholder {
    text-align: center;
    padding: 2rem;
    background: #f9f9f9;
    border: 2px dashed #ddd;
    color: #666;
    border-radius: 12px;
}

.bg-white+.bg-white {
    padding-top: 0;
}

.stats-block.bg-white {
    background: #ffffff;
}

.stats-block.bg-gradient {
    background: linear-gradient(95.08deg, #212224 8.63%, #7F828A 121.21%);
}

/* Responsive Design */
@media (max-width: 1024px) {
    .stats-block {
        padding: 3rem 0;
    }

    .stats-container {
        grid-template-columns: 1fr !important;
        gap: 2.5rem;
        padding: 0 1.5rem;
        min-height: auto;
    }

    /* Reset order for tablet/mobile - content always first */
    .stats-block.stats-left .stats-content,
    .stats-block.stats-right .stats-content,
    .stats-block .stats-content {
        order: 1 !important;
    }

    .stats-block.stats-left .stats-items,
    .stats-block.stats-right .stats-items,
    .stats-block .stats-items {
        order: 2 !important;
    }

    .stats-content {
        padding: 1.5rem;
        text-align: center;
    }

    .stats-heading {
        font-size: 2.75rem;
    }

    .stats-text {
        max-width: 100%;
        font-size: 1.125rem;
    }

    .stats-ctas {
        justify-content: center;
        gap: 1rem;
    }

    .stats-cta {
        padding: 0.875rem 1.75rem;
        font-size: 1rem;
    }

    /* Stats Items Tablet */
    .stats-items {
        gap: 1.75rem;
        padding: 1.5rem;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
    }

    .stats-item {
        padding: 1.25rem;
        min-width: 200px;
        max-width: 250px;
        flex: 1 1 200px;
    }

    .stats-item-number {
        font-size: 4rem;
    }
}

@media (max-width: 768px) {
    .stats-block {
        padding: 2rem 0;
    }

    .stats-container {
        gap: 2rem;
        padding: 0 1rem;
    }

    .stats-content {
        padding: 1rem;
    }

    .stats-heading {
        font-size: 2.5rem;
    }

    /* Stats Items Mobile */
    .stats-items {
        gap: 1.5rem;
        padding: 1rem;
        flex-direction: column;
    }

    .stats-item {
        padding: 1rem;
        min-width: 150px;
        max-width: none;
        flex: none;
    }

    .stats-item-number {
        font-size: 3rem;
    }
}

@media (max-width: 480px) {
    .stats-container {
        gap: 1.5rem;
        padding: 0 0.5rem;
    }

    .stats-content {
        padding: 0.5rem;
    }

    .stats-heading {
        font-size: 2rem;
    }

    .stats-ctas {
        flex-direction: column;
        align-items: stretch;
    }

    .stats-cta {
        padding: 1rem;
        text-align: center;
    }


}

/* Alignment Support */
.stats-block.alignwide {
    width: 100vw;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
}

.stats-block.alignfull {
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

.stats-block.alignfull .stats-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 2rem;
}

/* Background Color Variants */
.stats-block.bg-white {
    background-color: #ffffff;
}

.stats-block.bg-white .stats-content {
    color: #333333;
}

.stats-block.bg-white .stats-heading {
    color: #333333;
}

.stats-block.bg-white .stats-text {
    color: #444444;
}

/* Stats Items - Light Background */
.stats-block.bg-white .stats-item {
    background: rgba(0, 0, 0, 0.05);
    border: 1px solid rgba(0, 0, 0, 0.1);
}

.stats-block.bg-white .stats-item-top {
    color: #666666;
}

.stats-block.bg-white .stats-item-number {
    color: #333333;
    text-shadow: none;
}

.stats-block.bg-white .stats-item-bottom {
    color: #555555;
}

.stats-block.bg-white .stats-placeholder-items {
    background: rgba(0, 0, 0, 0.05);
    border-color: rgba(0, 0, 0, 0.2);
    color: rgba(0, 0, 0, 0.6);
}

.stats-block.stats--bg-dark {
    background-color: #1a1a1a;
}

.stats-block.stats--bg-dark .stats-content {
    color: #ffffff;
}

.stats-block.stats--bg-dark .stats-heading {
    color: #ffffff;
}

.stats-block.stats--bg-dark .stats-text {
    color: #d0d0d0;
}

.stats-block.stats--bg-dark .stats-placeholder {
    background: #2a2a2a;
    border-color: #555;
    color: #ccc;
}

.stats-block.stats--bg-dark .stats-cta--secondary {
    color: #ffffff;
    border-color: #ffffff;
}

.stats-block.stats--bg-dark .stats-cta--secondary:hover {
    background-color: #ffffff;
    color: #1a1a1a;
}

/* Stats Items - Dark Background */
.stats-block.stats--bg-dark .stats-item {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.stats-block.stats--bg-dark .stats-item-top {
    color: #ffffff;
}

.stats-block.stats--bg-dark .stats-item-number {
    color: #ffffff;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.stats-block.stats--bg-dark .stats-item-bottom {
    color: #ffffff;
}

.stats-block.stats--bg-dark .stats-placeholder-items {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.2);
    color: rgba(255, 255, 255, 0.6);
}

.stats-block.bg-dark {
    background-color: #1a1a1a;
}

.stats-block.bg-dark .stats-content {
    color: #ffffff;
}

.stats-block.bg-dark .stats-heading {
    color: #ffffff;
}

.stats-block.bg-dark .stats-text {
    color: #d0d0d0;
}

.stats-block.bg-dark .stats-placeholder {
    background: #2a2a2a;
    border-color: #555;
    color: #ccc;
}

.stats-block.bg-dark .stats-cta--secondary {
    color: #ffffff;
    border-color: #ffffff;
}

.stats-block.bg-dark .stats-cta--secondary:hover {
    background-color: #ffffff;
    color: #1a1a1a;
}

/* Stats Items - Auto Dark Theme */
.stats-block.bg-dark .stats-item {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.stats-block.bg-dark .stats-item-top {
    color: #ffffff;
}

.stats-block.bg-dark .stats-item-number {
    color: #ffffff;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.stats-block.bg-dark .stats-item-bottom {
    color: #ffffff;
}

.stats-block.bg-dark .stats-placeholder-items {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.2);
    color: rgba(255, 255, 255, 0.6);
}

.stats-block.bg-gradient {
    background-color: #1a1a1a;
}

.stats-block.bg-gradient .stats-content {
    color: #ffffff;
}

.stats-block.bg-gradient .stats-heading {
    color: #ffffff;
}

.stats-block.bg-gradient .stats-text {
    color: #d0d0d0;
}

.stats-block.bg-gradient .stats-placeholder {
    background: #2a2a2a;
    border-color: #555;
    color: #ccc;
}

.stats-block.bg-gradient .stats-cta--secondary {
    color: #ffffff;
    border-color: #ffffff;
}

.stats-block.bg-gradient .stats-cta--secondary:hover {
    background-color: #ffffff;
    color: #1a1a1a;
}

/* Stats Items - Auto Dark Theme */
.stats-block.bg-gradient .stats-item {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.stats-block.bg-gradient .stats-item-top {
    color: #ffffff;
}

.stats-block.bg-gradient .stats-item-number {
    color: #ffffff;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.stats-block.bg-gradient .stats-item-bottom {
    color: #ffffff;
}

.stats-block.bg-gradient .stats-placeholder-items {
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.2);
    color: rgba(255, 255, 255, 0.6);
}


/* Custom SVG Bullet Styles */
.stats-text ul {
    list-style: none;
    padding-left: 0;
    margin: 1.5rem 0;
}

.stats-text ul li {
    position: relative;
    padding-left: 2rem;
    margin-bottom: 0.75rem;
    line-height: 1.6;
}

.stats-text ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.1em;
    width: 19px;
    height: 20px;
    background-image: url('data:image/svg+xml;charset=utf-8,<svg width="19" height="20" viewBox="0 0 19 20" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="9.5" cy="9.5" r="5.5" fill="white"/><path d="M18.7484 11.9929C18.3356 11.3509 17.9229 10.7317 17.5101 10.0897C17.4184 9.95207 17.4184 9.86035 17.5101 9.72276C17.9229 9.10363 18.3127 8.48449 18.7254 7.86535C19.207 7.13156 18.9547 6.42069 18.1292 6.12259C17.4413 5.87034 16.7534 5.59517 16.0654 5.34293C15.9279 5.29707 15.8591 5.20535 15.8591 5.04483C15.8361 4.28811 15.7903 3.53138 15.7444 2.79759C15.6985 1.995 15.0794 1.53638 14.2997 1.74276C13.566 1.92621 12.8322 2.13259 12.1213 2.33897C11.9608 2.38483 11.8691 2.33897 11.7544 2.22431C11.2958 1.6281 10.8142 1.05483 10.3556 0.481552C9.85113 -0.160517 9.07147 -0.160517 8.54406 0.481552C8.08544 1.05483 7.60389 1.6281 7.1682 2.20138C7.05354 2.3619 6.93889 2.38483 6.75544 2.33897C6.04458 2.13259 5.33371 1.94914 4.82923 1.81155C3.8432 1.58224 3.24699 1.97207 3.20113 2.79759C3.15527 3.55431 3.10941 4.31104 3.08647 5.09069C3.08647 5.25121 3.01768 5.32 2.8801 5.3888C2.16923 5.66397 1.45837 5.93914 0.747509 6.21431C0.0137167 6.51242 -0.215594 7.22328 0.220095 7.88828C0.632854 8.53035 1.04561 9.14949 1.45837 9.79155C1.55009 9.92914 1.55009 10.0209 1.45837 10.1814C1.02268 10.8234 0.609921 11.4655 0.197162 12.1305C-0.192665 12.7497 0.0595746 13.4834 0.747505 13.7586C1.45837 14.0338 2.19216 14.309 2.90302 14.5841C3.06354 14.63 3.1094 14.7217 3.1094 14.8822C3.13233 15.616 3.22405 16.3269 3.22405 17.0607C3.22405 17.7945 3.86612 18.4595 4.76043 18.1843C5.4713 17.955 6.18216 17.7945 6.89302 17.5881C7.03061 17.5422 7.12233 17.5652 7.21405 17.7028C7.69561 18.299 8.15423 18.8722 8.63578 19.4685C9.16319 20.1105 9.91991 20.1105 10.4244 19.4685C10.9059 18.8722 11.3646 18.299 11.8461 17.7028C11.9378 17.5881 12.0066 17.5422 12.1672 17.5881C12.9009 17.7945 13.6347 17.9779 14.3685 18.1843C15.1253 18.3907 15.7673 17.9321 15.7903 17.1524C15.8361 16.3957 15.882 15.639 15.9049 14.8593C15.9049 14.6759 15.9966 14.6071 16.1342 14.5612C16.8222 14.309 17.533 14.0338 18.2209 13.7586C18.9547 13.3917 19.1841 12.6579 18.7484 11.9929ZM13.2679 8.23225L8.68165 12.8185C8.56699 12.9331 8.40648 13.0248 8.24596 13.0478C8.2001 13.0478 8.1313 13.0707 8.08544 13.0707C7.87906 13.0707 7.64975 12.979 7.48923 12.8185L5.60889 10.9381C5.28786 10.6171 5.28786 10.0897 5.60889 9.76862C5.92992 9.44759 6.45734 9.44759 6.77837 9.76862L8.06251 11.0528L12.0525 7.06276C12.3735 6.74173 12.901 6.74173 13.222 7.06276C13.5889 7.38379 13.5889 7.91121 13.2679 8.23225Z" fill="url(%23paint0_linear_2020_449)"/><defs><linearGradient id="paint0_linear_2020_449" x1="0" y1="9.975" x2="18.9685" y2="9.975" gradientUnits="userSpaceOnUse"><stop stop-color="%23D1232D"/><stop offset="1" stop-color="%238C0032"/></linearGradient></defs></svg>');
    background-repeat: no-repeat;
    background-size: contain;
    flex-shrink: 0;
}

/* Nested list support */
.stats-text ul ul {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    padding-left: 1rem;
}

.stats-text ul ul li::before {
    width: 15px;
    height: 16px;
    background-size: 15px 16px;
}