* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  }

html {
scroll-behavior: smooth;
}

body {
font-family: "Poppins", sans-serif;
background: #fff7f9;
color: #513640;
overflow-x: hidden;
}

/* FLORES DECORATIVAS */

.flor {
position: fixed;
font-size: 45px;
opacity: 0.4;
z-index: -1;
}

.flor1 {
top: 10%;
left: 5%;
}

.flor2 {
top: 70%;
right: 5%;
}

.flor3 {
top: 35%;
right: 3%;
}

.flor4 {
bottom: 10%;
left: 3%;
}

/* INÍCIO */

.inicio {
min-height: 100vh;

```
display: flex;
justify-content: center;
align-items: center;

text-align: center;

padding: 20px;

background:
    radial-gradient(circle at top left, #ffd5e2, transparent 40%),
    radial-gradient(circle at bottom right, #ffe1b8, transparent 40%),
    #fff7f9;
```

}

.conteudo {
max-width: 800px;
animation: aparecer 1s ease;
}

.flores-titulo {
font-size: 30px;
margin-bottom: 20px;
}

.inicio h1,
.inicio h2,
h2,
footer h2 {
font-family: "Dancing Script", cursive;
}

.inicio h1 {
font-size: 70px;
}

.inicio h2 {
font-size: 55px;
color: #d85b85;
margin-bottom: 20px;
}

.frase-inicio {
margin-bottom: 30px;
}

/* BOTÕES */

button {
border: none;

```
background: #d85b85;
color: white;

padding: 14px 30px;

border-radius: 30px;

font-family: "Poppins", sans-serif;
font-size: 16px;

cursor: pointer;

transition: 0.3s;
```

}

button:hover {
transform: translateY(-4px);
box-shadow: 0 10px 20px rgba(216, 91, 133, 0.25);
}

/* SEÇÕES */

.secao {
max-width: 1050px;

```
margin: auto;

padding: 100px 25px;
```

}

/* BLOCOS DE TEXTO + FOTO */

.bloco {
display: flex;

```
align-items: center;

gap: 70px;
```

}

.bloco.invertido {
flex-direction: row-reverse;
}

.texto {
flex: 1;
}

.texto h2 {
font-size: 52px;
color: #d85b85;

```
margin-bottom: 25px;
```

}

.texto p {
font-size: 16px;

```
line-height: 1.9;

margin-bottom: 15px;
```

}

/* FOTOS */

.foto {
flex: 1;
}

.foto img {
width: 100%;
height: 450px;

```
object-fit: cover;

border-radius: 25px;

box-shadow: 15px 15px 0 #ffd5e2;

transition: 0.4s;
```

}

.foto img:hover {
transform: rotate(2deg) scale(1.02);
}

/* FOTO GRANDE CENTRAL */

.especial {
text-align: center;
}

.foto-grande img {
width: 100%;
max-width: 650px;

```
height: 500px;

object-fit: cover;

border-radius: 30px;

box-shadow: 0 15px 40px rgba(0,0,0,0.1);
```

}

.texto-central {
max-width: 700px;

```
margin: 40px auto 0;
```

}

.texto-central h2 {
font-size: 50px;
color: #d85b85;

```
margin-bottom: 20px;
```

}

.texto-central p {
line-height: 1.8;
margin-bottom: 15px;
}

/* SURPRESA */

.surpresa {
background: #ffe5ed;

```
padding: 60px 30px;

border-radius: 35px;

text-align: center;
```

}

.flor-surpresa {
font-size: 50px;
}

.surpresa h2 {
font-size: 50px;

```
color: #d85b85;

margin-bottom: 15px;
```

}

.surpresa p {
margin-bottom: 25px;
}

#mensagemSurpresa {
display: none;

```
max-width: 600px;

margin: 30px auto 0;

background: white;

padding: 30px;

border-radius: 20px;

animation: aparecer 0.6s ease;
```

}

#mensagemSurpresa h3 {
color: #d85b85;
margin-bottom: 15px;
}

.final-texto {
font-family: "Dancing Script", cursive;

```
font-size: 32px !important;

color: #d85b85;
```

}

/* RODAPÉ */

footer {
background: #f7c4d4;

```
text-align: center;

padding: 80px 20px;
```

}

footer h2 {
font-size: 60px;

```
margin-bottom: 20px;
```

}

footer p {
margin-bottom: 10px;
}

/* ANIMAÇÃO */

@keyframes aparecer {

```
from {
    opacity: 0;
    transform: translateY(30px);
}

to {
    opacity: 1;
    transform: translateY(0);
}
```

}

/* RESPONSIVIDADE */

@media (max-width: 800px) {

```
.bloco,
.bloco.invertido {
    flex-direction: column;

    gap: 40px;
}

.inicio h1 {
    font-size: 50px;
}

.inicio h2 {
    font-size: 42px;
}

.texto h2,
.texto-central h2,
.surpresa h2 {
    font-size: 42px;
}

.foto img {
    height: 400px;
}
```

}

@media (max-width: 500px) {

```
.secao {
    padding: 70px 20px;
}

.inicio h1 {
    font-size: 42px;
}

.inicio h2 {
    font-size: 35px;
}

.foto img {
    height: 350px;
}

.foto-grande img {
    height: 400px;
}

footer h2 {
    font-size: 45px;
}
```

}
