main { background:none !important; border-bottom:0 !important; font-family:Montserrat; font-size:15px; line-height:19px; overflow:auto !important; }
footer.aip-footer { border-top:0 !important; }
footer.aip-footer .border { display:none; }

.v-maingrid { position:relative; display:grid; grid-template-columns:1fr; align-items:start; row-gap:15px; column-gap:30px; font-family:Montserrat; }
.v-maingrid * { box-sizing:border-box; }

.v-maingrid .font-black { font-weight:900; }

@media (min-width:1024px) {
  .v-maingrid { grid-template-columns:1fr 1fr; margin-top:15px; }
}

/* Appeal Cell */

.v-maingrid .appeal-mobile { grid-row:1; background:var(--color-accent-pale); color:#FFFFFF; padding:15px 18px; border-radius:20px; box-shadow:2px 2px 5px rgba(168,168,168,0.34); font-size:16px; line-height:24px; }
.v-maingrid .appeal { grid-row:3; background:var(--color-accent-pale); color:#FFFFFF; padding:15px 18px; border-radius:20px; box-shadow:2px 2px 5px rgba(168,168,168,0.34); font-size:16px; line-height:24px; }
.v-maingrid .appeal h1 { display:none; font-size:32px; line-height:46px; font-weight:700; margin-bottom:25px; }
.v-maingrid .appeal-mobile h1 { font-size:22px; line-height:28px; font-weight:700; margin:0; padding:0; }
.v-maingrid .appeal h2 { font-size:26px; line-height:32px; font-weight:500; margin:25px 0 25px 0; }
.v-maingrid .appeal h3 { font-size:18px; line-height:24px; font-weight:500; margin:15px 0; }
.v-maingrid .appeal p { margin-top:15px; }
.v-maingrid .appeal p:nth-of-type(1) { margin-top:0; }
.v-maingrid .appeal .stress { font-weight:700; font-style:italic; }
.v-maingrid .appeal ul, .v-maingrid .appeal ol { margin:15px 0 0 30px; }
.v-maingrid .appeal li { margin:10px 0 0 0; }
.v-maingrid .appeal li:nth-child(1) { margin:0; }

@media (min-width: 1024px) {
  .v-maingrid .appeal-mobile { display:none; }
  .v-maingrid .appeal { grid-row:auto; border-radius:27px; padding:30px; }
  .v-maingrid .appeal h1 { display:block; }
}

/* Donate Cell */

.v-maingrid .grid-donate { grid-row:2; position:relative; }
.v-maingrid .grid-donate form { display:flex; flex-direction:column; gap:20px; }
.v-maingrid .grid-donate h4 { font-size:20px; line-height:24px; font-weight:700; color:var(--color-accent-pale); text-transform:uppercase; padding:10px 0; margin:0; }

@media (min-width: 1024px) {
  .v-maingrid .grid-donate { position:relative; top:0; grid-row:auto; }
}

.v-maingrid .paymentmethods { position:relative; display:flex; align-items:stretch; justify-content:center; column-gap:8px; padding:5px; font-size:15px; line-height:17px; font-weight:700; }
.v-maingrid .paymentmethods .item { z-index:100; background-clip:padding-box; background:rgba(233,233,233,0); border:solid 2px #FFFFFF; border-radius:100px; outline-offset:-1px; color:#404040; text-align:center; padding:8px 12px; transition:all 0.2s; }
.v-maingrid .paymentmethods .item:hover { cursor:pointer; background:#F0F0F0; color:#000000; }
.v-maingrid .paymentmethods .item.active, .v-maingrid .paymentmethods .item.active:hover { color:#FFFFFF; background:var(--color-accent-pale); border:solid 2px var(--color-accent-pale); }

@media (min-width:768px) {
  .v-maingrid .paymentmethods .item { padding:8px 18px; }
}

.v-maingrid .amounts { display:grid; grid-template-columns:repeat(4, 1fr); column-gap:15px; row-gap:15px; }
.v-maingrid .amounts .item { font-size:16px; line-height:20px; font-weight:700; text-align:center; white-space:nowrap; padding:11px 5px 10px 5px; outline-offset:-1px; transition:all 0.2s; }
.v-maingrid .amounts .item:hover { cursor:pointer; border:solid 1px var(--color-accent-pale); }
.v-maingrid .amounts .item.active { color:#FFFFFF; background:var(--color-accent-pale); border:solid 1px var(--color-accent-pale); outline:solid 1px var(--color-accent-pale); }
.v-maingrid .amounts .item .value { position:relative; display:block; z-index:100; }
.v-maingrid .custom-amount { display:flex; flex-direction:row; align-items:center; justify-content:center; column-gap:7px; font-size:16px; line-height:20px; font-weight:700; }
.v-maingrid .custom-amount input { width:auto; font-family:Montserrat; font-size:16px; line-height:20px; font-weight:700; text-align:right; background:transparent; margin:0; padding:0; border:none; outline:none; }
.v-maingrid .custom-amount .input-wrapper { display:none; z-index:100; overflow:hidden; align-items:center; max-width:70px; }
.v-maingrid .custom-amount.on .input-wrapper { display:inline-grid; }
.v-maingrid .custom-amount input { transition:color 0.2s; }
.v-maingrid .custom-amount.active input { color:#FFFFFF; }

.v-maingrid .custom-amount .input-wrapper::after,
.v-maingrid .custom-amount .input-wrapper input {
  grid-area: 1 / 1;
}

.v-maingrid .custom-amount .input-wrapper::after {
  content: attr(data-value) " ";
  visibility: hidden;
  white-space: pre-wrap;
}

.v-maingrid .custom-amount .currency-symbol { display:none; z-index:100; color:#000000; transition:color 0.2s; }
.v-maingrid .custom-amount.on .currency-symbol { display:block; }
.v-maingrid .custom-amount.active .currency-symbol { color:#FFFFFF; }

.v-maingrid .custom-amount .placeholder { font-size:13px; line-height:15px; font-weight:600; color:rgba(0,0,0,0.45); text-align:center; white-space:nowrap; overflow:hidden; }
.v-maingrid .custom-amount.on .placeholder { color:rgba(255,255,255,0); }

.v-maingrid .donor-data { position:relative; display:flex; flex-direction:column; gap:15px; }

.v-maingrid .error { display:none; font-size:15px; line-height:17px; font-weight:700; color:var(--color-red); margin:8px 0 0 15px; }

.v-maingrid .btn-submit svg { width:30px; height:30px; stroke:#FFFFFF; transform:translateX(0); transition:transform 0.2s; }
.v-maingrid .btn-submit button:hover svg { transform:translateX(3px); }

@media (min-width: 1024px) {
  .v-maingrid .paymentmethods { font-size:16px; line-height:18px; }
  .v-maingrid .amounts .item { font-size:18px; line-height:22px; }
  .v-maingrid .custom-amount { font-size:18px; line-height:22px; }
  .v-maingrid .custom-amount input { font-size:18px; line-height:22px; }
  .v-maingrid .custom-amount .placeholder { font-size:15px; line-height:17px; }
}

@media (min-width: 1280px) {
  .v-maingrid .paymentmethods { font-size:18px; line-height:20px; }
}

/* SMS Info */

.v-maingrid .sms-info { display:none; border-radius:27px; padding:15px; }
.v-maingrid .sms-info.on { display:block; }
.v-maingrid .sms-info h5 { font-size:20px; line-height:30px; }
.v-maingrid .sms-info a { color:#000000; text-decoration:none; }
.v-maingrid .sms-info p { font-size:14px; line-height:18px; margin-top:15px; }
.v-maingrid .sms-info p.text1 { font-size:18px; line-height:36px; }
.v-maingrid .sms-info p.text2 { color:#606060; }
.v-maingrid .sms-info p .sms-text { font-weight:900; white-space:nowrap; background:#F0F0F0; border:dashed 2px #707070; padding:7px 18px; border-radius:100px; }
.v-maingrid .sms-info .title { display:grid; grid-template-columns:1fr; align-items:center; justify-content:center; column-gap:10px; row-gap:10px; }
.v-maingrid .sms-info .title .icon { position:relative; }
.v-maingrid .sms-info .sms-icon { fill:var(--color-accent-pale); width:48px; height:48px; transform-origin:50% 50%; transform:scale(0); opacity:0; animation:sms-icon-anim; animation-duration:0.5s; animation-delay:0.2s; animation-iteration-count:1; animation-fill-mode:forwards; }
.v-maingrid .sms-info .sms-icon-text { position:absolute; top:12px; left:8px; font-weight:700; color:#FFFFFF; transform:scale(0); }
.v-maingrid .sms-info.on .sms-icon-text { animation:sms-icon-text-anim; animation-duration:0.5s; animation-delay:0.55s; animation-iteration-count:1; animation-fill-mode: forwards; }

@keyframes sms-icon-anim {
  0% { transform:scale(0); opacity:0; }
  35% { transform:scale(0.58); opacity:1; }
  70% { transform:scale(1.15); opacity:1; }
  100% { transform:scale(1); opacity:1; }
}

@keyframes sms-icon-text-anim {
  0% { transform:scale(0); }
  80% { transform:scale(1.2); }
  100% { transform:scale(1); }
}

@media (min-width:650px) {
  .v-maingrid .sms-info .title { grid-template-columns:48px 1fr; }
}

@media (min-width:768px) {
  .v-maingrid .sms-info { padding:20px; }
  .v-maingrid .sms-info h5 { font-size:21px; line-height:31px; }
  .v-maingrid .sms-info p { font-size:15px; line-height:19px; }
  .v-maingrid .sms-info p.text1 { font-size:20px; line-height:38px; }  
}

@media (min-width:1024px) {
  .v-maingrid .sms-info { padding:30px; }
  .v-maingrid .sms-info h5 { font-size:24px; line-height:34px; }
  .v-maingrid .sms-info p { font-size:15px; line-height:21px; }
  .v-maingrid .sms-info p.text1 { font-size:21px; line-height:39px; }  
  .v-maingrid .sms-info .title { column-gap:15px; }
}

@media (min-width:1280px) {
  .v-maingrid .sms-info { padding:34px; }
  .v-maingrid .sms-info h5 { font-size:26px; line-height:36px; }
  .v-maingrid .sms-info p { font-size:16px; line-height:22px; margin-top:20px; }
  .v-maingrid .sms-info p.text1 { font-size:22px; line-height:40px; }  
}

/* Bank Info */

.v-maingrid .bank-info { display:none; border-radius:27px; padding:40px; align-self:start; }
.v-maingrid .bank-info.on { display:block; }
.v-maingrid .bank-info h5 { font-size:26px; line-height:36px; }
.v-maingrid .bank-info p { font-size:16px; line-height:22px; margin-top:20px; }
.v-maingrid .bank-info .bank-details { display:grid; grid-template-columns:max-content 1fr; align-items:start; column-gap:8px; row-gap:5px; font-size:15px; line-height:19px; margin-top:15px; }
.v-maingrid .bank-info .bank-details .title { color:#606060; }
.v-maingrid .bank-info .bank-details .bank-param { color:#000000; font-weight:700; }