/* 
Theme Name:		House of Chords 2025
Theme URI:		
Author:			Ellsworth Media
Author URI:		http://www.ellsworthmedia.com/
Version:		1.3
*/


/*-----------------------------------------------------------------------------------*/
/* Body, Typography and some main Elements
/*-----------------------------------------------------------------------------------*/

html * { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; -webkit-font-smoothing:antialiased; -moz-font-smoothing:antialiased; font-smoothing: antialiased; }
body { font-size:18px; color:#000; font-family: brandon-grotesque, sans-serif; font-weight: 400; font-style: normal; overflow-x:hidden; }
input, textarea { -webkit-appearance:none; border-radius:0; }
input, textarea, select, label { font-family: brandon-grotesque, sans-serif; outline:0; }
input:focus, input:hover { outline:0; }
::-webkit-input-placeholder { color:#CBCBCB; opacity:1; }
:-moz-placeholder { color:#CBCBCB; opacity:1; }
::-moz-placeholder { color:#CBCBCB; opacity:1; }
:-ms-input-placeholder { color:#CBCBCB; opacity:1; }

h1, h2, h3, h4, h5, h6 { padding:0; margin:0 0 25px 0; line-height:1.1; font-weight:700; letter-spacing:0; }
h1 { font-size:48px; text-transform: uppercase; }
h2 { font-size:44px; text-transform: uppercase; }
h3 { font-size:26px; }
h4 { font-size:16px; }
h5 { font-size:16px; }
h6 { font-size:16px; }
img { display:block; max-width:100%; height:auto; }
ul,ol { margin:0; padding:0; list-style:none; }
a, a:visited, a:active { text-decoration:none; -webkit-transition:all .3s ease-out; -moz-transition:all .3s ease-out; -o-transition:all .3s ease-out; -ms-transition:all .3s ease-out; transition:all .3s ease-out; }
a:focus, a:hover { text-decoration:none; outline:0; }
:focus, :hover { text-decoration:none; outline:0; }
p { margin:0 0 30px 0; line-height:1.5; }
.animate { transition:all 0.3s ease 0s; -webkit-transition:all 0.3s ease 0s; -moz-transition:all 0.3s ease 0s; -ms-transition:all 0.3s ease 0s; }
.no-animate { transition:none; -webkit-transition:none; -moz-transition:none; -ms-transition:none; }
strong { font-weight:700; }
.button { 
    padding:10px 30px; background:#000; text-align:center; display:inline-block;  border-radius: 24px;
    text-transform: uppercase; color:#FFF !important; font-size:18px; font-weight:700; letter-spacing: 5px;
}
    .button:hover { background:#F05523; color:#FFF !important; text-decoration: none !important; }

.registration-closed {
	padding:10px 30px; background:#ccc; text-align:center; display:inline-block;  border-radius: 24px;
    text-transform: uppercase; color:#000; font-size:18px; font-weight:700; letter-spacing: 5px;
}

.aligncenter {margin: 14px auto; display: block;}
img.alignleft {float: left; margin: 20px 25px 25px 0;}
img.alignright {float: right; margin: 20px 0 25px 25px;}

img.round-image {border-radius: 50%;}

.grecaptcha-badge {display: none;}


/*-----------------------------------------------------------------------------------*/
/* Structure
/*-----------------------------------------------------------------------------------*/

.container { margin:0 auto; width:1400px; padding:0; }
.view-mobile { display:none; }


/*-----------------------------------------------------------------------------------*/
/* Header styling
/*-----------------------------------------------------------------------------------*/

#header { 
	padding: 0; width:100%; z-index: 1000; position: fixed; height: 320px; 
}
.home #header { 
	background: rgb(0,0,0); 
	background: linear-gradient(180deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
}
    #header .logo { padding: 40px 0 0 0; float:left; margin:0; line-height:1; }
        #header .logo img { width: 420px; height: auto; }

    #menu-icon { display: none; }

    #header .header-right { float:right; display: block; position: relative; }

        /* social */
        #header .header-right .social-links { display: block; }
        #header .header-right > .social-links { float:right; padding: 12px 0 0 0; }

            #header .header-right .social-links li { float:right; margin: 0 0 0 5px; text-align:center; }

			#header .header-right .social-links li.social-icon a { position: relative; display:block; width:30px; height:30px; border-radius:50%; background:#fff; }
            #header .header-right .social-links li.social-icon a img { 
				display:block; width:auto; height: 21px;
				position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
				transition:all 0.3s ease 0s; -webkit-transition:all 0.3s ease 0s; -moz-transition:all 0.3s ease 0s; -ms-transition:all 0.3s ease 0s;
			}
                #header .header-right .social-links li.social-icon a:hover { background: #F05523; }

			#header .header-right .social-links li.student-login a {display: block; width: auto; color: #fff; margin: 8px 20px 0 0; font-size: 12px; font-weight: 700; text-transform: uppercase;}
			#header .header-right .social-links li.student-login a:hover { color:#F05523; }

        /* nav */
        #header .header-right nav.menu-main-menu-container { clear: right; float:right; margin: 15px 0 0 0; }
            #header .header-right nav.menu-main-menu-container ul li { float:left; margin:0 25px 0 0; position: relative; }
            #header .header-right nav.menu-main-menu-container ul li:last-child { margin-right:0; }
            #header .header-right nav.menu-main-menu-container ul li a { 
                font-weight:700; color:#FFF; padding-bottom: 15px; font-size:17px; letter-spacing: 1px; text-transform: uppercase; 
            }
            #header .header-right nav.menu-main-menu-container ul li a:hover,
            #header .header-right nav.menu-main-menu-container ul > li.current-menu-item > a,
            #header .header-right nav.menu-main-menu-container ul > li > ul li.current-menu-item a { color:#F05523; }

            #header .header-right nav.menu-main-menu-container ul li ul {display: none; position: absolute;}

            /* drop downs */
            #header .header-right nav.menu-main-menu-container li ul { 
                border-radius: 5px; position:absolute; z-index: 1600; margin-top: 34px; left:-15px; top: 0; background:#fff; display:none; 
                box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.3);
            }
                #header .header-right nav.menu-main-menu-container li ul li { 
                    border-bottom: solid 1px #B9B9B9; margin:0; padding: 0; float:none; position:static; line-height:1.3; 
                    min-width: 200px;
                }
                #header .header-right nav.menu-main-menu-container li ul li a { 
                    color: #000; font-size:13px; font-weight: 400; display:block; padding:12px 15px; white-space: nowrap; 
                    letter-spacing: 2px; 
                }
                #header .header-right nav.menu-main-menu-container li ul li:last-child {border: none;}
                
            #header .header-right nav.menu-main-menu-container li:hover ul {display: block !important;}

    
    /* mobile menu */
    #header .nav-container { 
        z-index: 50000;
        position:fixed; top:0; right:-480px; width: 100%; max-width:480px; height:100%; overflow-y:auto; 
        background:#FFF; color:#000;
        padding: 50px; 
        transition:all 0.3s ease 0s; -webkit-transition:all 0.3s ease 0s; -moz-transition:all 0.3s ease 0s; -ms-transition:all 0.3s ease 0s; 
    }
    #header .nav-container nav { margin:0 0 40px 0; width: 100%; }
        #header .nav-container nav ul li { margin:0; }
        #header .nav-container nav ul li a { font-weight:700; display: block; color:#000; padding: 0 0 10px 0; margin: 0; font-size:18px; letter-spacing: 2px; text-transform: uppercase; }
            #header .nav-container nav ul li a:hover, #header .nav-container nav ul li.current-menu-item > a { color:#F05523; }
        
        /* accordian */ 
        #header .nav-container nav ul li ul { display: none; margin: -5px 0 10px 0; }
        
        #header .nav-container nav ul li.current-menu-item ul,
        #header .nav-container nav ul li.current-menu-parent ul { display: block; }
        
        #header .nav-container nav ul li ul li a { font-weight: 300; text-transform: none; padding: 0 0 3px 0; margin: 0; font-size:15px; letter-spacing: 1px;} 
            
    #header .nav-container .menu-contact-section { font-size:16px; }
        #header .nav-container .menu-contact-section h2 { font-size: 18px; margin: 0; padding: 0 0 10px 0; font-weight:700;  }
        #header .nav-container .menu-contact-section p a { color:#F05523; }
        #header .nav-container .menu-contact-section p a:hover { text-decoration:underline; }

    #header .nav-container .menu-contact-section .social-links { }
        #header .nav-container .menu-contact-section .social-links li { float:left; margin:0 7px 0 0; text-align:center; }
        #header .nav-container .menu-contact-section .social-links li a { display:block; width:30px; height:30px; border-radius:50%; background:#F05523; }
       		
			 #header .nav-container .menu-contact-section .social-links li.social-icon a img { 
				display:block; width:auto; height: 21px;
				position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
				transition:all 0.3s ease 0s; -webkit-transition:all 0.3s ease 0s; -moz-transition:all 0.3s ease 0s; -ms-transition:all 0.3s ease 0s;
			}
                #header .nav-container .menu-contact-section .social-links li.social-icon a:hover { background: #F05523; }

		
    #header .nav-container .menu-close { position:absolute; right:20px; top:15px; }
		#header .nav-container .menu-close img { width: 32px; height: auto; }

    #header.show-menu .nav-container { right:0; }


/*-----------------------------------------------------------------------------------*/
/* Shared styling
/*-----------------------------------------------------------------------------------*/

#page-hero {background-size: cover; background-position: center center; height: 320px; width: 100%; background-color: #000;}
    #page-hero-inner {
        background: rgb(0,0,0); 
		background: linear-gradient(180deg, rgba(0,0,0,0.66) 0%, rgba(0,0,0,0) 100%);
		height: 320px; width: 100%; 
    }
        #page-hero h1 {
            position: absolute; text-align: center; color: #fff; margin-top: 100px; padding: 70px 0 80px 0; width: 100%;
        }

#welcome {padding: 70px 0 40px 0;}

    #welcome-left {float: left; width: 32%;}
        #welcome-left h1, #welcome-left h2 { letter-spacing: 5px; font-size: 32px; line-height: 1.3; }
    #welcome-right {float: right; width: 65.5%;}
        
        #welcome-right p {  }

        #welcome-right ul, #welcome-right ol { padding: 0 0 20px 0; }
            #welcome-right ul li {list-style: disc; margin-left: 20px; padding: 0 0 5px 0;}
            #welcome-right ol li {list-style: decimal; margin-left: 20px; padding: 0 0 5px 0;}

        #welcome-right a {color: #F05523;}
        #welcome-right a:hover {color: #F05523; text-decoration: underline;}

    #welcome-single {text-align: center; margin: auto; max-width: 740px; width: 100%;}

#expect {background: #F4F4F4; padding: 20px 0 40px 0;}
    
    #expect-icon {margin: -110px auto 0 auto; display: block; width: 75px; height: 75px;}

    #expect h2 {padding: 30px 0 10px 0; color: #F05523; font-size: 22px; letter-spacing: 5px}
    #expect ul {width: 100%;}
        #expect ul li {
            display: flex; align-items: center; min-height: 32px;
			background: url(images/checkmark@2x.png) no-repeat left center; background-size: 24px 24px;
            float: left; width: 31.33%; padding: 0 0 0 40px; margin: 0 3% 20px 0;
            text-transform: uppercase; font-size: 16px; font-weight: 500;
        }
        #expect ul li:nth-child(3n) {margin-right: 0;}
        #expect ul li:nth-child(3n+1) {clear: both;}
        
        #expect ul.four-col li, 
        #expect ul.four-col li:nth-child(3n) { width: 21.75%; margin: 0 4% 0 0; }
        #expect ul.four-col li:nth-child(3n+1) {clear: none;}
            #expect ul.four-col li:nth-child(4n) {margin-right: 0;}
            #expect ul.four-col li:nth-child(4n+1) {clear: both;}

#secondary {padding: 60px 0;}
.page-template-template-about #secondary {padding: 70px 0;}
    #secondary .container > h2 { font-size: 24px; margin-bottom: 10px; color: #F05523; letter-spacing: 2px; line-height: 1.25; padding: 0 0 5px 0; }

    .page-template-template-lessons #secondary .container > p {max-width: 480px; text-align: center; margin: auto;}

    #secondary-left {float: left; width: 500px;}
        #secondary-left img {max-width: 500px; width: 100%; height: auto; border-radius: 50%;}
    #secondary-right {float: right; width: calc(100% - 560px); padding-top: 30px; }
        #secondary-right h2 { font-size: 24px; margin-bottom: 10px; }
        #secondary .container a { color: #F05523; }
			#secondary .container a:hover { color: #F05523; text-decoration: underline; }

.archive #news {padding: 35px 0 45px 0;}
    #news h2 {font-size: 28px; float: left;  margin: 0 auto 10px auto; width: 50%; line-height: 45px;}    
    #news h2 .icon {float: left; margin-right: 10px; width: 45px; height: 45px;}    
    #news .view-all {
        line-height: 45px; display: block; float: right; text-align: right; letter-spacing: 2px; margin: 0 auto; width: 50%; color: #F05523; font-weight: 700;
    }
        #news .view-all:hover { text-decoration: underline; }
   
    #news ul#posts-grid {width: 100%; padding: 15px 0 0 0; margin: 0;}
        #news ul#posts-grid li {float: left; width: calc(33.33% - 27px); padding: 0; margin: 0 40px 40px 0;}
                
            #news ul#posts-grid li img {padding: 0; margin: 0 auto 5px auto; border-radius: 5px; width: 100%; height: auto;}
                #news ul#posts-grid li img:hover { opacity: 0.8; } 

            #news .meta {color: #B9B9B9; font-weight: 500; display: block; padding-top: 10px; text-transform: uppercase; letter-spacing: 5px; }
            #news ul#posts-grid li h3 { padding: 5px 0 10px 0; margin: 0; line-height: 1; font-size: 28px; }
                #news ul#posts-grid li h3 a {color: #F05523; }
                #news ul#posts-grid li h3 a:hover {color: #F05523; text-decoration: underline; }
            #news ul#posts-grid li p {padding: 0; margin: 0; font-weight: 18px; font-weight: 300;}
            #news ul#posts-grid li:nth-child(3n) {margin-right: 0;}

/* gallery */
.gallery {display: flex !important; flex-wrap: wrap; width: calc(100% + 20px); margin: 0 -10px !important;}
	.gallery br {display: none !important;}
	.gallery .gallery-item {float: none !important; margin: 10px !important; width: calc(33.333% - 21px) !important;}
		.gallery .gallery-item img {border: none !important; width: 100%; height: auto;}

.tour-gallery {display: flex; flex-wrap: wrap; margin: 5px;}
	.tour-gallery li {width: calc(50% - 10px); margin: 5px;}


/* page numbering */
#news .easy-wp-page-navigation li {margin: 0 2px 0 0; font-size: 13px;}
#news .easy-wp-page-navigation a {
	font-size: 15px; border: solid 1px #ccc; font-weight: normal;
}
#news .easy-wp-page-navigation a:hover,
#news .easy-wp-page-navigation span.current{
	color: #fff; font-size: 15px; background: #F05523; text-decoration: none; font-weight: normal; border: solid 1px #F05523;
}

/* lessons / programs */ 
#lessons-programs {padding: 0;}

    #lessons-programs h2 {font-size: 28px; float: left; margin: 0 auto; padding: 0 0 10px; width: 50%;}    
    #lessons-programs .view-all {
        display: block; float: right; text-align: right; letter-spacing: 2px; margin: 0 auto; width: 50%; color: #F05523; font-weight: 700;
    }
        #lessons-programs .view-all:hover { text-decoration: underline; }
   
    #lessons-programs ul {width: 100%; padding: 20px 0 40px 0; margin: auto;}
        #lessons-programs ul li {
            float: left; width: calc(25% - 15px); padding: 0; margin: 0 20px 20px 0; 
            border-radius: 5px; background-size: cover; height: 200px; 
			filter: grayscale(1);
			-webkit-transition:all .3s ease-out; -moz-transition:all .3s ease-out; -o-transition:all .3s ease-out; -ms-transition:all .3s ease-out; transition:all .3s ease-out;
        }
                
        #lessons-programs ul li a { display: block; position: relative; width: 100%; height: 200px; } 
            #lessons-programs ul li:hover { filter: grayscale(0);} 
            #lessons-programs ul li img {
				z-index: 1; display: block; width: 100%; height: auto; position: absolute; bottom:0; left: 0; 
			}
            #lessons-programs ul li h3 { 
                text-shadow: 0 0 10px #000;
				z-index: 500; padding: 0; margin: 0 0 2px 0; letter-spacing: 5px; line-height: 1; font-size: 14px; text-transform: uppercase; 
                position: absolute; bottom: 20px; left: 20px; color: #fff; }
                #lessons-programs ul li a:hover h3 {color: #fff; }
            #lessons-programs ul li p {padding: 0; margin: 0; color: #fff; font-weight: 300;}
            #lessons-programs ul li:nth-child(4n) {margin-right: 0;}

/* secondary pages */
#main {padding: 50px 0; width: 100%;}
    #main h2 {font-size: 24px; padding: 0 0 15px 0; margin: 0;}
    #main h3 {font-size: 21px; padding: 0 0 15px 0; margin: 0; text-transform: uppercase;}
    #main a {color: #F05523;}
        #main a:hover {text-decoration: underline;}

    #main a.button {color: #fff;}
    #main a.button:hover {color: #fff; text-decoration: none;}
    
    .content-col p {margin: 0; padding: 0 0 20px 0;}

    .content-col ul, .content-col ol {margin: 0; padding: 0 0 20px 0;}
        .content-col ul li {list-style: disc; margin-left: 17px;}
        .content-col ol li {list-style: decimal; margin-left: 17px;}


    .content {max-width: 740px; width: 100%; margin: 20px auto;}

    .left-side {width: 40%; float: left;}
        .left-side iframe {margin: 0 0 20px 0; padding: 0;}
        .left-side p {margin: 0 0 20px 0; padding: 0;}
    
    .right-side {width: 55%; float: right;}

    .table-lined {width: 100%;}
        .table-lined tr td {border-bottom: solid 1px #B9B9B9; padding: 5px 0;}
        .table-lined tr:last-child td {border-bottom: solid 1px #fff;}

	#mid-banner {width: 100%; height: 60vh; background-size: cover; background-position: center center;}


/*-----------------------------------------------------------------------------------*/
/* Home styling
/*-----------------------------------------------------------------------------------*/

.home {display: none;} 

#home-hero { position:relative; background: #000; height: calc(100vh - 145px); min-height: 400px; }
	
    #home-hero .slides li { 
        height: calc(100vh - 145px); min-height: 400px; background-repeat:no-repeat; background-position:center center; background-size:cover; 
    }
	#home-hero .flex-direction-nav { display:none; }
    #home-hero .flex-control-nav { width:100%; bottom:30px; position:absolute; z-index: 500; text-align:center; left:0; } 
		#home-hero .flex-control-nav li { display:inline-block; vertical-align:middle; margin:0 6px; }
		#home-hero .flex-control-nav li a { display:block; width:18px; height:18px; border-radius:50%; text-indent:-9999px; background:#F05523; }
		#home-hero .flex-control-nav li .flex-active { background:none; border:4px solid #F05523; }

#featured-links {height: 145px; padding-top: 45px; background: #000;}
    #featured-links ul {width: 100%; display: flex; flex-wrap: wrap;}
        #featured-links ul li {width: 31.33%; padding: 0; margin: 0 3% 0 0;}
                
            #featured-links ul li img {width: 48px; float: left; margin: 0 15px 0 0;}
        
            #featured-links ul li h2 { padding: 0; margin: 0 0 2px 0; letter-spacing: 5px; line-height: 1; font-size: 20px; text-transform: uppercase; }
                #featured-links ul li h2 a {color: #fff; }
                #featured-links ul li:hover h2 a {color: #F05523; }
            #featured-links ul li p {padding: 0; margin: 0; color: #fff; font-size: 18px; font-weight: 300;}
	            #featured-links ul li p a {color: #fff;}
            #featured-links ul li:nth-child(3n) {margin-right: 0;}

.home #welcome {padding: 70px 0;}
    .home #welcome-left {float: left; width: 37%;}
    .home #welcome-right {float: right; width: 59%;}
    

.home #expect {padding: 70px 0 170px 0;}
    
#websites {margin-top: -140px; padding: 0;}
    #websites ul {width: 100%; padding: 20px 0 40px 0; margin: auto;}
        #websites ul li { 
			float: left; width: calc(33.33% - 15px); padding: 0; margin: 0 20px 20px 0; border-radius: 5px; background-size: cover; height: 240px; 
			filter: grayscale(1);
		}
            #websites ul li a { display: block; position: relative; width: 100%; height: 240px; } 
            #websites ul li:hover { 
				filter: grayscale(0); 
				-webkit-transition:all .3s ease-out; -moz-transition:all .3s ease-out; -o-transition:all .3s ease-out; -ms-transition:all .3s ease-out; transition:all .3s ease-out;
			} 

            #websites ul li img.shade {z-index: 1; display: block; position: absolute; bottom:0; left: 0; width: 100%; height: auto; }
                
            #websites .site-logo {height: auto; z-index: 1; display: block; position: absolute; bottom: 45px; left: 20px; } 
            #websites #site-lilrockers {width: 163px;} 
            #websites #site-milltown {width: 238px;} 
            #websites #site-getloud {width: 103px;} 

            #websites ul li h3 { 
                z-index: 100; padding: 0; margin: 0 0 2px 0; letter-spacing: 5px; line-height: 1; font-size: 14px; text-transform: uppercase; 
                position: absolute; bottom: 20px; left: 20px; color: #fff; }
                #websites ul li a:hover h3 {color: #fff; }
            #websites ul li p {padding: 0; margin: 0; color: #fff; font-weight: 18px; font-weight: 300;}
            #websites ul li:nth-child(3n) {margin-right: 0;}

#testimonials {text-align: center; padding: 60px 0 100px 0; }
    #testimonials .icon {margin: 0 auto 20px auto; display: block; width: auto; height: 42px;}
    #testimonials h2 {text-align: center; font-size: 28px; margin: 0 auto 10px auto; width: 100%; letter-spacing: 3px;}
    #testimonials .view-all {
        display: block; text-align: center; font-weight: 700; letter-spacing: 2px; margin: 0 auto 30px auto; width: 100%; color: #F05523;
    }
        #testimonials .view-all:hover { text-decoration: underline; }
    
    #testimonials .slider { max-width:800px; margin:0 auto; }
        
        #testimonials .slider .slides li { display:none; }
        #testimonials .slider .slides li blockquote { font-size:24px; margin:0 0 20px 0; padding:0; border:none; font-style: italic; font-weight: 300; }
        #testimonials .slider .slides li .author { 
            color: #B9B9B9; font-weight:700; margin: 30px 0 10px 0; font-size:18px; text-transform: uppercase; letter-spacing: 3px; 
            font-style: normal;
        }
        
        #testimonials .slider .flex-direction-nav { display:none; }
        #testimonials .slider .flex-control-nav { margin:20px 0 0 0;  }
            #testimonials .slider .flex-control-nav li { display:inline-block; padding: 0; margin:0 5px; }
            #testimonials .slider .flex-control-nav li a { 
                line-height: 1; width:16px; height:16px; display:block; border-radius:50%; background:#F05523; text-indent:-9999px; opacity: 0.5; 
            }
            #testimonials .slider .flex-control-nav li a.flex-active { opacity: 1; }

        #testimonials ul li span.author {font-weight: 500; display: block; padding-top: 10px;}

.home #news {background: #F4F4F4; padding: 40px 0 25px 0;}

#instagram {text-align: center; padding: 50px 0; }
    #instagram .icon {margin: 0 auto 20px auto; display: block; width: auto; height: 45px;}
    #instagram .button {margin: 20px auto 0 auto;}


/*-----------------------------------------------------------------------------------*/
/* Contact Us
/*-----------------------------------------------------------------------------------*/

.page-template-template-contact .left-side {width: 47%;}
.page-template-template-contact .right-side {width: 47%;}

/*-----------------------------------------------------------------------------------*/
/* Programs
/*-----------------------------------------------------------------------------------*/

#programs {padding: 40px 0;}

    #programs ul {width: 100%; padding: 0; margin: auto;}
        #programs ul li {
            float: left; width: calc(50% - 20px); padding: 0; margin: 0 40px 40px 0; 
        }
            #programs ul li:nth-child(2n) {margin-right: 0;}
                
            #programs ul li img {
                filter: grayscale(1);
				-webkit-transition:all .3s ease-out; -moz-transition:all .3s ease-out; -o-transition:all .3s ease-out; -ms-transition:all .3s ease-out; transition:all .3s ease-out;
				display: block; width: 100%; height: auto; border-radius: 5px; padding: 0; margin: 0 0 20px 0;
            }
            #programs ul li img:hover { filter: grayscale(0); } 

            #programs ul li img.gradient {z-index: 1; display: block; width: 100%; height: auto; position: absolute; bottom:0; left: 0; }
            #programs ul li h2 { padding: 0; margin: 0 0 2px 0; line-height: 1; font-size: 28px; }
                #programs ul li h2 a {color: #F05523;}
            #programs ul li p {min-height: 120px; padding: 10px 0; margin: 0; font-weight: 300;}


/*-----------------------------------------------------------------------------------*/
/* Camps
/*-----------------------------------------------------------------------------------*/

.page-template-template-camps #welcome {padding: 50px 0 70px 0;}
	.page-template-template-camps #welcome h2 {font-size: 36px;}

#covers {display: flex; flex-wrap: wrap;}
	#covers img {height: auto; width: 25%;}

.page-template-template-camps #programs ul li .no-hover img:hover {opacity: 1;}

/*-----------------------------------------------------------------------------------*/
/* Testimonials
/*-----------------------------------------------------------------------------------*/

/* secondary pages */
.page-template-template-testimonials #main {padding-top: 0;}

.page-template-testimonials #welcome {padding: 70px 0 0 0;}

body .collapseomatic {
    background-image: url(images/accordion_plus_normal.svg) !important;
    background-position: right center; background-size: 25px 25px; 
    background-repeat: no-repeat;
    border-top: solid 1px #B9B9B9;
}
    body .collapseomatic:hover {color: #000; text-decoration: none;}

body .colomat-close {background-image: url(images/accordion_x_normal.svg) !important;}
  

body #main h3.collapseomatic {  
    text-align: left; font-size: 24px; color: #F05523;
    padding: 20px 50px 20px 0; margin: 2px auto; 
    text-transform: uppercase;
    position: relative;
}

body h3.collapseomatic span {  
    left: 360px; top: 25px;
    position: absolute;
    font-size: 18px; color: #000; font-weight: 300;
    text-transform: none;
}

    
body .collapseomatic_content { padding: 0 0 30px 0; margin: 0; }

body #main .content .collapseomatic_content p {width: 100%; max-width: 100%; padding: 0 0 10px 0; margin: 0;}
    

body .collapseomatic:first-of-type {border: none;}

/*-----------------------------------------------------------------------------------*/
/* External
/*-----------------------------------------------------------------------------------*/

.page-template-template-external #page-hero,
.page-template-template-external #page-hero-inner { height: 220px;}

.page-template-template-external #welcome { padding: 40px 0 20px 0; } 
    .page-template-template-external #welcome .container { margin-left: auto; margin-right: auto; width: 100%; max-width: 740px; } 
    .page-template-template-external #welcome img { margin: 0 auto 10px auto; display: block; } 

	.page-template-template-external #secondary #secondary-left img {border-radius: 50%;}


/*-----------------------------------------------------------------------------------*/
/* Single
/*-----------------------------------------------------------------------------------*/

.single #page-hero p.title {
    margin:0 0 25px 0; line-height:1.1; font-weight:700; letter-spacing:0;
    position: absolute; text-align: center; color: #fff; margin-top: 100px; padding: 70px 0 80px 0;
    width: 100%; font-size:44px; text-transform: uppercase;
}

.single .size-news-thumb {margin: 0 0 20px 0; }

.single .meta {color: #B9B9B9; font-weight: 500; display: block; padding-bottom: 10px; text-transform: uppercase; letter-spacing: 5px; }
            

/*-----------------------------------------------------------------------------------*/
/* Footer styling
/*-----------------------------------------------------------------------------------*/

#lessons-programs.prefooter {padding: 60px 0 20px 0; background: #F4F4F4;}

footer {padding: 50px 0;}
    
    footer p {padding: 0; margin: 0; text-align: right; float: right; width: 50%; line-height: 1;}
        footer p a {color: #000;}
            footer p a:hover {color: #F05523;}
    footer hr {background: #B9B9B9; height: 1px; width: 100%; margin: 15px auto;}
    footer img {float: left; height: auto;}

    #footer-row-1 img {width: 225px;}
    #footer-row-1 p {padding-top: 6px; text-transform: uppercase; font-weight: 700; font-size: 16px;}
    #footer-row-1 p br {display: none;}
    
    #footer-row-2 img {width: 135px;}
    #footer-row-2 p {font-size: 14px;}


/*-----------------------------------------------------------------------------------*/
/* Contact Form
/*-----------------------------------------------------------------------------------*/

.field { margin: 0 auto; padding: 0 0 10px 0; clear: both; }
.field label {font-size: 13px; text-transform: uppercase; letter-spacing: 2px; font-family:"AvenirLTStdRoman", Arial, sans-serif; }

.field-alt {padding: 10px 0 0 0;}
.field-button-holder {padding: 20px 0 0 0;}

.field p {margin: 0; padding: 0;}

.field input[type="text"], 
.field input[type="number"], 
.field input[type="tel"],
.field input[type="password"],
.field input[type="email"],
.field .wpcf7-date {
    width: 100%;
    background-color: #E5E5E5;
    padding: 0 12px;
    border: solid 1px transparent;
    line-height: 40px;
    color: #000;
    margin: 2px 0 5px 0;
    border-radius: 10px;
}

/* date */
.wpcf7-form-control-wrap {}
.field .wpcf7-date {
    -webkit-appearance: none;
    -moz-appearance: none;
    background-color: #fff; 
    /*background-image: url(images/forms-calendar.svg); background-position: right center; background-repeat: no-repeat;*/
}

.field .wpcf7-text:focus {border: solid 1px #F05523;}
.wpcf7-text::placeholder, .wpcf7-textarea::placeholder {color: #999;}

.field textarea {
    width: 100%;
    background-color: #E5E5E5;
    padding: 12px 12px;
    border: solid 1px transparent;
    height: 100px;
    color: #000;
    margin: 2px 0 5px 0;
    border-radius: 10px;
}

.field span.wpcf7-list-item {display: inline-block; margin: 0; padding: 5px 0 0 0;}
    .field .col-list span.wpcf7-list-item {width: 33.33%; float: left;}
.field .wpcf7-list-item-label {padding-left: 5px;}

.field input[type=checkbox] {
    appearance:checkbox;
	-moz-appearance:checkbox;
	-webkit-appearance:checkbox;
}

.field select {
    width: 100%;
    background-color: #fff;
    padding: 3px 12px 0 12px;
    border: solid 1px transparent;
    height: 48px;
    color: #002848;
    margin: 2px 0 5px 0;
    background-image: url(images/forms-select-box-arrow.svg); background-position: right center; background-repeat: no-repeat;
    
    -webkit-appearance: none;
    -moz-appearance: none;
    text-indent: 1px;
    text-overflow: '';
    
}

.field .button {border: none;}


/*-----------------------------------------------------------------------------------*/
/* Video 16:9
/*-----------------------------------------------------------------------------------*/

.video-wrapper {position: relative; padding-bottom: 56.25%; height: 0; }
    .video-wrapper iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}
    .video-wrapper p {margin: 0 !important; padding: 0 !important;}



/*-----------------------------------------------------------------------------------*/
/* WooCommerce
/*-----------------------------------------------------------------------------------*/

/*product page */
.single-product #page-hero p.title a {color: #fff;}
.single-product .content {max-width: 100%; margin: 50px auto;}

.woocommerce div.product p.price, 
.woocommerce div.product span.price {
	color: #000 !important; font-size: 32px !important; font-weight: bold;
}

.woocommerce-product-gallery__trigger { display: none; }

.product_meta {display: none !important;}

.zoomImg {display: none !important;}

.woocommerce #main .content form, .woocommerce-page #main .content form {margin: 0;}

.woocommerce .wcpa_form_outer {margin: 0 0 10px 0;}
.woocommerce .wcpa_wrap .wcpa_field_wrap {margin: 0 0 20px !important;}

.woocommerce-page div.product .woocommerce-tabs {border-top: solid 1px #c6d0e9; margin-top: 20px; padding-top: 30px;}

.woocommerce div.product .woocommerce-tabs ul.tabs {display: none;}

#tab-description p {margin: 0 0 15px 0;}
#tab-description ul {margin: 0; padding: 0 0 15px 0;}
	#tab-description ul li {list-style: disc; margin: 0 0 0 17px; padding: 0 5px;}


.summary > .price {/*display: none !important;*/}
.woocommerce div.product form.cart .variations label {color: #000; padding-top: 5px;} 
.woocommerce div.product form.cart .variations select {background: #fff; border: solid 1px #ccc; border-radius: 5px; padding: 5px;}

.single table.variations {margin-bottom: 0 !important;}

body .form-control {border: none !important; box-shadow: none !important; -webkit-box-shadow none !important;}
body .wcpa_wrap .wcpa_field_label {display: block;}
.wcpa_wrap .wcpa_field_wrap {margin: 0 0 75px !important;}
.wcpa_wrap .wcpa_type_radio-group {margin: 0 !important;}

/* cart */
.woocommerce-cart .content {max-width: 100%;}

.woocommerce #main .content form,
.woocommerce-page #main .content form {max-width: 100%;}
.woocommerce .quantity .qty {height: 48px; border: solid 1px #ccc; border-radius: 5px;}

.woocommerce-cart .product-thumbnail {display: none;}

.woocommerce-cart table.cart td.actions .coupon .input-text {width: 130px !important; height: 40px !important;}

.woocommerce div.product form.cart .button {height: 48px; font-size: 18px; background: #F05523;}
	.woocommerce div.product form.cart .button:hover {background: #000;}

.woocommerce #main a.button, .woocommerce .cart .button {background:#FE843F !important;}
	.woocommerce #main a.button:hover, .woocommerce .cart .button:hover {background:#000 !important; color:#FFF !important;}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {background:#FE843F !important;}
	.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {background:#000 !important; color:#FFF !important;}

/* checkout */
.woocommerce-checkout .content {max-width: 100%;}
.wc_payment_method {list-style: none !important;}

.woocommerce-checkout #billing_country_field {/*display: none;*/}

h3#order_review_heading, #customer_details h3 {margin-top: 20px;}

.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea {border: solid 1px #ccc; padding: 5px 10px;}

#main .content .checkbox input[type=checkbox] {
    appearance:checkbox;
	-moz-appearance:checkbox;
	-webkit-appearance:checkbox;
	position: relative !important; margin: -2px 5px 0 0;
}

.woocommerce #payment #place_order, .woocommerce-page #payment #place_order { float: left !important; height: 48px;}

.woocommerce-checkout #payment #place_order, .woocommerce-checkout button.button {background:#FE843F !important;}
	.woocommerce-checkout #payment #place_order:hover, .woocommerce-checkout button.button:hover {background:#000 !important; color:#FFF !important;}


