@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400;1,500;1,600;1,700;1,800&display=swap');
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.2/font/bootstrap-icons.css");

html, body {
    min-height: 100%;
}
body{
    font-family: 'Montserrat', sans-serif;
    --bs-blue: #03C6D3;
    --bs-purple: #431A80;
}
.btn-blue {
    --bs-btn-color: var(--bs-white);
    --bs-btn-bg: var(--bs-blue);
    --bs-btn-border-color: var(--bs-blue);
    --bs-btn-hover-color: var(--bs-white);
    --bs-btn-hover-bg: var(--bs-cyan);
    --bs-btn-hover-border-color: var(--bs-cyan);
}
.btn-outline-danger {
    --bs-btn-color: #EE2E23;
    --bs-btn-border-color: #EE2E23;
}
.btn-belanja {
    margin-top: 5rem;
}
.fs-small {
    font-size: .875rem;
}
.fw-800 {
    font-weight: 800;
}
.fs-52 {
    font-size: 2rem;
}
.g-225rem {
    --bs-gutter-x: 2.25rem;
    --bs-gutter-y: 2.25rem;
}
.top-66 {
    top: 66%!important;
}
.form-select, .form-control {
    border-radius: 0;
    font-weight: 500;
}
.form-label {
    font-weight: 600;
}
.bg-purple {
    background-color: var(--bs-purple);
}
.row-cols-10>* {
    flex: 0 0 auto;
    width: 10%;
}

section.info, section.content {
    background-color: rgba(3, 198, 211, 0.05);
}
.line-red:after {
    content: "";
    display: block;
    width: 50px;
    height: 3px;
    background-color: #EE2E23;
    margin: 1rem 0 1.5rem;
}
.color-preview {
    width: 50px;
    height: 50px;
    display: inline-block;
    vertical-align: middle;
    margin-right: .5rem;
    position: relative;
}
.disabled .color-preview:after {
    content: "";
    position: absolute;
    background-image: url("../images/flag-no-stock.png");
    background-size: 100%;
    background-repeat: no-repeat;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.dropdown-menu {
    --bs-dropdown-link-active-bg: var(--bs-dark);
    --bs-dropdown-border-radius: 0;
}
.form-select {
    --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23EE2E23' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}
.bootstrap-select.form-control .dropdown-toggle:focus {
    outline: none !important;
}
.bootstrap-select.form-control .dropdown-toggle::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23EE2E23' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
    width: 16px;
    height: 12px;
    background-size: 16px 12px;
    border: none
}
[class*="icheck-"] > label {
    padding-left: 35px!important;
}
[class*=icheck-]>input:first-child+label::before {
    margin-left: -35px;
}
.icheck-red>input:first-child:checked+label::before {
    background-color: #EE2E23;
    border-color: #EE2E23;
}
footer nav:not(.soc-media) .nav-link {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0.25rem;
}
footer nav.soc-media .nav-link {
    padding-left: 0.2rem;
    padding-right: 0.2rem;
}
.soc-media .nav-link:first-child {
    padding-left: 0;
}
.soc-media .nav-link:last-child {
    padding-right: 0;
}

@media (max-width: 767px) {
    .mb-xs-n8 {
        margin-bottom: -8rem;
    }
    .line-red:after {
        margin: 1rem auto 1.5rem;
    }
}
@media (min-width: 768px) {
    .me-n9{
        margin-right: -9rem;
    }
    .fs-52 {
        font-size: 3.25rem;
    }
    .position-md-absolute {
        position: absolute;
    }
    .translate-middle-md-y {
        transform: translateY(-50%)!important;
    }
    .btn-belanja {
        position: absolute;
        right: 224px;
        top: 0;
        margin: 0;
        transform: translateY(-50%)!important;
    }
    .color-option {
        max-height: 20.5vw;
        overflow-y: auto;
    }
    .color-option .col:not(.disabled) > * {
        cursor: pointer;
    }
    .color-preview {
        width: 100%;
        height: auto;
        vertical-align: middle;
        margin-right: 0;
        position: relative;        
    }
    .color-preview:before {
        display: block;
        padding-top: 100%;
        content: "";
        border: solid 2px #fff;
    }
    .color-name, .color-code {
        font-size: .6875rem;        
    }
    .color-name {
        font-weight: 500;
    }
    .color-option .disabled > *:not(.color-preview) {
        opacity: .7;
    }
}
@media (min-width: 992px) {
    .translate-middle-lg-y {
        transform: translateY(-50%)!important;
    }
    .position-lg-absolute {
        position: absolute;
    }
}