*{
margin:0;
padding:0;
box-sizing:border-box;
}

html, body{
height:100%;
font-family:'Inter',sans-serif;
background:#f7f4fb;
}

/* 🌫️ BREATHING BACKGROUND (NEW PREMIUM EFFECT) */
body::before{
content:"";
position:fixed;
inset:0;
z-index:-2;

background: radial-gradient(circle at 20% 20%, rgba(185,174,220,0.35), transparent 55%),
            radial-gradient(circle at 80% 30%, rgba(160,150,210,0.25), transparent 60%),
            radial-gradient(circle at 50% 80%, rgba(200,190,235,0.25), transparent 60%);

animation: breathe 12s ease-in-out infinite;
filter: blur(20px);
transform: scale(1.1);
}

@keyframes breathe{
0%{
transform: scale(1.05);
filter: blur(18px);
opacity:0.9;
}
50%{
transform: scale(1.15);
filter: blur(28px);
opacity:1;
}
100%{
transform: scale(1.05);
filter: blur(18px);
opacity:0.9;
}
}

/* DARK OVERLAY FOR MOBILE READABILITY */
body::after{
content:"";
position:fixed;
inset:0;
z-index:-1;
background:rgba(255,255,255,0.35);
}

/* HEADER */
header{
height:70px;
display:flex;
justify-content:center;
align-items:center;
background:rgba(255,255,255,0.75);
backdrop-filter:blur(18px);
}

.logo-area{
display:flex;
align-items:center;
gap:14px;
}

.icon-logo{width:38px;height:38px;}
.wordmark{height:26px;}

/* HERO */
.hero{
min-height:calc(100vh - 70px);
display:flex;
align-items:center;
justify-content:center;
padding:40px 5%;
}

/* LAYOUT */
.layout{
display:flex;
justify-content:space-between;
align-items:center;
width:100%;
max-width:1100px;
gap:60px;
position:relative;
z-index:2;
}

/* LEFT */
.left h1{
font-family:'Cormorant Garamond',serif;
font-size:92px;
line-height:0.95;
color:#1f1f1f;
text-shadow:0 2px 20px rgba(255,255,255,0.4);
}

.left span{
color:#b9aedc;
font-style:italic;
}

.subtext{
margin-top:16px;
font-size:18px;
color:#333;
max-width:420px;
text-shadow:0 2px 10px rgba(255,255,255,0.3);
}

/* RIGHT */
.right{
display:flex;
flex-direction:column;
align-items:center;
gap:18px;
}

/* CIRCLE */
.circle{
width:200px;
height:200px;
border-radius:50%;
background:rgba(255,255,255,0.65);
backdrop-filter:blur(22px);
display:flex;
align-items:center;
justify-content:center;
text-align:center;
animation:float 6s ease-in-out infinite;
}

.circle h3{
font-family:'Cormorant Garamond',serif;
font-size:22px;
color:#222;
}

.circle p{
font-size:12px;
color:#666;
}

/* SIGNUP CARD (IMPROVED READABILITY) */
.card{
width:360px;
padding:32px;

background:rgba(255,255,255,0.9);
backdrop-filter:blur(25px);

border-radius:28px;

box-shadow:0 25px 70px rgba(0,0,0,0.12);

text-align:center;
}

.mini{width:50px;margin-bottom:14px;}

.title{
font-size:17px;
margin-bottom:14px;
color:#222;
}

.title span{
color:#b9aedc;
font-style:italic;
}

/* INPUT */
.card input{
width:100%;
padding:18px;
font-size:16px;

border-radius:14px;
border:1px solid #ccc;

margin-bottom:12px;
background:rgba(255,255,255,0.95);
}

.card input:focus{
outline:none;
border-color:#b9aedc;
box-shadow:0 0 0 5px rgba(185,174,220,0.25);
}

/* BUTTON */
.card button{
width:100%;
padding:16px;
border:none;
border-radius:14px;

background:linear-gradient(135deg,#b9aedc,#a493d6);
color:white;

font-weight:600;
letter-spacing:1px;

cursor:pointer;
transition:0.3s ease;
}

.card button:hover{
transform:translateY(-2px);
box-shadow:0 15px 30px rgba(185,174,220,0.35);
}

.small{
font-size:12px;
margin-top:10px;
color:#555;
}

/* FLOAT */
@keyframes float{
0%{transform:translateY(0);}
50%{transform:translateY(-10px);}
100%{transform:translateY(0);}
}

/* 📱 MOBILE READABILITY BOOST */
@media (max-width: 900px){

body::after{
background:rgba(255,255,255,0.5);
}

.left h1{
font-size:64px;
text-shadow:none;
}

.subtext{
color:#222;
}

.card{
width:100%;
max-width:380px;
background:rgba(255,255,255,0.95);
}

}