/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js??ruleSet[1].rules[14].oneOf[7].use[4]!./node_modules/next/dist/compiled/sass-loader/cjs.js??ruleSet[1].rules[14].oneOf[7].use[5]!./src/components/cards/AnimalCard/AnimalCard.module.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.AnimalCard_card__upOY7 {
  --help-button-gradient: linear-gradient(135deg, #f59e0b, #f97316);
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 1fr);
  min-height: 25.5rem;
  overflow: hidden;
  color: #1f2023;
  background: #fff;
  border: 1px solid #f0f0f0;
  border-radius: 1.25rem;
  box-shadow: 0 8px 30px rgba(31, 32, 35, 0.08);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}
.AnimalCard_card__upOY7:hover {
  box-shadow: 0 14px 38px rgba(31, 32, 35, 0.13);
  transform: translateY(-2px);
}

.AnimalCard_photoPane__u2Ncg {
  position: relative;
  min-width: 0;
  min-height: 25.5rem;
}

.AnimalCard_photoLink__k_968 {
  display: block;
  width: 100%;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.AnimalCard_photo___i9oS {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 25.5rem;
  overflow: hidden;
  background: #eceae7;
}
.AnimalCard_photo___i9oS img {
  object-fit: cover;
}

.AnimalCard_photoPlaceholder__b0TNQ {
  width: 100%;
  height: 100%;
  background: linear-gradient(145deg, #eeeae5, #dcd8d3);
}

.AnimalCard_photoBadge__s1mHY {
  position: absolute;
  z-index: 2;
  left: 1rem;
  bottom: 1rem;
  max-width: calc(100% - 2rem);
  padding: 0.38rem 0.65rem;
  overflow: hidden;
  color: #fff;
  background: rgba(22, 22, 22, 0.78);
  border-radius: 999px;
  font-size: 0.7rem;
  font-weight: 500;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
}

.AnimalCard_info__EJCoQ {
  position: relative;
  z-index: 1;
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 2.35rem 1.65rem 1.55rem 1.35rem;
  background: #fff;
}
.AnimalCard_info__EJCoQ::before {
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  left: -2rem;
  width: 2.05rem;
  background: #fff;
  -webkit-clip-path: polygon(100% 0, 100% 100%, 0 50%);
          clip-path: polygon(100% 0, 100% 100%, 0 50%);
  content: "";
  pointer-events: none;
}

.AnimalCard_mobileHelpButton__kyDfZ {
  display: none;
}

.AnimalCard_heading__NpHFy {
  padding-bottom: 1.05rem;
  border-bottom: 1px solid #efefef;
}

.AnimalCard_titleLink__Mv_sL {
  color: inherit;
  text-decoration: none;
}
.AnimalCard_titleLink__Mv_sL:hover {
  color: #111;
}

.AnimalCard_name__kRiO2 {
  margin: 0 0 0.55rem;
  color: #17181b;
  font-size: clamp(1.6rem, 2.4vw, 2rem);
  font-weight: 700;
  letter-spacing: -0.035em;
  line-height: 1.08;
}

.AnimalCard_description__1ElAH {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: #77797f;
  font-size: 0.84rem;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.AnimalCard_details__1QSFq {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
}

.AnimalCard_detail__DZ8LU {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  gap: 0.55rem;
  padding: 1rem 0;
}
.AnimalCard_detail__DZ8LU dt {
  margin: 0 0 0.16rem;
  color: #a0a0a5;
  font-size: 0.72rem;
  font-weight: 400;
  line-height: 1.25;
}
.AnimalCard_detail__DZ8LU dd {
  margin: 0;
  color: #303136;
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.35;
}

.AnimalCard_gender__un5QD,
.AnimalCard_age__Pky5T,
.AnimalCard_status__erGoI {
  border-bottom: 1px solid #efefef;
}

.AnimalCard_age__Pky5T {
  padding-left: 0.75rem;
}

.AnimalCard_status__erGoI,
.AnimalCard_health__BS27Y {
  grid-column: 1/-1;
}

.AnimalCard_detailIcon__8QxJ1 {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 1.95rem;
  height: 1.95rem;
  border-radius: 50%;
}
.AnimalCard_detailIcon__8QxJ1 svg {
  width: 1.05rem;
  height: 1.05rem;
}

.AnimalCard_detailIconGender__7pGp5 {
  color: #db74ce;
  background: #fdeefe;
}

.AnimalCard_detailIconAge__uL_RV {
  color: #e3b83d;
  background: #fff8dc;
}

.AnimalCard_detailIconStatus__8RuH1 {
  color: #65bd77;
  background: #edf9ed;
}

.AnimalCard_detailIconHealth__fqdlD {
  color: #55b7d0;
  background: #eaf8fc;
}

.AnimalCard_statusBadge__0UFT4 {
  display: inline-flex;
  padding: 0.15rem 0.4rem;
  color: #5b9c65;
  background: #e7f7e3;
  border-radius: 0.18rem;
  font-size: 0.72rem;
  line-height: 1.25;
}

.AnimalCard_health__BS27Y dd {
  display: -webkit-box;
  overflow: hidden;
  font-weight: 500;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.AnimalCard_actions__OjJVD {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr);
  grid-gap: 0.65rem;
  gap: 0.65rem;
  margin-top: auto;
  padding-top: 0.8rem;
}

.AnimalCard_helpButton__1ymIy,
.AnimalCard_moreButton__avnIh {
  display: inline-flex;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  gap: 0.48rem;
  padding: 0.65rem 0.75rem;
  border-radius: 0.65rem;
  font-size: 0.78rem;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}
.AnimalCard_helpButton__1ymIy svg,
.AnimalCard_moreButton__avnIh svg {
  flex: 0 0 auto;
  width: 1rem;
  height: 1rem;
}
.AnimalCard_helpButton__1ymIy:hover,
.AnimalCard_moreButton__avnIh:hover {
  transform: translateY(-1px);
}

.AnimalCard_helpButton__1ymIy {
  color: #fff;
  background: var(--help-button-gradient);
  border: 1px solid #f97316;
}
.AnimalCard_helpButton__1ymIy:hover {
  color: #fff;
  background: var(--help-button-gradient);
  filter: brightness(1.05);
}

.AnimalCard_moreButton__avnIh {
  color: #25262a;
  background: #fff;
  border: 1px solid #8b8c91;
}
.AnimalCard_moreButton__avnIh:hover {
  color: #111;
  background: #f7f7f7;
}

@media (max-width: 1199.98px) {
  .AnimalCard_card__upOY7,
  .AnimalCard_photoPane__u2Ncg,
  .AnimalCard_photo___i9oS {
    min-height: 23rem;
  }
  .AnimalCard_info__EJCoQ {
    padding: 1.75rem 1.2rem 1.25rem 1rem;
  }
  .AnimalCard_actions__OjJVD {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
    gap: 0.45rem;
  }
  .AnimalCard_helpButton__1ymIy,
  .AnimalCard_moreButton__avnIh {
    padding-inline: 0.55rem;
    font-size: 0.72rem;
  }
}
@media (min-width: 576.02px) and (max-width: 1199.98px) {
  .AnimalCard_moreButton__avnIh {
    gap: 0;
  }
  .AnimalCard_moreButton__avnIh svg {
    display: none;
  }
}
@media (max-width: 576px) {
  .AnimalCard_card__upOY7 {
    grid-template-columns: 46% 54%;
    min-height: 19.75rem;
    border-radius: 1rem;
    box-shadow: 0 5px 20px rgba(31, 32, 35, 0.09);
  }
  .AnimalCard_card__upOY7:hover {
    transform: none;
  }
  .AnimalCard_photoPane__u2Ncg,
  .AnimalCard_photo___i9oS {
    min-height: 19.75rem;
  }
  .AnimalCard_photoBadge__s1mHY {
    display: none;
  }
  .AnimalCard_info__EJCoQ {
    padding: 1.25rem 0.8rem 0.75rem;
  }
  .AnimalCard_info__EJCoQ::before {
    display: none;
  }
  .AnimalCard_heading__NpHFy {
    padding-bottom: 0.7rem;
    border-bottom: 0;
  }
  .AnimalCard_name__kRiO2 {
    margin-bottom: 0.42rem;
    font-size: 1.36rem;
  }
  .AnimalCard_description__1ElAH {
    font-size: 0.67rem;
    line-height: 1.42;
  }
  .AnimalCard_details__1QSFq {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 0.25rem;
  }
  .AnimalCard_detail__DZ8LU {
    gap: 0.35rem;
    padding: 0.43rem 0;
    border: 0;
  }
  .AnimalCard_detail__DZ8LU dt {
    margin-bottom: 0.08rem;
    font-size: 0.58rem;
  }
  .AnimalCard_detail__DZ8LU dd {
    font-size: 0.64rem;
    line-height: 1.28;
  }
  .AnimalCard_age__Pky5T {
    padding-left: 0.2rem;
  }
  .AnimalCard_status__erGoI,
  .AnimalCard_health__BS27Y {
    grid-column: 1/-1;
  }
  .AnimalCard_detailIcon__8QxJ1 {
    width: 1.45rem;
    height: 1.45rem;
  }
  .AnimalCard_detailIcon__8QxJ1 svg {
    width: 0.8rem;
    height: 0.8rem;
  }
  .AnimalCard_statusBadge__0UFT4 {
    padding: 0.1rem 0.28rem;
    font-size: 0.6rem;
  }
  .AnimalCard_health__BS27Y dd {
    display: block;
    overflow: visible;
    -webkit-line-clamp: unset;
  }
  .AnimalCard_actions__OjJVD {
    grid-template-columns: 1fr;
    gap: 0.45rem;
    padding-top: 0.5rem;
  }
  .AnimalCard_helpButton__1ymIy {
    display: none;
  }
  .AnimalCard_mobileHelpButton__kyDfZ {
    position: absolute;
    z-index: 3;
    right: 0.7rem;
    bottom: 0.75rem;
    left: 0.7rem;
    display: inline-flex;
    min-height: 2.7rem;
    align-items: center;
    justify-content: center;
    gap: 0.48rem;
    padding: 0.6rem 0.45rem;
    color: #fff;
    background: var(--help-button-gradient);
    border: 1px solid #f97316;
    border-radius: 0.65rem;
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    -webkit-backdrop-filter: blur(5px);
            backdrop-filter: blur(5px);
  }
  .AnimalCard_mobileHelpButton__kyDfZ svg {
    width: 1.05rem;
    height: 1.05rem;
  }
  .AnimalCard_mobileHelpButton__kyDfZ:hover {
    color: #fff;
    background: var(--help-button-gradient);
    filter: brightness(1.05);
  }
  .AnimalCard_helpButton__1ymIy,
  .AnimalCard_moreButton__avnIh {
    min-height: 2.55rem;
    padding: 0.55rem 0.45rem;
    border-radius: 0.58rem;
    font-size: 0.72rem;
  }
}
@media (max-width: 360px) {
  .AnimalCard_card__upOY7 {
    grid-template-columns: 45% 55%;
  }
  .AnimalCard_info__EJCoQ {
    padding-inline: 0.65rem;
  }
  .AnimalCard_helpButton__1ymIy,
  .AnimalCard_moreButton__avnIh {
    font-size: 0.68rem;
  }
}
/*!**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js??ruleSet[1].rules[14].oneOf[7].use[4]!./node_modules/next/dist/compiled/sass-loader/cjs.js??ruleSet[1].rules[14].oneOf[7].use[5]!./src/components/cards/PersonCard/PersonCard.module.scss ***!
  \**************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.PersonCard_card__tt72b {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 1rem;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
  transition: box-shadow 0.2s, transform 0.2s;
  cursor: pointer;
}
.PersonCard_card__tt72b:hover {
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
  transform: translateY(-3px);
  color: inherit;
}

.PersonCard_photo__iKfqb {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  background: #e9ecef;
}

.PersonCard_photo__iKfqb img {
  object-fit: cover;
}

.PersonCard_info__3XLz0 {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.85rem 1rem;
}

.PersonCard_nameCol__HKw9d {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
}

.PersonCard_name__8xmal {
  font-weight: 600;
  font-size: 1.1rem;
  color: #212529;
}

.PersonCard_meta__ldvx0 {
  font-size: 0.95rem;
  color: #6c757d;
  white-space: nowrap;
  flex-shrink: 0;
}
/*!****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js??ruleSet[1].rules[14].oneOf[7].use[4]!./node_modules/next/dist/compiled/sass-loader/cjs.js??ruleSet[1].rules[14].oneOf[7].use[5]!./src/components/cards/ProjectCard/ProjectCard.module.scss ***!
  \****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.ProjectCard_card__9HGRe {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 1rem;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
  transition: box-shadow 0.2s, transform 0.2s;
  cursor: pointer;
}
.ProjectCard_card__9HGRe:hover {
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
  transform: translateY(-3px);
  color: inherit;
}

.ProjectCard_photo__tYOI2 {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  background: #e9ecef;
}

.ProjectCard_photo__tYOI2 img {
  object-fit: cover;
}

.ProjectCard_info__KeETc {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 0.85rem 1rem;
}

.ProjectCard_nameCol__b1LFD {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
}

.ProjectCard_name__Usjcz {
  font-weight: 600;
  font-size: 1.1rem;
  color: #212529;
}

.ProjectCard_status__ewrSE {
  font-size: 0.8rem;
  font-weight: 500;
  color: #6c757d;
}

.ProjectCard_meta__yUIYQ {
  font-size: 0.95rem;
  color: #6c757d;
  white-space: nowrap;
  flex-shrink: 0;
}
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js??ruleSet[1].rules[14].oneOf[7].use[4]!./node_modules/next/dist/compiled/sass-loader/cjs.js??ruleSet[1].rules[14].oneOf[7].use[5]!./src/components/buttons/ShareButton/ShareButton.module.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.ShareButton_shareButton__izf5M {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--sf-action-btn-py) var(--sf-action-btn-px);
  background: transparent;
  color: #6c757d;
  border: 1px solid #dee2e6;
  border-radius: var(--sf-action-btn-radius);
  font-weight: 600;
  font-size: var(--sf-action-btn-fs);
  line-height: var(--sf-action-btn-line-height);
  box-sizing: border-box;
  cursor: pointer;
  transition: background-color 0.2s, color 0.2s;
}
.ShareButton_shareButton__izf5M:hover {
  background: #f0f0f0;
  color: #212529;
}

.ShareButton_labelDesktop__RG4ml {
  display: inline;
}

.ShareButton_iconMobile__nbT8w {
  display: none;
  width: 1.25rem;
  height: 1.25rem;
  flex-shrink: 0;
}

@media (max-width: 575.98px) {
  .ShareButton_shareButton__izf5M {
    padding: 0.5rem;
    min-width: 2.5rem;
    min-height: 2.5rem;
  }
  .ShareButton_labelDesktop__RG4ml {
    display: none;
  }
  .ShareButton_iconMobile__nbT8w {
    display: block;
  }
  .ShareButton_showLabelOnMobile__vSwAY {
    gap: 0.7rem;
  }
  .ShareButton_showLabelOnMobile__vSwAY .ShareButton_labelDesktop__RG4ml {
    display: inline;
  }
}
.ShareButton_customIcon__itJal {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
}
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js??ruleSet[1].rules[14].oneOf[7].use[4]!./node_modules/next/dist/compiled/sass-loader/cjs.js??ruleSet[1].rules[14].oneOf[7].use[5]!./src/components/cards/CampaignCard/CampaignCard.module.scss ***!
  \******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
.CampaignCard_card__JrGHX {
  --campaign-accent: #6842d9;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 1.25rem 1.1rem;
  border: 1px solid #f0eef4;
  border-radius: 1.25rem;
  background: #fff;
  color: #292638;
  box-shadow: 0 3px 14px rgba(41, 38, 56, 0.025);
}

.CampaignCard_main__nm1K1 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 38%);
  align-items: start;
  grid-gap: 1rem;
  gap: 1rem;
  flex: 1 1;
}

.CampaignCard_info__SG898 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  min-width: 0;
  align-self: start;
}

.CampaignCard_mainLink__psGjS {
  display: block;
  color: inherit;
  text-decoration: none;
}
.CampaignCard_mainLink__psGjS:hover {
  color: var(--campaign-accent);
}

.CampaignCard_title__sEWZH {
  margin: 0 0 0.6rem;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: -0.01em;
  overflow-wrap: anywhere;
}

.CampaignCard_excerpt__1w7zU {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
  margin: 0;
  color: #777280;
  font-size: 0.875rem;
  line-height: 1.5;
}

.CampaignCard_fundraising__Xu1ap {
  margin-top: 1rem;
}

.CampaignCard_percent__t3Wwn {
  display: block;
  margin-bottom: 0.5rem;
  color: var(--campaign-accent);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.25;
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
}

.CampaignCard_progress__6owph {
  height: 0.4375rem;
  overflow: hidden;
  border-radius: 999px;
  background: #f1eff5;
}

.CampaignCard_progressBar__c6eGb {
  height: 100%;
  border-radius: inherit;
  background: var(--campaign-accent);
}

.CampaignCard_stats__3mLER {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: auto auto;
  grid-gap: 0.375rem 0.75rem;
  gap: 0.375rem 0.75rem;
  margin: 0.625rem 0 0;
}

.CampaignCard_stat__YTMej {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  min-width: 0;
}
.CampaignCard_stat__YTMej dt {
  color: #777280;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.4;
}
.CampaignCard_stat__YTMej dd {
  margin: 0;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.3;
  font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}
.CampaignCard_stat__YTMej .CampaignCard_collected__Ozsu_ {
  font-weight: 700;
}

.CampaignCard_supporters__A3nH3 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 1.75rem;
  color: #777280;
  font-size: 0.8125rem;
  line-height: 1.5;
}
.CampaignCard_supporters__A3nH3 svg {
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  color: var(--campaign-accent);
}
.CampaignCard_supporters__A3nH3 strong {
  font-size: 0.9375rem;
  color: #514c5d;
}

.CampaignCard_photoLink__4jaka {
  display: block;
  width: 100%;
  max-width: 9rem;
  justify-self: end;
  align-self: center;
  border-radius: 50%;
}

.CampaignCard_photo__4LgGO {
  position: relative;
  aspect-ratio: 1;
  border: 1px solid #9277ec;
  border-radius: 50%;
  overflow: hidden;
}
.CampaignCard_photo__4LgGO img {
  object-fit: cover;
}

.CampaignCard_photoPlaceholder__jFVk_ {
  width: 100%;
  height: 100%;
  background: linear-gradient(145deg, #f7f3ff, #e6dcfa);
}

.CampaignCard_actions__RhjOZ {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  grid-gap: 1.1rem;
  gap: 1.1rem;
  margin-top: 1.5rem;
}

.CampaignCard_donateAction__6OzWi,
.CampaignCard_shareAction__bGF41 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  min-width: 0;
  min-height: 2.75rem;
  padding: 0.65rem 0.5rem;
  border: 1px solid transparent;
  border-radius: 0.55rem;
  font-size: 0.8125rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
}
.CampaignCard_donateAction__6OzWi svg,
.CampaignCard_shareAction__bGF41 svg {
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
}

.CampaignCard_donateAction__6OzWi {
  color: #fff;
  background: linear-gradient(110deg, #653bd7, #6945d5);
  box-shadow: 0 4px 10px rgba(104, 66, 217, 0.16);
}
.CampaignCard_donateAction__6OzWi svg {
  width: 1.2rem;
  height: 1.2rem;
}
.CampaignCard_donateAction__6OzWi:hover {
  color: #fff;
  filter: brightness(1.07);
}

button.CampaignCard_shareAction__bGF41 {
  color: var(--campaign-accent);
  background: #fff;
  border-color: #f1eef7;
  box-shadow: 0 2px 8px rgba(41, 38, 56, 0.04);
}
button.CampaignCard_shareAction__bGF41:hover {
  color: #5630c3;
  background: #f8f5ff;
}

.CampaignCard_mainLink__psGjS:focus-visible,
.CampaignCard_photoLink__4jaka:focus-visible,
.CampaignCard_donateAction__6OzWi:focus-visible,
.CampaignCard_shareAction__bGF41:focus-visible {
  outline: 2px solid var(--campaign-accent);
  outline-offset: 4px;
}

.CampaignCard_priorityCard__7Gcyt {
  --priority-accent-from: #f59e0b;
  --priority-accent-to: #f97316;
  --priority-accent-gradient: linear-gradient(
    135deg,
    var(--priority-accent-from),
    var(--priority-accent-to)
  );
  --campaign-accent: var(--priority-accent-to);
  border-color: transparent;
  background: linear-gradient(135deg, #fff7f2 0%, #fffaf8 48%, #fffefd 100%) padding-box, linear-gradient(110deg, rgba(249, 115, 22, 0.06) 0%, rgba(249, 115, 22, 0.09) 50%, rgba(249, 115, 22, 0.18) 100%) border-box;
  box-shadow: 0 8px 30px rgba(249, 115, 22, 0.035);
}
.CampaignCard_priorityCard__7Gcyt .CampaignCard_excerpt__1w7zU {
  -webkit-line-clamp: 4;
}
.CampaignCard_priorityCard__7Gcyt .CampaignCard_progress__6owph {
  background: #ffecd9;
}
.CampaignCard_priorityCard__7Gcyt .CampaignCard_progressBar__c6eGb {
  background: var(--priority-accent-gradient);
}
.CampaignCard_priorityCard__7Gcyt .CampaignCard_photo__4LgGO {
  border-color: rgba(249, 115, 22, 0.5);
}
.CampaignCard_priorityCard__7Gcyt .CampaignCard_photoPlaceholder__jFVk_ {
  background: linear-gradient(145deg, #fff4e7, #ffe1c2);
}
.CampaignCard_priorityCard__7Gcyt .CampaignCard_donateAction__6OzWi {
  border: 0;
  background: var(--campaign-accent);
  box-shadow: 0 4px 12px rgba(249, 115, 22, 0.18);
}
.CampaignCard_priorityCard__7Gcyt .CampaignCard_shareAction__bGF41 {
  color: #d85f0b;
  border-color: rgba(249, 115, 22, 0.14);
  box-shadow: 0 2px 8px rgba(249, 115, 22, 0.05);
}
.CampaignCard_priorityCard__7Gcyt .CampaignCard_shareAction__bGF41:hover {
  color: #b94b05;
  background: #fff2e7;
}

.CampaignCard_priorityBadge__GX3Pv {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  gap: 0.5rem;
  max-width: 100%;
  margin-bottom: 0.875rem;
  padding: 0.375rem 0.625rem;
  border-radius: 999px;
  background: rgba(249, 115, 22, 0.08);
  color: #d85f0b;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.015em;
  text-transform: uppercase;
}
.CampaignCard_priorityBadge__GX3Pv svg {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  color: var(--priority-accent-to);
}

@media (max-width: 575.98px) {
  .CampaignCard_priorityCard__7Gcyt .CampaignCard_excerpt__1w7zU {
    -webkit-line-clamp: 2;
  }
  .CampaignCard_card__JrGHX {
    padding: 1rem;
    border-radius: 1rem;
  }
  .CampaignCard_main__nm1K1 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 34%);
    gap: 0.75rem;
  }
  .CampaignCard_title__sEWZH {
    font-size: 1rem;
    margin-bottom: 0.4rem;
  }
  .CampaignCard_excerpt__1w7zU {
    font-size: 0.8125rem;
  }
  .CampaignCard_percent__t3Wwn {
    font-size: 0.875rem;
    margin-bottom: 0.4rem;
  }
  .CampaignCard_stat__YTMej dd {
    font-size: 0.875rem;
  }
  .CampaignCard_supporters__A3nH3 {
    margin-top: 1.5rem;
  }
  .CampaignCard_actions__RhjOZ {
    grid-template-columns: minmax(0, 1fr) 2.75rem;
    gap: 0.65rem;
    margin-top: 1rem;
  }
  .CampaignCard_donateAction__6OzWi {
    font-size: 0.8125rem;
  }
  button.CampaignCard_shareAction__bGF41 {
    padding: 0.5rem;
  }
}
