/*
Theme Name: Faulkner University
Theme URI: https://liaisonedu.com
Author: Liaison International / Tom Bartling
Author URI: https://liaisonedu.com
Description: Faulkner University landing pages.
Requires at least: 6.4
Tested up to: 6.5
Requires PHP: 7.0
Version: 1.1
License:
License URI:
Text Domain: faulkner
Tags:
*/

/* -------------- DEFAULTS & GENERAL 	-------------- */
@font-face {
  font-family: "Feeling Passionate";
  src: url("fonts/FeelingPassionateRegular.otf") format('OpenType');
}


:root {
	--font-primary: "Fira Sans", Helvetica, Arial, sans-serif;
	--font-headings: "Fira Sans", Helvetica, Arial, sans-serif;
	--color-headings: #242323;

	--color-default_text: #6f6e6e;
	--color-faulkner_blue: #005DAA;
	--color-secondary_blue: #5b85cc;
	--color-darkest_blue: #1e3256;
	--color-green: #348e43;
	--color-gray_background: #e4e3e3;
	--color-gray_background_transparent: #fdfcfc;
	--color-gray_background_border: #e4e3e3;

	--color-footer_text: #a4a3a3;
	--color-footer_headings: #e4e3e3;
	--color-footer_background: #242323;

	/* gradient for hero image causes animation to jump instead of transition 
	--color-linear_gradient: linear-gradient(to left, #005DAA66 0%, #005DAA66 100%);
	*/


    /*      UPDATE THIS  */
    --btn-color-background: var(--color-faulkner_blue);
    --btn-color-text: #ffffff;

}


/*------- FONT:  FIRA SANS -----------*/
.fira-sans-thin {
  font-family: "Fira Sans", sans-serif;
  font-weight: 100;
  font-style: normal;
}

.fira-sans-extralight {
  font-family: "Fira Sans", sans-serif;
  font-weight: 200;
  font-style: normal;
}

.fira-sans-light {
  font-family: "Fira Sans", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.fira-sans-regular {
  font-family: "Fira Sans", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.fira-sans-medium {
  font-family: "Fira Sans", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.fira-sans-semibold {
  font-family: "Fira Sans", sans-serif;
  font-weight: 600;
  font-style: normal;
}

.fira-sans-bold {
  font-family: "Fira Sans", sans-serif;
  font-weight: 700;
  font-style: normal;
}

.fira-sans-extrabold {
  font-family: "Fira Sans", sans-serif;
  font-weight: 800;
  font-style: normal;
}

.fira-sans-black {
  font-family: "Fira Sans", sans-serif;
  font-weight: 900;
  font-style: normal;
}

.fira-sans-thin-italic {
  font-family: "Fira Sans", sans-serif;
  font-weight: 100;
  font-style: italic;
}

.fira-sans-extralight-italic {
  font-family: "Fira Sans", sans-serif;
  font-weight: 200;
  font-style: italic;
}

.fira-sans-light-italic {
  font-family: "Fira Sans", sans-serif;
  font-weight: 300;
  font-style: italic;
}

.fira-sans-regular-italic {
  font-family: "Fira Sans", sans-serif;
  font-weight: 400;
  font-style: italic;
}

.fira-sans-medium-italic {
  font-family: "Fira Sans", sans-serif;
  font-weight: 500;
  font-style: italic;
}

.fira-sans-semibold-italic {
  font-family: "Fira Sans", sans-serif;
  font-weight: 600;
  font-style: italic;
}

.fira-sans-bold-italic {
  font-family: "Fira Sans", sans-serif;
  font-weight: 700;
  font-style: italic;
}

.fira-sans-extrabold-italic {
  font-family: "Fira Sans", sans-serif;
  font-weight: 800;
  font-style: italic;
}

.fira-sans-black-italic {
  font-family: "Fira Sans", sans-serif;
  font-weight: 900;
  font-style: italic;
}




/* HTML element classes */

BODY:not(.wp-admin), HTML {
	width: 100%;
	color: var(--color-default_text);
	background-color: var(--color-gray_background_transparent);
	padding: 0;
	margin: 0;
	min-width: 390px;
	font-size: 16px;
	font-family: var(--font-primary);

	/*
	font-family: "Fira Sans", sans-serif;
	font-weight: 400;
	font-style: normal;
	*/
}

BODY:not(.wp-admin), 
HTML BODY:not(.wp-admin) {
	background-image: url(images/Ginhampattern.png);
	background-repeat: repeat;
	background-size: 30%;
}

BODY.wp-admin {
	background-color: #ffffff;
}

IMG, IFRAME {
	max-width: 100%;
}

FORM, INPUT, TEXTAREA, SELECT, OPTION {
	width: 100%; 
	max-width: 100%;
	line-height: 150%;
}


INPUT[type='submit'] {
	width: auto;
}

/* width: 80%; causes admin form to not display */
.wp-admin FORM {  
	width: initial;
}

/* used with js function goToForm() to scroll to 1st input... selector needs to match js */
INPUT[type='text'] {
	scroll-margin-top: 60px;
}

INPUT[type="radio"],
INPUT[type="checkbox"],
INPUT[type="submit"] {
	width: auto;
}

/* overwriting bootstrap */
	B, STRONG {
		font-weight: 700;;
	}

	/* not importing bootstrap typography just for this */
	.text-left {
		text-align: left;
	}
	.text-center {
		text-align: center;
	}
	.text-right {
		text-align: right;
	}


A,
A:link,
A:active,
A:visited,
A:hover {
	font-weight: 400;
	/* color: var(--color-primary); */
}

A.cta-btn, 
A.cta-btn:link, 
A.cta-btn:active, 
A.cta-btn:visited, 
A.cta-btn:hover, 
.cta-btn, 
INPUT[type="submit"],
BUTTON {
    /*
	background-color: var(--btn-color-background);
    color: var(--btn-color-text); 
    cursor: pointer;
	display: inline-block;
	padding: 0.5rem 1.0rem;
	font-size: 1.1rem;
	font-weight: 400;
	text-decoration: none;
	border: solid var(--btn-color-background) 1px;
	*/

	background-color: var(--btn-color-background);
    color: var(--btn-color-text); 

	display: inline-block;
    padding: 0.76543em 2em;
    margin-top: 2px;
    margin-bottom: 2px;
    line-height: 1.62;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 0.81rem;
    letter-spacing: 0.06333em;
    border: 2px solid currentColor;
    cursor: pointer;

	transition: background 0.3s, color 0.3s, border-color 0.3s;
	
}



INPUT[type="submit"]:hover,
A.cta-btn:hover, 
.cta-btn:hover, 
BUTTON:hover {
    color: var(--btn-color-background);
    background-color: var(--btn-color-text); 
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	font-weight: 700;
	color: var(--color-headings);
}

.h1, H1, .h2, H2, .h3, H3 {
	display: block;
	margin: 0 0 0.5rem 0;
	/* 
    text-transform: uppercase;
	letter-spacing: .8px;
	line-height: 1.1rem; 
	*/
	font-family: var(--font-headings);
	
	/*
	font-family: "Fira Sans", sans-serif;
	font-weight: 700;
	font-style: normal;
	*/

}

.h1, H1 {    font-size: 2.75rem;  }
.h2, H2 {    font-size: 2.0rem;  }
.h3, H3 {    font-size: 1.75rem;  }
.h4, H4 {    font-size: 1.50rem;  }

.hero-row H2 {
	font-size: 1.42rem;
	margin-bottom: 20px;
}

/* generic classes */
.bg-faulkner_blue { 
	background-color: var(--color-faulkner_blue); 
	color: #ffffff; 
}

.bg-secondary_blue { 
	background-color: var(--color-secondary_blue); 
	color: #ffffff; 
}

.bg-darkest_blue { 
	background-color: var(--color-darkest_blue); 
	color: #ffffff; 
}

.bg-green { 
	background-color: var(--color-green); 
	color: #ffffff;
}

.bg-gray_background { 
	background-color: var(--color-gray_background); 
	color: var(--color-default_text);
}

.bg-content_gray {
	background-color: var(--color-gray_background_transparent);
}

.bg-white {
	background-color: #ffffff;
	color: var(--color-default_text);
}



.container-fluid {
	border-bottom: solid var(--color-gray_background_border) 1px;
}



/* --------------------------------------------------------- */
/* --------- Header row    */
.header-row {
	color: #ffffff;
}

.header-left,
.header-center,
.header-right {
	padding: 6px 0;
}

.header-left {
	text-align: center;
}

.header-left IMG {
	/* max-width: 100px; */
	width: 100%;
}

.header-center {
	text-align: center;
	font-weight: 600;
	font-size: 1.0rem;
	letter-spacing: 4px;
}

.header-right {
	text-align: right;
	font-weight: 700;
	font-size: 1.0rem;
	letter-spacing: 1px;
}

.header-br {
	display: inline;
}

/* --------------------------------------------------------- */
/* --------- Hero row     */
/*
.hero-photo-container {
	height: 200px;
	
	background-image: url(images/screenshots-from-mp4/hero-1.png);
	background-position: 50% 50%;
	background-size: auto 175%;
	background-repeat: no-repeat;

	animation-name: background_zoom, background_zoom_photos;
	animation-duration: 30s;
	animation-iteration-count: infinite;	
}

@keyframes background_zoom {
  18% 	{ background-size: auto 225%; }
  36% 	{ background-size: auto 175%; }
  54% 	{ background-size: auto 225%; }
  72% 	{ background-size: auto 175%; }
  90% 	{ background-size: auto 225%; }
  100% 	{ background-size: auto 175%; }
}

@keyframes background_zoom_photos {
  0% 	{ background-image: url(images/screenshots-from-mp4/hero-1.png); }
  16% 	{ background-image: url(images/screenshots-from-mp4/hero-1.png); }

  18% 	{ background-image: url(images/screenshots-from-mp4/hero-2.png); }
  34% 	{ background-image: url(images/screenshots-from-mp4/hero-2.png); }

  36% 	{ background-image: url(images/screenshots-from-mp4/hero-3.png); }
  52% 	{ background-image: url(images/screenshots-from-mp4/hero-3.png); }

  54% 	{ background-image: url(images/screenshots-from-mp4/hero-4.png); }
  70% 	{ background-image: url(images/screenshots-from-mp4/hero-4.png); }

  72% 	{ background-image: url(images/screenshots-from-mp4/hero-5.png); }
  88% 	{ background-image: url(images/screenshots-from-mp4/hero-5.png); }

  90% 	{ background-image: url(images/screenshots-from-mp4/hero-6.png); }
  97% 	{ background-image: url(images/screenshots-from-mp4/hero-6.png); }
}

.hero-photo-container-filter {
	background-color: var(--color-faulkner_blue);
	background-color: #00000066;
	height: 100%;
	width: 100%;
	display: flex;
	align-items: end;
}

.hero-photo-container H1 {
	color: #ffffff;
	font-size: 3.0rem;
	font-family: "Feeling Passionate";
}
*/

.height-100percent {
	height: 100%;
}


.hero-column-photo-container {
	height: 300px;
	/*
	background-image: url(images/screenshots-from-mp4/hero-1.png); 
	*/
	background-image: url(images/hero-static-photo.jpg);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	display: flex;
	align-items: end;
	margin: 0 0 20px 0;
}

.hero-column-photo-container H1 {
	color: #ffffff;
	font-size: 3.0rem;
	font-family: "Feeling Passionate", sans-serif;
	margin: 20px;
	text-wrap: pretty;
}


.hero-column-photo-container-filter {
	background-color: #00000044;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: end;
}


.hero-column-photo-container-right IMG {
	max-width: 300px;
	display: block;
	margin: 20px auto;
}


/* --- Hero row - Thank You page     */
.hero-thank-you-row LI {
	margin-bottom: 1.4rem;
}

.hero-thank-you-row A, 
.hero-thank-you-row A:link, 
.hero-thank-you-row A:active, 
.hero-thank-you-row A:visited, 
.hero-thank-you-row A:hover {
	color: #ffffff;
	text-decoration: underline;
}

.hero-highlight {
	font-weight: 700;
	color: var(--color-headings);
}



/* --------------------------------------------------------- */
/* --------- Primary row     */
/*
.primary-row  {
	
}
*/

/* --------------------------------------------------------- */
/* --------- Fast Facts row     */
.fast-facts-row {
	font-size: 1.0rem;
	font-weight: 300;
	text-transform: uppercase;
	letter-spacing: .075em;
}

.fact-container {
	margin: 15px;
	color: #000000;
}

.fact-number {
	font-size: 3.0rem;
	color: var(--color-faulkner_blue);
}

.fact-text {
	font-size: 1.0rem;
}


/* --------------------------------------------------------- */
/* --------- Foundation row     */
.program-benefits-highlight {
	font-weight: 700;
	color: var(--color-headings);
}

.program-benefits-row LI {
	margin: 0.75rem 0;
}


/* testimonial */
/*
.testimonial-container {
    background-image: radial-gradient(circle at center,rgba(0, 0, 0, 0.4),rgba(0, 0, 0, 0.5)),
        radial-gradient(circle at center,rgba(0, 0, 0, 0.4),rgba(0, 0, 0, 0.5)
    );
    background-color: rgb(0, 0, 0, 0); 
    background-size: cover, cover;
    background-position: center center, top center;
    background-repeat: no-repeat, no-repeat;
    min-height: 600px;
    padding-bottom: 20px;
}

.testimonial-container-PERSON_NAME {
    background-image: radial-gradient(circle at center, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.5)), url(images/testimonials/PHOTO_FILENAME);
}
*/
.testimonial-quote {
	font-size: 1.3rem;
	padding: 2.0rem;
}
.testimonial-quote::before {
	content: '\201C';
}
.testimonial-quote::after {
	content: '\201D';
}

.testimonial-attribution {
	font-weight: 700;
	padding: 1.25rem;
}


/* --------------------------------------------------------- */
/* --------- Photo row     */
.photo-row {
	background-image: url(images/exterior-with-blue-banners-resized.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	height: 300px;
}



/* --------------------------------------------------------- */
/* --------- Footer row     */
.footer-row {
	/*
	background-color: var(--color-footer_background);
	background-image: linear-gradient(to left, #242323ee 10%, #242323ee 100%), url(images/footer-bg-photo.jpg);
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	backdrop-filter: brightness(150%);
	color: var(--color-footer_headings);
	*/

	color: #ffffff;
	min-height: 200px;

	background-color: var(--color-faulkner_blue);
}

.footer-container {
	/* 
	border: solid #ffffff33 2px;
	background-color: #00000066; 
	*/
	padding: 10px;
}

/*
.footer-container IMG {
	margin: -4px 3vw -4px -3vw;
}
*/

.footer-row H1,  
.footer-row H2,
.footer-row H3 {
	color: var(--color-footer_headings);
}

.footer-address {
	font-size: 0.8rem;
	line-height: 150%;
}


.footer-tagline {
	font-weight: 700;
}

.footer-row A,
.footer-row A:link,
.footer-row A:active,
.footer-row A:visited,
.footer-row A:hover {
	color: #FFFFFF;
	text-decoration: none;
}

.footer-left, 
.footer-right {
	text-align: center;
}




/* --- GRAVITY FORMS OVERRIDES ARE IN footer-scripts-row.php BECAUSE style.css CAN LOAD BEFORE GRAVITY FORMS ON SOME SITES --- */
.gfield {
	margin: 0 0 15px 0;
}

.gfield_required_text {
	margin: 0 0 0 10px;
	color: #ffffff;
	font-size: 0.8rem;
}

.ginput_container_checkbox LABEL {
	display: inline;
	margin: 0 0 0 6px;
	font-size: 0.9rem;
}

.gfield--type-honeypot,
.gfield_visibility_hidden {
	display: none;
} 

.gfield--type-hidden, 
.gfield--input-type-hidden, 
.gform_hidden, 
.gfield--type-honeypot {
	display: none;
}

.gform-body INPUT:not([type="checkbox"]), .gform-body SELECT {
	width: 100%;
	height: 2.0rem;
	padding: 0.2rem 0.2rem 0 0.2rem;
}

.gfield_visibility_hidden {
	display: none;
}

.ginput_container_checkbox LABEL {
	display: inline;
	margin: 0 0 0 6px;
	font-size: 0.8rem;
}

.gfield_label_before_complex {
	display: none;
}





/*--  Fix styles for WARNINGS for pages with a dark background */
.gform-theme--framework .gform_validation_errors, 
.gform-theme--framework .gform_validation_errors .gform-icon, 
.gform-theme--framework .gfield_validation_message,
.gform-theme--framework .gfield_description,
.gform-theme--framework .gform_validation_errors .gform_submission_error {
	background-color: #ffffff;
	padding: 4px 12px;
	border: solid #000000 1px;
	display: inline-block;
	margin-top: 0;
}

.gform-theme--framework .gform_validation_errors .gform-icon {
  padding: 0;
}


.gform-theme--framework .gform_validation_errors .gform_submission_error {
	display: flex;
}


.gform_fields {
	display: flex;
	flex-wrap: wrap;
	align-items: start;
}

.gform_fields .gfield {
	width: 100%;
	padding: 0 10px;
}






DIALOG {
    max-width: 90%;
    width: 600px;
    padding: 20px;
    border: 0;
}

::backdrop {
    background-color: #00000099;
}

.modal-header {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 20px;
}

.modal-close-x {
    cursor: pointer;
    font-family: Courier, "Courier New", sans-serif;
    padding: 2px 5px;
    background-color: #00000099;
    color: #ffffff;
    font-weight: 700;
}

#text-optin-policy-btn {
    cursor: pointer;
    color: var(--color-faulkner_blue);
    font-weight: 700;
	font-size: 0.9rem;
}


 



/* --------------------------------------------------------- */
/* --------- RESPONSIVE 				 */

@media screen and (min-width: 576px) {
	.header-left {
		text-align: left;
	}

	.header-right {
		text-align: right;
	}

	.footer-left {
		text-align: center;
	}
	
	.footer-right {
		text-align: right;
	}
	
	/*
	.hero-photo-container {
		height: 200px;
		background-size: auto 220%;
	}

	@keyframes background_zoom {
		18% 	{ background-size: auto 275%; }
		36% 	{ background-size: auto 220%; }
		54% 	{ background-size: auto 275%; }
		72% 	{ background-size: auto 220%; }
		90% 	{ background-size: auto 275%; }
		100% 	{ background-size: auto 220%; }
	}
	*/
	
	.hero-column-photo-container H1 {
		font-size: 3.5rem;
	}
}


@media screen and (min-width: 768px) {
	.header-center {
		font-size: 1.25rem;
	}
	.header-right {
		font-size: 1.0rem;
	}

	.fast-facts-row {
		font-size: 0.9rem;
	}
	
	/*
	.hero-photo-container {
		height: 250px;
		background-size: auto 275%;
	}

	@keyframes background_zoom {
		18% 	{ background-size: auto 300%; }
		36% 	{ background-size: auto 275%; }
		54% 	{ background-size: auto 300%; }
		72% 	{ background-size: auto 275%; }
		90% 	{ background-size: auto 300%; }
		100% 	{ background-size: auto 275%; }
	}
	*/

	.gform_fields .gfield {
		width: 50%;
		padding: 0 20px;
	}

}


@media screen and (min-width: 993px) {
}

@media screen and (min-width: 1200px) {
	.header-br {
		display: none;
	}
	
	/*
	.hero-photo-container {
		height: 350px;
		background-size: auto 350%;
	}

	@keyframes background_zoom {
		18% 	{ background-size: auto 400%; }
		36% 	{ background-size: auto 350%; }
		54% 	{ background-size: auto 400%; }
		72% 	{ background-size: auto 350%; }
		90% 	{ background-size: auto 400%; }
		100% 	{ background-size: auto 350%; }
	}
	*/

	.photo-row {
		height: 500px;
		background-position: center;
	}

}


@media screen and (min-width: 1400px) {

}

