:root {
  --primary-font: 'Roboto', sans-serif;
  --secondary-font: 'Raleway', sans-serif;
  --iris: #4d5ae5;
  --ocean: #404bbf;
  --navy-blue: #2e2f42;
  --green: #31d0aa;
  --slate: #434455;
  --light-slate: #8e8f99;
  --cornflower: #e7e9fc;
  --cloud: #f4f4fd;
  --navy-blue-modal: #2e2f4266;
  --grey: #2e2f42b3;
  --white: #fff;
}

/* Властивість font-family успадковується більшістю елементів, тому його задають елементу body */

/* Спочатку типографіка(+ :active, :hover, :focus): color, background-color, font-family, font-size, line-height, font-weight, font-style, text: text-decoration, text-transform, text-align, letter-spacing, text-indent (абзац), text-shadow: <зміщення по x>, <зміщення по y>, <радіус розмиття>, <колір>,    */

/* Або modern-normalize або  
*,
*::before,
*::after {
  box-sizing: border-box;
}
*/
a {
  text-decoration: none;
}

ul,
ol {
  list-style-type: none;
}

address {
  font-style: normal;
}

/* line-height: 1.5;-Використання множника гарантує рівномірне масштабування інтервалу між рядками при зміні розміру тексту. */

/* Глобальні стилі документа */

/* body {
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  color: #2a2a2a;(крім посилань)
  background-color: #fafafa;
} */

/* !!! body !!! */
body {
  font-family: var(--primary-font);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-align: center;
  color: var(--slate);

  background-color: var(--color-white);
}

/* !!! logo !!! */
.logo {
  font-family: var(--second-family);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.17;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--iris);
}

.accent {
  color: var(--navy-blue);
}

/* !!! nav !!! */

/* === Навігаційні посилання === */
.nav-link {
  font-weight: 500;
  color: var(--navy-blue);
}

/* Hover/Focus ефекти */
.nav-link:hover,
.nav-link:focus {
  color: var(--ocean);
}

/* !!! address !!! */
.contacts .contacts-link {
  color: var(--slate);
}

.contacts-link:hover,
.contacts-link:focus {
  color: var(--ocean);
}

/* !!! hero !!! */
.hero {
  background: var(--navy-blue);
}

.hero-title {
  font-size: 56px;
  font-weight: 700;
  line-height: 1.07;
  letter-spacing: 0.02em;
  color: var(--white);

  background: var(--navy-blue);
}

/* !!! hero-btn !!! */
.hero-btn {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: var(--white);

  background: var(--iris);
  cursor: pointer;
}

.hero-btn:hover,
.hero-btn:focus {
  font-weight: 600;
  background: var(--ocean);
}

.hero-btn:active {
  background: var(--ocean);
}

/* !!! features !!! */
.features-title {
  letter-spacing: 0.02em;
  color: var(--white);
}

.features-subtitle {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.02em;
  color: var(--navy-blue);
}

.features-text {
  color: var(--slate);
}

/* !!! team !!! */
.team {
  background-color: var(--cloud);
}

.team-item {
  background-color: var(--white);
}

.team-item:hover,
.team-item:focus {
  background: var(--white);
}

.team-title {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.11;
  letter-spacing: 0.02em;
  text-transform: capitalize;
  color: var(--navy-blue);
}

.team-subtitle {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.02em;
  color: var(--navy-blue);
}

.team-text {
  color: var(--slate);
}

/* !!! portfolio !!! */

.portfolio-title {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.11;
  letter-spacing: 0.02em;
  text-transform: capitalize;
  color: var(--navy-blue);
}

.portfolio-subtitle {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0.02em;
  color: var(--navy-blue);
}

.portfolio-text {
  color: var(--slate);
}

/* !!! footer !!! */
.footer {
  background: var(--navy-blue);
}

.footer-logo {
  font-family: var(--second-family);
  font-size: 18px;
  font-weight: 700;
  line-height: 1.1667;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--iris);
}

.accent-footer {
  color: var(--cloud);
}

.footer-text {
  color: var(--cloud);
}
