/*File Name: styles.css
Author: Kristen Glodich
Course: ITWP 1050
Assignment Information: Project 3*/

/*root selector*/
:root {
    --pageColor: #ff2bb3;
}


/*font face rule for headline header font*/
@font-face {
    font-family: 'headlineFont';
    src: url('webfonts/JosefinSans-Italic-VariableFont_wght.ttf') format('truetype');
    font-weight: 700;
    font-style: italic;
}

/*font face rule for subheaders / item titles*/
@font-face {
    font-family: 'subheadFont';
    src: url('webfonts/JosefinSans-Italic-VariableFont_wght.ttf') format('truetype');
    font-weight: 500;
    font-style: italic;
}

/*font face rule for body text*/
@font-face {
    font-family: 'bodyFont';
    src: url('webfonts/JosefinSans-VariableFont_wght.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}


/*h1 styling (webfont stack, 2 color! text shadow, light color for readiblity on background)*/
h1 {
    font-family: 'headlineFont', Arial, Helvetica, sans-serif;
    font-weight: 700;
    font-style: italic;
    text-align: center;

    text-shadow:
        2px 2px 4px rgba(57, 255, 20, 0.7),
        -2px -2px 4px rgba(255, 20, 147, 0.7);
    padding: 1rem;
}

/*h2 styling (font stack, underline)*/
h2 {
    font-family: 'subheadFont', Arial, Helvetica, sans-serif;
    font-weight: 500;
    font-style: italic;
    color: #111111;
    text-align: center;
    text-decoration: underline;
}

/*body styling (font stack, background image)*/
body {
    font-family: 'bodyFont', Arial, Helvetica, sans-serif;
    font-weight: 400;
    margin: 3rem;
    padding: 0;
    box-sizing: border-box;
  
    background: url('images/background.png') no-repeat center center fixed;
    background-size: cover;
  }

/*footer styling (font stack, light color for readiblity on background)*/
footer {
    font-family: 'bodyFont', Arial, Helvetica, sans-serif;
    text-align: center;
    font-size: .80rem;
    margin: 50px 0;
    color: #f1f1f1;
    padding: 2rem;
}

/*responsive class class for headings*/
.responsive-text {
    font-size: 3rem;
    line-height: 1.5;
    color: #f1f1f1;
    border-radius: 5px;
    padding: 1rem;
}

/*class for intro paragraph text*/
p.responsive-text {
    font-size: 1rem;
    line-height: 1.5;
    color: #111111;
    text-align: justify;
    border-radius: 5px;
    padding: 1rem;
}

/*class for image description text*/
.image-text {
    font-size: 1rem;
    text-align: center;
    margin-top: 20px;
    color: #111111;
    border-radius: 5px;
    padding: 1rem;
}

/*class for picture titles (maked sense to create)*/
.gallery-title {
    font-size: 1.5rem;
    text-align: center;
    margin-top: 10px;
    font-family: 'subheadFont', Arial, Helvetica, sans-serif;
    color: #111111;
    border-radius: 5px;
    padding-top: 2rem;
}


/*LINKS SECTION (a, a:link, a:visited, a:hover, a:active to work)*/
a {
    text-decoration: underline;
    color: var(--pageColor);
}

a:link {
    text-decoration: underline;
    color: var(--pageColor);
    font-weight: bold;
}

a:visited {
    text-decoration: underline;
    color: #7e22ce;
}

a:hover {
    text-decoration: none;
    color: #39ff14;
    font-weight: bold;
}

a:active {
    text-decoration: underline wavy #39ff14;
    font-weight: bold;
}


/*GRID LAYOUT*/
.container {
    max-width: 800px;
    margin: 0 auto;
    padding: 10px;
}

.gallery {
    display: grid;

    /*couldn't really get the layout to work unless i changed the column value from auto to 3*/
    grid-template-columns: repeat(3, minmax(200px, 1fr));
    gap: 20px;
    padding: 20px;
}

.gallery img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    box-shadow: 2px 4px 8px 10px rgba(0, 0, 0, 0.1);

    /*slight background on images on hover*/
    transition: transform 0.4s ease-in-out, background-color 0.4s ease-in-out;
    margin-bottom: 15px;
}

.gallery img:hover {
    transform: scale(1.3);
    background-color: rgba(0, 0, 0, 0.4);
}


/*wrapper background for text readibility*/
.wrapper {
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.7);
    padding: 10px;
    border-radius: 5px;
    width: 100%;
    box-sizing: border-box;
}

/*media query for smaller screens*/
@media (max-width: 600px) {
    .responsive-text {
        font-size: 1.5rem;
    }
    .gallery-title {
        font-size: 1.2rem;
    }

    /*i couldn't really get the layout to work unless i forced the column value, but i added this so it's still responsive*/
    .gallery {
        grid-template-columns: repeat(2, minmax(200px, 1fr));
    }
}