/* this is where you'll find all the style rules */

html {
    font-family: 'Bellota';
    background-color: #E5E9AE;
}
::-webkit-scrollbar {
    width: 0px;
    height: 0px;
    background: transparent; 
  }

body {
    min-height:100vh;
    background-size:cover;
    background-attachment: fixed;
    color: #E5E9AE;
    margin: 0;
    align-items: center;
    justify-content: center;
    display:flex;
    font-size: 16px;
 
}

p, footer{
    font-family: 'Bellota';
}

a{
    text-decoration: underline;
    color: rgba(242, 244, 149, 1);
}
a:hover{
    
    text-decoration: none;
}

section{
    padding: 1rem;
}

footer {
    height: max-content;
    width: auto;
    font-size: 12px;
    
    text-align: center;
    padding: 1rem;
}
/* navigation */

.open{
    display: inline-flex !important;
    justify-self: center;
    transition: all 0.3s ease;
}

nav ul {
    list-style-type: none;
  }


a.button {
    
    display: inline-block;
    width: max-content;
    padding: 10px 20px; /* Adjust padding to increase/decrease button size */
    background-color: rgba(250, 214, 122, 1); /* Set button background color */
    color: rgb(0, 0, 0); /* Set text color */
    text-decoration: none; /* Remove default underline */
    border: none; /* Remove default border */
    cursor: pointer; /* Show pointer cursor on hover */
    font-size: smaller;
    margin:0.5rem;
    transition: scale 0.3s ease;
  }

#button1 {
    background-color: rgba(247, 201, 146, 1);
    transform: skew(5deg);
}

#button2 {
    background-color: rgba(220, 215, 181, 1);
    transform: skew(-5deg);
}

#button3 {
    background-color: rgba(209, 173, 146, 1);
    transform: skew(5deg);
}

#button4 {
    background-color: rgba(242, 244, 149, 1);
    transform: skew(-5deg);
}

#button5 {
    background-color: rgba(250, 214, 122, 1); 
    transform: skew(5deg);  
}

a.button:hover {
    background-color: rgba(17, 21, 36, 0.89) !important; /* Change background color on hover */
    color:rgba(250, 214, 122, 1);
    scale:110%;
}


.floater{
    font-family: 'Bellota';
    font-weight: bold;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding:2rem;
    padding-bottom: 1rem;
    position:fixed;
    top:0;
    left:0;
    border-top-right-radius: 0%;
    border-bottom-right-radius: 0%;
    background-color: #E5E9AE;
    background-size: cover;
    background-attachment: fixed;
    z-index: 2;
    min-height:50vh;
    min-width: 15vw;
    max-width: 20vw;
    transition: all 1s ease;
    
}

.floater img{
    transition: all 0.3s ease;
    object-fit:scale-down;
}

.floater img:hover{
    transform: rotate(-5deg);
}
/* mobile-menu */
    .mobile-menu{
        display: none;
        position: absolute;
        top: 5px;
        right: 1rem;
        font-size: 4rem;
        cursor: pointer;
    }
    .mobile-menu:hover{
        color:rgba(250, 214, 122, 1);
    }
    .mobile-menu:active{
        color: #091227;
    }
    
/* frame */

header{ 
    /* change to img on top border instead */
    font-family: 'Bellota';
    position:fixed;
    top: 10vh;
  left: 50%;
  transform: translateX(-50%);
    color:#03040e;
    z-index: 2;
    font-size: x-large;

/* PAPA'S WEIRD BACKGROUND FIX 
  background-position: top right; 
  background-image: url('https://smilagaulkin.com/img/smilaheader.png');  
  background-repeat: no-repeat;
  background-size:100% 100%;
/*
    
/* PAPA'S WEIRD BORDER FIX 
    border-top: 100px solid pink;
  border-image: url('https://smilagaulkin.com/img/smilaheader.png') 400 0 200;
  border-image-repeat: stretch;
*/
    
}


.container {
    overflow-y: auto;
    overflow-x: hidden;
    
    justify-content: right;
    display: grid;
    grid-template-columns: 15vw repeat(1,1fr);
    grid-gap: 1rem;
    grid-template-areas: ". main";
    height: 70%;
    width: 80%;
    position: fixed;
    z-index: 1;
	box-shadow: 0 0 0px rgba(19, 0, 2, 0.81);
    transition: all 0.5s ease;

/* ORIGINAL GRADIENT FRAME */
    border-width: 77px 32px 32px 32px; 
    border-style: solid;
    border-image: url('img/frameGradient.jpg') 80 34 34 34 stretch; 

   
/* PAPA'S WEIRD BACKGROUND FIX   
  background-position: bottom right; 
  background-image: url('https://smilagaulkin.com/img/smilaframe.png');  
  background-repeat: no-repeat;
  background-size:100% 100%;
/*    
    
/* PAPA'S WEIRD BORDER FIX 
      border-width: 200px; 
    border-style: solid;
    border-image: url('https://smilagaulkin.com/img/smilaframe.png') 400 420 420 430 stretch; 
*/
   
    
 
    
}

.container#no-overflow{
    overflow: hidden;
    
}

.container main{
    grid-area: main;
    background-color: #03040e4a;
    border-left: dashed #2a2e55;
    min-height: 100%;
    height: fit-content;
}

/* THEMES */
/* front page */
img.frontpage{
    height: 100%;
}
.gallery {
    /* background-color: white; */
    display: grid;
    box-sizing: border-box;
    grid-template-columns:repeat(2, 1fr) 0.8fr repeat(2, 1fr);
    grid-template-rows: 40% 25% 25%;
    grid-auto-flow: dense;
    gap: 2rem;
    padding: 25px;
    height: 70vh;
}

img {
        max-width: 100%;
    max-height: 100%;
    object-fit: cover;
}

main img {
    border-radius: 25px;    
}

.gallery img, .shelf img{
    box-shadow: 0 0 10px rgba(19, 0, 2, 0.81);
    transition: all 0.1s ease-in-out;
    width: 100%;
}

.gallery img:hover{
    transform: scale(1.05);
    box-shadow: 0 0 10px rgba(250, 214, 122, 1);
}

.shelf img:hover{
    transform: rotate3d(1, 7, 1, 15deg);
}

#no-background{
    background-color: unset;
    border: unset;
}
/* portfolio (character design+illustration+animation) */
.portfolio{
    
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    display: grid;
    height: fit-content;
    row-gap: 20px;
    
}
.portfolio img, .shelf img{
    max-height: 65vh;
    border-radius: 0;
    object-fit: contain;
    justify-self: center;
    /* box-shadow:#091227 5px 5px 2px; */
}

img.four-grid-cells {
    grid-row: span 2 / auto;
    grid-column: span 2 / auto;
}

img.wide-image {
    grid-column: span 2 / auto;
}
img.super-wide-image {
    grid-column: span 3 / auto;
}
img.tall-image {
    grid-row: span 2 / auto;
}

/* youtube video */
    .youtube-video-container {
    position: relative;
    overflow: auto;
    width: 100%;
    scale: 90%;
  }
  
  .youtube-video-container::after {
    display: block;
    content: "";
    padding-top: 56.25%;
  }
  
  .youtube-video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

/* zine */
.shelf{
        /* background-color: white; */
        display: grid;
        box-sizing: border-box;
        grid-template-columns:repeat(3, 1fr);
        padding: 5rem;
        gap: 8rem;
        
}
/* about me */

.container#about{
    align-items: normal;
}
.about{
    display: grid;
    grid-template-columns: 4fr 1fr;
    grid-template-rows: auto;
    padding: 2rem;
    grid-template-areas: "middle right" ;

}

.about section{
    grid-area: middle;
    background-color: #e6cec9;
    color: rgba(19, 0, 2, 0.81);
    border: rgb(41 44 84) dashed 3px;
}

.top-right{
    font-size: 20px;
    grid-area: right;
    justify-self: right;
    text-align: right;
    margin-block-start: 0;
}


#bottomright{
    position: fixed;
    bottom: -40px;
    right: 0;
    max-height: 400px;
    width: auto;
    transition: all 0.3s ease-in-out;
    grid-area: right;

}

#bottomright:hover{
    transform: translateY(-10px);
    
}
#bottomright:active{
    transition: all 0.1s ease-in-out;
    transform: skew(-5deg);
}
/* form */

form {
    display: inline-block;
    padding: 1em;
    
  }
form ul {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  
  form li + li {
    margin-top: 1em;
  }
  
  form label {
    /* Uniform size & alignment */
    display: inline-block;
    min-width: 90px;
    text-align: right;
  }
  
  form input,
  textarea {
    background-color: #e6cec9;
    /* To make sure that all text fields have the same font settings
       By default, textareas have a monospace font */
    font: 1em 'Bellota';
    /* Uniform text field size */
    width: 300px;
    box-sizing: border-box;
    /* Match form field borders */
    border: 1px solid #999;
}

input:focus,
textarea:focus {
    border-color: aliceblue;
}

textarea {
    vertical-align: top;
    height: 5em;
    font-family: 'Bellota';
}

form .button {
    padding-left: 90px;
    
}

form button{
    
    margin-left: 0.5em;
    background: rgb(230 206 201);
    padding: 5px;
    border: none;
    border-radius: 5px;
    transition: all 0.3s ease;
}
form button:hover{  
    background: rgb(250 214 122);
    scale: 1.05;
}

form button:active{
    background-color: rgba(242, 244, 149, 1);
    transition: unset;
    scale:1;
}
/* stars */

#scrollStar{
    position: fixed;
    bottom: 15%;
    left: 16%;
    width: auto;
    height: 10vh;
    z-index: 3;
    object-fit: contain;
    
}
.star{
    position: fixed;
    transition: all 0.3s ease;
    max-height: 75px;
    z-index: 10;
}
.star:hover{
    scale: 120%;
    transform: rotate(-5deg);
}

.spinning{
    animation: spin 1s linear infinite;
}

.spin{
    animation: spin 0.8s ease-in-out;
}

@keyframes spin{
    from {transform: rotate(0deg);}
    to {transform: rotate(360deg);}
}
/* media query (makes items responsive to diff sizes)*/

@media screen and (max-width: 1100px) {

    .container {
        grid-template-columns: 20vw repeat(1,1fr);
    }
    .container#no-overflow {
        overflow: auto;
    }
    
    .gallery {
         grid-template-columns: 1fr 1fr;
     }
     
     img.four-grid-cells {
        grid-row: span 2 / auto;
        grid-column: auto;
    }

    img.wide-image {
        grid-row: span 2 / auto;
        
    }

    img.tall-image {
        grid-row: span 3 / auto;
    }

    #bottomright{
        max-height: 250px;
    }

 }

  @media screen and (min-width:700px) {
    .floater{
        transition: none;
    }
    
  }

  @media screen and (max-height: 660px){
    .container main{
        background-color: unset;
    border-left: unset;

    }
    body{
        display: flex;
        flex-direction: column;
    }
    .container {
        display: inline;
        flex-direction: column;
        position: relative;
        width: 100vw;
        border: hidden;
        box-shadow: none;
    }
    a.button{
        width: 80vw;
        text-align: center;
    }

    .floater {
        display: inline;
        position: static;
        max-width: 100%;
        max-height: 100vh;
        align-self: start;
        overflow: hidden;
        min-height: unset;
        padding: unset;
        transition: all 0.3s ease;
        background: none;
    }

    .floater img{
        max-width: 200px;
        padding: 1rem;
    }

    nav {
        overflow: hidden;
    }
    .floater ul{
        display: flex;
        flex-direction: column;
        padding-inline-start: 0;
        overflow: hidden;
    }
    .floater ul li {
        align-self: center;
    }

    header{
        display: none;
        z-index: 3;
        position:sticky;
        transform: unset;
        left: unset;
        top:0;
        height:3rem;
        width: 100vw;
        padding-top: 1rem;
        text-align: center;
        
        background-color:rgba(250, 214, 122, 1) ;
    }


    .star, #scrollStar{
        display: none;
    }
    main{
        position: static;
        margin-left: 0;

    }

    .gallery, .portfolio{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    /* height: auto;
    overflow: hidden; */
    margin: 1.5rem;
    grid-auto-rows: unset;
    }

    #bottomright{
        position: absolute;
        bottom: 50px;
        max-height: 150px;
    }

        .mobile-menu{
            display: block;
        }
        .floater .nav-links{
            display: none;
        }
    
  }

 @media (max-width: 1000px) 
 /* or (max-height: 660px)  */
 {
    /* .container#no-overflow{
        overflow: hidden;
    } */

    .container main{
        background-color: unset;
    border-left: unset;

    }
    body{
        display: flex;
        flex-direction: column;
    }
    .container {
        display: inline;
        flex-direction: column;
        position: relative;
        width: 100vw;
        border: hidden;
        box-shadow: none;
    }
    a.button{
        width: 80vw;
        text-align: center;
    }

    .floater {
        display: inline;
        position: static;
        max-width: 100%;
        max-height: 100vh;
        align-self: start;
        overflow: hidden;
        min-height: unset;
        padding: unset;
        transition: all 0.3s ease;
        background: none;
    }

    .floater img{
        max-width: 200px;
        padding: 1rem;
    }

    nav {
        overflow: hidden;
    }
    .floater ul{
        display: flex;
        flex-direction: column;
        padding-inline-start: 0;
        overflow: hidden;
    }
    .floater ul li {
        align-self: center;
    }

    header{
        display: none;
        z-index: 3;
        position:sticky;
        transform: unset;
        left: unset;
        top:0;
        height:3rem;
        width: 100vw;
        padding-top: 1rem;
        text-align: center;
        
        background-color: #E5E9AE ;
    }


    .star, #scrollStar{
        display: none;
    }
    main{
        position: static;
        margin-left: 0;

    }

    .gallery, .portfolio{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    /* height: auto;
    overflow: hidden; */
    margin: 1.5rem;
    grid-auto-rows: unset;
    }

    #bottomright{
        position: absolute;
        bottom: 50px;
        max-height: 150px;
    }

        .mobile-menu{
            display: block;
        }
        .floater .nav-links{
            display: none;
        }
 }
 
@media screen and (max-width: 424px) {
    form label{
        display: unset;
    }
    
}

@media screen and (max-width: 700px) {
    .gallery, .portfolio{
        display: flex;
        flex-direction: column;
        }
    .about {
        display: block;
        padding: 0.5rem;
    }
    .shelf{
        display: grid;
         grid-template-columns: 1fr 1fr;
         gap:2rem;
         padding: 2rem;


     }
    
}


 @media screen and (min-width: 1850px) {
    .floater{
        left: 80px;
        max-width: 18vw;
    }
    .floater img{
        max-width: 90%;
        height: auto;
    }
 }

 @media screen and (min-width: 1800px) {
    img#bottomright{
    position: fixed;
    bottom: 102px;
    max-height: 500px;
    width: auto;
    grid-area: right;
    right: 114px;
    }

    .about section{
        width: 92%;

    }
    
 }