/* inter-regular - latin */
@font-face {
  font-family: 'Inter';
  src: url('assets/fonts/inter-v20-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-weight: 400;
  font-style: normal;
  font-display: swap; 
}

/* inter-600 - latin */
@font-face {
  font-family: 'Inter';
  src: url('assets/fonts/inter-v20-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-weight: 600;
  font-style: normal;
  font-display: swap; 
}

/* inter-700 - latin */
@font-face {
  font-family: 'Inter';
  src: url('assets/fonts/inter-v20-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

/*--CSS RESET--*/

/* Box sizing rules */
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Prevent font size inflation */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  height: 100%;
}

/* Balance text wrapping on headings */
h1, h2,
h3, h4 {
  text-wrap: balance;
}

/* Remove list styles on ul, ol elements */
ul, ol {
  list-style: none;
  padding: 0;
}

/* Make images easier to work with */
img,
picture,
video {
  display: block;
  max-width: 100%;
}

/* Inherit fonts for inputs and buttons */
input, button,
textarea, select {
  font-family: inherit;
  font-size: inherit;
}
 

:root {
  --color-accent: hsl(75, 94%, 57%);
  --color-white: hsl(0, 0%, 100%);
  --color-slate-700: hsl(0, 0%, 20%);
  --color-slate-800: hsl(0, 0%, 12%);
  --color-slate-900: hsl(0, 0%, 8%);
  --main-font: 'Inter', san-serif;
}


body {
  height: 100%;
  min-height: 100vh;
  min-height: 100svh;
  line-height: 1.5;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--color-slate-900);
  font-family: var(--main-font);
  font-size: clamp(0.8rem, 1.5vw, 1.5rem);
}

main {
  width: 88%;
  max-width: 28rem;
  padding: clamp(1.4rem, 1.5vw, 1.8rem);
  background-color: var(--color-slate-800);
  border-radius: 0.6rem;
}

.main__author--bio {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.main__author--image {
  display: block;
  border-radius: 50%;
  height: 6rem;
  width: 6rem;
  margin-block-end: 1.5rem;
}

.main__author--name {
  color: var(--color-white);
  font-size: clamp(1.6rem, 1.75vw, 2.0rem);
  margin-block-end: 0.15rem;
  font-weight: 700;
}

.main__author--location {
  color: var(--color-accent);
  font-size: clamp(0.95rem, 1vw, 1.2rem);
  font-weight: 600;
  margin-block-end: 1.6rem;
}

.main__author--description {
  color: var(--color-white);
  font-size: clamp(0.78rem, 2vw, 2rem);
  font-weight: 400;
  text-align: center;
  margin-block-end: clamp(1.2rem, 1.5vw, 1.5rem);
}

.main__social--links ul {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  margin-block-end: 0.7rem;
}


.main__social--links a {
  display: block;
  text-align: center;
  background-color: var(--color-slate-700);
  color: var(--color-white);
  padding: clamp(0.8rem, 0.5vw, 1.3rem);
  border-radius: 0.6rem;
  font-size: clamp(0.875rem, 0.5vw, 1rem);
  font-weight: 600;
  text-decoration: none;
  transition: background-color 0.3s ease, transform 0.3s ease; 
}

.main__social--links a:hover {
  color: var(--color-slate-800);
  background-color: var(--color-accent);
  transform: translateY(-0.18rem);

}
.main__social--links a:active {
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .main__social--links a {
    transition: none;
  }
}

@media screen and (min-width:23rem) {

  .main__author--description {
    font-size: clamp(0.9rem, 2vw, 2rem);;
  }
}

@media screen and (min-width:48rem) {
  main {
    width: 40%;
    max-width: 22rem;
  }

  .main__author--description {
    font-size: clamp(0.9rem, 0.5vw, 1.5rem);
  }
}

@media screen and (min-width:225rem) {
  main {
    width: 60%;
    max-width: 50rem;
    padding: 1.5rem 0.1rem;
    line-height: 1.1;
  }

  .main__author--description {
    font-size: clamp(0.9rem, 1.2vw, 2rem);
  }

  .main__social--links ul {
    gap: 0.1rem;
    margin-block-end: 0.1rem;
  }
}