/*
Theme Name: Altitude Pro
Theme URI: https://my.studiopress.com/themes/altitude/
Description: Make a stunning first impression, grab attention, and dynamically tell your story with beautiful images and clean typography.
Author: StudioPress
Author URI: http://www.studiopress.com/

Version: 1.5.1

Tags: accessibility-ready, block-styles, custom-colors, custom-header, custom-menu, e-commerce, editor-style, featured-images, footer-widgets, full-width-template, left-sidebar, one-column, right-sidebar, sticky-post, theme-options, threaded-comments, translation-ready, two-columns, wide-blocks

Template: genesis

License: GPL-2.0-or-later
License URI: http://www.opensource.org/licenses/gpl-license.php

Text Domain: altitude-pro
Requires at least: 5.4
Requires PHP: 5.6
*/
/* Table of Contents
	- HTML5 Reset
		- Baseline Normalize
		- Box Sizing
		- Float Clearing
	- Defaults
		- Typographical Elements
		- Headings
		- Objects
		- Gallery
		- Forms
		- Buttons
		- Tables
		- Screen Reader Text
	- Structure and Layout
		- Site Containers
		- Column Widths and Positions
		- Column Classes
	- Common Classes
		- Avatar
		- Genesis
		- Search Form
		- Titles
		- WordPress
	- Widgets
	- Plugins
		- Genesis eNews Extended
		- Jetpack
	- Skip Links
	- Site Header
		- Title Area
		- Widget Area
	- Site Navigation
		- Primary Navigation
		- Secondary Navigation
		- Footer Navigation
		- Responsive Menu
	- Content Area
		- Front Page
		- Dashicons
		- Flexible Widgets
		- Content
		- Entries
		- Entry Meta
		- After Entry
		- Pagination
		- Content Boxes
		- Comments
	- Sidebar
	- Footer Widgets
	- Site Footer
	- Media Queries
		- Max-width: 1280px
		- Max-width: 1200px
		- Max-width: 1023px
		- Max-width: 800px
		- Max-width: 480px
*/
/* HTML5 Reset
---------------------------------------------------------------------------- */
/* Baseline Normalize
--------------------------------------------- */
/* normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css
---------------------------------------------------------------------------- */
/* stylelint-disable */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}
/* stylelint-enable */
/* Box Sizing
--------------------------------------------- */
html,
input[type="search"] {
	box-sizing: border-box;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

/* Float Clearing
--------------------------------------------- */
.author-box::before,
.clearfix::before,
.entry::before,
.entry-content::before,
.pagination::before,
.site-container::before,
.site-footer::before,
.site-header::before,
.site-inner::before,
.widget::before,
.wrap::before {
	content: " ";
	display: table;
}

.author-box::after,
.clearfix::after,
.entry::after,
.entry-content::after,
.pagination::after,
.site-container::after,
.site-footer::after,
.site-header::after,
.site-inner::after,
.widget::after,
.wrap::after {
	clear: both;
	content: " ";
	display: table;
}

/* Defaults
---------------------------------------------------------------------------- */
/* Smooth Scroll
--------------------------------------------- */
html {
	scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

/* Typographical Elements
--------------------------------------------- */
body {
	background-color: #fff;
	color: #000;
	font-family: Mukta, sans-serif;
	font-size: 20px;
	font-weight: 200;
	line-height: 1.5;
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
}

body.altitude-home {
	background: none;
}

a,
input:focus,
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea:focus,
.button,
html:not([data-scroll="0"]) .site-header {
	transition: all 0.2s ease-in-out;
}

::selection {
	background-color: #000;
	color: #fff;
}

a {
	color: #0680a2;
	text-decoration: none;
}

a:focus,
a:hover {
	color: #000;
}

p {
	margin: 0 0 30px;
	padding: 0;
}

ol,
ul {
	margin: 0;
	padding: 0;
}

li {
	list-style-type: none;
}

b,
strong {
	font-weight: 800;
}

cite,
em,
i {
	font-style: italic;
}

.image-section .widget:first-of-type cite {
	font-size: 16px;
	font-style: normal;
	font-weight: 800;
	letter-spacing: 3px;
	text-transform: uppercase;
}

figure {
	margin: 0;
}

mark {
	background: #ddd;
	color: #000;
}

blockquote {
	color: currentColor;
	margin: 40px;
}

blockquote::before {
	color: currentColor;
	content: "\201C";
	display: block;
	font-size: 30px;
	height: 0;
	left: -20px;
	position: relative;
	top: -10px;
}

.image-section .widget:first-of-type blockquote {
	color: #fff;
	font-size: 80px;
	font-weight: 200;
	line-height: 1;
	margin: 0 0 20px;
}

.image-section blockquote::before {
	display: none;
}

hr {
	border: 0;
	border-collapse: collapse;
	border-top: 2px solid currentColor;
	clear: both;
	color: #eee;
	margin: 1.65em auto;
}

/* Headings
--------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: Mukta, sans-serif;
	font-weight: 200;
	line-height: 1.2;
	margin: 0 0 20px;
}

h1 {
	font-size: 36px;
}

h2 {
	font-size: 32px;
}

.front-page-1 .widget:first-of-type h4,
.front-page-2 .widget:first-of-type h4 {
	font-size: 80px;
	font-weight: 200;
	letter-spacing: normal;
	line-height: 1;
	text-transform: none;
}

h3 {
	font-size: 30px;
}

h4 {
	font-size: 24px;
}

.image-section h4,
.solid-section h4,
.image-section .widget-title,
.solid-section .widget-title {
	border-width: 0;
	font-size: 16px;
	font-weight: 800;
	letter-spacing: 3px;
	padding-bottom: 0;
	text-transform: uppercase;
}

h5 {
	font-size: 20px;
}

h6 {
	font-size: 18px;
}

/* Objects
--------------------------------------------- */
embed,
iframe,
img,
object,
video,
.wp-caption {
	max-width: 100%;
}

img {
	height: auto;
}

.full-width-content img.pull-left {
	float: left;
	margin: 0 40px 40px -200px;
}

.full-width-content img.pull-right {
	float: right;
	margin: 0 -200px 40px 40px;
}

figure {
	margin: 0;
}

/* Gallery
--------------------------------------------- */
.gallery {
	margin-bottom: 28px;
	overflow: hidden;
}

.gallery-item {
	float: left;
	margin: 0;
	padding: 0 4px;
	text-align: center;
}

.gallery-columns-1 .gallery-item {
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	width: 50%;
}

.gallery-columns-3 .gallery-item {
	width: 33%;
}

.gallery-columns-4 .gallery-item {
	width: 25%;
}

.gallery-columns-5 .gallery-item {
	width: 20%;
}

.gallery-columns-6 .gallery-item {
	width: 16.6666%;
}

.gallery-columns-7 .gallery-item {
	width: 14.2857%;
}

.gallery-columns-8 .gallery-item {
	width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	width: 11.1111%;
}

.gallery-columns-2 .gallery-item:nth-child(2n+1),
.gallery-columns-3 .gallery-item:nth-child(3n+1),
.gallery-columns-4 .gallery-item:nth-child(4n+1),
.gallery-columns-5 .gallery-item:nth-child(5n+1),
.gallery-columns-6 .gallery-item:nth-child(6n+1),
.gallery-columns-7 .gallery-item:nth-child(7n+1),
.gallery-columns-8 .gallery-item:nth-child(8n+1),
.gallery-columns-9 .gallery-item:nth-child(9n+1) {
	clear: left;
}

.gallery .gallery-item img {
	border: none;
	height: auto;
	margin: 0;
}

/* Forms
--------------------------------------------- */
input,
select,
textarea {
	background-color: #fff;
	border: 1px solid #ddd;
	border-radius: 0;
	box-shadow: none;
	color: #000;
	font-size: 20px;
	font-weight: 200;
	padding: 20px;
	width: 100%;
}

input:focus,
textarea:focus {
	border: 1px solid #999;
	outline: none;
}

.front-page input:focus,
.front-page textarea:focus {
	border: 1px solid #0680a2;
	outline: none;
}

input[type="checkbox"],
input[type="image"],
input[type="radio"] {
	width: auto;
}

::-moz-placeholder {
	color: #000;
	opacity: 1;
}

::-webkit-input-placeholder {
	color: #000;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.site-container div.wpforms-container-full .wpforms-form input[type="submit"],
.site-container div.wpforms-container-full .wpforms-form button[type="submit"],
.widget .button {
	background-color: #0680a2;
	border: 2px solid #0680a2;
	border-radius: 0;
	color: #fff;
	cursor: pointer;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 2px;
	padding: 15px 25px;
	text-transform: uppercase;
	-webkit-font-smoothing: antialiased;
	white-space: normal;
	width: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button {
	display: none;
}

/* Buttons
--------------------------------------------- */
button:focus,
button:hover,
input[type="button"]:focus,
input[type="button"]:hover,
input[type="reset"]:focus,
input[type="reset"]:hover,
input[type="submit"]:focus,
input[type="submit"]:hover,
.button.clear:focus,
.button.clear:hover,
.button:focus,
.button:hover,
.footer-widgets .widget .button,
.footer-widgets button,
.footer-widgets input[type="button"],
.footer-widgets input[type="reset"],
.footer-widgets input[type="submit"],
.site-container div.wpforms-container-full .wpforms-form input[type="submit"]:focus,
.site-container div.wpforms-container-full .wpforms-form input[type="submit"]:hover,
.site-container div.wpforms-container-full .wpforms-form button[type="submit"]:focus,
.site-container div.wpforms-container-full .wpforms-form button[type="submit"]:hover,
.widget .button.clear:focus,
.widget .button.clear:hover,
.widget .button:focus,
.widget .button:hover {
	background-color: #000;
	border: 2px solid #000;
	color: #fff;
}

.button {
	display: inline-block;
}

button.small,
input[type="button"].small,
input[type="reset"].small,
input[type="submit"].small,
.button.small {
	padding: 8px 16px;
}

.footer-widgets .widget .button.clear,
.widget .button.clear {
	background-color: transparent;
	border: 2px solid #000;
	color: #000;
}

.image-section .button {
	margin-left: 5px;
	margin-right: 5px;
	margin-top: 20px;
}

.image-section .widget .button.clear {
	background-color: transparent;
	border-color: #fff;
	color: #fff;
}

.footer-widgets .widget button:focus,
.footer-widgets .widget button:hover,
.footer-widgets .widget input[type="button"]:focus,
.footer-widgets .widget input[type="button"]:hover,
.footer-widgets .widget input[type="reset"]:focus,
.footer-widgets .widget input[type="reset"]:hover,
.footer-widgets .widget input[type="submit"]:focus,
.footer-widgets .widget input[type="submit"]:hover,
.footer-widgets .widget .button:focus,
.footer-widgets .widget .button:hover,
.image-section button:focus,
.image-section button:hover,
.image-section input[type="button"]:focus,
.image-section input[type="button"]:hover,
.image-section input[type="reset"]:focus,
.image-section input[type="reset"]:hover,
.image-section input[type="submit"]:focus,
.image-section input[type="submit"]:hover,
.image-section .widget .button:focus,
.image-section .widget .button:hover {
	background-color: #fff;
	border: 2px solid #fff;
	color: #000;
}

.site-container button:disabled,
.site-container button:disabled:hover,
.site-container input:disabled,
.site-container input:disabled:hover,
.site-container input[type="button"]:disabled,
.site-container input[type="button"]:disabled:hover,
.site-container input[type="reset"]:disabled,
.site-container input[type="reset"]:disabled:hover,
.site-container input[type="submit"]:disabled,
.site-container input[type="submit"]:disabled:hover,
.site-container .footer-widgets .widget input[type="submit"]:disabled,
.site-container .footer-widgets .widget input[type="submit"]:disabled:hover {
	background-color: #ddd;
	border-color: #ddd;
	color: #444;
	cursor: not-allowed;
}

.post-password-form input[type="password"] {
	margin-bottom: 15px;
}

/* Tables
--------------------------------------------- */
table {
	border-collapse: collapse;
	border-spacing: 0;
	margin-bottom: 40px;
	width: 100%;
	word-break: break-all;
}

tbody {
	border-bottom: 1px solid #eee;
}

td,
th {
	line-height: 2;
	text-align: left;
	vertical-align: top;
}

td {
	padding: 0.5em;
}

tr {
	border-top: 1px solid #eee;
}

th {
	font-weight: 800;
	padding: 0.5em;
}

/* Screen Reader Text
--------------------------------------------- */
.screen-reader-shortcut,
.screen-reader-text,
.screen-reader-text span {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.genesis-nav-menu .search input[type="submit"]:focus,
.screen-reader-shortcut:focus,
.screen-reader-text:focus,
.widget_search input[type="submit"]:focus {
	background: #fff;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #000;
	display: block;
	font-size: 1em;
	font-weight: 800;
	height: auto;
	padding: 15px 23px 14px;
	text-decoration: none;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}

.more-link {
	position: relative;
}

/* Structure and Layout
---------------------------------------------------------------------------- */
/* Site Containers
--------------------------------------------- */
.site-inner,
.wrap {
	float: none;
	margin: 0 auto;
	max-width: 1200px;
}

.site-inner {
	background-color: #fff;
	clear: both;
	margin-top: 170px;
	position: relative;
	z-index: 9;
	word-wrap: break-word;
}

.front-page .site-container .site-inner {
	margin-top: 0;
	max-width: 100%;
}

.altitude-landing .site-container .site-inner {
	margin-top: 100px;
}

.secondary-nav .site-inner {
	margin-top: 250px;
}

/* Column Classes
--------------------------------------------- */
/* Link: http://twitter.github.io/bootstrap/assets/css/bootstrap-responsive.css */
.five-sixths,
.four-sixths,
.one-fourth,
.one-half,
.one-sixth,
.one-third,
.three-fourths,
.three-sixths,
.two-fourths,
.two-sixths,
.two-thirds {
	float: left;
	margin-left: 2.564102564102564%;
}

.one-half,
.three-sixths,
.two-fourths {
	width: 48.717948717948715%;
}

.one-third,
.two-sixths {
	width: 31.623931623931625%;
}

.four-sixths,
.two-thirds {
	width: 65.81196581196582%;
}

.one-fourth {
	width: 23.076923076923077%;
}

.three-fourths {
	width: 74.35897435897436%;
}

.one-sixth {
	width: 14.52991452991453%;
}

.five-sixths {
	width: 82.90598290598291%;
}

.first {
	clear: both;
	margin-left: 0;
}

/* Common Classes
---------------------------------------------------------------------------- */
/* Avatar
--------------------------------------------- */
.avatar {
	border-radius: 50%;
	float: left;
}

.author-box .avatar {
	height: 88px;
	width: 88px;
}

.entry-comments .avatar {
	height: 60px;
	width: 60px;
}

.alignleft .avatar,
.author-box .avatar {
	margin-right: 24px;
}

.alignright .avatar {
	margin-left: 24px;
}

.comment .avatar {
	margin: 0 20px 24px 0;
}

/* Genesis
--------------------------------------------- */
.breadcrumb {
	border-bottom: 2px solid #f5f5f5;
	font-size: 20px;
	margin-bottom: 60px;
	padding-bottom: 10px;
}

.archive-description,
.author-box {
	border-bottom: 1px solid #000;
	border-top: 1px solid #000;
	font-size: 20px;
	margin-bottom: 100px;
	padding: 40px 0;
}

.author-box-title {
	font-size: 22px;
	margin-bottom: 8px;
}

.archive-description p:last-child,
.author-box p:last-child {
	margin-bottom: 0;
}

/* Search Form
--------------------------------------------- */
.search-form {
	overflow: hidden;
	position: relative;
}

.search-form input[type="submit"] {
	padding: 25px;
}

.widget_search input[type="submit"] {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	padding: 0;
	position: absolute;
	width: 1px;
}

.widget_search input[type="submit"]:focus {
	background: #000;
	border-radius: 0;
	box-shadow: none;
	color: #fff;
	padding: 20px 23px;
	right: 0;
	top: 0;
}

.error404 .content .search-form {
	margin-bottom: 40px;
}

.error404 .content input[type="search"] {
	margin-right: 10px;
	width: auto;
}

/* Titles
--------------------------------------------- */
.archive-title {
	font-size: 24px;
	line-height: 1;
	margin-bottom: 20px;
}

.entry-title {
	font-size: 48px;
}

.sidebar .entry-title {
	font-size: 24px;
	text-align: left;
}

.entry-title a {
	color: #000;
}

.entry-title a:focus,
.entry-title a:hover {
	color: #0680a2;
}

/* WordPress
--------------------------------------------- */
.alignleft {
	float: left;
	text-align: left;
}

.alignright {
	float: right;
	text-align: right;
}

a.alignleft,
a.alignnone,
a.alignright {
	max-width: 100%;
}

a.alignnone {
	display: inline-block;
}

a.aligncenter img {
	display: block;
	margin: 0 auto;
}

img.centered,
.aligncenter {
	display: block;
	margin: 0 auto 24px;
}

img.alignnone,
.alignnone {
	margin: 0 0 12px;
}

a.alignleft,
img.alignleft,
.wp-caption.alignleft {
	margin: 0 24px 24px 0;
}

a.alignright,
img.alignright,
.wp-caption.alignright {
	margin: 0 0 24px 24px;
}

.wp-caption-text {
	color: #000;
	font-family: Mukta, sans-serif;
	font-size: 18px;
	font-style: normal;
	line-height: 1.2;
	text-align: center;
}

.entry-content p.wp-caption-text {
	margin-bottom: 0;
}

.gallery-caption,
.entry-content .gallery-caption {
	margin: 0 0 10px;
}

.post-password-form input {
	width: auto;
}

.post-password-form input[type="submit"] {
	padding: 25px;
}

.wp-audio-shortcode,
.wp-playlist,
.wp-video {
	margin: 0 0 28px;
}

/* Widgets
---------------------------------------------------------------------------- */
.widget {
	word-wrap: break-word;
}

.widget ol > li {
	list-style-position: inside;
	list-style-type: decimal;
	padding-left: 20px;
	text-indent: -20px;
}

.widget ul li {
	margin-bottom: 10px;
	padding-bottom: 10px;
}

.widget li li {
	border: none;
	margin: 0 0 0 30px;
	padding: 0;
}

.widget_calendar table {
	width: 100%;
}

.widget_calendar td,
.widget_calendar th {
	text-align: center;
}

/* Featured Content
--------------------------------------------- */
.featured-content .entry-title {
	font-size: 24px;
}

/* Simple Social Icons
--------------------------------------------- */
.altitude-home .content .simple-social-icons {
	margin-top: 40px;
}

.altitude-home .content .simple-social-icons ul li {
	margin: 0 20px !important;
}

.altitude-home .content .simple-social-icons ul li a,
.altitude-home .content .simple-social-icons ul li a:focus,
.altitude-home .content .simple-social-icons ul li a:hover {
	padding: 30px;
}

/* Plugins
---------------------------------------------------------------------------- */
/* Genesis eNews Extended
--------------------------------------------- */
.enews-widget input {
	font-size: 18px;
	margin-bottom: 20px;
}

.enews-widget input[type="submit"] {
	margin: 0;
	width: 100%;
}

.enews form + p {
	margin-top: 24px;
}

/* Genesis Portfolio Pro
--------------------------------------------- */
.genesis-pro-portfolio .content .pro-portfolio {
	padding: 0;
}

/* Jetpack
--------------------------------------------- */
#wpstats {
	display: none;
}

/* WP Forms
--------------------------------------------- */
.entry-content .wpforms-container {
	margin-bottom: 40px;
}

.entry-content .wpforms-form .wpforms-field {
	clear: both;
	margin: 20px 0;
	overflow: hidden;
}

.site-container .wpforms-container .wpforms-form .wpforms-field input {
	border-radius: 0;
	height: auto;
	padding: 20px;
}

.site-container .entry-content .wpforms-form .wpforms-field-label {
	font-weight: 800;
}

.site-container .entry-content .wpforms-form .wpforms-field-sublabel {
	font-size: 16px;
}

.entry-content .wpforms-form .wpforms-field-hp {
	display: none !important;
	left: -9000px !important;
	position: absolute !important;
}

.site-container .entry-content .wpforms-form textarea {
	padding: 20px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-small {
	height: 120px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-medium {
	height: 200px;
}

.site-container .entry-content .wpforms-form textarea.wpforms-field-large {
	height: 300px;
}

/* Skip Links
---------------------------------------------------------------------------- */
.genesis-skip-link {
	margin: 0;
}

.genesis-skip-link li {
	height: 0;
	width: 0;
	list-style: none;
}

/* Display outline on focus */
:focus {
	color: #333;
	outline: #ccc solid 1px;
}

/* Site Header
---------------------------------------------------------------------------- */
.site-header {
	background-color: #000;
	left: 0;
	position: fixed;
	width: 100%;
	z-index: 999;
}

.featured-section .site-header {
	background-color: transparent;
}

.featured-section .site-header > .wrap {
	border-bottom: 1px solid #fff;
}

html:not([data-scroll="0"]) .site-header {
	background-color: #000;
}

html:not([data-scroll="0"]) .site-header > .wrap {
	border-bottom: none;
}

html:not([data-scroll="0"]) .nav-secondary {
	display: none;
}

/* Title Area
--------------------------------------------- */
.title-area {
	float: left;
	padding: 25px 0;
	width: 360px;
}

html:not([data-scroll="0"]) .site-header .title-area {
	padding: 15px 0;
}

.site-title {
	font-size: 24px;
	font-weight: 800;
	letter-spacing: 2px;
	line-height: 1;
	margin-bottom: 0;
	text-transform: uppercase;
}

.site-title a,
.site-title a:focus,
.site-title a:hover {
	color: #fff !important;
}

.header-image .title-area,
html:not([data-scroll="0"]) .header-image .site-header .title-area {
	padding: 0;
}

.header-image .site-title > a {
	background-size: contain !important;
	display: block;
	height: 76px;
	text-indent: -9999px;
}

html:not([data-scroll="0"]) .header-image .site-title > a {
	height: 56px;
}

.site-description {
	display: block;
	height: 0;
	margin-bottom: 0;
	text-indent: -9999px;
}

/* Site Navigation
---------------------------------------------------------------------------- */
.genesis-nav-menu {
	line-height: 1;
}

.genesis-nav-menu .menu-item {
	display: inline-block;
	text-align: left;
}

.genesis-nav-menu li li {
	margin-left: 0;
}

.genesis-nav-menu a {
	color: #fff;
	display: block;
	font-size: 14px;
	font-weight: 200;
	letter-spacing: 1px;
	padding: 30px 15px;
	text-transform: uppercase;
}

html:not([data-scroll="0"]) .site-header .genesis-nav-menu a {
	padding: 20px 15px;
}

.genesis-nav-menu li.highlight a:focus::before,
.genesis-nav-menu li.highlight a:hover::before {
	color: #fff;
}

.genesis-nav-menu li.highlight > a {
	font-weight: 800;
}

.front-page .genesis-nav-menu li.current-menu-item > a,
.genesis-nav-menu > li > a {
	border-bottom: 2px solid transparent;
}

.front-page .genesis-nav-menu li.current-menu-item > a:focus,
.front-page .genesis-nav-menu li.current-menu-item > a:hover,
.genesis-nav-menu li.current-menu-item > a,
.genesis-nav-menu > li > a:focus,
.genesis-nav-menu > li > a:hover {
	border-color: #fff;
}

.genesis-nav-menu > .menu-item > a {
	text-transform: uppercase;
}

.genesis-nav-menu .sub-menu {
	left: -9999px;
	letter-spacing: 0;
	opacity: 0;
	position: absolute;
	transition: opacity 0.4s ease-in-out;
	width: 200px;
	z-index: 99;
}

.genesis-nav-menu .sub-menu a {
	background-color: #111;
	outline: none;
	padding: 20px;
	position: relative;
	width: 200px;
}

.genesis-nav-menu .sub-menu a:focus,
.genesis-nav-menu .sub-menu a:hover,
.genesis-nav-menu .sub-menu li.current-menu-item > a {
	background-color: #222;
}

.genesis-nav-menu .sub-menu .sub-menu {
	margin: -54px 0 0 199px;
}

.genesis-nav-menu .menu-item:hover {
	position: static;
}

.genesis-nav-menu .menu-item:hover > .sub-menu {
	left: auto;
	opacity: 1;
}

.genesis-nav-menu > .first > a {
	padding-left: 0;
}

.genesis-nav-menu > .last > a {
	padding-right: 0;
}

.genesis-nav-menu > .right {
	color: #fff;
	display: inline-block;
	list-style-type: none;
	padding: 27px 20px;
	text-transform: uppercase;
}

.genesis-nav-menu > .right > a {
	display: inline;
	padding: 0;
}

.genesis-nav-menu > .rss > a {
	margin-left: 48px;
}

.genesis-nav-menu > .search {
	display: block;
	margin: 0 auto;
	padding: 0 20px 20px;
	width: 50%;
}

/* Primary Navigation
--------------------------------------------- */
.nav-primary {
	text-align: center;
}

.nav-primary .genesis-nav-menu {
	float: right;
}

/* Secondary Navigation
--------------------------------------------- */
.nav-secondary {
	border-bottom: 1px solid #fff;
}

/* Footer Navigation
--------------------------------------------- */
.nav-footer .genesis-nav-menu {
	padding: 6px 0;
}

.nav-footer .genesis-nav-menu a {
	border: none;
	font-weight: 800;
	letter-spacing: 3px;
	margin: 0;
	padding: 14px 25px;
}

/* Responsive Menu
--------------------------------------------- */
.menu .menu-item:focus {
	position: static;
}

.menu .menu-item > a:focus + ul.sub-menu,
.menu .menu-item.sfHover > ul.sub-menu {
	left: auto;
	opacity: 1;
}

.sub-menu-toggle,
.menu-toggle {
	display: none;
	visibility: hidden;
}

/* Content Area
---------------------------------------------------------------------------- */
/* Front Page
--------------------------------------------- */
.image-section,
.solid-section {
	clear: both;
	text-align: center;
	width: 100%;
}

.image-section {
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.5) 30%, rgba(0, 0, 0, 0.8) 80%, rgba(0, 0, 0, 0.9) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#33000000", endColorstr="#e6000000", GradientType=0);
	display: table;
	overflow: hidden;
	table-layout: fixed;
	width: 100%;
	height: 100vh;
}

.image-section .widget-area {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}

.image-section,
.image-section a {
	color: #fff;
}

.image-section a:focus,
.image-section a:hover,
.image-section .featured-content .entry-title a:focus,
.image-section .featured-content .entry-title a:hover {
	color: #0680a2;
}

.solid-section {
	background-color: #fff;
}

.front-page-2,
.front-page-3,
.front-page-4,
.front-page-5,
.front-page-6,
.front-page-7 {
	border-top: 54px solid transparent;
	margin-top: -54px;
	-webkit-background-clip: padding-box;
	-moz-background-clip: padding;
	background-clip: padding-box;
	position: relative;
	z-index: 9;
}

.front-page-1,
.front-page-3,
.front-page-5,
.front-page-7 {
	background-attachment: fixed;
	background-color: #fff;
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-size: cover;
}

.front-page-1 {
	position: relative;
}

.front-page-1 .image-section {
	padding-top: 75px;
}

.secondary-nav .front-page-1 .image-section {
	padding-top: 150px;
}

.front-page-4 .solid-section {
	background-color: #f3f3f3;
}

.bottom-image {
	margin-bottom: -120px;
	margin-top: 100px;
}

.bottom-image img {
	margin-bottom: -10px;
}

.front-page .field-wrap:last-child {
	margin-bottom: 0;
}

.small-disclaimer {
	font-size: 14px;
	font-style: italic;
}

/* Dashicons
--------------------------------------------- */
.front-page .dashicons {
	font-size: 40px;
	height: 40px;
	margin-bottom: 20px;
	width: 40px;
}

/* Flexible Widgets
--------------------------------------------- */
.flexible-widgets {
	padding-bottom: 60px;
	padding-top: 100px;
}

.flexible-widgets .widget {
	float: left;
	margin: 0 0 40px 2.564102564102564%;
}

.flexible-widgets.widget-full .widget,
.flexible-widgets.widget-area .widget:nth-of-type(1),
.flexible-widgets.widget-halves.uneven .widget:last-of-type {
	background: none;
	margin-left: 0;
	padding: 0;
	width: 100%;
}

.widget-area.flexible-widgets.widget-half .widget,
.flexible-widgets.widget-halves .widget {
	width: 48.717948717948715%;
}

.flexible-widgets.widget-thirds .widget {
	width: 31.623931623931625%;
}

.flexible-widgets.widget-fourths .widget {
	width: 23.076923076923077%;
}

.flexible-widgets.widget-halves .widget:nth-child(even),
.flexible-widgets.widget-thirds .widget:nth-child(3n+2),
.flexible-widgets.widget-fourths .widget:nth-child(4n+2) {
	clear: left;
	margin-left: 0;
}

.solid-section .widget {
	background-color: #fff;
	padding: 40px;
}

.solid-section .widget:not(:first-child) .widget-title {
	border-bottom: 1px solid #ddd;
	margin-bottom: 30px;
	padding-bottom: 30px;
}

.flexible-widgets p.large {
	font-size: 36px;
	line-height: 1;
}

.flexible-widgets p.price {
	font-size: 32px;
	font-weight: 800;
	line-height: 1.2;
	margin-bottom: 20px;
}

/* Content
--------------------------------------------- */
.content {
	float: left;
	width: 700px;
}

.page .content {
	padding-bottom: 50px;
}

.sidebar-content .content {
	float: right;
}

.full-width-content .content {
	padding: 0 200px 50px;
	width: 100%;
}

.full-width-content.front-page .content {
	padding: 0;
}

/* Entries
--------------------------------------------- */
.entry {
	margin-bottom: 100px;
}

.widget .entry {
	margin-bottom: 40px;
}

.entry-content ol,
.entry-content ul {
	margin-bottom: 30px;
	padding-left: 40px;
}

.entry-content ol > li {
	list-style-type: decimal;
}

.entry-content ul > li {
	list-style-type: disc;
}

.entry-content ol ul > li,
.entry-content ul ul > li {
	list-style-type: circle;
}

.entry-content ol ol,
.entry-content ul ul {
	margin-bottom: 0;
}

.entry-content code {
	background-color: #000;
	color: #ddd;
}

/* Entry Meta
--------------------------------------------- */
p.entry-meta {
	font-size: 20px;
	margin-bottom: 0;
}

.entry-header,
.entry-footer {
	text-align: center;
}

.entry-header p.entry-meta {
	font-weight: 700;
	letter-spacing: 2px;
	margin-bottom: 16px;
	text-transform: uppercase;
}

.entry-header::after {
	border-bottom: 1px solid #000;
	content: "";
	display: block;
	margin: 0 auto 60px;
	padding-bottom: 30px;
	width: 25%;
}

.image-section .entry-header::after {
	border-color: #fff;
}

.entry-footer::before {
	border-top: 1px solid #000;
	content: "";
	display: block;
	margin: 30px auto 0;
	padding-top: 60px;
	width: 25%;
}

.sidebar .entry-header::after {
	display: none;
}

.entry-categories::before,
.entry-tags::before {
	display: inline-block;
	font: 20px/1 dashicons;
	/* stylelint-disable-line font-family-no-missing-generic-family-keyword */
	margin-right: 5px;
	margin-top: 2px;
	vertical-align: top;
	-webkit-font-smoothing: antialiased;
}

.entry-comments-link::before {
	content: "\2014";
	margin: 0 6px 0 2px;
}

/* After Entry
--------------------------------------------- */
.after-entry {
	border-top: 1px solid #000;
	padding: 40px 0;
}

.after-entry .widget {
	margin-bottom: 40px;
}

.after-entry p:last-child,
.after-entry .widget:last-child {
	margin: 0;
}

.after-entry li {
	list-style-type: none;
}

/* Pagination
--------------------------------------------- */
.pagination {
	clear: both;
	margin: 40px 0;
}

.adjacent-entry-pagination {
	margin-bottom: 0;
}

.archive-pagination li {
	display: inline;
}

.archive-pagination li a {
	background-color: #000;
	box-shadow: 0 0 1px rgba(0, 0, 0, 0.1);
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 14px;
	letter-spacing: 1px;
	padding: 8px 12px;
	text-transform: uppercase;
}

.archive-pagination li a:focus,
.archive-pagination li a:hover,
.archive-pagination .active a {
	background-color: #0680a2;
	color: #fff;
}

/* Comments
--------------------------------------------- */
.comment-respond,
.entry-comments,
.entry-pings {
	margin-bottom: 100px;
}

p.comment-meta,
.entry-comments .comment,
.entry-comments .comment-reply {
	margin-bottom: 40px;
}

.comment-header {
	font-size: 20px;
}

.entry-comments .comment {
	border-bottom: 1px solid #000;
}

.comment-content,
.entry-comments .comment {
	clear: both;
}

p.form-submit,
.entry-comments .children .comment,
.entry-comments .comment-author {
	margin: 0;
}

.entry-comments .children .comment {
	border: none;
}

.comment-respond label {
	display: block;
	font-weight: 800;
}

.comment-respond input[type="email"],
.comment-respond input[type="text"],
.comment-respond input[type="url"] {
	width: 100%;
}

.comment-list li,
.ping-list li {
	list-style-type: none;
}

.entry-comments ul.children {
	margin-left: 40px;
}

.ping-list .reply {
	display: none;
}

/* Sidebar
---------------------------------------------------------------------------- */
.sidebar {
	float: right;
	width: 360px;
}

.sidebar-content .sidebar {
	float: left;
}

.sidebar p:last-child {
	margin-bottom: 0;
}

.sidebar li {
	list-style-type: none;
	margin-bottom: 6px;
	word-wrap: break-word;
}

.sidebar ul > li:last-child {
	margin-bottom: 0;
}

.sidebar .widget {
	margin-bottom: 40px;
}

/* Footer Widgets
---------------------------------------------------------------------------- */
.footer-widgets {
	background-color: #0680a2;
	clear: both;
	text-align: center;
	position: relative;
	z-index: 9;
}

.footer-widgets .wrap {
	padding-bottom: 100px;
	padding-top: 100px;
}

.footer-widgets,
.footer-widgets .wrap a,
.footer-widgets .wrap a.button {
	color: #fff;
}

.footer-widgets a:focus,
.footer-widgets a:hover {
	color: #000;
}

.footer-widgets li {
	margin-bottom: 10px;
	padding-bottom: 10px;
}

.footer-widgets .widget {
	margin-bottom: 40px;
}

.footer-widgets p:last-child {
	margin-bottom: 0;
}

/* Site Footer
---------------------------------------------------------------------------- */
.site-footer {
	background-color: #000;
	padding: 20px;
	text-align: center;
}

.site-footer,
.site-footer a,
.site-footer p {
	color: #fff;
}

.site-footer a:focus,
.site-footer a:hover {
	color: #0680a2;
}

.site-footer p {
	font-size: 14px;
	letter-spacing: 1px;
	margin-bottom: 0;
	text-transform: uppercase;
}

/* Media Queries
---------------------------------------------------------------------------- */
@media only screen and (max-width: 1280px) {
	.site-inner,
	.wrap {
		max-width: 1140px;
	}
}

@media only screen and (max-width: 1200px) {
	.site-inner,
	.wrap {
		max-width: 960px;
	}
	.site-header .widget-area {
		width: 580px;
	}
	.content {
		width: 520px;
	}
	.full-width-content .content {
		padding: 0 110px;
	}
	.genesis-nav-menu a {
		padding: 30px 10px;
	}
	html:not([data-scroll="0"]) .site-header .genesis-nav-menu a {
		padding: 20px 10px;
	}
	.front-page-1,
	.front-page-3,
	.front-page-5,
	.front-page-7 {
		background-attachment: scroll;
	}
}

@media only screen and (max-width: 1023px) {
	.site-inner,
	.wrap {
		max-width: 768px;
	}
	.secondary-nav .site-inner {
		margin-top: 80px;
	}
	.front-page .site-inner {
		max-width: none;
	}
	.site-header {
		position: static;
	}
	.front-page .site-header {
		background-color: #000;
	}
	.front-page .site-header > .wrap {
		border: none;
	}
	.content,
	.sidebar,
	.site-header .widget-area,
	.title-area {
		width: 100%;
	}
	.site-header .title-area,
	html:not([data-scroll="0"]) .site-header .title-area {
		padding: 15px 0;
	}
	html:not([data-scroll="0"]) .header-image .site-title > a {
		height: 76px;
	}
	.genesis-nav-menu,
	.site-header .widget-area,
	.site-title {
		text-align: center;
	}
	.header-image .site-title > a {
		background-position: center !important;
	}
	.nav-primary .genesis-nav-menu {
		float: none;
	}
	.nav-secondary,
	html:not([data-scroll="0"]) .site-header .nav-secondary {
		border-bottom: none;
	}
	.genesis-nav-menu a,
	html:not([data-scroll="0"]) .site-header .genesis-nav-menu a {
		padding: 10px;
	}
	.front-page .site-inner {
		margin-top: 0;
	}
	.site-inner {
		margin-top: 80px;
	}
	.full-width-content .content {
		padding: 0;
	}
	.full-width-content img.pull-left {
		margin-left: 0;
	}
	.full-width-content img.pull-right {
		margin-right: 0;
	}
	.five-sixths,
	.four-sixths,
	.one-fourth,
	.one-half,
	.one-sixth,
	.one-third,
	.three-fourths,
	.three-sixths,
	.two-fourths,
	.two-sixths,
	.two-thirds {
		margin: 0;
		width: 100%;
	}
	.flexible-widgets.widget-full .widget,
	.flexible-widgets.widget-halves .widget,
	.flexible-widgets.widget-thirds .widget,
	.flexible-widgets.widget-fourths .widget {
		margin: 0 auto 20px;
		width: 100%;
	}
	.front-page-1 .widget:first-of-type h4,
	.front-page-2 .widget:first-of-type h4 {
		font-size: 60px;
	}
	.front-page-1 .image-section,
	.secondary-nav .front-page-1 .image-section {
		padding-top: 0;
	}
}

@media only screen and (max-width: 800px) {
	.site-inner,
	.wrap {
		max-width: none;
		width: 100%;
	}
	.site-inner,
	.wrap {
		padding: 0 5%;
	}
	.front-page .site-inner {
		padding: 0;
	}
	/* Genesis Responsive Menus */
	nav.nav-primary {
		top: 0;
	}
	.site-header nav .wrap {
		padding: 0;
	}
	nav.genesis-responsive-menu {
		display: none;
		position: relative;
	}
	.js .site-header .nav-primary,
	.js .site-header .nav-secondary {
		display: none;
	}
	.site-header .nav-primary {
		width: 100%;
	}
	.genesis-skip-link .skip-link-hidden {
		display: none;
		visibility: hidden;
	}
	.site-header .dashicons-before::before {
		transition: none;
	}
	.menu-toggle,
	.sub-menu-toggle {
		border-width: 0;
		background: #000;
		color: #fff;
		display: block;
		margin: 0 auto;
		overflow: hidden;
		text-align: center;
		visibility: visible;
	}
	.menu-toggle:focus,
	.menu-toggle:hover,
	.sub-menu-toggle:focus,
	.sub-menu-toggle:hover {
		background-color: transparent;
		color: #fff;
		border-width: 0;
		opacity: 0.8;
	}
	.menu-toggle:focus,
	.sub-menu-toggle:focus {
		outline: 1px solid #ccc;
		outline-offset: -1px;
	}
	.menu-toggle {
		line-height: 20px;
		height: 50px;
		margin-bottom: 1px;
		position: relative;
		z-index: 1000;
		width: 100%;
	}
	.menu-toggle::before,
	.menu-toggle.activated::before {
		margin-right: 10px;
		text-rendering: auto;
	}
	.sub-menu-toggle {
		float: right;
		padding: 10px;
		position: absolute;
		right: 0;
		top: 0;
		z-index: 100;
	}
	.sub-menu-toggle::before {
		display: inline-block;
		text-rendering: auto;
		transform: rotate(0);
		transition: transform 0.25s ease-in-out;
	}
	.sub-menu-toggle.activated::before {
		transform: rotate(180deg);
	}
	.genesis-responsive-menu .genesis-nav-menu .menu-item a,
	.genesis-responsive-menu .genesis-nav-menu .menu-item a:focus,
	.genesis-responsive-menu .genesis-nav-menu .menu-item a:hover {
		background-color: transparent;
		border-bottom: 0;
		margin-bottom: 1px;
	}
	.genesis-responsive-menu .genesis-nav-menu .menu-item a {
		outline-color: #fff;
	}
	.genesis-responsive-menu .genesis-nav-menu .menu-item a:focus,
	.genesis-responsive-menu .genesis-nav-menu .menu-item a:hover {
		text-decoration: underline;
	}
	.genesis-responsive-menu .genesis-nav-menu .menu-item a:focus {
		outline: 1px solid #fff;
	}
	.genesis-responsive-menu .genesis-nav-menu .menu-item {
		display: block;
		float: none;
		position: relative;
		text-align: left;
	}
	.genesis-responsive-menu .genesis-nav-menu .menu-item:focus,
	.genesis-responsive-menu .genesis-nav-menu .menu-item:hover {
		position: relative;
	}
	.front-page .genesis-responsive-menu .genesis-nav-menu li.current-menu-item > a,
	.genesis-responsive-menu .genesis-nav-menu > li > a,
	.genesis-responsive-menu .genesis-nav-menu .menu-item a {
		border: 0;
	}
	.genesis-responsive-menu .genesis-nav-menu .menu-item a {
		padding: 15px 20px;
		width: 100%;
	}
	.genesis-responsive-menu .genesis-nav-menu .sub-menu {
		border: none;
	}
	.genesis-responsive-menu .genesis-nav-menu .menu-item > a:focus ul.sub-menu,
	.genesis-responsive-menu .genesis-nav-menu .menu-item > a:focus ul.sub-menu .sub-menu {
		left: 0;
		margin-left: 0;
	}
	.genesis-responsive-menu .genesis-nav-menu > .menu-item-has-children > a::after {
		content: none;
	}
	.genesis-responsive-menu .genesis-nav-menu .sub-menu {
		clear: both;
		display: none;
		margin: 0;
		opacity: 1;
		padding-left: 15px;
		position: static;
		width: 100%;
	}
	.genesis-responsive-menu .genesis-nav-menu .sub-menu .sub-menu {
		margin: 0;
	}
	.altitude-home .simple-social-icons ul li {
		margin: 0 20px 20px !important;
	}
	.footer-widgets .wrap {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.front-page-2,
	.front-page-3,
	.front-page-4,
	.front-page-5,
	.front-page-6,
	.front-page-7 {
		border-top: 0;
		margin-top: 0;
	}
	.image-section .flexible-widgets {
		padding-bottom: 80px;
	}
	.solid-section .flexible-widgets {
		padding-bottom: 40px;
		padding-top: 60px;
	}
	.bottom-image {
		margin-top: 60px;
		margin-bottom: -80px;
	}
}

@media only screen and (max-width: 480px) {
	.front-page-1 .widget:first-of-type h4,
	.front-page-2 .widget:first-of-type h4 {
		font-size: 40px;
	}
}

/* ============================================================
   LOVIN2LEARN CUSTOMIZATION - START
   ============================================================ */


/* ============================================================
   1. ANNOUNCEMENT BAR
   ============================================================ */

.announcement-bar {
	background-color: #5b2aa5;
	color: #ffffff;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
	padding: 8px 20px;
	position: relative;
	text-align: center;
	z-index: 1000;
}

.announcement-bar .wrap {
	float: none;
	margin: 0 auto;
	max-width: 1200px;
	padding: 0;
}

.announcement-message,
.announcement-hours {
	display: inline-block;
}

.announcement-separator {
	display: inline-block;
	margin: 0 12px;
	opacity: 0.65;
}


/* ============================================================
   2. FRONT PAGE 1 / HERO
   Override Altitude Pro's original full-screen parallax hero
   ============================================================ */


/*
 * Remove the forest/parallax background from Front Page 1.
 */
.front-page-1 {
	background: #ffffff !important;
	background-attachment: scroll !important;
	background-color: #ffffff !important;
	background-image: none !important;
	background-position: initial !important;
	background-repeat: no-repeat !important;
	background-size: auto !important;
	min-height: 0 !important;
	position: relative;
}


/*
 * Altitude normally turns image-section into a dark,
 * full-screen 100vh section. We don't want that.
 */
.front-page-1 .image-section {
	background: #ffffff !important;
	color: #17224d !important;
	display: block !important;
	filter: none !important;
	height: auto !important;
	min-height: 0 !important;
	overflow: visible !important;
	padding: 0 !important;
	table-layout: auto !important;
}


/*
 * Remove Altitude's table-cell vertical centering.
 */
.front-page-1 .image-section .widget-area {
	display: block !important;
	text-align: left;
	vertical-align: initial;
}


/*
 * Remove Altitude's default widget-area padding
 * from Front Page 1.
 */
.front-page-1 .flexible-widgets {
	margin: 0;
	max-width: none;
	padding: 0 !important;
	width: 100%;
}


/*
 * Remove inherited Altitude widget spacing.
 */
.front-page-1 .flexible-widgets .widget,
.front-page-1 .flexible-widgets.widget-full .widget,
.front-page-1 .flexible-widgets.widget-area .widget:nth-of-type(1) {
	background: none !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}


.front-page-1 .widget-wrap {
	margin: 0;
	padding: 0;
	width: 100%;
}


/*
 * Remove Altitude's special white text behavior
 * from our custom hero.
 */
.front-page-1 .l2l-hero,
.front-page-1 .l2l-hero p,
.front-page-1 .l2l-hero h1 {
	color: #17224d;
}


/* ============================================================
   3. LOVIN2LEARN HERO STRUCTURE
   ============================================================ */

.l2l-hero {
	background-color: #ffffff;
	padding: 75px 30px 70px;
	width: 100%;
}

.l2l-hero-content {
	align-items: center;
	display: grid;
	gap: 65px;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	margin: 0 auto;
	max-width: 1160px;
}


/* ------------------------------------------------------------
   Hero Copy
   ------------------------------------------------------------ */

.l2l-hero-copy {
	text-align: left;
}

.l2l-hero h1 {
	color: #17224d !important;
	font-size: clamp(46px, 4.5vw, 66px) !important;
	font-weight: 700 !important;
	letter-spacing: -1.5px !important;
	line-height: 1.06 !important;
	margin: 0 0 25px !important;
	padding: 0;
	text-align: left;
	text-transform: none !important;
}

.l2l-hero h1 span {
	color: #5b2aa5 !important;
}

.l2l-hero p {
	color: #4a4a4a !important;
	font-size: 19px;
	font-weight: 300;
	line-height: 1.6;
	margin: 0;
	max-width: 500px;
	text-align: left;
}


/* ------------------------------------------------------------
   Hero Image
   ------------------------------------------------------------ */

.l2l-hero-image {
	width: 100%;
}

.l2l-hero-image img {
	border-radius: 18px;
	box-shadow: 0 12px 40px rgba(26, 22, 49, 0.08);
	display: block;
	height: auto;
	margin: 0;
	object-fit: cover;
	width: 100%;
}


/* ============================================================
   4. HERO BUTTONS
   ============================================================ */

.hero-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 30px;
}


/*
 * Override Altitude's global uppercase button styling.
 */
.l2l-hero .button {
	border-radius: 6px;
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.2;
	margin: 0;
	padding: 14px 23px;
	text-align: center;
	text-decoration: none;
	text-transform: none;
}


/* Purple Primary Button */

.l2l-hero .button-primary,
.l2l-hero .button-primary:visited {
	background-color: #5b2aa5 !important;
	border: 2px solid #5b2aa5 !important;
	color: #ffffff !important;
}

.l2l-hero .button-primary:hover,
.l2l-hero .button-primary:focus {
	background-color: #45207e !important;
	border-color: #45207e !important;
	color: #ffffff !important;
}


/* Blue Outline Secondary Button */

.l2l-hero .button-secondary,
.l2l-hero .button-secondary:visited {
	background-color: #ffffff !important;
	border: 2px solid #1675c1 !important;
	color: #1675c1 !important;
}

.l2l-hero .button-secondary:hover,
.l2l-hero .button-secondary:focus {
	background-color: #1675c1 !important;
	border-color: #1675c1 !important;
	color: #ffffff !important;
}


/*
 * Altitude normally adds margins to buttons inside
 * image sections. Remove them for our hero.
 */
.front-page-1 .image-section .l2l-hero .button {
	margin: 0 !important;
}


/* ============================================================
   5. ANNOUNCEMENT BAR - MOBILE
   ============================================================ */

@media only screen and (max-width: 600px) {

	.announcement-bar {
		font-size: 12px;
		padding: 7px 12px;
	}

	.announcement-bar .wrap {
		padding: 0;
	}

	.announcement-separator {
		margin: 0 7px;
	}

}


/* ============================================================
   6. HERO - SMALL DESKTOP / TABLET
   ============================================================ */

@media only screen and (max-width: 1023px) {

	.l2l-hero {
		padding: 60px 30px;
	}

	.l2l-hero-content {
		gap: 40px;
		grid-template-columns: 1fr 1fr;
	}

	.l2l-hero h1 {
		font-size: 46px !important;
	}

}


/* ============================================================
   7. HERO - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-hero {
		padding: 45px 22px;
	}

	.l2l-hero-content {
		gap: 35px;
		grid-template-columns: 1fr;
	}

	.l2l-hero-copy {
		text-align: center;
	}

	.l2l-hero h1 {
		margin-left: auto !important;
		margin-right: auto !important;
		text-align: center;
	}

	.l2l-hero p {
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}

	.hero-buttons {
		justify-content: center;
	}

	.l2l-hero-image {
		margin-top: 5px;
	}

}


/* ============================================================
   8. HERO - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-hero {
		padding: 40px 20px;
	}

	.l2l-hero h1 {
		font-size: 39px !important;
		letter-spacing: -0.75px !important;
	}

	.l2l-hero p {
		font-size: 17px;
	}

	.hero-buttons {
		flex-direction: column;
		width: 100%;
	}

	.l2l-hero .button {
		display: block;
		width: 100%;
	}

}

/* ============================================================
   LOVIN2LEARN HEADER + NAVIGATION
   ============================================================ */

/* Replace Altitude's dark header with white */

.site-header,
.featured-section .site-header,
.front-page .site-header,
html:not([data-scroll="0"]) .site-header {
	background: #ffffff !important;
	background-color: #ffffff !important;
	border: 0 !important;
	box-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
	position: relative !important;
}


/* Header layout */

.site-header > .wrap {
	align-items: center;
	border-bottom: 0 !important;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1200px;
	padding: 14px 30px;
}


/* ============================================================
   SITE TITLE / FUTURE LOGO
   ============================================================ */

.title-area,
html:not([data-scroll="0"]) .site-header .title-area {
	float: none !important;
	padding: 0 !important;
	width: 300px;
}

.site-title {
	font-size: 21px;
	font-weight: 700;
	letter-spacing: 1px;
	line-height: 1.1;
	margin: 0;
	text-transform: none;
}

.site-title a,
.site-title a:visited,
.site-title a:hover,
.site-title a:focus {
	color: #17224d !important;
}


/* When the logo is uploaded later */

.header-image .site-title > a,
html:not([data-scroll="0"]) .header-image .site-title > a {
	background-position: left center !important;
	background-repeat: no-repeat !important;
	background-size: contain !important;
	height: 70px !important;
	max-width: 285px;
	width: 100%;
}


/* ============================================================
   NAVIGATION
   ============================================================ */

.nav-primary {
	margin-left: auto;
	text-align: right;
}

.nav-primary .genesis-nav-menu {
	align-items: center;
	display: flex;
	float: none !important;
	margin: 0;
}

.genesis-nav-menu .menu-item {
	margin: 0;
}

.genesis-nav-menu a,
html:not([data-scroll="0"]) .site-header .genesis-nav-menu a {
	background: transparent !important;
	border: 0 !important;
	color: #17224d !important;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0;
	padding: 14px 13px;
	text-transform: none;
}


/* Normal menu hover/current */

.front-page .genesis-nav-menu li.current-menu-item > a,
.genesis-nav-menu li.current-menu-item > a,
.genesis-nav-menu > li > a:hover,
.genesis-nav-menu > li > a:focus {
	border: 0 !important;
	color: #5b2aa5 !important;
}


/* ============================================================
   SCHEDULE A VISIT CTA
   ============================================================ */

.genesis-nav-menu li.menu-cta > a,
.genesis-nav-menu li.menu-cta > a:visited {
	background: #5b2aa5 !important;
	border: 2px solid #5b2aa5 !important;
	border-radius: 6px !important;
	color: #ffffff !important;
	margin-left: 10px;
	padding: 12px 20px !important;
}

.genesis-nav-menu li.menu-cta > a:hover,
.genesis-nav-menu li.menu-cta > a:focus {
	background: #45207e !important;
	border-color: #45207e !important;
	color: #ffffff !important;
}


/* ============================================================
   TABLET
   ============================================================ */

@media only screen and (max-width: 1023px) {

	.site-header > .wrap {
		display: block;
		padding: 12px 5%;
	}

	.title-area,
	html:not([data-scroll="0"]) .site-header .title-area {
		margin: 0 auto;
		text-align: center;
		width: 100%;
	}

	.header-image .site-title > a,
	html:not([data-scroll="0"]) .header-image .site-title > a {
		background-position: center !important;
		margin: 0 auto;
		max-width: 250px;
	}

	.nav-primary {
		margin-left: 0;
		text-align: center;
	}

	.nav-primary .genesis-nav-menu {
		display: block;
	}

}


/* ============================================================
   MOBILE MENU
   ============================================================ */

@media only screen and (max-width: 800px) {

	.menu-toggle,
	.sub-menu-toggle {
		background: #ffffff !important;
		color: #17224d !important;
	}

	.menu-toggle:hover,
	.menu-toggle:focus,
	.sub-menu-toggle:hover,
	.sub-menu-toggle:focus {
		background: #ffffff !important;
		color: #5b2aa5 !important;
	}

	.genesis-responsive-menu {
		background: #ffffff;
	}

	.genesis-responsive-menu .genesis-nav-menu .menu-item a {
		color: #17224d !important;
		text-align: center;
	}

	.genesis-responsive-menu .genesis-nav-menu li.menu-cta > a {
		margin: 10px 20px;
	}

}

/* ============================================================
   TRUST STRIP
   ============================================================ */


/*
 * Remove Altitude's default large spacing from Front Page 2.
 */

.front-page-2 {
	background: #ffffff !important;
	border-top: 0 !important;
	margin-top: 0 !important;
}

.front-page-2 .solid-section,
.front-page-2 .image-section {
	background: #ffffff !important;
}

.front-page-2 .flexible-widgets {
	padding-bottom: 35px !important;
	padding-top: 0 !important;
}

.front-page-2 .flexible-widgets .widget:first-child {
	background: transparent !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}


/* ------------------------------------------------------------
   Main Trust Strip
   ------------------------------------------------------------ */

.l2l-trust-strip {
	background: #ffffff;
	padding: 0 30px 45px;
	width: 100%;
}

.l2l-trust-grid {
	background: #ffffff;
	border: 1px solid #e9e9ef;
	border-radius: 14px;
	box-shadow: 0 8px 30px rgba(23, 34, 77, 0.05);
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	margin: 0 auto;
	max-width: 1160px;
	overflow: hidden;
}


/* Individual trust items */

.l2l-trust-item {
	align-items: center;
	border-right: 1px solid #e9e9ef;
	display: flex;
	gap: 14px;
	justify-content: center;
	min-height: 105px;
	padding: 22px 18px;
	text-align: left;
}

.l2l-trust-item:last-child {
	border-right: 0;
}


/* ------------------------------------------------------------
   Icons
   ------------------------------------------------------------ */

.l2l-trust-icon {
	align-items: center;
	border-radius: 50%;
	display: flex;
	flex: 0 0 46px;
	height: 46px;
	justify-content: center;
	width: 46px;
}

.l2l-trust-icon .dashicons {
	font-size: 25px;
	height: 25px;
	line-height: 25px;
	width: 25px;
}

.trust-cross {
	font-size: 28px;
	font-weight: 700;
	line-height: 1;
}


/* Brand-color icon circles */

.trust-purple {
	background: #f2ebfb;
	color: #5b2aa5;
}

.trust-blue {
	background: #eaf5ff;
	color: #1675c1;
}

.trust-green {
	background: #eef8e7;
	color: #69ae25;
}

.trust-gold {
	background: #fff6dc;
	color: #edae00;
}

.trust-red {
	background: #fff0f0;
	color: #e2292f;
}


/* ------------------------------------------------------------
   Trust Text
   ------------------------------------------------------------ */

.l2l-trust-text {
	line-height: 1.2;
}

.l2l-trust-text strong {
	color: #17224d;
	display: block;
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 4px;
}

.l2l-trust-text span {
	color: #686868;
	display: block;
	font-size: 14px;
	font-weight: 400;
}


/* ============================================================
   TRUST STRIP - TABLET
   ============================================================ */

@media only screen and (max-width: 1023px) {

	.l2l-trust-grid {
		grid-template-columns: repeat(3, 1fr);
	}

	.l2l-trust-item {
		border-bottom: 1px solid #e9e9ef;
	}

	.l2l-trust-item:nth-child(3) {
		border-right: 0;
	}

	.l2l-trust-item:nth-child(4),
	.l2l-trust-item:nth-child(5) {
		border-bottom: 0;
	}

}


/* ============================================================
   TRUST STRIP - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-trust-strip {
		padding: 0 22px 35px;
	}

	.l2l-trust-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.l2l-trust-item {
		border-bottom: 1px solid #e9e9ef;
		border-right: 1px solid #e9e9ef;
		justify-content: flex-start;
		min-height: 95px;
		padding: 18px;
	}

	.l2l-trust-item:nth-child(even) {
		border-right: 0;
	}

	.l2l-trust-item:nth-child(3) {
		border-right: 1px solid #e9e9ef;
	}

	.l2l-trust-item:nth-child(4) {
		border-bottom: 1px solid #e9e9ef;
	}

	.l2l-trust-item:last-child {
		border-bottom: 0;
		border-right: 0;
		grid-column: 1 / -1;
		justify-content: center;
	}

}


/* ============================================================
   TRUST STRIP - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-trust-grid {
		grid-template-columns: 1fr;
	}

	.l2l-trust-item,
	.l2l-trust-item:nth-child(3),
	.l2l-trust-item:nth-child(4),
	.l2l-trust-item:nth-child(even) {
		border-bottom: 1px solid #e9e9ef;
		border-right: 0;
	}

	.l2l-trust-item:last-child {
		border-bottom: 0;
		grid-column: auto;
		justify-content: flex-start;
	}

}

/* ============================================================
   5. WELCOME / ABOUT
   ============================================================ */

.l2l-welcome {
	background-color: #fafafd;
	padding: 90px 30px;
	width: 100%;
}

.l2l-welcome-inner {
	align-items: center;
	display: grid;
	gap: 70px;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	margin: 0 auto;
	max-width: 1160px;
}


/* ============================================================
   WELCOME IMAGE
   ============================================================ */

.l2l-welcome-image {
	width: 100%;
}

.l2l-welcome-image img {
	aspect-ratio: 4 / 3;
	border-radius: 18px;
	box-shadow: 0 12px 35px rgba(23, 34, 77, 0.08);
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}


/*
 * Temporary placeholder.
 * Delete this once the real image is added.
 */

.l2l-image-placeholder {
	align-items: center;
	aspect-ratio: 4 / 3;
	background:
		linear-gradient(
			135deg,
			#f2f4f8 0%,
			#fafafd 100%
		);
	border: 1px solid #e5e7ed;
	border-radius: 18px;
	color: #9a9ca5;
	display: flex;
	font-size: 15px;
	font-weight: 600;
	justify-content: center;
	letter-spacing: 0.5px;
	width: 100%;
}


/* ============================================================
   WELCOME COPY
   ============================================================ */

.l2l-welcome-copy {
	max-width: 520px;
}

.l2l-eyebrow {
	color: #5b2aa5;
	display: block;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 2px;
	line-height: 1.2;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.l2l-welcome-copy h2 {
	color: #17224d;
	font-size: 44px;
	font-weight: 700;
	letter-spacing: -0.75px;
	line-height: 1.1;
	margin: 0 0 22px;
}

.l2l-welcome-copy p {
	color: #606060;
	font-size: 18px;
	font-weight: 300;
	line-height: 1.7;
	margin-bottom: 20px;
}

.l2l-welcome-copy .l2l-welcome-lead {
	color: #3f3f45;
	font-size: 19px;
}


/* ============================================================
   WELCOME BUTTON
   ============================================================ */

.l2l-button-primary,
.l2l-button-primary:visited {
	background-color: #5b2aa5;
	border: 2px solid #5b2aa5;
	border-radius: 6px;
	color: #ffffff !important;
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0;
	margin-top: 8px;
	padding: 13px 22px;
	text-decoration: none;
	text-transform: none;
}

.l2l-button-primary:hover,
.l2l-button-primary:focus {
	background-color: #45207e;
	border-color: #45207e;
	color: #ffffff !important;
}


/* ============================================================
   WELCOME - TABLET
   ============================================================ */

@media only screen and (max-width: 900px) {

	.l2l-welcome {
		padding: 70px 30px;
	}

	.l2l-welcome-inner {
		gap: 45px;
	}

	.l2l-welcome-copy h2 {
		font-size: 38px;
	}

	.l2l-welcome-copy p,
	.l2l-welcome-copy .l2l-welcome-lead {
		font-size: 17px;
	}

}


/* ============================================================
   WELCOME - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-welcome {
		padding: 55px 22px;
	}

	.l2l-welcome-inner {
		grid-template-columns: 1fr;
		gap: 38px;
	}

	.l2l-welcome-copy {
		margin: 0 auto;
		max-width: 600px;
		text-align: center;
	}

	.l2l-welcome-copy h2 {
		font-size: 36px;
	}

	.l2l-welcome-copy p {
		margin-left: auto;
		margin-right: auto;
	}

}


/* ============================================================
   WELCOME - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-welcome {
		padding: 45px 20px;
	}

	.l2l-welcome-copy h2 {
		font-size: 32px;
	}

	.l2l-welcome-copy p,
	.l2l-welcome-copy .l2l-welcome-lead {
		font-size: 16px;
	}

	.l2l-button-primary {
		text-align: center;
		width: 100%;
	}

}

/* ============================================================
   6. PROGRAMS & TUITION
   ============================================================ */


/*
 * Front Page 3 is one of Altitude Pro's original
 * parallax/image sections. Convert it to a normal
 * modern content section.
 */

.front-page-3 {
	background: #ffffff !important;
	background-attachment: scroll !important;
	background-image: none !important;
	border-top: 0 !important;
	margin-top: 0 !important;
	min-height: 0 !important;
}

.front-page-3 .image-section {
	background: #ffffff !important;
	color: #17224d !important;
	display: block !important;
	filter: none !important;
	height: auto !important;
	min-height: 0 !important;
	overflow: visible !important;
	padding: 0 !important;
	table-layout: auto !important;
}

.front-page-3 .image-section .widget-area {
	display: block !important;
	text-align: left;
	vertical-align: initial;
}

.front-page-3 .flexible-widgets {
	margin: 0;
	max-width: none;
	padding: 0 !important;
	width: 100%;
}

.front-page-3 .flexible-widgets .widget,
.front-page-3 .flexible-widgets.widget-full .widget,
.front-page-3 .flexible-widgets.widget-area .widget:nth-of-type(1) {
	background: none !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.front-page-3 .widget-wrap {
	margin: 0;
	padding: 0;
	width: 100%;
}


/* ============================================================
   PROGRAMS SECTION
   ============================================================ */

.l2l-programs {
	background: #ffffff;
	padding: 90px 30px;
	width: 100%;
}

.l2l-programs-inner {
	margin: 0 auto;
	max-width: 1160px;
}


/* ------------------------------------------------------------
   Section Heading
   ------------------------------------------------------------ */

.l2l-section-heading {
	margin: 0 auto 48px;
	max-width: 720px;
	text-align: center;
}

.l2l-section-heading h2 {
	color: #17224d;
	font-size: 44px;
	font-weight: 700;
	letter-spacing: -0.75px;
	line-height: 1.1;
	margin: 0 0 18px;
	text-transform: none;
}

.l2l-section-heading p {
	color: #666666;
	font-size: 18px;
	font-weight: 300;
	line-height: 1.65;
	margin: 0;
}


/* ============================================================
   PROGRAM CARDS
   ============================================================ */

.l2l-program-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, 1fr);
}

.l2l-program-card {
	background: #ffffff;
	border: 1px solid #e8e9ef;
	border-radius: 16px;
	box-shadow: 0 8px 28px rgba(23, 34, 77, 0.05);
	display: flex;
	flex-direction: column;
	padding: 34px 30px 30px;
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease;
}

.l2l-program-card:hover {
	box-shadow: 0 14px 36px rgba(23, 34, 77, 0.09);
	transform: translateY(-3px);
}


/* ------------------------------------------------------------
   Age Badges
   ------------------------------------------------------------ */

.l2l-age-badge {
	align-items: center;
	border-radius: 50%;
	display: flex;
	font-size: 24px;
	font-weight: 800;
	height: 52px;
	justify-content: center;
	margin-bottom: 22px;
	width: 52px;
}

.age-purple {
	background: #f1eafa;
	color: #5b2aa5;
}

.age-blue {
	background: #e9f5ff;
	color: #1675c1;
}

.age-green {
	background: #edf7e7;
	color: #64a925;
}


/* ------------------------------------------------------------
   Program Typography
   ------------------------------------------------------------ */

.l2l-program-card h3 {
	color: #17224d;
	font-size: 27px;
	font-weight: 700;
	line-height: 1.15;
	margin: 0 0 8px;
	text-transform: none;
}

.l2l-program-subtitle {
	color: #5b2aa5 !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	margin-bottom: 18px !important;
}

.l2l-program-card > p:not(.l2l-program-subtitle) {
	color: #666666 !important;
	font-size: 16px !important;
	font-weight: 300;
	line-height: 1.65 !important;
	margin-bottom: 24px !important;
}


/* ============================================================
   PRICING
   ============================================================ */

.l2l-program-price {
	align-items: baseline;
	border-top: 1px solid #eeeeF2;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: auto;
	padding-top: 22px;
}

.l2l-program-price span {
	color: #777777;
	font-size: 13px;
	font-weight: 600;
	margin-right: 7px;
	text-transform: uppercase;
}

.l2l-program-price strong {
	color: #17224d;
	font-size: 28px;
	font-weight: 800;
	line-height: 1;
}

.l2l-program-price small {
	color: #777777;
	font-size: 14px;
}


/* ------------------------------------------------------------
   Program Links
   ------------------------------------------------------------ */

.l2l-program-link,
.l2l-program-link:visited {
	color: #1675c1 !important;
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	margin-top: 20px;
}

.l2l-program-link:hover,
.l2l-program-link:focus {
	color: #5b2aa5 !important;
}


/* ============================================================
   PART-TIME CALLOUT
   ============================================================ */

.l2l-part-time {
	align-items: center;
	background: #fafafd;
	border: 1px solid #ececf2;
	border-radius: 14px;
	display: flex;
	gap: 18px;
	margin: 28px auto 0;
	max-width: 760px;
	padding: 20px 26px;
}

.l2l-part-time-icon {
	align-items: center;
	background: #fff6dc;
	border-radius: 50%;
	color: #e5a800;
	display: flex;
	flex: 0 0 46px;
	height: 46px;
	justify-content: center;
	width: 46px;
}

.l2l-part-time-icon .dashicons {
	font-size: 24px;
	height: 24px;
	width: 24px;
}

.l2l-part-time strong {
	color: #17224d;
	display: block;
	font-size: 16px;
	font-weight: 700;
	margin-bottom: 3px;
}

.l2l-part-time span {
	color: #6c6c72;
	display: block;
	font-size: 14px;
	line-height: 1.5;
}


/* ============================================================
   PROGRAMS - TABLET
   ============================================================ */

@media only screen and (max-width: 900px) {

	.l2l-programs {
		padding: 70px 30px;
	}

	.l2l-program-grid {
		gap: 18px;
	}

	.l2l-program-card {
		padding: 28px 24px;
	}

	.l2l-program-card h3 {
		font-size: 24px;
	}

}


/* ============================================================
   PROGRAMS - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-programs {
		padding: 55px 22px;
	}

	.l2l-program-grid {
		grid-template-columns: 1fr;
	}

	.l2l-section-heading {
		margin-bottom: 35px;
	}

	.l2l-section-heading h2 {
		font-size: 36px;
	}

	.l2l-program-card {
		margin: 0 auto;
		max-width: 520px;
		width: 100%;
	}

	.l2l-part-time {
		align-items: flex-start;
	}

}


/* ============================================================
   PROGRAMS - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-programs {
		padding: 45px 20px;
	}

	.l2l-section-heading h2 {
		font-size: 32px;
	}

	.l2l-section-heading p {
		font-size: 16px;
	}

	.l2l-part-time {
		padding: 18px;
	}

}

/* ============================================================
   7. WHAT WE FOCUS ON
   ============================================================ */

.l2l-focus {
	background: #fafafd;
	padding: 85px 30px 90px;
	width: 100%;
}

.l2l-focus-inner {
	margin: 0 auto;
	max-width: 1160px;
}


/* ============================================================
   FOCUS GRID
   ============================================================ */

.l2l-focus-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(3, 1fr);
}


/* ============================================================
   FOCUS CARDS
   ============================================================ */

.l2l-focus-card {
	align-items: flex-start;
	background: #ffffff;
	border: 1px solid #e9eaf0;
	border-radius: 14px;
	display: flex;
	gap: 18px;
	min-height: 145px;
	padding: 26px 24px;
	transition:
		box-shadow 0.2s ease,
		transform 0.2s ease;
}

.l2l-focus-card:hover {
	box-shadow: 0 10px 30px rgba(23, 34, 77, 0.07);
	transform: translateY(-2px);
}


/* ============================================================
   FOCUS ICONS
   ============================================================ */

.l2l-focus-icon {
	align-items: center;
	border-radius: 50%;
	display: flex;
	flex: 0 0 52px;
	height: 52px;
	justify-content: center;
	width: 52px;
}

.l2l-focus-icon .dashicons {
	font-size: 27px;
	height: 27px;
	line-height: 27px;
	width: 27px;
}

.focus-number {
	font-size: 16px;
	font-weight: 800;
	letter-spacing: -0.5px;
}

.focus-cross {
	font-size: 29px;
	font-weight: 700;
	line-height: 1;
}


/* ------------------------------------------------------------
   Icon Colors
   ------------------------------------------------------------ */

.focus-purple {
	background: #f1eafa;
	color: #5b2aa5;
}

.focus-blue {
	background: #e8f4ff;
	color: #1675c1;
}

.focus-green {
	background: #edf7e7;
	color: #64a925;
}

.focus-gold {
	background: #fff4d6;
	color: #e7a900;
}

.focus-red {
	background: #fff0f0;
	color: #e2292f;
}


/* ============================================================
   FOCUS TYPOGRAPHY
   ============================================================ */

.l2l-focus-copy {
	min-width: 0;
}

.l2l-focus-copy h3 {
	color: #17224d;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.25;
	margin: 1px 0 8px;
	text-transform: none;
}

.l2l-focus-copy p {
	color: #6a6a70 !important;
	font-size: 15px !important;
	font-weight: 300;
	line-height: 1.55 !important;
	margin: 0 !important;
}


/* ============================================================
   FOCUS - TABLET
   ============================================================ */

@media only screen and (max-width: 900px) {

	.l2l-focus {
		padding: 70px 30px;
	}

	.l2l-focus-grid {
		grid-template-columns: repeat(2, 1fr);
	}

}


/* ============================================================
   FOCUS - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-focus {
		padding: 55px 22px;
	}

	.l2l-focus-grid {
		grid-template-columns: 1fr;
	}

	.l2l-focus-card {
		margin: 0 auto;
		max-width: 560px;
		min-height: 0;
		width: 100%;
	}

}


/* ============================================================
   FOCUS - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-focus {
		padding: 45px 20px;
	}

	.l2l-focus-card {
		padding: 22px 20px;
	}

	.l2l-focus-icon {
		flex-basis: 46px;
		height: 46px;
		width: 46px;
	}

	.l2l-focus-copy h3 {
		font-size: 18px;
	}

}

/* ============================================================
   8. CURRICULUM + FAITH
   ============================================================ */


/*
 * Override Altitude Pro's default Front Page 4 treatment.
 */

.front-page-4 {
	background: #ffffff !important;
	border-top: 0 !important;
	margin-top: 0 !important;
}

.front-page-4 .solid-section {
	background: #ffffff !important;
}

.front-page-4 .flexible-widgets {
	margin: 0;
	max-width: none;
	padding: 0 !important;
	width: 100%;
}

.front-page-4 .flexible-widgets .widget,
.front-page-4 .flexible-widgets.widget-full .widget,
.front-page-4 .flexible-widgets.widget-area .widget:nth-of-type(1) {
	background: none !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.front-page-4 .widget-wrap {
	margin: 0;
	padding: 0;
	width: 100%;
}


/* ============================================================
   CURRICULUM + FAITH SECTION
   ============================================================ */

.l2l-curriculum-faith {
	background: #ffffff;
	padding: 90px 30px;
	width: 100%;
}

.l2l-curriculum-faith-inner {
	display: grid;
	gap: 28px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0 auto;
	max-width: 1160px;
}


/* ============================================================
   LARGE FEATURE PANELS
   ============================================================ */

.l2l-feature-panel {
	border-radius: 20px;
	padding: 46px;
	position: relative;
}

.l2l-curriculum-panel {
	background:
		linear-gradient(
			135deg,
			#edf7ff 0%,
			#f7fbff 100%
		);
}

.l2l-faith-panel {
	background:
		linear-gradient(
			135deg,
			#fff7e5 0%,
			#fffaf1 100%
		);
}


/* ============================================================
   FEATURE ICONS
   ============================================================ */

.l2l-feature-icon {
	align-items: center;
	border-radius: 50%;
	display: flex;
	height: 58px;
	justify-content: center;
	margin-bottom: 26px;
	width: 58px;
}

.curriculum-icon {
	background: #ffffff;
	color: #1675c1;
}

.curriculum-icon .dashicons {
	font-size: 30px;
	height: 30px;
	line-height: 30px;
	width: 30px;
}

.faith-icon {
	background: #ffffff;
	color: #e3a600;
}

.l2l-large-cross {
	font-size: 32px;
	font-weight: 700;
	line-height: 1;
}


/* ============================================================
   HEADINGS
   ============================================================ */

.l2l-feature-panel h2 {
	color: #17224d;
	font-size: 37px;
	font-weight: 700;
	letter-spacing: -0.6px;
	line-height: 1.12;
	margin: 0 0 20px;
	text-transform: none;
}

.l2l-feature-panel p {
	color: #5f6067 !important;
	font-size: 17px !important;
	font-weight: 300;
	line-height: 1.7 !important;
	margin-bottom: 25px !important;
}

.l2l-eyebrow-gold {
	color: #d89f00;
}


/* ============================================================
   FEATURE LISTS
   ============================================================ */

.l2l-feature-list {
	margin: 0 0 28px !important;
	padding: 0 !important;
}

.l2l-feature-list li {
	color: #4f5056;
	font-size: 15px;
	line-height: 1.5;
	list-style: none !important;
	margin: 0 0 11px;
	padding: 0 0 0 25px;
	position: relative;
}

.l2l-feature-list li::before {
	color: #1675c1;
	content: "✓";
	font-size: 15px;
	font-weight: 800;
	left: 0;
	position: absolute;
	top: 0;
}

.l2l-faith-panel .l2l-feature-list li::before {
	color: #e3a600;
}


/* ============================================================
   FEATURE LINKS
   ============================================================ */

.l2l-feature-link,
.l2l-feature-link:visited {
	color: #1675c1 !important;
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
}

.l2l-feature-link:hover,
.l2l-feature-link:focus {
	color: #5b2aa5 !important;
}

.l2l-faith-link,
.l2l-faith-link:visited {
	color: #b98500 !important;
}

.l2l-faith-link:hover,
.l2l-faith-link:focus {
	color: #5b2aa5 !important;
}


/* ============================================================
   CURRICULUM + FAITH - TABLET
   ============================================================ */

@media only screen and (max-width: 900px) {

	.l2l-curriculum-faith {
		padding: 70px 30px;
	}

	.l2l-feature-panel {
		padding: 36px;
	}

	.l2l-feature-panel h2 {
		font-size: 32px;
	}

}


/* ============================================================
   CURRICULUM + FAITH - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-curriculum-faith {
		padding: 55px 22px;
	}

	.l2l-curriculum-faith-inner {
		grid-template-columns: 1fr;
	}

	.l2l-feature-panel {
		margin: 0 auto;
		max-width: 560px;
		width: 100%;
	}

}


/* ============================================================
   CURRICULUM + FAITH - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-curriculum-faith {
		padding: 45px 20px;
	}

	.l2l-feature-panel {
		border-radius: 16px;
		padding: 30px 24px;
	}

	.l2l-feature-panel h2 {
		font-size: 29px;
	}

	.l2l-feature-panel p {
		font-size: 16px !important;
	}

}

/* ============================================================
   9. A DAY AT LOVIN2LEARN
   ============================================================ */


/*
 * Override Altitude Pro's original Front Page 5
 * image/parallax treatment.
 */

.front-page-5 {
	background: #ffffff !important;
	background-attachment: scroll !important;
	background-image: none !important;
	border-top: 0 !important;
	margin-top: 0 !important;
	min-height: 0 !important;
}

.front-page-5 .image-section {
	background: #ffffff !important;
	color: #17224d !important;
	display: block !important;
	filter: none !important;
	height: auto !important;
	min-height: 0 !important;
	overflow: visible !important;
	padding: 0 !important;
	table-layout: auto !important;
}

.front-page-5 .image-section .widget-area {
	display: block !important;
	text-align: left;
	vertical-align: initial;
}

.front-page-5 .flexible-widgets {
	margin: 0;
	max-width: none;
	padding: 0 !important;
	width: 100%;
}

.front-page-5 .flexible-widgets .widget,
.front-page-5 .flexible-widgets.widget-full .widget,
.front-page-5 .flexible-widgets.widget-area .widget:nth-of-type(1) {
	background: none !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.front-page-5 .widget-wrap {
	margin: 0;
	padding: 0;
	width: 100%;
}


/* ============================================================
   DAILY SCHEDULE SECTION
   ============================================================ */

.l2l-day {
	background: #fafafd;
	padding: 90px 30px;
	width: 100%;
}

.l2l-day-inner {
	margin: 0 auto;
	max-width: 1160px;
}


/* ============================================================
   TIMELINE
   ============================================================ */

.l2l-day-timeline {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(7, 1fr);
	margin-top: 48px;
	position: relative;
}


/*
 * Connecting line behind the icons
 */

.l2l-day-timeline::before {
	background: #e4e5ec;
	content: "";
	height: 2px;
	left: 7%;
	position: absolute;
	right: 7%;
	top: 29px;
	z-index: 0;
}


/* ============================================================
   INDIVIDUAL SCHEDULE ITEMS
   ============================================================ */

.l2l-day-item {
	padding: 0 10px;
	position: relative;
	text-align: center;
	z-index: 1;
}

.l2l-day-icon {
	align-items: center;
	border: 5px solid #fafafd;
	border-radius: 50%;
	display: flex;
	height: 60px;
	justify-content: center;
	margin: 0 auto 18px;
	width: 60px;
}

.l2l-day-icon .dashicons {
	font-size: 25px;
	height: 25px;
	line-height: 25px;
	width: 25px;
}


/* ------------------------------------------------------------
   Schedule Icon Colors
   ------------------------------------------------------------ */

.day-purple {
	background: #f1eafa;
	color: #5b2aa5;
}

.day-blue {
	background: #e8f4ff;
	color: #1675c1;
}

.day-green {
	background: #edf7e7;
	color: #64a925;
}

.day-gold {
	background: #fff4d6;
	color: #e3a600;
}

.day-red {
	background: #fff0f0;
	color: #e2292f;
}


/* ============================================================
   SCHEDULE TYPOGRAPHY
   ============================================================ */

.l2l-day-content h3 {
	color: #17224d;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.25;
	margin: 0 0 7px;
	text-transform: none;
}

.l2l-day-content p {
	color: #6b6b72 !important;
	font-size: 13px !important;
	font-weight: 300;
	line-height: 1.45 !important;
	margin: 0 !important;
}


/* ============================================================
   HOURS / MEALS NOTE
   ============================================================ */

.l2l-day-note {
	align-items: center;
	background: #ffffff;
	border: 1px solid #e8e9ef;
	border-radius: 12px;
	display: flex;
	gap: 15px;
	margin: 45px auto 0;
	max-width: 760px;
	padding: 18px 24px;
}

.l2l-day-note > .dashicons {
	color: #5b2aa5;
	flex: 0 0 28px;
	font-size: 28px;
	height: 28px;
	width: 28px;
}

.l2l-day-note p {
	color: #626269 !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
	margin: 0 !important;
}

.l2l-day-note strong {
	color: #17224d;
}


/* ============================================================
   DAILY SCHEDULE - TABLET
   ============================================================ */

@media only screen and (max-width: 1023px) {

	.l2l-day {
		padding: 70px 30px;
	}

	.l2l-day-timeline {
		gap: 18px;
		grid-template-columns: repeat(4, 1fr);
	}

	.l2l-day-timeline::before {
		display: none;
	}

	.l2l-day-item {
		background: #ffffff;
		border: 1px solid #e9eaf0;
		border-radius: 12px;
		padding: 22px 15px;
	}

	.l2l-day-icon {
		border: 0;
	}

}


/* ============================================================
   DAILY SCHEDULE - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-day {
		padding: 55px 22px;
	}

	.l2l-day-timeline {
		grid-template-columns: repeat(2, 1fr);
	}

	.l2l-day-note {
		align-items: flex-start;
	}

}


/* ============================================================
   DAILY SCHEDULE - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-day {
		padding: 45px 20px;
	}

	.l2l-day-timeline {
		grid-template-columns: 1fr;
	}

	.l2l-day-item {
		align-items: center;
		display: flex;
		gap: 17px;
		text-align: left;
	}

	.l2l-day-icon {
		flex: 0 0 52px;
		height: 52px;
		margin: 0;
		width: 52px;
	}

	.l2l-day-content h3 {
		font-size: 18px;
	}

	.l2l-day-content p {
		font-size: 14px !important;
	}

}

/* ============================================================
   10. MEET EUGENIA
   ============================================================ */

.l2l-director {
	background: #ffffff;
	padding: 95px 30px;
	width: 100%;
}

.l2l-director-inner {
	align-items: center;
	display: grid;
	gap: 75px;
	grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
	margin: 0 auto;
	max-width: 1080px;
}


/* ============================================================
   DIRECTOR PORTRAIT
   ============================================================ */

.l2l-director-image {
	margin: 0 auto;
	max-width: 410px;
	width: 100%;
}

.l2l-director-image img {
	aspect-ratio: 4 / 5;
	border-radius: 20px;
	box-shadow: 0 14px 40px rgba(23, 34, 77, 0.10);
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	width: 100%;
}


/*
 * Temporary portrait placeholder.
 * Remove this after the real portrait is added.
 */

.l2l-director-placeholder {
	align-items: center;
	aspect-ratio: 4 / 5;
	background:
		linear-gradient(
			145deg,
			#f2ebfb 0%,
			#faf8fd 55%,
			#edf7ff 100%
		);
	border: 1px solid #e5e4eb;
	border-radius: 20px;
	color: #9998a2;
	display: flex;
	font-size: 15px;
	font-weight: 600;
	justify-content: center;
	width: 100%;
}


/* ============================================================
   DIRECTOR COPY
   ============================================================ */

.l2l-director-copy {
	max-width: 560px;
}

.l2l-director-copy h2 {
	color: #17224d;
	font-size: 44px;
	font-weight: 700;
	letter-spacing: -0.8px;
	line-height: 1.1;
	margin: 0 0 18px;
	text-transform: none;
}


/* Name / Title */

.l2l-director-name {
	margin: 0 0 25px !important;
}

.l2l-director-name strong {
	color: #5b2aa5;
	display: block;
	font-size: 19px;
	font-weight: 700;
}

.l2l-director-name span {
	color: #77777e;
	display: block;
	font-size: 14px;
	font-weight: 500;
	margin-top: 2px;
}


/* Biography */

.l2l-director-copy > p:not(.l2l-director-name) {
	color: #626269 !important;
	font-size: 17px !important;
	font-weight: 300;
	line-height: 1.7 !important;
	margin-bottom: 20px !important;
}

.l2l-director-copy .l2l-director-lead {
	color: #414147 !important;
	font-size: 19px !important;
}


/* ============================================================
   DIRECTOR HIGHLIGHTS
   ============================================================ */

.l2l-director-highlights {
	display: flex;
	gap: 18px;
	margin: 30px 0;
}

.l2l-director-highlight {
	align-items: center;
	background: #fafafd;
	border: 1px solid #ebeaf0;
	border-radius: 12px;
	display: flex;
	flex: 1;
	gap: 12px;
	padding: 16px;
}

.l2l-director-highlight > .dashicons {
	color: #5b2aa5;
	flex: 0 0 28px;
	font-size: 28px;
	height: 28px;
	line-height: 28px;
	width: 28px;
}

.l2l-director-highlight strong {
	color: #17224d;
	display: block;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
}

.l2l-director-highlight span:not(.dashicons) {
	color: #74747a;
	display: block;
	font-size: 12px;
	line-height: 1.35;
	margin-top: 2px;
}


/* ============================================================
   MEET EUGENIA - TABLET
   ============================================================ */

@media only screen and (max-width: 900px) {

	.l2l-director {
		padding: 75px 30px;
	}

	.l2l-director-inner {
		gap: 50px;
	}

	.l2l-director-copy h2 {
		font-size: 38px;
	}

}


/* ============================================================
   MEET EUGENIA - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-director {
		padding: 60px 22px;
	}

	.l2l-director-inner {
		grid-template-columns: 1fr;
	}

	.l2l-director-image {
		max-width: 360px;
	}

	.l2l-director-copy {
		margin: 0 auto;
		max-width: 600px;
		text-align: center;
	}

	.l2l-director-highlights {
		text-align: left;
	}

}


/* ============================================================
   MEET EUGENIA - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-director {
		padding: 50px 20px;
	}

	.l2l-director-copy h2 {
		font-size: 32px;
	}

	.l2l-director-copy .l2l-director-lead,
	.l2l-director-copy > p:not(.l2l-director-name) {
		font-size: 16px !important;
	}

	.l2l-director-highlights {
		flex-direction: column;
	}

}

/* ============================================================
   11. SAFETY & PARENT COMMUNICATION
   ============================================================ */


/*
 * Override Altitude Pro's default Front Page 6 spacing.
 */

.front-page-6 {
	background: #ffffff !important;
	border-top: 0 !important;
	margin-top: 0 !important;
}

.front-page-6 .solid-section {
	background: #ffffff !important;
}

.front-page-6 .flexible-widgets {
	margin: 0;
	max-width: none;
	padding: 0 !important;
	width: 100%;
}

.front-page-6 .flexible-widgets .widget,
.front-page-6 .flexible-widgets.widget-full .widget,
.front-page-6 .flexible-widgets.widget-area .widget:nth-of-type(1) {
	background: none !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.front-page-6 .widget-wrap {
	margin: 0;
	padding: 0;
	width: 100%;
}


/* ============================================================
   SAFETY SECTION
   ============================================================ */

.l2l-safety {
	background: #f7f5fb;
	padding: 90px 30px;
	width: 100%;
}

.l2l-safety-inner {
	margin: 0 auto;
	max-width: 1160px;
}


/* ============================================================
   SAFETY GRID
   ============================================================ */

.l2l-safety-grid {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(4, 1fr);
	margin-top: 48px;
}


/* ============================================================
   SAFETY CARDS
   ============================================================ */

.l2l-safety-card {
	background: #ffffff;
	border: 1px solid #e8e7ee;
	border-radius: 16px;
	box-shadow: 0 7px 24px rgba(23, 34, 77, 0.04);
	padding: 30px 25px;
	text-align: center;
	transition:
		box-shadow 0.2s ease,
		transform 0.2s ease;
}

.l2l-safety-card:hover {
	box-shadow: 0 13px 32px rgba(23, 34, 77, 0.08);
	transform: translateY(-3px);
}


/* ============================================================
   SAFETY ICONS
   ============================================================ */

.l2l-safety-icon {
	align-items: center;
	border-radius: 50%;
	display: flex;
	height: 58px;
	justify-content: center;
	margin: 0 auto 22px;
	width: 58px;
}

.l2l-safety-icon .dashicons {
	font-size: 28px;
	height: 28px;
	line-height: 28px;
	width: 28px;
}


.safety-purple {
	background: #f1eafa;
	color: #5b2aa5;
}

.safety-blue {
	background: #e8f4ff;
	color: #1675c1;
}

.safety-green {
	background: #edf7e7;
	color: #64a925;
}

.safety-gold {
	background: #fff4d6;
	color: #e3a600;
}


/* ============================================================
   SAFETY TYPOGRAPHY
   ============================================================ */

.l2l-safety-card h3 {
	color: #17224d;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.25;
	margin: 0 0 12px;
	text-transform: none;
}

.l2l-safety-card p {
	color: #6a6a70 !important;
	font-size: 14px !important;
	font-weight: 300;
	line-height: 1.6 !important;
	margin: 0 !important;
}


/* ============================================================
   SAFETY CALLOUT
   ============================================================ */

.l2l-safety-callout {
	align-items: center;
	background: #ffffff;
	border: 1px solid #e7e6ed;
	border-radius: 15px;
	display: grid;
	gap: 20px;
	grid-template-columns: auto 1fr auto;
	margin-top: 28px;
	padding: 22px 26px;
}

.l2l-safety-callout-icon {
	align-items: center;
	background: #f1eafa;
	border-radius: 50%;
	color: #5b2aa5;
	display: flex;
	height: 48px;
	justify-content: center;
	width: 48px;
}

.l2l-safety-callout-icon .dashicons {
	font-size: 26px;
	height: 26px;
	line-height: 26px;
	width: 26px;
}

.l2l-safety-callout-copy h3 {
	color: #17224d;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 4px;
	text-transform: none;
}

.l2l-safety-callout-copy p {
	color: #6b6b72 !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
	margin: 0 !important;
}

.l2l-safety-link,
.l2l-safety-link:visited {
	color: #5b2aa5 !important;
	font-size: 14px;
	font-weight: 700;
	white-space: nowrap;
}

.l2l-safety-link:hover,
.l2l-safety-link:focus {
	color: #1675c1 !important;
}


/* ============================================================
   SAFETY - TABLET
   ============================================================ */

@media only screen and (max-width: 1023px) {

	.l2l-safety {
		padding: 70px 30px;
	}

	.l2l-safety-grid {
		grid-template-columns: repeat(2, 1fr);
	}

}


/* ============================================================
   SAFETY - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-safety {
		padding: 55px 22px;
	}

	.l2l-safety-grid {
		grid-template-columns: 1fr;
	}

	.l2l-safety-card {
		margin: 0 auto;
		max-width: 520px;
		width: 100%;
	}

	.l2l-safety-callout {
		grid-template-columns: auto 1fr;
	}

	.l2l-safety-link {
		grid-column: 1 / -1;
		text-align: center;
	}

}


/* ============================================================
   SAFETY - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-safety {
		padding: 45px 20px;
	}

	.l2l-safety-callout {
		display: block;
		padding: 22px;
		text-align: center;
	}

	.l2l-safety-callout-icon {
		margin: 0 auto 15px;
	}

	.l2l-safety-link {
		display: inline-block;
		margin-top: 15px;
	}

}

/* ============================================================
   12. PARENT TESTIMONIALS
   ============================================================ */

.l2l-testimonials {
	background: #ffffff;
	padding: 90px 30px 95px;
	width: 100%;
}

.l2l-testimonials-inner {
	margin: 0 auto;
	max-width: 1160px;
}


/* ============================================================
   TESTIMONIAL GRID
   ============================================================ */

.l2l-testimonial-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 48px;
}


/* ============================================================
   TESTIMONIAL CARDS
   ============================================================ */

.l2l-testimonial-card {
	background: #ffffff;
	border: 1px solid #e8e9ef;
	border-radius: 16px;
	box-shadow: 0 8px 28px rgba(23, 34, 77, 0.05);
	padding: 34px 30px 30px;
	position: relative;
}


/* ============================================================
   QUOTE MARK
   ============================================================ */

.l2l-quote-mark {
	align-items: center;
	background: #f1eafa;
	border-radius: 50%;
	color: #5b2aa5;
	display: flex;
	font-family: Georgia, serif;
	font-size: 36px;
	font-weight: 700;
	height: 48px;
	justify-content: center;
	line-height: 1;
	margin-bottom: 23px;
	padding-top: 8px;
	width: 48px;
}

.l2l-quote-mark.quote-blue {
	background: #e8f4ff;
	color: #1675c1;
}

.l2l-quote-mark.quote-gold {
	background: #fff4d6;
	color: #d99e00;
}


/* ============================================================
   TESTIMONIAL TEXT
   ============================================================ */

.l2l-testimonial-card blockquote {
	color: inherit;
	margin: 0;
	padding: 0;
}

.l2l-testimonial-card blockquote::before {
	display: none;
}

.l2l-testimonial-card blockquote p {
	color: #525259 !important;
	font-size: 17px !important;
	font-style: italic;
	font-weight: 300;
	line-height: 1.7 !important;
	margin: 0 0 28px !important;
}


/* ============================================================
   PARENT NAME
   ============================================================ */

.l2l-testimonial-parent {
	border-top: 1px solid #eeeeF2;
	padding-top: 18px;
}

.l2l-testimonial-parent strong {
	color: #17224d;
	display: block;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
}

.l2l-testimonial-parent span {
	color: #85858c;
	display: block;
	font-size: 13px;
	line-height: 1.3;
	margin-top: 3px;
}


/* ============================================================
   TESTIMONIALS - TABLET
   ============================================================ */

@media only screen and (max-width: 900px) {

	.l2l-testimonials {
		padding: 70px 30px;
	}

	.l2l-testimonial-grid {
		gap: 18px;
	}

	.l2l-testimonial-card {
		padding: 28px 24px;
	}

}


/* ============================================================
   TESTIMONIALS - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-testimonials {
		padding: 55px 22px;
	}

	.l2l-testimonial-grid {
		grid-template-columns: 1fr;
	}

	.l2l-testimonial-card {
		margin: 0 auto;
		max-width: 540px;
		width: 100%;
	}

}


/* ============================================================
   TESTIMONIALS - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-testimonials {
		padding: 45px 20px;
	}

	.l2l-testimonial-card blockquote p {
		font-size: 16px !important;
	}

}

/* ============================================================
   13. PHOTO GALLERY PREVIEW
   ============================================================ */


/*
 * Front Page 7 is one of Altitude Pro's original
 * image/parallax areas. Convert it to a normal section.
 */

.front-page-7 {
	background: #ffffff !important;
	background-attachment: scroll !important;
	background-image: none !important;
	border-top: 0 !important;
	margin-top: 0 !important;
	min-height: 0 !important;
}

.front-page-7 .image-section {
	background: #ffffff !important;
	color: #17224d !important;
	display: block !important;
	filter: none !important;
	height: auto !important;
	min-height: 0 !important;
	overflow: visible !important;
	padding: 0 !important;
	table-layout: auto !important;
}

.front-page-7 .image-section .widget-area {
	display: block !important;
	text-align: left;
	vertical-align: initial;
}

.front-page-7 .flexible-widgets {
	margin: 0;
	max-width: none;
	padding: 0 !important;
	width: 100%;
}

.front-page-7 .flexible-widgets .widget,
.front-page-7 .flexible-widgets.widget-full .widget,
.front-page-7 .flexible-widgets.widget-area .widget:nth-of-type(1) {
	background: none !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	width: 100% !important;
}

.front-page-7 .widget-wrap {
	margin: 0;
	padding: 0;
	width: 100%;
}


/* ============================================================
   GALLERY SECTION
   ============================================================ */

.l2l-gallery-preview {
	background: #fafafd;
	padding: 90px 30px;
	width: 100%;
}

.l2l-gallery-inner {
	margin: 0 auto;
	max-width: 1160px;
}


/* ============================================================
   GALLERY GRID
   ============================================================ */

.l2l-gallery-grid {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, 220px);
	margin-top: 48px;
}


/*
 * Large image takes left half of gallery.
 */

.l2l-gallery-large {
	grid-column: span 2;
	grid-row: span 2;
}


/* ============================================================
   GALLERY IMAGES
   ============================================================ */

.l2l-gallery-item {
	border-radius: 16px;
	overflow: hidden;
	position: relative;
}

.l2l-gallery-item img {
	display: block;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
	width: 100%;
}

.l2l-gallery-item:hover img {
	transform: scale(1.025);
}


/* ============================================================
   TEMPORARY IMAGE PLACEHOLDERS
   ============================================================ */

.l2l-gallery-placeholder {
	align-items: center;
	background:
		linear-gradient(
			135deg,
			#edf7ff 0%,
			#f4eefb 50%,
			#fff7e8 100%
		);
	border: 1px solid #e5e5ec;
	color: #8a8992;
	display: flex;
	font-size: 14px;
	font-weight: 600;
	height: 100%;
	justify-content: center;
	letter-spacing: 0.4px;
	text-align: center;
	width: 100%;
}


/* ============================================================
   GALLERY BUTTON
   ============================================================ */

.l2l-gallery-button-wrap {
	margin-top: 35px;
	text-align: center;
}


/* ============================================================
   GALLERY - TABLET
   ============================================================ */

@media only screen and (max-width: 900px) {

	.l2l-gallery-preview {
		padding: 70px 30px;
	}

	.l2l-gallery-grid {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: 300px 200px 200px;
	}

	.l2l-gallery-large {
		grid-column: span 2;
		grid-row: span 1;
	}

}


/* ============================================================
   GALLERY - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-gallery-preview {
		padding: 55px 22px;
	}

	.l2l-gallery-grid {
		gap: 12px;
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: 260px 180px 180px;
	}

}


/* ============================================================
   GALLERY - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-gallery-preview {
		padding: 45px 20px;
	}

	.l2l-gallery-grid {
		display: block;
	}

	.l2l-gallery-item {
		height: 240px;
		margin-bottom: 12px;
	}

	.l2l-gallery-large {
		height: 300px;
	}

}

/* ============================================================
   14. FREQUENTLY ASKED QUESTIONS
   ============================================================ */

.l2l-faq {
	background: #ffffff;
	padding: 90px 30px 95px;
	width: 100%;
}

.l2l-faq-inner {
	margin: 0 auto;
	max-width: 900px;
}


/* ============================================================
   FAQ LIST
   ============================================================ */

.l2l-faq-list {
	margin-top: 45px;
}


/* ============================================================
   FAQ ITEM
   ============================================================ */

.l2l-faq-item {
	background: #ffffff;
	border: 1px solid #e7e8ee;
	border-radius: 12px;
	margin-bottom: 14px;
	overflow: hidden;
	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease;
}

.l2l-faq-item:hover {
	border-color: #d8d4e5;
	box-shadow: 0 6px 20px rgba(23, 34, 77, 0.04);
}


/* ============================================================
   FAQ QUESTION
   ============================================================ */

.l2l-faq-item summary {
	align-items: center;
	color: #17224d;
	cursor: pointer;
	display: flex;
	font-size: 17px;
	font-weight: 700;
	justify-content: space-between;
	line-height: 1.4;
	list-style: none;
	padding: 21px 24px;
}


/*
 * Remove browser's default disclosure triangle.
 */

.l2l-faq-item summary::-webkit-details-marker {
	display: none;
}

.l2l-faq-item summary::marker {
	display: none;
}


/* ============================================================
   PLUS / MINUS ICON
   ============================================================ */

.l2l-faq-plus {
	align-items: center;
	background: #f1eafa;
	border-radius: 50%;
	color: #5b2aa5;
	display: flex;
	flex: 0 0 32px;
	font-size: 22px;
	font-weight: 400;
	height: 32px;
	justify-content: center;
	line-height: 1;
	margin-left: 20px;
	transition: transform 0.2s ease;
	width: 32px;
}


/*
 * Rotate the + when the question is open.
 * Visually turns it into an X.
 */

.l2l-faq-item[open] .l2l-faq-plus {
	transform: rotate(45deg);
}


/* ============================================================
   FAQ ANSWER
   ============================================================ */

.l2l-faq-answer {
	border-top: 1px solid #eeeeF2;
	padding: 20px 24px 22px;
}

.l2l-faq-answer p {
	color: #64646b !important;
	font-size: 16px !important;
	font-weight: 300;
	line-height: 1.7 !important;
	margin: 0 !important;
}


/* ============================================================
   OPEN FAQ STATE
   ============================================================ */

.l2l-faq-item[open] {
	border-color: #dcd6e9;
	box-shadow: 0 8px 24px rgba(23, 34, 77, 0.05);
}

.l2l-faq-item[open] summary {
	color: #5b2aa5;
}


/* ============================================================
   FAQ CONTACT AREA
   ============================================================ */

.l2l-faq-more {
	margin-top: 35px;
	text-align: center;
}

.l2l-faq-more p {
	color: #68686f !important;
	font-size: 15px !important;
	margin-bottom: 14px !important;
}


/* ============================================================
   FAQ - TABLET
   ============================================================ */

@media only screen and (max-width: 900px) {

	.l2l-faq {
		padding: 70px 30px;
	}

}


/* ============================================================
   FAQ - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-faq {
		padding: 55px 22px;
	}

	.l2l-faq-item summary {
		font-size: 16px;
		padding: 19px 20px;
	}

	.l2l-faq-answer {
		padding: 18px 20px 20px;
	}

}


/* ============================================================
   FAQ - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-faq {
		padding: 45px 20px;
	}

	.l2l-faq-plus {
		flex-basis: 28px;
		font-size: 19px;
		height: 28px;
		margin-left: 12px;
		width: 28px;
	}

	.l2l-faq-answer p {
		font-size: 15px !important;
	}

}

/* ============================================================
   15. FINAL ENROLLMENT CTA
   ============================================================ */

.l2l-final-cta {
	background:
		linear-gradient(
			135deg,
			#5b2aa5 0%,
			#4c238e 100%
		);
	color: #ffffff;
	padding: 58px 30px;
	width: 100%;
}

.l2l-final-cta-inner {
	align-items: center;
	display: flex;
	gap: 40px;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1160px;
}


/* ============================================================
   CTA COPY
   ============================================================ */

.l2l-final-cta-copy {
	max-width: 720px;
}

.l2l-final-cta-eyebrow {
	color: #f7d85b;
	display: block;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 2px;
	line-height: 1.2;
	margin-bottom: 10px;
	text-transform: uppercase;
}

.l2l-final-cta h2 {
	color: #ffffff;
	font-size: 40px;
	font-weight: 700;
	letter-spacing: -0.7px;
	line-height: 1.1;
	margin: 0 0 14px;
	text-transform: none;
}

.l2l-final-cta p {
	color: rgba(255, 255, 255, 0.88) !important;
	font-size: 17px !important;
	font-weight: 300;
	line-height: 1.65 !important;
	margin: 0 !important;
	max-width: 650px;
}


/* ============================================================
   CTA ACTIONS
   ============================================================ */

.l2l-final-cta-actions {
	align-items: center;
	display: flex;
	flex: 0 0 auto;
	gap: 16px;
}


/* White Primary Button */

.l2l-final-cta-button,
.l2l-final-cta-button:visited {
	background: #ffffff;
	border: 2px solid #ffffff;
	border-radius: 6px;
	color: #5b2aa5 !important;
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	padding: 13px 22px;
	text-decoration: none;
}

.l2l-final-cta-button:hover,
.l2l-final-cta-button:focus {
	background: #f3eef9;
	border-color: #f3eef9;
	color: #45207e !important;
}


/* Secondary Text Link */

.l2l-final-cta-link,
.l2l-final-cta-link:visited {
	color: #ffffff !important;
	font-size: 14px;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.l2l-final-cta-link:hover,
.l2l-final-cta-link:focus {
	color: #f7d85b !important;
}


/* ============================================================
   FINAL CTA - TABLET
   ============================================================ */

@media only screen and (max-width: 900px) {

	.l2l-final-cta {
		padding: 50px 30px;
	}

	.l2l-final-cta-inner {
		align-items: flex-start;
		flex-direction: column;
	}

	.l2l-final-cta-actions {
		margin-top: 4px;
	}

}


/* ============================================================
   FINAL CTA - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-final-cta {
		padding: 46px 22px;
		text-align: center;
	}

	.l2l-final-cta-inner {
		align-items: center;
	}

	.l2l-final-cta h2 {
		font-size: 34px;
	}

	.l2l-final-cta-actions {
		flex-direction: column;
		width: 100%;
	}

	.l2l-final-cta-button {
		text-align: center;
		width: 100%;
	}

}


/* ============================================================
   FINAL CTA - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-final-cta {
		padding: 42px 20px;
	}

	.l2l-final-cta h2 {
		font-size: 30px;
	}

	.l2l-final-cta p {
		font-size: 16px !important;
	}

}

/* ============================================================
   OUR DIRECTOR PAGE - ALTITUDE / GENESIS RESET
   ============================================================ */

/*
 * Altitude Pro normally constrains interior pages and adds
 * substantial top/side spacing. Our custom Director page
 * should behave more like the custom homepage sections.
 */

.site-inner:has(.l2l-director-page) {
	margin-top: 0 !important;
	max-width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	width: 100% !important;
}

.content:has(.l2l-director-page) {
	float: none !important;
	max-width: none !important;
	padding: 0 !important;
	width: 100% !important;
}

.entry:has(.l2l-director-page) {
	margin: 0 !important;
	padding: 0 !important;
}

.entry-content:has(.l2l-director-page) {
	margin: 0 !important;
	max-width: none !important;
	padding: 0 !important;
	width: 100% !important;
}


/*
 * Hide Altitude/Genesis's automatic page title.
 * Our custom Director hero already contains
 * "OUR DIRECTOR" and "Meet Eugenia Ferguson."
 */

.entry:has(.l2l-director-page) > .entry-header {
	display: none !important;
}


/*
 * Remove Altitude's normal decorative entry-header line
 * if it somehow remains in the markup.
 */

.entry:has(.l2l-director-page) .entry-header::after {
	display: none !important;
}


/* ============================================================
   OUR DIRECTOR PAGE
   ============================================================ */

.l2l-director-page {
	background: #ffffff;
	margin: 0;
	max-width: none !important;
	padding: 0;
	width: 100%;
}

.l2l-director-page-wrap {
	margin: 0 auto;
	max-width: 1160px;
}


/* ============================================================
   DIRECTOR HERO
   ============================================================ */

.l2l-director-page-hero {
	background: #ffffff;
	padding: 85px 30px 90px;
	width: 100%;
}

.l2l-director-page-hero-inner {
	align-items: center;
	display: grid;
	gap: 75px;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
	margin: 0 auto;
	max-width: 1080px;
}


/* ------------------------------------------------------------
   Director Portrait
   ------------------------------------------------------------ */

.l2l-director-page-photo {
	margin: 0 auto;
	max-width: 410px;
	width: 100%;
}

.l2l-director-page-photo img {
	aspect-ratio: 4 / 5;
	border-radius: 20px;
	box-shadow: 0 16px 45px rgba(23, 34, 77, 0.11);
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	width: 100%;
}


/* ------------------------------------------------------------
   Director Hero Copy
   ------------------------------------------------------------ */

.l2l-director-page-intro {
	max-width: 590px;
}

.l2l-director-page-intro h1 {
	color: #17224d;
	font-size: clamp(44px, 5vw, 60px);
	font-weight: 700;
	letter-spacing: -1px;
	line-height: 1.05;
	margin: 0 0 8px;
	text-transform: none;
}

.l2l-director-page-title {
	color: #5b2aa5 !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
	margin: 0 0 26px !important;
}

.l2l-director-page-intro p {
	color: #636369 !important;
	font-size: 17px !important;
	font-weight: 300;
	line-height: 1.7 !important;
	margin-bottom: 20px !important;
}

.l2l-director-page-intro .l2l-director-page-lead {
	color: #3f3f45 !important;
	font-size: 20px !important;
}


/* ============================================================
   EXPERIENCE & EDUCATION
   ============================================================ */

.l2l-director-experience {
	background: #f8f7fb;
	padding: 85px 30px 90px;
	width: 100%;
}

.l2l-director-experience-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(4, 1fr);
	margin-top: 45px;
}


/* ------------------------------------------------------------
   Experience Cards
   ------------------------------------------------------------ */

.l2l-director-experience-card {
	background: #ffffff;
	border: 1px solid #e8e7ee;
	border-radius: 15px;
	box-shadow: 0 6px 22px rgba(23, 34, 77, 0.04);
	padding: 28px 22px;
	text-align: center;
}

.l2l-director-experience-card strong {
	color: #17224d;
	display: block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
	margin: 15px 0 5px;
}

.l2l-director-experience-card > span {
	color: #707077;
	display: block;
	font-size: 14px;
	line-height: 1.5;
}


/* ============================================================
   DIRECTOR PAGE ICONS
   ============================================================ */

.l2l-director-page-icon {
	align-items: center;
	border-radius: 50%;
	display: flex;
	height: 54px;
	justify-content: center;
	margin: 0 auto;
	width: 54px;
}

.l2l-director-page-icon .dashicons {
	font-size: 27px;
	height: 27px;
	line-height: 27px;
	margin: 0;
	width: 27px;
}

.icon-purple {
	background: #f1eafa;
	color: #5b2aa5;
}

.icon-blue {
	background: #e8f4ff;
	color: #1675c1;
}

.icon-green {
	background: #edf7e7;
	color: #64a925;
}

.icon-gold {
	background: #fff4d6;
	color: #dda300;
}

.director-cross {
	font-size: 28px;
	font-weight: 700;
	line-height: 1;
}


/* ============================================================
   A HEART FOR CHILDREN / DIRECTOR STORY
   ============================================================ */

.l2l-director-story {
	background: #ffffff;
	padding: 95px 30px;
	width: 100%;
}

.l2l-director-story-inner {
	align-items: center;
	display: grid;
	gap: 80px;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	margin: 0 auto;
	max-width: 1080px;
}

.l2l-director-story-copy h2 {
	color: #17224d;
	font-size: 42px;
	font-weight: 700;
	letter-spacing: -0.7px;
	line-height: 1.1;
	margin: 0 0 23px;
	text-transform: none;
}

.l2l-director-story-copy p {
	color: #636369 !important;
	font-size: 17px !important;
	font-weight: 300;
	line-height: 1.75 !important;
	margin-bottom: 20px !important;
}

.l2l-director-story-copy .l2l-director-story-lead {
	color: #414147 !important;
	font-size: 19px !important;
}


/* ============================================================
   DIRECTOR QUOTE
   ============================================================ */

.l2l-director-quote {
	background:
		linear-gradient(
			145deg,
			#f4eefb 0%,
			#faf8fd 100%
		);
	border: 1px solid #e9e3f1;
	border-radius: 20px;
	padding: 45px 40px;
}

.l2l-director-quote-mark {
	color: #5b2aa5;
	font-family: Georgia, serif;
	font-size: 64px;
	font-weight: 700;
	height: 45px;
	line-height: 1;
}

.l2l-director-quote blockquote {
	color: #17224d;
	font-size: 24px;
	font-style: italic;
	font-weight: 400;
	line-height: 1.5;
	margin: 10px 0 22px;
	padding: 0;
}

.l2l-director-quote blockquote::before {
	display: none !important;
}

.l2l-director-quote > span {
	color: #5b2aa5;
	font-size: 14px;
	font-weight: 700;
}


/* ============================================================
   HER PHILOSOPHY
   ============================================================ */

.l2l-director-philosophy {
	background: #fafafd;
	padding: 90px 30px;
	width: 100%;
}

.l2l-director-philosophy-grid {
	display: grid;
	gap: 22px;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 45px;
}

.l2l-director-philosophy-card {
	background: #ffffff;
	border: 1px solid #e9e9ef;
	border-radius: 16px;
	padding: 32px 28px;
	text-align: center;
}

.l2l-director-philosophy-card h3 {
	color: #17224d;
	font-size: 21px;
	font-weight: 700;
	line-height: 1.3;
	margin: 18px 0 10px;
	text-transform: none;
}

.l2l-director-philosophy-card p {
	color: #696970 !important;
	font-size: 15px !important;
	font-weight: 300;
	line-height: 1.65 !important;
	margin: 0 !important;
}


/* ============================================================
   PARTNERING WITH FAMILIES
   ============================================================ */

.l2l-director-families {
	background: #ffffff;
	padding: 90px 30px;
	width: 100%;
}

.l2l-director-families-inner {
	align-items: center;
	display: grid;
	gap: 70px;
	grid-template-columns: minmax(0, 1fr) auto;
	margin: 0 auto;
	max-width: 950px;
}

.l2l-director-families h2 {
	color: #17224d;
	font-size: 40px;
	font-weight: 700;
	letter-spacing: -0.6px;
	line-height: 1.1;
	margin: 0 0 20px;
	text-transform: none;
}

.l2l-director-families p {
	color: #65656c !important;
	font-size: 17px !important;
	font-weight: 300;
	line-height: 1.7 !important;
	margin-bottom: 18px !important;
}

.l2l-director-family-icon {
	align-items: center;
	background: #f1eafa;
	border-radius: 50%;
	color: #5b2aa5;
	display: flex;
	height: 145px;
	justify-content: center;
	width: 145px;
}

.l2l-director-family-icon .dashicons {
	font-size: 62px;
	height: 62px;
	line-height: 62px;
	margin: 0;
	width: 62px;
}


/* ============================================================
   DIRECTOR PAGE FINAL CTA
   ============================================================ */

.l2l-director-page-cta {
	background:
		linear-gradient(
			135deg,
			#5b2aa5 0%,
			#48207f 100%
		);
	color: #ffffff;
	padding: 58px 30px;
	width: 100%;
}

.l2l-director-page-cta-inner {
	align-items: center;
	display: flex;
	gap: 45px;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1160px;
}

.l2l-director-page-cta-eyebrow {
	color: #f7d85b;
	display: block;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 2px;
	line-height: 1.2;
	margin-bottom: 9px;
	text-transform: uppercase;
}

.l2l-director-page-cta h2 {
	color: #ffffff;
	font-size: 38px;
	font-weight: 700;
	letter-spacing: -0.6px;
	line-height: 1.1;
	margin: 0 0 10px;
	text-transform: none;
}

.l2l-director-page-cta p {
	color: rgba(255, 255, 255, 0.88) !important;
	font-size: 16px !important;
	font-weight: 300;
	line-height: 1.6 !important;
	margin: 0 !important;
	max-width: 650px;
}

.l2l-director-page-cta-button,
.l2l-director-page-cta-button:visited {
	background: #ffffff;
	border: 2px solid #ffffff;
	border-radius: 6px;
	color: #5b2aa5 !important;
	display: inline-block;
	flex: 0 0 auto;
	font-size: 14px;
	font-weight: 700;
	padding: 14px 23px;
	text-decoration: none;
	white-space: nowrap;
}

.l2l-director-page-cta-button:hover,
.l2l-director-page-cta-button:focus {
	background: #f4eff8;
	border-color: #f4eff8;
	color: #45207e !important;
}


/* ============================================================
   OUR DIRECTOR PAGE - TABLET
   ============================================================ */

@media only screen and (max-width: 900px) {

	.l2l-director-page-hero,
	.l2l-director-experience,
	.l2l-director-story,
	.l2l-director-philosophy,
	.l2l-director-families {
		padding-left: 30px;
		padding-right: 30px;
	}

	.l2l-director-page-hero-inner {
		gap: 45px;
	}

	.l2l-director-experience-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.l2l-director-story-inner {
		gap: 50px;
	}

	.l2l-director-philosophy-grid {
		gap: 18px;
	}

}


/* ============================================================
   OUR DIRECTOR PAGE - MOBILE
   ============================================================ */

@media only screen and (max-width: 700px) {

	.l2l-director-page-hero,
	.l2l-director-experience,
	.l2l-director-story,
	.l2l-director-philosophy,
	.l2l-director-families {
		padding: 60px 22px;
	}

	.l2l-director-page-hero-inner,
	.l2l-director-story-inner,
	.l2l-director-families-inner {
		grid-template-columns: 1fr;
	}

	.l2l-director-page-photo {
		max-width: 350px;
	}

	.l2l-director-page-intro,
	.l2l-director-story-copy,
	.l2l-director-families-inner > div:first-child {
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}

	.l2l-director-experience-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.l2l-director-philosophy-grid {
		grid-template-columns: 1fr;
	}

	.l2l-director-family-icon {
		display: none;
	}

	.l2l-director-page-cta {
		padding: 50px 22px;
		text-align: center;
	}

	.l2l-director-page-cta-inner {
		flex-direction: column;
	}

}


/* ============================================================
   OUR DIRECTOR PAGE - SMALL MOBILE
   ============================================================ */

@media only screen and (max-width: 480px) {

	.l2l-director-page-hero,
	.l2l-director-experience,
	.l2l-director-story,
	.l2l-director-philosophy,
	.l2l-director-families {
		padding: 48px 20px;
	}

	.l2l-director-experience-grid {
		grid-template-columns: 1fr;
	}

	.l2l-director-page-intro h1 {
		font-size: 40px;
	}

	.l2l-director-story-copy h2,
	.l2l-director-families h2 {
		font-size: 32px;
	}

	.l2l-director-quote {
		padding: 35px 28px;
	}

	.l2l-director-quote blockquote {
		font-size: 20px;
	}

	.l2l-director-page-cta h2 {
		font-size: 30px;
	}

	.l2l-director-page-cta-button {
		text-align: center;
		width: 100%;
	}

}

/* ============================================================
   LOVIN2LEARN CUSTOMIZATION - END
   ============================================================ */