body {
    margin: 0;
    font-family: "Kumbh Sans", sans-serif;
}
img {
    display: block;
    max-width: 100%;
}
h1,h2,h3,p {
    margin: 0.3rem;
}
h1 {
    font-size: 2.5rem;
}
h2 {
    font-size: 2rem;
}
h3 {
    font-size: 1.75rem;
}
address {
    font-style: normal;
}
a {
    text-decoration: none;
}
ul, ol {
    list-style: none;
    padding: 0;
}

section {
    padding: 1rem;
}

dialog {
    position: fixed;
    z-index: 2;
    display: none;
    flex-direction: column;
    position-area: center;
    width: 100%;
    height: 100%;
    padding: 0;
    margin: 0;
    background-color: rgba(0,0,0,0.5);
}
.modal-open {
    display: flex;
}
.modal-window {
    display: block;
    margin: auto;
    text-align: center;
    padding: 2rem;
    background-color: white;
    width: 12rem;
}
.modal-window button {
    padding: 0.5rem;
    font-size: 1rem;
    border-radius: 0.5rem;
    background-color: #2d497d;
    border: none;
    color: white;
    cursor: pointer;
}
.modal-info {
    display: flex;
    justify-content: space-around;
    align-items: center;
    padding-bottom: 2rem;
}

.container-background {
    position: relative;

    padding-top: 8.5rem;
    padding-bottom: 9.5rem;
    padding-inline: 1rem;

    background-color: rgb(188, 231, 231);
    background-image: url("images/background2.jpeg");
    background-blend-mode: luminosity;
    background-repeat: no-repeat;
    /* background-position: center; */
    background-position-y: 75%;
    background-size: cover;
    
    text-align: center;
}
.container-background h1, .container-background p {
    color: white;
    text-shadow: 0px 4px 4px black;
}
.container-background h1 {
    font-size: 4rem;
}
.container-background p {
    font-size: 2rem;
}
.container-background img {
    width: 18.5rem;
    position: absolute;
        top: 100%;
        left: 50%;
        transform: translate(-50%, -50%);
    aspect-ratio: 1/1;
    object-fit: cover;
    border-radius: 50% 50%;
    border: 8px solid #617786;
}

.phrase {
    padding-top: 10.5rem;
    text-align: center;
}

.container-ceremony {
    text-align: center;
}
.container-ceremony address {
    font-size: 1.25rem;
}
.container-ceremony p {
    font-size: 1.4rem;
}

.container-confirm {
    background-color: #617786;
    text-align: center;
    color: white;
}
.container-confirm a {
    display: inline-block;
    margin-block: 1rem;
    padding: 1rem;
    font-size: 1rem;
    border-radius: 0.5rem;
    background-color: #2d497d;
    color: white;
}

.container-accommodation {
    text-align: center;
}

.container-gifts header {
    padding-bottom: 2rem;
    text-align: center;
}
.gifts-list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
}
.gift-item {
    max-width: 17rem;
    text-align: center;
}
.gift-item img {
    aspect-ratio: 1/1;
    object-fit: cover;
    object-position: center;
}
.gift-item button {
    padding: 0.7rem;
    font-size: 1rem;
    border-radius: 0.5rem;
    background-color: #2d497d;
    border: none;
    color: white;
    cursor: pointer;
}