@media screen and (max-width: 768px) {
    header nav {
        display: flex;
    }

    .home svg {
        bottom: -5rem;
    }

    /* Signature images: mobile */
    .name-images-container {
        padding: 0 1rem;
        gap: 0.4rem;
    }
    .name-image {
        width: clamp(180px, 70vw, 300px);
    }
    .bride-name {
        margin-left: 0;
        align-self: center;
        transform: rotate(-2deg);
    }
    .groom-name {
        margin-right: 0;
        align-self: center;
        transform: rotate(2deg);
    }

    .name-images-container {
        margin: 1rem 0;
        gap: 0.5rem;
    }

    .name-image {
        max-width: 300px;
    }

    .bride-name {
        margin-right: 3rem;
        /* transform: rotate(-3deg); */
    }

    .groom-name {
        margin-left: 3rem;
        /* transform: rotate(3deg); */
    }

    .bride, .time{
        padding: 6rem 1.4rem 8rem;
    }

    .bride h2, .bride h3 {
        font-size: 1.8rem;
    }

    .bride i:nth-of-type(1) {
        right: 1.4rem;
        top: 2.6rem;
    }

    .bride i:nth-of-type(2) {
        left: 1.4rem;
        top: 24rem;
    }

    .bride i:nth-of-type(3) {
        right: 1.4rem;
        top: 55rem;
    }

    .bride i:nth-of-type(4) {
        left: 1.4rem;
        top: 60rem;
    }

    .bride i:nth-of-type(5) {
        right: 1.4rem;
    }

    .hadist {
        padding: 2rem 1.4rem;
    }

    .hadist i {
        left: 1.4rem;
        top: 24rem;
    }

    .hadist svg:nth-of-type(1) {
        top: -4rem;
    }

    .hadist svg:nth-of-type(2) {
        bottom: -5rem;
    }

    .time a + p + i {
        right: 1.4rem;
        top: 16rem;
    }

    .galery {
        margin-top: -6rem;
        padding: 4rem 1.4rem;
    }

    .galery .container {
        padding: 0 1rem 1rem;
    }

    .galery .container figure {
        margin-top: -1rem;
    }

    .galery .container figure img {
        height: 14rem;
    }

    .galery .container ul {
        bottom: 5rem;
    }

    .galery .container ul li {
        width: 1rem;
        height: 0.2rem;
    }

    .galery .container button:nth-of-type(1),
    .galery .container button:nth-of-type(2) {
        top: 12.4rem;
        font-size: 3rem;
    }

    .galery .container button:nth-of-type(1) {
        left: 0.8rem;
    }

    .galery .container button:nth-of-type(2){
        right: 0.8rem;
    }

    .galery div:nth-of-type(2) {
        padding: 0 1rem 4rem;
    }

    .galery div:nth-of-type(2) > div {
        margin-top: -1rem;
        padding: 2rem 1rem;
        grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr));
        gap: 1rem;
    }

    .galery div:nth-of-type(2) > div img {
        border-radius: 15px;
    }

    .galery div:nth-of-type(2) button {
        font-size: 1.4rem;
    }

    .galery > i {
        top: 2rem;
        left: 3rem;
    }

    .wishes {
        padding: 1rem 1.4rem 2rem;
        margin-top: -14rem;
    }

    .wishes div:nth-of-type(1) > div{
        flex-direction: column;
    }

    .wishes div:nth-of-type(1) > div figure {
        width: 100%;
    }

    .wishes div:nth-of-type(1) > div figure img {
        width: 8rem;
    }

    .wishes div:nth-of-type(2) {
        padding: 2rem 1rem;
    }

    .wishes div:nth-of-type(2) > form {
        margin-top: -1rem;
    }

    .wishes div:nth-of-type(3) {
        padding: 2rem 1rem;
    }

    .wishes div:nth-of-type(3) ul li {
        gap: 0.6rem;
    }

    .wishes div:nth-of-type(3) .button-grup  button {
        padding: 0.3rem 0.6rem;
        font-size: 0.8rem;
    }

    .wishes svg:nth-of-type(1){
        top: -4rem;
    }

    .wishes svg:nth-of-type(2) {
        bottom: -5rem;
    }

    .audio button {
        bottom: 5rem;
        right: 0.8rem;
    }

    footer {
        margin-top: 4rem;
        padding: 1rem 1.4rem 3.4rem;
    }

    footer h2 {
        font-size: 1.4rem;
    }

    footer > div a {
        font-size: 0.6rem;
    }
}

@media screen and (min-width: 769px) and (max-width: 1199px) {
    /* Tablet layout */
    .name-image {
        width: clamp(220px, 36vw, 340px);
    }
    .bride-name {
        margin-left: 3vw;
        transform: rotate(-3deg);
    }
    .groom-name {
        margin-right: 3vw;
        transform: rotate(3deg);
    }
}

@media screen and (min-width: 1200px) {
    /* Desktop large */
    .name-image {
        width: clamp(280px, 32vw, 420px);
    }
    .groom-name { margin-top: 1rem; }
}