@import url('https://fonts.googleapis.com/css2?family=Rozha+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat&display=swap');

*{
    box-sizing: border-box; /* makes sure that the content width doesn't go over the screen display size */
}

body {
    font-family: 'Montserrat', sans-serif;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin: 0;
    background-color: #fbfaf8;
    width: 100%;
}

h1 {
    font-family: 'Rozha One', serif;
    font-size: 50px;
    line-height: 1;
    color: rgb(14, 14, 14);
    margin: 20px 20px;
    padding: 0;
}

h2 {
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: 200;
    color: rgb(14, 14, 14);
    margin: 0;
    padding: 0;
}

h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: 200;
    letter-spacing: 10px;
    color: rgb(14, 14, 14);
    margin: 0;
    padding: 0;
}

p{
    font-size: 14px;
    line-height: 2;
    color: rgb(14, 14, 14);
}


menu-component, footer-component {
    width: 100%;
    height: 100%;
}

hammenu-component {
    display: none;
}

main {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    margin-top: 80px;
}

.intro-text{
    margin-bottom: 80px;
}

.intro-text a {
    text-decoration: none;
    font-weight: 800;
    color: rgb(16, 16, 16);
}

.photo-packages {
    
    display: flex;
    justify-content: center;
    gap: 40px;
    padding: 40px 80px;
}

.video-packages {
    display: flex;
    justify-content: center;
    gap: 20px;
    padding: 40px 0px;
    flex-direction: row;
    flex-wrap: wrap;
}

.extras .package {
    display: flex;
    flex-direction: column;
    
    color: #fbfaf8;
    width: 400px;
    height: auto;
    padding: 20px 20px;
    border-radius: 20px;
}

.package {
    display: flex;
    flex-direction: column;
   align-items: center;
    background-color: #fbfaf8;
    color: #fbfaf8;
    width: 300px;
    height:fit-content;
    padding: 20px 20px;
    border: 2px solid #e8e8e8;
    border-radius: 20px;
    box-shadow: 2px 2px 10px #d7d7d7;
    transition: 0.3s ease-in-out;
    
}

.package:hover{
    scale:1.02;
}

.package h2{
    text-transform: uppercase;
}

.package h1 {
    font-size:30px;
}

.title {
    
}

.image {
    position: relative;
    object-fit:contain;
    margin-bottom: 40px;
}

.title2 {
    margin-bottom: 40px;
}

.image img {
    width:200px;
    height:200px;
    border-radius: 50%;
    object-fit: cover;
}

.items {
    display: flex;
    flex-direction: column;
    text-align: center;
}

.items p {
    font-size: 16px;
    line-height: 1;    
    margin: 10px 0px;
}

.contactbox {
    padding: 10px 15px;
    text-decoration: none;
    margin: 30px 0px;
    border: 1px solid #979797;
    
    border-radius: 12px;
    transition: 0.3s ease-in-out;
}

.contactbox h2 {
    font-size: 16px;
}

.package a {
    text-decoration: none;
}

.contactbox:hover {
    scale: 1.05;
    padding: 10px 15px;
    cursor: pointer;
 
    box-shadow: 2px 2px 5px #8e8e8e;
    border-radius: 12px;
}

.video {
  margin-top: 80px;  
}

.extras-intro {
    margin-top: 80px;  
    padding: 0px 200px;
}

.extras-intro {
    background-color: rgb(238, 238, 238); 
    padding-top: 40px;
}

.extras-intro p {
    padding: 0px 200px;
    text-align: justify;
}

.extras {
    background-color: rgb(238, 238, 238);
    display: flex;
    justify-content: center;
    gap: 20px;
    padding: 80px 80px;
}

.wedding-website {
    margin: 80px 0px;
    padding: 0px 80px;
}
.wedding-website p {
    padding: 0px 400px;
}

.tooltip {
  position: relative;
  display: inline-block;
  
}

.tooltip .tooltiptext {
  visibility: hidden;
  width: 240px;
  background-color: rgb(187, 187, 187);
  color: #fff;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;
  
  /* Position the tooltip */
  position: absolute;
  z-index: 1;
  bottom: 100%;
  left: 50%;
  
}

.tooltip:hover .tooltiptext {
  visibility: visible;

}

.tooltip .tooltiptext::after {
  content: " ";
  position: absolute;
  top: 100%; /* At the bottom of the tooltip */
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: rgb(187, 187, 187) transparent transparent transparent;
}




/* Tablets*/

@media (max-width: 767.98px) {



}



/* Small devices (landscape phones, 576px and up) */
@media only screen and (min-width: 320px) and (max-width: 480px) {

    menu-component{
        display: none;
    }

    hammenu-component {
       width: 100%;
       display: flex;
        position: fixed;
        z-index: 9999999;

     }

     footer-component {
        display: none;
     }

     h1 {
        font-family: 'Rozha One', serif;
        font-size: 40px;
        line-height: 1;
        color: rgb(14, 14, 14);
        margin: 10px 10px;
        padding: 0;
    }
    
    h2 {
        font-family: 'Montserrat', sans-serif;
        font-size: 24px;
        font-weight: 200;
        color: rgb(14, 14, 14);
        margin: 0;
        padding: 0;
    }
    
    h3 {
        font-family: 'Montserrat', sans-serif;
        font-size: 20px;
        font-weight: 200;
        letter-spacing: 10px;
        color: rgb(14, 14, 14);
        margin: 0;
        padding: 0;
    }
    
    p{
        font-size: 20px;
        line-height: 1.8;
       
    }

    main {
       
        display: flex;
        flex-direction: column;
        justify-content: center;
        text-align: center;
        margin-top: 80px;
        width: 100%;
    }
    
    .intro-text{
        width: 100%;
        margin-bottom: 80px;
        padding: 0px 20px;
    }
    
    .photo {
        width: 100%;
    }
    .intro-text a {
        text-decoration: none;
        font-weight: 800;
        color: rgb(16, 16, 16);
    }
    
    .photo-packages {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 50px;
        padding: 40px 10px;
        margin: 0px;
      
    }
    
    .video-packages {
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 50px;
        padding: 40px 10px;
    }
    
    .extras .package {
        display: flex;
        flex-direction: column;
        width: 85%;
        color: #fbfaf8;
        height: auto;
        padding: 20px 10px;
        border-radius: 20px;
    }
    
    .package {
        display: flex;
        flex-direction: column;
       width: 85%;
        align-items: center;
        background-color: #fbfaf8;
        border: 2px solid #e8e8e8;
        box-shadow: 2px 2px 10px #d7d7d7;
        transition: 0.3s ease-in-out;
        padding: 20px 10px;
        
    }
    
    .package:hover{
        scale:1;
    }
    
    .package h2{
        text-transform: uppercase;
    }
    
    .package h1 {
        font-size:30px;
    }
    
    
    .image {
        position: relative;
        object-fit:contain;
        margin-bottom: 40px;
    }
    
    .title2 {
        margin-bottom: 40px;
    }
    
    .image img {
        width:150px;
        height:150px;
        border-radius: 50%;
        object-fit: cover;
    }
    
    .items {
        display: flex;
        flex-direction: column;
        text-align: center;
    }
    
    .items p {
        font-size: 16px;
        line-height: 1;    
        margin: 10px 0px;
    }
    
    .contactbox {
        padding: 10px 15px;
        text-decoration: none;
        margin: 30px 0px;
        border: 1px solid #979797;
        
        border-radius: 12px;
        transition: 0.3s ease-in-out;
    }
    
    .contactbox h2 {
        font-size: 16px;
    }
    
    .package a {
        text-decoration: none;
    }
    
    .contactbox:hover {
        scale: 1;
        padding: 10px 15px;
        cursor: pointer;
     
        box-shadow: 2px 2px 5px #8e8e8e;
        border-radius: 12px;
    }
    
    .video {
      margin-top: 80px;  
    }
    
    .extras-intro {
        width: 100%;
        margin-top: 80px;  
        padding: 0px 10px;
    }
    
    .extras-intro {
        background-color: rgb(238, 238, 238); 
        padding-top: 40px;
    }
    
    .extras-intro p {
        padding: 0px 20px;
        text-align: justify;
    }
    
    .extras {
        width: 100%;
        background-color: rgb(238, 238, 238);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 50px;
        padding: 80px 10px;
    }
    
    .wedding-website {
        width: 100%;
        margin: 80px 0px;
        padding: 0px 10px;
    }
    .wedding-website p {
        padding: 0px 10px;
    }
    
 
}