/**
 * InvitKeun — responsif mobile semua template (base.php)
 */

@media (max-width: 767px) {
    .section-heading-block {
        margin-bottom: clamp(0.75rem, 3vw, 0.95rem) !important;
        padding-inline: 0.65rem;
        gap: 0.28rem;
    }

    .section-heading-block .section-heading + .section-lead {
        margin-top: 0.2rem !important;
    }

    .section-title {
        padding-bottom: 0.32rem;
    }

    .section-heading-block .section-lead {
        font-size: 0.8125rem;
        line-height: 1.55;
    }

    .section-title {
        padding-bottom: 0.5rem;
    }

    /* Cover */
    #cover .cover-stage {
        width: min(100%, 100vw - 1.5rem);
        padding-inline: 0.25rem;
    }

    #cover .cover-card-3d {
        padding-inline: clamp(1rem, 4vw, 1.35rem) !important;
        padding-bottom: clamp(1.35rem, 5vw, 1.85rem) !important;
    }

    #cover .cover-photo-wrap {
        width: min(36svh, 72vw, 200px) !important;
        max-width: 200px !important;
    }

    #cover .cover-names-block {
        gap: clamp(0.5rem, 2.5vw, 0.7rem);
    }

    #cover .cover-save-date {
        font-size: clamp(0.65rem, 2vw, 0.75rem);
        letter-spacing: 0.16em;
        padding-left: calc(0.5rem + 0.08em);
    }

    #cover .cover-guest-block {
        margin-top: clamp(1.25rem, 4vw, 1.75rem) !important;
    }

    #cover .cover-guest-inner {
        padding: 0.85rem 1rem !important;
    }

    #cover .cover-button-block {
        margin-top: clamp(1rem, 3.5vw, 1.35rem) !important;
        padding-bottom: 0.5rem;
    }

    /* Buku tamu */
    #guestbook.template-surface {
        overflow: visible;
    }

    #guestbook .guestbook-compose {
        margin-inline: 0;
        width: 100%;
        padding-bottom: clamp(1.85rem, 6vw, 2.35rem) !important;
        overflow: visible !important;
    }

    #guestbook .guestbook-form {
        gap: clamp(1.25rem, 4vw, 1.65rem);
    }

    #guestbook .guestbook-form__field--attendance {
        gap: 0.75rem;
    }

    #guestbook .guestbook-form__field--message {
        gap: 0.65rem;
    }

    #guestbook .guestbook-form__actions {
        display: flex;
        justify-content: stretch;
        width: 100%;
        margin-top: 0.35rem;
        padding: 0.85rem 0 0.25rem;
    }

    #guestbook .guestbook-form__submit,
    #guestbook .btn-accent-solid.guestbook-form__submit {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        transform: none !important;
        box-sizing: border-box;
    }

    #guestbook .btn-accent-solid.guestbook-form__submit:hover {
        transform: none !important;
        filter: brightness(1.06);
    }

    .guestbook-form .rsvp-attendance-grid,
    .rsvp-attendance-grid {
        grid-template-columns: 1fr 1fr;
        gap: 0.65rem;
    }

    .rsvp-attendance-card {
        min-height: 4.85rem;
        padding: 0.85rem 0.5rem;
    }

    /* Amplop digital */
    .gift-cards-grid {
        gap: 1rem;
        padding-inline: 0;
    }

    .gift-card {
        max-width: min(100%, 20.5rem);
    }

    .gift-card__foot {
        flex-wrap: nowrap;
    }

    /* Footer */
    .inv-footer-thanks__inner {
        padding-inline: 1rem;
    }

    .inv-footer-thanks__title {
        line-height: 1.2 !important;
        padding-bottom: 0.25rem;
    }

    .inv-footer-thanks__desc {
        margin-top: clamp(0.75rem, 3vw, 1rem) !important;
        font-size: 0.8125rem;
        line-height: 1.65;
    }

    #couple .inv-couple-grid {
        gap: clamp(1.5rem, 6vw, 2.25rem);
    }

    #couple .couple-avatar {
        width: 8.75rem !important;
        height: 8.75rem !important;
    }

    #couple.couple-frame-diamond .couple-avatar {
        width: 9.25rem !important;
        height: 9.25rem !important;
    }

    .event-card {
        padding: 1.15rem !important;
    }
}

@media (max-width: 380px) {
    .rsvp-attendance-card__title {
        font-size: 0.8rem;
    }

    .rsvp-attendance-grid {
        grid-template-columns: 1fr;
    }

    .rsvp-attendance-card {
        min-height: 3.75rem;
        flex-direction: row;
        gap: 0.65rem;
        padding: 0.75rem 1rem;
    }

    #guestbook .guestbook-compose {
        padding: 1.25rem 1rem clamp(1.65rem, 5vw, 2rem) !important;
    }
}
