body{
background-color:#150A19;
display:block;
margin:0;
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
font-size: 1rem;
background-image: url('images/sparkleoverlay.jpg');
background-size:contain;
background-attachment: fixed;
}
body.noscroll {
    overflow: hidden;
}

.contentframe{
padding: 45px;
padding-bottom:25px;
padding-top: 0px;
display: flex;
flex-wrap: wrap;
flex-direction: row;
left:0;
right:0;
pointer-events: none;
margin: auto;
position: relative;
width: auto;
min-width:200px;
max-width:788px;
pointer-events: all;
overflow: auto;
transition:.3s;
}



.contentcard{
--line-w-inner: 2px ;
--line-w-outer: 4px ;
border: solid 3px transparent;
box-shadow: 0 0 0 var(--line-w-outer) #654574, inset 0 0 0 var(--line-w-inner) #583d65;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 10px;
max-width:724px;
width:auto;
height:auto;
margin:auto;
margin-top:20px;
transition:.3s;

}

@media screen and (max-width:1100px) {
.contentcard{
width:80%;
  
}
}


.hometop{

    width: 320px;
    height:425px;
    max-height:425px;
    margin:auto;
    margin-top:20px;
    --line-w-inner: 2px ;
	--line-w-outer: 4px ;
	border: solid 3px transparent;
	box-shadow: 0 0 0 var(--line-w-outer)#514059 , inset 0 0 0 var(--line-w-inner) #514059; 
}
.homebottom{
    width:320px;
    height:130px;
    min-height:130px;
    margin:auto;
    margin-top:20px;
    --line-w-inner: 2px ;
	--line-w-outer: 4px ;
	border: solid 3px transparent;
	box-shadow: 0 0 0 var(--line-w-outer)#514059 , inset 0 0 0 var(--line-w-inner) #514059;
}


@media screen and (max-width:788px) {
.homebottom,.hometop{
height:auto;
max-height:500px;
width:80%;  
font-size: 1rem;;
}
}

container{
padding: 25px;
background-color:#f0ecf0;
display: flex;
position: relative;
flex-wrap: wrap;
flex-direction: row;
justify-content: center;
height: auto;
width: auto;
margin: auto;
border-radius: 10px;
}


#navcontainer{
width:auto;
height:283px;
display:block;
top:0;
position:relative;
margin:0;
z-index:5;

}



#navbar{
width:auto;
height:200px;
display:flex;
gap: 10px;
position:relative;
left:0;
right:0;
margin-left:auto;
margin-right:auto;
justify-self: center;
top:0;
transition: 1s;
}



#banner{
    position:absolute;
    display: block;
    width:auto;
    min-width:150px;
    left:0;
    right:0;
    height:120px;
    top:40px;
    margin: auto;
    z-index:8;
    transition: .3s;
    border-radius:100%;
 
}

#banner:hover{
      filter:contrast(120%);
}

#pagesection1{

    width:auto;
    margin: auto;
    display:flex;
    flex-direction: row;
    top:0;
    gap:10px;
    transition:1s;
    justify-content: center;
  
}


.openpage{
    pointer-events: none;
}

@media screen and (max-width:650px) {
.openpage{
margin-top:auto;
  
}
}

#navframe{ 

z-index:10;
left:0;
right:0;
margin-top:-11px;
margin-left: auto;
margin-right: auto;
margin-bottom: auto;
position: fixed;
height: auto;
width:100%;
pointer-events: none;
transition: 1s;
top:-70px;

}


@media screen and (max-width:1600px) {
#navframe{
top:-60px;


}
}
@media screen and (max-width:1100px) {
#navframe{
top:-35px;


}
}
@media screen and (max-width:788px) {
#navframe{
top:-25px;


}
}
@media screen and (max-width:650px) {
#navframe{
top:-20px;


}
}
@media screen and (max-width:500px) {
#navframe{
top:-20px;


}
}


#footer{
background-color:#715B74;
color:#ffffffec;
position:relative;
padding-top:25px;
padding-bottom:30px;
display: flex;
margin: auto;
left:0;
right:0;
bottom:0;
height:10px;
width: 78%;
min-width:100px;
max-width:788px;
font-size:medium;
justify-content: space-between;
z-index:2;
border-top-left-radius: 10px ;
border-top-right-radius: 10px ;
font-weight: 400;
--line-w-inner: 2px ;
--line-w-outer: 4px ;
border: solid 3px transparent;
box-shadow: 0 0 0 var(--line-w-outer)#514059 , inset 0 0 0 var(--line-w-inner) #514059;
border-bottom: none;
}

@media screen and (max-width:450px) {
#footer{
height:30px;
padding-top:20px;
}
}



#ovalbg{
width:80%;
height:120%;
display: block;
border-right: solid #846c88 15px;
border-left: solid #846c88 15px;
border-image: url("vectors/mirrorborder.svg") 30 / 25px;
background:linear-gradient(152.44deg, rgb(44 41 67 / 89%) 11.96%, rgb(95 93 112 / 87%) 33.49%, 44.2%, rgb(60 58 82 / 92%) 61.68%, rgb(51 41 63 / 91%) 100%);
position:fixed;
top:-50px;
left:0;
right:0;
bottom:0;
z-index:-1;
margin-left:auto;
margin-right:auto;
transition:1s;
backdrop-filter: blur(.4px);
}

@media screen and (max-width:1100px) {
#ovalbg{
box-sizing: border-box;
width:83%;
  
}
}

@media screen and (max-width:950px) {
#ovalbg{
box-sizing: border-box;
width:88%;
}
}

@media screen and (max-width:550px) {
#ovalbg{
box-sizing: border-box;
width:95%;
}
}
.navbutton{
width: auto;
height:auto;
margin-top:-10px;
transition: .3s;
filter:contrast(80%);
}

.navbutton:hover{
    padding-top: 5px;
    filter:contrast(100%);
}

@media screen and (max-width:800px){
.navbutton{
   width:100px;
   margin-top: 5px;
}}
@media screen and (max-width:600px){
.navbutton{
   width:80px;
   margin-top: -50px;
}}
@media screen and (max-width:400px) {
.navbutton{
    width: 69px;
    margin-top: -87px;
}}
@media screen and (max-width:400px){
#navbar{
   gap: 0px;
}}
@media screen and (max-width:800px) {
#banner{ 
top:5px;
width:38%;
}
}
@media screen and (max-width:720px) {
#banner{ 
top:0;
width:38%;
}
}
@media screen and (max-width:550px) {
#banner{
top: -21px;
width: 42%;
}
}
@media screen and (max-width:800px) {
.contentframe{
top:-25px;
}
}
@media screen and (max-width:743px) {
.contentframe{
top:-70px;
}
}
@media screen and (max-width:550px) {
.contentframe{
top:-140px;
}
}
@media screen and (max-width:400px) {
.contentframe{

top:-170px;
}
}
@font-face{
    font-family:header;
    src:url(fonts/Baloo2-ExtraBold.ttf);
}
@font-face{
    font-family:header2;
    src:url(fonts/Baloo2-Medium.ttf);
}
h1{
    font-family: header;
    color:#5f476b;
    font-size:xx-large;
}
h2{
    font-family: header;
    color:#5f476b;
    font-size:x-large;
}
h3{
    font-family: header;
    color:#5f476b;    font-size:larger;
}
.links{
    color:#514059;
    font-family: header;
    transition:.3s;
}
.links:hover{
    cursor:pointer;
}
.contactbutton{
    cursor:pointer;
    transition:.3s;
    width:100px;
    height:25px;
    display: block;
    border-radius: 5px;
    text-align: center;
    background-color:rgba(12, 9, 0, 0.064);
}

.contactbutton:hover{
   color:#fbf7f0;
    background-color:rgba(12, 9, 0, 0.142);
}

.imagedesc{
    margin:auto;
    margin-top:20px;
    margin-bottom:30px;
    width:90%;
    text-align:center;
}

.headeroverlay{
   border: double white 6px;
    border-end-start-radius: 10px;
    border-radius:10px;
    padding:25px;
    width:auto;
    height:auto;
    margin: auto;
    color:white;
    background-color:rgba(255, 255, 255, 0.071);
    backdrop-filter: blur(10px);
    max-height:330px;
}

button{
    background: linear-gradient(360deg, #7d6781da 17.31%, #87768cc4 100%);
    width:150px;
    height:40px;
    color:#ffffff;
    display:block;
    border-radius:5px;
    border: none;
    padding:auto;
    margin:auto;
    font-family:header2;
    font-size:large;
    cursor:pointer;
    transition:.3s;
}

button:hover{
    filter: saturate(170%);
}

iframe{
    border-radius: 10px;;
}

.caption{
    font-size:16px;
    color:#281f2c;
    font-style: italic;
    text-align:center;
}
@media screen and (max-width:920px){
.caption{
align-self: center;
justify-self: center;
display: block;
}
}

#overlay{
    width:100%;
    height:100%;
    display:block;
    margin:0;
    position:absolute;
    overflow-y: scroll;
    z-index:15;
    background-color: #150A19;
}

@media screen and (max-width:900px){
#twopictures{
flex-direction: column;
}
}

.largecaptionborder{
    border-left: solid 15px #514059;
    padding-left: 25px; width:88%;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    font-weight:600;
    font-family: header2;
    color:#514059;
    text-decoration:none;
}


.linkbutton{
    padding:5px;
    text-align: center;
    cursor:pointer;
    color:#42294c;
    background-color:#d9d7d9;
    transition: .3s ease;
    border-radius:5px;
    text-decoration: none;
    font-family: header;
    font-size:medium;
}
.linkbutton:hover{
    padding:5px;
      color: #5e1069;
    text-align: center;
    cursor:pointer;
    background-color:#b2a1b975;
   
}











/*lightbox CSS*/











#JMoverlay, #contactmeoverlay{
    width:100%;
    height:100%;
    background-color:#0e0c10eb;
    display:none;
    margin:0;
    position:fixed;
    z-index:15;
    overflow-y: auto;
}

#overlaybox{
    width:auto;
    max-width:1000px;
    min-width:300px;
    height:auto;
    background-color:#4E435C;
    border-radius:5px;
    margin:auto;
    position:relative;
    display:flex;
    flex-direction: column;
    padding:25px;
    color:white;
    margin-bottom:100px;
    margin-top:45px;
    z-index:16;
    box-shadow: 0px 4px 10px #1a171c ;
  
}

#exitbutton{
    width:33px;
    height:45px;
    position:absolute;
    padding:5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    flex:none;
    margin-top:-65px;
    display:block;
    right:0px;
    background: linear-gradient(180deg, #6a5775 0%, #4E435C 52.4%);
    transition:.3s;
    cursor:pointer;
}

#exiticon{
    width:22px;
    height:26px;
    position:relative;
    margin:auto;
    display:block;
}

#exitbutton:hover{
    margin-top:-60px;
    color:white;
}

h2{
    font-family: header;
    line-height: 0;
}



@font-face{
    font-family:header;
    src:url(fonts/Baloo2-ExtraBold.ttf);
}

@font-face{
    font-family:header2;
    src:url(fonts/Baloo2-Medium.ttf);
}

.imgcontainer{
    width:100%;
    height:100%;
    background-color:#282628;
    border-radius: 5px;
    display:flex;
    flex-direction:column;
  
}

.lightboxdesc{
    width:auto;
    height:auto;
    background-color:#40364D;
    border-radius: 5px;
    margin-top:15px;
    padding:10px;
    padding-left:15px;
    text-align:center;
    color:white;
    -webkit-text-fill-color: white;
    font-size: medium;
}

.slideshowimg{
    width:auto;
    max-width: 99%;
    height:auto;
    max-height: 700px;
    margin-left:auto;
    margin-right:auto;
    margin-top:10px;
    margin-bottom:10px;
    flex:40%;
    display:none;
    position: relative;
    left:0;
    right:0;
    opacity:100%;
    transition: .3s;
    background-color: white;;
    box-shadow: 0px 4px 10px #1a171c ;
    cursor: pointer;
}

.slideshowimg:hover{
    opacity: 90%;
    transform: scale(1.01,1.01);
}

#left, #right{
    
    height:auto;
    width:60px;
    margin: 0;
    align-content: center;
    transition:.3s;
    cursor: pointer;
}

#left:hover, #right:hover{
    background-color:rgba(240, 248, 255, 0.06);
 
}
#left:active, #right:active{
    padding-right:1px;
    padding-left:1px;
}



.next, .prev{
    margin: auto;
    display: block;
    position: relative;
    width:20%;
    min-width: 15px;
    max-width: 20px;
  
}

#middle{
    flex:40%;
}


#morepictures{
    flex:100%;
    width:100%;
    height:80px;
    background-color:#1a191a;
    position:relative;
    bottom:0px;
    margin:0;
    display:block;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;

}

.morepicscontainer{
    margin:auto;
    margin-top:7px;
    display:flex;
    position: relative;
    flex-direction: row;
    flex-wrap: nowrap;
    width:100%;
    height:60px;
    align-content:center;
}


table{
    width:90%;
    margin:auto;
    left:0;
    right:0;
    
    
}
.slidethumbnail{
    margin:auto;
    text-align:center;
    border-radius:5px;   
    cursor:pointer;
    width:40px;
    height:50px;
    opacity:70%;
    transition: .3s;
    background-color:white;
    object-fit:fill;
    margin-top:3px;
    
   
}

.active, .slidethumbnail:hover {
  padding:1px;
  opacity: 100%;
  border: solid rgba(255, 255, 255, 0.396) 2px;
}
td .slidethumbnail{
    object-fit:cover;

}

.overlaycaption{
    transition: cubic-bezier(0.86, 0, 0.07, 1);
}

@media screen and (max-width:940px){
    #morepictures{
        display:none;
    }

}

@media screen and (max-width:660px){
    .lightboxdesc{
        font-size:.9rem;
        padding:15px
    }

}
@media screen and (max-width:660px){
    #left{
       border-bottom-left-radius: 5px;
    }

}
@media screen and (max-width:660px){
    #right{
       border-bottom-right-radius: 5px;
    }

}


@keyframes fadeIn {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes fadeOut {
    from { opacity: 1; transform: scale(1); }
    to { opacity: 0; transform: scale(0.95); }
}

#overlaybox {
    animation: fadeIn 0.2s ease forwards;
}

#overlaybox.closing {
    animation: fadeOut 0.2s ease forwards;
}

















/* contact form css*/
#contactmeoverlaybox{
    width:80%;
    max-width:600px;
    min-width:200px;
    height:auto;
    background-color:#4E435C;
    border-radius:5px;
    margin:auto;
    position:relative;
    display:flex;
    flex-direction: column;
    padding:25px;
    color:white;
    top:70px;   
    transition:.3s ease;
    
}



.send{
   background-color:#453647;
    width:100%;
    height:40px;
    color:#ffffffd4;
    display:block;
    border-radius:5px;
    border: none;
    padding:auto;
    margin:auto;
    font-family:header2;
    font-size:large;
    transition:.3s;
    cursor:pointer;
}



.send:active{
  transform: scale(1.01,1.01);
}

h2{
    font-family: header;
    line-height: 0;
     color:white;
    -webkit-text-fill-color: white;
}


input, textarea{
    height:30px;
    border-radius:5px;
    border:none;
    padding:5px;
    display:block;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    font-size:small;
    padding-left:10px;
}
#name{
    width:85%;

}
#email{
    width:95%;
  
}
#subject, #message{
     width: 97%;
}






/*expand image css*/

#expandPic{
    background-color:#0e0c10eb;
    width:100%;
    height:100%;
    margin:0;
    display:none;
    z-index:16;
    position:fixed;
  overflow-y: auto;
  justify-content: center;

}

.expandedimage{
  
    margin: auto;
    box-shadow: 0px 4px 10px #1a171c ;
    display:block;
    position:relative;
       height: auto;
       width:auto;
       max-width: 700px;;
    aspect-ratio: auto;
    margin-top:50px;
    transition:.3s;
 
}
@media screen and (max-width:700px) {
.expandedimage{
    height:270px;
  
}
}

.expandedcaption{
    width:50%;
    margin-left:auto;
    margin-right:auto;
    position:relative;
    margin-top:15px;
    text-align: center; 
    color:white;
}
