:root {
  --bg-color: #fff;
  --primary-color: #2971f9;
  --dark-color: #010028;
}

@font-face {
  font-family: "socicon";
  src: url("../fonts/socicon.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  text-transform: initial;
  font-display: swap;
}

html {
  height: 100dvh;
}

body {
  background-attachment: fixed;
  background-color: var(--bg-color);
  background-repeat: no-repeat;
  color: var(--primary-color);
  font-size: 14px;
  margin: 0;
  padding: 0;

  @media (min-width: 274px) {
    background-image: url("../images/bg_tr_l.png");
    background-position: top right;
  }

  @media (min-width: 1000px) {
    background-image: url("../images/bg_bl_l.png"), url("../images/bg_tr_l.png");
    background-position: bottom left, top right;
  }
}

main {
  display: flex;
  flex-direction: row;
  align-items: center;
  min-height: 100dvh;
  min-width: 100dvw;
  justify-content: center;
  margin: 0 auto;
  text-align: center;

  @media (max-width: 550px) or (min-height: 350px) {
    flex-direction: column;
  }

  img {
    max-height: 90dvh;
    max-width: 90-dvh;

    @media (min-height: 550px) {
      height: auto;
      width: 100dvw;
    }

    @media (min-width: 274px) {
      width: clamp(200px, 30dvw, 400px);
    }

    @media (min-height: 550px) and (min-width: 274px) {
      width: clamp(200px, 30dvw, 400px);
    }
  }

  ul {
    display: flex;
    flex-direction: column;
    font-family: "socicon";
    gap: 10px;
    list-style-type: none;
    margin: 0;
    padding: 0;

    @media (min-width: 550px) {
      flex-direction: row;
    }

    a {
      color: var(--dark-color);
      display: block;
      font-size: 1.2em;
      padding: 15px;
      text-decoration: none;
    }
  }
}
