/* ========== RESET CSS ========== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
textarea {
    resize: none;
}

html,
body {
    height: 100%;
    font-family: Arial, sans-serif;
}

:root {
    --color-black: black;
    --color-dark-blue: #2F59CC;
    --color-light-blue: #5C7AE2;
    --color-very-dark-blue: rgb(70, 105, 230);



    --color-light-gray: #ccc;
    --color-white: white;
    --color-black: black;
    --color-light: #f0f0f0;
    --color-dark: #343a40;
    --color-red: red;
    --color-green: #16c60c;
    --color-blue: #3b78ff;
    --color-yellow: yellow;
    --color-orange: orange;
    --color-purple: #6f42c1;
    --color-pink: #ff69b4;
    --color-teal: #20c997;
    --color-cyan: #17a2b8;
    --color-brown: #795548;
    --color-beige: #f5f5dc;
    --color-olive: #808000;
    --color-lime: #aaff00;
    --color-salmon: #fa8072;
    --color-gold: #ffd700;
    --color-silver: #c0c0c0;
    --color-turquoise: #40e0d0;
    --color-indigo: #6610f2;
    --color-navy: #001f3f;



    --color-dark-blue-hover: #364d8b;
    --color-light-blue-hover: #7A9DDC;
    --color-red-hover: #C72C2C;

}


@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@700&display=swap');




/* ========== TEXT ALIGNMENT UTILITIES ========== */
.text-justify {
    text-align: justify;
}

.text-nowrap {
    white-space: nowrap;
}

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

.text-left {
    text-align: left;
}

.text-right {
    text-align: right;
}

/* ========== MARGES ET PADDINGS ========== */

/* ========== MARGES TOP ========== */

.mt {
    margin-top: auto;
}

.ml {
    margin-left: auto;
}

.mr {
    margin-right: auto;
}

.mb {
    margin-bottom: auto;
}

.margin {
    margin: auto;
}


.mt-3 {
    margin-top: 3px;
}
.mt-5 {
    margin-top: 5px;
}

.mt-10 {
    margin-top: 10px;
}

.mt-15 {
    margin-top: 15px;
}

.mt-20 {
    margin-top: 20px;
}

.mt-25 {
    margin-top: 25px;
}

.mt-30 {
    margin-top: 30px;
}

.mt-35 {
    margin-top: 35px;
}

.mt-40 {
    margin-top: 40px;
}

.mt-45 {
    margin-top: 45px;
}

.mt-50 {
    margin-top: 50px;
}

.mt-55 {
    margin-top: 55px;
}

.mt-60 {
    margin-top: 60px;
}

.mt-65 {
    margin-top: 65px;
}

.mt-70 {
    margin-top: 70px;
}

.mt-75 {
    margin-top: 75px;
}

.mt-80 {
    margin-top: 80px;
}

.mt-85 {
    margin-top: 85px;
}

.mt-90 {
    margin-top: 90px;
}

.mt-95 {
    margin-top: 95px;
}

.mt-100 {
    margin-top: 100px;
}

/* ========== MARGES BOTTOM ========== */
.mb-2 {
    margin-bottom: 2px;
}
.mb-5 {
    margin-bottom: 5px;
}

.mb-10 {
    margin-bottom: 10px;
}

.mb-15 {
    margin-bottom: 15px;
}

.mb-20 {
    margin-bottom: 20px;
}

.mb-25 {
    margin-bottom: 25px;
}

.mb-30 {
    margin-bottom: 30px;
}

.mb-35 {
    margin-bottom: 35px;
}

.mb-40 {
    margin-bottom: 40px;
}

.mb-45 {
    margin-bottom: 45px;
}

.mb-50 {
    margin-bottom: 50px;
}

.mb-55 {
    margin-bottom: 55px;
}

.mb-60 {
    margin-bottom: 60px;
}

.mb-65 {
    margin-bottom: 65px;
}

.mb-70 {
    margin-bottom: 70px;
}

.mb-75 {
    margin-bottom: 75px;
}

.mb-80 {
    margin-bottom: 80px;
}

.mb-85 {
    margin-bottom: 85px;
}

.mb-90 {
    margin-bottom: 90px;
}

.mb-95 {
    margin-bottom: 95px;
}

.mb-100 {
    margin-bottom: 100px;
}

/* ========== MARGES LEFT ========== */
.ml-5 {
    margin-left: 5px;
}

.ml-8 {
    margin-left: 8px;
}

.ml-10 {
    margin-left: 10px;
}

.ml-15 {
    margin-left: 15px;
}

.ml-20 {
    margin-left: 20px;
}

.ml-25 {
    margin-left: 25px;
}

.ml-30 {
    margin-left: 30px;
}

.ml-35 {
    margin-left: 35px;
}

.ml-40 {
    margin-left: 40px;
}

.ml-45 {
    margin-left: 45px;
}

.ml-50 {
    margin-left: 50px;
}

.ml-55 {
    margin-left: 55px;
}

.ml-60 {
    margin-left: 60px;
}

.ml-65 {
    margin-left: 65px;
}

.ml-70 {
    margin-left: 70px;
}

.ml-75 {
    margin-left: 75px;
}

.ml-80 {
    margin-left: 80px;
}

.ml-85 {
    margin-left: 85px;
}

.ml-90 {
    margin-left: 90px;
}

.ml-95 {
    margin-left: 95px;
}

.ml-100 {
    margin-left: 100px;
}

/* ========== MARGES RIGHT ========== */
.mr-5 {
    margin-right: 5px;
}

.mr-10 {
    margin-right: 10px;
}

.mr-15 {
    margin-right: 15px;
}

.mr-20 {
    margin-right: 20px;
}

.mr-25 {
    margin-right: 25px;
}

.mr-30 {
    margin-right: 30px;
}

.mr-35 {
    margin-right: 35px;
}

.mr-40 {
    margin-right: 40px;
}

.mr-45 {
    margin-right: 45px;
}

.mr-50 {
    margin-right: 50px;
}

.mr-55 {
    margin-right: 55px;
}

.mr-60 {
    margin-right: 60px;
}

.mr-65 {
    margin-right: 65px;
}

.mr-70 {
    margin-right: 70px;
}

.mr-75 {
    margin-right: 75px;
}

.mr-80 {
    margin-right: 80px;
}

.mr-85 {
    margin-right: 85px;
}

.mr-90 {
    margin-right: 90px;
}

.mr-95 {
    margin-right: 95px;
}

.mr-100 {
    margin-right: 100px;
}

/* ========== MARGES GLOBALES ========== */
.m-5 {
    margin: 5px;
}

.m-10 {
    margin: 10px;
}

.m-15 {
    margin: 15px;
}

.m-20 {
    margin: 20px;
}

.m-25 {
    margin: 25px;
}

.m-30 {
    margin: 30px;
}

.m-35 {
    margin: 35px;
}

.m-40 {
    margin: 40px;
}

.m-45 {
    margin: 45px;
}

.m-50 {
    margin: 50px;
}

.m-55 {
    margin: 55px;
}

.m-60 {
    margin: 60px;
}

.m-65 {
    margin: 65px;
}

.m-70 {
    margin: 70px;
}

.m-75 {
    margin: 75px;
}

.m-80 {
    margin: 80px;
}

.m-85 {
    margin: 85px;
}

.m-90 {
    margin: 90px;
}

.m-95 {
    margin: 95px;
}

.m-100 {
    margin: 100px;
}

.m-0 {
    margin: 0;
}

.m-1 {
    margin: 0.25rem;
}

.m-2 {
    margin: 0.5rem;
}

.m-3 {
    margin: 1rem;
}

.p-0 {
    padding: 0;
}

.p-1 {
    padding: 0.25rem;
}

.p-2 {
    padding: 0.5rem;
}

.p-3 {
    padding: 1rem;
}


.p-5p {
    padding: 5px;
}

.p-10p {
    padding: 10px;
}

.p-15p {
    padding: 15px;
}

.p-20p {
    padding: 20px;
}

.p-25p {
    padding: 25px;
}

.p-30p {
    padding: 30px;
}

.p-40p {
    padding: 40px;
}

.p-50p {
    padding: 50px;
}

.p-60p {
    padding: 60px;
}

.p-70p {
    padding: 70px;
}

.p-80p {
    padding: 80px;
}

.p-90p {
    padding: 90px;
}

.pt-5p {
    padding-top: 5px;
}

.pr-5p {
    padding-right: 5px;
}

.pb-5p {
    padding-bottom: 5px;
}

.pl-5p {
    padding-left: 5px;
}

.pt-10p {
    padding-top: 10px;
}

.pr-10p {
    padding-right: 10px;
}

.pb-10p {
    padding-bottom: 10px;
}

.pl-10p {
    padding-left: 10px;
}

.pt-15p {
    padding-top: 15px;
}

.pr-15p {
    padding-right: 15px;
}

.pb-15p {
    padding-bottom: 15px;
}

.pl-15p {
    padding-left: 15px;
}

.pt-20p {
    padding-top: 20px;
}

.pr-20p {
    padding-right: 20px;
}

.pb-20p {
    padding-bottom: 20px;
}

.pl-20p {
    padding-left: 20px;
}

.pt-25p {
    padding-top: 25px;
}

.pr-25p {
    padding-right: 25px;
}

.pb-25p {
    padding-bottom: 25px;
}

.pl-25p {
    padding-left: 25px;
}

.pt-30p {
    padding-top: 30px;
}

.pr-30p {
    padding-right: 30px;
}

.pb-30p {
    padding-bottom: 30px;
}

.pl-30p {
    padding-left: 30px;
}

.pt-35p {
    padding-top: 35px;
}

.pr-35p {
    padding-right: 35px;
}

.pb-35p {
    padding-bottom: 35px;
}

.pl-35p {
    padding-left: 35px;
}

.pt-40p {
    padding-top: 40px;
}

.pr-40p {
    padding-right: 40px;
}

.pb-40p {
    padding-bottom: 40px;
}

.pl-40p {
    padding-left: 40px;
}

.pt-45p {
    padding-top: 45px;
}

.pr-45p {
    padding-right: 45px;
}

.pb-45p {
    padding-bottom: 45px;
}

.pl-45p {
    padding-left: 45px;
}

.pt-50p {
    padding-top: 50px;
}

.pr-50p {
    padding-right: 50px;
}

.pb-50p {
    padding-bottom: 50px;
}

.pl-50p {
    padding-left: 50px;
}

.pt-55p {
    padding-top: 55px;
}

.pr-55p {
    padding-right: 55px;
}

.pb-55p {
    padding-bottom: 55px;
}

.pl-55p {
    padding-left: 55px;
}

.pt-60p {
    padding-top: 60px;
}

.pr-60p {
    padding-right: 60px;
}

.pb-60p {
    padding-bottom: 60px;
}

.pl-60p {
    padding-left: 60px;
}

.pt-65p {
    padding-top: 65px;
}

.pr-65p {
    padding-right: 65px;
}

.pb-65p {
    padding-bottom: 65px;
}

.pl-65p {
    padding-left: 65px;
}

.pt-70p {
    padding-top: 70px;
}

.pr-70p {
    padding-right: 70px;
}

.pb-70p {
    padding-bottom: 70px;
}

.pl-70p {
    padding-left: 70px;
}

.pt-75p {
    padding-top: 75px;
}

.pr-75p {
    padding-right: 75px;
}

.pb-75p {
    padding-bottom: 75px;
}

.pl-75p {
    padding-left: 75px;
}

.pt-80p {
    padding-top: 80px;
}

.pr-80p {
    padding-right: 80px;
}

.pb-80p {
    padding-bottom: 80px;
}

.pl-80p {
    padding-left: 80px;
}

.pt-85p {
    padding-top: 85px;
}

.pr-85p {
    padding-right: 85px;
}

.pb-85p {
    padding-bottom: 85px;
}

.pl-85p {
    padding-left: 85px;
}

.pt-90p {
    padding-top: 90px;
}

.pr-90p {
    padding-right: 90px;
}

.pb-90p {
    padding-bottom: 90px;
}

.pl-90p {
    padding-left: 90px;
}

/* ========== FLEX UTILITIES ========== */

/* Display  */
.flex {
    display: flex;
}

.block {
    display: block;
}

.grid {
    display: grid;
}

.inline-block {
    display: inline-block;
}

.inline {
    display: inline;
}

.display-none {
    display: none;
}

/* Direction */
.flex-row {
    flex-direction: row;
}

.flex-row-reverse {
    flex-direction: row-reverse;
}

.flex-column {
    flex-direction: column;
}

.flex-column-reverse {
    flex-direction: column-reverse;
}

/* Justify Content (horizontal alignment) */
.justify-start {
    justify-content: flex-start;
}

.justify-center {
    justify-content: center;
}

.justify-end {
    justify-content: flex-end;
}

.justify-between {
    justify-content: space-between;
}

.justify-around {
    justify-content: space-around;
}

.justify-evenly {
    justify-content: space-evenly;
}

/* Align Items (vertical alignment) */
.items-start {
    align-items: flex-start;
}

.items-center {
    align-items: center;
}

.items-end {
    align-items: flex-end;
}

.items-stretch {
    align-items: stretch;
}

/* Flex Wrap */
.flex-wrap {
    flex-wrap: wrap;
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse;
}

.flex-nowrap {
    flex-wrap: nowrap;
}

/* Flex Grow/Shrink */
.flex-grow {
    flex-grow: 1;
}

.flex-shrink {
    flex-shrink: 1;
}

.flex-none {
    flex-grow: 0;
    flex-shrink: 0;
}

/* Align Self (for individual flex items) */
.self-start {
    align-self: flex-start;
}

.self-center {
    align-self: center;
}

.self-end {
    align-self: flex-end;
}

.self-stretch {
    align-self: stretch;
}

/* Gap between flex items */
.gap-0 {
    gap: 0;
}

.gap-10p {
    gap: 10px;
}
.gap-15p {
    gap: 15px;
}

.gap-20p {
    gap: 20px;
}

.gap-30p {
    gap: 30px;
}

.gap-40p {
    gap: 40px;
}

.gap-50p {
    gap: 50px;
}




/* ========== Flex Basis UTILITIES ========== */


.basis-auto {
    flex-basis: auto;
}

.basis-1-2 {
    flex-basis: 50%;
}

.basis-1-3 {
    flex-basis: 33.3333%;
}

.basis-1-4 {
    flex-basis: 25%;
}

.basis-full {
    flex-basis: 100%;
}



/* ========== BOX SHADOW UTILITIES ========== */
.shadow-none {
    box-shadow: none;
}

.shadow-sm {
    box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.1);
}

.shadow-md {
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
}

.shadow-lg {
    box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.2);
}

.shadow-xl {
    box-shadow: 0px 12px 24px rgba(0, 0, 0, 0.2);
}


/* ========== TRANSITION UTILITIES ========== */
.transition-none {
    transition: none;
}

.transition-all {
    transition: all 0.3s ease;
}

.transition-color {
    transition: background-color 0.3s ease, color 0.3s ease;
}

.transition-shadow {
    transition: box-shadow 0.3s ease;
}

/* ========== POSITIONING UTILITIES ========== */
.relative {
    position: relative;
}
.fixed {
    position: fixed;
}

.absolute {
    position: absolute;
    top: 20;
    left: 0;
    right: 0;
    bottom: 0;
}

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

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

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

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

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

/* ========== BORDER UTILITIES ========== */



.border-none {
    border: none;
}

.border-collapse {
    border-collapse: collapse;
}

.border-light {
    border: 1px solid var(--color-white);
}

.border-dark {
    border: 1px solid var(--color-black);
}

.border-2p-light {
    border: 2px solid var(--color-white);
}

.border-2p-dark {
    border: 2px solid var(--color-black);
}

.border-light-gray {
    border: 1px solid var(--color-light-gray);
}

.border-2p-light-gray {
    border: 2px solid var(--color-light-gray);
}




.border-primary {
    border: 1px solid var(--color-primary);
}

.border-2p-primary {
    border: 2px solid var(--color-primary);
}

.border-second {
    border: 1px solid var(--color-second);
}

.border-2p-second {
    border: 2px solid var(--color-second);
}

.border-contrast {
    border: 1px solid var(--color-contrast);
}

.border-2p-contrast {
    border: 2px solid var(--color-contrast);
}


/* ========== BORDER RADIUS UTILITIES ========== */
.rounded-none {
    border-radius: 0;
}

.rounded-4 {
    border-radius: 4px;
}

.rounded {
    border-radius: 8px;
}

.rounded-5 {
    border-radius: 5px;
}

.rounded-10 {
    border-radius: 10px;
}
.rounded-30 {
    border-radius: 30px;
}

.rounded-lg {
    border-radius: 12px;
}

.rounded-30 {
    border-radius: 30px;
}

.rounded-full {
    border-radius: 50%;
}



.object-contain {
    object-fit: contain;
}




/* ========== WIDTH UTILITIES ========== */
.w-auto {
    width: auto;
}

.w-fit {
    width: fit-content;
}

.w-100,
.w-full {
    width: 100%;
}

.w-1 {
    width: 1%;
}

.w-2 {
    width: 2%;
}

.w-3 {
    width: 3%;
}

.w-4 {
    width: 4%;
}

.w-5 {
    width: 5%;
}

.w-6 {
    width: 6%;
}

.w-7 {
    width: 7%;
}

.w-8 {
    width: 8%;
}

.w-9 {
    width: 9%;
}

.w-10 {
    width: 10%;
}

.w-11 {
    width: 11%;
}

.w-12 {
    width: 12%;
}

.w-13 {
    width: 13%;
}

.w-14 {
    width: 14%;
}

.w-15 {
    width: 15%;
}

.w-16 {
    width: 16%;
}

.w-17 {
    width: 17%;
}

.w-18 {
    width: 18%;
}

.w-19 {
    width: 19%;
}

.w-20 {
    width: 20%;
}

.w-21 {
    width: 21%;
}

.w-22 {
    width: 22%;
}

.w-23 {
    width: 23%;
}

.w-24 {
    width: 24%;
}

.w-25 {
    width: 25%;
}

.w-26 {
    width: 26%;
}

.w-27 {
    width: 27%;
}

.w-28 {
    width: 28%;
}

.w-29 {
    width: 29%;
}

.w-30 {
    width: 30%;
}

.w-31 {
    width: 31%;
}

.w-32 {
    width: 32%;
}

.w-33 {
    width: 33%;
}

.w-34 {
    width: 34%;
}

.w-35 {
    width: 35%;
}

.w-36 {
    width: 36%;
}

.w-37 {
    width: 37%;
}

.w-38 {
    width: 38%;
}

.w-39 {
    width: 39%;
}

.w-40 {
    width: 40%;
}

.w-41 {
    width: 41%;
}

.w-42 {
    width: 42%;
}

.w-43 {
    width: 43%;
}

.w-44 {
    width: 44%;
}

.w-45 {
    width: 45%;
}

.w-46 {
    width: 46%;
}

.w-47 {
    width: 47%;
}

.w-48 {
    width: 48%;
}

.w-49 {
    width: 49%;
}

.w-50 {
    width: 50%;
}

.w-51 {
    width: 51%;
}

.w-52 {
    width: 52%;
}

.w-53 {
    width: 53%;
}

.w-54 {
    width: 54%;
}

.w-55 {
    width: 55%;
}

.w-56 {
    width: 56%;
}

.w-57 {
    width: 57%;
}

.w-58 {
    width: 58%;
}

.w-59 {
    width: 59%;
}

.w-60 {
    width: 60%;
}

.w-61 {
    width: 61%;
}

.w-62 {
    width: 62%;
}

.w-63 {
    width: 63%;
}

.w-64 {
    width: 64%;
}

.w-65 {
    width: 65%;
}

.w-66 {
    width: 66%;
}

.w-67 {
    width: 67%;
}

.w-68 {
    width: 68%;
}

.w-69 {
    width: 69%;
}

.w-70 {
    width: 70%;
}

.w-71 {
    width: 71%;
}

.w-72 {
    width: 72%;
}

.w-73 {
    width: 73%;
}

.w-74 {
    width: 74%;
}

.w-75 {
    width: 75%;
}

.w-76 {
    width: 76%;
}

.w-77 {
    width: 77%;
}

.w-78 {
    width: 78%;
}

.w-79 {
    width: 79%;
}

.w-80 {
    width: 80%;
}

.w-81 {
    width: 81%;
}

.w-82 {
    width: 82%;
}

.w-83 {
    width: 83%;
}

.w-84 {
    width: 84%;
}

.w-85 {
    width: 85%;
}

.w-86 {
    width: 86%;
}

.w-87 {
    width: 87%;
}

.w-88 {
    width: 88%;
}

.w-89 {
    width: 89%;
}

.w-90 {
    width: 90%;
}

.w-91 {
    width: 91%;
}

.w-92 {
    width: 92%;
}

.w-93 {
    width: 93%;
}

.w-94 {
    width: 94%;
}

.w-95 {
    width: 95%;
}

.w-96 {
    width: 96%;
}

.w-97 {
    width: 97%;
}

.w-98 {
    width: 98%;
}

.w-99 {
    width: 99%;
}

.w-100 {
    width: 100%;
}

.w-1-2 {
    width: 50%;
}

.w-1-3 {
    width: 33.3333%;
}

.w-1-4 {
    width: 25%;
}

.w-3-4 {
    width: 75%;
}


.w-1-5 {
    width: 20%;
}

.w-1-6 {
    width: 16.6667%;
}

.w-1-12 {
    width: 8.3333%;
}

.w-10p {
    width: 10px;
}

.w-20p {
    width: 20px;
}

.w-30p {
    width: 30px;
}

.w-40p {
    width: 40px;
}

.w-50p {
    width: 50px;
}

.w-60p {
    width: 60px;
}

.w-70p {
    width: 70px;
}

.w-80p {
    width: 80px;
}

.w-90p {
    width: 90px;
}

.w-100p {
    width: 100px;
}

.w-110p {
    width: 110px;
}

.w-120p {
    width: 120px;
}

.w-130p {
    width: 130px;
}

.w-140p {
    width: 140px;
}

.w-150p {
    width: 150px;
}

.w-160p {
    width: 160px;
}

.w-170p {
    width: 170px;
}

.w-180p {
    width: 180px;
}

.w-190p {
    width: 190px;
}

.w-200p {
    width: 200px;
}

.w-210p {
    width: 210px;
}

.w-220p {
    width: 220px;
}

.w-230p {
    width: 230px;
}

.w-240p {
    width: 240px;
}

.w-300p {
    width: 300px;
}

.w-350p {
    width: 350px;
}

.w-400p {
    width: 400px;
}

.w-450p {
    width: 450px;
}

/* ========== HEIGHT UTILITIES ========== */
.h-auto {
    height: auto;
}

.h-fit {
    height: fit-content;
}

.h-1vh {
    height: 1vh;
}

.h-2vh {
    height: 2vh;
}

.h-3vh {
    height: 3vh;
}

.h-4vh {
    height: 4vh;
}

.h-5vh {
    height: 5vh;
}

.h-6vh {
    height: 6vh;
}

.h-7vh {
    height: 7vh;
}

.h-8vh {
    height: 8vh;
}

.h-9vh {
    height: 9vh;
}

.h-10vh {
    height: 10vh;
}

.h-11vh {
    height: 11vh;
}

.h-12vh {
    height: 12vh;
}

.h-13vh {
    height: 13vh;
}

.h-14vh {
    height: 14vh;
}

.h-15vh {
    height: 15vh;
}

.h-16vh {
    height: 16vh;
}

.h-17vh {
    height: 17vh;
}

.h-18vh {
    height: 18vh;
}

.h-19vh {
    height: 19vh;
}

.h-20vh {
    height: 20vh;
}

.h-21vh {
    height: 21vh;
}

.h-22vh {
    height: 22vh;
}

.h-23vh {
    height: 23vh;
}

.h-24vh {
    height: 24vh;
}

.h-25vh {
    height: 25vh;
}

.h-26vh {
    height: 26vh;
}

.h-27vh {
    height: 27vh;
}

.h-28vh {
    height: 28vh;
}

.h-29vh {
    height: 29vh;
}

.h-30vh {
    height: 30vh;
}

.h-31vh {
    height: 31vh;
}

.h-32vh {
    height: 32vh;
}

.h-33vh {
    height: 33vh;
}

.h-34vh {
    height: 34vh;
}

.h-35vh {
    height: 35vh;
}

.h-36vh {
    height: 36vh;
}

.h-37vh {
    height: 37vh;
}

.h-38vh {
    height: 38vh;
}

.h-39vh {
    height: 39vh;
}

.h-40vh {
    height: 40vh;
}

.h-41vh {
    height: 41vh;
}

.h-42vh {
    height: 42vh;
}

.h-43vh {
    height: 43vh;
}

.h-44vh {
    height: 44vh;
}

.h-45vh {
    height: 45vh;
}

.h-46vh {
    height: 46vh;
}

.h-47vh {
    height: 47vh;
}

.h-48vh {
    height: 48vh;
}

.h-49vh {
    height: 49vh;
}

.h-50vh {
    height: 50vh;
}

.h-51vh {
    height: 51vh;
}

.h-52vh {
    height: 52vh;
}

.h-53vh {
    height: 53vh;
}

.h-54vh {
    height: 54vh;
}

.h-55vh {
    height: 55vh;
}

.h-56vh {
    height: 56vh;
}

.h-57vh {
    height: 57vh;
}

.h-58vh {
    height: 58vh;
}

.h-59vh {
    height: 59vh;
}

.h-60vh {
    height: 60vh;
}

.h-61vh {
    height: 61vh;
}

.h-62vh {
    height: 62vh;
}

.h-63vh {
    height: 63vh;
}

.h-64vh {
    height: 64vh;
}

.h-65vh {
    height: 65vh;
}

.h-66vh {
    height: 66vh;
}

.h-67vh {
    height: 67vh;
}

.h-68vh {
    height: 68vh;
}

.h-69vh {
    height: 69vh;
}

.h-70vh {
    height: 70vh;
}

.h-71vh {
    height: 71vh;
}

.h-72vh {
    height: 72vh;
}

.h-73vh {
    height: 73vh;
}

.h-74vh {
    height: 74vh;
}

.h-75vh {
    height: 75vh;
}

.h-76vh {
    height: 76vh;
}

.h-77vh {
    height: 77vh;
}

.h-78vh {
    height: 78vh;
}

.h-79vh {
    height: 79vh;
}

.h-80vh {
    height: 80vh;
}

.h-81vh {
    height: 81vh;
}

.h-82vh {
    height: 82vh;
}

.h-83vh {
    height: 83vh;
}

.h-84vh {
    height: 84vh;
}

.h-85vh {
    height: 85vh;
}

.h-86vh {
    height: 86vh;
}

.h-87vh {
    height: 87vh;
}

.h-88vh {
    height: 88vh;
}

.h-89vh {
    height: 89vh;
}

.h-90vh {
    height: 90vh;
}

.h-91vh {
    height: 91vh;
}

.h-92vh {
    height: 92vh;
}

.h-93vh {
    height: 93vh;
}

.h-94vh {
    height: 94vh;
}

.h-95vh {
    height: 95vh;
}

.h-96vh {
    height: 96vh;
}

.h-97vh {
    height: 97vh;
}

.h-98vh {
    height: 98vh;
}

.h-99vh {
    height: 99vh;
}

.h-100vh {
    height: 100vh;
}

.h-1-2 {
    height: 50%;
}

.h-1-3 {
    height: 33.3333%;
}

.h-1-4 {
    height: 25%;
}

.h-full {
    height: 100%;
}

.h-1 {
    height: 1%;
}

.h-2 {
    height: 2%;
}

.h-3 {
    height: 3%;
}

.h-4 {
    height: 4%;
}

.h-5 {
    height: 5%;
}

.h-6 {
    height: 6%;
}

.h-7 {
    height: 7%;
}

.h-8 {
    height: 8%;
}

.h-9 {
    height: 9%;
}

.h-10 {
    height: 10%;
}

.h-11 {
    height: 11%;
}

.h-12 {
    height: 12%;
}

.h-13 {
    height: 13%;
}

.h-14 {
    height: 14%;
}

.h-15 {
    height: 15%;
}

.h-16 {
    height: 16%;
}

.h-17 {
    height: 17%;
}

.h-18 {
    height: 18%;
}

.h-19 {
    height: 19%;
}

.h-20 {
    height: 20%;
}

.h-21 {
    height: 21%;
}

.h-22 {
    height: 22%;
}

.h-23 {
    height: 23%;
}

.h-24 {
    height: 24%;
}

.h-25 {
    height: 25%;
}

.h-26 {
    height: 26%;
}

.h-27 {
    height: 27%;
}

.h-28 {
    height: 28%;
}

.h-29 {
    height: 29%;
}

.h-30 {
    height: 30%;
}

.h-31 {
    height: 31%;
}

.h-32 {
    height: 32%;
}

.h-33 {
    height: 33%;
}

.h-34 {
    height: 34%;
}

.h-35 {
    height: 35%;
}

.h-36 {
    height: 36%;
}

.h-37 {
    height: 37%;
}

.h-38 {
    height: 38%;
}

.h-39 {
    height: 39%;
}

.h-40 {
    height: 40%;
}

.h-41 {
    height: 41%;
}

.h-42 {
    height: 42%;
}

.h-43 {
    height: 43%;
}

.h-44 {
    height: 44%;
}

.h-45 {
    height: 45%;
}

.h-46 {
    height: 46%;
}

.h-47 {
    height: 47%;
}

.h-48 {
    height: 48%;
}

.h-49 {
    height: 49%;
}

.h-50 {
    height: 50%;
}

.h-51 {
    height: 51%;
}

.h-52 {
    height: 52%;
}

.h-53 {
    height: 53%;
}

.h-54 {
    height: 54%;
}

.h-55 {
    height: 55%;
}

.h-56 {
    height: 56%;
}

.h-57 {
    height: 57%;
}

.h-58 {
    height: 58%;
}

.h-59 {
    height: 59%;
}

.h-60 {
    height: 60%;
}

.h-61 {
    height: 61%;
}

.h-62 {
    height: 62%;
}

.h-63 {
    height: 63%;
}

.h-64 {
    height: 64%;
}

.h-65 {
    height: 65%;
}

.h-66 {
    height: 66%;
}

.h-67 {
    height: 67%;
}

.h-68 {
    height: 68%;
}

.h-69 {
    height: 69%;
}

.h-70 {
    height: 70%;
}

.h-71 {
    height: 71%;
}

.h-72 {
    height: 72%;
}

.h-73 {
    height: 73%;
}

.h-74 {
    height: 74%;
}

.h-75 {
    height: 75%;
}

.h-76 {
    height: 76%;
}

.h-77 {
    height: 77%;
}

.h-78 {
    height: 78%;
}

.h-79 {
    height: 79%;
}

.h-80 {
    height: 80%;
}

.h-81 {
    height: 81%;
}

.h-82 {
    height: 82%;
}

.h-83 {
    height: 83%;
}

.h-84 {
    height: 84%;
}

.h-85 {
    height: 85%;
}

.h-86 {
    height: 86%;
}

.h-87 {
    height: 87%;
}

.h-88 {
    height: 88%;
}

.h-89 {
    height: 89%;
}

.h-90 {
    height: 90%;
}

.h-91 {
    height: 91%;
}

.h-92 {
    height: 92%;
}

.h-93 {
    height: 93%;
}

.h-94 {
    height: 94%;
}

.h-95 {
    height: 95%;
}

.h-96 {
    height: 96%;
}

.h-97 {
    height: 97%;
}

.h-98 {
    height: 98%;
}

.h-99 {
    height: 99%;
}

.h-100 {
    height: 100%;
}




.h-10p {
    height: 10px;
}

.h-20p {
    height: 20px;
}

.h-25p {
    height: 25px;
}

.h-30p {
    height: 30px;
}

.h-35p {
    height: 35px;
}

.h-40p {
    height: 40px;
}

.h-50p {
    height: 50px;
}

.h-60p {
    height: 60px;
}

.h-70p {
    height: 70px;
}

.h-80p {
    height: 80px;
}

.h-90p {
    height: 90px;
}

.h-100p {
    height: 100px;
}

.h-110p {
    height: 110px;
}

.h-120p {
    height: 120px;
}

.h-130p {
    height: 130px;
}

.h-140p {
    height: 140px;
}

.h-150p {
    height: 150px;
}

.h-160p {
    height: 160px;
}

.h-170p {
    height: 170px;
}

.h-180p {
    height: 180px;
}

.h-190p {
    height: 190px;
}

.h-200p {
    height: 200px;
}


/* ========== BACKGROUND UTILITIES ========== */

.bg-primary {
    background-color: var(--color-primary);
    color: var(--color-second);
    ;
}

.bg-second {
    background-color: var(--color-second);
    color: var(--color-primary);
    ;

}

.bg-contrast {
    background-color: var(--color-contrast);
    color: var(--color-primary);
    ;

}

.bg-light {
    background-color: var(--color-light);
    color: black;
}

.bg-light {
    background-color: var(--color-light);
    color: black;
}

.bg-dark {
    background-color: var(--color-dark);
    color: #ffffff;
}

.bg-black {
    background-color: var(--color-black);
    color: #ffffff;
}

.bg-white {
    background-color: var(--color-white);
    color: #ffffff;
}

.bg-red {
    background-color: var(--color-red);
    color: #ffffff;
}

.bg-green {
    background-color: var(--color-green);
    color: #ffffff;
}

.bg-yellow {
    background-color: var(--color-yellow);
    color: #ffffff;
}

.bg-blue {
    background-color: var(--color-blue);
    color: #ffffff;
}

.bg-dark-blue {
    background-color: var(--color-dark-blue);
    color: #ffffff;
}

.bg-none {
    background-color: transparent;
}






/* ========== COLOR UTILITIES ========== */

.text-primary {
    color: var(--color-primary);
}

.text-second {
    color: var(--color-second);
}

.text-contrast {
    color: var(--color-contrast);
}

.text-dark {
    color: var(--color-dark);
}

.text-black {
    color: var(--color-black);
}

.text-white {
    color: var(--color-white);
}

.text-red {
    color: var(--color-red);
}

.text-green {
    color: var(--color-green);
}

.text-blue {
    color: var(--color-blue);
}




/* ========== TEXT SIZE UTILITIES ========== */
.text-xs {
    font-size: 12px;
    /* 0.75rem */
}

.text-sm {
    font-size: 14px;
    /* 0.875rem */
}

.text-base {
    font-size: 16px;
    /* 1rem */
}

.text-lg {
    font-size: 18px;
    /* 1.125rem */
}

.text-xl {
    font-size: 20px;
    /* 1.25rem */
}

.text-2xl {
    font-size: 24px;
    /* 1.5rem */
}

.text-3xl {
    font-size: 30px;
    /* 1.875rem */
}

.text-4xl {
    font-size: 36px;
    /* 2.25rem */
}

.text-5xl {
    font-size: 48px;
    /* 3rem */
}

.text-2-5vw {
    font-size: 2.5vw;
}

.text-1vw {
    font-size: 1vw;
}

.text-min-vw {
    font-size: 0.8vw;
}

.text-7vw {
    font-size: 7vw;
}

/* ========== FONT WEIGHT UTILITIES ========== */
.font-thin {
    font-weight: 100;
}

.font-extralight {
    font-weight: 200;
}

.font-light {
    font-weight: 300;
}

.font-normal {
    font-weight: 400;
}

.font-medium {
    font-weight: 500;
}

.font-semibold {
    font-weight: 600;
}

.font-bold {
    font-weight: 700;
}

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

.font-black {
    font-weight: 900;
}

/* ========== TEXT DECORATION UTILITIES ========== */
.underline {
    text-decoration: underline;
}

.underline-primary {
    text-decoration: underline var(--color-primary);
}

.underline-second {
    text-decoration: underline var(--color-second);
}

.underline-contrast {
    text-decoration: underline var(--color-contrast);
}

.underline-offset-5 {
    text-underline-offset: 5px;
}

.underline-offset-10 {
    text-underline-offset: 10px;
}

.underline-offset-15 {
    text-underline-offset: 15px;
}

.line-through {
    text-decoration: line-through;
}

.no-underline {
    text-decoration: none;
}

/* ========== TEXT TRANSFORM UTILITIES ========== */
.uppercase {
    text-transform: uppercase;
}

.lowercase {
    text-transform: lowercase;
}

.capitalize {
    text-transform: capitalize;
}

/* ========== LINE HEIGHT UTILITIES ========== */
.leading-tight {
    line-height: 20px;
    /* 1.25 */
}

.leading-normal {
    line-height: 24px;
    /* 1.5 */
}

.leading-loose {
    line-height: 28px;
    /* 1.75 */
}


/* ========== CURSOR UTILITIES ========== */
.cursor-pointer {
    cursor: pointer;
}

.cursor-default {
    cursor: default;
}


.text-0-1vw {
    font-size: 0.1vw;
}

.text-0-2vw {
    font-size: 0.2vw;
}

.text-0-3vw {
    font-size: 0.3vw;
}

.text-0-4vw {
    font-size: 0.4vw;
}

.text-0-5vw {
    font-size: 0.5vw;
}

.text-0-6vw {
    font-size: 0.6vw;
}

.text-0-7vw {
    font-size: 0.7vw;
}

.text-0-8vw {
    font-size: 0.8vw;
}

.text-0-9vw {
    font-size: 0.9vw;
}

.text-1vw {
    font-size: 1vw;
}

.text-1-1vw {
    font-size: 1.1vw;
}

.text-1-2vw {
    font-size: 1.2vw;
}

.text-1-3vw {
    font-size: 1.3vw;
}

.text-1-4vw {
    font-size: 1.4vw;
}

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

.text-1-6vw {
    font-size: 1.6vw;
}

.text-1-7vw {
    font-size: 1.7vw;
}

.text-1-8vw {
    font-size: 1.8vw;
}

.text-1-9vw {
    font-size: 1.9vw;
}

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

.text-2-1vw {
    font-size: 2.1vw;
}

.text-2-2vw {
    font-size: 2.2vw;
}

.text-2-3vw {
    font-size: 2.3vw;
}

.text-2-4vw {
    font-size: 2.4vw;
}

.text-2-5vw {
    font-size: 2.5vw;
}

.text-2-6vw {
    font-size: 2.6vw;
}

.text-2-7vw {
    font-size: 2.7vw;
}

.text-2-8vw {
    font-size: 2.8vw;
}

.text-2-9vw {
    font-size: 2.9vw;
}

.text-3vw {
    font-size: 3vw;
}

.text-3-1vw {
    font-size: 3.1vw;
}

.text-3-2vw {
    font-size: 3.2vw;
}

.text-3-3vw {
    font-size: 3.3vw;
}

.text-3-4vw {
    font-size: 3.4vw;
}

.text-3-5vw {
    font-size: 3.5vw;
}

.text-3-6vw {
    font-size: 3.6vw;
}

.text-3-7vw {
    font-size: 3.7vw;
}

.text-3-8vw {
    font-size: 3.8vw;
}

.text-3-9vw {
    font-size: 3.9vw;
}

.text-4vw {
    font-size: 4vw;
}

.text-4-1vw {
    font-size: 4.1vw;
}

.text-4-2vw {
    font-size: 4.2vw;
}

.text-4-3vw {
    font-size: 4.3vw;
}

.text-4-4vw {
    font-size: 4.4vw;
}

.text-4-5vw {
    font-size: 4.5vw;
}

.text-4-6vw {
    font-size: 4.6vw;
}

.text-4-7vw {
    font-size: 4.7vw;
}

.text-4-8vw {
    font-size: 4.8vw;
}

.text-4-9vw {
    font-size: 4.9vw;
}

.text-5vw {
    font-size: 5vw;
}

.text-5-1vw {
    font-size: 5.1vw;
}

.text-5-2vw {
    font-size: 5.2vw;
}

.text-5-3vw {
    font-size: 5.3vw;
}

.text-5-4vw {
    font-size: 5.4vw;
}

.text-5-5vw {
    font-size: 5.5vw;
}

.text-5-6vw {
    font-size: 5.6vw;
}

.text-5-7vw {
    font-size: 5.7vw;
}

.text-5-8vw {
    font-size: 5.8vw;
}

.text-5-9vw {
    font-size: 5.9vw;
}

.text-6vw {
    font-size: 6vw;
}

.text-6-1vw {
    font-size: 6.1vw;
}

.text-6-2vw {
    font-size: 6.2vw;
}

.text-6-3vw {
    font-size: 6.3vw;
}

.text-6-4vw {
    font-size: 6.4vw;
}

.text-6-5vw {
    font-size: 6.5vw;
}

.text-6-6vw {
    font-size: 6.6vw;
}

.text-6-7vw {
    font-size: 6.7vw;
}

.text-6-8vw {
    font-size: 6.8vw;
}

.text-6-9vw {
    font-size: 6.9vw;
}

.text-7vw {
    font-size: 7vw;
}

.text-7-1vw {
    font-size: 7.1vw;
}

.text-7-2vw {
    font-size: 7.2vw;
}

.text-7-3vw {
    font-size: 7.3vw;
}

.text-7-4vw {
    font-size: 7.4vw;
}

.text-7-5vw {
    font-size: 7.5vw;
}

.text-7-6vw {
    font-size: 7.6vw;
}

.text-7-7vw {
    font-size: 7.7vw;
}

.text-7-8vw {
    font-size: 7.8vw;
}

.text-7-9vw {
    font-size: 7.9vw;
}

.text-8vw {
    font-size: 8vw;
}

.text-8-1vw {
    font-size: 8.1vw;
}

.text-8-2vw {
    font-size: 8.2vw;
}

.text-8-3vw {
    font-size: 8.3vw;
}

.text-8-4vw {
    font-size: 8.4vw;
}

.text-8-5vw {
    font-size: 8.5vw;
}

.text-8-6vw {
    font-size: 8.6vw;
}

.text-8-7vw {
    font-size: 8.7vw;
}

.text-8-8vw {
    font-size: 8.8vw;
}

.text-8-9vw {
    font-size: 8.9vw;
}

.text-9vw {
    font-size: 9vw;
}

.text-9-1vw {
    font-size: 9.1vw;
}

.text-9-2vw {
    font-size: 9.2vw;
}

.text-9-3vw {
    font-size: 9.3vw;
}

.text-9-4vw {
    font-size: 9.4vw;
}

.text-9-5vw {
    font-size: 9.5vw;
}

.text-9-6vw {
    font-size: 9.6vw;
}

.text-9-7vw {
    font-size: 9.7vw;
}

.text-9-8vw {
    font-size: 9.8vw;
}

.text-9-9vw {
    font-size: 9.9vw;
}

.text-10vw {
    font-size: 10vw;
}

/* rgb(253, 68, 63) */
/* rgb(113, 183, 234) */

.hide-overflow {
    overflow: hidden;
}
.auto-overflow {
    overflow: auto;
}

.float-right{
    float: right;
}
.float-left{
    float: left;
}