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

/* -------------- DEFAULTS & GENERAL 	-------------- */
:root {
	--font-primary: "Mukta Mahee", sans-serif;
	--font-headings: "Lora","Helvetica Neue",Helvetica,Roboto,Arial,sans-serif;

	--color-default_text: #383838;;
	--color-white:      #FFFFFF;
	--color-1: 			#213469;
	--color-2: 			#75bb43;
	--color-2-d:		#7cb342;
	--color-green-d:	#3e5f25;
	--color-blue-d:		#162344;
	--color-text:		#383838;
	--color-bg-l: 		#f5f5f5;
	--color-bg-d: 		#213469;
	--color-bg-xd:		#1a2744;

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

    --hero-gradient: linear-gradient(90deg, #213469, #162344);
}

/* HTML element classes */

BODY, HTML {
	width: 100%;
	font-size: clamp(1rem, 2vw, 1.1rem);
	font-family: var(--font-primary);
	font-weight: 300;
	color: #000000;
	padding: 0;
	margin: 0;
}

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

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

INPUT:not([type='submit']), SELECT, OPTION {
	height: 3.0rem;
}

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

@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1340px;
    }
}

/* 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;
}
  


@media screen and (min-width: 768px) {
	.text-p-r {
		padding-right: 10%;
	}
}

/* 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: 700;
	/* 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: 1rem 1.0rem;
	font-size: 1.1rem;
	font-weight: 700;
	text-decoration: none;
	border: solid var(--btn-color-background) 1px;
	transition: all .3s ease-in-out;
	text-transform: uppercase;

	/* transition: color, 0.25s ease-out, border-color 0.2s ease-out; */
}



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

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	font-weight: 400;
	color: var(--color-1);
	
	display: block;
	font-family: var(--font-headings);
	font-size: 2.75rem;
	/* 
    text-transform: uppercase;
	letter-spacing: .8px;
	line-height: 1.1rem; 
	*/
	margin: 0 0 0.75rem 0;
}

.h1, H1 {
	font-size: clamp(2rem, 4vw, 2.45rem);
}
.h2, H2 {
	font-size: clamp(1.5rem, 3.2vw, 1.6rem);
}
.h3, H3 {
	font-size: clamp(1.3rem, 2.7vw, 1.45rem);
}
.h4, H4 {
	font-size: clamp(1.1rem, 2vw, 1.3rem);
}


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

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

.copy-highlight {
	font-weight: 700;
	color: var(--color-maroon);
}

.next-step-highlight {
	font-weight: 700;
	font-size: 1.2rem;
}

/*
.hero-intro-photo IMG,
.program-benefits-row IMG,
.foundation-row IMG {
	border-radius: 8px;
}
*/


/* --------------------------------------------------------- */
/* --------- Header row    */


.header-row {
	color: #ffffff;
	background-color: transparent;
	background-image: var(--hero-gradient);
}

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

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

.header-left IMG {
	width: 480px;
	max-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-row, 
.hero-row-brand {
	background-image: url(ADD_URL_HERE);
	background-size: cover;
	background-position: top left;	
}
*/

.hero-row {
	color: #fff;
}

.hero-row-container {
	min-height: 250px;
	line-height: 1.0;
	color: #fff;
}

.hero-title,
.hero-subtitle {
	color: #ffffff;
	font-size: 4.0rem;
	font-weight: 700;
}

.hero-title {
	text-transform: uppercase;
}

.hero-subtitle {
	margin: 0 0 20px 0;
	display: block;
}

.hero-stem-row .hero-title {
	font-size: 2.5rem;
}

.hero-psychology-row .hero-title {
	font-size: 2.6rem;
}

.hero-communications-row .hero-title {
	font-size: 2.30rem;
}

.hero-health-row .hero-title {
	font-size: 2.5rem;
}

.hero-background-row-thank-you .hero-title {
	font-size: 2.0rem;
	margin-top: 20px;
}


.hero-thank-you-row-desktop,
.hero-brand-row {
	background: url(images/hero-brand.jpg) center top/cover var(--color-blue-d);
}

.hero-row-mapp {
	background: url(images/bg-mapp.jpg) center top/cover var(--color-blue-d);
}
.hero-row-international {
	background: url(images/bg-international.jpg) center top/cover var(--color-blue-d);
}
.hero-row-thank-you {
	background: url(images/bg-thank-you.jpg) center top/cover var(--color-blue-d);
}


.hero-intro-photo {
	padding: 20px 0;
}

.hero-intro-photo IMG {
	max-width: 85%;
	margin: 0 auto;
	display: block;
}

/*--- Hero section redo ---*/
.hero-photo-container {
	background-size: cover, cover;
	background-position: top center,top center;
	padding: 10px;
	margin-bottom: 20px;

    text-shadow: 1px 2px 1px #000000;
	min-height: 250px;
	line-height: 1.0;
}


/* --- Hero row - NEW STYLE --- */
.hero_copy_container {
	margin: 0 0 25px 0;
}

.hero-title {
	line-height: 100%;
}

.hero-subtitle {
	margin: 0 0 20px 0;
}

.hero-background-row-thank-you,
.hero-background-row-health,
.hero-background-row-communications,
.hero-background-row-psychology,
.hero-background-row-stem,
.hero-background-row-brand {
	background-color: var(--color-1);
	background-size: auto;
	color: #ffffff;
}


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

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

.hero-image {
    height: 300px;
    background-size: cover;
    background-position: center;
}
.hero-image-brand {
    background-image: url("/wp-content/themes/wausm-2026-theme/images/wausm-home-hero.webp");
}
.hero-image-mapp {
    background-image: url("/wp-content/themes/wausm-2026-theme/images/wausm-mapp-hero.webp");
}
.hero-image-international {
    background-image: url("/wp-content/themes/wausm-2026-theme/images/wausm-international-hero.webp");
}
@media screen and (max-width: 1200px) {
    .hero-image {
        height: 24vw;
    }
}


/* --------------------------------------------------------- */
/* --------- MOBILE FORM     */
.form_container_outer {
	/*
	background-color: transparent;
	position: fixed;
	top: calc(100vh - 5lh);
	bottom: -10px;
	left: 5%;
	right: 5%;
	width: 90%;
	
	filter: 
		drop-shadow(0 30px 4px #ffffff99) 
		drop-shadow(0 -30px 4px #ffffff99) 
		drop-shadow(-30px 0 4px #ffffff99) 
		drop-shadow(30px 0 4px #ffffff99) 
		;
	*/
}	


#form_container {
	background-color: var(--color-bg-xd);
	border: 1px solid var(--color-2);
	padding: 1.5rem 1.5rem 1.5rem 1.0rem;
}

#form_container H1 {
	color: #fff;
}

#form_container H2 {
	margin: 0 0 10px 0;
	font-size: 1.5rem;
	color: var(--color-2);
}

.chevron-up {
	transform: rotate(0.5turn);
}

#form_container h2.gform_submission_error {
	font-size: clamp(1rem, 2vw, 1.1rem) !important;
    font-family: var(--font-primary) !important;
    font-weight: 300 !important;
}

#form_container .gform-footer {
	position: relative;
}

.gform_wrapper .gform-loader,
.gform_wrapper .gform_ajax_spinner {
	position: absolute;
    right: 20px;
    top: calc(50% - 13px);
    border: 3px solid rgba(0, 0, 0, 0.1);
    border-left-color: #21356a; /* Change to your brand color */
    animation: gf-spin 1s infinite linear;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: inline-block;
}

@keyframes gf-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}



/* --------------------------------------------------------- */
/* --------- Hero row     */
.cta {
	background: url(images/bg-clinical-partner.jpg) center/cover var(--color-blue-d);
	text-align: center;
}
.cta h2 {
	font-weight: 700;
	color: #383838;
}
.cta-container {
	text-align: center;
	padding: 14vh 0;
    gap: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 23px;
}


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

/* --------------------------------------------------------- */
/* --------- Fast Facts row     */
.fast-facts-row {
	font-size: 1.0rem;
}

.icon-text-container, 
.icon IMG {
	max-width: 90%;
	margin: 0 auto 0 auto;
	height: 110px;
}

.icon-text {
	font-size: 4.0rem;
	line-height: 120%;
	padding: 0;
}


.fact-container {
	/* margin: 15px; */
	padding: 15px;
	height: 100%;
	color: #000000;
	background-color: #ffffff;
	border-radius: 24px;
	padding: 1.0rem;
}

.fact-number {
	font-size: 2.50rem;
	font-weight: 700;
}

.fact-text {
	font-size: 1.1rem;
	margin: 10px;
}


/* --------------------------------------------------------- */
/* --------- Foundation row     */
.foundation-row {
	font-weight: 400;
}

.foundation-row H2 {
	font-size: 1.95rem;
}


/* 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(URL_GOES_HERE);
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: cover;
}
*/

.photo-row IMG {
	max-width: 100%;
	width: 100%;
}



/* --------------------------------------------------------- */
/* --------- Next Step row     */
.next-step-row {
	background-color: #540023;
	background-image: url(images/bg-mc-tiled.png);
	background-size: 60% auto;
	color: #ffffff;
}


.next-step-row H2,
.next-step-row H3,
.next-step-row H4 {
	color: #ffffff;
	margin: 10px 0 20px 0;
}

.next-step-thank-you-row {
	font-size: 1.2rem;
}

/* --------------------------------------------------------- */
/* --------- Footer row     */
.footer-row {
	padding: 10px 0;
	min-height: 200px;
	    background-color: transparent;
    background-image: var(--hero-gradient);
	color: #ffffff;
}

.footer-address {
	font-size: 0.9rem;
	font-weight: 300;
	line-height: 150%;
}

.footer-row .logo {
	max-width: 300px;
}

@media screen and (max-width: 767px) {
	.footer-address,
	.footer-logo-container {
		text-align: center !important;
	}
}

.footer-logo {
	max-width: 300px;
	width: 100%;
}

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

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

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

.best-colleges-primary, 
.best-colleges-secondary, 
.best-colleges-tertiary {
	text-transform: uppercase;
	color: #ffffff;
	line-height: 1em;
	font-size: 2.6rem;
}

.best-colleges-primary,
.best-colleges-secondary {
	text-rendering: optimizelegibility;
	font-style: normal;
}

.best-colleges-secondary {
	color: var(--color-1);
}

.best-colleges-tertiary {
	font-size: 1.4rem;
	text-size-adjust: 100%;
	display: inline-block;
	width: fit-content();
	text-align: left;
	line-height: 2.75rem;
}


/* --- 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;
}

body .gfield_validation_message {
	background: #ff5261;
	color: #fff !important;
}

.gfield_required_text {
	margin: 0 0 0 10px;
	/* color: #ffffff; */
	color: var(--color-1);
	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;
} 


/* hiding the street address main label */
.gfield_label_before_complex {
	display: none;
}

.ginput_address_line_1,
.ginput_address_city,
.ginput_address_state,
.ginput_zip_code {
	display: block;
	margin-bottom: 15px;
}

/*--  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 {
	padding: 4px 12px 4px 0;
	border: 0;
	color: var(--color-1);
	display: inline-block;
	margin-top: 0;
}

.gform_required_legend,
.gfield_required_asterisk {
	color: var(--color-1);
}

.gfield_required_asterisk::after,
.gfield_required_asterisk::before {
	content: " ";
}

.gform-focus-validation-error[data-js="gform-focus-validation-error"] {
	border: none;
}

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


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


:modal,
.text-optin-policy-modal {
	width: 600px;
	max-width: 90%;
	display: inline-block;
}

.modal-header {
	border-bottom: solid #cccccc 1px;
	padding-bottom: 4px;
	margin-bottom: 10px;
}

dialog:-internal-dialog-in-top-layer::backdrop,
dialog::backdrop {
  background-color: #00000066;
}

.modal-close-x {
	padding: 3px 6px;
	border: solid #bbbbbb 1px;
	text-transform: lowercase;
}

.gform_required_legend {
	display: none;
}

@media screen and (min-width: 768px) {
	.gform_fields {
	    display: flex;
	    flex-wrap: wrap;
	    justify-content: space-between;
	}
	.gfield {
		width: 100%;
	}
	.gfield--width-half {
		width: 49%;
	}
	.gform-footer INPUT[type="submit"] {
		width: 100%;
	}
}



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

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

	.header-right {
		text-align: right;
	}
	
	.form_container_outer {
		/* width: 94vh; */
	}


}


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

	.hero-title {
		font-size: 2.75rem;
	}
	.hero-subtitle {
		font-size: 1.75rem;
	}

	.hero-stem-row .hero-title {
		font-size: 2.50rem;
	}

	.hero-psychology-row .hero-title {
		font-size: 2.4rem;
	}


	.hero-background-row-thank-you,
	.hero-background-row-health,
	.hero-background-row-communications,
	.hero-background-row-psychology,
	.hero-background-row-stem,
	.hero-background-row-brand {
		background-size: cover, cover;
		background-repeat: no-repeat no-repeat;
		background-position-y: bottom, bottom;
		background-position-x: center, left;
	}

	.hero-background-row-thank-you {
		background-position-y: top, top;
		background-position-x: center, center;
	}

	.hero-background-row-brand {
		background: url(images/hero-brand.jpg) center/cover var(--color-blue-d);
	}

	.hero-background-row-stem {
		background-image: var(--hero-gradient), url(images/hero-stem-v3.jpg);
		background-position-y: top, top;
		background-position-x: center, 70%;
	}

	.hero-background-row-psychology {
		background-image: var(--hero-gradient), url(images/hero-psychology-v2.jpg);
		background-position-y: top, top;
		background-position-x: center, 75%;
	}

	.hero-background-row-communications {
		background-image: var(--hero-gradient), url(images/hero-communications-v3.jpg);
		background-position-x: center, center;
	}

	.hero-background-row-health {
		background-image: var(--hero-gradient), url(images/hero-health-v2.jpg);
		background-position-y: top, top;
		background-position-x: center, right;
	}

	.form_container_outer {
		bottom: initial;
		position: initial;
		top: initial;
		width: initial;
		filter: none;
	}

	#form_chevron {
		display: none;
	}

	.fast-facts-row {
		font-size: 0.9rem;
	}

	.icon {
		max-width: 100%;
	}


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

	.footer-row .logo {
   		max-width: 300px;
	}
	
}


@media screen and (min-width: 993px) {
	.hero-row-container {
		min-height: 400px;
	}

	.hero-communications-row .hero-title {
		font-size: 3.5rem;
	}

	.hero-stem-row .hero-title {
		font-size: 2.75rem;
	}

	.hero-health-row .hero-title {
		font-size: 2.75rem;
	}


	.hero-background-row-brand {
		background-position-x: center, 20%;
	}
	
	.hero-background-row-psychology {
		background-position-x: center, 65%;
	}


}

@media screen and (min-width: 1200px) {
	.header-br {
		display: none;
	}

	.hero-background-row-brand {
		background-position-x: center, left;
	}
}


@media screen and (min-width: 1400px) {
	.hero-health-row .hero-title {
		font-size: 3.0rem;
	}
}



.bg-dark {
    background-color: var(--color-blue-d) !important;
}
.text-green {
    color: var(--color-2);
}

.callout-cols {
    display: flex;
    color: #fff;
    border-top: 1px solid var(--color-2);
    border-bottom: 1px solid var(--color-2);
    flex-wrap: wrap;
    margin: 0;
}
.callout-col {
    padding: 20px;
    display: flex;
    gap: 2rem;
}
.callout-col:not(:last-of-type) {
    padding-left: 0;
    border-right: 1px solid var(--color-2);
}
.callout-col:first-of-type {
    padding-left: 0;
}
.callout-col-cont {
	display: flex;
	flex-direction: column;
}
@media screen and (min-width: 768px) {
    .callout-cols {
        margin-top: 2rem;
    }
    .callout-cols--2 .callout-col {
        width: 50%;
        padding: 30px;
    }
    .callout-col:first-of-type {
        padding-left: 0;
    }
    .callout-col:not(:last-of-type) {
        padding-left: 0;
        border-right: 1px solid var(--color-2);
    }
}

.text-sm {
    font-size: 13px;
    font-size: clamp(.7rem, 1.4vw + 1rem, .8rem); 
    margin-bottom: .2rem;
}
.text-lg {
    font-size: clamp(1.4rem, 2vw + 1rem, 1.8rem); 
    font-family: var(--font-headings);
    margin-bottom: .2rem;
    line-height: 1;
}

#form_container {
    background: var(--color-1);
    border: 0;
}
@media screen and (min-width: 768px) {
    #form_container {
        padding: 2rem;
    }
}
#form_container H2 {
    font-size: clamp(1.5rem, 1.5vw + 1rem, 2.2rem); 
    color: #fff;
    text-align: center;
    border-bottom: 1px solid var(--color-2);
    padding-bottom: 1rem;
    margin-bottom: 1.6rem;
}
#form_container label {
    color: #fff;
}

@media screen and (max-width: 1200px) {
    .container, .container-md, .container-sm {
      max-width: 100%;  
    }
}

@media screen and (min-width: 1200px) {
    .desk-p-r {
        padding-right: 10%;
    }
}

.callout-list {
    list-style: none;
    margin: 2rem 0;
    padding: 0;
}
.callout-list li {
    border-top: 1px solid var(--color-2);
    padding: 1rem 0;
    color: var(--color-1);
    line-height: 1;
}
.callout-list li b {
    display: block;
    font-family: var(--font-headings);
    margin-bottom: 10px;
    line-height: 1;
    font-size: clamp(1.4rem, 2vw + 1rem, 1.6rem); 
}

@media screen and (max-width: 767px) {
    .py-5 {
        padding-top: 2rem !important;
        padding-bottom: 2rem !important;
    }
    .row {
        gap: 2rem;
    }
    .footer-copyright {
        text-align: center;
    }
}

.icon {
    height: 3rem;
    opacity: .7;
    margin-bottom: 1rem;
}
@media screen and (min-width: 768px) {
    .icon {
        height: 3rem;
        
    }
}


