.banner-border {
  background: radial-gradient(circle at 100% 100%, #ffffff 0, #ffffff 39px, transparent 39px) 0% 0%/40px 40px no-repeat,
    radial-gradient(circle at 0 100%, #ffffff 0, #ffffff 39px, transparent 39px) 100% 0%/40px 40px no-repeat,
    radial-gradient(circle at 100% 0, #ffffff 0, #ffffff 39px, transparent 39px) 0% 100%/40px 40px no-repeat,
    radial-gradient(circle at 0 0, #ffffff 0, #ffffff 39px, transparent 39px) 100% 100%/40px 40px no-repeat,
    linear-gradient(#ffffff, #ffffff) 50% 50%/calc(100% - 2px) calc(100% - 80px) no-repeat,
    linear-gradient(#ffffff, #ffffff) 50% 50%/calc(100% - 80px) calc(100% - 2px) no-repeat,
    linear-gradient(0deg, transparent 0%, #bec3c5 100%);
  border-radius: 40px;
  padding: 5px;
  box-sizing: border-box;
}

a {
  font-family: "Inter", sans-serif;
  font-weight: 400;
  font-size: 1.4rem;
  color: var(--groomit-black);
}

.p-12px {
  padding: 12px !important;
}

.groomitModalV5.modal {
  z-index: 1055 !important;
}

.groomitModalV5 .modal-dialog {
  z-index: 1060 !important;
}

.modal-backdrop.show {
  background-color: rgba(0, 0, 0, 0.5);
}

.gr-btn--white {
  background-color: #FFF !important;
}

.text-brand {
  color: #E92C47 !important;
  font-weight: 700 !important;
}

.text-groomer-active {
  color: #FF314A !important;
  font-weight: 700 !important;
}

.border-brand {
  border: 1px solid #FF314A;
  color: #FF314A !important;
}

.lightblue-bg {
  background-color: #EBF7FF;
}

.border-lightblue {
  border-radius: 16px;
  border: 1px solid #EBF7FF;
  padding: 16px;
  margin-top: 10px;
}

.border-lightblue-desktop {
  border-radius: 0;
  border: none;
  padding: 0;
  margin-top: 0;
}

.lightgrey-bg {
  background-color: #E7E6F5;
}

.light-blue-bg {
  background-color: #DCEEDF;
}

.darkpink-bg {
  background-color: #FFD6CD !important;
}

.dark-blue {
  color: #3064A3;
}

.lightpink-bg {
  background-color: #FFEDE9;
}

.gray-light-bg {
  background-color: #F6F6F6;
}

.mt-20-px-mobile {
  margin-top: 0;
}

.salon-steps {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
  margin: 0 auto;
  flex-wrap: wrap;
}

.salon-step {
  flex: 1;
  text-align: center;
  position: relative;
  z-index: 1;
  padding: 0 15px;
}

.salon-step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 25px;
  right: -50%;
  width: 100%;
  border-top: 2px dashed #FF314A;
  z-index: 0;
}

.salon-icon {
  display: flex;
  padding: 8px;
  justify-content: center;
  align-items: center;
  border-radius: 40px;
  border: 2px solid #FF314A;
  background: #2A2A2A;
  width: 50px;
  height: 50px;
  margin: 0 auto 15px;
  z-index: 5;
  position: relative;
}

.steps {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
  margin: 0 auto;
  flex-wrap: wrap;
}

.step {
  flex: 1;
  text-align: center;
  position: relative;
  z-index: 1;
  padding: 0 15px;
}

.step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 25px;
  right: -50%;
  width: 100%;
  border-top: 2px dashed #f3b5a3;
  z-index: 0;
}

.icon {
  background-color: #f9d7cb;
  color: #a25c4f;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  margin: 0 auto 15px;
  z-index: 5;
  position: relative;
}

.accordion-button::after {
  display: none !important;
}

.accordion-button {
  position: relative;
  padding-right: 2rem;
}

.accordion-button::before {
  content: "\2212";
  font-size: 3.2rem;
  position: absolute;
  right: 1rem;
  transition: transform 0.3s;
  background: #222;
  border-radius: 100%;
  height: 32px;
  width: 32px;
  margin: 0 auto;
  padding-top: 15px;
  padding-left: 5px;
  line-height: 0;
  color: #fff;
}

.accordion-button.collapsed::before {
  content: "\002B";
  background: #D9D9D9;

}


:root {
  --icon-size: 40px;
  --left-col: 64px;

  --icon-bg: #ffd0c7;
  --page-bg: #fff0ed;
  --gap: 20px;
}


.timeline {
  position: relative;
  max-width: 720px;
  padding-top: calc(var(--icon-size) / 2);
  padding-bottom: calc(var(--icon-size) / 2);
  display: flex;
  flex-direction: column;
  gap: var(--gap);
}

.timeline::before {
  content: "";
  position: absolute;
  left: calc(var(--left-col) / 2);
  top: 40px;
  bottom: 55px;
  transform: translateX(-50%);
  width: 0;
  border-left: 3px dashed #f2b6ac;
  z-index: 0;
}

.timeline-item {
  display: grid;
  grid-template-columns: var(--left-col) 1fr;
  align-items: start;
  column-gap: 16px;
  position: relative;
  z-index: 1;

}

.icon-round {
  height: 40px;
  width: 40px;
  border-radius: 40px
}

.salon-timeline {
  position: relative;
  max-width: 720px;
  padding-top: calc(var(--icon-size) / 2);
  padding-bottom: calc(var(--icon-size) / 2);
  display: flex;
  flex-direction: column;
  gap: var(--gap);
}

.salon-timeline::before {
  content: "";
  position: absolute;
  left: calc(var(--left-col) / 2);
  top: 40px;
  bottom: 55px;
  transform: translateX(-50%);
  width: 0;
  border-left: 3px dashed #FF314A;
  z-index: 0;
}

.salon-timeline-item {
  display: grid;
  grid-template-columns: var(--left-col) 1fr;
  align-items: start;
  column-gap: 8px;
  position: relative;
  z-index: 1;
}

.responsive-image {
  max-width: 100%;
  height: auto;
}

.web-border-0 {
  border: 0px;
}

.faqs-min-h {
  max-height: 500px;
  overflow: auto;
}

.cursor-pointer {
  cursor: pointer;
}

.red-box {
  padding: 20px 30px;
  border-radius: 40px;
  background: #FF314A;
}

.red-box-mobile {
  padding: 20px 15px;
  border-radius: 20px;
  background: #FF314A;
}

.brand-box {
  display: flex;
  padding: 20px;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  flex: 1 0 0;
  align-self: stretch;
  border-radius: 20px;
  border: 1px solid #EAEAEA;
  background: #FFF;
}

.salon-box {
  display: flex;
  padding: 20px;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  flex: 1 0 0;
  border-radius: 20px;
  border: 1px solid #EAEAEA;
  background: #F6F6F6;
}

.salon-box h6 {
  color: #454545 !important;
}

.text-salon {
  color: #454545 !important;
}

.join_groomit_btn {
  display: flex;
  height: 44px;
  padding: 5px 10px;
  justify-content: center;
  align-items: center;
  gap: 6px;
  border-radius: 10px;
  background: #FFF;
  color: #E92C47;
}

@media (max-width: 768px) {
  .faqs-min-h {
    max-height: none;
  }

  .pt-50-px {
    padding-top: 25px !important;
  }

  .banner-border {
    background: none;
  }

  .faqs-image {
    width: 65% !important;
  }

  .web-border-0 {
    border: 1px solid #dee2e6;
  }
}


.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
  color: #fff;
  background-color: #ED9F00;
  font-weight: bold;
  border: 1px solid #ED9F00;
}

.nav-pills .nav-link {
  border: 1px solid #BEC3C5;
  padding: 10px;
}

.faq-button.active {
  background-color: #222 !important;
  border: 1px solid #222 !important;
}

.nav-link:hover {
  color: #2e2e2e;
}

.grmt-how-it-works-services__bottom {
  background: var(--BG, linear-gradient(180deg, #F2F2F2 0%, #FFF 100%));
  height: 100px;
  padding: 0 50px;
}

.container-fluidFAQs {
  .faqs {
    margin-bottom: 0;
  }

  .groomit__accordion {
    background-color: transparent;
  }

  .groomit__accordion .accordion-item {
    background-color: #fff;
    border-radius: 20px;
    border: none;
    margin-bottom: 20px;
  }

  .groomit__faqsContent .accordion-header {
    height: auto;
  }

  .groomit__accordion .accordion-item .accordion-button.collapsed {
    height: 60px;
  }

  .groomit__accordion .accordion-item .accordion-button:not(.collapsed) {
    height: max-content;
  }

  .accordion-body p {
    font-size: 1.4rem;
  }

  .faqsGreyBg {
    top: 0 !important;
  }

  .groomit__faqs__img--250 {
    height: 250px;
    object-position: top;
    object-fit: cover !important;
    border-radius: 150px 0 0 0;
  }
}

@media (max-width: 991px) {
  .container-fluidFAQs {
    .col-md-7 {
      width: 100% !important;
    }

    .col-md-4 {
      display: none !important;
    }
  }
}

.owl-carousel.groomers-loop .owl-stage-outer {
  padding-top: 40px;
  padding-bottom: 40px;
}

.groomers-loop__card {
  border-radius: 15px;
  background: #fbfbfb;
  padding: 25px 5px;
  text-align: center;
  margin-top: 50px;
  margin-bottom: 50px;
  cursor: pointer;
  transition: .2s;
  border: 1px solid #C9CFD4;
  margin-bottom: 0;
  margin-top: 0;
  opacity: .6;
}

.groomers-loop__card.active,
.groomers-loop__card:hover {
  border-color: #fff;
  background: #FFF;
  box-shadow: 0px 20px 20px 0px rgba(0, 0, 0, 0.10);
  opacity: 1;
}

.groomers-loop__photo {
  border-radius: 50%;
  width: 110px !important;
  height: 110px !important;
  object-fit: cover !important;
  margin: auto;
  margin-bottom: 15px;
}

.groomers-loop__name {
  font-family: 'Inter', sans-serif !important;
  font-size: 2rem;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
  color: #2E2E2E;
}

.groomers-loop__location {
  font-family: 'Inter', sans-serif !important;
  font-size: 1.4rem;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  color: #2E2E2E;
  margin-bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  gap: 2px;
}

.groomers-testimonials {
  min-height: 310px;
}

.groomers-testimonials__p {
  font-family: 'Inter', sans-serif !important;
  font-size: 2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 30px;
  text-align: center;
  color: #2E2E2E;
  margin-bottom: 0;
  width: 860px;
  max-width: 100%;
  margin: auto;
  text-transform: capitalize;

  b {
    font-family: 'Inter', sans-serif !important;
    font-weight: 700;
  }
}

.mb-50-px {
  margin-bottom: 50px !important;
}

.groomers-testimonials__a {
  font-family: 'Inter', sans-serif !important;
  font-size: 2rem;
  font-style: normal;
  font-weight: 400;
  line-height: 30px;
  text-align: center;
  color: #3064A3;
  margin-bottom: 0;
  width: auto;
  max-width: 100%;
  margin: auto;
  text-transform: capitalize;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: none;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  margin: 0 auto 30px auto;
  display: inline-block;
}

.groomers-testimonials__a--view-profile {
  color: #2E2E2E;
  margin-bottom: 0;
}

.gr-color-gray {
  color: #7C868A !important;
}

.groomers-testimonials__quote {
  font-family: "Filson Soft Bold";
  font-weight: 700;
  line-height: 60px;
  font-size: 6rem;
  color: #FF314A;
  vertical-align: inherit;
  margin-right: 10px;
}

.groomers-testimonials__quote--end {
  vertical-align: top;
  margin-left: 15px;
  margin-right: 0;
}

.grey-border_button {
  height: 45px;
  font-size: 1.6rem;
  font-family: "Inter 700";
  border-radius: 10px;
  background-color: transparent;
  color: #2e2e2e;
  border: 1px solid #BEC3C5 !important;
}

.grmt-h2 {
  font-family: "Filson Soft Bold";
  font-weight: 700;
  line-height: 35px;
  font-size: 3rem;
}

.gr-section--groomers-own-boss {
  background-color: #fff !important;
  background: linear-gradient(180deg, #F2F2F2 0%, rgba(242, 242, 242, 0.00) 100%);
  padding-bottom: 20px;
}

.grmt-item-modern {
  height: 45px;
  font-size: 1.4rem;
  font-family: "Inter 700";
  border-radius: 51px;
  background: #FFF;
  box-shadow: 0px 0px 50px 0px rgba(0, 0, 0, 0.15);
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: start;
  padding: 0 15px;
  gap: 6px;
}

.grmt-divider-h {
  height: 1px;
  width: 100%;
  background: #C9CFD4;
}

.mb-70-px {
  margin-bottom: 70px;
}

.grmt-item-w-icon__left {
  width: 50px;
}

.grmt-item-w-icon__right {
  width: calc(100% + -50px);
}

.grmt-item-w-icon {
  margin-bottom: 20px;
}

.grmt-p {
  font-family: "Inter 400" !important;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 22px;
  margin-bottom: 0;
}

.grmt-p--small {
  font-size: 1.4rem;
  line-height: 14px;
}

.grmt-p b {
  font-family: "Inter 700" !important;
  font-weight: normal;
}

.gr-section--groomers-dream-big {
  background: #fff;
}

.gap-4-px {
  gap: 4px;
}

.grmt-h3 {
  font-family: "Inter 700" !important;
  font-size: 2rem;
  line-height: 20px;
  margin-bottom: 0;
}

.pl-25-px {
  padding-left: 25px;
}

.pr-25-px {
  padding-right: 25px;
}

.cont-iframe {
  border-radius: 20px;
  overflow: hidden;
  width: 522px;
  margin: auto;
  max-width: 100%;
  border: 1px solid #C9CFD4;
  background: #000;

  iframe {
    max-width: 100%;
  }
}

.gr-section--groomers-carousel {
  background: linear-gradient(0deg, rgba(242, 242, 242, 0.00) 0%, #F2F2F2 100%);
}

.footer-groomer {
  padding-top: 0 !important;
}

.grmt-h2--small {
  font-size: 2.5rem;
  line-height: 30px;
}



.grmt-how-it-works-services__top-divider {
  width: 60px;
  padding: 50px 0;
}

.grmt-how-it-works-services__top-divider-line {
  background: #C9CFD4;
  width: 1px;
  height: 100%;
  margin: auto;
}

.grmt-how-it-works-services {
  border-radius: 40px;
  background: #FFF;
  box-shadow: 0px 20px 80px 0px rgba(0, 0, 0, 0.10);
  overflow: hidden;
}

.grmt-how-it-works-services__top-left,
.grmt-how-it-works-services__top-right {
  width: calc(50% + -30px);
  flex-direction: column;
  padding: 50px;
}

.groomit__h2--groomit__main-banner {
  font-family: "Inter 400" !important;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 24px;
  margin-bottom: 15px;
}

.grw-container-390-px {
  width: 390px !important;
  max-width: 100%;
}

.grmt-modal {
  z-index: 1041;
  filter: drop-shadow(0px 20px 80px rgba(0, 0, 0, 0.1));
}

.grmt-modal .modal-content {
  width: 430px;
  max-width: initial;
  border-radius: 40px;
  border: none;
  overflow: hidden;
  padding: 20px;
}

.grmt-modal .modal-body {
  padding: 0;
}

.grmt-modal .btn-close {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  position: absolute;
  top: 15px;
  right: 20px;
  background: #fff;
  z-index: 2;
  opacity: 1;
  padding: 0;
}

.grmt-modal__h3 {
  font-family: "Inter 600";
  font-weight: 600;
  font-size: 2rem;
  font-style: normal;
  line-height: 2rem;
  color: #2E2E2E;
  margin: 0;
}

.grmt-modal__p {
  font-family: "Inter 500";
  font-weight: 500;
  font-size: 1.6rem;
  font-style: normal;
  line-height: 1.6rem;
  color: #7C868A;
  margin: 0;
}

.gr-section--groomers-how-it-works {
}

.include--3steps {
  background: #fff !important;

  .steps3__each {
    margin-bottom: 0;
    border-radius: 0;
    margin-left: 0;
    padding-left: 20px;
    border: none;
  }

  .container-fluid--steps3 {
    background: #fff !important;
  }
}

.br-visible-991 {
  display: none;
}

.banner-image-767 {
  display: none !important;
}

@media (max-width: 991px) {
  .mb-70-px {
    margin-bottom: 30px !important;
  }

  .mt-70-px {
    margin-top: 30px !important;
  }

  .grmt-p {
    font-size: 1.4rem;
    line-height: 18px;
  }

  .grmt-p--small {
    font-size: 1.2rem;
    line-height: 14px;
  }

  .groomers-testimonials {
    min-height: 375px;
  }

  .groomit__h2--groomit__main-banner {
    margin-bottom: 5px;
    font-size: 1.3rem;
    line-height: 20px;
  }

  .br-visible-991 {
    display: block;

  }

  .groomers-testimonials__a {
    font-size: 1.6rem;
    line-height: 20px;
  }

  .groomers-loop__location {
    flex-direction: column;
    gap: 4px;
    align-items: center;
  }

  .groomers-loop__name {
    font-size: 1.6rem;
    line-height: 18px;
  }

  .groomers-loop__photo {
    width: 80px !important;
    height: 80px !important;
  }

  .groomers-testimonials__p {
    font-size: 1.6rem;
    line-height: 30px;
  }

  .text-center-991 {
    text-align: center !important;
  }

  .cont-banner-buttons {
    text-align: center;
    justify-content: center;
  }

  .order-1-991 {
    order: 1;
  }

  .order-2-991 {
    order: 2;
  }

  .order-3-991 {
    order: 3;
  }

  .order-4-991 {
    order: 4;
  }

  .grmt-how-it-works-services__bottom {
    padding: 0 30px;
  }

  .grmt-how-it-works-services__top-divider {
    width: 30px;
    padding: 30px 0;
  }

  .grmt-how-it-works-services__top-left,
  .grmt-how-it-works-services__top-right {
    width: calc(50% + -15px);
    padding: 30px;
  }

  .grmt-h2 {
    font-size: 2rem;
    line-height: 28px;
  }

  .grmt-h2--small {
    font-size: 1.8rem;
    line-height: 22px;
  }

  .grmt-h1--banner {
    text-align: center;
    font-size: 2.5rem;
    line-height: 30px;
    margin-bottom: 20px;
  }

  .groomit__p {
    line-height: 20px;
  }
}

.grw-modal.grw-modal--big .modal-content {
  width: 1240px;
  padding-left: 50px;
  padding-right: 50px;
}

.grmt-two-col-w-divider {
  .grmt-two-col-w-divider__left {
    width: calc(50% + -45px);
  }

  .grmt-two-col-w-divider__right {
    width: calc(50% + -45px);
  }

  .grmt-two-col-w-divider__divider {
    width: 90px;
    display: flex;
    align-items: center;
    justify-content: center;

    .grmt-two-col-w-divider__divider-line {
      background: #C9CFD4;
      width: 1px;
      height: 100%;
    }

  }
}

.lh-22-px {
  line-height: 22px !important;
}

@media (max-width: 767px) {
  .p-12px {
    padding: 16px !important;
  }

  .salon-box {
    padding: 16px !important;
  }

  .border-lightblue {
    border-radius: 0;
    border: none;
    padding: 0;
    margin-top: 0;
  }

  .border-lightblue-desktop {
    border-radius: 16px;
    border: 1px solid #EBF7FF;
    padding: 16px;
    margin-top: 10px;
  }

  .mt-20-px-mobile {
    margin-top: 20px;
  }

  .hide-767 {
    display: none !important
  }

  .banner-image-767 {
    display: flex !important;
    margin-bottom: 20px;
  }

  .grmt-how-it-works-services__top {
    flex-direction: column;
  }

  .grmt-how-it-works-services__top-divider {
    display: none !important;
  }

  .grmt-how-it-works-services__top-left,
  .grmt-how-it-works-services__top-right {
    width: 100%;
    padding: 30px;
  }

  .grmt-how-it-works-services__top-right {
    padding-top: 0;
  }

  .col-van-faqs {
    padding-top: 0px !important;
  }
}


@media (min-width: 1200px) {
    .earn-page .earn-solutions { padding: 100px 0; }
}
.earn-page .bg-pink { background: #F3E3E5; }

.earn-page .earn-title { font-size: 40px; line-height: 55px; letter-spacing: -1px; }
@media (min-width: 768px) {
    .earn-page .recurring-hero__title:not(.recurring-hero__title--mobile) { font-size: 45px; line-height: 55px; }
}
.earn-page .earn-title--tight { line-height: 50px; }

.earn-page .recurring-why__badge { letter-spacing: 1px; }
.earn-page .earn-badge--blue-dark { background: rgba(47, 135, 216, 0.3); }

.earn-page .earn-outline-btn { height: 50px; border-radius: 8px; }
.earn-page .earn-pill { padding: 8px 16px; }
.earn-page .earn-card { border: 2px solid #F3E3E5; border-radius: 24px; padding: 32px; }

/* How Groomit Marketplace Works (growth section) */
.earn-page .earn-growth__intro { gap: 16px; }
.earn-page .earn-growth__checklist { border-width: 1.5px; box-shadow: 0 12px 16px rgba(0, 0, 0, 0.02); }
.earn-page .earn-van-options { gap: 12px; }
.earn-page .earn-van-option { flex: 1 1 0; min-width: 0; gap: 12px; padding: 12px; border-radius: 16px; }
.earn-page .earn-van-option--own { background: #EAF7EE; }
.earn-page .earn-van-option--partner { background: #EAF2FE; }
.earn-page .earn-van-option__icon { width: 36px; height: 36px; }
.earn-page .earn-price { padding: 12px; border-radius: 16px; background: #FFF0F2; }
.earn-page .earn-price__formula { gap: 6px; }
.earn-page .earn-price__step { flex: 1 1 0; min-width: 0; gap: 6px; padding: 8px; border: 1px solid transparent; }
.earn-page .earn-price__step--total { border-color: #FF314A; }
.earn-page .earn-price__step-icon { width: 32px; height: 32px; background: #FFE3E7; }
.earn-page .earn-price__receipt { padding: 14px; }
.earn-page .earn-price__row { gap: 12px; }
.earn-page .earn-price__operator { width: 24px; height: 24px; background: #FFE3E7; }
.earn-page .earn-price__keep { color: #1E7A3C; }
.earn-page .earn-price__divider { border: 0; border-top: 1px solid #F0C9CF; }
@media (min-width: 768px) {
    .earn-page .earn-manage__list { gap: 15px !important; }
}

.earn-page .earn-hero__media { max-width: 709px; aspect-ratio: 709 / 586; }
.earn-page .earn-hero__media img { max-width: none; width: 110%; height: auto; margin: -36% 0 0 0; }
.earn-page .earn-hero__media--mobile { max-width: none; aspect-ratio: 300 / 220; border-radius: 20px; }
.earn-page .earn-hero__media--mobile img { width: 105%; margin: -37% 0 0 -1%; }
.earn-page .earn-dogs { max-width: 440px; aspect-ratio: 439 / 250; }
.earn-page .earn-dogs img { max-width: none; width: 121%; height: auto; margin: -7% 0 0 -13%; }
.earn-page .earn-cover { border-radius: 20px; min-height: 423px; height: 100%; }
.earn-page .earn-video-trigger { cursor: pointer; }
.earn-page .earn-video-play { width: 64px; height: 64px; background: rgba(255, 255, 255, 0.92); box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2); transition: transform 0.2s ease; }
.earn-page .earn-video-trigger:hover .earn-video-play,
.earn-page .earn-video-trigger:focus-visible .earn-video-play { transform: translate(-50%, -50%) scale(1.08); }
.earn-page .earn-video-play svg { margin-left: 3px; }

.earn-page .earn-option { padding: 28px; border: 2px solid #E4E4E4; }
.earn-page .earn-option:focus-within { outline: 2px solid #FF314A; outline-offset: 2px; }
.earn-page .earn-radio { width: 22px; height: 22px; }
.earn-page .earn-option.is-selected .earn-radio { border-color: #FF314A; }
.earn-page .earn-option.is-selected .earn-radio::after { content: ""; position: absolute; inset: 23%; border-radius: 50%; background: #FF314A; }
.earn-page .earn-option.is-disabled { cursor: default; }
.earn-page .earn-option.is-disabled .earn-radio { opacity: 0.4; }
.earn-page .earn-selector { max-width: 816px; }

.earn-page .earn-tabs { gap: 15px; scrollbar-width: none; }
.earn-page .earn-tabs::-webkit-scrollbar { display: none; }
.earn-page .earn-tab { padding: 10px 15px; }
.earn-page .earn-tab.active { box-shadow: 0 5px 8px rgba(0, 0, 0, 0.15); }

@keyframes earnSwipeOut {
    to { opacity: 0; transform: translateX(calc(var(--earn-swipe-dir, 1) * -48px)); }
}
@keyframes earnSwipeIn {
    from { opacity: 0; transform: translateX(calc(var(--earn-swipe-dir, 1) * 48px)); }
    to { opacity: 1; transform: none; }
}
.earn-page .is-swiping-out { animation: earnSwipeOut 0.18s ease-in forwards; }
.earn-page .is-swiping-in { animation: earnSwipeIn 0.32s ease-out; }
@media (prefers-reduced-motion: reduce) {
    .earn-page .is-swiping-out,
    .earn-page .is-swiping-in { animation: none; }
}

.earn-page .earn-faq-list.is-resizing { transition: height 0.45s cubic-bezier(0.4, 0, 0.2, 1); }
@keyframes earnFaqReveal {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: none; }
}
.earn-page .is-faq-revealing { animation: earnFaqReveal 0.4s ease-out both; }
@media (prefers-reduced-motion: reduce) {
    .earn-page .earn-faq-list.is-resizing { transition: none; }
    .earn-page .is-faq-revealing { animation: none; }
}

.earn-page .earn-step { padding: 20px; }

@media (max-width: 767px) {
    .earn-page .recurring-why__badge { padding: 8px 12px; font-size: 10px; letter-spacing: 1px; }
    .earn-page .recurring-hero__title--mobile { font-size: clamp(26px, calc(8.4vw - 3px), 36px); line-height: 1.14; letter-spacing: -0.02em; }
    .earn-page .earn-title,
    .earn-page .earn-title--tight { font-size: 22px; line-height: 30px; letter-spacing: 0; }
    .earn-page .earn-benefit-card { padding: 12px; }
    .earn-page .earn-cover { height: 300px; min-height: 0; }

    .earn-page .earn-option { padding: 14px; gap: 0; }
    .earn-page .earn-option__body { display: grid; grid-template-rows: 0fr; opacity: 0; transition: grid-template-rows 0.35s ease, opacity 0.25s ease; }
    .earn-page .earn-option.is-selected .earn-option__body,
    .earn-page .earn-option.is-disabled .earn-option__body { grid-template-rows: 1fr; opacity: 1; }
    .earn-page .earn-option__clip { min-height: 0; }
    @media (prefers-reduced-motion: reduce) {
        .earn-page .earn-option__body { transition: none; }
    }

    .earn-page .earn-growth { background: #FFF; }
    .earn-page .earn-growth .recurring-why__badge { background: #F3E3E5 !important; border: 1px solid #FF314A; font-size: 12px; letter-spacing: 0.96px; }
    .earn-page .earn-growth__title { font-size: 24px; letter-spacing: -0.48px; }
    .earn-page .earn-growth__wrap { gap: 16px; }
    .earn-page .earn-growth__head { gap: 16px; }
    .earn-page .earn-growth__cols { gap: 24px; }
    .earn-page .earn-growth__intro { padding: 0; border: 0; }
    .earn-page .earn-van-options { gap: 8px; }
    .earn-page .earn-price { gap: 12px; padding: 16px; }
    .earn-page .earn-growth__checklist { padding: 12px; border-color: #C7F2D8; }
    .earn-page .earn-growth__checklist .earn-title { font-size: 22px; }
    .earn-page .earn-growth__checklist .earn-accent { color: #148140; }
    .earn-page .earn-growth__checklist li:not(:last-child) { font-family: "Inter 400", sans-serif; }

    .earn-page .earn-independence { background: #F1FBF3 !important; }
    .earn-page .earn-independence .recurring-why__badge { background: #C7F2D8; color: #148140 !important; }
    .earn-page .earn-independence .earn-accent { color: #2AA65C; }
    .earn-page .earn-independence .earn-card { padding: 24px; border-color: #C7F2D8; }
    .earn-page .earn-dogs { max-width: none; aspect-ratio: 300 / 180; border-radius: 20px; }
    .earn-page .earn-dogs img { margin-top: -7%; }

    .earn-page .earn-app__card { padding: 0; border: 0; }
    .earn-page .earn-step { padding: 12px; }
}

/* Earn With Groomit help modal: keep a 10% gap above the mobile bottom sheet (no existing max-height:90% utility) */
@media (max-width: 768px) {
    #groomerSupportModal .modal-content { max-height: 90vh; max-height: 90dvh; }
}
