/*mainstyle is a css file which contains a code common to the whole website
/*reset css, ignore*/
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}
/*universal code*/
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    color: #E9ECEF;
    font-family: "Lexend", sans-serif;
    background-color: #121417;
}
article {
    margin: 0 2rem;
}
.header {
    display: flex;
    background-color:#D70427;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    position:relative;
}
.header-left {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-shrink: 0;
}
.main{
    padding: 1rem;
    flex: 1;
}
/*header*/
.header__title {
    font-size: clamp(1.8rem, 3.5vw, 3rem); /* scales from mobile to desktop */
    font-weight:500;
    flex-shrink: 1;
    margin-left: 2.5vw;
}
.header__logo {
    height: clamp(3rem, 6vw, 4.25rem);
    margin: 0;
}
.menubtn {
    display:none;
}
.header__text{
    display:block;
    font-size: clamp(1rem, 1.75vw, 1.5rem);
    font-weight:400;
    flex-shrink: 0;
}
.headerbuttons-container{
    height: calc(clamp(3.5rem, 7.5vw, 4.5rem));
    display:flex;
    align-items: center;
    z-index: 128;
    background-color: #D70427;
}
.headerbutton{
    padding: 0 2.5vw;
    position: relative;
    font-size: clamp(1.5rem, 9vw, 2.5rem);
}
/*nav menu*/
.nav-menu{
    display:grid;
    position: absolute;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr 1fr;
    top: 100%;
    right:0;
    height: 25vh;
    background-color: #D70427;
    z-index: 128;
}
.nav-menu__text{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(1.25rem, 1.25vw, 2rem);
    font-weight:400;
    color: #fff;
    padding: 0 1rem;
    background: #D70427;
    background: linear-gradient(180deg,#D70427 0%, #c80324 100%);
}
/*skill level tags*/
.tagsContainer{
    margin: 1.5rem;
    display:flex;
    flex-wrap: wrap;
}
.tag {
    font-size: 1.5rem;
    font-weight:700;
    border-radius: .5rem;
    padding: .3rem;
    margin: .25rem .75rem .25rem .25rem;
    color: #fff;
    cursor: default;
    user-select: none;
}
/*tags por dificultad*/
.todos{background-color: #E9ECEF;color:#121417}
.principiante{background-color: #2e7d32;}
.intermedio{background-color: #ef6c00;}
.avanzado {background-color: #550011;}
.extremo{background-color: #220055;}

/*tags por tipo*/
.fullguide{background-color: #AA8800;}
.optimizing{background-color: #8900b3;}

/*blogs text*/
.main__title{
    margin:1.5rem;
    font-size: clamp(2rem, 3.5vw, 4rem);
    font-weight:600;
}
.main__header{
    font-size: clamp(2rem, 3.5vw, 4rem);
    margin: 1.5rem 1.6rem .5rem;
    font-weight: 600;
    color: #fff;
}
.main__text, .main__list-element{
    margin: 0 1.6rem .875rem;
    font-size: clamp(1rem, 1.75vw, 2rem);
    line-height: 1.6;
    font-weight: 400;
}
strong, b {
    font-weight: 600;
    color: #fff;
}
.main__subtitle{
    font-size: clamp(1.25rem, 2.5vw, 2.5rem);
    margin: 2.5rem 1.6rem .5rem;
    font-weight: 600;
    color: #fff;
}
ul, ol{
    border-left: #f53252 2px solid;
    padding-left: 1.5rem;
}
ul {
  list-style: disc;
}
ol{
    list-style: decimal;
}
.textlink {
    color:#ff3822;
    text-decoration: none;
    transition: color 0.3s, text-shadow 0.3s;
}
.textlink:hover, a:focus {
    color:#ff412c;
    text-decoration: underline;
    text-shadow: #ffd7d355 0 0 2px;
}
a b {
    color:inherit;
}
.blanklink, .blanklink:hover, .blanklink:focus {
  color: inherit;        /* take the color of the parent element */
  text-decoration: none; /* remove underline */
  cursor: pointer;       /* optional: makes it feel clickable */
}
/*footer*/
.footer{
    display: flex;
    background-color:#D70427;
    align-items: center;
    justify-content: space-around;
    flex-wrap: wrap;
    padding: .5rem 1rem;
    gap: 1rem;
}
.footer__text{
    font-size: clamp(1rem, 1.5vw, 1.5rem);
    font-weight:500;
}
/*properties*/
.centered-text{
    text-align: center;
}
.invisible{
    visibility:hidden;
}
.not-there{
    display:none;
}
/*Blogs*/
.blogImg{
    float:right;
    width:40vw;
    margin: 0 2rem 2rem;
    border-radius: 4vw;
}
/*icons*/
i{
    font-size: clamp(1rem, 7vw, 2.5rem);
}
/*wee fix*/
button, input, select, textarea {
    font-family: "Lexend", sans-serif;
}
/*DARK*/
.dark{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.6);
    pointer-events: none;
    z-index: 64;
}
/*responsive design*/
@media (max-width: 768px){
    html {
        font-size: 14px;
    }
    .tag{
        font-size: 1.25rem;
    }
    article{
        margin: 0;
    }
    .home {
        display: none;
    }
    .menubtn {
        display: block;
    }
    .header__text{
        display: none;
    }
    .littlespecialclass-one{
        display: block;
    }
}
@media (max-width: 480px) {
    html {
        font-size: 13px;
    }
}
@media (max-width: 360px) {
    html {
        font-size: 12px;
    }
    .header {
        padding: 0.5rem 1rem;
    }
}