/* Global styles */
*,
::after,
::before {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
:root {
  --primary-1: #ffcc4a;
  --primary-2: #4eaf4e;
  --primary-3: #181818;
  --secondary-1: #f5f5f5;
  --secondary-2: #ffffff;
  --gray-400: #ebebeb;
}
ul,
li,
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}
p {
  font-size: 0.75rem;
}
img {
  max-width: 100%;
  vertical-align: middle;
}
body {
  font-family: "Inter", sans-serif;
  background-color: var(--secondary-2);
}
.container {
  max-width: 80rem;
  padding: 0 0.625rem;
  margin: 0 auto;
}
@media screen and (min-width: 545px) {
  .container {
    padding: 0 1.25rem;
  }
}

.hidden {
  display: none;
}
.block {
  display: block;
}
.lead {
  font-weight: 600;
  font-style: bold;
  font-size: 0.857rem;
}
.sub-title {
  font-size: 0.77rem;
  background-color: var(--primary-1);
  max-width: max-content;
  padding: 0.15rem 0.578rem;
  border-radius: 1.5rem;
  text-transform: uppercase;
  color: var(--primary-3);
  font-weight: 600;
  margin-bottom: 0.558rem;
}
.heading-title {
  max-width: 19rem;
  font-size: 1.8rem;
  font-weight: 700;
  color: var(--primary-3);
  margin-bottom: 1.1rem;
}
.card {
  background-color: var(--gray-400);
  border-radius: 0.457rem;
  padding: 1.5rem 0.987rem;
  transition: background-color 300ms ease-in-out;
}
.card .icon {
  margin-bottom: 1.2rem;
  max-width: max-content;
}
.card .title {
  margin-bottom: 0.67rem;
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--primary-3);
}
.card .info {
  max-width: 18rem;
}
.card:hover {
  background-color: var(--primary-3);
  color: var(--secondary-2);
  cursor: pointer;
}
.card:hover .title {
  color: var(--secondary-2);
}
.info {
    max-width: 18rem;
}
.primary-btn{
  background-color: var(--primary-1);
  display: block;
  font-size: 0.679rem;
  text-decoration: none;
  border-radius: 1rem;
  text-align: center;
  padding: 0.45rem 0.5rem;
  color: var(--primary-3);
  max-width: max-content;
  margin-left: auto;
  transition: all 300ms ease-in-out;
}
.primary-btn:hover {
    background-color: var(--secondary-2);
    color: var(--primary-2);
}
.main-btn {
  position: relative;
  display: flex;
  align-items: center;
  column-gap: 0.6rem;
  background-color: var(--secondary-2);
  border-radius: 0.5rem;
  padding: 0.345rem 0.5rem;
  text-decoration: none;
  color: var(--primary-3);
  z-index: 2;
}
.main-btn:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  height: 100%;
  width: 0;
  background-color: var(--primary-1);
  border-radius: 0.5rem;
  transition: width 300ms ease-in-out;
  z-index: -1;
}
.main-btn:hover:before {
  width: 100%;
}
.main-btn span {
  background-color: var(--primary-1);
  border-radius: 0.125rem;
  padding: 0.1rem 0.2rem;
}
.main-btn p {
  font-size: 0.75rem;
}
.grey {
  color: grey;
}