/* overlay */

.section--overlay {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.25);
    z-index: 1;
}

/* anchor */
.section--anchor {
    position: absolute;
    top: -180px;
    left: 0px;
    right: 0px;
    height: 0px;
    visibility: hidden;
}

@media (max-width: 575px) {
    /* anchor */
    .section--anchor {
        position: absolute;
        top: -120px;
        left: 0px;
        right: 0px;
        height: 0px;
        visibility: hidden;
    }
}

/* swal */
.swal2-popup.swal2-toast {
    background: #fff !important;
}

.swal2-popup.swal2-toast .swal2-title {
    color: #000;
}

.swal2-popup.swal2-toast .swal2-title {
    font-size: 14px !important;
    letter-spacing: 0.4px;
}

.swal2-popup.swal2-toast {
    padding: 10px 20px !important;
}

.swal2-popup.swal2-toast .swal2-icon {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
}

.swal2-popup.swal2-toast .swal2-icon .swal2-icon-content {
    font-size: 20px !important;
}

.swal2-popup.swal2-toast.swal2-show {
    animation: unset !important;
}

div:where(.swal2-container) div:where(.swal2-timer-progress-bar) {
    background: #fff !important;
}

/* truncate */
.truncate-text-1l {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    white-space: pre-wrap;
}

.truncate-text-2l {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    white-space: pre-wrap;
}

.truncate-text-3l {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    white-space: pre-wrap;
}

.truncate-text-4l {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    white-space: pre-wrap;
}

.truncate-text-6l {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
    white-space: pre-wrap;
}

.truncate-text-7l {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 7;
    white-space: pre-wrap;
}
/* font-weight */

.fw-400 {
    font-weight: 400 !important;
}

.fw-500 {
    font-weight: 500 !important;
}

.fw-600 {
    font-weight: 600 !important;
}

.fw-700 {
    font-weight: 700 !important;
}

.fw-800 {
    font-weight: 800;
}

/* line-height */

@media (min-width: 1px) and (max-width: 575px) {
    .lh--sm-unset {
        line-height: normal !important;
    }
}

@media (min-width: 576px) and (max-width: 767px) {
    .lh--md-unset {
        line-height: normal !important;
    }
}

/* font-sizes */

.fs-11 {
    font-size: 11px !important;
}

.fs-12 {
    font-size: 12px !important;
}

.fs-13 {
    font-size: 13px !important;
}

.fs-14 {
    font-size: 14px !important;
}

.fs-15 {
    font-size: 15px !important;
}

.fs-16 {
    font-size: 16px !important;
}

.fs-17 {
    font-size: 17px !important;
}

.fs-18 {
    font-size: 18px !important;
}

.fs-19 {
    font-size: 19px !important;
}

.fs-20 {
    font-size: 20px !important;
}

.fs-21 {
    font-size: 21px !important;
}

.fs-22 {
    font-size: 22px !important;
}

.fs-23 {
    font-size: 23px !important;
}
.fs-24 {
    font-size: 24px !important;
}
/* z-index */

.z-2 {
    z-index: 2;
}

.z-overlay,
.z-overlay * {
    z-index: 2;
}

/* colors */

.text--primary {
    color: var(--color-theme-secondary) !important;
}

.text--secondary {
    color: var(--color-theme);
}

/* reverse text */

.section--text-reverse * {
    color: var(--color-text-reverse);
}

/* button */

.btn:hover,
.btn:focus {
    box-shadow: none !important;
    color: var(--color-text);
}

button,
a,
.btn {
    color: var(--color-text);
}

/* heading arrows */

.heading--arrow.left {
    position: absolute;
    left: -75px;
    width: 70px;
    top: 35px;
}

.heading--arrow.for-button.left {
    position: absolute;
    left: -50px;
    width: 38px;
    top: 0px;
}

/* button */

.btn--outline-action {
    border: 2px solid var(--color-theme);
    color: var(--color-text-reverse);
    font-weight: 600;
    letter-spacing: 0.5px;
    border-radius: 5px;
}

.btn--outline-action svg,
.btn--outline-action i {
    color: var(--color-text-reverse);
    fill: var(--color-text-reverse);
}

.btn--outline-action:hover,
.btn--outline-action:focus {
    border: 2px solid var(--color-theme);
    color: var(--color-text);
    background-color: var(--color-theme);
}

.btn--outline-action:hover svg,
.btn--outline-action:focus svg,
.btn--outline-action:hover i,
.btn--outline-action:focus i {
    color: var(--color-text);
    fill: var(--color-text);
}

.btn--action {
    border: 2px solid var(--color-theme);
    color: var(--color-text);
    font-weight: 600;
    letter-spacing: 0.5px;
    border-radius: 5px;
    background-color: var(--color-theme);
}

.btn--action:hover,
.btn--action:focus {
    border: 2px solid var(--color-theme);
    color: black;
    background-color: transparent;
}

/* width based */

.btn--action.w-lg {
    min-width: 220px;
}

/* checkbox */

.form-check-input {
    border-radius: 2px !important;
    box-shadow: none !important;
}

.form-check-input:checked {
    background-color: var(--color-theme-secondary);
    border-color: var(--color-theme-secondary);
}

/* filter */

.img--invert {
    filter: brightness(0) invert(1);
}

/* vertical text */

.vertical-text {
    writing-mode: vertical-lr;
    text-orientation: mixed;
}

.vertical-text.rotate {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    transform: rotate(180deg);
}

/* animation */

.animation--rotate {
    animation: rotate 10s linear infinite;
}

@keyframes rotate {
    to {
        transform: rotate(360deg);
    }
}
