/* GLOBAL */

html{
scroll-behavior:smooth;
}

body{
margin:0;
font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
background:#f5f7fa;
color:#333;
line-height:1.7;
}

/* NAVBAR */

.topnav{
position:fixed;
top:0;
width:100%;
background:rgba(0,0,0,0.65);
backdrop-filter:blur(8px);
text-align:center;
padding:14px;
z-index:1000;
}

.topnav a{
color:white;
margin:0 18px;
text-decoration:none;
font-weight:500;
font-size:15px;
}

.topnav a:hover{
opacity:0.8;
}

/* HERO */

.hero{
min-height:90vh;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
text-align:center;
color:white;
padding:40px;

background:
linear-gradient(rgba(0,0,0,0.45),rgba(0,0,0,0.45)),
url("images/ios.jpg");

background-size:cover;
background-position:center;
}

.hero h1{
font-size:48px;
margin:10px 0;
letter-spacing:2px;
}

.hero p{
font-size:22px;
}

.hero h2{
font-weight:300;
}

/* COUNTDOWN */

.countdown{
margin-top:35px;
display:flex;
gap:25px;
font-size:20px;
}

.countdown div{
background:rgba(255,255,255,0.15);
padding:15px 20px;
border-radius:8px;
}

/* SECTIONS */

section{
max-width:1000px;
margin:auto;
padding:60px 30px;
}

h2{
text-align:center;
margin-bottom:30px;
}

/* REASONS */

.reasons{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:25px;
}

.reason{
background:white;
padding:35px;
border-radius:10px;
box-shadow:0 4px 15px rgba(0,0,0,0.08);
text-align:center;
font-size:22px;
font-weight:500;
}

/* EVENT */

.event{
text-align:center;
font-size:26px;
margin-top:40px;
}

.party{
text-align:center;
margin-top:20px;
font-size:20px;
}

.location{
text-align:center;
font-size:32px;
margin-top:30px;
letter-spacing:2px;
}

.rsvp{
text-align:center;
margin-top:30px;
font-size:20px;
}

/* VIDEO */

.video-section{
text-align:center;
}

.video-section video{
max-width:900px;
width:100%;
border-radius:10px;
}

/* MAP */

.map iframe{
width:100%;
height:420px;
border:0;
border-radius:10px;
}

/* BUTTONS */

.button{
display:inline-block;
padding:14px 26px;
background:#1e88e5;
color:white;
border-radius:6px;
text-decoration:none;
font-weight:500;
margin:10px;
}

.button:hover{
background:#1565c0;
}

/* FLOATING RSVP */

.rsvp-button{
position:fixed;
bottom:30px;
right:30px;
background:#ff4081;
color:white;
padding:16px 24px;
border-radius:40px;
text-decoration:none;
font-weight:600;
box-shadow:0 6px 20px rgba(0,0,0,0.3);
z-index:1000;
transition:0.25s;
}

.rsvp-button:hover{
background:#e91e63;
transform:scale(1.05);
}

/* IOS INFO PAGE */

.info-section{
background:white;
border-radius:10px;
padding:30px;
margin-bottom:25px;
box-shadow:0 4px 15px rgba(0,0,0,0.06);
}

/* FOOTER */

footer{
text-align:center;
padding:30px;
background:#eef2f6;
margin-top:40px;
}

/* MOBILE */

@media(max-width:700px){

.hero h1{
font-size:36px;
}

.countdown{
flex-wrap:wrap;
justify-content:center;
}

.topnav{
font-size:14px;
}

}
