:root {
    --blue-main: #1d4ed8;
    --blue-dark: #0f172a;
    --blue-soft: #93c5fd;

    --love-main: #ff4d6d;
    --love-deep: #e11d48;
    --love-soft: #ffb3c1;

    --glass: rgba(255, 255, 255, 0.14);
    --glass-border: rgba(255, 255, 255, 0.28);
}

/* RESET */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Outfit', sans-serif;
}

/* BODY */
.guest-body {
    background: linear-gradient(135deg, var(--blue-dark), #1e3a8a);
    min-height: 100vh;
    color: white;
    overflow: hidden;
}

/* BLOBS */
.blob {
    position: absolute;
    border-radius: 50%;
    filter: blur(100px);
    z-index: -1;
    animation: float 12s infinite alternate;
}

.blob-1 {
    width: 420px;
    height: 420px;
    background: var(--love-main);
    top: -140px;
    left: -120px;
    opacity: 0.45;
}

.blob-2 {
    width: 360px;
    height: 360px;
    background: var(--blue-main);
    bottom: -120px;
    right: -120px;
    opacity: 0.45;
}

@keyframes float {
    from {
        transform: translate(0, 0);
    }

    to {
        transform: translate(40px, 40px);
    }
}

/* CONTAINER */
.guest-container {
    min-height: 100vh;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2rem;
}

/* CARD */
.guest-card {
    background: rgba(29, 78, 216, 0.18);
    border: 1px solid var(--glass-border);
    backdrop-filter: blur(14px);
    border-radius: 32px;
    padding: 4rem 3.5rem;
    max-width: 520px;
    width: 100%;
    text-align: center;
    box-shadow:
        0 0 25px rgba(255, 77, 109, 0.35),
        0 0 50px rgba(255, 77, 109, 0.2);
}

/* TITRE */
.guest-title {
    font-size: 2.6rem;
    color: var(--love-main);
    margin-bottom: 1.2rem;
    text-shadow:
        0 0 20px rgba(255, 77, 109, 0.6),
        0 0 40px rgba(255, 77, 109, 0.4);
}

/* TEXTE */
.guest-text {
    font-size: 1.1rem;
    color: var(--love-soft);
    margin-bottom: 3rem;
    line-height: 1.6;
}

/* ACTIONS */
.guest-actions {
    display: flex;
    gap: 1.5rem;
    justify-content: center;
    flex-wrap: wrap;
}

/* BOUTONS */
.btn {
    padding: 0.9rem 2.2rem;
    border-radius: 999px;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s;
    display: inline-block;
}

/* BOUTON AMOUR */
.btn-love {
    background: var(--love-main);
    color: white;
    box-shadow:
        0 0 20px rgba(255, 77, 109, 0.6),
        0 0 40px rgba(255, 77, 109, 0.35);
}

.btn-love:hover {
    background: var(--love-deep);
    transform: scale(1.08);
}

/* BOUTON BLEU */
.btn-blue {
    background: var(--blue-main);
    color: white;
    box-shadow:
        0 0 20px rgba(29, 78, 216, 0.6),
        0 0 40px rgba(29, 78, 216, 0.35);
}

.btn-blue:hover {
    background: #1e40af;
    transform: scale(1.08);
}

/* RESPONSIVE */
@media (max-width: 500px) {
    .guest-card {
        padding: 3rem 2rem;
    }

    .guest-title {
        font-size: 2.1rem;
    }
}