:root {
    --color-1 : #fb4678;
    --color-2 : #3952f5;
    --color-bckg : #FCFAFF;
    --color-srfc : #FFFFFF;

    --hero-bckg : linear-gradient(180deg, #fb4678, #fa437b, #f93c82, #f4338d, #ec2a9c, #de27ae, #ca2ec0, #b038d2, #9143e1, #6e4bec, #4b50f3, #3952f5);

    --font-family : 'Arial', sans-serif;
    --font-size   : 16px;

    --border-radius : 1rem;
}

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");
}

.hero {
    background : var(--hero-bckg);
}
.color-bckg-hero {
    background : var(--hero-bckg);
}

/* Hero */
.hero {
    display         : flex;
    text-align      : center;
    justify-content : center;
    align-items     : center;
    background      : var(--hero-bckg);
    color           : #FFFFFF;
}
.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);
}

.screenshot {
	height        : 512px;
	width         : auto;
	border-radius : 1rem;
	box-shadow    : 0 0 10px rgba(0,0,0,0.5);
}

/* Desktop */
@media ( min-width : 767px ) {
    #msuvl-video {
        height : 700px;
    }
}

/* Navigation */
nav {
    position        : fixed!important;
    top             : 0;
    width           : 100%;
    display         : flex;
    justify-content : space-between;
    align-items     : center;
    z-index         : 1050;

	background              : var(--color-1);
    -webkit-backdrop-filter : blur(5px);
    backdrop-filter         : blur(5px);
}
.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(255, 255, 255, 1)' 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 : #F3F3F3!important;
}
.nav-link:hover, .navbar-brand:hover {
    color : #FFFFFF!important;
}
.dropdown-menu-msuvl {
    color         : var(--color-bckg);
    border-radius : var(--border-radius)!important;
    z-index       : 1050;
    border        : none;
}
.dropdown-menu-msuvl .dropdown-item {
    padding : 0.8rem;
}
.dropdown-menu-msuvl .dropdown-item:hover {
    background-color : var(--color-1);
    color            : var(--color-4);
}
nav, .dropdown-menu-msuvl {
    background              : var(--color-1);
    -webkit-backdrop-filter : blur(5px);
    backdrop-filter         : blur(5px);
}

footer {
    display         : flex;
    justify-content : center;
    align-items     : center;
    height          : 5vh;
    background-color: var(--color-1);
    color           : var(--color-bckg);
}

.msuvl-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-1);
    border           : none!important;

    margin           : 0.5rem;

    text-decoration  : none;
}
.msuvl-btn:active {
    transform : scale( 0.9 );
}
.msuvl-btn:hover {
    color            : var(--color-srfc);
    background-color : var(--color-2);
}
.msuvl-btn:active {
    color            : var(--color-srfc);
    background-color : var(--color-2);
}

.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;
}