/*
 * Theme Name: FSL
 * Description: A wordpress theme by Cartogram
 * Author: Matthew Seccafien
 * Template: landmark
*/


.bg-light-gray {
    background-color: #f2f2f2;
}

.site-tile {
	font-family: "Roboto","Helvetica Neue",Helvetica,Arial,sans-serif;
	font-weight: 700;
	font-style: normal;
	color: inherit;
	text-rendering: optimizeLegibility;
	margin-top: 0;
	margin-bottom: 0.5rem;
	line-height: 1.4;
	font-size: 1.5rem !important;
}
@media screen and (min-width: 40em) {
	.site-title {
		font-size: 2.1875rem !important;
	}
}

.item__image img{
	padding:20px !important;
}
@media screen and (max-width:1560px){
    .item__image img{
    	padding:42px !important;
    }    
}
@media screen and (max-width:1260px){
    .item__image img{
    	padding:50px !important;
    }    
}
@media screen and (min-width:1024px) and (max-width:1260px){
    .item__image img{
    	padding:60px !important;
    }    
}


/* Mediaface 2019 */

.grid-700 {
	max-width: 700px;
}
.button-board .button__icon {
    padding: 1rem;
}

.videoWrapper {
    float: none;
    clear: both;
    width: 100%;
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 25px;
    height: 0;
}
.videoWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.page .header, .single .header {
    height: auto;
}

@media screen and (min-width: 64em) {
    .search-form, .single .search-form {
        margin: 0 0 1rem;
    }
}
.page .search-form__icon, .single .search-form__icon {
    fill: #3F3B93;
}
.main {
    background: white;
}


#menu-guide {
    margin: 5% 0 3%;
    border-bottom: 1px solid #3F3B93;
}
#menu-guide.menu>li {
	display: inline-block;
}
#menu-guide li a {
    text-transform: uppercase;
    font-weight: 700;
    transition-duration: 200ms;
}
.menu-board-leads-fr-container #menu-guide li a {
    font-size: 14px;
}
@media screen and (min-width: 768px) {
  #menu-guide li a {
    padding: 0.7rem 1.5rem;
  }
}
#menu-guide li a:hover, #menu-guide li.current-menu-item a {
    background-color: #d2ccdd;
}



.section {
    padding-top: 2rem;
    padding-bottom: 1rem;
}
.section.no-padding {
    padding: 0;
}
/*.section .columns {
    padding-bottom: 1rem;
}*/

.section img.alignleft {
    padding-right: 1rem;
}
.section img.aligncenter {
}

.bg-gray, .bg-grey {
    background-color: #f1f1f1;
}
.bg-purple {
    background-color: #cfd0e5;
}

.border-blue {
    border: 1px solid #3F3B93;
}

.section hr {
    margin-bottom: 1rem;
    border-bottom: 1px solid #000;
}
.section hr.small {
    max-width: 170px;
}

.section a.button {
    padding: 15px 30px;
    border-radius: 0;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 20px;
    font-weight: 700;
    color: white;
}
.section a.button:hover {
    color: #7878B2;
}
.section a.button .fa {
    margin-left: 16px;
}


.section h1, .section .h1, .section h2, .section h3, .section h4 {
    font-weight: 300;
    color: #3F3B93;
    line-height: 1.3;
}
@media screen and (min-width: 1200px) {
    .section h1, .section .h1 {
        font-size: 3.2rem;
    }
}


h2.background {
    position: relative;
    z-index: 1;
}   
h2.background:before {
    border-top: 2px solid #3F3B93;
    content: "";
    margin: 0 auto; /* this centers the line to the full width specified */
    position: absolute; /* positioning must be absolute here, and relative positioning must be applied to the parent */
    top: 50%; left: 0; right: 0; bottom: 0;
    width: 85%;
    z-index: -1;
}
h2.background span { 
    /* to hide the lines from behind the text, you have to set the background color the same as the container */ 
    background: #fff; 
    padding: 0 20px; 
}



.section p, .section li {
    max-width: initial;
    font-size: 14px;
    font-weight: 300;
    color: #000;
}
@media screen and (min-width: 768px) {
  .section p, .section li {
    font-size: 16px;
  }
}
@media screen and (min-width: 1200px) {
  .section p, .section li {
    font-size: 19px;
  }
}

.section ul {
    margin-bottom: 1.5rem;
}
.section li {
    margin-bottom: 0.5rem;
}
.section ul ul {
    padding-top: 0.5rem;
}

.section p a, .section li a {
    color: #3F3B93;
    text-decoration: underline;
}
.section p a:hover, .section p a:hover, .section li a:hover {
    color: #7878B2;
}



p.feature-text, .feature-text p {
  font-size: 20px;
  font-weight: 300;
}
p.feature-text.center, .center.feature-text p {
  margin: 0 auto;
  max-width: 800px;
}
@media screen and (min-width: 768px) {
  p.feature-text, .feature-text p  {
    font-size: 22px;
  }
}
@media screen and (min-width: 1200px) {
  p.feature-text, .feature-text p  {
    font-size: 24px;
  }
}

p.phase-text, .phase-text p {
	margin-bottom: 2rem;
	font-size: 20px;
	font-weight: 300;
	color: #2b276f;
	line-height: 1.5;
}
p.phase-text.center, .center.phase-text p {
	margin: 0 auto;
	max-width: 800px;
}
@media screen and (min-width: 768px) {
	p.phase-text, .phase-text p  {
		font-size: 26px;
	}
}
@media screen and (min-width: 1200px) {
	p.phase-text, .phase-text p  {
		font-size: 34px;
	}
}

p.feature-quote, .feature-quote p {
  font-size: 24px;
  font-weight: 100;
  color: #b7b7b7;
  line-height: 1.2;
}
p.feature-quote.center, .center.feature-quote p {
  margin: 0 auto;
  max-width: 800px;
}
@media screen and (min-width: 768px) {
  p.feature-quote, .feature-quote p  {
    font-size: 38px;
  }
}
@media screen and (min-width: 1200px) {
    p.feature-quote, .feature-quote p  {
        font-size: 54px;
    }
}

p.feature-quote-small, .feature-quote-small p {
  font-size: 22px;
  font-weight: 100;
  color: #b7b7b7;
  line-height: 1.2;
}
p.feature-quote-small.center, .center.feature-quote-small p {
  margin: 0 auto;
  max-width: 800px;
}
@media screen and (min-width: 768px) {
  p.feature-quote-small, .feature-quote-small p  {
    font-size: 32px;
  }
}
@media screen and (min-width: 1200px) {
  p.feature-quote-small, .feature-quote p  {
    font-size: 46px;
  }
}

p.big-text, .big-text p {
  font-size: 22px;
  font-weight: 300;
}
p.big-text.center, .center.big-text p {
    margin: 0 auto;
    max-width: 800px;
}
@media screen and (min-width: 768px) {
  p.big-text, .big-text p  {
    font-size: 26px;
  }
}
@media screen and (min-width: 1200px) {
  p.big-text, .big-text p  {
    font-size: 30px;
  }
}

@media screen and (max-width: 1023px) {
    .bg-large-only {
        background: none !important;
    }
}

table {
  margin-bottom: 1rem;
}
th {
	vertical-align: top;
	padding: 1rem 10px;
	text-align: left;
	font-size: 23px;
	border-bottom: 1px solid #3F3B93;
	color: #000;
}
thead th {
	padding: 10px;
	vertical-align: bottom;
}

thead th:first-child {
	padding-left: 0;
}
tbody th:first-child {
	padding-left: 0;
}

td {
	vertical-align: top;
	padding: 1rem 10px;
	font-size: 15px;
	border: 1px solid #3F3B93;
	color: #000;
	font-weight: 300;
}
td p, .section td p, td ul li, .section td ul li {
	font-size: 15px;
}
td ul, .section td ul {
  margin-bottom: 0;
}
tr td:first-child {
	padding-left: 0;
}
tr td:last-child {
	border-right: none;
}




.additional-media {
    padding: 0 10px;
}
.wp-playlist-current-item {
    height: auto !important;
}
.wp-playlist-item-meta.wp-playlist-item-title {
    font-weight: bold;
}
a.wp-playlist-caption .wp-playlist-item-title {
    color: #3F3B93;
}


.section.bowtie {
    padding-top: 0;   
}
.bowtie img {
    opacity: 0.2;
    transition: all 0.2s ease-in-out;
}
.bowtie a.active img, .bowtie a:hover img {
    opacity: 1;
}
.bowtie a:hover img {
}
.bowtie hr {
	margin-bottom: 0; 
	padding-top: 2rem;
}
@media screen and (min-width: 1024px) {
	.bowtie hr {
		margin-bottom: 0; 
		padding-top: 3rem;
	}
}


.accordion {
	margin-bottom: 2rem;
    margin-left: 0;
    list-style: none;
}
.accordion .inner {
	padding-top: 1em;
    overflow: hidden;
    display: none;
}
.accordion .toggle {
	text-decoration: none;
}
.accordion .toggle:hover {
	opacity: 0.8;
}
.accordion .toggle .toggle-text {
    border-bottom: 1px solid #000;
    text-transform: uppercase;
    font-weight: 700;
}
.accordion i {
	color: #4d4d4d;
}
.accordion .toggle.active i {
	transform: rotate(90deg);
}


@media screen and (min-width: 40em) {
	.page-template-template-grammar-in-action .column, .page-template-template-grammar-in-action .columns {
	    padding-left: 2.5rem;
	    padding-right: 2.5rem;
	}
}
.page-template-template-grammar-in-action .section h1 {
	margin-bottom: 2rem;
    font-weight: 700;
    text-transform: uppercase;
}
@media screen and (min-width: 1200px) {
    .page-template-template-grammar-in-action .section h1 {
        font-size: 2rem;
    }
}

.grammar-in-action tbody th {
  font-size: 16px;
}

.grammar-in-action .yes-no {
	margin-bottom: 1rem;
}
@media screen and (min-width: 641px) {
	.grammar-in-action .yes-no {
		display: flex;
		align-items: center;
		flex-wrap: nowrap;
	}
}
.grammar-in-action .yes-no-inner {
	display: flex;
	align-items: flex-start;
	flex-wrap: nowrap;
	flex-direction: column;
}
.grammar-in-action .button {
    min-width: 220px;
    padding: 35px;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 22px;
	border-radius: 0;
}
.grammar-in-action .button:hover {
	cursor: default;
	color: #fff;
}
.grammar-in-action .button.button-yes {
	background-color: #7f7f7f;
	border-color: #7f7f7f;
}
.grammar-in-action .button.button-no {
	background-color: #7f7f7f;
	border-color: #7f7f7f;
}
.grammar-in-action .yes-no-links {
	display: flex;
	align-items: center;
}
.grammar-in-action .yes-no-text {
	padding: 5px 10px 5px 0px;
	max-width: 248px;
	line-height: 1.2;
	text-decoration: underline;
}
@media screen and (min-width: 641px) {
	.grammar-in-action .yes-no-text {
		padding: 5px 10px 5px 30px;
	}
}
.phase-discovery h1, .phase-discovery .accordion .toggle, .text-discovery {
	color: #6916a5;
}
.phase-precision h1, .phase-precision .accordion .toggle, .text-precision {
	color: #0fb7ae;
}
.phase-application h1, .phase-application .accordion .toggle, .text-application {
	color: #747475;
}



.section.board-leads {
	padding-bottom: 4rem;
}
@media screen and (min-width: 40em) {
  .page-template-template-board-leads .page__content {
    padding: 0;
  }
}
	.page-template-template-board-leads h1 {
		font-weight: 700;
	}
	.section.board-leads h2 {
		font-weight: 700;
	}
	.section.board-leads h3 {
		font-weight: 700;
	}
@media only screen and (min-width: 40em) {
	.page-template-template-board-leads h1 {
		font-size: 4rem;
	}
	.section.board-leads h2 {
		font-size: 2.3rem;
	}
}
.board-leads-video {
	margin-bottom: 2rem;
}
.section.board-leads img {
	margin-bottom: 1rem;
}
.section.board-leads .learn-more-column {
	padding-bottom: 2rem;
}
.section.board-leads .learn-more {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 16px;
}
.section.board-leads .newsletter-link {
	margin-bottom: 1rem;
}
.section.board-leads .newsletter-link a {
	display: block;
	padding: 1rem 1.3rem;
	color: white;
	background-color: #6cb5c1;
	text-transform: uppercase;
}
.section.board-leads .newsletter-link a:hover {
	opacity: 0.8;
}
@media only screen and (min-width: 40em) {
	.section.board-leads .newsletter-link {
		font-size: 1.3rem;
	}
}

.section.board-leads .event-section-title {
	display: block;
	margin-bottom: 0;
	padding: 1rem 1.3rem;
	color: white;
	background-color: #3F3B93;
	text-transform: uppercase;
}
.section.board-leads .upcoming-events {
    padding: 0.5rem 1.3rem 2rem;
    margin-bottom: 1rem;
    background-color: #d9d9e2;
}
.section.board-leads .event-listing {
	padding: 1rem 0;
	display: flex;
	align-items: center;
}
.section.board-leads .event-listing+.event-listing {
    border-top: 1px solid #3F3B93;
}
.section.board-leads .event-listing h4 {
	margin-bottom: 0;
	font-size: 1.2rem;
}
.section.board-leads .event-listing .event-date {
    padding-right: 1rem;
    font-size: 1.5rem;
    text-transform: uppercase;
    color: #3F3B93;
    font-weight: 900;
}
@media only screen and (min-width: 64em) {
	.section.board-leads .event-listing h4, .section.board-leads .event-listing .event-date {
		width: 50%;
	}
}



.page-template-template-student-pathways .row {
  max-width: 65rem;
}


/* Twitter feed */
#ctf .ctf-header,
#ctf .ctf-item {
    padding: 1rem 1.3rem;
}
@media only screen and (min-width: 40em) {
	#ctf .ctf-no-bio .ctf-header-text {
		padding-top: 8px;
	}
	#ctf .ctf-header-name {
		font-size: 1.5rem;
	}
}
@media only screen and (min-width: 75em) {
	#ctf .ctf-no-bio .ctf-header-text {
		padding-top: 5px;
	}
	#ctf .ctf-header-name {
		font-size: 2rem;
	}
}
#ctf .ctf-header .ctf-header-follow {
	display: none;
}





/*!
 * tabbyjs v12.0.3
 * Lightweight, accessible vanilla JS toggle tabs.
 * (c) 2019 Chris Ferdinandi
 * MIT License
 * http://github.com/cferdinandi/tabby
 */

/**
 * The list element
 */
[role="tablist"] {
  list-style: none;
  margin: 0;
  padding: 0;
}

[role="tablist"] * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
[role="tablist"] li {
	margin-bottom: 1rem;
}

/**
 * The tabs
 */
[role="tab"] {
  display: block;
  padding: 5px 5px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  text-decoration: none !important;
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  [role="tab"] {
    font-size: 24px;
  }
}
[role="tab"]:focus {
  outline: none;
}
.horizontal [role="tab"] {
  position: relative;
  border-bottom: 7px solid transparent;
}
@media screen and (min-width: 1024px) {
	.horizontal {
		text-align: center;
	}
	.horizontal > li, .horizontal [role="tab"] {
	  display: inline-block;
	}
	.horizontal [role="tab"] {
		margin: 0 20px;
	}
	.horizontal li:nth-child(1) [role="tab"]::after {
		position: absolute;
		right: -23px;
		top: 0;
		content: " ";
		width: 1px;
		height: 45px;
		background-color: #3F3B93;
	}
}
.horizontal [role="tab"][aria-selected="true"] {
  border-color: #d2ccdd;
}
.horizontal [role="tab"]:hover:not([aria-selected="true"]) {
  border-color: transparent;
}

.vertical a[role="tab"] {
  color: #222;
  margin-right: 15px;
}
.vertical [role="tab"][aria-selected="true"] {
  position: relative;
  background-color: #d2ccdd;
}
.vertical [role="tab"][aria-selected="true"]::after {
  left: 100%;
  top: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
  border-color: rgba(210, 204, 221, 0);
  border-left-color: #d2ccdd;
  border-width: 15px;
  border-left-width: 20px;
  margin-top: -15px;
}
.vertical [role="tab"]:hover:not([aria-selected="true"]) {
  background-color: #d2ccdd;
}

/**
 * [hidden] fallback for IE10 and lower
 */

[role="tabpanel"] {
  transition: 0.3s opacity ease-in;
  opacity: 1;
}
.tabby [hidden] {
  position: absolute;
  display: block;
  opacity: 0;
  height: 0;
  transition-duration: 0s;
  overflow: hidden;
}


.page-template-template-student-pathways p,
.page-template-template-student-pathways .section li {
	line-height: 1.4;
}
	.page-template-template-student-pathways p {
		margin-bottom: 1.3rem;
	}
@media screen and (min-width: 1200px) {

	.section.student-pathways li {
		font-size: 17px;
	}
}
.student-pathways strong, .student-pathways b {
	color: #3F3B93;
}
.section.student-pathways img {
	border: 1px solid #3F3B93;
}
.section.student-pathways a img:hover {
	opacity: 0.8;
}
.section.student-pathways img.alignleft {
	margin-bottom: 1rem;
	margin-right: 1rem;
	padding-right: 0;
	float: left;
}







/**
* Tribe Events plugin
*/
@media screen and (min-width: 40em) {
  .post-type-archive-tribe_events .page__content {
    padding: 0;
  }
}
h1.tribe-events-page-title, .forum-title {
	margin-top: 2rem;
	font-weight: 700;
	font-size: 2rem;
	color: #3F3B93;
	text-align: left;
}
h1.tribe-events-page-title a {
	color: #3F3B93;
}
@media only screen and (min-width: 64em) {
	h1.tribe-events-page-title, .forum-title {
		font-size: 4rem;
	}
}
.tribe-events-list .tribe-events-loop .tribe-events-event-image {
  margin-bottom: 1rem;
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .tribe-events-list .tribe-events-event-image img {
    width: 100%;
  }
}
#tribe-bar-views { /* Hide view selector */
  display: none;
}
#tribe-bar-form.tribe-bar-full.tribe-events-bar--has-views #tribe-bar-filters-wrap {
  width: 100%;
}
.tribe-events-loop .type-tribe_events {
    border-bottom: 1px solid black;
}
.tribe-events-loop .event-categories {
  text-transform: uppercase;
  color: black;
  line-height: 1.2;
  font-weight: 500;
}
@media only screen and (min-width: 769px) {
  .tribe-events-loop .event-categories {
    font-size: 1.7em;
  }
}
.tribe-events-schedule, 
.tribe-event-schedule-details {
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 1em;
  color: black;
  font-weight: 400;
}
@media only screen and (min-width: 769px) {
  .tribe-events-schedule, 
  .tribe-event-schedule-details {
    font-size: 1.3em;
  }
}
.tribe-events-list .entry-summary .excerpt p {
  color: black;
}
.tribe-events-list .tribe-events-list-event-title {
  margin-bottom: 1rem;
  text-transform: uppercase;
  font-weight: 400;
}
@media only screen and (min-width: 769px) {
  .tribe-events-list .tribe-events-list-event-title {
    font-size: 2em;
  }
}
.tribe-events-list-separator-month {
  display: none;
}
a.tribe-events-ical.tribe-events-button {
    display: none !important;
}



.single-tribe_events .event-content-section {
	margin-bottom: 3rem;
}
@media screen and (min-width: 64em) {
  .single-tribe_events .column-left {
  	padding-right: 4rem;
  }
  .single-tribe_events .column-right {
  	padding-left: 2rem;
  	border-left: 1px solid #3F3B93;
  }
}
.single-tribe_events .page__content {
  padding: 2rem 0 0;
}
@media screen and (min-width: 40em) {
  .single-tribe_events .page__content {
    padding: 2rem 0 0;
  }
}
.single-tribe_events .tribe-events-schedule {
  color: #3F3B93;
  margin: 0 0 0.5rem;
}
@media only screen and (max-width: 768px) {
  .single-tribe_events .tribe-events-schedule {
    margin: 1.5rem 0 0.5rem;
    padding: 0;
    background: transparent;
    border: none;
  }
}
.single-tribe_events .tribe-events-single-event-title {
  margin-bottom: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #3F3B93;
  font-size: 1.5rem;
  color: #3F3B93;
}
@media only screen and (min-width: 769px) {
  .single-tribe_events .tribe-events-single-event-title {
    font-size: 3.5rem;
  }
}
.single-tribe_events .tribe-events-event-image {
    text-align: left;
}
.single-tribe_events .tribe-events-content p {
  font-size: 1em;
  color: black;
}
.single-tribe_events .event-resources h3 {
	display: block;
	margin-bottom: 1.5rem;
	padding: 1rem 1.3rem;
	background-color: #3F3B93;
	color: white;
	text-transform: uppercase;
	line-height: 1.3;
}
.single-tribe_events .event-resources ul { 
	display: flex;
	flex-wrap: wrap;
	margin-left: 0;
	margin-bottom: 1.5rem;
}
.single-tribe_events .event-resources ul li { 
	margin-bottom: 1rem;
	margin-right: 1rem;
	width: 267px;
	border: 1px solid #d9d9e2;
	text-align: center;
}
@media only screen and (min-width: 64em ) {
	.single-tribe_events .event-resources ul { 
		justify-content: space-between;
	}
	.single-tribe_events .event-resources ul li { 
		margin-right: 0;
	}
}
.single-tribe_events .event-resources ul li a { 
	padding: 10px;
	display: block;
	opacity: 1;
}
.single-tribe_events .event-resources ul li a:hover { 
	opacity: 0.8;
}
.single-tribe_events .event-resources ul li a img { 
	padding: 0 0 10px;
	max-height: 150px;
	width: auto;
}

@media only screen and (min-width: 769px) {
	.single-tribe_events .event-resources h3 {
		font-size: 2rem;
	}
}
.single-tribe_events .event-resources h3.event-resources-presentation {
	background-color: #7879b0;
}
.single-tribe_events .event-resources h3.event-resources-videos {
	background-color: #97979b;
}
.single-tribe_events .event-resources-videos-wrap > div {
	margin-bottom: 1rem;
}

.single-tribe_events .event-resources ul {
	margin-bottom: 1.5rem;
}
.single-tribe_events .event-resources ul li {
	list-style: none;
}
.single-tribe_events .tribe-events-cal-links {
    display: none;
}


/* bbpress */

/*styling to move 'Subscribe' to right hand side */
.single-forum .subscription-toggle  {
    float:right !important ;
}
.forum-title {
	color: #3F3B93;
}
.forum-sidebar {
		margin-bottom: 2rem;
    padding: 1rem;
    background-color: #f7f7f7;
    border-radius: 4px;
}
.forum-sidebar .widget {
    margin-bottom: 1.5rem;
}
.forum-sidebar .widget ul {
		list-style: none;
    margin-left: 0.7rem;
}
.forum-sidebar .widget ul.menu {
    margin-left: 0;
}
