.mg-camp-layout { padding-top: 22px; padding-bottom: 48px; }
.mg-camp-layout :is(.main-container, .container-main, .container) { width: 100%; max-width: none; margin: 0; padding: 0; }
.mg-camp-layout .mg-camp-breadcrumbs { margin: 0 0 20px; font-weight: 500; }
.mg-camp-layout .mg-camp-bc-current { font-weight: 600; overflow-wrap: anywhere; }
.mg-camp-heading { margin-bottom: 28px; }
.mg-camp-layout .mg-camp-title { font-size: 36px; line-height: 1.2; letter-spacing: 0; overflow-wrap: anywhere; }
.mg-camp-layout .mg-camp-kicker { letter-spacing: 0; }
.mg-camp-primary { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(360px, .9fr); grid-template-rows: min-content 1fr; grid-template-areas: "media donate" "story donate"; gap: 24px 32px; align-items: start; }
.mg-camp-media { grid-area: media; min-width: 0; }
.mg-camp-donate { grid-area: donate; min-width: 0; }
.mg-camp-story { grid-area: story; min-width: 0; }
.mg-camp-layout :is(.mg-campaign-hero, .mg-camp-overview-section, .single-campaign-section) { padding: 0; margin: 0; }
.mg-camp-layout :is(.mg-hero-slider, .mg-hero-fallback) { width: 100%; border-radius: 8px; }
.mg-camp-layout :is(.mg-hero-slide, .mg-hero-fallback) { height: auto; aspect-ratio: 3 / 2; max-height: 420px; }
.mg-camp-layout .mg-hero-slide { background: var(--lightGrey); }
.mg-camp-layout .mg-hero-slide img { object-fit: contain; }
.mg-camp-layout .mg-hero-gradient { display: none; }
.mg-camp-layout .mg-dbox { margin-top: 0; }
.mg-camp-donate .mg-dbox-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mg-camp-donate .mg-amt { min-width: 0; }
.mg-camp-donate :is(.mg-amt-label, .mg-amt-badge, .mg-dbox-title, .mg-dbox-sub, .mg-dbox-summary-value) { overflow-wrap: anywhere; }
.mg-camp-layout .mg-camp-desc-wrap { margin-top: 0; }
.mg-camp-layout .mg-camp-desc { font-size: 15px; }
.mg-camp-layout .mg-camp-cats { margin-top: 16px; }
.mg-camp-layout :is(.mg-camp-cats-label, .mg-camp-info-label) { letter-spacing: 0; }
.mg-camp-support { margin-top: 40px; padding-top: 28px; border-top: 1px solid var(--borderGrey); }
.mg-camp-head { display: flex; align-items: flex-start; gap: 16px; margin-bottom: 20px; }
.mg-camp-head-title { margin: 0; font-size: 24px; }
.mg-camp-head-sub { margin: 6px 0 0; color: var(--grey); font-size: 14px; line-height: 1.55; }
.mg-camp-row { margin-top: 16px; }
.mg-camp-row-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: start; }
.mg-camp-row-2.is-1 { grid-template-columns: minmax(0, 1fr); }
.mg-camp-col { min-width: 0; }
.mg-camp-row-auto { display: grid; gap: 20px; align-items: start; }
.mg-camp-row-auto.is-1 { grid-template-columns: minmax(0, 1fr); }
.mg-camp-row-auto.is-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.mg-camp-row-auto.is-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.mg-camp-layout .mg-camp-note-card { margin-top: 0; }
.mg-camp-layout :is(.mg-camp-note-title, .mg-camp-note-text, .mg-camp-info-value, .mg-camp-amt-value) { overflow-wrap: anywhere; }
.mg-camp-layout .mg-latest-donations { margin: 40px 0 0; }
.mg-camp-layout .mg-latest-head { margin-top: 0; }
.mg-camp-layout .mg-latest-title { font-size: 24px; }
@media (max-width: 980px) {
  .mg-camp-primary { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; grid-template-areas: "media" "donate" "story"; gap: 24px; }
  .mg-camp-layout :is(.mg-hero-slide, .mg-hero-fallback) { aspect-ratio: 16 / 9; max-height: 360px; }
  .mg-camp-donate .mg-dbox-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .mg-camp-row-auto.is-3 { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 768px) {
  .mg-camp-layout { padding-top: 16px; padding-bottom: 32px; }
  .mg-camp-heading { margin-bottom: 20px; }
  .mg-camp-layout .mg-camp-title { font-size: 30px; }
  .mg-camp-row-2, .mg-camp-row-auto.is-2 { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .mg-camp-support { margin-top: 28px; padding-top: 24px; }
  .mg-camp-layout .mg-latest-donations { margin-top: 28px; }
}
@media (max-width: 519px) {
  .mg-camp-layout .mg-camp-title { font-size: 28px; }
  .mg-camp-layout .mg-camp-breadcrumbs { font-size: 12px; gap: 6px; margin-bottom: 16px; }
  .mg-camp-layout .mg-camp-kickerrow { gap: 8px; }
  .mg-camp-layout :is(.mg-hero-slide, .mg-hero-fallback) { aspect-ratio: 16 / 10; }
  .mg-camp-donate .mg-dbox-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mg-camp-layout .mg-dbox { padding: 16px; }
  .mg-camp-layout .mg-periods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mg-camp-layout .mg-camp-progress-inner { flex-direction: column; align-items: stretch; }
  .mg-camp-layout .mg-camp-ring { align-self: center; }
  .mg-camp-layout :is(.mg-camp-head-title, .mg-latest-title) { font-size: 22px; }
  body:has(.mg-camp-layout) .mg-footer-side { min-width: 0; grid-template-columns: minmax(0, 1fr); }
  body:has(.mg-camp-layout) .mg-foot-card { min-width: 0; }
  body:has(.mg-camp-layout) .mg-foot-store { flex-wrap: wrap; }
}
@media (prefers-reduced-motion: reduce) {
  .mg-camp-layout *, .mg-camp-layout *::before, .mg-camp-layout *::after { animation: none !important; transition: none !important; }
}
