/**
Theme Name: Seventy 9
Author: Seventy9
Author URI: https://www.seventy9.co.uk/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: seventy-9
Template: astra
*/

/* Moved from Customizer */
html {scroll-behavior: smooth;}
a {outline: 0!important;}
.social-item-label {padding: 8px 20px!important;text-transform:uppercase}
.gform_footer input.gform_button {border-radius:10px!important;text-transform:uppercase}
.margin-remove {margin-top:0!important}

/* Sticky Header Fix */
header.site-header {position: sticky; top: -211px}
.admin-bar header.site-header {top: calc(-211px + 32px) !important}

/* Spacing Fixes */
.margin-left-auto {margin-left: auto !important}
.margin-right-auto {margin-right: auto !important}

.home-hero {min-height:900px;}
.inner-hero {min-height:400px;}
.inner-hero-video {min-height:900px;}
.main-header-menu .sub-menu {width:320px}

.home-cols .wp-block-uagb-info-box {box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.2);border-radius:20px; transition:0.2s ease-in-out;padding:20px}

.home-cols .wp-block-uagb-info-box:hover {background:#f2f2f2}

.home-cols .wp-block-uagb-info-box .uagb-ifb-image img {transition:0.2s ease-in-out}
.home-cols .wp-block-uagb-info-box:hover .uagb-ifb-image img {border-radius:20px}

.home-cols .wp-block-uagb-info-box .uagb-ifb-title-wrap {background:#1e5091;border-radius:10px;padding:10px 0 10px 0;transition: 0.2s ease-in-out}
.home-cols .wp-block-uagb-info-box:hover .uagb-ifb-title-wrap {background:#db1432;}
 .home-cols .uagb-ifb-title-wrap h3 {color:#fff!important; margin:0!important}

.wp-block-buttons .second a {background:#fff; border:#fff 3px solid;color:#db1432}

.ast-inline-flex {transition:0.2s ease-in-out}

.wp-block-columns {margin-bottom:0}

h2.header-pre:before {content:" ";background:#db1432; width:10px;height:25px;position:relative;margin-right:10px; display:inline-block;top:2px}

h3.header-pre:before {content:" ";background:#db1432; width:10px;height:25px;position:relative;margin-right:10px; display:inline-block;top:3px}


/* Team Page */
#team-member img {border-radius: 30px 0}
#team-member {min-height: 320px}

.read-more [aria-labelledby="uagb-tabs__tab0"], .read-more .uagb-tabs__active {display: none}

.read-more .uagb-tab, .read-more .uagb-tabs__body-wrap {border-style: none !important; border-radius: 0 !important;}

.read-more .uagb-tab {top: -20px}

.read-more .wp-block-uagb-tabs {margin: 0;flex-direction: column-reverse !important}

.read-more .uagb-tabs__wrap .uagb-tabs__body-container {padding: 0}

.read-more .uagb-tabs__wrap .uagb-tabs__body-container p {padding-bottom: 1.4em}

/* Testimonial Speech Bubble */
.sb-testimonial:before {
	content: "";	width: 0px;
	height: 0px;	position: absolute;
	border-left: 25px solid transparent;
	border-right: 25px solid #fff;
	border-top: 25px solid #fff;
	border-bottom: 25px solid transparent;
	left: -26px;	top: 0px;
}

.sb-testimonial {
	box-shadow: 4px 4px 5px #9993 !important
}

/* Button Styles */

/* Register */
.wp-block-buttons.register a {background: rgba(219,20,50,1);border:0;border-radius:10px;padding:20px 40px!important; transition:0.2s ease-in-out!important;}

.wp-block-buttons.register a:hover {background: rgba(30,80,145,1); border:0; border-radius:10px; padding:20px 40px;transition:0.2s ease-in-out}

/* FAQ Accordions */
.emergency-body {
	font-size: 22px
}
.faq-tabs a {color:#fff;text-decoration:underline;}

.uagb-tab {border-radius:10px!important;padding:10px 20px!important}

.uagb-faq-item {background:linear-gradient(90deg, rgba(103,186,235,1) 0%, rgba(30,80,145,1) 91%, rgba(30,80,145,1) 100%);margin-bottom:20px;transition:0.2s ease-in-out}

.uagb-faq-item:hover {transform:scale(1.05);}

.uagb-faq-item.uagb-faq-item-active {margin-bottom:20px;}

.faq-review {font-size:.7em}

/* General Tables */
.wp-block-table th {background: #ea4335;color:#fff}
.wp-block-table tr:nth-child(even) {background: #F1EDED}

.medal-table tr th:nth-child(2) {background:linear-gradient(180deg, rgba(245,188,79,1) 0%, rgba(219,165,20,1) 91%, rgba(219,165,20,1) 100%);}
.medal-table tr th:nth-child(3) {background:linear-gradient(0deg, rgba(112,112,111,1) 0%, rgba(161,162,163,1) 91%, rgba(161,162,163,1) 100%);
}
.medal-table tr th:nth-child(4) {background:linear-gradient(180deg, rgba(186,117,21,1) 0%, rgba(128,74,0,1) 91%, rgba(128,74,0,1) 100%);
}

.comp-table td, .medal-table td {font-weight:800;}

.comp-table th, .medal-table tr th:first-child {background:#4488c1}

/* Holiday Form */
.holiday-form #field_5_36 input, .holiday-form #field_5_36 select {min-height:45px!important}
.holiday-form .gfield_label {color: #000}
.holiday-form .hf-total {border:5px solid var(--ast-global-color-1);border-radius:20px;padding:20px 20px 5px 20px;text-align:center}
.holiday-form .hf-total input {text-align:center; border:0;font-size:22px!important}
.holiday-form .hf-bacs p {margin-bottom:0}

.holiday-form .hf-price input {border:0;display:inline-block;width:50%!important;}
.holiday-form .hf-price .ginput_container:before {content:"Price:";display:inline-block;font-size:16px;font-weight:600}

.hols-price {font-size:22px;color:#fff;background:#1e5091;text-align:center;padding:10px;border-radius:10px}

.holiday-form .gf-section-head {background:#bbb; padding:20px 20px 10px 20px!important;border-radius:20px}
.holiday-form .gf-section-head, .holiday-form .gf-section-head h3 {color:#fff;margin-bottom:0}

/* Calendar */
.notes-box .uagb-section__overlay {border-radius:20px!important}
.notes-box p {margin-bottom:0}

.uagb-tabs__body-wrap {border:0!important}
.uagb-tabs__body-container {padding:2px!important;}
.uagb-tabs__body-container .wp-block-table table, .uagb-tabs__body-container .wp-block-table td {
	border:0!important;
}
.uagb-tabs__body-container .wp-block-table tr:nth-child(odd) {background: #F1EDED}
.uagb-tabs__body-container .wp-block-table tr:nth-child(even) {background: #fff}

.calendar-container .wp-block-column {border:1px solid #ddd; border-radius:10px;padding:15px;-webkit-box-shadow: 0px 0px 15px 5px rgba(0,0,0,0.1); 
box-shadow: 0px 0px 15px 5px rgba(0,0,0,0.1);}

.calendar-container .wp-block-column.blank {border:0px; border-radius:10px;padding:15px;-webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.0); 
box-shadow: 0px 0px 15px 5px rgba(0,0,0,0);}

.calendar-container .wp-block-uagb-info-box {padding:15px;}

/* Policy Buttons */
.policy-buttons .wp-block-button {display:block;width:100%}

.policy-buttons a {
	background: linear-gradient(90deg, rgba(103,186,235,1) 0%, rgba(30,80,145,1) 91%, rgba(30,80,145,1) 100%);
	transition:0.2s linear;
	padding:20px 40px!important;
	border:0;
	border-radius:10px!important}

.policy-buttons a:hover {
	transform:scale(1.05);
}

/* Register Inverted */
.wp-block-buttons.register-invert a, .wp-block-buttons a {border-radius:10px!important;}

.wp-block-buttons.register-invert a:hover {background: #fff;color:#1e5091;border:3px #fff solid}

/* Image Curves */
.curve-tl, .curve-tl img {border-top-left-radius:30px}
.curve-tr, .curve-tr img {border-top-right-radius:30px}
.curve-br, .curve-br img {border-bottom-right-radius:30px}
.curve-bl .curve-bl img {border-bottom-left-radius:30px}

/* Mobile Menu Items */
.falcon-account-mob a {background-color: var(--ast-global-color-0);color:#fff;padding:20px;}

.falcon-logout-mob a {background-color: #ccc;color:#fff;padding:20px;margin-bottom:20px;}

/* Footer CTAs */
.pre-ft-cta .uagb-section__overlay {}

/* Footer */
.site-below-footer-wrap[data-section="section-below-footer-builder"] {min-height:50px!important;}

.footer-widget-area .wp-block-image, .footer-widget-area section {margin-bottom:10px;margin-top:10px}

/* Policy Pages */
.policy-list h3 {margin-bottom:0!important}
.policy-list h3:hover a {color:#1e5091!important}
.policy-list .uagb-post-grid-byline {display:none;}
.policy-intro {text-align:center;margin:30px 10px 10px 10px;font-size:22px}
.policy-backlink {text-align:center;}
body.single-policies .post-navigation {display:none;}

/* Scrollbar */
::-webkit-scrollbar {width: 15px;}
::-webkit-scrollbar-track {background: #fffff2;}
::-webkit-scrollbar-thumb {background: #ccc;}
::-webkit-scrollbar-thumb:hover {
  background: #555;}

/* Forms */
.gf-section-head {
	margin-top: 30px;
	padding: 0 !important;
}

input[type="submit"] {
	background: var(--ast-global-color-0) !important;
	color: var(--ast-global-color-5) !important;
	border-style: none !important;
	padding: 15px 30px 15px !important
}

.gpnf-nested-entries-container {
	display: flex;
	flex-direction: column-reverse;
}
.gpnf-nested-entries-container button {
	max-width: fit-content;
	margin: 0 auto 20px;
	border-radius: 10px
}
.gpnf-nested-entries-container td[colspan="3"]:after{
	content: " Please add a camp above."
}
#gform_fields_6 input, #gform_fields_6 select, .gpnf-nested-entries-container table {
	border-radius: 10px
}

.full-vh {min-height: calc(100vh - 572px)}

/* Login Page */
 .falcon-register {border:1px solid #eee; padding:20px; -webkit-box-shadow: 0px 0px 15px 5px rgba(0,0,0,0.15); transition:0.2s ease-in-out;
box-shadow: 0px 0px 15px 5px rgba(0,0,0,0.15); border-radius:20px 0 20px 0}
.falcon-register:hover {-webkit-box-shadow: 0px 0px 15px 5px rgba(30,80,145,0.4); 
box-shadow: 0px 0px 15px 5px rgba(30,80,145,0.4);}

.falcon-login {color:#fff;}
.falcon-login .gf_login_links a {color:#fff}
.falcon-login .ginput_container_text input {width: 100%; border-radius: 10px;}

/* Account Pages */
.falcon-btn a {background: var(--ast-global-color-0); color: #fff; border-radius: 20px!important; transition:0.2s ease-in-out}
.falcon-btn a:hover {background: #fff; color: var(--ast-global-color-0);}

.waiting-list-wrapper {margin-top:10px;font-size:18px}
a.waiting-list-btn {background: var(--ast-global-color-1); color: #fff; border-radius: 20px!important; transition:0.2s ease-in-out; padding:15px}
a.waiting-list-btn:hover {background: #fff; color: var(--ast-global-color-0);}


.account-sidebar, .account-panel {padding:20px} 
.account-sidebar {background:#eee; border-radius:20px 0 20px 0;}

.account-sidebar .wp-block-uagb-icon-list-child {margin-bottom:0!important}
.account-sidebar .indent {padding-left:20px;!important}

.account-sidebar p {margin-bottom:0}
.account-sidebar a {text-decoration:none!important;}

.account-panel {font-size:14px}

.gv-table-view tfoot{ display:none; }

/* Booking Form */
.bf-classes, .bf-venues, .bf-sessions, .bf-payterms {border:3px solid #eee!important;padding:20px!important;border-radius:10px}

.bf-container .gform_previous_button {background:#eee!important;color:var(--ast-global-color-0)!important;}
.bf-container .gform_previous_button:hover {background:#ddd!important;color:var(--ast-global-color-0)!important;}

.bf-container .gform_previous_button, .bf-container .gform_previous_button {transition:0.2s}

.bf-container .bf-classes [type="radio"], .bf-container .bf-venues [type="radio"], .bf-container .bf-payterms [type="radio"] {position: relative;left: -9999px;}



.bf-container .falcon-form-alert{border-radius:20px; background:#db1432; color:#fff; text-align:center; padding:20px;margin:20px 0; animation: float 6s ease-in-out infinite;}


.bf-container .falcon-general-alert {border-radius:20px; background:var(--ast-global-color-1);; color:#fff; text-align:center; padding:20px; margin:20px 0;}

.bf-container .falcon-general-alert a, .bf-container .discount-box a {text-decoration:underline;color:#fff;font-weight:800}

.bf-container .discount-box {border-radius:20px;background:#4597d7;padding:20px;color:#fff} 
.bf-container .discount-box p.margin-remove {margin-bottom:0!important;}

.bf-container .falcon-stripe {border-radius:20px;background:#eee;padding:20px;color:#000} 

.bf-container .bf-classes .gfield_radio label, .bf-container .bf-venues .gfield_radio label, .bf-container .bf-payterms .gfield_radio label {
    display: inline-flex!important;
    border-radius: 8px;
    color: #fff;
    justify-content: center;
    padding: 20px 10px;
  	width:100%;
    align-items: center;
    cursor: pointer;
    transition: 0.3s ease;
		opacity:0.7;
		margin-bottom:10px
}

.bf-container .bf-classes .gfield_radio label {
    background-color: var(--ast-global-color-1);;
}

.bf-container .bf-venues .gfield_radio label {
    background-color: var(--ast-global-color-0);
		text-align:center;
}

.bf-container .bf-payterms .gfield_radio label {
    background-color: var(--ast-global-color-2);
		text-align:center;
}

.bf-container .gfield_radio input[type="radio"]:checked+label {
    opacity:1;
}

.bf-container .gfield_price, .bf-container .cost-breakdown {background:#eee; color:#000; padding:20px;border-radius:20px}
.bf-container .ginput_product_price {font-size:20px!important;}

.bf-container .cost-breakdown p {margin-bottom:0}

@keyframes float {
	0% {transform: translatey(0px);}
	50% {transform: translatey(-20px);}
	100% {transform: translatey(0px);}
}

/* Administrative */
.admin-wrapper {font-size:12px}

/* Booking Buttons */
.booking-buttons .uagb-button__wrapper {min-width:450px;}


@media only screen and (min-width: 921px) {
body.single-policies .site-content {max-width:60%!important;margin:auto auto}
	
.bf-container .bf-classes .gfield_radio .gchoice, .bf-container .bf-venues .gfield_radio .gchoice, .bf-container .bf-payterms .gfield_radio .gchoice {display: inline-flex; width:27%; margin-right:-30px}	
.policy-intro.mobile {display:none;}
.policy-intro.desktop {display:inherit;}
	
}

@media only screen and (min-width:544px) {
.policy-buttons .wp-block-button:before {
	background: #db1432;
	transition:0.5s linear;
	padding:20px 20px!important;
	border:0;
	width: 50px!important;
	border-radius:10px!important;
	color:#fff;
	margin-right:30px;}


	.policy-buttons .wp-block-button {margin-bottom:20px}	
	
	.policy-buttons .wp-block-button a {min-width:750px;text-align:left;}

.policy-buttons .wp-block-button:nth-child(1):before {content: "1 "} .policy-buttons .wp-block-button:nth-child(2):before {content: "2 "} .policy-buttons .wp-block-button:nth-child(3):before {content: "3 "} .policy-buttons .wp-block-button:nth-child(4):before {content: "4 "} .policy-buttons .wp-block-button:nth-child(5):before {content: "5 "} .policy-buttons .wp-block-button:nth-child(6):before {content: "6 "} .policy-buttons .wp-block-button:nth-child(7):before {content: "7 "} .policy-buttons .wp-block-button:nth-child(8):before {content: "8 "} .policy-buttons .wp-block-button:nth-child(9):before {content: "9 "} .policy-buttons .wp-block-button:nth-child(10):before {content: "10"} .policy-buttons .wp-block-button:nth-child(11):before {content: "11"} .policy-buttons .wp-block-button:nth-child(12):before {content: "12"}	
}

.testimonial-p-ds-top {
	margin: 10px 0 5px !important;
}

.testimonial-p-ds-bot {
	margin: 5px 0 10px !important;
}

@media only screen and (max-width: 921px) {
.home-hero, .inner-hero-video {min-height:550px;}
.policy-intro.mobile {display:inherit;}
.policy-intro.desktop, .policy-frame {display:none;}
}

@media only screen and (max-width: 544px) {
.home-hero h1, .inner-hero h1 {font-size: 32px!important;}
.mob-reverse {flex-direction: column-reverse;}
	.mob-hide {display:none}
}


summary {
	font-size: 1rem;
	padding-bottom: 10px;
}

details summary h3 {
    margin: 0; 
    display: inline; 
    flex-grow: 1; 
}

details {
    position: relative;
    overflow: hidden;
}

details[open] {
	margin-bottom: 2rem;
}

details[open] summary ~ * {
    animation: open 0.5s ease-in-out forwards;
}

summary {
    cursor: pointer;
    
    align-items: center;
}

@keyframes open {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.session-details {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}
.booking-card {
	background-color: #f9f9f9;
	border: 1px solid #e0e0e0;
	border-radius: 8px;
	padding: 1rem;
	width: calc(45% - 1rem);
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-direction: column;
}
.booking-info {
	flex: 1;
}
.child-names {
	background-color: #0073aa;
	color: white;
	padding: 0.5rem 1rem;
	border-radius: 4px;
	margin-bottom: 1rem;
	display: flex;
	align-items: center;
}
.child-names i {
	margin-right: 0.5rem;
}
.booking-card h4 {
	margin-top: 0;
}
.booking-card p {
	margin: 0.5rem 0;
}
.booking-card a[href="/payment/"] {
	color: #0073aa;
	text-decoration: none;
}
.booking-card a[href="/payment/"]:hover {
	text-decoration: underline;
}
.fas,
.fa-child {
	margin-right: 5px;
	color: #1e5091;
}

.booking-info .session-time {
	margin-bottom: 1rem;
}
.booking-card a[href="/payment/"] {
	border-color: var(--ast-global-color-0);
    background-color: var(--ast-global-color-0);
    color: #ffffff;
    font-family: inherit;
    font-weight: inherit;
    line-height: 1em;
    padding-top: 15px;
    padding-right: 30px;
    padding-bottom: 15px;
    padding-left: 30px;
	border-radius: 10px !important;
	text-decoration: none !important;
}
.booking-card a[href="/payment/"]:hover {
	background-color: #163d6f;
}

.booking-card p:last-child {
	margin-top: 1.5rem;
}

@media (max-width: 768px) {
	.booking-card {
		width: calc(100% - 1rem);
	}
}



/* Class timetable */
.class-timetable table.has-fixed-layout {
    width: 100%;
    border-collapse: collapse; 
    table-layout: fixed; 
}

.class-timetable .wp-block-table thead{
	border-bottom: 3px solid #e0e0e0; 
}

.class-timetable th {
    background-color: #D9EDF7 !important; 
    color: #000 !important;
    text-align: center; 
    font-weight: bold; 
    padding: 10px;
    border: 1px solid #e0e0e0; 
    font-size: 0.9rem;
}


.class-timetable td:first-child {
    font-weight: bold;
    color: #1e5091; 
    text-align: left;
    padding: 10px;
    border: 1px solid #e0e0e0; 
    font-size: 0.9rem; 
    background-color: #f9f9f9; 
}


.class-timetable td {
    text-align: center; 
    padding: 10px; 
    border: 1px solid #e0e0e0;
    font-size: 0.9rem; 
    background-color: #fff; 
}


.class-timetable td:empty {
    background-color: #f1f1f1; 
}


.class-timetable tr:hover {
    background-color: #f0f8ff; 
}

@media (max-width: 768px) {
    .class-timetable table.has-fixed-layout {
        display: block; 
        overflow-x: auto;
        white-space: nowrap; 
    }

    .class-timetable th, .class-timetable td {
        padding: 8px; 
        font-size: 0.8rem;
    }
}

