h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}

:root{--ink:#16132e;--deep:#250633;--purple:#490957;--pink:#f20895;--rose:#ff4bb3;--muted:#616278;--light:#faf7fd;--edge:#eae4ee;--blue:#17448a}
.landing *{box-sizing:border-box}
.landing{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:var(--ink);background:#fff}
.landing button,.landing input{font:inherit}
.landing .consent-box{margin-top:20px;border:1px solid #e7c9df;border-radius:13px;padding:19px;background:#fff8fd}
.landing .consent-box h4{margin:0 0 9px;font-size:17px}
.landing .consent-box p{font-size:13px;line-height:1.6;color:#51465a}
.landing .consent-checkbox{display:flex;gap:11px;align-items:flex-start;margin-top:14px;font-size:13px;line-height:1.55;font-weight:600}
.landing .consent-checkbox input{width:19px;height:19px;flex:none;accent-color:#db0d90;margin-top:2px}
.landing .consent-box .plan-policy{background:#f4eaf5;padding:12px;border-radius:8px}
.landing .btn:disabled{cursor:not-allowed;opacity:.48;transform:none;filter:none}
.landing button{cursor:pointer}
.landing a{text-decoration:none;color:inherit}
.landing .container{width:min(1160px,calc(100% - 44px));margin:auto}
.landing .hero{color:white;background:radial-gradient(ellipse at 82% 25%,#721477 0%,transparent 45%),linear-gradient(112deg,#240530,#3b0648 65%,#23052f);overflow:hidden}
.landing .nav{height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.landing .logo{font-size:26px;font-weight:950;letter-spacing:-1.3px;color:#fff}
.landing .logo span{font-size:14px;font-weight:500;letter-spacing:0;margin-left:6px;opacity:.88}
.landing .navlinks{display:flex;gap:28px;font-size:13px}
.landing .navlinks a:hover{color:#ff7ccd}
.landing .btn{border:0;border-radius:10px;padding:16px 26px;font-size:15px;font-weight:750;transition:.18s;display:inline-flex;justify-content:center;align-items:center;gap:10px}
.landing .btn:hover{transform:translateY(-2px);filter:brightness(1.05)}
.landing .btn-pink{background:var(--pink);color:white;box-shadow:0 9px 24px #ca00772a}
.landing .btn-outline{background:white;color:#8c0070;border:1px solid #e9b7d7}
.landing .btn-line{background:transparent;border:1px solid #ffffff99;color:white}
.landing .hero-grid{min-height:470px;display:grid;grid-template-columns:54% 46%;align-items:center;padding:24px 0 36px}
.landing .eyebrow{color:#ff56c1;letter-spacing:.08em;font-size:12px;font-weight:850;text-transform:uppercase}
.landing .hero h1{font-size:clamp(39px,4.35vw,61px);line-height:1.07;letter-spacing:-.052em;margin:16px 0 10px;max-width:670px}
.landing .hot{color:#ff45b5}
.landing .hero h2{font-size:clamp(22px,2.15vw,31px);line-height:1.14;letter-spacing:-.03em;margin:0 0 15px}
.landing .hero p{font-size:15px;line-height:1.57;max-width:595px;color:#f7e4fa}
.landing .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}
.landing .hero-art{width:115%;max-width:none;object-fit:cover;max-height:452px;object-position:center;mix-blend-mode:lighten;filter:contrast(1.04);border-radius:20px}
.landing .proof{display:flex;gap:23px;flex-wrap:wrap;padding-top:8px;font-size:12px}
.landing .proof span{display:flex;align-items:center;gap:8px}
.landing .proof b{font-size:22px;color:#ff4cba}
.landing .section{padding:65px 0}
.landing .section-title{font-size:clamp(29px,3.3vw,42px);line-height:1.13;letter-spacing:-.045em;margin:7px 0 16px}
.landing .lead{line-height:1.65;color:#474354;max-width:640px}
.landing .explain-grid{display:grid;grid-template-columns:42% 58%;align-items:center;gap:15px}
.landing .explain-art{width:100%;border-radius:18px}
.landing .notice{background:#fbedf8;border-radius:17px;margin-top:25px;padding:26px 30px;display:grid;grid-template-columns:1fr 1fr;gap:30px}
.landing .notice>div{display:flex;gap:16px;align-items:start}
.landing .notice strong{font-size:20px}
.landing .notice p{margin:6px 0 0;line-height:1.56;font-size:14px}
.landing .bubble{border-radius:100%;background:#dd0d96;color:white;flex:none;width:45px;height:45px;display:grid;place-items:center;font-size:23px;font-weight:800}
.landing .how{background:#f9f9fd}
.landing .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:29px}
.landing .step{background:white;border:1px solid #e9e9ef;border-radius:14px;text-align:center;padding:27px 16px;position:relative;box-shadow:0 5px 18px #23003308}
.landing .step .num{position:absolute;left:13px;top:-12px;background:#3b4dab;color:white;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;font-weight:800}
.landing .step .symbol{width:64px;height:64px;margin:0 auto;display:grid;place-items:center;border-radius:18px;background:linear-gradient(180deg,#f7f0ff 0%,#f3f6ff 100%);border:1px solid #e6ddf3;box-shadow:inset 0 1px 0 #ffffff,0 8px 20px #2c04570c}
.landing .step .symbol svg{width:30px;height:30px;stroke:#2a2a59;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round}
.landing .step h3{font-size:16px;margin:13px 0 6px}
.landing .step p{color:#676779;font-size:13px;line-height:1.5}
.landing .plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.landing .plan{position:relative;background:white;border:1px solid #dddfe9;border-radius:15px;padding:27px;display:flex;flex-direction:column;min-height:288px;box-shadow:0 4px 22px #31023a0a}
.landing .plan.featured{border:2px solid var(--pink);background:#fffafd}
.landing .ribbon{position:absolute;top:-14px;right:10px;background:var(--pink);color:white;padding:8px 14px;font-size:11px;font-weight:900;border-radius:30px}
.landing .plan h3{margin:0;font-size:17px}
.landing .price{font-size:31px;color:#3a166b;font-weight:900;letter-spacing:-.04em;margin:13px 0}
.landing .featured .price{color:var(--pink)}
.landing .plan p{font-size:14px;line-height:1.5;color:#454258;margin:0 0 20px}
.landing .gift{padding:12px;border-radius:10px;background:#fae7f5;color:#a00070!important;font-size:13px!important;font-weight:650}
.landing .plan .btn{margin-top:auto;padding:13px}
.landing .end{background:linear-gradient(100deg,#3a0747,#22062e);color:white;padding:30px 0}
.landing .end-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}
.landing .end h2{margin:0 0 7px;font-size:28px}
.landing .end p{margin:0;color:#e5cee6;font-size:14px}
.landing .fine{font-size:12px;color:#747080;line-height:1.5;margin-top:20px}
.landing .overlay{position:fixed;inset:0;background:#140419ce;z-index:20;display:none;align-items:center;justify-content:center;padding:20px;overflow:auto}
.landing .overlay.open{display:flex}
.landing .dialog{position:relative;width:min(780px,100%);max-height:min(92vh,900px);overflow:auto;background:white;border-radius:20px;padding:33px;box-shadow:0 20px 90px #0006}
.landing .close{position:absolute;right:17px;top:12px;border:0;background:transparent;font-size:28px;color:#595265}
.landing .progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:25px 0}
.landing .progress span{font-size:12px;text-align:center;border-radius:30px;background:#eeeaf1;padding:11px 5px;color:#6d6978}
.landing .progress span.active{background:#42114f;color:white}
.landing .dialog h2{margin:0;font-size:28px}
.landing .dialog h3{margin-bottom:13px}
.landing .mini-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.landing .mini-plan{padding:20px 12px;border:2px solid #e9e1eb;border-radius:12px;text-align:left;background:#fff;min-height:155px}
.landing .mini-plan.selected{border-color:var(--pink);background:#fff4fa}
.landing .mini-plan b{display:block;margin:10px 0;font-size:22px;color:#6b095c}
.landing .mini-plan small{line-height:1.4}
.landing .fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.landing .field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}
.landing .field input{border:1px solid #cac5d3;border-radius:9px;padding:13px;width:100%;background:white}
.landing .field input:focus{outline:2px solid #fa67be;border-color:transparent}
.landing .phone-input{display:flex;align-items:center;border:1px solid #cac5d3;border-radius:9px;background:white;overflow:hidden}
.landing .phone-input:focus-within{outline:2px solid #fa67be;border-color:transparent}
.landing .phone-prefix{padding:13px 0 13px 13px;color:#5e5865;font-weight:700;white-space:nowrap}
.landing .phone-input input{border:0;border-radius:0;padding:13px;flex:1;min-width:0}
.landing .phone-input input:focus{outline:none}
.landing .password-input{display:flex;align-items:center;border:1px solid #cac5d3;border-radius:9px;background:white;overflow:hidden}
.landing .password-input:focus-within{outline:2px solid #fa67be;border-color:transparent}
.landing .password-input input{border:0;border-radius:0;padding:13px;flex:1;min-width:0}
.landing .password-input input:focus{outline:none}
.landing .password-toggle{background:none;border:0;padding:13px;cursor:pointer;font-size:1.1rem;line-height:1}
.landing .summary{background:#faf5fa;border:1px solid #eddfeb;border-radius:11px;padding:18px;line-height:1.9}
.landing .actions{display:flex;justify-content:space-between;gap:15px;margin-top:26px}
.landing .hint{color:#5e5865;line-height:1.55;font-size:14px}
.landing .alert{background:#fff0f4;border-left:4px solid var(--pink);padding:14px;margin-top:16px;font-size:13px;line-height:1.5}
.landing .done{text-align:center;padding:30px 0}
.landing .done .tick{font-size:65px;color:#179d5d}
.balino-footer{background:#fff;border-top:1px solid #e8dcea;color:#202034;padding:42px 0 35px}
.balino-footer-grid{display:grid;grid-template-columns:1.12fr 1.2fr 1.2fr 1fr 1.1fr;gap:0;align-items:start}
.balino-footer-col{padding:0 24px;min-height:86px;border-left:1px solid #eadbea}
.balino-footer-col:first-child{padding-left:0;border-left:0}
.balino-footer-col:last-child{padding-right:0;text-align:right}
.balino-footer h3{font-size:17px;font-weight:600;margin:0 0 8px;color:#242338;letter-spacing:0}
.balino-footer p{margin:0;font-size:16px;line-height:1.52;color:#636a7b}
.balino-footer a,.balino-footer .resource-label{color:#963db0;text-decoration:none;font-size:16px;line-height:1.55;display:block}
.balino-footer a:hover{text-decoration:underline}
.balino-footer .copyright{color:#626979}
.balino-socials{display:flex;align-items:center;gap:17px;margin-top:12px;color:#963db0}
.balino-socials span{font-size:23px;font-weight:800;line-height:1;display:inline-flex;align-items:center;justify-content:center;min-width:21px}
.balino-socials svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:990px){.balino-footer-grid{grid-template-columns:repeat(3,1fr);row-gap:26px}.balino-footer-col:nth-child(4){border-left:0;padding-left:0}.balino-footer-col:last-child{text-align:left}}
@media(max-width:800px){.landing .navlinks{display:none}.landing .hero-grid,.landing .explain-grid{grid-template-columns:1fr}.landing .hero-grid{padding:20px 0 36px}.landing .hero-art{width:100%;max-height:340px}.landing .steps{grid-template-columns:repeat(2,1fr)}.landing .plans{grid-template-columns:1fr}.landing .notice{grid-template-columns:1fr}.landing .end-inner{align-items:start;flex-direction:column}.landing .hero h1{font-size:42px}}
@media(max-width:610px){.balino-footer{padding:30px 0}.balino-footer-grid{grid-template-columns:1fr 1fr;row-gap:24px}.balino-footer-col{padding:0 12px;min-height:0}.balino-footer-col:nth-child(odd){border-left:0;padding-left:0}.balino-footer-col:nth-child(4){border-left:1px solid #eadbea;padding-left:12px}.balino-footer-col:last-child{grid-column:1/-1;border-left:0;padding:20px 0 0;border-top:1px solid #eadbea}.balino-footer h3{font-size:15px}.balino-footer p,.balino-footer a,.balino-footer .resource-label{font-size:13px}}
@media(max-width:520px){.landing .container{width:calc(100% - 32px)}.landing .nav{height:66px}.landing .logo{font-size:22px}.landing .logo span{font-size:10px}.landing .nav>.btn{padding:12px;font-size:12px}.landing .steps{grid-template-columns:1fr}.landing .hero h1{font-size:37px}.landing .mini-plans,.landing .fields{grid-template-columns:1fr}.landing .dialog{padding:23px 17px}.landing .progress span{font-size:10px;padding:9px 2px}.landing .notice{padding:19px}.landing .foot .container{flex-direction:column}}

}