/* RESET */

.frontline {
    user-select: none;
}

.text-selectable {
    user-select: text;
}

.text-size-1-5rem {
    font-size: 1.5rem;
}

.text-size-2rem {
    font-size: 2rem;
}

.text-shadow {
    text-shadow: -5px 5px rgba(0, 0, 0, 0.15)
}

.form-control:focus,
.form-select:focus,
.btn:focus,
.btn:focus:active {
    box-shadow: none;
}

.form-control,
.form-select,
.btn {
    --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);
    --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    border-radius: 10px;
}

.btn-xs {
    height: auto !important;
    padding: 0rem .6rem;
    font-size: 0.9rem;
}

.form-select {
    cursor: pointer;
}

.twitter-follow-button {
    background-color: #000;
    color: #fff;
    padding: 2px 10px;
    display: inline-block;
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9rem;
}

.twitter-follow-button img {
    width: 16px;
    vertical-align: middle;
}

/**********/

a,
a:visited,
a:focus {
    color: #f43f5e;
}

a:hover {
    color: #b3263d;
}

.navbar a,
.navbar a:visited,
.navbar a:focus {
    color: #fff;
}

.navbar a:hover {
    color: #f0c7ce;
}


.form-control:focus,
.form-select:focus {
    border-color: #f43f5e;
}


.card-form-wrapper .form-control,
.card-form-wrapper .form-select,
.card-form-wrapper .btn {
    height: 3rem;
}

.btn-vivino {
    background-color: #ba1628;
    color: #fff;
}

.btn-vivino svg,
.btn-outline-vivino svg {
    vertical-align: text-bottom;
}

.btn-vivino:hover,
.btn-outline-vivino:hover {
    background-color: #9c1222;
    color: #fff;
}

.btn-outline-vivino {
    border: 1px solid #ba1628;
    color: #ba1628;
}

.btn-outline-vivino:hover {}


.card {
    border-radius: 0.75rem;
}

/********/

body {
    font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    background-color: #f5f5f5;
}

h1 {
    font-size: 1.6rem;
    line-height: 2rem;
    font-weight: 700;
    text-align: center;
}

.navbar-nav {
    margin-bottom: 1px;
}

.logo-container {
    display: block;
    margin: auto;
    margin-bottom: 15px;
    width: 160px;
    text-align: center;
}

.logo-container a,
.logo-container a:hover,
.logo-container a:visited {
    color: #fff;
    text-decoration: none;
}

.logo {
    width: 80px;
}

@media (min-width: 992px) {
    .logo {
        width: 140px;
    }

}

.alert-danger {
    background-color: #fff;
    border: 1px solid #f43f3f;
    color: #f43f3f;
    border-radius: 15px;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.icon-website {
    width: 2rem;
    height: 2rem;
    color: rgb(244 63 94 / var(--tw-text-opacity));
    --tw-text-opacity: 1;
    vertical-align: text-bottom;
}

.icon-grape {
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.5rem;
}

.form-label {
    font-weight: 500;
    font-size: 18px;
    margin-bottom: 0.75rem;
}

#result {
    font-size: 18px;
    color: #333;
}

.btn-primary,
.btn-primary:active,
.btn-primary:focus {
    border-radius: 10px;
    font-size: 1.125rem;
    background-color: #e11d48;
    border: 1px solid #e11d48;
    color: #fff;
    font-weight: 500;
}

.btn-primary:active,
.btn-primary:hover {
    background-color: #ad1838;
    border: 1px solid #ad1838;
}

.btn-outline-primary {
    border: 1px solid #ad1838;
    color: #ad1838;
    font-size: 1.125rem;
    border-radius: 10px;
}

.btn-outline-primary:hover,
.btn-outline-primary:active,
.btn-outline-primary:focus {
    border: 1px solid #ad1838;
    background-color: #ad1838;
    color: #fff;
}

.btn-primary:active,
.btn-outline-primary:active {
    border: 1px solid #ad1838;
    font-size: 1.1rem;
}

.card-form-wrapper .btn-color {
    border: none;
    border-radius: 10px;
    height: auto;
}


.btn-check:active+.btn-color-red,
.btn-check:checked+.btn-color-red,
.btn-color-red.active,
.btn-color-red:active {
    background-color: #882e2e;
}

.btn-check:active+.btn-color-white,
.btn-check:checked+.btn-color-white,
.btn-color-white.active,
.btn-color-white:active {
    background-color: #fbbf24
}


.btn-check:active+.btn-color-pink,
.btn-check:checked+.btn-color-pink,
.btn-color-pink.active,
.btn-color-pink:active {
    background-color: #fb7185 !important;
}


.btn-check:active+.btn-color:focus,
.btn-check:checked+.btn-color:focus,
.btn-color.active:focus,
.btn-color.dropdown-toggle.show:focus,
.btn-color:active:focus {
    box-shadow: none;
}

.btn-check:focus+.btn-color,
.btn-color:focus {
    box-shadow: none;
}

.btn-check:checked+.btn-outline-dark .badge {
    /* background-color: #f1c40f; */
    color: #fff;
}

.btn-color:hover {
    background-color: #f5f5f5;
    color: #737373;
}

.btn-check:focus:not(:checked)+.btn-color {
    color: #000;
    background-color: white !important;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.card {}

.bg-pink {
    background-color: #f06292 !important;
}

/**********/

.frontline {
    min-height: 100vh;
    justify-content: center;
    align-items: flex-start;
    padding-top: 25px;
    background: linear-gradient(to top right, #ce474e 10%, #ff7c9d 65%, #ffc01a 125%);
}

.gradient {
    display: block;
    height: 30px;
    width: 100%;
    border-top: 1px solid #fff;
    background: #eee;
    background: linear-gradient(180deg, #e9e9e9 0%, #f5f5f5 100%);
}

.frontline .container {
    margin-bottom: 50px;
}

.avatar {
    border-radius: 100px;
}

.scroll-cta {
    text-align: center;
    width: 60px;
    left: calc(50% - 30px);
    position: absolute;
    bottom: 0;
    opacity: 0;
}

@keyframes showElement {
    to {
        opacity: 1;
    }
}

.scroll-cta {
    z-index: 2;
    animation: showElement 1s forwards;
    animation-delay: 3s;
}

/*******/

.result-container .position {
    width: 40px;
    height: 40px;
    padding-top: 8px;
    background-color: #000;
    color: #fff;
    border-radius: 25px;
    font-size: 1rem;
    font-weight: bold;
    margin: auto;
}

.carousel-dark .carousel-indicators [data-bs-target] {
    background-color: #f43f5e;
    width: 15px;
    height: 15px;
    border: 0;
    border-radius: 10px;
    background-clip: initial;

}

.carousel-item {
    min-height: 450px;
    /* Ajustez la hauteur selon vos besoins */
}

.carousel-inner {
    min-height: 450px;
}

@media (min-width: 768px) {
    .carousel-inner {
        max-width: 520px;
        margin: auto;
    }
}

.carousel-caption {
    padding: 0;
    position: static;
}

.carousel-indicators {
    margin-bottom: 0;
    /* position: static; */
}

.carousel-control-prev {
    height: 50px;
    /* margin-left: -34px; */
    /* align-items: flex-start; */
}

.carousel-control-next {
    height: 50px;
    /* margin-right: -34px; */
    /* align-items: flex-start; */
}

.carousel-inner .carousel-item {
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.list-wines .list-group-item {
    text-align: left;
    font-size: 0.75rem;
    padding: 10px;
}

.suggestion-reason {
    font-size: 1rem;
}

/*******/

.card-form-wrapper {
    margin: auto;
    width: 100%;
    max-width: 660px;
    position: relative;
}

.card-form {
    position: absolute;
    z-index: 5;
    width: 100%;
    --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);
    --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.card-result {
    z-index: 5;
}

/*******/

/* Couleur des pistes connectées */
.noUi-connects {
    cursor: pointer;

}

.noUi-connect {
    background: #f43f5e;
}

.noUi-target {
    border: 1px solid #ced4da;
    background-color: #fff;
    --tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);
    --tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    /* background-color: #737373; */
}

/* Couleur des curseurs */
.noUi-handle {
    cursor: pointer;
    /* background: #882e2e;
    border-color: #882e2e; */
    padding: 0px;
    width: 25px !important;
    /* Largeur du curseur */
    height: 25px !important;
    /* Hauteur du curseur */
    background-color: #fefefe;
    /* Couleur du curseur */
    border-radius: 100%;

    /* Forme ronde */
    border: none;
    /* Suppression de la bordure */

}

.noUi-handle::before {
    content: none;
}

.noUi-handle::after {
    content: none;
}

/*********/

.loading-container {
    text-align: center;
}

.loading-text {
    text-align: center;
    font-size: 1.2rem;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

/***********/

.container-primary {
    background-color: #ce474e;
}

.container-secondary {
    background-color: #eeae00;
    color: #fff;
}

.arrow-2 {
    transform: scale(-1, 1);
}

@media (min-width: 576px) {
    .arrow-1 {
        transform: rotate(-90deg);
    }

    .arrow-2 {
        transform: rotate(-90deg) scale(-1, 1);
    }
}

/***FOOTER***/

footer {
    min-height: 200px;
    background: linear-gradient(to bottom left, #ce474e 10%, #ff7c9d 65%, #ffc01a 125%);
    color: #fff;
    /* justify-content: center;
    align-items: flex-start; */
}

footer a,
footer a:visited,
footer a:focus {
    color: #fff;
}

footer a:hover {
    color: #d4bfce;
}

/*** row-header ****/

.row-header h1 {
    font-family: "Inter", sans-serif;
    text-align: center;
    font-size: 2.5rem;
    line-height: 2.5rem;
    display: block;
    letter-spacing: -0.05rem;
    white-space: break-spaces;
}

.row-header h1 .highlight {
    background: #ce474e;
    color: #fff;
    display: inline-block;
    padding: 0px 10px 10px 10px;
    border-radius: 5px;
}

.row-header h2 {
    font-family: "Inter", sans-serif;
    text-align: center;
    font-size: 1.3rem;
    line-height: 1.5rem;
    color: #666666;
    font-weight: 400;
}

.row-header h3 {
    font-family: "Inter", sans-serif;
    text-align: center;
    font-size: 2.1rem;
    line-height: 2.1rem;
    display: block;
    letter-spacing: -0.05rem;
    white-space: break-spaces;
}

.row-header h4 {
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.2rem;
    font-weight: 400;
    display: block;
    white-space: break-spaces;
}

@media (min-width: 768px) {
    .row-header h1 {
        font-size: 3.5rem;
        line-height: 3.5rem;
        text-align: left;

    }

    .row-header h2 {
        text-align: left;
    }
}

.row-header-how {
    font-size: 1.0rem;
}


.total-matches {
    font-family: "Inter", sans-serif;
}

.total-matches .count {
    font-size: 5rem;
    font-weight: 800;
    background: linear-gradient(to top right, #ce474e 10%, #ff7c9d 65%, #ffc01a 125%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 4rem;
}

.total-matches .count-label {
    color: #666666;
}

.wine-matches {
    gap: 0.8rem;
}

.wine-matches .match {
    flex: 1 1 100%;
}

.match .card {
    border: 0;
    border-radius: 0;
    /* -webkit-box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.4);
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.07); */
    -webkit-box-shadow: 5px 5px 0px 0px #f1f1f1f1;
    box-shadow: 5px 5px 0px 0px #f1f1f1f1;
}

.img-match {
    background-size: cover;
    background-position: center;
    min-height: 150px;
}

.img-match a,
.img-match a:visited,
.img-match a:focus,
.img-match a:hover {
    color: transparent;
}

.bottle-red {
    color: #882e2e;
}

.bottle-white {
    color: #fbbf24;
}

.bottle-pink {
    color: #fb7185;
}

.navbar-toggler {
    border: 1px solid #fff;
    /* b: 1px solid #fff; */
}

.navbar-toggler:focus {
    box-shadow: none;
}

.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") !important;
}