/*==================================================
VOLTRAFITNESS REGISTER
Premium Registration Page
==================================================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:'Poppins',sans-serif;
}

body{

background:
linear-gradient(rgba(0,0,0,.75),
rgba(0,0,0,.75)),
url("../../images/register-bg.jpg");

background-size:cover;

background-position:center;

background-attachment:fixed;

color:#fff;

min-height:100vh;

display:flex;

justify-content:center;

align-items:center;

padding:40px 20px;

overflow-x:hidden;

}

a{

text-decoration:none;

}

.register-wrapper{

width:100%;

max-width:1300px;

display:grid;

grid-template-columns:1fr 520px;

gap:80px;

align-items:center;

}

.left-side h1{

font-size:70px;

font-weight:800;

line-height:1;

}

.left-side h2{

font-size:55px;

color:#FFD400;

margin:10px 0 30px;

font-weight:800;

}

.left-side p{

font-size:20px;

line-height:1.9;

color:#bdbdbd;

max-width:550px;

margin-bottom:60px;

}

.back-btn{

display:flex;

justify-content:center;

align-items:center;

width:55px;

height:55px;

border-radius:50%;

border:2px solid #FFD400;

color:#FFD400;

font-size:22px;

margin-bottom:40px;

transition:.35s;

}

.back-btn:hover{

background:#FFD400;

color:#000;

}

.step-indicator{

display:flex;

align-items:center;

gap:15px;

}

.step{

width:48px;

height:48px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

background:#1d1d1d;

border:2px solid #333;

font-weight:700;

transition:.4s;

}

.step.active{

background:#FFD400;

color:#000;

border-color:#FFD400;

}

.line{

width:90px;

height:3px;

background:#2e2e2e;

}

.right-side{

display:flex;

justify-content:center;

}

form{

width:100%;

}

.form-step{

display:none;

background:rgba(18,18,18,.72);

backdrop-filter:blur(18px);

-webkit-backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.08);

border-radius:28px;

padding:45px;

box-shadow:0 30px 80px rgba(0,0,0,.45);

animation:fade .45s;

}

.form-step.active{

display:block;

}

@keyframes fade{

from{

opacity:0;

transform:translateY(30px);

}

to{

opacity:1;

transform:translateY(0);

}

}

.form-step h3{

text-align:center;

font-size:32px;

margin-bottom:35px;

}

.input-group{

margin-bottom:22px;

}

.input-group label{

display:block;

margin-bottom:10px;

font-weight:600;

color:#ddd;

}

.input-group input,

.input-group select,

.input-group textarea{

width:100%;

padding:18px;

background:#1c1c1c;

border:2px solid #2f2f2f;

border-radius:15px;

color:#fff;

font-size:16px;

outline:none;

transition:.3s;

}

.input-group input:focus,

.input-group select:focus,

.input-group textarea:focus{

border-color:#FFD400;

box-shadow:0 0 0 4px rgba(255,212,0,.12);

}

.password-box{

position:relative;

}

.password-box i{

position:absolute;

right:20px;

top:50%;

transform:translateY(-50%);

cursor:pointer;

color:#888;

font-size:20px;

}

.two-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:18px;

}

.photo-upload{

display:flex;

flex-direction:column;

align-items:center;

margin-bottom:35px;

}

.upload-circle{

width:140px;

height:140px;

border-radius:50%;

border:3px dashed rgba(255,212,0,.4);

display:flex;

justify-content:center;

align-items:center;

font-size:42px;

color:#FFD400;

margin-bottom:15px;

cursor:pointer;

transition:.35s;

}

.upload-circle:hover{

background:#FFD400;

color:#000;

transform:scale(1.05);

}

.photo-upload span{

font-weight:600;

color:#ddd;

}

.next-btn,

.prev-btn,

.register-btn{

height:60px;

border:none;

border-radius:50px;

font-size:18px;

font-weight:700;

cursor:pointer;

transition:.35s;

}

.next-btn,

.register-btn{

width:100%;

background:#FFD400;

color:#000;

}

.next-btn:hover,

.register-btn:hover{

transform:translateY(-5px);

box-shadow:0 20px 45px rgba(255,212,0,.40);

background:#ffdf33;

}

.buttons{

display:flex;

gap:15px;

margin-top:30px;

}

.prev-btn{

width:170px;

background:#252525;

color:#fff;

}

.prev-btn:hover{

background:#333;

}

.bottom-link{

margin-top:25px;

text-align:center;

color:#bbb;

}

.bottom-link a{

color:#FFD400;

font-weight:700;

}

textarea{

resize:none;

min-height:110px;

}

@media(max-width:991px){

.register-wrapper{

grid-template-columns:1fr;

gap:50px;

}

.left-side{

display:flex;

flex-direction:column;

justify-content:center;

height:100%;

padding-right:60px;

}

.back-btn{

margin:0 auto 35px;

}

.line{

width:60px;

}

.step-indicator{

justify-content:center;

}

}

@media(max-width:600px){

body{

padding:20px;

}

.left-side h1{

font-size:74px;

font-weight:800;

line-height:1.05;

letter-spacing:-2px;

}

.left-side h2{

font-size:60px;

font-weight:800;

color:#FFD400;

margin:15px 0 25px;

}

.left-side p{

font-size:17px;

}

.form-step{

padding:25px;

border-radius:20px;

}

.two-grid{

grid-template-columns:1fr;

}

.buttons{

flex-direction:column;

}

.prev-btn,

.register-btn{

width:100%;

}

.upload-circle{

width:120px;

height:120px;

font-size:36px;

}

/*=================================
PREMIUM TRANSITIONS
=================================*/

.register-btn:disabled{

opacity:.8;

cursor:not-allowed;

}

.upload-circle{

overflow:hidden;

background-size:cover;

background-position:center;

}

input::placeholder,
textarea::placeholder{

color:#777;

}

select{

appearance:none;

background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='%23FFD400' viewBox='0 0 16 16'%3E%3Cpath d='M1.5 5.5 8 12l6.5-6.5'/%3E%3C/svg%3E");

background-repeat:no-repeat;

background-position:right 18px center;

padding-right:50px;

}

.quote{

margin-top:45px;

padding-left:25px;

border-left:5px solid #FFD400;

font-size:22px;

font-style:italic;

line-height:1.8;

color:#dddddd;

max-width:520px;

}

@media(max-width:768px){

.left-side h1,
.left-side h2,
.left-side p,
.quote{

display:none;

}

.left-side{

padding:20px;

}

.step-indicator{

margin-top:15px;

}

}