@charset "UTF-8";
/* ==========================================================================
   후원 페이지 전용 (donate.html) — style.css 후원 모듈·입양 카드 + sub.css 컴포넌트 확장
   1) 후원하기(메인 후원 모듈)  2) 결연후원  3) 후원증액  4) 후원Q&A  5) 기업후원
   ========================================================================== */

/* 본문 안 링크 */
.callout a, .accordion__panel a { font-weight: 700; color: var(--c-orange-deep); text-decoration: underline; text-underline-offset: 3px; }
.callout a:hover, .accordion__panel a:hover { color: var(--c-orange-hover); }

/* 1) 후원하기: 데스크톱 고정 소개 영역이 헤더 + LNB 아래에 머물도록 */
.is-sub .donate__intro { top: calc(var(--header-h) + var(--lnb-h) + 1.5rem); }
/* (좁은 화면 후원 카드 보정은 style.css 공통 규칙으로 옮김 — index.html에도 적용) */

/* 2) 결연후원 --------------------------------------------------------------- */
.sponsor-note { margin-top: 1.5rem; }
.sponsor-actions { margin-top: 1.5rem; }
@media (max-width: 767.98px) { .sponsor-actions .btn { flex: 1 1 100%; } }

/* 3) 후원증액 --------------------------------------------------------------- */
.increase-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; }
.increase-grid .sec-head { margin-bottom: 1.75rem; }
.impact-quote {
  margin: 0; padding: 1.25rem 1.375rem;
  border-left: 4px solid var(--c-orange); border-radius: 0 var(--r-card) var(--r-card) 0; background: var(--c-cream);
}
.impact-quote__label { display: flex; align-items: center; gap: .375rem; font-size: .8125rem; font-weight: 800; color: var(--c-orange-deep); }
.impact-quote__label .ico { color: var(--c-orange); }
.impact-quote__text { margin: .5rem 0 0; font-size: clamp(1.0625rem, 1rem + .3vw, 1.25rem); font-weight: 700; line-height: 1.55; }
.increase-uses { margin-top: 2.25rem; }
.increase-callout { margin-top: 1rem; }

/* 4) 후원Q&A ---------------------------------------------------------------- */
.faq-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: .5rem; }
.faq-grid .sec-head .text-link { margin-top: .75rem; }

/* 5) 기업후원 --------------------------------------------------------------- */
.corp-pledge {
  display: flex; align-items: center; gap: 1rem; margin-top: 1.25rem; padding: 1.25rem 1.375rem;
  border-radius: var(--r-card); background: var(--c-warm-dark); color: var(--c-white);
}
.corp-pledge__ico { display: grid; place-items: center; flex: none; width: 3rem; height: 3rem; border-radius: 50%; background: var(--c-orange); color: var(--c-ink); }
.corp-pledge__body { min-width: 0; }
.corp-pledge__title { font-weight: 700; line-height: 1.5; }
.corp-pledge .text-link { color: var(--c-orange); }
.corp-pledge :focus-visible { outline-color: var(--c-white); }
.corp-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2.5rem; margin-top: 3rem; }
.corp-grid > .sub-block { margin-top: 0; }
.steps.steps--stack { grid-template-columns: minmax(0, 1fr); }

/* 반응형 -------------------------------------------------------------------- */
@media (min-width: 768px) {
  .steps--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .corp-pledge { padding: 1.5rem 2rem; gap: 1.25rem; }
  .corp-pledge__body { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .25rem 1.5rem; flex: 1; }
}
@media (min-width: 1024px) {
  .increase-grid { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 4rem; align-items: start; }
  .faq-grid { grid-template-columns: minmax(0, 4fr) minmax(0, 8fr); gap: 4rem; align-items: start; }
  .faq-grid > .sec-head { position: sticky; top: calc(var(--header-h) + var(--lnb-h) + 2rem); }
  .corp-grid { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: 4rem; align-items: start; }
}
@media (min-width: 1200px) {
  .pets.pets--three { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2.25rem 2rem; }
}
