/* NATIVE */

:root {
  --theme-color-one:#63afd4;
  --color-black:#000;
  --color-grey:#9e9e9e;
  --color-light-grey:#f1f1f1;
  --color-white:#fff;
}

@font-face {
  font-family:'Lato' !important;
  src:url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');
  font-weight: 100;
  font-style: normal;
}

* { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
  scroll-padding-top: auto;
  height:100%;
  width:100%;
}

body {
  overflow-x: hidden;
  overflow-y: auto;  
  font-family: 'Lato',Verdana,sans-serif;
}

header {
  padding: 32px 0;
  display: grid;
  grid-template-columns: 1fr;
}

header > div > :is(h1, img, p){
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

header > div > h1 {
  font-size:32px;
  text-transform:uppercase;
  padding: 16px 0;
}

header > div > img {
  width:100%;
  height:100%;
  object-fit: cover;
}

header > div > p {
  font-size: 16px;
  padding: 16px 0;
}

main > section {
  padding: 32px 0;
}



/* Structure */

body {
  background-color:var(--color-white);
}

main > section:nth-child(even){
  background-color:var(--color-light-grey);
}


/* THEME CLASES*/

/* Colors */

.theme-bgColor-01, .hover-theme-bgColor-01:hover {
  background-color:var(--theme-color-one);
  color:var(--color-white);
}

.theme-color-01, .hover-theme-color-01:hover {
  color: var(--theme-color-one);
}

.white, .hover-white:hover {
  background-color:var(--color-white)!important;
  color:var(--color-black)!important
}

.grey, .hover-grey:hover {
  background-color:var(--color-grey)!important;
  color:var(--color-white)!important;
}

/* Structure */

.d-sm-block, .d-lg-block {
  display:none;
}

@media (width <= 576px) {
  .d-sm {
    display:block;
  }
}

.row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1rem;
}

.col-center {
  display: grid;
  place-items: center;
}

/* Container */
.container {
  width:100%;
  max-width: 1200px;
  margin: auto;
}

.content {
  padding: 64px 8px !important;
}

.header-title {
  font-size:64px !important;
  margin: 16px !important;
}

.header-description {
  font-size: 16px !important;
  margin: 16px !important;
  text-align: center;
}

.h1 {
  font-weight: 400 !important;
  margin: 16px !important;
}

.hover-opacity:hover {
  opacity: 0.60;
}

.link {
  text-decoration: none;
}

.disabled {
  cursor: not-allowed;
  opacity: 0.3;
  pointer-events: none;
}

/* Display only mobile */
@media (width <= 576px) {
  .d-sm-block {
    display:block;
  }
}

/* Desktop exclude mobile */
@media (width >= 576px) {
  .d-lg-block {
    display:block;
  }
}