:root {
    --color-1    : #963BFF;
    --color-2    : #220051;
    --color-3    : #FF00EE;
    --color-4    : #00FF98;
    --color-bckg : #FCFAFF;
    --color-srfc : #FFFFFF;

    --hero-bckg  : linear-gradient(0deg, var(--color-1) 0%, var(--color-2) 100%);

    --font-family : 'Arial', sans-serif;
    --font-size   : 16px;

    --border-radius : 1rem;
}

.bckg-1 {
    background-color: var(--color-1);
}
.bckg-2 {
    background-color: var(--color-2);
}
.bckg-3 {
    background-color: var(--color-3);
}
.bckg-4 {
    background-color: var(--color-4);
}
.bckg-bckg {
    background-color: var(--color-bckg);
}
.bckg-srfc {
    background-color: var(--color-srfc);
}

.txt-clr-1 {
    color: var(--color-1);
}
.txt-clr-2 {
    color: var(--color-2);
}
.txt-clr-3 {
    color: var(--color-3);
}
.txt-clr-4 {
    color: var(--color-4);
}
.txt-clr-bckg {
    color: var(--color-bckg);
}

html, body {
    margin           : 0;
    padding          : 0;
    font-family      : var(--font-family);
    font-size        : var(--font-size);
    background-color : var(--color-bckg);
    background-image : url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='49' viewBox='0 0 28 49'%3E%3Cg fill-rule='evenodd'%3E%3Cg id='hexagons' fill='%239C92AC' fill-opacity='0.03' fill-rule='nonzero'%3E%3Cpath d='M13.99 9.25l13 7.5v15l-13 7.5L1 31.75v-15l12.99-7.5zM3 17.9v12.7l10.99 6.34 11-6.35V17.9l-11-6.34L3 17.9zM0 15l12.98-7.5V0h-2v6.35L0 12.69v2.3zm0 18.5L12.98 41v8h-2v-6.85L0 35.81v-2.3zM15 0v7.5L27.99 15H28v-2.31h-.01L17 6.35V0h-2zm0 49v-8l12.99-7.5H28v2.31h-.01L17 42.15V49h-2z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

/* Navigation */
nav {
    position        : fixed!important;
    top             : 0;
    width           : 100%;
    display         : flex;
    justify-content : space-between;
    align-items     : center;
    z-index         : 1050;
}
.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(252, 250, 255, 0.85)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-toggler {
    border-color : none!important;
    outline      : none!important;
}
.navbar-brand {
    font-weight: bold!important;
}
.nav-link, .navbar-brand {
    color : var(--color-srfc)!important;
}
.nav-link:hover, .navbar-brand:hover {
    color : var(--color-4)!important;
}
.dropdown-menu-sira {
    color         : var(--color-bckg);
    border-radius : var(--border-radius)!important;
    z-index       : 1050;
    border        : none;
}
.dropdown-menu-sira .dropdown-item {
    padding : 0.8rem;
}
.dropdown-menu-sira .dropdown-item:hover {
    background-color : var(--color-2);
    color            : var(--color-4);
}
nav, .dropdown-menu-sira {
    background              : var(--color-2);
    -webkit-backdrop-filter : blur(5px);
    backdrop-filter         : blur(5px);
}

/* Hero */
.hero {
    display         : flex;
    text-align      : center;
    justify-content : center;
    align-items     : center;
    /* background      : var(--hero-bckg); */
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.dev/svgjs' width='3840' height='2160' preserveAspectRatio='none' viewBox='0 0 3840 2160'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1133%26quot%3b)' fill='none'%3e%3crect width='3840' height='2160' x='0' y='0' fill='url(%26quot%3b%23SvgjsLinearGradient1134%26quot%3b)'%3e%3c/rect%3e%3cpath d='M1456.41-96.22C1105.47 265.1 1380.61 1737.9 763.21 1795.56 145.81 1853.22-251.35 1264.98-623.19 1255.56' stroke='rgba(255%2c 0%2c 238%2c 1)' stroke-width='2'%3e%3c/path%3e%3cpath d='M2461.69-287.84C2067.28-23.74 2265.77 1392.18 1588.23 1397.98 910.69 1403.78 342.6 438.33-158.68 404.38' stroke='rgba(255%2c 0%2c 238%2c 1)' stroke-width='2'%3e%3c/path%3e%3cpath d='M1982.73-30.41C1623.87-12.13 1467.57 544.27 701.15 620.23-65.27 696.19-170.08 1613.23-580.43 1678.63' stroke='rgba(255%2c 0%2c 238%2c 1)' stroke-width='2'%3e%3c/path%3e%3cpath d='M2990.03-46.6C2686.79-38.83 2426.68 395.33 1860.07 395.45 1293.45 395.57 1295.08 125.45 730.1 125.45 165.12 125.45-109.42 393.58-399.86 395.45' stroke='rgba(255%2c 0%2c 238%2c 1)' stroke-width='2'%3e%3c/path%3e%3cpath d='M1636.98-12.88C1247.14 344.48 1527.11 1901.78 844.23 1948.35 161.35 1994.92-317.15 1353.7-741.26 1343.55' stroke='rgba(255%2c 0%2c 238%2c 1)' stroke-width='2'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1133'%3e%3crect width='3840' height='2160' fill='white'%3e%3c/rect%3e%3c/mask%3e%3clinearGradient x1='50%25' y1='0%25' x2='50%25' y2='100%25' gradientUnits='userSpaceOnUse' id='SvgjsLinearGradient1134'%3e%3cstop stop-color='rgba(34%2c 0%2c 81%2c 1)' offset='0'%3e%3c/stop%3e%3cstop stop-color='rgba(150%2c 59%2c 255%2c 1)' offset='1'%3e%3c/stop%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e");
    color           : var(--color-bckg);
}
.hero-title {
    font-size  : 3rem;
    font-weight: bold;
    text-align : center;
    margin     : 0;
    padding    : 0;
}
.hero-subtitle {
    font-size  : 2rem;
    font-weight: bold;
    text-align : center;
    margin     : 0;
    padding    : 0;
}
.hero-text {
    font-size  : 1rem;
    margin     : 0;
    padding    : 0;
}

.hero-title, .hero-subtitle, .hero-text {
    text-shadow : 1px 1px 3px rgba(0, 0, 0, 1);
}

/* References scrolling track */
.logo-scroll {
    position : relative;
    overflow : hidden;
    width    : 100%;
    padding  : 2rem 0;
    z-index  : 1;
}

.logo-scroll-track {
    display   : flex;
    animation : scroll 15s linear infinite;
    z-index   : 1;
}

.logo-item {
    flex            : 0 0 200px;
    height          : 80px;
    padding         : 0 2rem;
    display         : flex;
    justify-content : center;
    align-items     : center;
}

.logo-item img {
    height     : 60px;
    width      : auto;
    max-width  : 100%;
    object-fit : contain;
    opacity    : 0.75;
    transition : all 0.3s ease;
    filter     : grayscale(100%);
}

.logo-item img:hover {
    opacity   : 1;
    filter    : grayscale(0);
    transform : scale(1.1);
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-200px * 4)); /* Number of original logos */
    }
}

.logo-scroll:hover .logo-scroll-track {
    animation-play-state : paused;
}

footer {
    display         : flex;
    justify-content : center;
    align-items     : center;
    height          : 5vh;
    background-color: var(--color-2);
    color           : var(--color-bckg);
}

.sira-btn {
    display         : inline-flex;
    align-items     : center;
    justify-content : center;
    gap             : 0.25rem;

    padding         : 0.75rem 1.5rem;
    font-size       : inherit;
    transition      : background-color 0.3s, border-color 0.3s, color 0.3s, transform 0.3s;
    cursor          : pointer;
    border-radius   : 1.5rem!important;

    user-select     : none;

    color            : var(--color-bckg);
    background-color : var(--color-2);
    border           : none!important;

    margin           : 0.5rem;

    text-decoration  : none;
}
.sira-btn:active {
    transform : scale( 0.9 );
}
.sira-btn:hover {
    color            : var(--color-2);
    background-color : var(--color-4);
}
.sira-btn:active {
    color            : var(--color-2);
    background-color : var(--color-1);
}

.feature-description {
    font-size : 1.2rem;
}

.form-control:focus {
    border-color : var(--color-1);
    box-shadow   : 0 0 0 0.25rem rgba(var(--color-1-rgb), 0.25);
}

.error-label {
    color : #FF0000;
}

.carousel-caption {
    background              : rgba(255, 255, 255, 0.5);
    -webkit-backdrop-filter : blur(5px);
    backdrop-filter         : blur(5px);
    border-radius           : var(--border-radius);
}
.carousel-caption h5 {
    color: var(--color-2);
    font-weight: bold;
}
.carousel-caption p {
    color: var(--color-2);
}
.carousel-control-prev,
.carousel-control-next {
    width : 3%;
}
.carousel-indicators button {
    background-color : var(--color-2)!important;
}
.carousel-control-prev-icon {
    background-image : url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23220051' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E") !important;
}
   
.carousel-control-next-icon {
    background-image : url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23220051' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E") !important;
}