/*
Theme Name: Base
Theme URI: https://www.invbit.com
Author: Base
Author URI: https://www.invbit.com
Description: Base para Betheme
Template: betheme
Version: 1.6.2
*/

@import './css/variables.css';

/* ------------------------------------ *\
   Biblomar design system (colors & type)
\* ------------------------------------ */

:root {
    --color-primary-hex: #002596;
    --color-dark-hex: #011957;
    --color-dark-bg-hex: #4550B2;
    --color-light-bg-hex: #F7F3EB;
    --color-pink-hex: #FEB2BF;
    --color-fuchsia-hex: #C5007D;
    --color-blue-light-hex: #50A9E1;
    --color-white-hex: #FFFFFF;
    --color-heading-hex: #5662CB;
    --color-grey-700-hex: #444444;
    --color-grey-300-hex: #D9D9D9;

    /* Same colors in LCH (CSS Color 4) */
    --color-primary: lch(21.6% 50.5 282);
    --color-dark: lch(14.5% 38.2 282);
    --color-dark-bg: lch(38.2% 38.2 282);
    --color-light-bg: lch(94.1% 3.2 82);
    --color-pink: lch(72.5% 47.8 356);
    --color-fuchsia: lch(41.2% 75 328);
    --color-blue-light: lch(66.7% 40 240);
    --color-white: lch(100% 0 0);
    --color-heading: lch(50.2% 30 282);
    --color-grey-700: lch(40% 0 0);
    --color-grey-300: lch(85% 0 0);

    /* Typography tokens (font stacks) */
    --font-heading: "Bricolage Grotesque", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-body: "Albert Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-decorative: "Caveat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-button: "Poppins", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-meta: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

    /* Base sizes from Figma (mobile-first < 768px) */
    --font-size-h1: 2.5rem;
    /* 40px */
    --font-size-h2: 2rem;
    /* 32px */
    --font-size-h3: 1.875rem;
    /* 30px */
    --font-size-body: 1rem;
    /* 16px – Tania/parrafoPeq */
    --font-size-paragraph-large: 1.25rem;
    /* 20px – Tania/ParrafoGra */
    --font-size-button: 1.024rem;
    /* 16.388px – style_F0YT7Y */
    --font-size-menu: 1.25rem;
    /* 20px – style_M1YITO */
    --font-size-copyright: 0.9375rem;
    /* 15px – Flavia/p-medium-semibold */
    --font-size-meta: 0.75rem;
    /* 12px */
    --font-size-decorative: 1.625rem;
    /* 26px */

    --line-height-tight: 1.0;
    --line-height-normal: 1.2;
    --line-height-meta: 1.21;
    --line-height-copyright: 1.4;
}

/* Tablet: 768px - 959px */
@media (width >=768px) {
    :root {
        --font-size-h1: 3.5rem;
        /* 56px */
        --font-size-h2: 2.75rem;
        /* 44px */
        --font-size-h3: 1.875rem;
        /* 30px */
    }
}

/* Desktop/Tablet grande: 960px - 1440px */
@media (width >=960px) {
    :root {
        --font-size-h1: 4.5rem;
        /* 72px */
        --font-size-h2: 3.5rem;
        /* 56px */
        --font-size-h3: 1.875rem;
        /* 30px */
    }
}

/* Desktop grande: > 1441px */
@media (width >=1441px) {
    :root {
        --font-size-h1: 5rem;
        /* 80px – Figma desktop */
        --font-size-h2: 3.75rem;
        /* 60px – Figma desktop */
        --font-size-h3: 1.875rem;
        /* 30px */
    }
}

/* ------------------------------------ *\
   Biblomar typography helpers (BEM)
\* ------------------------------------ */

.text-h1 {
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: var(--font-size-h1);
    line-height: var(--line-height-normal);
    color: var(--color-heading);
}

.text-h2 {
    font-family: var(--font-heading);
    font-weight: 600;
    font-size: var(--font-size-h2);
    line-height: var(--line-height-normal);
    color: var(--color-dark);
}

.text-body {
    font-family: var(--font-body);
    font-weight: 500;
    font-size: var(--font-size-body);
    line-height: var(--line-height-normal);
    color: var(--color-grey-700);
}

.text-decorative {
    font-family: var(--font-decorative);
    font-weight: 400;
    font-size: var(--font-size-decorative);
    line-height: var(--line-height-tight);
}

.text-h3 {
    font-family: var(--font-body);
    font-weight: 500;
    font-size: var(--font-size-h3);
    line-height: var(--line-height-normal);
    color: var(--color-heading);
}

.text-paragraph-large {
    font-family: var(--font-body);
    font-weight: 500;
    font-size: var(--font-size-paragraph-large);
    line-height: var(--line-height-normal);
    color: var(--color-dark);
}

.text-paragraph-large-bold {
    font-family: var(--font-body);
    font-weight: 700;
    font-size: var(--font-size-paragraph-large);
    line-height: var(--line-height-normal);
}

.text-button {
    font-family: var(--font-button);
    font-weight: 500;
    font-size: var(--font-size-button);
    line-height: 1;
}

.text-menu {
    font-family: var(--font-body);
    font-weight: 600;
    font-size: var(--font-size-menu);
    line-height: var(--line-height-normal);
}

.text-footer-title {
    font-family: var(--font-body);
    font-weight: 700;
    font-size: var(--font-size-paragraph-large);
    line-height: var(--line-height-normal);
    text-transform: uppercase;
}

.text-copyright {
    font-family: var(--font-meta);
    font-weight: 600;
    font-size: var(--font-size-copyright);
    line-height: var(--line-height-copyright);
    letter-spacing: -0.02em;
}

.text-meta {
    font-family: var(--font-meta);
    font-weight: 400;
    font-size: var(--font-size-meta);
    line-height: var(--line-height-meta);
    color: var(--color-grey-700);
}

.marked-word {
    position: relative;

    &::before {
        content: "";
        display: block;
        position: absolute;
        inset: 0;
        background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDI4IiBoZWlnaHQ9IjEwNyIgdmlld0JveD0iMCAwIDQyOCAxMDciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTMzOS45MTIgMTUuODczN0MzMDUuOTIgMTAuMzE1MiAyNzEuNzEgNS44MjIxNiAyMzcuNDQzIDMuMDYyMDRDMjAzLjMxNyAwLjMxMTMyMyAxNjkuMTI0IC0wLjc1NzQwNCAxMzUuNDQ1IDAuNTYzNTY0QzEwNS44MjggMS43MjQwOSA3NC45OTYyIDUuMTE3MzMgNTMuNTkzMiAxOS4yNzQ5QzQ0LjA2NTMgMjUuNTc4NSAzNy4wMDE4IDMzLjc5NjIgMzQuNjQ1OCA0My4yNzU1QzMzLjI4MTcgNDguNzU4MiAzMy42ODMxIDU0LjYxMzggMzYuNTkzOCA2MC4xNTQ2QzM5LjIzMTcgNjUuMTcxNCA0My43MzU3IDY5Ljc5ODMgNDguOTA1MiA3My43ODczQzcwLjM4OTYgOTAuMzYyNyAxMDIuNjM5IDk2Ljg4NjEgMTMxLjQyNiAxMDEuMTkyQzE2NC41MzggMTA2LjE0NSAxOTguMDA4IDEwNy40MjMgMjMwLjg3NSAxMDYuNTQ0QzI2NC4yMDQgMTA1LjY1IDI5Ny4wMDIgMTAyLjU4NyAzMjkuNDY0IDk4Ljg0MTVDMzQ1LjEwOSA5Ny4wMzIzIDM2MC44NDkgOTUuMjk5NSAzNzYuMjI1IDkyLjgzMDlDMzgzLjU1OSA5MS42NTg5IDM5MC44MDMgOTAuMjYzMSAzOTcuNzkgODguNDY5MkM0MDQuNzc3IDg2LjY3NTIgNDExLjU4NSA4NC42NjgyIDQxNy41MzYgODEuNzk5M0M0MjIuOTQ5IDc5LjE5MzEgNDI3LjY0OCA3NS4zNzY1IDQyNy41MjEgNzAuMjY3NUM0MjcuNDE0IDY1LjU5NDEgNDIzLjQyNCA2MS40MTc1IDQxOC42NyA1OC4wNjExQzQxMy4yNzcgNTQuMjU5NyA0MDYuNjE2IDUxLjMyMzkgNDAwLjE4NyA0OC42MDk0QzM5Mi44NzcgNDUuNTIzNCAzODUuMjkgNDIuODUxNiAzNzcuNTUzIDQwLjQ2NTNDMzYxLjkyOCAzNS42NDQzIDM0NS43ODggMzEuOTY2NSAzMjkuNjkzIDI4LjQ1NjJDMzEzLjU5OCAyNC45NDYgMjk2LjA4MiAyMS40NzQ0IDI3OS4xNDMgMTguNjExNEMyNDUuMyAxMi44OTA4IDIxMC45ODMgOS4wODUyNSAxNzYuOTYgOC42MzU3M0MxNDcuNjM1IDguMjQ4MyAxMTguNTkgMTAuNTEwNiA5MS4xNTI4IDE1Ljk4NjlDNjMuNzE1MyAyMS40NjMxIDM5LjY3MDQgMjkuNjAyOCAxOC4zOTc5IDQxLjMyMjVDOC45MzI4NSA0Ni41MzY1IC03LjUxNzkyIDU0LjkwMzQgMy44NzA2MyA2NS4yNDMxQzguNTg4MjIgNjkuNTIwMiAxNS4zMzkyIDczLjAxMzUgMjEuNTU2OCA3Ni4wNjU4QzI4LjIzNCA3OS4zNSAzNS4yNTcgODIuMjMwOSA0Mi41MTg0IDg0LjcxNjRDNzIuNTIzMSA5NC45ODAxIDEwNS42ODUgOTkuMzg0NSAxMzcuNDQgMTAwLjg3OEMxNjkuMTk1IDEwMi4zNzEgMjAzLjI2MyAxMDAuNDgxIDIzNS4yMDMgOTYuOTAxM0MyNTEuMjczIDk1LjA5NjIgMjY3LjE5MyA5Mi44ODQ5IDI4Mi45OSA5MC40NDQ1QzI5Ny43NyA4OC4xNjc1IDMxMi40NTUgODUuNzAyOSAzMjYuODQ1IDgyLjYzNjRDMzQxLjIzNCA3OS41NyAzNTUuNCA3NS44ODgzIDM2OC43NDYgNzEuMjE0OUMzNzUuMjc4IDY4LjkzMDQgMzgxLjYzMSA2Ni40MzI4IDM4Ny43MTEgNjMuNjQ1NkMzOTMuNzkgNjAuODU4NSAzOTkuMTM1IDU3Ljg5NTggNDAyLjUwOCA1My41MDI4QzQwNS41OTIgNDkuNDg1IDQwNS42ODcgNDQuNDIzIDQwMS40MzkgNDAuMTk0MUMzOTcuNTYgMzYuMzMxMiAzOTEuMjAyIDM0LjE4MzUgMzg1LjI1NiAzMi42OTI2QzM3Ny41MDUgMzAuNzM2NSAzNjkuNTE5IDI5LjI3NDkgMzYxLjYyNCAyNy43OTA1QzM1My43MjkgMjYuMzA2MSAzNDUuMDU1IDI0LjgyNDMgMzM2LjczNyAyMy41NTgzQzMwMy4xMDIgMTguNDM4MSAyNjkuMDg3IDE1LjY1NTIgMjM1LjQxMyAxNS4yMzUyQzIxOS4wMzYgMTUuMDI4NiAyMDIuNzI4IDE1LjQwMSAxODYuNTY0IDE2LjMyNjlDMTgzLjI3OSAxNi41MDg5IDE4NC4wODUgMjAuMjE2MSAxODcuNDA2IDIwLjAyNzRDMjE5LjUwMSAxOC4xODg5IDI1Mi4xNzMgMTguNTY0NiAyODQuODQ4IDIxLjIwMTNDMzE3LjE3MiAyMy44MjA1IDM0OS43MTEgMjguNDc0MiAzODEuNDAxIDM1LjUxNjFDMzg2Ljk0NiAzNi43NDcgMzkzLjQ5OCAzOC40NDMgMzk3LjIxMSA0Mi4wMDg0QzQwMS41NzEgNDYuMTkzIDM5OS4xNTUgNTAuODA4NiAzOTUuNDEyIDU0LjA1N0MzOTEuMDMzIDU3Ljg2MTUgMzg0Ljg4MiA2MC40Mjc1IDM3OC45NzMgNjIuOTE5OEMzNzMuMDYzIDY1LjQxMiAzNjYuNjA2IDY3Ljc4MjMgMzYwLjEyNSA2OS44NTI0QzMzMy45ODcgNzguMjQ3OCAzMDUuNTIgODMuMTY5MiAyNzcuMDQgODcuNDk1NEMyNDYuNTQ5IDkyLjExNSAyMTUuNTc1IDk1Ljg1NjcgMTgzLjk0NiA5Ny4xOTkzQzE1Mi42NTcgOTguNTIwNSAxMjAuNjgzIDk3LjQxMzEgODkuMDk0IDkyLjIyNzRDNzQuMTQ1NSA4OS43NzIxIDU5LjI5MzQgODYuNDY3IDQ1LjE0OTQgODEuNjc4M0MzOC4wODYxIDc5LjI4NTMgMzEuMTY1MyA3Ni41NDM5IDI0LjY2ODkgNzMuMzQ5NUMyMS41NDM4IDcxLjgxNDYgMTguNDg5MiA3MC4xNjcxIDE1LjU1MzMgNjguNDM5M0MxMi43ODEgNjYuNzk4NiA5LjkwODYxIDY1LjExNzcgNy43MzE1MyA2My4wNjI5QzUuNTU0NDUgNjEuMDA4MSA0LjUxMDM4IDU4LjYxMDMgNS42MzU0NiA1Ni4yNjVDNi43NjA1NCA1My45MTk3IDkuMjc0OTUgNTEuOTc1MiAxMS43NzkgNTAuMzI1NkMxNi41OTE4IDQ3LjE0NDQgMjEuODM1NyA0NC4yNjQ3IDI3LjE4MDEgNDEuNTM2NUMzNy42MzUyIDM2LjIxNjcgNDguODkzNyAzMS42NTE2IDYwLjczODcgMjcuODY5MkM4NC43ODU0IDIwLjE3NDUgMTExLjAzIDE1LjUzODQgMTM3Ljk4NiAxMy41MDc4QzE2OC40NjkgMTEuMjIxNiAxOTkuODI3IDEyLjMwNzUgMjMwLjk2NSAxNS42MDc0QzI2My44MjggMTkuMDg4NCAyOTYuNDc3IDI0Ljk2OTggMzI4Ljc0IDMxLjk3NjlDMzQ0LjI3MiAzNS4zNTA0IDM1OS44MTQgMzguODg2MSAzNzQuOTA1IDQzLjUwMDdDMzgyLjI3MyA0NS43NTU2IDM4OS41MTQgNDguMjYyNiAzOTYuNTAyIDUxLjEzOEM0MDIuOTc1IDUzLjc5NzcgNDA5LjYyNCA1Ni42OTQ2IDQxNS4wOTggNjAuNDM0M0M0MTkuNTQ3IDYzLjQ3MTcgNDIzLjU0NSA2Ny43MTEzIDQyMi4wMzggNzEuOTQ5QzQyMC40IDc2LjU3NCA0MTMuNjU0IDc5LjIwODMgNDA4LjEyNiA4MS4xNzkyQzM5NS4zNDUgODUuNzQyOSAzODEuMTE0IDg4LjM2NDQgMzY2LjgzMiA5MC4zOTc1QzM1MS43MTcgOTIuNTQ4NSAzMzYuNDIxIDk0LjI3NiAzMjEuMTI4IDk1Ljk3OTNDMzA1LjgzNSA5Ny42ODI2IDI4OS42NzIgOTkuMjg4IDI3My43OTkgMTAwLjUwNkMyNDIuNDMyIDEwMi45MDIgMjEwLjU2NSAxMDMuOTYxIDE3OC40NCAxMDIuMjI1QzE2Mi40MTMgMTAxLjM1NiAxNDYuMzQyIDk5Ljc1MTYgMTMwLjM5OSA5Ny4zMTQ5QzExNS42NTEgOTUuMDUxMiAxMDAuNzc2IDkyLjIzNjYgODYuNjU0NCA4Ny44NzE0QzczLjU4MDYgODMuODI5NCA2MC44NDQ1IDc4LjI5NTcgNTEuMjg3MiA3MC40MTQyQzQ2LjQ4NDUgNjYuNDU3MyA0Mi4zNTcxIDYxLjkxMzUgNDAuNDUwNyA1Ni45NzMyQzM4LjM3NzYgNTEuNjI0MiAzOC44NzM3IDQ2LjAzMTQgNDAuODAzOSA0MS4wMDdDNDguMTMwMiAyMi4wODM1IDczLjQ2NzQgMTEuNjYxNiA5OS4xNzg3IDcuNDk4NTRDMTEzLjcyMiA1LjE0NzggMTI4Ljk1NCA0LjQxMDc3IDE0NC4xMDIgMy45ODE5OUMxNjAuMzg4IDMuNTE5ODEgMTc2Ljc2NyAzLjYwMzExIDE5My4xOTkgNC4xMzk0MkMyMjYuMDI2IDUuMjMwOCAyNTguOTY1IDguMjE3MjkgMjkxLjc2NCAxMi40NTQyQzMwNy42NzYgMTQuNTE1NyAzMjMuNTQ0IDE2Ljg2NjYgMzM5LjM3NCAxOS40NTg4QzM0Mi43MDYgMjAuMDAwNSAzNDMuMjY3IDE2LjM4MiAzMzkuOTM1IDE1Ljg0MDJMMzM5LjkxMiAxNS44NzM3WiIgZmlsbD0iI0ZFQjJCRiIgZmlsbC1vcGFjaXR5PSIwLjUiLz48L3N2Zz4K");
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        width: 120%;
        height: 100%;
        left: 50%;
        transform: translateX(-50%);
        z-index: -1;
    }
}

/* ------------------------------------ *\
   Biblomar color helpers (BEM)
\* ------------------------------------ */

.bg-primary {
    background-color: var(--color-primary);
}

.bg-dark {
    background-color: var(--color-dark);
}

.bg-dark-bg {
    background-color: var(--color-dark-bg);
}

.bg-light {
    background-color: var(--color-light-bg);
}

.bg-fuchsia {
    background-color: var(--color-fuchsia);
}

.bg-pink {
    background-color: var(--color-pink);
}

.bg-blue-light {
    background-color: var(--color-blue-light);
}

.text-primary {
    color: var(--color-primary);
}

.text-dark {
    color: var(--color-dark);
}

.text-fuchsia {
    color: var(--color-fuchsia);
}

.text-light {
    color: var(--color-light-bg);
}

.text-heading {
    color: var(--color-heading);
}

.validate_email_against_bot {
    display: none;
}

body #cmplz-manage-consent .cmplz-manage-consent {
    background-image: url(imagenes/fondo-ajustes.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    right: unset !important;
    left: 0px;
    font-size: 0px;
    color: var(--negro) !important;
    width: 140px;
    background-color: transparent !important;
    box-shadow: unset !important;
    bottom: -2px !important;
    padding: 0 !important;
}

body #cmplz-manage-consent .cmplz-manage-consent:before {
    content: "";
    background-image: url(imagenes/icono-ajustes.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    width: 28px;
    height: 28px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all 0.8s ease;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -webkit-transition: all 0.8s ease;
    -moz-transition: all 0.8s ease;
    -ms-transition: all 0.8s ease;
    -o-transition: all 0.8s ease;
}

body #cmplz-manage-consent .cmplz-manage-consent:hover:before {
    transform: translate(-50%, -54%);
    -webkit-transform: translate(-50%, -54%);
    -moz-transform: translate(-50%, -54%);
    -ms-transform: translate(-50%, -54%);
    -o-transform: translate(-50%, -54%);
}

/* Arregla padding al abrir popup deshabilitando scroll de la web */
html.mfn-popup-browser-scroll-disabled {
    padding-right: 0;
}


/*********************************\
            COPYRIGHT
\*********************************/
body #Footer .copyright a:hover {
    text-decoration: none;
}

body #Footer .footer_copy {
    border: 0;
    background: black;
    color: white;
}

body #Footer .footer_copy a {
    color: white;
}

body #Footer .footer_copy a:hover {
    color: var(--primary);
}

body #Footer .footer_copy .one {
    --mfn-column-gap-bottom: 15px;
    padding-top: 15px;
    margin-bottom: 0;
}

body #Footer .footer_copy .mcb-column-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

body #Footer .menu {
    list-style: none;
    padding: 0;
    background: none;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
}

body #Footer .copyright .menu {
    gap: 0 10px;
    flex-direction: row;
}

body #Footer .menu li:after {
    content: none;
}

body #Footer .menu a {
    padding: 5px 0;
}

body #Footer .footer_copy .copyright {
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: .02em;
    float: none;
    text-align: left;
}

body #Footer .footer_copy .copyText {
    margin: 0 0 5px;
}

body #Footer .footer_copy .social {
    line-height: 0;
}

body #Footer .footer_copy .social li a {
    font-size: 22px;
    line-height: 1;
}

@media only screen and (max-width: 959px) {
    body .animate {
        animation-delay: 0ms !important;
    }

    body #Footer .footer_copy .mcb-column-inner {
        flex-direction: column;
    }

    body #Footer .copyright .menu {
        justify-content: center;
    }

    body #Footer .footer_copy .copyright {
        text-align: center;
    }

    body #Footer .footer_copy .social {
        margin-top: 15px;
    }
}


/*********************************\
            KIT DIGITAL
\*********************************/
body #Footer .footer_action {
    background: none;
}

body #Footer .footer_action .one {
    margin-bottom: 0;
}

body #Footer .footer_action .financiacion {
    display: grid;
    grid-template-columns: 1fr 1fr 5fr;
    gap: 20px;
    text-align: left;
    align-items: center;
}

body #Footer .footer_action .financiacion>div {
    line-height: 0;
}

body #Footer .footer_action .financiacion>div img {
    max-height: 50px;
    width: auto;
}

body #Footer .footer_action .financiacion>div p {
    font-size: 13px;
    line-height: 15px;
    margin-bottom: 0;
}

@media only screen and (max-width: 959px) {
    body #Footer .footer_action .financiacion {
        grid-template-columns: 1fr 1fr;
        text-align: center;
        gap: 5px;
    }

    body #Footer .footer_action .financiacion>div:last-child {
        grid-column: 1 / span 2;
    }
}

@media only screen and (max-width: 767px) {
    body #Footer .footer_action .financiacion>div img {
        max-height: unset;
        width: 100%;
    }
}

body #pojo-a11y-toolbar .pojo-a11y-toolbar-overlay p.pojo-a11y-toolbar-title {
    line-height: 1.2;
}


/*********************************\
            HOME CAROUSEL
\*********************************/

.home-carousel {
    position: relative;
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    background-color: var(--color-light-bg-hex);

    &::before,
    &::after {
        --height: 10rem;
        --z-index: 9;

        @media (width >=768px) {
            --height: 16rem;
        }
    }

    &::before {
        --top: -7rem;

        @media (width >=768px) {
            --top: -11rem;
        }

        content: "";
        position: absolute;
        inset: 0;
        background-color: var(--color-light-bg-hex);
        width: 110vw;
        height: var(--height);
        transform: translateX(-50%);
        left: 50%;
        z-index: var(--z-index);
        pointer-events: none;
        border-radius: 0 0 50% 50%;
        top: var(--top);
    }

    &::after {
        --top: 72%;

        @media (width >=768px) {
            --top: 75%;
        }

        content: "";
        position: absolute;
        inset: 0;
        background-color: var(--color-light-bg-hex);
        width: 110vw;
        height: var(--height);
        transform: translateX(-50%);
        left: 50%;
        z-index: var(--z-index);
        pointer-events: none;
        border-radius: 50% 50% 0 0;
        top: var(--top);
    }
}

.home-carousel__track {
    overflow: hidden;
}

.home-carousel__slides {
    display: flex;
    align-items: stretch;
    list-style: none !important;
}

.home-carousel__slide {
    position: relative;
}

.home-carousel__figure {
    --height: 15rem;
    margin: 0;
    height: var(--height);

    @media (width >=768px) {
        --height: auto;
    }
}

.home-carousel__image {
    display: block;
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}