*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --pay-ocean:#0c4a6e;
  --pay-sky:#e0f2fe;
  --pay-white:#ffffff;
  --pay-charcoal:#1e293b;
  --pay-sans:"Plus Jakarta Sans",system-ui,sans-serif;
  --pay-num:"Fraunces",Georgia,serif;
}
html{scroll-behavior:smooth}
.pay-body{font-family:var(--pay-sans);background:var(--pay-sky);color:var(--pay-charcoal);line-height:1.65}
.pay-skip{position:absolute;left:-9999px;z-index:9999;padding:.75rem 1rem;background:var(--pay-ocean);color:#fff}
.pay-skip:focus{left:1rem;top:1rem}
.pay-nav{max-width:960px;margin:0 auto;padding:1.25rem 1.5rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.pay-nav__brand{font-weight:700;font-size:1.25rem;color:var(--pay-ocean);text-decoration:none}
.pay-nav__links{display:flex;gap:1.5rem}
.pay-nav__links a{color:var(--pay-charcoal);text-decoration:none;font-size:.9rem;font-weight:500}
.pay-nav__links a:hover{color:var(--pay-ocean)}
.pay-hero{padding:2rem 1.5rem 3rem}
.pay-hero__panel{max-width:720px;margin:0 auto;background:var(--pay-white);border-radius:24px;padding:clamp(2rem,5vw,3.5rem);box-shadow:0 8px 32px rgba(12,74,110,.08)}
.pay-hero__badge{display:inline-block;background:var(--pay-sky);color:var(--pay-ocean);font-size:.75rem;font-weight:600;padding:.35rem .85rem;border-radius:999px;margin-bottom:1.25rem}
.pay-hero__title{font-size:clamp(2rem,5vw,2.75rem);font-weight:700;color:var(--pay-ocean);line-height:1.15;margin-bottom:1rem}
.pay-hero__sub{font-size:1.05rem;color:#475569;max-width:540px}
.pay-mission,.pay-steps,.pay-contact,.pay-legal{padding:1rem 1.5rem 2.5rem;max-width:960px;margin:0 auto}
.pay-card{background:var(--pay-white);border-radius:20px;padding:2rem;box-shadow:0 4px 20px rgba(12,74,110,.06)}
.pay-card--wide{max-width:560px;margin:0 auto}
.pay-card h2{font-size:1.35rem;color:var(--pay-ocean);margin-bottom:1rem;font-weight:700}
.pay-steps__title{text-align:center;font-size:1.5rem;color:var(--pay-ocean);margin-bottom:2rem;font-weight:700}
.pay-progress{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;list-style:none;counter-reset:pay}
@media(min-width:700px){.pay-progress{flex-direction:row}}
.pay-progress__step{flex:1;background:var(--pay-white);border-radius:16px;padding:1.5rem;position:relative;border:2px solid transparent;transition:border-color .2s}
.pay-progress__step--active{border-color:var(--pay-ocean)}
.pay-progress__num{font-family:var(--pay-num);font-size:1.75rem;color:var(--pay-ocean);display:block;margin-bottom:.5rem}
.pay-progress__step h3{font-size:1rem;font-weight:600;margin-bottom:.35rem}
.pay-progress__step p{font-size:.875rem;color:#64748b}
.pay-stat{text-align:center;background:var(--pay-ocean);color:var(--pay-white);border-radius:16px;padding:1.5rem}
.pay-stat__value{font-family:var(--pay-num);font-size:2.5rem;font-weight:700;display:block}
.pay-stat__label{font-size:.85rem;opacity:.85}
.pay-contact__info{margin-bottom:1.5rem;font-size:.9rem}
.pay-contact__info a{color:var(--pay-ocean)}
.pay-form__group{margin-bottom:1rem}
.pay-form__group label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.35rem}
.pay-form__group input,.pay-form__group textarea{width:100%;padding:.75rem 1rem;border:1px solid #cbd5e1;border-radius:12px;font-family:inherit;font-size:1rem;background:#f8fafc}
.pay-form__group input:focus,.pay-form__group textarea:focus{outline:2px solid var(--pay-ocean);border-color:var(--pay-ocean)}
.pay-form__check{display:flex;gap:.6rem;font-size:.85rem;align-items:flex-start;margin-bottom:.35rem}
.pay-form__check input{margin-top:.2rem;border-radius:4px}
.pay-form__check a{color:var(--pay-ocean)}
.pay-form__err{display:block;color:#dc2626;font-size:.8rem;min-height:1rem}
.pay-btn{background:var(--pay-ocean);color:#fff;border:none;border-radius:12px;padding:.85rem 2rem;font-family:inherit;font-weight:600;font-size:1rem;cursor:pointer;margin-top:.5rem;width:100%}
.pay-btn:disabled{opacity:.55;cursor:not-allowed}
.pay-form__ok{text-align:center;color:var(--pay-ocean);font-weight:600;padding:1rem;background:var(--pay-sky);border-radius:12px;margin-top:1rem}
.pay-legal .pay-card{margin-bottom:1rem}
.pay-legal a{color:var(--pay-ocean)}
.pay-footer{text-align:center;padding:2rem 1.5rem;background:var(--pay-white);border-top:1px solid #e2e8f0}
.pay-footer nav{display:flex;justify-content:center;gap:1.5rem;margin:1rem 0;flex-wrap:wrap}
.pay-footer a{color:var(--pay-ocean);text-decoration:none;font-size:.875rem}
.pay-footer__copy{font-size:.75rem;color:#94a3b8}
