/*
Theme Name: AZ Charter Schools
Theme URI: https://fosemckay.com/
Description: WordPress child theme.
Author: Justin Yingling
Author URI: https://fosemckay.com/
Template: twentytwenty
Version: 1.0
*/

@font-face { 
font-family: 'Avenir-Book';
    src: url('assets/fonts/AvenirNextLTPro-Demi.woff2') format('woff2'),
         url('assets/fonts/AvenirNextLTPro-Demi.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'Avenir-Medium'; 
    src: url('assets/fonts/AvenirNext-Medium.woff2') format('woff2'),
         url('assets/fonts/AvenirNext-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}


/* ------------------------------------------------------------ *\
	Fonts
\* ------------------------------------------------------------ */

@font-face {
    font-family: 'Avenir Next';
    src: url('assets/fonts/AvenirNext-Medium.woff2') format('woff2'),
        url('assets/fonts/AvenirNext-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('assets/fonts/AvenirNextLTPro-UltLtIt.woff2') format('woff2'),
        url('assets/fonts/AvenirNextLTPro-UltLtIt.woff') format('woff');
    font-weight: 200;
    font-style: italic;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('assets/fonts/AvenirNextLTPro-HeavyIt.woff2') format('woff2'),
        url('assets/fonts/AvenirNextLTPro-HeavyIt.woff') format('woff');
    font-weight: 900;
    font-style: italic;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('assets/fonts/AvenirNextLTPro-Demi.woff2') format('woff2'),
        url('assets/fonts/AvenirNextLTPro-Demi.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('assets/fonts/AvenirNextLTPro-It.woff2') format('woff2'),
        url('assets/fonts/AvenirNextLTPro-It.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('assets/fonts/AvenirNextLTPro-DemiIt.woff2') format('woff2'),
        url('assets/fonts/AvenirNextLTPro-DemiIt.woff') format('woff');
    font-weight: normal;
    font-style: italic;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('assets/fonts/AvenirNextLTPro-Heavy.woff2') format('woff2'),
        url('assets/fonts/AvenirNextLTPro-Heavy.woff') format('woff');
    font-weight: 900;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('assets/fonts/AvenirNextLTPro-UltLt.woff2') format('woff2'),
        url('assets/fonts/AvenirNextLTPro-UltLt.woff') format('woff');
    font-weight: 200;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('assets/fonts/AvenirNextLTPro-Regular.woff2') format('woff2'),
        url('assets/fonts/AvenirNextLTPro-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Avenir Next';
    src: url('assets/fonts/AvenirNextLTPro-Bold.woff2') format('woff2'),
        url('assets/fonts/AvenirNextLTPro-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
}


/* ==========================================================================
	K00lade Grid  - JY 
========================================================================== */
.section,[class*='col-'],:after,:before{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0}
.section{margin:0 auto;overflow:hidden;width:100%}
.section:after{clear:both;content:"";display:block}
[class*='col-']{float:left;padding:.3em}
.elementor-row [class*='col-'] {min-height: 0;padding:0} 
.col{padding:15px 4px}.col-1,.w100{width:100%}.col-2{width:50%}.col-3{width:33.33%}.col-4{width:25%}.col-5{width:20%}.col-6{width:16.6666666667%}.col-7{width:14.2857142857%}.col-8{width:12.5%}.col-9{width:11.1111111111%}.col-10,.w10{width:10%}.col-11{width:9.09090909091%}.col-12{width:8.33%}.col-05,.w5{width:5%}.col-15,.w15{width:15%}.col-20,.w20{width:20%}.col-25,.w25{width:25%}.col-30,.w30{width:30%}.col-35,.w35{width:35%}.col-40,.w40{width:40%}.col-45,.w45{width:45%}.col-50,.w50{width:50%}.col-55,.w55{width:55%}.col-60,.w60{width:60%}.col-65,.w65{width:65%}.col-70,.w70{width:70%}.col-75,.w75{width:75%}.col-80,.w80{width:80%}.col-85,.w85{width:85%}.col-90,.w90{width:90%}.col-95,.w95{width:95%}

/* main */
body {  background: #fff; font-size: 17px; line-height: 1.4; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale }
.shell { margin: 0 auto; max-width: 90%; width: 1200px }
.elementor { margin: 0 auto; max-width: 100% }
body p, h1, h2, h3, h4, h5, h6 { letter-spacing: .01rem }


/* ==========================================================================
	Header
========================================================================== */
#header { position: absolute; z-index: 10 }
#header { background: #002540 }
.page-template-template-home #header { background: none; position: absolute; z-index: 10}
.notice-btn { background: url('assets/images/panel-btn.jpg')no-repeat center center / contain; content: ''; display: block; height: 287px; margin-left: -42px; position: absolute; width: 42px; z-index: 20}
#notice-panel { height: auto; max-width: 100%; position: fixed; right: -802px; top: 120px; width: 800px; z-index: 11  }
.notice-panel--notice { background: #fff; color: #002540; font-size: 16px; min-height: 287px; padding: 30px; position: relative; width: 100% }
.notice-panel--notice span { background: #002540; color: #fff; display: inline-block; padding: 6px 12px; position: absolute; right: 0; text-align: right; top:0 }
.notice-panel--notice a {  background: #88C64C; color: #fff; display: inline-block; padding: 12px 30px; text-decoration: none }

/* ==========================================================================
	Menu
========================================================================== */
#menu-panel { background: #002540; display: none; height: 100vh; max-width: 100%; position: absolute; top: 0; width: 100%; z-index: 100 }
.menu-panel--cols { background: #002540; margin: 100px auto; max-width: 90%; width: 1200px; }
.menu-panel-toggle--close { color: #fff; font-size: 28px; position: absolute; right: 20px; top: -60px; z-index: 1000 } 
  
#menu-panel--main-nav-items li { list-style: none; margin: 0; padding: 0 } 
#menu-panel--main-nav-items li .sub-menu { margin: 0 0 0 12px; padding: 0 }
#menu-panel--main-nav-items li .sub-menu li { list-style: none; margin: 0; padding: 0 } 
#menu-panel--main-nav-items li .sub-menu li a { color: #fff; font-family: "Avenir Next"; font-size: 14px; line-height: 2; text-decoration: none }
#menu-panel--main-nav-items .nav-header { margin-bottom: 30px; padding-left: 0 } 
#menu-panel--main-nav-items .nav-header a { color: #88C64C; font-size: 20px; font-family: "Lora"; line-height: 2; text-decoration: none }  
#menu-panel--main-nav-items .nav-header a:hover { color: #fff } 
#menu-panel--main-nav-items li .sub-menu li a:hover { color: #88C64C }   
  
.menu-panel--cols { position: relative }
#menu-panel--tools { max-width: 100%; width: 285px } 
#menu-panel--tools .social-box ul li,
#menu-panel--tools .tool-box ul li { list-style: none; margin: 0; padding: 0 }  

#menu-panel--tools .search-box { margin: 0 0 30px; position: relative } 
#menu-panel--tools .search-box input[type=submit] { background: transparent!important; border: none; position: absolute; right: 0; text-indent: -999px; top: 0; z-index: 101 }
#menu-panel--tools .search-box span { color: #231F20; display: block; font-size: 22px; position: absolute; right: 12px; top: 10px; z-index: 10 }
  
#menu-panel--tools .social-box ul { text-align: center }
#menu-panel--tools .social-box ul li { display: inline-block; padding: 0 5px }  
#menu-panel--tools .social-box ul li a { color: #88C64C; text-decoration: none }
#menu-panel--tools .social-box ul li a:hover { color: #fff }
#menu-panel--tools .social-box { position: relative }
#menu-panel--tools .tool-box ul li a { color: #fff; font-family: "Avenir Next"; font-size: 20px; font-weight: bold;  line-height: 3.2; text-decoration: none }
#menu-panel--tools .social-box ul { position: relative; margin-left: 160px; top: 12px }
#menu-panel--tools .social-box .donate-btn { border: 3px solid #88C64C; color: #fff; display: inline-block; font-family: "Avenir Next"; font-weight: bold; left: 0; padding: 10px 28px; position: absolute; text-decoration: none; text-transform: uppercase }
#menu-panel--tools .social-box .donate-btn:hover { background: #88C64C }
#menu-panel--tools .tool-box { margin: 40px 0 0; position: relative }
#menu-panel--tools .tool-box ul li { margin: 0; text-indent: 20px }
#menu-panel--tools .tool-box ul li a:hover { color: #88C64C }
#menu-panel--tools .tool-box ul .membership-link:before { background: url('assets/images/membership-icon-grn.png')no-repeat center center / contain; content: ''; display: inline-block; height: 33px; margin-left: -45px; position: absolute; margin-top: 16px; width: 33px }  
#menu-panel--tools .tool-box ul .find-a-school-link:before { background: url('assets/images/find-a-school-icon-grn.png')no-repeat center center / contain; content: ''; display: inline-block; height: 39px;margin-left: -45px; position: absolute; margin-top: 12px; width: 29px }  
#menu-panel--tools .tool-box ul .find-a-vendor-link:before { background: url('assets/images/FindVendor-icon.png')no-repeat center center / contain; content: ''; display: inline-block; height: 39px;margin-left: -45px; position: absolute; margin-top: 12px; width: 29px }  

.clear { clear: both; display: block; float: none }  
  
@media(max-width: 1086px) { 
 .menu-panel--left-cols { width: 60% } 
 .menu-panel--right-cols.col-30 { width: 40% }
} 
@media(max-width: 860px) { 
  .menu-panel-toggle--close {  right: 10px; top: 10px } 
  #menu-panel { height: 100%; position: relative; margin-top: -60px }
  .menu-panel--cols { margin-top: 40px }
  #menu-panel--main-nav-items { margin-left: 0 }
  #menu-panel--main-nav-items .nav-header a { font-size: 24px }
  #menu-panel--main-nav-items li .sub-menu li a { font-size: 18px }
  #menu-panel--main-nav-items li .sub-menu li { margin: 12px 0 }
 .menu-panel--left-cols { width: 100% } 
 .menu-panel--right-cols.col-30 { width: 100% }
  #menu-panel--tools { width: 100% }
}   

/* ==========================================================================
	Home
========================================================================== */

/* video tabs */
#video-tabs-wrap { margin: 0 auto; max-width: 90% }
.video-tab-box { display: none; margin: 40px auto; text-align: center; width: 100% }
.video-tab-box--active { display: block }
.video-tab-title h2  { color: #fff; font-family: "Lora", Sans-serif; font-size:8rem; font-weight: normal; margin: 0 0 12px }
.video-tab-content p { color: #fff; font-family: 'Avenir Next', Sans-serif; font-size: 18px }
.video-tab-btn { margin: 40px auto; text-align: center; text-transform: uppercase  }
.video-tab-btn a { border: 3px solid #88C64C; color: #fff;  display :inline-block; font-family: 'Avenir Next', Sans-serif; font-weight: bold; padding: 10px 32px; text-decoration: none }
.video-tab-btn a:hover { background: #88C64C } 

#video-tabs { margin: 20px auto; padding: 0; position: relative; width: 800px  }
#video-tabs li { border-top: 2px solid #fff; display: block; line-height: 3; list-style: none; margin: 0; padding: 0; position: relative; text-align: center }
#video-tabs li a { color: #fff; text-decoration: none } 
#video-tabs li a:hover { font-weight: bold  }
#video-tabs li.active a { font-weight: bold  }
#video-tabs li.active:before { background: #fff; content: ''; display: block; height: 5px; left: 0; position: absolute; top: -7px; width: 100% } 
#video-tabs li.active span { background: url('assets/images/video-tab-marker.png')no-repeat top center / contain; content: ''; display: inline-block; height: 12px; left: 0; position: absolute; top: -14px; width: 100% }
 


@media(max-width:800px){
 #video-tabs-wrap { margin-top: 160px }
 .video-tab-title h2 { font-size: 4rem }
 #video-tabs { margin: 0 auto; max-width: 90% }
 #video-tabs li { font-size: 14px; width: 30% }   
}
#programs-tabs { margin: 0 auto 60px; padding: 0 }
#programs-tabs li { border-bottom: 2px solid #002540; font-size: 15px; line-height: 3; list-style: none; padding: 0; margin: 0; text-align: center }
#programs-tabs li a { color: #002540; list-style: none } 
#programs-tabs li.active:before { background: #002540; content: ''; display: block; height: 5px; position: absolute; top: 46px; width: 16.6666666667% } 
#programs-tabs li.active { font-weight: bold } 
#program-tab-box--1 { display: block }
#program-tab-box--2, #program-tab-box--3, #program-tab-box--4, #program-tab-box--5, #program-tab-box--6 { display: none }
.program-tab-box-content--inner  {  color: #002540; width: 80%; margin: 0 auto}
.program-tab-box-content h3 { color: inherit; font-family: "Lora", Sans-serif; font-size: 3rem;  font-weight: normal; margin: 0 0 14px }

.program-tab-box-content a { background: #88C64C; color: #fff;  display :inline-block; font-family: 'Avenir Next', Sans-serif; font-weight: bold; letter-spacing: 1px;margin: 20px 0;  padding: 15px 35px; text-decoration: none; text-transform: uppercase }
.program-tab-box-content a:hover { background: #88C64C } 

@media(max-width:800px){ 
  #programs-tabs { margin: 0 auto 20px }
  .program-tab-box-content { width: 100% }
  .program-tab-box-content--inner { margin: 20px auto 0; width: 100% }
  .program-tab-box-img, #programs-tabs li.active:before { display: none }
  #programs-tabs li.active { background: #002540 }
  #programs-tabs li.active a { color: #fff }
}

.hp-box-1:before,
.hp-box-2:before  { background: #00A5E1; content: ''; display: inline-block; height: 164px; left: -16px; position: absolute; top: 14px; width: 5px } 
.hp-box-1 h3, .hp-box-2 h3 { color: #002540; font-family: "Lora", Sans-serif; font-size: 28px; font-weight: normal; margin: 0 0 10px }
.hp-box-1 p, .hp-box-2 p { color: #002540; font-family: 'Avenir Next', Sans-serif; font-size: 18px  }
.hp-box-1 p a, .hp-box-2 p a { color: #002540; text-decoration: none }

.hp-story-box h3 { color: #002540; font-family: "Lora", Sans-serif; font-size: 3.5rem; font-weight: normal; margin-top: 34px }
.hp-story-box-top p { color: #002540; font-family: 'Avenir Next', Sans-serif; font-size: 16px  }
.hp-story-box-bottom p { color: #002540; font-family: "Lora", Sans-serif; font-size: 20px ; line-height: 1.4; margin-bottom: 12px }

.btn-green { background: #88C64C; color: #fff; display: inline-block; text-align: center; text-decoration: none }
.btn-green:hover { background: #5b8433 }
.btn-small  { padding: 8px 24px }
.btn-medium { padding: 15px 30px }

#gform_1 input[type=text], #gform_1 input[type=email] { background: #EBEBEB; border: none; padding: 10px 5px }
#gform_1 input.button, #gform_1 input[type=submit] { font-family: 'Avenir Next', Sans-serif; padding: 10px 28px; position: relative; top: 6px }
body #gform_1 input.button:hover, body #gform_1 input[type=submit]:hover, #gform_submit_button_1:hover { background: #5b8433; font-family: 'Avenir Next', Sans-serif; text-decoration: none }


/* ==========================================================================
	Main
========================================================================== */
#site-content { padding-top: 60px }


/* ==========================================================================
	Singular
========================================================================== */
.singular .entry-header { padding: 8rem 0 4rem }
.entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { max-width: 1120px }
@media (min-width: 700px) {
  .post-inner { padding-top: 2rem }
  .entry-content p, 
  .entry-content ol, 
  .entry-content ul, 
  .entry-content dl, 
  .entry-content dt { color: #002540; font-family: 'Avenir Next', Sans-serif; font-size: 17px}
}

/* meta */
.post-author.meta-wrapper { display: none }
/* pagination */
.pagination-single-inner { margin: 40px 0 }
.pagination-single .previous-post span,
.pagination-single .next-post span { color: #002540; font-size: 20px }
.pagination-single .previous-post .arrow,
.pagination-single .next-post .arrow { color: #88C64C }
.pagination-single .styled-separator { display: none }

/* ==========================================================================
	Typography
========================================================================== */
.entry-content h1, 
.entry-content h2, 
.entry-content h3, 
.entry-content h4, 
.entry-content h5, 
.entry-content h6,
.entry-title,
.widget-title { color: #002540; font-family: "Lora", Sans-serif; font-weight: normal } 


.elementor-text-editor h1 a,.elementor-text-editor h2 a,.elementor-text-editor h3 a,.elementor-text-editor h4 a,.elementor-text-editor h5 a,.elementor-text-editor h6 a { color: #002540 }
.elementor-text-editor h1 a:hover,.elementor-text-editor h2 a:hover,.elementor-text-editor h3 a:hover,.elementor-text-editor h4 a:hover,.elementor-text-editor h5 a:hover,.elementor-text-editor h6 a:hover { color: #88C64C }
.elementor-text-editor ul li a { color: #002540; text-decoration: underline }

/* Smaller Heading Font please */
@media (min-width: 700px) {
  h1, .heading-size-1 { font-size: 6.4rem; }
  h2, .heading-size-2 { font-size: 4.4rem; }
  h3, .heading-size-3 { font-size: 3.8rem; }
  h4, .heading-size-4 { font-size: 3.2rem; }
}
.entry-header-inner h1.entry-title { font-size: 3em }
.page-template-template-full-width .elementor-text-editor,  
.elementor-template-full-width .elementor-text-editor,  
.entry-content p a,
.widget-content a,
.widget-content ul li,
.widget-content ul li a { color: #002540; font-family: 'Avenir Next', Sans-serif; font-size: 17px; font-weight: 500 }

body:not(.overlay-header) .primary-menu > li > a, 
body:not(.overlay-header) .primary-menu > li > .icon, 
.modal-menu a, 
.footer-menu a, 
.footer-widgets a, 
#site-footer .wp-block-button.is-style-outline, 
.wp-block-pullquote:before, 
.singular:not(.overlay-header) .entry-header a, 
.archive-header a, 
.header-footer-group .color-accent, 
.header-footer-group .color-accent-hover:hover { color: #002540; font-family: 'Avenir Next', Sans-serif; font-size: 17px; font-weight: 500 }
button:not(.toggle), .button, .faux-button, .wp-block-button__link, .wp-block-file .wp-block-file__button, input[type="button"], input[type="reset"], input[type="submit"], .bg-accent, .bg-accent-hover:hover, .bg-accent-hover:focus, :root .has-accent-background-color, .comment-reply-link,button, .button, .faux-button, .wp-block-button__link, .wp-block-file .wp-block-file__button, input[type="button"], input[type="reset"], input[type="submit"]
{  background-color: #88C64C!important}
.color-accent, .color-accent-hover:hover, .color-accent-hover:focus, :root .has-accent-color, .has-drop-cap:not(:focus):first-letter, .wp-block-button.is-style-outline, a { color:  #002540 }



/* elementor rules */
.page-template-template-full-width .elementor-widget-accordion .elementor-tab-title a { color: #002540 }
.page-template-template-full-width .elementor-widget-accordion .elementor-tab-title .elementor-accordion-icon { color: #88C64C }

.page-template-template-full-width .elementor .elementor-text-editor a { color: #002540; text-decoration: underline } 


#candidates-dropdown form { float: right; margin: 10px 0 0 }
table.tafe-table td, table.tafe-table th { word-break: break-word }


/* ==========================================================================
	Footer
========================================================================== */
.footer-col--2:before,
.footer-col--4:before { background: #00A5E1; content: ''; display: inline-block; height: 124px; left: -20px; position: absolute; top: 0; width: 5px }
.footer-col--3:before { background: #00A5E1; content: ''; display: inline-block; height: 124px; left: -16px; position: absolute;; top: 0; width: 5px } 
 
@media(max-width:800px){
  .footer-col--3:before,.footer-col--2:before, .footer-col--4:before { display: none }
}




.find-a-vendor--main-form #searchvar { display: inline-block; line-height: 58px; width: 400px; font-family: "Avenir Next", Avenir Next; font-size: 26px }
.find-a-vendor--main-form #searchsubmit { width: 300px; font-family: "Avenir Next", Avenir Next; font-size: 26px }
.find-a-vendor--main-form #searchsubmit:hover { background: #002540; text-decoration: none }
@media(max-width:767px){
  .find-a-vendor--main-form #searchvar,
  .find-a-vendor--main-form #searchsubmit { max-width: 100%; width: 100%; margin: 0 auto 20px; display: block }
}



 

.vendor--sidebar--title .elementor-heading-title { margin: 1.25em 0 1em; padding: 0 }
.vendor-search-box--sidebar #searchvar {
    z-index: 1;
    background: #F5F5F5!important; 
    border: 0;
}
.vendor-search-button--sidebar { 
    z-index: 100;
    width: 50px;
    top: -6px;
    position: absolute;
    right: 0
}
.vendor-search-button--sidebar #searchsubmit {
    margin-top: 0;
    position: absolute
}
@media(max-width:767px){
  .vendor-search-button--sidebar { top: 74px }
}
.vendor-search-button--sidebar span { color: #89C64C; display: block; position: absolute; z-index: -1 }
.vendor-search-button--sidebar span { color: #89C64C }  
.vendors-found-label { font-family: "Avenir Next", Avenir Next; font-size: 14px; font-weight: 500 }
.search-results-wrapper .vendor-title { font-size: 22px; font-weight: bold; margin: 1em 0 }
.search-results-wrapper p { font-family: "Avenir Next", Avenir Next; font-size: 14px }
.search-results-wrapper .vendor-read-more-link,
#vendor-read-more-link-box--btn a { color: #88c64c; font-size: 14px; font-weight: 500; text-transform: uppercase }
.search-results-wrapper .vendor-read-more-link:hover,
#vendor-read-more-link-box--btn a:hover{ color: #002540 } 
.vendor-single--vendor-description .elementor-text-editor,
.vendor-single--contact-info .elementor-text-editor { font-size: 14px }

 
@media(max-width:1024px){
  .find-a-vendor--main-form #searchsubmit { max-width: 270px }
}

/* ==========================================================================
	K00lade Grid  - JY - RESPONSIVE RULES
========================================================================== */
/* Landscape Mobile & Down */
@media (max-width: 30em) { 
 .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 { width: 100% } 
}

/* Portrait Tablet to Landscape */
@media (min-width: 30em) and (max-width: 50em) {  
 .col-4, .col-6, .col-8, .col-10, .col-12 { width: 50% } 
 .col-1, .col-2, .col-3, .col-5, .col-7, .col-9, .col-11 { width: 100%; } .mobile-hide { display: none } 
}

/* Landscape to Small Desktop */
@media (min-width: 50em) and (max-width: 68.750em) {   
	
 .col-7 { width: 100% }
 .col-4, .col-8, .col-10, .col-12 { width: 50% }
 .col-40,.col-50 { width: 50%  } 
}