:root {
    --gap-size: 30px;

    --font100: clamp(46px, 5.2vw, 100px);
    --font90: clamp(46px, 4.7vw, 90px);
    --font75: clamp(42px, 3.9vw, 75px);
    --font70: clamp(42px, 3.67vw, 75px);
    --font60: clamp(40px, 3.1vw, 60px);
    --font52: clamp(32px, 2.71vw, 52px);
    --font51: clamp(32px, 2.66vw, 51px);
    --font50: clamp(31px, 2.6vw, 50px);
    --font49: clamp(31px, 2.55vw, 49px);
    --font48: clamp(30px, 2.5vw, 48px);
    --font47: clamp(30px, 2.45vw, 47px);
    --font46: clamp(30px, 2.4vw, 46px);
    --font45: clamp(30px, 2.34vw, 45px);
    --font44: clamp(29px, 2.29vw, 44px);
    --font43: clamp(29px, 2.23vw, 43px);
    --font42: clamp(28px, 2.19vw, 42px);
    --font41: clamp(28px, 2.13vw, 41px);
    --font40: clamp(27px, 2.08vw, 40px);
    --font39: clamp(27px, 2.03vw, 39px);
    --font38: clamp(26px, 1.98vw, 38px);
    --font37: clamp(26px, 1.93vw, 37px);
    --font36: clamp(26px, 1.88vw, 36px);
    --font35: clamp(26px, 1.82vw, 35px);
    --font34: clamp(25px, 2.35vw, 34px); /* done */
    --font33: clamp(25px, 1.72vw, 33px);
    --font32: clamp(24px, 1.67vw, 32px);
    --font31: clamp(24px, 1.61vw, 31px);
    --font30: clamp(23px, 1.56vw, 30px);
    --font29: clamp(23px, 1.51vw, 29px);
    --font28: clamp(22px, 1.46vw, 28px);
    --font27: clamp(21px, 1.4vw, 27px);
    --font26: clamp(20px, 1.88vw, 26px); /* done */
    --font25: clamp(19px, 1.3vw, 25px);
    --font24: clamp(18px, 1.57vw, 24px); /* done */
    --font23: clamp(18px, 1.20vw, 23px);
    --font22: clamp(17px, 1.561vw, 22px); /* done */
    --font21: clamp(17px, 1.41vw, 21px); /* done */
    --font20: clamp(16px, 1.33vw, 20px); /* done */
    --font19: clamp(15px, 0.99vw, 19px);
    --font18: clamp(15px, 0.94vw, 18px);
    --font17: clamp(14px, 1.1vw, 17px); /* done */
    --font16: clamp(14px, 1vw, 16px); /* done */
    --font15: clamp(12px, 1.02vw, 15px); /* done */
    --font14: clamp(12px, 0.74vw, 14px); /* done */
    --font12: clamp(10px, 0.7vw, 12px); /* done */

    --white: #fff;
    --black: #000;
}

*{
    padding: 0;
    margin: 0;
    transition: 0.3s ease-out;
    -moz-transition:    0.3s ease-out;
    -webkit-transition: 0.3s ease-out;
    -o-transition:      0.3s ease-out;
}
html{
    font-size: 18px;
}

.ultra-aspect{
    aspect-ratio: 16/9;
}

html{
    font-size: 18px;
    scroll-behavior: smooth;
    scrollbar-color: #0081A7 #EFEFEF;
    scrollbar-width: auto;
}

::-webkit-scrollbar-track {
    background-color: #EFEFEF;
}

::-webkit-scrollbar {
    width: 15px;
    scroll-behavior: smooth;
}

::-webkit-scrollbar-thumb {
    background-color: #0081A7;
    border: 0px solid transparent;
    border-radius: 0px;
    background-clip: content-box;
} 

.container{
    max-width: 1920px;
    background-color: #fff;
    margin: 0 auto;
}

.col-2, .col-3, .col-4, .col-5, .col-single-drop, .col-48, .col-84{
    display: grid;
    gap: var(--gap-size);
}

.col-2{
    grid-template-columns: repeat(2, 1fr);
}

.col-3{
    grid-template-columns: repeat(3, 1fr);
}

.col-4{
    grid-template-columns: repeat(4, 1fr);
}

.col-5{
    grid-template-columns: repeat(5, 1fr);
}

.col-48{
    grid-template-columns: 1fr 2fr;
}

.col-84{
    grid-template-columns: 2fr 1fr;
}

.col-single-drop{
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}

button:focus, button:active{
    border: none;
    outline: none;
}

img{
    max-width: 100%;
    display: block;
}

.ultra-fullsize-img{
    width: 100%;
    object-fit: cover;
}

.ultra-fullsize-backgroundimage{
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important;
}

.ultra-allinone{
    display: grid;
}

.ultra-allinone>*{
    grid-row: 1;
    grid-column: 1;
}

hr{
    border: none;
    height: 1px;
    background-color: #000;
}

.kill-deco{
    text-decoration: none;
    color: inherit;
}


@media (max-width: 1500px) {
    .col-5{
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 1200px) {
    .col-5{
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 1050px) {
     .col-3, .col-4, .col-5{
        grid-template-columns: repeat(2, 1fr);
    }
    
}

@media (max-width: 700px) {
    .col-2, .col-3, .col-4, .col-5{
        grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
    }
}

@media (max-width: 500px) {
    .col-2, .col-3, .col-4, .col-5{
        grid-template-columns: repeat(auto-fit, minmax(251px, 1fr));
    }
}

