/* Media Queries */



/* Font Styles */

.h1 {
    font-family: 'Nunito', sans-serif;
    font-size: 48px;
    font-weight: 800;
    line-height: 1.5;
}

.h2 {
    font-family: 'Nunito', sans-serif;
    font-size: 36px;
    font-weight: 800;
    line-height: 1.5;
}

.h3 {
    font-family: 'Nunito', sans-serif;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.5;
}

.h4 {
    font-family: 'Montserrat', sans-serif;
    font-size: 20px;
    font-weight: 400;
    line-height: 1;
}

.h5 {
    font-family: 'Montserrat', sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1.5;
}

.p {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
}

.buttonText {
    text-decoration: none;
    color: #f9f2f2;
    font-weight: 600;
    font-size: 16px;
    font-family: 'Montserrat', sans-serif;
}

/* -------------------------------------------------------------------------------------------- */


/* Components */

.button {
    border-radius: 300px;
    padding: 0px;
    margin-top: 12px;
    font-size: 16pt;
    font-weight: 600;
    color: #f9f2f2;
    background: #ea6363;
    display: block;
}

.button:hover {
    background: #f2be3b;
    cursor: pointer;
}

.button a {
    display: block;
    padding: 12px 24px;
}

.item {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    gap: 24px;
    padding: 24px;
    justify-items: center;
    max-width: 60%;
}

.logo {
    grid-area: logo;
    height: 60px;
    margin-left: 12px;
}

.siteName {
    grid-area: siteName;
}

.introImage {
    width: 40%;
    background: #f9f2f2;
}

.introCopy {
    width: 60%;
}

.workImage {
    width: 100%;
}

.workItemInfo {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    place-items: start;
    gap: 12px;
}

.workBodyCopy {
    padding-top: 12px;
}

.aboutImage {
    width: 240px;
    height: 240px;
    justify-content: center;
}

.socialIconCircle {
    width: 24px;
    height: 24px;
    border-radius: 300px;
    padding: 16px;
    background-color: #ea6363;
    fill: #ea6363;
    opacity: 1;
}

.socialIconCircle:hover {
    background: #f2be3b;
    cursor: pointer;
    opacity: 1;
}

.socialIcon {
    text-decoration: none;
    fill: #f9f2f2;
}

.squiggle {
    width: 360px;
    padding-top: 60px;
    padding-bottom: 60px;
}

/* -------------------------------------------------------------------------------------------- */

/* Structure */

body {
    padding: 0px;
    margin: 0px;
    font-family:'Nunito', sans-serif;
    font-size: 16pt;
    font-weight: 400;
    color: #140a0a;
    background: #f9f2f2;
    text-align: justify;
    text-justify: distribute;
    text-align-last: center;
    width: 100%;
}

.container {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    justify-items: center;
    width: 100%;
}


/* Header */

.headerContainer {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    grid-template-areas: 
    "logo siteName";
    justify-items: start;
    align-items: center;
    gap: 12px 12px;
    justify-content: start;
    padding: 12px;
    width: 100%;
    background: #f9f2f2;
    overflow: hidden;
    position: fixed;
    filter: drop-shadow(0px -36px 25px #140a0a);
}

/* Intro */

.introContainer {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    justify-items: center;
    padding-top: 120px;
    width: 100%;
    text-align: center !important;
    background-color: #4357ad;
    color: #f9f2f2;
}

/* Squiggle Container */

.squiggleContainer {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    justify-items: center;
    max-width: 1920px;
    padding: 60px;
}

/* Wave */

.topWave {
    display: block;
    padding: 0px;
    margin: 0px;
    width: 100%;
    fill: #f9f2f2;
    background-color: #4357ad;
}

.bottomWave {
    display: block;
    padding: 0px;
    margin: 0px;
    width: 100%;
    fill: #4357ad;
    background-color: #f9f2f2;
}

/* Work */

.workContainer {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    justify-items: center;
    width: 100%;
    background: #f9f2f2;
    padding-top: 24px;
}

.workItemContainer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    justify-items: center;
    grid-auto-flow: row;
    align-items: start;
    padding-top: 36px;
    gap: 24px;
}

.workItemContainer > div:nth-child(odd) {
    justify-self: end;
}

.workItemContainer > div:nth-child(even) {
    justify-self: start;
    text-align-last: left;
}

/* About */

.aboutContainer {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    justify-items: center;
    width: 100%;
    background-color: #f9f2f2;
}

.aboutItemContainer {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    grid-template-rows: auto;
    place-items: center;
    place-content: center;
    grid-auto-flow: row;
}

.aboutItemContainer > div:nth-child(1) {
    justify-self: end;
}

.aboutItemContainer > div:nth-child(2) {
    justify-self: center;
}

.aboutItemContainer > div:nth-child(3) {
    justify-self: start;
}

/* Contact */

.contactContainer {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    justify-items: center;
    width: 100%;
    background: #4357ad;
    color: #f9f2f2;
    padding-bottom: 80px;
}

.socialIconContainer {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    justify-items: center;
    gap: 24px;
    padding-top: 6px;
}