/* Mangala Nakatha v3.8.1 — polished five-step registration.
   Retains the v3.7.4 functional selectors expected by registration-v376.js. */
.registration-page .page-hero.compact{padding-bottom:54px}
.registration-page .narrow-shell{max-width:980px!important}
.registration-limit-note{display:inline-flex;align-items:center;justify-content:center;margin-top:10px!important;padding:8px 13px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.09);backdrop-filter:blur(8px)}
.registration-stepper-five{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:-8px 0 28px;padding:17px 12px 15px;overflow:visible;border:1px solid rgba(92,49,101,.10);border-radius:22px;background:rgba(255,255,255,.92);box-shadow:0 14px 34px rgba(58,29,66,.085);backdrop-filter:blur(14px)}
.registration-stepper-five .stepper-item{position:relative;display:grid;grid-template-rows:42px auto;justify-items:center;align-items:start;gap:7px;min-width:0;padding:0 4px;text-align:center;color:#84778a;font-size:11px;font-weight:720;line-height:1.2;transition:color .25s ease}
.registration-stepper-five .stepper-item:not(:last-child)::after{content:"";position:absolute;top:20px;left:calc(50% + 22px);width:calc(100% - 44px);height:3px;border-radius:999px;background:#eadfe8;z-index:0;pointer-events:none;transition:background .35s ease}
.registration-stepper-five .step-number{position:relative;z-index:2;display:grid;place-items:center;width:40px;height:40px;border:2px solid #e5d9e4;border-radius:14px;background:#fff;color:#88798c;font-size:13px;font-weight:800;box-sizing:border-box;transition:background .28s ease,border-color .28s ease,color .28s ease,transform .28s ease,box-shadow .28s ease}
.registration-stepper-five .step-label{position:relative;z-index:2;display:block;width:100%;min-height:26px;padding:0 3px;white-space:normal}
.registration-stepper-five .stepper-item.active{color:#642d70}.registration-stepper-five .stepper-item.active .step-number{border-color:#6d2f79;background:linear-gradient(135deg,#6d2f79,#b65d86);color:#fff;transform:translateY(-2px);box-shadow:0 0 0 5px rgba(109,47,121,.10),0 8px 20px rgba(109,47,121,.15);animation:mnRegPulse 2.6s ease-in-out infinite}
.registration-stepper-five .stepper-item.done{color:#2e6d59}.registration-stepper-five .stepper-item.done .step-number{border-color:#3c896d;background:linear-gradient(135deg,#2e755d,#55a180);color:#fff}.registration-stepper-five .stepper-item.done:not(:last-child)::after{background:linear-gradient(90deg,#5da487,#a7cdbd)}
.registration-card{position:relative;overflow:hidden;padding:30px!important;border:1px solid rgba(91,52,98,.11)!important;border-radius:24px!important;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(255,249,252,.96))!important;box-shadow:0 22px 55px rgba(58,29,66,.11)!important}
.registration-card::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#6d2f79,#c76f91);opacity:.78}
.registration-card h2{font-size:clamp(2rem,4vw,3rem)!important;line-height:1.04;margin:.15em 0 .3em!important}
.registration-card>.muted,.registration-card>p:not(.eyebrow):not(.form-status){max-width:760px;line-height:1.65;color:#6e6172}
.registration-packages{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px!important;margin:21px 0!important}
.package-choice{position:relative;display:grid!important;align-content:start;gap:8px;min-height:170px;padding:18px!important;border:1px solid rgba(88,50,95,.12)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 8px 22px rgba(61,32,69,.055);cursor:pointer;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease}
.package-choice:hover{transform:translateY(-4px);border-color:rgba(109,47,121,.28)!important;box-shadow:0 15px 30px rgba(61,32,69,.10)}
.package-choice.selected{border-color:rgba(109,47,121,.5)!important;background:linear-gradient(145deg,#fff9fc,#faf2ff)!important;box-shadow:0 16px 32px rgba(89,38,101,.13)}
.package-choice input{position:absolute;top:15px;right:15px;width:20px;height:20px;accent-color:#6d2f79}
.package-choice strong{padding-right:28px;font-family:"MN Display",Georgia,serif;font-size:1.45rem;line-height:1.1;color:#36253c}.package-choice-price{display:inline-flex;width:max-content;max-width:100%;padding:6px 9px;border-radius:999px;background:rgba(109,47,121,.07);color:#6d2f79;font-weight:780;font-size:.76rem}.package-choice span:last-child{color:#786c7b;font-size:.82rem;line-height:1.5}
.selected-package-summary{margin:14px 0 20px;padding:12px 14px;border:1px solid rgba(109,47,121,.11);border-radius:14px;background:linear-gradient(135deg,rgba(109,47,121,.06),rgba(199,111,145,.055));color:#5e3368;font-weight:750}
.registration-card .form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px!important}
.registration-card .field{display:grid;gap:7px}.registration-card .field.full{grid-column:1/-1}.registration-card .field label{display:grid;gap:7px;color:#403247;font-weight:720;font-size:.85rem}.registration-card input,.registration-card select,.registration-card textarea{width:100%;min-height:48px;padding:11px 13px!important;border:1px solid rgba(91,52,98,.15)!important;border-radius:13px!important;background:#fffbfd!important;color:#2d2232}.registration-card textarea{min-height:124px;resize:vertical}.registration-card small{color:#8a7e8d;line-height:1.45}.check-field{display:flex!important;align-items:flex-start;gap:10px;margin:16px 0;padding:12px 13px;border:1px solid rgba(91,52,98,.08);border-radius:13px;background:#fffafd}.check-field input{width:18px!important;min-height:18px!important;margin-top:2px;accent-color:#6d2f79}.button-row{display:flex!important;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:18px}.registration-card>.button:not(.button-quiet){margin-top:8px}.existing-account-note{display:flex;gap:8px;justify-content:center;margin-top:17px;padding-top:15px;border-top:1px solid rgba(91,52,98,.08);font-size:.86rem}.help-callout{border-radius:15px!important;background:#fff7f0!important;border:1px solid rgba(183,112,57,.16)!important}
[data-registration] .registration-card[hidden],[data-registration] [data-registration-complete][hidden]{display:none!important}
[data-registration-status]:not(:empty){display:block;margin-top:13px;padding:10px 12px;border-radius:12px;background:rgba(109,47,121,.055);font-weight:650}
@keyframes mnRegPulse{0%,100%{box-shadow:0 0 0 5px rgba(109,47,121,.10),0 8px 20px rgba(109,47,121,.15)}50%{box-shadow:0 0 0 9px rgba(109,47,121,.025),0 11px 25px rgba(109,47,121,.18)}}
@media(max-width:760px){.registration-page .narrow-shell{padding-left:14px;padding-right:14px}.registration-stepper-five{padding:14px 5px 12px;border-radius:18px}.registration-stepper-five .stepper-item{grid-template-rows:34px auto;gap:5px;padding:0 1px;font-size:9px}.registration-stepper-five .step-number{width:32px;height:32px;border-radius:10px;font-size:11px}.registration-stepper-five .stepper-item:not(:last-child)::after{top:15px;left:calc(50% + 17px);width:calc(100% - 34px);height:2px}.registration-packages{grid-template-columns:1fr!important}.package-choice{min-height:auto}.registration-card{padding:21px 17px!important}.registration-card .form-grid{grid-template-columns:1fr!important}.registration-card .field.full{grid-column:auto}.button-row .button{width:100%;justify-content:center}.existing-account-note{flex-direction:column;align-items:center}.registration-limit-note{border-radius:14px}}
@media(prefers-reduced-motion:reduce){.registration-stepper-five .stepper-item.active .step-number,.package-choice{animation:none!important;transition:none!important}}
