* {
    box-sizing: border-box;
}

html {
    height: 100vh;
    background: rgb(17, 62, 159);
    background: linear-gradient(0deg, rgb(55, 79, 145) 15%, rgba(65, 158, 180, 1) 50%) fixed;
    font-family: 'PT Sans Narrow', sans-serif;
    font-size: min(max(18px, 4vw), 22px);
}

body {
    width: 80%;
    margin: auto;
    height: 100%;
}

h1 {
    grid-area: header;
    color: white;
    max-height: 100px;
    justify-self: center;
    line-height: .7;
}

h2 {
    grid-area: subtext;
    font-weight: 400;
    color: white;
    justify-self: center;
    max-height: 100px;
    align-self:center
}

.main-container {
    padding-top: clamp(2vh, 5vh, 100px);
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: auto;
    grid-template-areas: "header" "subtext" "social-bar" "footer";
    justify-items: center;
    width: 100%;
    min-height: 60%;
    height: 100%;
}

.header-text {
	grid-area: header;
	display:flex;
	color:white;
	flex-flow:column;
	align-self:flex-end;
}
.header-text *{
	margin: 0;
}

.header-text p {
	font-size: .8rem;
}


#social-bar {
    display: flex;
    grid-area: social-bar;
    justify-content: space-around;
    height: 100px;
    width: 30%;
    margin: auto;
}

.social-icon {
    transition: all .2s ease-in-out;
    margin: 4px;
    display: inline-block;
    position: relative;
    z-index: 1;
}

.social-icon:hover {
    transform: scale(1.3);
    cursor: pointer;
}

.social-icon span {
    display: inline-block;
}

.social-icon object {
    position: relative;
    z-index: -1
}

footer {
    color: white;
    grid-area: footer;
    display: flex;
    flex-flow: column;
    text-align: center;
}
