/*
Author: Jedediah White
Author URI: https://jedediahwhite.com
Description: Start date: 27th of February, 2023
Version: 1.0
*/

/* Quick access */

$main: 'apolline', serif;
$headings: 'nunito-sans', sans-serif;

$darkblue: #224E70;
$lightblue: #27BBC8;
$white: #FFF8EE;
$silver: #c7c7c7;
$black: #1f1f17;

/* Resets ----------------------------- */

html {
	box-sizing:border-box;
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	margin:0 auto;
	padding:0;
	background: $white;
}

h1, h2, h3, h4, h5 {
	font-family: $headings;
	text-align:left;
	color: $darkblue;
}

h1 { font-size: 2em; } h2 { font-size: 1.5em; } h3 { font-size: 1.3em; } h4 { font-size: 1em; } h5 { font-size: .8em; }

ol,ul {
	list-style:none;
}

blockquote,q {
	quotes:none;
}

blockquote:before,blockquote:after,q:before,q:after {
	content:'';
	content:none;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
	display:block;
}

.clear {
	clear:both;
}

p {
	margin:20px 0;
}

/* Main Settings ---------------------- */

#wrapper {
	margin: 0 auto;
}

#header {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	align-content: stretch;
	padding:20px;
	background: $darkblue;
	box-shadow: 0 10px 10px rgba(000,000,000, 0.3);
	z-index:1;
	
	#logo {
		flex-basis: 10%;
		width:110px;
		height:auto;
		
		img {
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover !important;
			object-position: center center !important;
		}
	}
}

#hero {
	position:relative;
	background-color: $silver;
	background-image: url('https://source.unsplash.com/-oZsQY5I98A');
	background-size: cover !important;
	background-position:center center !important;
	height: 70vh;
	padding:20px;
	display: flex;
	align-items: center;
	justify-content: center;
	align-content: center;
	z-index:-1;
	
	&:before {
		content: '';
		background: rgba(000,000,000, 0.7);
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		bottom: 0;
		z-index: 0;
	}
	
	&:after {
		content: '';
		display:block;
		position:absolute;
		bottom:0;
		left:0;
		right:0;
		height:5px;
		background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAFCAYAAAB8ZH1oAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAACqADAAQAAAABAAAABQAAAAC5KC8kAAAALUlEQVQIHWNgIBIwIqv7/+Pdf2Q+I4cQXB7OQFcE0wBTDFaISxGyYkZCimCKAdahD+mLqHT6AAAAAElFTkSuQmCC)repeat-x;
	}
	
	.hero-content {
		position:relative;
		text-align: center;
		color: #fff;
		
		h1 {
			text-align:center;
			color: $white;
		}
		
		p {
			font-family: $main;
			font-size:24px;
			line-height:1.5em;
			width:80vw;
		}
	}
}

#content {
	display:block;
	padding:40px 20px;
	font-family: $main;
	font-size:21px;
	line-height:1.5em;
	color: $black;
	
	section {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: center;
		align-content: center;
		padding:30px 0;
		margin:100px 0;
		border-radius:8px;
		
		div {
			flex-basis: 50%;
			padding:0 30px;
			
			&.central {
				display: flex;
				flex-direction: row;
				flex-wrap: nowrap;
				justify-content: center;
				align-items: center;
				align-content: center;
				
				img {
					display: block;
					width:100%;
					max-width: 90vw;
					height: 90%;
					object-fit: cover !important;
					object-position: center center !important;
					border-radius: 8px;
					border:solid 10px #fff;
					background: #fff;
					-webkit-user-drag: none;
				}
			}
			
			h2 {
				margin-top:0;
			}
		}
		
		&.odd {
			background: #e4e4e4;
		}
	}
}

#finalHeading {
	display:block;
	text-align:center;
	margin:0 0 60px 0;
}

#footer {
	display:block;
	position:relative;
	padding:60px 20px;
	background: $silver;
	
	&:before {
		content: '';
		display:block;
		position:absolute;
		top:-5px;
		left:0;
		right:0;
		height:5px;
		background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAFCAYAAAB8ZH1oAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAACqADAAQAAAABAAAABQAAAAC5KC8kAAAALUlEQVQIHWNgIBIwIqs7fvz4f2S+paUlXB7OQFcE0wBTDFaISxGyYkZCimCKAZggD1lng06EAAAAAElFTkSuQmCC')repeat-x;
	}
	
	#copyright {
		font-family: $main;
		font-size:17px;
		text-align:center;
		color:#555;
		line-height:1.5em;
	}
}

/* Nav Settings ----------------------- */

nav#main {
	flex-basis: 90%;
}

nav#main ul {
	text-align:right;
}

nav#main ul > li {
	display:inline-block;
	margin:0 10px;
}

nav#main ul > li a {
	font-family: $headings;
	font-size: 18px;
	color: $white;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	text-decoration: none;
}

/* Page Specific Settings ------------- */

/* Form settings ---------------------- */

label {
	font-family: $headings;
	display:block;
	
	&:nth-of-type(2), &:nth-of-type(3) {
		margin-top:10px;
	}
}

input[type="text"], input[type="email"], input[type="password"], input[type="tel"], textarea {
	display:block;
	padding:4px 8px;
	background-color: #fff;
	border:1px solid #d0cecf;
	font-family: $main;
	font-size:17px;
	line-height:normal;
	color:#111;
	outline:none;  
	border-radius:8px;
	width:90%;
	box-shadow:none;
}

textarea {
	height:90px;
	resize:none;
}

button[type="submit"] {
	margin-top:10px;
	padding:8px 15px;
	background:#454545;
	font-family: $main;
	font-size:17px;
	color:#fff;
	outline:none;
	border:none;
	border-radius:8px;
	box-shadow:none;
}

/* Image Settings --------------------- */

.gallery-caption {
}

.alignright {
}

.alignleft {
}

.aligncenter {
}

/* Miscellaneous Settings ------------- */

.genBtn {
	display:table;
	margin:20px 0;
	padding:10px 25px 10px 20px;
	background: $lightblue;
	font-weight:900;
	color: $black;
	text-decoration:none;
	border-radius: 8px 0 0 8px;
	clip-path: polygon(95% 0, 100% 50%, 95% 100%, 0 100%, 0 0);
	transition: all 0.2s ease;
	
	&:hover {
		padding:10px 35px 10px 20px;
	}
}

.rotateLeft {
	transform: rotate(-0.8deg);
	box-shadow: 10px 10px 0 rgba(000,000,000, 0.1);
}

.rotateRight {
	transform: rotate(0.8deg);
	box-shadow: 10px 10px 0 rgba(000,000,000, 0.1);
}

.profile {
	width: 45vh !important;
	height:100% !important;
	border-radius: 100% !important;
}

.fade-in {
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}

/* Smartphones (portrait) ----------- */
@media only screen 
  and (min-device-width: 320px) 
  and (orientation: portrait)
  and (-webkit-min-device-pixel-ratio: 2),
only screen 
  and (min-device-width: 375px) 
  and (orientation: portrait)
  and (-webkit-min-device-pixel-ratio: 2),
only screen 
  and (min-device-width: 414px) 
  and (orientation: portrait)
  and (-webkit-min-device-pixel-ratio: 3) {
	  
	#logo {
		flex-basis:20% !important;
	}
	
	nav#main {
		flex-basis: 80% !important;
	}
	
	section {
		flex-direction:column !important;
		
		div {
			padding:30px 20px !important;
			flex-basis:100% !important;
		}
	}
	
	input[type="text"], input[type="email"], input[type="password"], input[type="tel"], textarea {
		width:75vw !important;
	}
} /* End of file */