* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    scroll-behavior: smooth;
}

.container {
    width: 70px;
    height: 35px;
    overflow: hidden;
    position: fixed;
    width: 100%;
    height: 100%;
    background-color: #EFE6DD;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9999;
    opacity: 1;
    transition: opacity 1s ease;
}

.container.fade-out {
    opacity: 0;
    pointer-events: none;
}

.loader {
    width: 70px;
    height: 70px;
    border-style: solid;
    border-top-color: #711E1B;
    border-right-color: #711E1B;
    border-left-color: transparent;
    border-bottom-color: transparent;
    border-radius: 50%;
    box-sizing: border-box;
    animation: rotate 3s ease-in-out infinite;
    transform: rotate(-200deg);
}

@keyframes rotate {
    0% {
        border-width: 10px;
    }
    25%{
        border-width: 3px;
    }
    50% { 
        transform: rotate(115deg); 
        border-width: 10px;
    }
    75% {
        border-width: 3px;
    }
    100% {
        border-width: 10px;
    }
}

.observe {
    opacity: 0;
        transform: translateY(20px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}

.observe.visible {
    opacity: 1;
    transform: translateY(0);
}

nav {
    height: 80px;
    display: grid;
    grid-template-columns: repeat(4, auto);
    padding: 1rem;
    justify-content: center;
    align-items: center;
    background-color: #EFE6DD;
    position: sticky;
    top: 0;
    outline: #0E1911 solid 1px;
    z-index: 999;
    gap: clamp(1rem, 5vw, 5rem);
}

nav a {
    font-family: Outfit-Regular;
    font-size: 1.2em;
    color: #0E1911;
    text-decoration: none;
}

nav a:link {
    transition: color 0.3s;
}

nav a:hover {
    color: #711E1B;
}

header {
    /* height: 800px; */
    font-family: ImperialScript;
    display: grid;
    grid-template-columns: repeat(2, 1fr);   
    z-index: 1;
    /* margin-bottom: 200px; */
    margin-top: 80px;
    min-height: 100vh;
    height: auto;
    padding: 2rem 1rem;
}

.h1 {

    width: 850px;
    height: auto;
    width: clamp(250px, 80vw, 850px);
    align-self: center;
    position: relative;
    right: 300px;
    top: 40px;
}

.head-img {
    padding-top: 50px;
    width: auto;
    height: 240px;
    justify-self: end;
}

body {
    background-color:#EFE6DD ;
}

#about {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    align-items: center;
    padding-top: 180px;
    padding-bottom: 10px;
    padding: clamp(40px, 8vw, 180px) 1rem;
    gap: 2rem;
}

#about img {
    height: auto;
    justify-self: center;
    width: clamp(200px, 80vw, 600px);
}

#about h3 {
    font-family: ImperialScript;
    font-size: 7rem;
    color: #711E1B;
    font-weight: lighter;
    font-size: clamp(20px, 10vw, 100px);
}

.what-are-they {
    padding: 30px;
    /* align-self: end; */
}

.what-are-they hr {
    background-color: #711E1B;
    height: 2.3px;
    width: clamp(150px, 60%, 520px);
}

.what-are-they p{
    padding: 20px;
    font-family: Outfit-Regular;

}

#flowers {
    display: grid;
    grid-template-rows: auto 1fr auto;
    gap: 1rem;
    justify-content: center;
    align-items: center;
    margin: 40px 80px; 
    /* position: relative; */
    /* padding: 80px; */
} 

button {
    place-items: center;
    background-color: #711E1B;
    border: none;
    cursor: pointer;
    opacity: 1;
    position: absolute;
    border-radius: 20%;
    color: #EFE6DD;
    width: clamp(35px, 8vw, 48px);
    height: clamp(35px, 8vw, 48px);
    font-size: clamp(1rem, 4vw, 2rem);
}

button:hover,
button:focus {
    opacity: 0.2;
}

.left {
    justify-self: start;
    align-self: center;
    left: 50px;
}

.right {
    justify-self: end;
    align-self: center;
    right: 50px;
}

 .information {
    display: flex;
    flex-wrap: nowrap;
    scroll-snap-type: x mandatory;
    overflow-x: auto;
    gap: 20px;
    padding: 80px 0;
    scroll-padding: 20px;

}

.information figure {
    flex: 0 0 10%;
    scroll-snap-align: center;
}

  @media screen and (min-width: 700px){
    .information figure {
        flex: 1 0 45%;
    }
}
@media screen and (min-width: 1200px){
    .information figure {
        flex: 1 0 30%;
    }
    
}

.information figcaption {
    font-family: ImperialScript;
    color:#711E1B;
    font-size: 1.44rem;
}

@media screen and (max-width: 600px) {
    .information img {
        width: 100%;
        height: auto;
    }
    
}

#flowers .subtitle h3 {
    font-family: ImperialScript;
    color: #711E1B;
    font-weight: lighter;
    font-size: clamp(2rem, 8vw, 6rem);
    text-align: center;
}

#flowers .subtitle hr {
    background-color: #711E1B;
    height: 2.3px;
    width: clamp(150px, 60%, 660px);
    margin: 0 auto;
}

.subtitle {
    padding: 30px;
}

#flowers img {
    height: auto;
    width: clamp(200px, 80vw, 430px);
}

#flowers figcaption {
 /* dialog figcaption */
  background-color: #EFE6DD;
  /* transform: translateY(-0.433rem); */
  border-radius: 2px;
}

 /* dialog {
  position: fixed;
  top: 5vw;
  max-width:95vw;
  max-height: 90vh;
  margin: 0 auto;
  transition: all 0.35s ease-out ;
}


 dialog button {
  font-size: 1.2rem;
  margin: 0.694rem;
  background-color: #711E1B;
  color: #ffffff;
}

dialog form {
  text-align: right;
}

 dialog button:hover {
  background-color: #616f59;
  cursor: pointer;
}

.information .desc{
    display: none;
} */

#common {
    padding: 100px;
}

#common h3 {
    font-family: ImperialScript;
    font-size: clamp(4rem, 8vw, 7rem);
    color: #711E1B;
    font-weight: lighter;
    text-align: center;
}

#common hr {
    justify-self: center;
    height: 2.3px;
    width: clamp(200px, 50%, 570px);
    background-color: #711E1B;
}

.gallery {
    padding: 55px;
    display: grid;
    margin-top: 30px;
    justify-content: center;
    justify-items: center;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}

.gallery img {
    width: 100%;
    height: auto;
    aspect-ratio: 4/4;
    object-fit: cover;
}


.gallery figcaption{
    font-family: ImperialScript;
    color: #711E1B;
    font-size: 2rem;
    text-align: center;
}

footer {
    background-color:#711E1B;
    width: 100%;
    background-size: cover;
    padding: 35px;
    font-size: 17px;
    color: #EFE6DD;
}

.footer-socials {
    transition: opacity 1% ease;
    position: relative;
    bottom: 6px;
}

.footer-socials img {
    height: 24px;
    width: auto;
}

.footer-socials img:hover {
    opacity: 0.5;
}
 
footer .credit {
    display: grid;
    grid-template-columns: 1fr auto;
}

footer p {
    max-width: 60%;
    padding: 5px;
    font-family: Outfit-Regular;
    align-content: center;
}

footer img {
    width: 50px;
    height: auto;
    justify-self: end;
}

@media screen and (max-width:800px){
    #flowers {
        grid-template-rows: 1fr;
    }    
}

@media screen and (max-width: 1130px) {
    header{
        grid-template-columns: 1fr;
        justify-content: center;
    }
    .head-img {
        width: clamp(50px, 90vw, 530px);
        height: auto;
        justify-self: center;
    }
        .h1 {
        width: clamp(50px, 90vw, 850px);
        height: auto;
        align-self: center;
        position: relative;
        right: 0;
        top: 0;
        }
}

@media screen and (max-width: 600px) {
    #about {
        grid-template-columns: 1fr;
        height: auto;
        width: 100%;
    }
}

@media screen and (max-width: 1200px) {
  #about {
    grid-template-columns: 1fr;
    height: auto;
    width: 100%;
  }
}


@media screen and (max-width: 365px) {
    nav {
        width: 100%;
        height: auto;
    }
}

/* @media screen and (max-width: 1300px) {

    .h1 {
        width: 100%;
        height: auto;
    }

    .head-img {
        width: 100%;
        height: auto;
    }
} */

@media screen and (max-width: 450px) {
    header {
        grid-template-columns: 1fr;
        justify-items: center;
    }
}

@font-face {
  font-family: ImperialScript;
  src: url(../font/imperial\ script/ImperialScript-Regular.ttf);
}

@font-face {
  font-family: Outfit-Regular;
  src: url(../font/outfit/Outfit-Regular.ttf);
}