@charset "UTF-8";
/* CSS Document */

a:focus {
	outline:none;
	}

html {
  scroll-behavior: smooth;
}	

/*divs*/
body {
	font-family: Open Sans, sans-serif;
	font-size: 62.5%;
	/*background: -webkit-linear-gradient(rgba(0,0,0,0.025), rgba(0,0,0,0.1), rgba(0,0,0,0.025) ), url(images/dkbg4.gif);*/
	
	/*background: -webkit-linear-gradient(rgba(255,255,255,0.1), rgba(255,255,255,0.5) 15%, rgba(255,255,255,0.05) 100%), url(images/dkbg4.gif);*/
	
	background: -webkit-radial-gradient(rgba(255,255,255,0.6) 150px, rgba(255,255,255,0) 100%), url(images/dkbg4.gif);
	background-repeat:repeat;
	padding:0;
	margin:0;
	}
	
body {
	margin: 0; padding: 0; border: 0;
}

#container {
	width: 100%;
	position: relative;
}

#content {
	margin:auto;
	padding:5em 4em 0 4em;
	max-width:1300px;
	}

.about-flex-container {
  display: flex; /* Activates flexbox for the container */
	width: 100%; /* Ensures the container uses the full width of its parent */
	align-items: center;
	gap: 4em;
	margin-bottom: 6em;
}

.about-column-left {
	flex: 1 1 calc(80% - 2em);
	text-align:left;
}

.about-column-right {
	flex: 1 1 calc(20% - 2em);
}

/* tablet breakpoint */
@media only screen and (max-width:600px) {
	.about-flex-container {
		flex-direction: column;
		justify-content: space-around;
	}
/*
	.about-column-left, .about-column-right {
		width: auto;
	}
*/
	.about-column-left {
		text-align: center;
	}
	.about-column-right {
    	margin: 0 10em;
	}
/*
	.self-portrait {
		display: flex;
		flex: 1 1 50%;
		justify-content: space-around;
	}
*/
	.full-width-breakpoint {
		display: none;
		line-height: 0;
	}
	.intro-heading {
		margin-top: 0;
	}
}

.intro-paragraph {
	font-size: 1.5em;
	line-height: 1.5em;
}

.self-portrait {
	width:100%;
/*
	-moz-border-radius: 2em;
	-webkit-border-radius: 2em;
	border-radius: 2em;
*/
}

/*HEADER HEADER HEADER*/

.header {
	display: flex;             /* 1. Enable flexbox for the header */
    justify-content: space-between; /* 2. Push children to the edges */
/*    position: fixed;*/
	align-items: center;       /* 3. Vertically center items */
	height:50px;
/*	width: 100%;*/
	padding: 10px 20px;
	background-color: rgba(255,255,255,0.5);
	border-bottom: 1px solid #0198fe;
	-moz-box-shadow: 0px 0px 10px #999;
	-webkit-box-shadow: 0px 0px 10px #999;
	box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.25);
	z-index: 100;
	transition: 0.4s; /* Add a transition effect (when scrolling - and font size is decreased) */
	}

/* Optional: Style the navigation list to remove default bullets and padding */
.main-nav ul {
    list-style: none;
    padding: 0;
    /*margin: 0 5px;*/
    display: flex; /* Make list items also flex items for horizontal alignment */
    gap: 30px; /* Space between links */
}

.header img {
	width: 200px;
}

#hamburger-icon {
	margin: auto 0;
	display: none;
	cursor: pointer;
}

#hamburger-icon div {
	width: 35px;
	height: 3px;
	background-color: #3366CC;
	margin:6px 0;
	transition: 0.4s;
}

.open .bar1 {
	-webkit-transform: rotate(-45deg) translate(-6px, 6px);
	transform: rotate(-45deg) translate(-6px, 6px);
}

.open .bar2 {
	opacity:0;
}

.open .bar3 {
	-webkit-transform: rotate(45deg) translate(-6px, -8px);
	transform: rotate(45deg) translate(-6px, -8px);
}

.open .mobile-menu {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
}

.mobile-menu {
	display: none;
	position: absolute;
	top: 61px;
	left: 0;
	height: calc(100vh - 50px);
	width: 100%;
	background-color: #f9f9f9;
	padding: 15px 0 0 0;
	z-index: 300;
	list-style: none;
	line-height: 2;
}

@media only screen and (max-width:600px) {
	header nav {
		display: none;
	}
	
	#hamburger-icon {
		display: block;
	}
}
	

/*END header*/


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

.work-section {
	margin-bottom: 6em;
}

.work-subsection {
	margin-top: 2em;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: flex-start;
	gap: 3em;
}

h2 + .work-subsection {
	margin-top: 4em;
}

@media (min-width: 601px) {
	.work-subsection + .work-subsection {
		margin-top: 3em;
	}
}

p + .work-subsection {
	margin-top: 3em;
}

.work-image-one-qtr img, .work-image-one-third img, .work-image-one-half img, .work-image-30pct img, .work-image-40pct img, .work-image-two-thirds img {
	background-color: #fff;
	padding: .75em;
	border-radius: .6em;
	-moz-box-shadow: 0px 0px .5em rgba(0, 0, 0, 0.1);
	-webkit-box-shadow: 0px 0px .5em rgba(0, 0, 0, 0.1);
	box-shadow: 0px 0px .5em rgba(0, 0, 0, 0.1);
	width: calc(100% - 1.5em);
  height: auto;
  display: block;
}

.work-image-one-qtr {
	flex: 1 1 calc(25% - 2em);
	box-sizing: border-box; /* Ensures padding/borders don't break 33% */
  overflow: visible;
}

.work-image-one-third {
	flex: 1 1 calc(33.33% - 2em);
	box-sizing: border-box; /* Ensures padding/borders don't break 33% */
  overflow: visible;
}

.work-image-30pct {
	flex: 1 1 calc(28% - 2em);
	box-sizing: border-box; /* Ensures padding/borders don't break 33% */
  overflow: visible;
}

.work-image-40pct {
	flex: 1 1 calc(44% - 2em);
	box-sizing: border-box; /* Ensures padding/borders don't break 33% */
  overflow: visible;
}

.work-image-one-half {
	flex: 1 1 calc(50% - 2em);
	box-sizing: border-box; /* Ensures padding/borders don't break 50% */
  overflow: visible;
}

.work-image-two-thirds {
	flex: 1 1 calc(66.67% - 2em);
	box-sizing: border-box; /* Ensures padding/borders don't break 50% */
  overflow: visible;
}

.work-image-one-third-vertical {
	display: flex;
	flex-direction: column;
	gap: 1.5em;
	flex: 1 1 calc(33.33% - 2em);
	box-sizing: border-box; /* Ensures padding/borders don't break 33% */
  overflow: visible;
}

.work-image-one-third-vertical img {
	background-color: #fff;
	padding: .75em;
	text-align: center;
	border-radius: .6em;
	width: calc(100% - 1.5em);
  height: auto;
  display: block;
	-moz-box-shadow: 0px 0px .5em rgba(0, 0, 0, 0.1);
	-webkit-box-shadow: 0px 0px .5em rgba(0, 0, 0, 0.1);
	box-shadow: 0px 0px .5em rgba(0, 0, 0, 0.1);
}

.spacer {
	margin: 5em 0 0 0;
	border-top: 1px solid #666;
}

h2 + .spacer {
	margin-top: 4em;
}

.spacer h3 {
	line-height: 1.25;
	display: inline;
}

/* Mobile: 75% width */
@media (max-width: 600px) {
  .work-image-one-qtr, .work-image-one-third, .work-image-one-half, .work-image-30pct, .work-image-40pct, .work-image-two-thirds, .work-image-one-third-vertical {
    flex: 1 1 75%; /* Shrink to 75% width on mobile */
    margin: 0 2em; /* Center the item if it's not full width */
  }
	.work-image-one-qtr:first-child, .work-image-one-third:first-child, .work-image-one-half:first-child, .work-image-30pct:first-child, .work-image-40pct:first-child, .work-image-two-thirds:first-child {
		margin-top: 1em;
	}
	.work-image-one-third-vertical img {
		margin-top: 1.5em; /* Center the item if it's not full width */
	}
	.work-image-one-third-vertical img:first-child {
		margin-top: 0;
	}
}

/*text*/

a {
	text-decoration:none;
	}
	
h1, h2, h3 {color:#3366cc;}

h1, h2 {
	font-family: "proxima-nova", sans-serif;
	font-weight: 800;
	font-style: normal;
}

h1 {
	font-size: 6em;
	line-height: .9;
	margin-top: 20px;
	margin-bottom: 30px;
}

h2 {
	font-size: 3em;
	line-height: 1em;
}

h3 {
	font-size: 2em;
	color: #666;
	font-family: "proxima-nova", sans-serif;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .1em;
	font-style: normal;
}

.work-image-one-qtr p, .work-image-one-third p, .work-image-one-half p, .work-image-30pct p, .work-image-40pct p, .work-image-two-thirds p {
/*	border-top: 1px solid #0198fe;*/
	text-align: center;
	padding: 1em 0 0 0;
}

.work-image-one-third-vertical p {
	text-align: center;
}

p, li {
font-size: 1.5em;
line-height: 1.5em;
margin:0px;
color:#666;
}

p + p {
	margin-top: 1.25em;
}
	
p a{
	color:#3366CC;
	text-decoration:none;
	font-style: italic;
	font-weight: 600;
	margin-left: 3px;
	}

ul a {
	font-family: "proxima-nova", sans-serif;
	color:#3366CC;
	text-decoration:none;
	font-weight: 700;
	}
	
ul a:hover {
/*	font-style:italic;
*/	color:#000066;
	}
	
p a:hover {
/*	font-style:italic;
*/	color:#3366CC;
	text-decoration:underline;
	}
	
/*end text css*/

/* Video player */

.video-container {
    position: relative;
	background-color: #fff;
    margin: 0 auto;
	padding: .75em;
	border-radius: .6em;
	-moz-box-shadow: 0px 0px .5em rgba(0, 0, 0, 0.1);
	-webkit-box-shadow: 0px 0px .5em rgba(0, 0, 0, 0.1);
	box-shadow: 0px 0px .5em rgba(0, 0, 0, 0.1);
}

.video-container img {
	box-shadow: none;
	padding: 0;
	border-radius: 0;
	border: 0;
}

#video-thumbnail1, #video-thumbnail2, #video-thumbnail3, #video-thumbnail4 {
    position: absolute;
    object-fit: cover;
    cursor: pointer;
}

#video1, #video2, #video3, #video4 {
    width: 100%;
    height: 100%;
}

.controls {
    position: absolute;
    bottom: 0px;
    left: 0;
    right: 0;
    height: 40px;
    background-color: rgba(0,0,0,0.7);
	border-radius: 0 0 .6em .6em;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}

.controls button {
    background-color: transparent;
    border: none;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    outline: none;
}

.left {
    position: relative;
    top: 1%;
    width: 70px;
    display: flex;
    justify-content: space-between;
}

.video-timer {
    position: relative;
    top: 5.2px;
    right: 6px;
    display: flex;
    flex-direction: row;
    color: #efefef;
    margin-left: 15px;
    font-size: 12px;
}

#separator1, #separator2, #separator3, #separator4 {
    margin: 0 5px;
    font-size: 16px;
    font-family: "Open sans";
}

.right {
    position: relative;
    padding: 10px;
    top: 1.5px;
}

.fa-volume-up,
.fa-solid {
    font-size: small;
    padding: 5px;
    color: rgb(255, 255, 255);
}

button,
input {
    background-color: transparent;
    border: none;
    cursor: pointer;
    font-size: 20px;
}

.volume-container {
    display: flex;
    align-items: center;
}

#volume1, #volume2, #volume3, #volume4 {
    position: relative;
    left: 5px;
    width: 50px;
    height: 3px;
}

#mute1, #mute2, #mute3, #mute4 {
    cursor: pointer;
}

.playback-line {
    position: relative;
    top: 2.7px;
    height: 4px;
    background-color: #ddd;
    width: 40%;
    cursor: pointer;
}

.progress-bar {
    height: 100%;
    width: 0;
    background-color: #3366CC;
    transition: width 0.1s linear;
}


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

/*footer*/

#footer {
	width:100%;
	display: flex;
	align-items: center;
	justify-content: center;   /* Horizontal centering*/
	padding: 2em 0;
	background-color: rgba(255,255,255,0.25);
	border-top: 1px solid #0198fe;
	-moz-box-shadow: 0px 0px 10px #999;
	-webkit-box-shadow: 0px 0px 10px #999;
	box-shadow: 0px 0px 10px #999;
	}

#footer ul {
    list-style: none;
    display: flex; /* Make list items also flex items for horizontal alignment */
    margin: 0;
    gap: 20px; /* Space between links */
}

#footer a {
	color:#666;
	font-style:normal;
	font-weight:normal;
	text-decoration:underline;
	}
