.nonprofit-page{
  background:#050505;
  color:#fff;
  overflow-x:hidden;
}

.nonprofit-shell{
  width:min(1540px, calc(100% - 88px));
  margin-inline:auto;
}

.nonprofit-main{
  background:
    radial-gradient(circle at 80% 4%, rgba(249,115,22,0.14), transparent 28%),
    linear-gradient(180deg, #050505 0%, #080a0c 48%, #050505 100%);
}

.nonprofit-hero{
  padding:76px 0 54px;
  border-bottom:1px solid rgba(255,255,255,0.08);
}

.nonprofit-hero__inner{
  display:grid;
  grid-template-columns:minmax(0, 1.25fr) minmax(360px, 0.75fr);
  gap:48px;
  align-items:center;
}

.nonprofit-hero__eyebrow,
.nonprofit-section__eyebrow,
.nonprofit-details-card__eyebrow{
  margin-bottom:12px;
  color:var(--css-orange, #f97316);
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:22px;
  font-weight:800;
  letter-spacing:0.085em;
  text-transform:uppercase;
}

.nonprofit-hero__title{
  max-width:900px;
  margin-bottom:18px;
  color:#fff;
  font-family:var(--font-display, "Staatliches", Impact, sans-serif);
  font-size:clamp(4.1rem, 7vw, 7.6rem);
  font-weight:400;
  line-height:0.88;
  letter-spacing:0.035em;
  text-transform:uppercase;
  text-shadow:0 4px 0 rgba(0,0,0,0.72), 0 18px 42px rgba(0,0,0,0.5);
}

.nonprofit-hero__text{
  max-width:850px;
  color:rgba(255,255,255,0.86);
  font-size:21px;
  line-height:1.5;
}

.nonprofit-hero__actions,
.nonprofit-final-cta__actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:26px;
}

.nonprofit-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  border-radius:7px;
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:20px;
  font-weight:800;
  letter-spacing:0.06em;
  line-height:1;
  padding:15px 24px;
  text-decoration:none;
  text-transform:uppercase;
  transition:transform 160ms ease, border-color 160ms ease, background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.nonprofit-button:hover,
.nonprofit-button:focus-visible{
  transform:translateY(-2px);
}

.nonprofit-button--primary{
  border:1px solid var(--css-orange, #f97316);
  background:linear-gradient(180deg, var(--css-orange, #f97316), var(--css-orange-dark, #ea580c));
  box-shadow:0 18px 38px rgba(249,115,22,0.24);
  color:#fff;
}

.nonprofit-button--outline{
  border:1px solid rgba(255,255,255,0.5);
  background:rgba(255,255,255,0.05);
  color:#fff;
}

.nonprofit-button--outline:hover,
.nonprofit-button--outline:focus-visible{
  border-color:var(--logo-blue, #0393ca);
  color:var(--logo-blue, #0393ca);
}

.nonprofit-hero__trust{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  max-width:760px;
  margin-top:28px;
  list-style:none;
}

.nonprofit-hero__trust li{
  position:relative;
  padding:12px 14px 12px 34px;
  border:1px solid rgba(255,255,255,0.13);
  border-radius:8px;
  background:rgba(255,255,255,0.045);
  color:rgba(255,255,255,0.86);
  font-weight:800;
}

.nonprofit-hero__trust li::before{
  content:"";
  position:absolute;
  left:14px;
  top:18px;
  width:9px;
  height:9px;
  border-radius:999px;
  background:var(--css-orange, #f97316);
}

.nonprofit-hero__panel{
  position:relative;
  overflow:hidden;
  min-height:500px;
  padding:30px;
  border:1px solid rgba(249,115,22,0.28);
  border-radius:10px;
  background:
    radial-gradient(circle at 70% 18%, rgba(249,115,22,0.24), transparent 30%),
    linear-gradient(160deg, rgba(19,23,26,0.94), rgba(5,6,7,0.96));
  box-shadow:0 24px 60px rgba(0,0,0,0.38);
  display:grid;
  grid-template-rows:auto minmax(0, 1fr) auto;
  align-items:center;
  justify-items:center;
}

.nonprofit-hero__panel::before{
  content:"";
  position:absolute;
  inset:22px;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:8px;
  background:
    radial-gradient(circle at 50% 42%, rgba(249,115,22,0.16), transparent 42%),
    repeating-linear-gradient(90deg, rgba(255,255,255,0.04) 0 1px, transparent 1px 72px),
    repeating-linear-gradient(0deg, rgba(255,255,255,0.035) 0 1px, transparent 1px 72px);
  opacity:0.72;
}

.nonprofit-hero__panel > *{
  position:relative;
  z-index:1;
}

.nonprofit-hero__badge{
  width:max-content;
  justify-self:start;
  padding:10px 12px;
  border:1px solid rgba(249,115,22,0.6);
  border-radius:999px;
  color:var(--css-orange, #f97316);
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-weight:800;
  letter-spacing:0.075em;
  text-transform:uppercase;
}

.nonprofit-hero__map{
  display:block;
  width:min(88%, 430px);
  max-height:320px;
  margin:18px auto 16px;
  object-fit:contain;
  filter:drop-shadow(0 22px 34px rgba(0,0,0,0.36));
}

.nonprofit-hero__panel-copy{
  justify-self:stretch;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,0.1);
}

.nonprofit-hero__panel-copy h2{
  max-width:420px;
  margin-bottom:12px;
  color:#fff;
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:34px;
  line-height:0.95;
  letter-spacing:0.045em;
  text-transform:uppercase;
}

.nonprofit-hero__panel-copy p{
  max-width:430px;
  color:rgba(255,255,255,0.76);
  font-size:17px;
  line-height:1.45;
}

.nonprofit-section{
  padding:64px 0;
}

.nonprofit-section__header{
  max-width:860px;
  margin-bottom:26px;
}

.nonprofit-section__header--form{
  margin-bottom:28px;
}

.nonprofit-section__header h2{
  margin-bottom:10px;
  color:#fff;
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:clamp(2.5rem, 4.2vw, 4.2rem);
  line-height:0.94;
  letter-spacing:0.045em;
  text-transform:uppercase;
}

.nonprofit-section__header p{
  color:rgba(255,255,255,0.78);
  font-size:18px;
  line-height:1.5;
}

.nonprofit-card-grid{
  display:grid;
  gap:18px;
}

.nonprofit-card-grid--three{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.nonprofit-card-grid--six{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.nonprofit-info-card,
.nonprofit-service-card{
  min-height:230px;
  padding:24px;
  border:1px solid rgba(255,255,255,0.14);
  border-radius:8px;
  background:
    radial-gradient(circle at 88% 0%, rgba(249,115,22,0.12), transparent 28%),
    linear-gradient(180deg, rgba(18,21,24,0.9), rgba(7,8,9,0.9));
}

.nonprofit-info-card__number{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  margin-bottom:18px;
  border:1px solid rgba(249,115,22,0.76);
  border-radius:8px;
  color:var(--css-orange, #f97316);
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-weight:800;
}

.nonprofit-info-card h3,
.nonprofit-service-card h3,
.nonprofit-process__grid h3{
  margin-bottom:10px;
  color:#fff;
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:28px;
  line-height:0.98;
  letter-spacing:0.045em;
  text-transform:uppercase;
}

.nonprofit-info-card p,
.nonprofit-service-card p,
.nonprofit-process__grid p{
  color:rgba(255,255,255,0.76);
  line-height:1.45;
}

.nonprofit-service-card{
  min-height:200px;
}

.nonprofit-service-card::before{
  content:"";
  display:block;
  width:46px;
  height:4px;
  margin-bottom:20px;
  border-radius:999px;
  background:var(--css-orange, #f97316);
}

.nonprofit-note{
  margin-top:22px;
  padding:16px 18px;
  border:1px solid rgba(249,115,22,0.28);
  border-radius:8px;
  background:rgba(249,115,22,0.07);
  color:rgba(255,255,255,0.82);
  font-weight:700;
}

.nonprofit-help{
  background:
    radial-gradient(circle at 10% 10%, rgba(3,147,202,0.08), transparent 26%),
    #070809;
}

.nonprofit-process__grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.14);
  border-radius:8px;
  list-style:none;
  background:#101214;
}

.nonprofit-process__grid li{
  padding:24px;
  min-height:250px;
  background:
    radial-gradient(circle at 84% 0%, rgba(249,115,22,0.11), transparent 30%),
    linear-gradient(180deg, rgba(18,21,24,0.78), rgba(7,8,9,0.92));
}

.nonprofit-process__grid li + li{
  border-left:1px solid rgba(255,255,255,0.12);
}

.nonprofit-process__grid span{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  margin-bottom:18px;
  border-radius:999px;
  background:var(--css-orange, #f97316);
  color:#fff;
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:22px;
  font-weight:800;
}

.nonprofit-application{
  background:
    radial-gradient(circle at 80% 20%, rgba(249,115,22,0.09), transparent 28%),
    linear-gradient(180deg, #f7f4ee, #ede9df);
  color:#111827;
}

.nonprofit-application__grid{
  display:grid;
  grid-template-columns:minmax(0, 1.55fr) minmax(340px, 0.75fr);
  gap:26px;
  align-items:start;
}

.nonprofit-application__form-card,
.nonprofit-details-card{
  border:1px solid rgba(17,24,39,0.11);
  border-radius:10px;
  background:#fff;
  box-shadow:0 20px 60px rgba(0,0,0,0.12);
}

.nonprofit-application__form-card{
  padding:28px;
}

.nonprofit-application .nonprofit-section__eyebrow{
  color:var(--css-orange, #f97316);
}

.nonprofit-application .nonprofit-section__header h2{
  color:#111827;
}

.nonprofit-application .nonprofit-section__header p{
  color:#5f6368;
}

.nonprofit-form__status{
  min-height:24px;
  margin-bottom:10px;
  color:#b45309;
  font-weight:800;
}

.nonprofit-form fieldset{
  min-width:0;
  margin:0 0 28px;
  padding:0 0 26px;
  border:0;
  border-bottom:1px solid rgba(17,24,39,0.1);
}

.nonprofit-form fieldset:last-of-type{
  margin-bottom:18px;
}

.nonprofit-form legend{
  margin-bottom:18px;
  color:#111827;
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:28px;
  font-weight:800;
  letter-spacing:0.055em;
  text-transform:uppercase;
}

.nonprofit-field-grid{
  display:grid;
  gap:16px;
}

.nonprofit-field-grid--two{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.nonprofit-field-grid--three{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.nonprofit-field{
  margin-bottom:16px;
}

.nonprofit-field label,
.nonprofit-choice-group > legend{
  display:block;
  margin-bottom:8px;
  color:#111827;
  font-weight:800;
}

.nonprofit-field label span,
.nonprofit-choice-group > legend span{
  color:var(--css-orange, #f97316);
}

.nonprofit-field input,
.nonprofit-field select,
.nonprofit-field textarea{
  width:100%;
  min-height:52px;
  border:1px solid #d7dce2;
  border-radius:8px;
  background:#fff;
  color:#111827;
  padding:12px 14px;
  transition:border-color 160ms ease, box-shadow 160ms ease;
}

.nonprofit-field textarea{
  min-height:120px;
  resize:vertical;
}

.nonprofit-field input:focus,
.nonprofit-field select:focus,
.nonprofit-field textarea:focus,
.nonprofit-choice-grid input:focus-visible + span,
.nonprofit-consent input:focus-visible + span{
  border-color:var(--css-orange, #f97316);
  box-shadow:0 0 0 3px rgba(249,115,22,0.16);
  outline:0;
}

.nonprofit-field input[aria-invalid="true"],
.nonprofit-field select[aria-invalid="true"],
.nonprofit-field textarea[aria-invalid="true"],
.nonprofit-choice-group[aria-invalid="true"] .nonprofit-choice-grid,
.nonprofit-consent input[aria-invalid="true"] + span{
  border-color:#b42318;
}

.nonprofit-error{
  min-height:20px;
  margin-top:6px;
  color:#b42318;
  font-size:13px;
  font-weight:800;
}

.nonprofit-field-help{
  margin:-10px 0 14px;
  color:#5f6368;
}

.nonprofit-choice-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
}

.nonprofit-choice-grid--compact{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

.nonprofit-choice-grid label{
  min-width:0;
}

.nonprofit-choice-grid input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.nonprofit-choice-grid span,
.nonprofit-consent span{
  display:flex;
  align-items:center;
  min-height:48px;
  border:1px solid #d7dce2;
  border-radius:8px;
  background:#fff;
  color:#1f2937;
  cursor:pointer;
  font-weight:800;
  line-height:1.2;
  padding:11px 12px;
  transition:border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.nonprofit-choice-grid span::before,
.nonprofit-consent span::before{
  content:"";
  width:16px;
  height:16px;
  flex:0 0 16px;
  margin-right:10px;
  border:1px solid #aab2bf;
  border-radius:4px;
  background:#fff;
}

.nonprofit-choice-grid input[type="radio"] + span::before{
  border-radius:999px;
}

.nonprofit-choice-grid input:checked + span,
.nonprofit-consent input:checked + span{
  border-color:var(--css-orange, #f97316);
  background:#fff1e7;
  box-shadow:inset 0 0 0 1px rgba(249,115,22,0.28);
}

.nonprofit-choice-grid input:checked + span::before,
.nonprofit-consent input:checked + span::before{
  border-color:var(--css-orange, #f97316);
  background:var(--css-orange, #f97316);
  box-shadow:inset 0 0 0 3px #fff;
}

.nonprofit-consent{
  display:block;
}

.nonprofit-consent input{
  position:absolute;
  opacity:0;
}

.nonprofit-consent span{
  align-items:flex-start;
}

.nonprofit-consent span::before{
  margin-top:2px;
}

.nonprofit-form__submit{
  width:100%;
}

.nonprofit-details-card{
  position:sticky;
  top:96px;
  padding:28px;
}

.nonprofit-details-card__eyebrow{
  font-size:18px;
}

.nonprofit-details-card h2{
  margin-bottom:18px;
  color:#111827;
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:38px;
  line-height:0.95;
  letter-spacing:0.045em;
  text-transform:uppercase;
}

.nonprofit-details-card ul{
  display:grid;
  gap:12px;
  list-style:none;
}

.nonprofit-details-card li{
  position:relative;
  padding-left:28px;
  color:#374151;
  font-weight:700;
  line-height:1.45;
}

.nonprofit-details-card li::before{
  content:"";
  position:absolute;
  top:0.32em;
  left:0;
  width:16px;
  height:16px;
  border:2px solid var(--css-orange, #f97316);
  border-radius:999px;
}

.nonprofit-details-card li::after{
  content:"";
  position:absolute;
  top:0.62em;
  left:6px;
  width:4px;
  height:7px;
  border:solid var(--css-orange, #f97316);
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}

.nonprofit-final-cta{
  padding:0 0 70px;
  background:#050505;
}

.nonprofit-final-cta__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:28px;
  border:1px solid rgba(249,115,22,0.32);
  border-radius:10px;
  background:
    radial-gradient(circle at 0% 50%, rgba(249,115,22,0.15), transparent 28%),
    linear-gradient(180deg, #111315, #070809);
}

.nonprofit-final-cta h2{
  margin-bottom:6px;
  color:#fff;
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:38px;
  line-height:0.98;
  letter-spacing:0.045em;
  text-transform:uppercase;
}

.nonprofit-final-cta p{
  color:rgba(255,255,255,0.78);
  font-size:18px;
}

.nonprofit-success{
  padding:28px;
}

.nonprofit-success__icon{
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  margin-bottom:18px;
  border-radius:999px;
  background:var(--css-orange, #f97316);
  color:#fff;
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:32px;
}

.nonprofit-success h3{
  margin-bottom:12px;
  color:#111827;
  font-family:var(--font-heading, "Barlow Condensed", Impact, sans-serif);
  font-size:38px;
  line-height:0.98;
  letter-spacing:0.045em;
  text-transform:uppercase;
}

.nonprofit-success p{
  color:#4b5563;
  font-size:18px;
}

.nonprofit-success ul{
  display:grid;
  gap:10px;
  margin:22px 0;
  padding:18px;
  border:1px solid rgba(17,24,39,0.1);
  border-radius:8px;
  background:#f8fafc;
  color:#111827;
  font-weight:800;
  list-style-position:inside;
}

.nonprofit-success__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

@media (max-width:1100px){
  .nonprofit-shell{
    width:min(100% - 44px, 1540px);
  }

  .nonprofit-hero__inner,
  .nonprofit-application__grid{
    grid-template-columns:minmax(0, 1fr);
  }

  .nonprofit-hero__panel{
    min-height:430px;
  }

  .nonprofit-hero__map{
    width:min(78%, 380px);
    max-height:280px;
  }

  .nonprofit-card-grid--three,
  .nonprofit-card-grid--six{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .nonprofit-process__grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .nonprofit-process__grid li + li{
    border-left:0;
  }

  .nonprofit-process__grid li:nth-child(even){
    border-left:1px solid rgba(255,255,255,0.12);
  }

  .nonprofit-process__grid li:nth-child(n + 3){
    border-top:1px solid rgba(255,255,255,0.12);
  }

  .nonprofit-details-card{
    position:static;
  }
}

@media (max-width:760px){
  .nonprofit-shell{
    width:min(100% - 28px, 1540px);
  }

  .nonprofit-hero{
    padding:48px 0 38px;
  }

  .nonprofit-hero__title{
    font-size:clamp(3.3rem, 15vw, 4.6rem);
  }

  .nonprofit-hero__text{
    font-size:18px;
  }

  .nonprofit-hero__panel{
    min-height:380px;
    padding:22px;
  }

  .nonprofit-hero__map{
    width:min(92%, 320px);
    max-height:230px;
    margin:14px auto 12px;
  }

  .nonprofit-hero__panel-copy h2{
    font-size:28px;
  }

  .nonprofit-hero__actions,
  .nonprofit-final-cta__actions,
  .nonprofit-success__actions{
    display:grid;
    grid-template-columns:minmax(0, 1fr);
  }

  .nonprofit-button{
    width:100%;
  }

  .nonprofit-hero__trust,
  .nonprofit-card-grid--three,
  .nonprofit-card-grid--six,
  .nonprofit-process__grid,
  .nonprofit-field-grid--two,
  .nonprofit-field-grid--three,
  .nonprofit-choice-grid,
  .nonprofit-choice-grid--compact{
    grid-template-columns:minmax(0, 1fr);
  }

  .nonprofit-section{
    padding:44px 0;
  }

  .nonprofit-info-card,
  .nonprofit-service-card,
  .nonprofit-process__grid li{
    min-height:0;
  }

  .nonprofit-process__grid li:nth-child(even){
    border-left:0;
  }

  .nonprofit-process__grid li + li{
    border-top:1px solid rgba(255,255,255,0.12);
  }

  .nonprofit-application__form-card,
  .nonprofit-details-card,
  .nonprofit-final-cta__inner{
    padding:20px;
  }

  .nonprofit-final-cta__inner{
    display:grid;
    grid-template-columns:minmax(0, 1fr);
  }
}

/* Mobile/tablet sizing correction layer. Desktop program layout stays untouched. */
@media (min-width:768px) and (max-width:1099px){
  :root{
    --nonprofit-tablet-section-y:clamp(3rem, 5.4vw, 4.4rem);
    --nonprofit-tablet-card-pad:clamp(1.15rem, 2.4vw, 1.5rem);
  }

  .nonprofit-shell{
    width:min(100% - 44px, 1540px);
  }

  .nonprofit-hero,
  .nonprofit-section{
    padding-block:var(--nonprofit-tablet-section-y);
  }

  .nonprofit-hero__title{
    font-size:clamp(3.25rem, 8vw, 5.25rem);
  }

  .nonprofit-hero__text,
  .nonprofit-section__header p{
    font-size:clamp(1rem, 2.2vw, 1.12rem);
  }

  .nonprofit-section__header{
    margin-bottom:clamp(1.35rem, 3vw, 2.1rem);
  }

  .nonprofit-section__header h2{
    font-size:clamp(2.2rem, 5.2vw, 3.5rem);
  }

  .nonprofit-info-card,
  .nonprofit-service-card,
  .nonprofit-process__grid li,
  .nonprofit-application__form-card,
  .nonprofit-details-card,
  .nonprofit-final-cta__inner{
    padding:var(--nonprofit-tablet-card-pad);
  }

  .nonprofit-info-card,
  .nonprofit-service-card,
  .nonprofit-process__grid li{
    min-height:0;
  }

  .nonprofit-card-grid--three,
  .nonprofit-card-grid--six,
  .nonprofit-process__grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1rem;
  }

  .nonprofit-field-grid--three{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .nonprofit-choice-grid--compact{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width:767px){
  :root{
    --mobile-gutter:clamp(0.875rem, 4vw, 1.25rem);
    --mobile-section-y:clamp(2.25rem, 8vw, 3.75rem);
    --mobile-section-y-tight:clamp(1.75rem, 6vw, 2.75rem);
    --mobile-card-pad:clamp(0.95rem, 4vw, 1.25rem);
    --mobile-card-pad-sm:clamp(0.75rem, 3vw, 1rem);
    --mobile-card-radius:14px;
  }

  .nonprofit-shell{
    width:min(calc(100% - var(--mobile-gutter) - var(--mobile-gutter)), 1540px);
  }

  .nonprofit-hero{
    padding-block:var(--mobile-section-y);
  }

  .nonprofit-section{
    padding-block:var(--mobile-section-y);
  }

  .nonprofit-final-cta{
    padding-block:0 var(--mobile-section-y);
  }

  .nonprofit-hero__title{
    max-width:100%;
    font-size:clamp(2.35rem, 11vw, 3.65rem);
    line-height:0.92;
    letter-spacing:0.018em;
    text-wrap:balance;
  }

  .nonprofit-hero__text,
  .nonprofit-section__header p,
  .nonprofit-service-card p,
  .nonprofit-info-card p,
  .nonprofit-process__grid p,
  .nonprofit-final-cta p{
    font-size:clamp(0.95rem, 3.7vw, 1.05rem);
    line-height:1.5;
  }

  .nonprofit-section__header{
    margin-bottom:clamp(1.2rem, 5vw, 1.9rem);
  }

  .nonprofit-section__header h2,
  .nonprofit-details-card h2,
  .nonprofit-final-cta h2,
  .nonprofit-success h3{
    font-size:clamp(1.85rem, 8.2vw, 2.8rem);
    line-height:0.96;
    text-wrap:balance;
  }

  .nonprofit-hero__panel{
    min-height:0;
    padding:var(--mobile-card-pad);
    border-radius:var(--mobile-card-radius);
  }

  .nonprofit-hero__map{
    width:min(88%, 280px);
    max-height:200px;
    margin:0.75rem auto;
  }

  .nonprofit-hero__trust{
    gap:0.65rem;
    margin-top:1.15rem;
  }

  .nonprofit-hero__trust li{
    padding:0.7rem 0.75rem 0.7rem 1.9rem;
    font-size:0.9rem;
  }

  .nonprofit-hero__trust li::before{
    left:0.75rem;
    top:1.05rem;
  }

  .nonprofit-card-grid,
  .nonprofit-process__grid,
  .nonprofit-field-grid,
  .nonprofit-choice-grid{
    gap:0.85rem;
  }

  .nonprofit-info-card,
  .nonprofit-service-card,
  .nonprofit-process__grid li,
  .nonprofit-application__form-card,
  .nonprofit-details-card,
  .nonprofit-final-cta__inner,
  .nonprofit-success{
    min-height:0;
    padding:var(--mobile-card-pad);
    border-radius:var(--mobile-card-radius);
  }

  .nonprofit-info-card h3,
  .nonprofit-service-card h3,
  .nonprofit-process__grid h3{
    font-size:clamp(1.12rem, 4.9vw, 1.48rem);
    line-height:1;
  }

  .nonprofit-info-card__number{
    margin-bottom:0.65rem;
    font-size:clamp(1.85rem, 8vw, 2.7rem);
  }

  .nonprofit-field,
  .nonprofit-choice-group{
    margin-bottom:0.9rem;
  }

  .nonprofit-field input,
  .nonprofit-field select,
  .nonprofit-field textarea{
    min-height:48px;
    padding:0.7rem 0.8rem;
  }

  .nonprofit-choice-grid span,
  .nonprofit-consent span{
    min-height:44px;
    padding:0.7rem 0.75rem;
    font-size:0.9rem;
  }

  .nonprofit-button{
    min-height:48px;
    padding:0.82rem 1rem;
    font-size:clamp(0.95rem, 4vw, 1.08rem);
  }

  .nonprofit-final-cta__inner{
    gap:0.9rem;
  }
}

@media (min-width:430px) and (max-width:767px){
  .nonprofit-hero__trust,
  .nonprofit-card-grid--six,
  .nonprofit-process__grid,
  .nonprofit-choice-grid--compact{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .nonprofit-card-grid--three{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .nonprofit-card-grid--three .nonprofit-info-card{
    padding:var(--mobile-card-pad-sm);
  }
}

@media (max-width:429px){
  .nonprofit-hero__trust,
  .nonprofit-card-grid--three,
  .nonprofit-card-grid--six,
  .nonprofit-process__grid,
  .nonprofit-field-grid--two,
  .nonprofit-field-grid--three,
  .nonprofit-choice-grid,
  .nonprofit-choice-grid--compact{
    grid-template-columns:minmax(0, 1fr);
  }
}
