:root{

--bg:#07184D;
--card:#0F245E;

--gold:#FFC72C;
--gold2:#FFD95B;

--text:#FFFFFF;
--muted:#C9D3F2;

--border:rgba(255,255,255,.08);

--radius:24px;

}

*{

margin:0;
padding:0;

box-sizing:border-box;

}

html{

scroll-behavior:smooth;

}

body{

background:var(--bg);

font-family:'Inter',sans-serif;

display:flex;

justify-content:center;

align-items:center;

min-height:100vh;

padding:45px;

color:white;

}

.wrapper{

width:100%;

display:flex;

justify-content:center;

}

.card{

width:100%;

max-width:760px;

background:var(--card);

border-radius:32px;

padding:55px;

box-shadow:

0 25px 70px rgba(0,0,0,.30);

}

.logo{

font-size:15px;

font-weight:700;

letter-spacing:1px;

text-transform:uppercase;

color:var(--gold);

margin-bottom:28px;

}

.progress{

height:8px;

background:rgba(255,255,255,.08);

border-radius:999px;

overflow:hidden;

margin-bottom:12px;

}

.progress-bar{

height:100%;

width:8%;

background:linear-gradient(
90deg,
var(--gold),
var(--gold2)
);

border-radius:999px;

transition:.45s;

}

.progress-text{

font-size:14px;

color:var(--muted);

margin-bottom:45px;

}

.step{

display:none;

animation:fade .35s;

}

.step.active{

display:block;

}

@keyframes fade{

from{

opacity:0;

transform:translateY(18px);

}

to{

opacity:1;

transform:none;

}

}

h1{

font-size:54px;

line-height:1.05;

margin-bottom:25px;

font-weight:800;

letter-spacing:-2px;

}

h2{

font-size:42px;

line-height:1.2;

margin-bottom:30px;

font-weight:800;

letter-spacing:-1px;

}

p{

font-size:20px;

line-height:1.8;

color:var(--muted);

margin-bottom:40px;

}
.field{

margin-bottom:26px;

}

.field label{

display:block;

font-size:15px;

font-weight:700;

margin-bottom:10px;

color:white;

}

.field input,
textarea{

width:100%;

padding:18px 20px;

border:none;

outline:none;

border-radius:16px;

background:white;

font-size:17px;

font-family:inherit;

transition:.25s;

}

.field input:focus,
textarea:focus{

box-shadow:

0 0 0 4px rgba(255,199,44,.25);

}

textarea{

min-height:170px;

resize:vertical;

}



.options{

display:flex;

flex-direction:column;

gap:16px;

margin:35px 0;

}



.option{

display:flex;

align-items:center;

gap:18px;

padding:22px 24px;

border:2px solid rgba(255,255,255,.08);

border-radius:18px;

cursor:pointer;

transition:.25s;

background:rgba(255,255,255,.02);

}

.option:hover{

border-color:var(--gold);

background:rgba(255,255,255,.05);

transform:translateY(-2px);

}



.option input{

width:22px;

height:22px;

accent-color:var(--gold);

margin:0;

flex:0 0 22px;

}



.option span{

flex:1;

font-size:19px;

font-weight:600;

line-height:1.5;

color:white;

}



.option:has(input:checked){

background:rgba(255,199,44,.12);

border-color:var(--gold);

box-shadow:

0 0 0 1px rgba(255,199,44,.25);

}
.buttons{

display:flex;

justify-content:space-between;

align-items:center;

gap:18px;

margin-top:45px;

}

.center{

display:flex;

justify-content:center;

margin-top:50px;

}



.btn{

height:60px;

padding:0 34px;

border:none;

border-radius:16px;

font-size:18px;

font-weight:700;

cursor:pointer;

transition:.25s;

font-family:inherit;

}



.btn-next,
.btn-primary{

background:linear-gradient(
180deg,
#FFD85B,
#FFC72C
);

color:#081B57;

box-shadow:

0 15px 35px rgba(255,199,44,.25);

}



.btn-next:hover,
.btn-primary:hover{

transform:translateY(-2px);

box-shadow:

0 22px 45px rgba(255,199,44,.35);

}



.btn-back{

background:transparent;

border:2px solid rgba(255,255,255,.12);

color:white;

}



.btn-back:hover{

background:rgba(255,255,255,.05);

}



@media(max-width:768px){

body{

padding:18px;

}

.card{

padding:30px;

border-radius:22px;

}

h1{

font-size:38px;

}

h2{

font-size:32px;

}

p{

font-size:18px;

}

.buttons{

flex-direction:column;

}

.btn{

width:100%;

}

.option{

padding:18px;

}

.option span{

font-size:17px;

}

}