body{
margin:0;
font-family:Arial;
text-align:center;
background:linear-gradient(#ffc0cb,#ffd6e7);
min-height:100vh;
}

.title{
margin-top:40px;
color:white;
font-size:40px;
}

/* main layout */

.main-section{
display:flex;
justify-content:center;
align-items:center;
gap:40px;
margin-top:40px;
}

/* circle counter */

.circle{
width:260px;
height:260px;
background:white;
border-radius:50%;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
box-shadow:0 15px 30px rgba(0,0,0,0.2);
position:relative;
}

#days{
font-size:70px;
color:#ff4d88;
font-weight:bold;
}

.circle p{
margin:0;
font-size:18px;
}

/* small hours minutes */

#timeSmall{
font-size:14px;
color:#888;
margin-top:6px;
}

/* countdown text */

.countdown{
font-size:22px;
color:white;
margin-bottom:30px;
}

/* album buttons */

.albums{
position:absolute;
left:40px;
top:200px;
display:flex;
flex-direction:column;
gap:15px;
}

.album-btn{
text-decoration:none;
background:linear-gradient(135deg,#ff6fa5,#ff4d88);
color:white;
padding:14px 26px;
border-radius:30px;
font-size:16px;
font-weight:bold;
box-shadow:0 6px 15px rgba(0,0,0,0.2);
transition:all 0.3s ease;
display:inline-block;
animation:lovePulse 3s infinite;
}

.album-btn:hover{
transform:scale(1.1);
background:linear-gradient(135deg,#ff4d88,#ff2e72);
box-shadow:0 10px 25px rgba(0,0,0,0.3);
}

@keyframes lovePulse{
0%{transform:scale(1);}
50%{transform:scale(1.05);}
100%{transform:scale(1);}
}

/* floating hearts */

.hearts{
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
pointer-events:none;
overflow:hidden;
}

.heart{
position:absolute;
color:#ff4d88;
font-size:20px;
animation:floatUp linear infinite;
}

@keyframes floatUp{
0%{
transform:translateY(100vh) scale(1);
opacity:1;
}

100%{
transform:translateY(-10vh) scale(1.5);
opacity:0;
}
}
/* meet button */

.meet-section{
margin-top:20px;
}

.meet-input-box{
margin-top:10px;
display:none;
}

.meet-input-box input{
padding:6px;
border-radius:10px;
border:none;
}

.small-btn{
padding:8px 18px;
font-size:14px;
margin-left:10px;
}

/* couple photo section */

.photo-area{
position:relative;
height:400px;
margin-top:80px;
}

/* couple photo section */

.photo-area{
position:relative;
height:650px;
margin-top:80px;
}

/* photo cards */

.photo-card{
position:absolute;
text-align:center;
}

/* bigger images */

.photo-card img{
width:320px;
height:320px;
object-fit:cover;
border-radius:25px;
box-shadow:0 15px 35px rgba(0,0,0,0.3);
transition:0.3s;
}

/* hover animation */

.photo-card img:hover{
transform:scale(1.05);
}

/* caption text */

.photo-card p{
color:white;
margin-top:12px;
font-size:18px;
}

/* positions */

.me{
left:15%;
top:0;
}

.her{
right:15%;
top:0;
}

.us{
left:50%;
transform:translateX(-50%);
top:380px;
}

/* footer */

footer{
margin-top:50px;
padding:20px;
color:white;
}

/* ===== MOBILE FORCE FIX ===== */

@media (max-width:768px){

.photo-area{
display:flex !important;
flex-direction:column !important;
align-items:center !important;
gap:40px !important;
height:auto !important;
margin-top:60px !important;
}

/* reset desktop positioning completely */

.me,
.her,
.us{
position:static !important;
left:auto !important;
right:auto !important;
top:auto !important;
transform:none !important;
}

/* make images responsive */

.photo-card img{
width:90% !important;
max-width:320px !important;
height:auto !important;
}

}