/* ========================= */
/* RESET */
/* ========================= */

*{

    margin: 0;
    padding: 0;

    box-sizing: border-box;
}

html{

    scroll-behavior: smooth;
}

body{

    font-family:
    'Cormorant Garamond',
    serif;

    color: #2B2B2B;

    overflow-x: hidden;

    background:
    linear-gradient(
    rgba(248,246,242,0.58),
    rgba(248,246,242,0.58)
    ),
    url('../assets/img/fondo-romantico.png');

    background-size: cover;

    background-position: center;

    background-attachment: fixed;
}

/* ========================= */
/* HERO */
/* ========================= */

.hero{

    position: relative;

    width: 100%;
    height: 100vh;

    display: flex;

    align-items: center;
    justify-content: center;

    text-align: center;

    overflow: hidden;
}

.hero::before{

    content: "";

    position: absolute;

    inset: 0;

    background:
    linear-gradient(
        rgba(0,0,0,0.35),
        rgba(0,0,0,0.45)
    ),
    url('../assets/img/image3.png');

    background-size: cover;

    background-position: center;

    animation:
    zoomHero 18s ease-in-out infinite alternate;
}

.hero::after{

    content: "";

    position: absolute;

    width: 600px;
    height: 600px;

    top: -150px;
    right: -150px;

    border-radius: 50%;

    background:
    radial-gradient(
        rgba(98,197,192,0.25),
        transparent 70%
    );

    filter: blur(40px);
}

.hero-content{

    position: relative;

    z-index: 2;

    color: white;

    padding: 20px;

    max-width: 900px;
}

.save-date{

    font-size: 4rem;

    letter-spacing: 6px;

    margin-bottom: 20px;

    color: #f6f6f6;
}

.hero h1{

    font-family:
    'Great Vibes',
    cursive;

    font-size: 8rem;

    font-weight: normal;

    line-height: 1.1;

    margin-bottom: 20px;
}

.hero h1 span{

    color: #62C5C0;
}

.hero-text{

    font-size: 1.5rem;

    max-width: 700px;

    margin: auto;
    margin-bottom: 40px;

    line-height: 1.6;

    color:
    rgba(255,255,255,0.9);
}

.hero-button{

    padding: 15px 35px;

    border: none;

    border-radius: 50px;

    background: #2E8B8B;

    color: white;

    font-size: 1rem;

    cursor: pointer;

    transition: 0.4s ease;

    box-shadow:
    0 15px 35px rgba(46,139,139,0.25);
}

.hero-button:hover{

    transform:
    translateY(-5px);

    background: #62C5C0;
}

/* ========================= */
/* TITULOS */
/* ========================= */

.section-title{

    margin-bottom: 60px;

    text-align: center;
}

.mini-title{

    color: #2E8B8B;

    letter-spacing: 4px;

    text-transform: uppercase;

    font-size: 1.5rem;

    margin-bottom: 15px;
}

.section-title h2{

    font-size: 4rem;

    color: #2B2B2B;

    font-family:
    'Great Vibes',
    cursive;

    font-weight: normal;
}

.mini-title2{

    color: #2E8B8B;

    letter-spacing: 6px;

    text-transform: uppercase;

    font-size: 1.3rem;

    margin-bottom: 30px;

    padding: 20px;


}

/* ========================= */
/* COUNTDOWN */
/* ========================= */

.countdown-section{

    padding: 120px 20px;

    text-align: center;

    background: transparent;
}

.countdown-container{

    display: flex;

    justify-content: center;
    align-items: center;

    gap: 25px;

    flex-wrap: wrap;
}

.countdown-box{

    width: 180px;
    height: 180px;

    border-radius: 35px;

    background:
    rgba(255,255,255,0.22);

    backdrop-filter: blur(15px);

    border:
    1px solid rgba(255,255,255,0.3);

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    box-shadow:
    0 20px 50px rgba(0,0,0,0.08);

    transition: 0.4s ease;
}

.countdown-box:hover{

    transform:
    translateY(-10px);
}

.countdown-box span{

    font-size: 4rem;

    color: #2E8B8B;

    font-weight: bold;
}

.countdown-box p{

    font-size: 1.1rem;

    letter-spacing: 2px;

    color: #666;
}

/* ========================= */
/* SLIDER */
/* ========================= */

.cinematic-slider{

    padding: 120px 20px;

    background: transparent;
}

.slider-container{

    position: relative;

    width: 92%;
    max-width: 1400px;

    height: 750px;

    margin: auto;

    overflow: hidden;

    border-radius: 40px;

    box-shadow:
    0 30px 80px rgba(0,0,0,0.15);
}

.slide{

    position: absolute;

    inset: 0;

    opacity: 0;

    transition:
    opacity 1s ease;
}

.slide.active{

    opacity: 1;

    z-index: 2;
}

.slide img{

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.slide-overlay{

    position: absolute;

    inset: 0;

    background:
    linear-gradient(
        rgba(0,0,0,0.15),
        rgba(0,0,0,0.3)
    );
}

.slider-btn{

    position: absolute;

    top: 50%;

    transform:
    translateY(-50%);

    width: 65px;
    height: 65px;

    border: none;

    border-radius: 50%;

    background:
    rgba(255,255,255,0.25);

    backdrop-filter: blur(10px);

    color: white;

    font-size: 1.2rem;

    cursor: pointer;

    z-index: 10;

    transition: 0.4s ease;
}

.slider-btn:hover{

    background:
    rgba(98,197,192,0.8);

    transform:
    translateY(-50%)
    scale(1.1);
}

.prev{

    left: 30px;
}

.next{

    right: 30px;
}

/* ========================= */
/* PADRES */
/* ========================= */

.parents-section{

    position: relative;

    padding: 140px 20px;

    background: transparent;

    overflow: hidden;
}

.parents-section::before{

    content: "";

    position: absolute;

    width: 500px;
    height: 500px;

    top: -150px;
    left: -150px;

    border-radius: 50%;

    background:
    radial-gradient(
        rgba(98,197,192,0.15),
        transparent 70%
    );

    filter: blur(40px);
}

.parents-container{

    position: relative;

    z-index: 2;

    width: 92%;
    max-width: 1100px;

    margin: auto;

    text-align: center;
}

.parents-grid{

    display: flex;

    justify-content: center;

    gap: 50px;

    flex-wrap: wrap;

    margin-top: 70px;
}

.parent-card{

    flex: 1;

    min-width: 320px;

    max-width: 450px;

    padding: 50px 40px;

    border-radius: 35px;

    background:
    rgba(255,255,255,0.22);

    backdrop-filter: blur(18px);

    border:
    1px solid rgba(255,255,255,0.35);

    box-shadow:
    0 20px 50px rgba(0,0,0,0.08);

    transition: 0.4s ease;
}

.parent-card:hover{

    transform:
    translateY(-10px);

    box-shadow:
    0 30px 60px rgba(46,139,139,0.15);
}

.parent-icon{

    width: 110px;
    height: 110px;

    margin: auto;
    margin-bottom: 10px;

    border-radius: 50%;

    background:
    rgba(98,197,192,0.15);

    display: flex;

    align-items: center;
    justify-content: center;
}

.parent-icon img{

    width: 65px;
}

.parent-card h3{

    font-family:
    'Great Vibes',
    cursive;

    font-size: 3rem;

    color: #2E8B8B;

    margin-bottom: 100px;

    font-weight: normal;
}

.parent-card p{

    font-size: 1.25rem;

    line-height: 2;

    color: #666;

    letter-spacing: 0.5px;
}

.parents-divider{

    display: flex;

    align-items: center;
    justify-content: center;

    gap: 20px;

    margin-top: 80px;
}

.parents-divider span{

    width: 120px;
    height: 1px;

    background: #999;
}

.parents-divider i{

    color: #2E8B8B;

    font-size: 1.4rem;
}

/* ========================= */
/* RECEPCIÓN */
/* ========================= */

.reception-section{

    padding: 140px 20px;

    background: transparent;
}

.reception-card{

    width: 92%;
    max-width: 1350px;

    margin: auto;

    display: flex;

    align-items: center;

    overflow: hidden;

    border-radius: 40px;

    background:
    rgba(255,255,255,0.22);

    backdrop-filter: blur(18px);

    border:
    1px solid rgba(255,255,255,0.4);

    box-shadow:
    0 30px 70px rgba(0,0,0,0.1);
}

.reception-info{

    flex: 1;

    padding: 70px;

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: center;

    text-align: center;
}

.reception-icon{

    width: 120px;
    height: 120px;

    border-radius: 50%;

    background:
    rgba(98,197,192,0.15);

    display: flex;

    align-items: center;
    justify-content: center;

    margin-bottom: 30px;
}

.reception-icon img{

    width: 75px;
}

.reception-info h3{

    font-family:
    'Great Vibes',
    cursive;

    font-size: 4rem;

    color: #2E8B8B;

    margin-bottom: 25px;

    font-weight: normal;
}

.reception-info p{

    font-size: 1.3rem;

    line-height: 1.8;

    color: #555;

    margin-bottom: 25px;
}

.reception-time{

    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 35px;

    color: #C6A769;

    font-size: 1.1rem;
}

.location-btn{

    display: inline-flex;

    align-items: center;

    gap: 12px;

    padding: 16px 32px;

    border-radius: 50px;

    background: #2E8B8B;

    color: white;

    text-decoration: none;

    transition: 0.4s ease;
}

.location-btn:hover{

    transform:
    translateY(-5px);

    background: #62C5C0;
}

.reception-image{

    flex: 1;
}

.reception-image img{

    width: 100%;
    height: 100%;

    min-height: 700px;

    object-fit: cover;
}

/* ========================= */
/* DRESS CODE */
/* ========================= */

.dress-section{

    padding: 140px 20px;

    background: transparent;
}

.dress-container{

    width: 92%;
    max-width: 1200px;

    margin: auto;

    display: flex;

    justify-content: center;

    gap: 40px;

    flex-wrap: wrap;
}

.dress-card{

    flex: 1;

    min-width: 320px;

    max-width: 500px;

    padding: 60px 40px;

    border-radius: 35px;

    background:
    rgba(255,255,255,0.22);

    backdrop-filter: blur(18px);

    border:
    1px solid rgba(255,255,255,0.4);

    text-align: center;

    box-shadow:
    0 25px 60px rgba(0,0,0,0.08);

    transition: 0.4s ease;
}

.dress-card:hover{

    transform:
    translateY(-10px);

    box-shadow:
    0 30px 70px rgba(46,139,139,0.15);
}

.dress-icon{

    width: 300px;
    height: 300px;

    margin:0%;
    margin-bottom: 30px;

    border-radius: 50%;

    background:
    rgba(98,197,192,0.15);

    display: flex;

    align-items: center;
    justify-content: center;
}

.dress-icon img{

    width: 150px;
    height: 150px;

    object-fit: contain;
}

.dress-card h3{

    font-family:
    'Great Vibes',
    cursive;

    font-size: 3.2rem;

    color: #2E8B8B;

    margin-bottom: 20px;

    font-weight: normal;
}

.dress-card p{

    font-size: 1.3rem;

    line-height: 1.8;

    color: #555;
}

/* ========================= */
/* CONFIRMACIÓN */
/* ========================= */

.confirmation-section{

    padding: 70px 20px;

    background: transparent;
}

.confirmation-card{

    width: 92%;
    max-width: 900px;

    margin: auto;

    padding: 90px 50px;

    border-radius: 40px;

    background:
    rgba(255,255,255,0.22);

    backdrop-filter: blur(18px);

    border:
    1px solid rgba(255,255,255,0.4);

    text-align: center;

    box-shadow:
    0 25px 60px rgba(0,0,0,0.1);
}

.confirmation-card h2{

    font-family:
    'Great Vibes',
    cursive;

    font-size: 5rem;

    color: #2E8B8B;

    margin-bottom: 25px;

    font-weight: normal;
}

.confirmation-text{

    font-size: 1.4rem;

    line-height: 1.8;

    color: #555;

    max-width: 650px;

    margin: auto;
    margin-bottom: 45px;
}

.whatsapp-btn{

    display: inline-flex;

    align-items: center;

    gap: 14px;

    padding: 18px 40px;

    border-radius: 50px;

    background: #25D366;

    color: white;

    text-decoration: none;

    font-size: 1.1rem;

    transition: 0.4s ease;

    box-shadow:
    0 15px 35px rgba(37,211,102,0.3);
}

.whatsapp-btn:hover{


    transform:
    translateY(-6px);

    box-shadow:
    0 20px 45px rgba(37,211,102,0.4);
}

/* CONTENEDOR BOTONES */

.confirmation-buttons{

    display: flex;

    justify-content: center;

    align-items: center;

    gap: 25px;

    flex-wrap: wrap;
}

/* BOTÓN NOVIO */

.novio-btn{

    background:
    linear-gradient(
        135deg,
        #2E8B8B,
        #62C5C0
    );

    box-shadow:
    0 15px 35px rgba(46,139,139,0.35);
}

/* BOTÓN NOVIA */

.novia-btn{

    background:
    linear-gradient(
        135deg,
        #d977a8,
        #f3a6c4
    );

    box-shadow:
    0 15px 35px rgba(217,119,168,0.35);
}

/* HOVER */

.novio-btn:hover{

    background:
    linear-gradient(
        135deg,
        #62C5C0,
        #7edbd6
    );
}

.novia-btn:hover{

    background:
    linear-gradient(
        135deg,
        #f3a6c4,
        #ffc1da
    );
}

/* ========================= */
/* FOOTER */
/* ========================= */

.footer-section{

    position: relative;

    padding: 110px 20px;

    background:
    linear-gradient(
        rgba(0,0,0,0.65),
        rgba(0,0,0,0.82)
    ),
    url('../assets/img/footer.jpeg');

    background-size: cover;

    background-position: center;

    overflow: hidden;
}

.footer-section::before{

    content: "";

    position: absolute;

    width: 500px;
    height: 500px;

    top: -180px;
    right: -150px;

    border-radius: 50%;

    background:
    radial-gradient(
        rgba(98,197,192,0.18),
        transparent 70%
    );

    filter: blur(40px);
}

.footer-content{

    position: relative;

    z-index: 2;

    text-align: center;

    color: white;
}

.footer-phrase{

    font-size: 1.5rem;

    max-width: 700px;

    margin: auto;
    margin-bottom: 35px;

    line-height: 1.8;

    color:
    rgba(255,255,255,0.82);
}

.footer-content h2{

    font-family:
    'Great Vibes',
    cursive;

    font-size: 6.5rem;

    font-weight: normal;

    margin-bottom: 20px;

    color: #62C5C0;
}

.footer-content span{

    letter-spacing: 6px;

    color: #C6A769;

    font-size: 1rem;
}

/* ========================= */
/* MODAL MÚSICA */
/* ========================= */

.music-modal{

    position: fixed;

    inset: 0;

    background:
    rgba(0,0,0,0.75);

    display: flex;

    align-items: center;
    justify-content: center;

    z-index: 9999;

    backdrop-filter: blur(10px);
}

.music-card{

    width: 92%;
    max-width: 500px;

    padding: 60px 40px;

    border-radius: 40px;

    background:
    rgba(255,255,255,0.15);

    backdrop-filter: blur(20px);

    border:
    1px solid rgba(255,255,255,0.2);

    text-align: center;

    color: white;

    box-shadow:
    0 25px 60px rgba(0,0,0,0.25);
}

.music-icon{

    width: 100px;
    height: 100px;

    margin: auto;
    margin-bottom: 30px;

    border-radius: 50%;

    background:
    rgba(98,197,192,0.2);

    display: flex;

    align-items: center;
    justify-content: center;
}

.music-icon i{

    font-size: 2.5rem;

    color: #62C5C0;
}

.music-card h2{

    font-family:
    'Great Vibes',
    cursive;

    font-size: 4rem;

    font-weight: normal;

    margin-bottom: 20px;
}

.music-card p{

    font-size: 1.2rem;

    line-height: 1.7;

    margin-bottom: 40px;

    color:
    rgba(255,255,255,0.85);
}

.music-card button{

    padding: 16px 40px;

    border: none;

    border-radius: 50px;

    background: #2E8B8B;

    color: white;

    font-size: 1rem;

    cursor: pointer;

    transition: 0.4s ease;
}

.music-card button:hover{

    transform:
    translateY(-5px);

    background: #62C5C0;
}

/* ========================= */
/* CONTROL MÚSICA */
/* ========================= */

/* ========================= */
/* CONTROL MÚSICA */
/* ========================= */

.music-control{

    position: fixed;

    top: 20px;
    right: 20px;

    width: 58px;
    height: 58px;

    border: none;

    border-radius: 50%;

    background:
    rgba(46,139,139,0.92);

    color: white;

    font-size: 1rem;

    cursor: pointer;

    z-index: 999;

    display: none;

    transition: 0.4s ease;

    box-shadow:
    0 10px 30px rgba(0,0,0,0.25);

    align-items: center;
    justify-content: center;
}

/* HOVER */

.music-control:hover{

    transform:
    scale(1.08);

    background: #62C5C0;
}

/* ICONO */

.music-control i{

    pointer-events: none;
}

/* ========================= */
/* REVEAL */
/* ========================= */

.reveal{

    opacity: 0;

    transform:
    translateY(60px);

    transition:
    all 1s ease;
}

.reveal.active{

    opacity: 1;

    transform:
    translateY(0);
}

/* ========================= */
/* PARTÍCULAS */
/* ========================= */

.particles{

    position: fixed;

    inset: 0;

    pointer-events: none;

    z-index: 1;

    overflow: hidden;
}

.particles span{

    position: absolute;

    bottom: -50px;

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background:
    rgba(98,197,192,0.35);

    box-shadow:
    0 0 12px rgba(98,197,192,0.4);

    animation:
    floatParticle linear infinite;
}

/* ========================= */
/* PÉTALOS */
/* ========================= */

.petals{

    position: fixed;

    inset: 0;

    pointer-events: none;

    overflow: hidden;

    z-index: 2;
}

.petals span{

    position: absolute;

    top: -80px;

    width: 18px;
    height: 18px;

    background:
    linear-gradient(
        145deg,
        #ffd7e5,
        #f7b8cb
    );

    border-radius:
    70% 30% 70% 30%;

    opacity: 0.8;

    filter: blur(0.3px);

    animation:
    fallPetals linear infinite;

    box-shadow:
    0 0 12px rgba(255,192,203,0.3);
}

/* ========================= */
/* ANIMACIONES */
/* ========================= */

@keyframes zoomHero{

    0%{

        transform:
        scale(1);
    }

    100%{

        transform:
        scale(1.12);
    }

}

@keyframes floatParticle{

    0%{

        transform:
        translateY(0)
        scale(1);

        opacity: 0;
    }

    10%{

        opacity: 1;
    }

    100%{

        transform:
        translateY(-120vh)
        scale(1.8);

        opacity: 0;
    }

}

@keyframes fallPetals{

    0%{

        transform:
        translateY(-10vh)
        rotate(0deg)
        translateX(0);

        opacity: 0;
    }

    10%{

        opacity: 0.9;
    }

    100%{

        transform:
        translateY(120vh)
        rotate(360deg)
        translateX(120px);

        opacity: 0;
    }

}

/* ========================= */
/* MOBILE PREMIUM */
/* ========================= */

@media(max-width:768px){
    
/* ========================= */
/* HERO SOLO PARA MÓVILES */
/* ========================= */

.hero{

    height:100svh;
}

.hero::before{

    background:
    linear-gradient(
        rgba(0,0,0,0.35),
        rgba(0,0,0,0.45)
    ),
    url("../assets/img/image3-mobile.png");

    background-size: cover;

    background-position: center center;

    background-repeat: no-repeat;
}
    /* HERO */

    .hero{

        height: 100svh;

        padding: 20px;
    }

    .hero-content{

        width: 100%;
    }

    .save-date{

        font-size: 0.9rem;

        letter-spacing: 4px;
    }

    .hero h1{

        font-size: 4.2rem;

        line-height: 1.1;
    }

    .hero-text{

        font-size: 1.05rem;

        line-height: 1.8;

        padding: 0 10px;
    }

    .hero-button{

        width: 100%;

        max-width: 320px;

        padding: 16px 25px;

        font-size: 1rem;
    }

    /* TITULOS */

    .section-title{

        margin-bottom: 45px;
    }

    .section-title h2{

        font-size: 3rem;

        line-height: 1.2;
    }

    .mini-title{

        font-size: 0.75rem;

        letter-spacing: 3px;
    }

    /* COUNTDOWN */

    .countdown-section{

        padding: 90px 15px;
    }

    .countdown-container{

        gap: 15px;
    }

    .countdown-box{

        width: 135px;
        height: 135px;

        border-radius: 25px;
    }

    .countdown-box span{

        font-size: 2.8rem;
    }

    .countdown-box p{

        font-size: 0.95rem;
    }

    /* SLIDER */

    .cinematic-slider{

        padding: 90px 15px;
    }

    .slider-container{

        height: 420px;

        border-radius: 28px;
    }

    .slider-btn{

        width: 48px;
        height: 48px;

        font-size: 1rem;
    }

    .prev{

        left: 15px;
    }

    .next{

        right: 15px;
    }

    /* PADRES */

    .parents-section{

        padding: 90px 15px;

        background-attachment: scroll;
    }

    .parents-grid{

        gap: 25px;
    }

    .parent-card{

        padding: 40px 25px;
    }

    .parent-card h3{

        font-size: 2.4rem;
    }

    .parent-card p{

        font-size: 1.05rem;
    }

    /* RECEPCIÓN */

    .reception-section{

        padding: 90px 15px;
    }

    .reception-card{

        flex-direction: column-reverse;

        gap: 0;

        border-radius: 30px;
    }

    .reception-image img{

        min-height: 350px;
    }

    .reception-info{

        padding: 45px 25px;
    }

    .reception-info h3{

        font-size: 2.8rem;
    }

    .reception-info p{

        font-size: 1.05rem;
    }

    /* DRESS CODE */

    .dress-section{

        padding: 90px 15px;
    }

    .dress-container{

        gap: 25px;
    }

    .dress-card{

        min-width: 100%;

        padding: 45px 25px;

        border-radius: 30px;
    }

    .dress-card h3{

        font-size: 2.5rem;
    }

    .dress-card p{

        font-size: 1.05rem;
    }

    /* CONFIRMACIÓN */

    .confirmation-section{

        padding: 90px 15px;
    }

    .confirmation-card{

        padding: 60px 25px;

        border-radius: 30px;
    }

    .confirmation-card h2{

        font-size: 3.5rem;
    }

    .confirmation-text{

        font-size: 1.05rem;
    }

    .whatsapp-btn{

        width: 100%;

        justify-content: center;

        padding: 18px 20px;
    }

    /* FOOTER */

    .footer-section{

        padding: 90px 20px;
    }

    .footer-content h2{

        font-size: 4rem;
    }

    .footer-phrase{

        font-size: 1rem;

        line-height: 1.8;
    }

    /* MÚSICA */

    .music-card{

        padding: 45px 25px;
    }

    .music-card h2{

        font-size: 3rem;
    }

    .music-card p{

        font-size: 1rem;
    }

    .music-control{

        width: 55px;
        height: 55px;

        top: 15px;
        right: 15px;
    }

}

/* ========================= */
/* REGALOS */
/* ========================= */

.gift-section{

    padding: 70px 20px;

    background: transparent;
}

/* CARD */

.gift-card{

    width: 92%;
    max-width: 950px;

    margin: auto;

    padding: 90px 50px;

    border-radius: 40px;

    background:
    rgba(255,255,255,0.14);

    backdrop-filter: blur(18px);

    border:
    1px solid rgba(255,255,255,0.35);

    text-align: center;

    box-shadow:
    0 25px 60px rgba(0,0,0,0.08);
}

/* ICONO */

.gift-icon{

    width: 120px;
    height: 120px;

    margin: auto;
    margin-bottom: 35px;

    border-radius: 50%;

    background:
    rgba(98,197,192,0.12);

    display: flex;

    align-items: center;
    justify-content: center;
}

.gift-icon i{

    font-size: 3rem;

    color: #2E8B8B;
}

/* TITULO */

.gift-card h2{

    font-family:
    'Great Vibes',
    cursive;

    font-size: 4.5rem;

    color: #2E8B8B;

    font-weight: normal;

    margin-bottom: 30px;
}

/* TEXTO */

.gift-text{

    font-size: 1.35rem;

    line-height: 1.9;

    color: #555;

    max-width: 700px;

    margin: auto;
    margin-bottom: 40px;
}

/* MENSAJE */

.gift-message{

    display: inline-block;

    padding: 22px 35px;

    border-radius: 25px;

    background:
    rgba(255,255,255,0.18);

    border:
    1px solid rgba(255,255,255,0.25);

    font-size: 1.4rem;

    color: #C6A769;

    line-height: 1.7;

    box-shadow:
    0 15px 35px rgba(0,0,0,0.06);
}

/* ========================= */
/* MOBILE */
/* ========================= */

@media(max-width:768px){

    .gift-section{

        padding: 90px 15px;
    }

    .gift-card{

        padding: 60px 25px;

        border-radius: 30px;
    }

    .gift-card h2{

        font-size: 3rem;

        line-height: 1.2;
    }

    .gift-text{

        font-size: 1.05rem;
    }

    .gift-message{

        font-size: 1.1rem;

        padding: 18px 20px;
    }

}