/*-----------------------------------*\
  #CUSTOM PROPERTY
\*-----------------------------------*/

:root {

    /**
     * colors
     */
  
    --rich-black-fogra-39_50: hsla(0, 0%, 5%, 0.5);
    --rich-black-fogra-39: hsl(0, 0%, 5%);
    --indian-yellow_10: hsla(36, 61%, 58%, 0.1);
    --indian-yellow: #72D27D;
    --harvest-gold: #5cc068;
    --eerie-black-1: hsl(0, 0%, 14%);
    --eerie-black-2: hsl(0, 0%, 12%);
    --eerie-black-2_85: hsla(0, 0%, 12%, 0.85);
    --eerie-black-3: hsl(0, 0%, 8%);
    --sonic-silver: hsl(0, 0%, 44%);
    --davys-gray: hsl(210, 9%, 31%);
    --light-gray: hsl(0, 0%, 80%);
    --platinum: hsl(0, 0%, 91%);
    --black_30: hsla(0, 0%, 0%, 0.3);
    --white_10: hsla(0, 0%, 100%, 0.1);
    --white_30: hsla(0, 0%, 100%, 0.3 );
    --white_50: hsla(0, 0%, 100%, 0.5);
    --white: hsl(0, 0%, 100%);
    --jet: hsl(0, 0%, 21%);
  
    /**
     * typography
     */
  
    --ff-oswald : 'Oswald', sans-serif;
    --ff-rubik: 'Rubik', sans-serif;
  
    --fs-40: 2rem;
    --fs-30: 2rem;
    --fs-24: 1.75rem;
    --fs-18: 1.7rem;
    --fs-14: 1.4rem;
    --fs-13: 1.3rem;
  
    --fw-300: 300;
    --fw-500: 500;
    --fw-600: 600;
    --fw-700: 700;
  
    /**
     * spacing
     */
  
    --section-padding: 80px;
  
    /**
     * shadow
     */
  
    --shadow-1: 10px 0 60px hsla(0, 0%, 15%, 0.07);
    --shadow-2: 10px 0 60px hsla(0, 0%, 15%, 0.1);
  
    /**
     * radius
     */
  
    --radius-5: 5px;
    --radius-8: 8px;
  
    /**
     * transition
     */
  
    --transition-1: 0.25s ease;
    --transition-2: 0.5s ease;
    --cubic-out: cubic-bezier(0.33, 0.85, 0.4, 0.96);
  
}
  
  
  
  
  
  /*-----------------------------------*\
    #RESET
  \*-----------------------------------*/
  
  *,
  *::before,
  *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  
  li { list-style: none; }
  
  a,
  img,
  span,
  data,
  input,
  select,
  button,
  textarea,
  ion-icon { display: block; }
  
  a {
    color: inherit;
    text-decoration: none;
  }
  
  img { height: auto; }
  
  input,
  select,
  button,
  textarea {
    background: none;
    border: none;
    font: inherit;
  }
  
  input,
  select,
  textarea { width: 100%; }
  
  button { cursor: pointer; }
  
  ion-icon { pointer-events: none; }
  
  address { font-style: normal; }
  
  html {
    font-family: var(--ff-rubik);
    font-size: 10px;
    scroll-behavior: smooth;
  }
  
  body {
    background-color: var(--white);
    color: var(--sonic-silver);
    font-size: 1.6rem;
    line-height: 2;
  }
  
  :focus-visible { outline-offset: 4px; }
  
  ::-webkit-scrollbar { width: 10px; }
  
  ::-webkit-scrollbar-track { background-color: hsl(0, 0%, 98%); }
  
  ::-webkit-scrollbar-thumb { background-color: hsl(0, 0%, 80%); }
  
  ::-webkit-scrollbar-thumb:hover { background-color: hsl(0, 0%, 70%); }
  

  /*-----------------------------------*\
  #REUSED STYLE
\*-----------------------------------*/

.container { padding-inline: 15px; }

.section { padding-block: var(--section-padding); }

.has-before,
.has-after {
  position: relative;
  z-index: 1;
}

.has-before::before,
.has-after::after {
  position: absolute;
  content: "";
}

.has-bg-image {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.h1,
.h2,
.h3 {
  font-family: var(--ff-oswald);
  line-height: 1.3;
}

.h1,
.h2 { text-transform: uppercase; }

.h1,
.h3 { font-weight: var(--fw-600); }

.h1 {
  color: var(--white);
  font-size: 4rem;
}

.h2,
.h3 { color: var(--eerie-black-1); }

.h2 { font-size: var(--fs-30); }

.h3 { font-size: var(--fs-24); }

.btn {
  color: var(--white);
  background-color: var(--indian-yellow);
  display: flex;
  align-items: center;
  gap: 10px;
  max-width: max-content;
  padding: 10px 25px;
  font-family: var(--ff-oswald);
  font-size: var(--fs-14);
  font-weight: var(--fw-600);
  text-transform: uppercase;
  border-radius: var(--radius-5);
  overflow: hidden;
}

.btn::before {
  background-color: var(--eerie-black-1);
  inset: 0;
  z-index: -1;
  transform: skewY(-15deg) scaleY(0);
  transition: var(--transition-2);
}

.btn:is(:hover, :focus)::before { transform: skewY(-15deg) scaleY(2.5); }

.text-center { text-align: center; }

.grid-list {
  display: grid;
  gap: 30px;
}

.img-holder {
  aspect-ratio: var(--width) / var(--height);
  background-color: var(--light-gray);
  overflow: hidden;
}

.img-cover {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


  .pricing::before {
    inset: 0;
    background-color: var(--eerie-black-2_85);
    mix-blend-mode: multiply;
    z-index: -1;
  }
  
  .pricing .section-title { color: var(--white); }
  
  .pricing .section-text {
    margin-block: 15px 55px;
    color: var(--white_50);
  }
  
  .pricing-tab-container {
    background-color: var(--white);
    padding: 40px 5px;
  }
  
  .tab-filter {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 3px;
    margin-block-end: 30px;
  }
  
  .filter-btn {
    color: var(--eerie-black-1);
    font-family: var(--ff-oswald);
    font-size: var(--fs-14);
    font-weight: var(--fw-600);
    text-transform: uppercase;
    min-width: 130px;
    height: 150px;
    padding-block: 12px;
    border: 1px solid var(--platinum);
    transition: var(--transition-1);
  }
  
  .filter-btn .btn-icon { display: none; }
  
  .filter-btn.active {
    background-color: var(--indian-yellow);
    border-color: var(--indian-yellow);
    color: var(--white);
  }
  
  .pricing .grid-list { padding-inline: 20px; }
  
  .pricing .grid-list > li.active { animation: popup 0.75s ease forwards; }
  
  @keyframes popup {
  
    0% { opacity: 0; }
    100% { opacity: 1; }
  
  }
  
  .pricing-card {
    background-color: var(--indian-yellow_10);
    padding: 20px 25px;
    border-radius: var(--radius-5);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 15px;
  }
  
  .pricing-card .card-banner {
    border-radius: 50%;
    overflow: hidden;
  }
  
  .pricing-card .wrapper { order: 1; }
  
  .pricing-card .h3 {
    --fs-24: 2rem;
    margin-block-end: 8px;
  }
  
  .pricing-card .card-price {
    color: var(--indian-yellow);
    font-family: var(--ff-oswald);
    font-size: var(--fs-30);
    font-weight: var(--fw-500);
  }

  @media (min-width: 575px) {
    .filter-btn .btn-icon {
        display: block;
        font-size: 55px;
        line-height: 1;
        margin-block-end: 5px;
      }
    
      .pricing-card {
        flex-wrap: nowrap;
        align-items: center;
        gap: 30px;
      }
    
      .pricing-card .wrapper { order: 0; }
    
      .pricing-card .card-price {
        align-self: flex-start;
        line-height: 1.6;
      }
  }

  @media (min-width: 768px) {
    .pricing-tab-container { padding: 40px; }

    .pricing-card .wrapper { margin-inline-end: auto; }
  }

  @media (min-width: 992px) {
    .pricing .grid-list { grid-template-columns: 1fr 1fr; }

  .pricing-card { height: 100%; }

  .pricing-card .card-banner { flex-shrink: 0; }
  }

  @media (min-width: 1200px) {
    .filter-btn { min-width: 178px; }
  }