html {
    scroll-behavior: smooth;
}

/* Shell */
body {
  font-family: "Raleway", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  display: grid;
  grid-template-columns: 1fr;
  min-height: 100vh;
  text-align: center;
  margin: 1rem 2rem;
}
aside {
    display: flex;
    justify-content: space-around;
}
aside:first-of-type {
  order: 1;
}
header {
  order: 2;
}
main {
  order: 3;
}
footer {
  order: 4;
}
aside:last-of-type {
  order: 5;
}
@media (min-width: 778px) {
  body {
    grid-template-columns: 250px 1fr 250px;
  }
  aside {
    flex-direction: column;
    align-items: center;
  }
  aside:first-of-type {
    grid-column: 1;
    grid-row: 1 / 4;
    order: unset;
  }
  aside:last-of-type {
    grid-column: 3;
    grid-row: 1 / 4;
    order: unset;
  }
  header,
  main,
  footer {
    grid-column: 2;
    order: unset;
  }
}
/* /Shell */

header {
    background-color: #fff;
    padding: 1.5rem;
}
.header__title {
    display: inline-flex;
    align-items: center;
    font-size: 2rem;
    font-weight: bold;
}
.pixel, .grade {
    color: red;
}

.dot {
    position: relative;
    width: 8px;
    height: 8px;
    background-color: #000;
}
.dot--1 {
    top: 8px;
    margin-left: 8px;
    background-color: #37cff4;
}
.dot--2 {
    margin-right: 6px;
    background-color: #2dd695;
}

.section--greeting {
    font-size: 1rem;
    color: red;
    margin-bottom: 2rem;
}
.section--examples .section__elem-content {
    margin: 2rem 0;
}

.footer {
    margin: 2rem 0;
}
.footer__title {
    font-size: 1.4rem;
}
.footer__content {
    display: flex;
    justify-content: space-around;
    margin: 2rem 0;
}
@media (min-width: 778px) {
    .footer {
        margin-bottom: 0;
    }
}

.btn {
    display: inline-block;
    text-decoration: none;
    padding: 0.5rem 1rem;
    color: red;
    border: 2px solid red;
    border-radius: 2rem;
    transition: all 0.3s;
}
.btn:hover {
    background-color: red;
    color: #fff;
}
.btn--link-to-contacts {
    margin: 2rem;
}

.logo {
    width: 18px;
    margin: 4px 6px 0 8px;
}
.example-img {
    width: 250px;
    height: 250px;
    object-fit: cover;
    border-radius: 50%;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);
    transition: all 0.5s;
}
.example-img:hover {
    transform: scale(1.05);
}

.flower {
    width: 60px;
}
@media (min-width: 778px) {
    .flower {
        width: 200px;
    }
}

.spin {
    animation-name: constantSpin;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}
.spin--high {
    animation-duration: 2s;
}
.spin--medium {
    animation-duration: 3s;
}
.spin--low {
    animation-duration: 4s;
}
.spin--reverse {
    animation-direction: reverse;
}

@keyframes constantSpin {
    from { 
        transform: rotate(0deg); 
    }
    to { 
        transform: rotate(360deg); 
    }
}
