/*<RESET>*/
* { padding: 0; border: 0; margin: 0; }
*, *:before, *:after {
  -webkit-box-sizing: border-box; 
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
a { text-decoration: none; }
a:focus { outline: none;}

ul  { list-style-type: none; }

li { list-style:none; } 
input[type="submit"] { border: 0; outline: 0;}
img { box-shadow: 0 0 0 transparent !important; }
.widget img { max-width: none;} 

html { margin-top: 0 !important; }
body .site {
    box-shadow: 0 0 0 transparent;
    margin-bottom: 0;
    margin-top: 0;
    padding: 0 ;
    background-color: #fff !important;
    max-width: none;
}

::-webkit-input-placeholder { color: #8D9190; opacity: 1;}
:-moz-placeholder { color: #8D9190; opacity: 1;}
::-moz-placeholder { color: #8D9190; opacity: 1;}
:-ms-input-placeholder { color: #8D9190; opacity: 1;}

.select { 
   -webkit-appearance: none;
   -moz-appearance:    none;
   appearance:         none;   
   -webkit-border-radius: 0;     
   -moz-border-radius: 0;      
   border-radius: 0;  
   background: #fff;
}

body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; 
    font-family: Open Sans; background: #f5f5f5; font-size: 18px;
}
h1, h2, h3, h4, h5 { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
input, select, textarea { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.genesis-skip-link .screen-reader-shortcut, .grecaptcha-badge { display: none !important; }
/*</RESET>*/

form { font: 16px/21px Work Sans; }

label { display: block; margin-bottom: 8px; font-weight: 600; }
label:empty { display:none; }

input, select, textarea { 
	width: 100%; padding: 10px 16px; font: 14px/19px Work Sans, sans-serif; border-radius: 20px;
	margin-bottom: 16px;
	box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.1) inset;
}
select { 
    position: relative;
	-webkit-appearance: none;
    -moz-appearance:    none;
    appearance:         none;
	background: #fff url(../png/dropdown.png) no-repeat calc(100% - 15px) center;
    color: #292929 !important;
}
input[type="submit"], button[type="submit"] { 
	font: 700 16px/35px Open Sans; color: #fff; text-transform: uppercase; letter-spacing: 1px; text-align: center;
	display: inline-block; padding: 0 15px; background: var(--orange); border-radius: 20px; border: 3px solid var(--orange);
	max-width: 312px; width: 100%; margin: 0 auto; box-shadow: none;
}
input[type="submit"].green, button[type="submit"].green { background: var(--green); border: 3px solid var(--green); }

.wpcf7-spinner { margin: 8px 2px !important; position: absolute !important; }

@media only screen and (min-width: 900px) {
a { -webkit-transition: 0.2s all ease; transition: 0.2s all ease; } 
a:hover { opacity: 0.8; cursor: pointer; }
input[type="submit"]:hover, button[type="submit"]:hover { opacity: 0.9; cursor: pointer; }
}

/* =========== GLOBAL  */
:root {
--space-dynamic: 24px;
--space-y: 24px; 
--space-x: 16px;

--orange: #FF7C55;
--red: #EE8074;
--yellow: #FEF3BB;
--green: #4DA88E;
--green-2: #3D8872;
--green-3: #21BD92;
--purple: #F2F4FE;
--gray: #FAF8F4;
--black: #292929;
--black-2: #606463;

--f-size-1: 14px;
}
@media only screen and (min-width: 501px) { 
:root { 
	--space-dynamic: 48px; 
}

}

a { color: var(--orange); }
p { line-height: 26.5px; }

.orange { color: var(--orange); }
.green { color: var(--green); }
.black { color: var(--black); }
.black-2 { color: var(--black-2); }

.hide { display: none; }
.block { display: block; }
.block-imp { display: block !important; }
.inline-block { display: inline-block; }
.relative { position: relative; }
.ls-1 { letter-spacing: 1px; }
.lh-24 { line-height: 24px; }

.v-align-middle { vertical-align: middle; }

.align-center { text-align: center; }
@media only screen and (max-width: 800px) {
.align-center-800 { text-align: center; }
.margin-auto-800 { margin-left: auto !important; margin-right: auto !important; }
}
@media only screen and (max-width: 600px) {
.align-center-600 { text-align: center; }
.align-center-600-imp { text-align: center !important; }
}

.fw-400 { font-weight: 400 !important; }
.fw-500 { font-weight: 500 !important; }
.fw-600 { font-weight: 600 !important; }
.fw-700 { font-weight: 700 !important; }

.no-margin { margin: 0 !important; }
.no-padding { padding: 0 !important; }
.no-padding-x { padding-left: 0 !important; padding-right: 0 !important; }
.no-padding-bottom { padding-bottom: 0 !important; }

.no-select { -webkit-user-select: none; -ms-user-select: none; user-select: none; }

.space { margin-bottom: 24px !important; }
.space-2 { margin-bottom: 16px !important; }

.space-top { margin-top: 24px !important; }
.space-top-2 { margin-top: 16px !important; }

.opacity-0 { opacity: 0 !important; pointer-events: none; }

.css-transition { -webkit-transition: 0.3s all ease; transition: 0.3s all ease; }
.var-transition { -webkit-transition: var(--transition); transition: var(--transition); }

.fade-toggle-this { display: none; }

.font-playfair { font-family: Playfair Display; }
.font-worksans { font-family: Work Sans; }
.font-opensans { font-family: Open Sans; }

/* VAR CLASSES ------ */
.var-fontsize { font-size: var(--fontsize); } 
.var-padding { padding: var(--padding); }
.var-margin { margin: var(--margin); } 
.var-bg { background: var(--bg) !important; }
.var-width { width: var(--width); }
.var-height { height: var(--height); }
.var-maxwidth { width: var(--maxwidth); }
.var-color { color: var(--color); }

.var-fontsize-imp { font-size: var(--fontsize) !important; }
.var-padding-imp { padding: var(--padding) !important; }

.var-border-radius { border-radius: var(--borderradius) !important; }

@media only screen and (max-width: 800px) {  
.var-bg.media-800 { background: var(--bg-m); }
}

@media only screen and (max-width: 600px) {  /* adjust maxwidth range whenever needed */
.var-fontsize { font-size: var(--fontsize-m); } 
.var-padding { padding: var(--padding-m); } 
.var-margin { margin: var(--margin-m); }
.var-bg { background: var(--bg-m) !important; }
.var-width { width: var(--width-m); }
.var-height { height: var(--height-m); }
.var-maxwidth { width: var(--maxwidth-m); }
.var-color { color: var(--color-m); }

.var-fontsize-imp { font-size: var(--fontsize-m) !important; }
.var-padding-imp { padding: var(--padding-m) !important; }

.var-border-radius { border-radius: var(--borderradius-m) !important; }

}
/* ------------------------------------------------------------------------------------------- */

.y-center {
  position: relative;
}
.y-center-child {
  position: absolute; top: 50%;
  -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
}

.d-table { display: table; }
.d-table-row { display: table-row; }
.d-table-cell { display: table-cell; vertical-align: middle; }

.vid-wrap {
    position: relative; height: 0 !important;
    padding-bottom: 56.25%;
}
    .vid-wrap iframe { position: absolute; width: 100%; height: 100%; top: 0; left: 0; }

.fancybox-inner:has(.vid-wrap) { /* bug fix fo fancybox when holding vid-wrap */
    height: auto !important;
}

/* rounded border text */
.rbt-wrap { 
    display: -webkit-inline-flex; display: inline-flex; 
    -webkit-justify-content: center; justify-content: center;
    -webkit-align-items: center; align-items: center; 
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
    gap: 10px; 
}
.round-bordered-text {
    display: block;
    font-size: 16px; font-weight: 700; padding: 8px 24px; 
    border-radius: 100px; border: 2px solid;
}

/* dots */
hr.dotted-lines { 
    background: url(../png/dotted-line.png) no-repeat; height: 2px; width: 100%; 
    background-size: 100%;
    display: block; margin: 10px 0;
}
hr.dotted-lines.var-margin { margin: var(--var-margin); }

.dots-gray-repeat.repeat-x { background-repeat: repeat-x; background-image: url(../png/dots-gray-repeat-x.png); height: 2px; }
.dots-gray-repeat.repeat-y { background-repeat: repeat-y; background-image: url(../png/dots-gray-repeat-y.png); width: 2px; }

hr.line { height: 0.5px; background: rgba(0, 0, 0, 0.25); }

/* dots - another */
.dotted-line-pseudo { position: relative; }
.dotted-line-pseudo.before:before,
.dotted-line-pseudo.after:after { 
    content: "";
    display: block;
    position: absolute;
    height: 2px; width: 100%;
    background: url(../png/dotted-line-pseudo.png);
    background-size: cover;
}

.dotted-line-pseudo.before:before { top: 0; }
.dotted-line-pseudo.after:after { bottom: 0px; }

    .ite-txt p.dotted-line-pseudo { padding: 16px 0; margin: 16px 0; }

.dotted-link { 
    border-bottom: dotted 4px #a6d4c7; 
    text-decoration: none !important;
    display: inline-block !important;
}
.dotted-link:after { display: none !important; }

.dotted-link.v2 { border-bottom: dotted 5px #a6d4c7; padding-bottom: 5px; }

.dotted-link-3px-orange { border-bottom: dotted 3px #ffbeaa; display: inline-block; padding-bottom: 2px; }
.dotted-link-3px-green { border-bottom: dotted 3px #a6d4c7; display: inline-block; padding-bottom: 2px; }

/* fontawesome rel */
.my-fa-icon { font-family: 'FontAwesome'; padding: 0 0 0 7px; font-weight: normal; font-style: normal; } 
.my-fa-icon.left { padding: 0 7px 0 0; }

.fa-badge-bg { 
    background: url(../png/fa-badge-bg.png); 
    background-size: 100% 100%; background-repeat: no-repeat;
}

.fa-badge-bg-orange {
    background: url(../png/fa-badge-orange.png); 
    background-size: 100% 100%; background-repeat: no-repeat;
}

/* Mobile */
@media only screen and (max-width: 700px) {
html, body { overflow-x: hidden; }    
body { font-size: 16px; }
p { line-height: 150%; }
}

@media only screen and (max-width: 501px) { 
.m-no-radius { border-radius: 0 !important; }
.m-no-padding-bottom { padding-bottom: 0 !important; }
}

/* Desktop */
@media only screen and (min-width: 501px) { 
.bright-fx { cursor: pointer; }
.bright-fx img { -webkit-transition: 0.2s all ease; transition: 0.2s all ease; }
.bright-fx:hover > img { filter: brightness(120%); }
}

.relative-elem { position: relative; }
.overlap-txt { position: absolute !important; top:0; left:0; line-height:normal; white-space:nowrap; background:inherit; }

.cta-btn { 
	font: 700 16px/35px Open Sans; color: #fff; text-transform: uppercase; letter-spacing: 1px; text-align: center;
	display: inline-block; padding: 0 22px; background: var(--orange); border-radius: 20px; border: 3px solid var(--orange);
	max-width: 312px; margin: 0 auto;
} 
.cta-btn.ghost { background: none; color: var(--orange); }
.cta-btn.full { max-width: none; display: block; }
.cta-btn.auto-width { max-width: none; }

.radial-hover,
.radial-hover-parent button {
    background-position: calc((100 - var(--mouse-x, 0)) * 1%) calc((100 - var(--mouse-y, 0)) * 1%);
    background-size: 200% 200%;
    transition: opacity 1.25s;
    /* background-image: radial-gradient( circle at center,#F7975D 0%,#F7815D 27.5%,#F7815D 40%,#F7815D 57.5%,var(--orange) 75%,var(--orange) 100% ); */
    opacity: 1 !important; padding: 4px 24px; border: none;  
    background-image: radial-gradient( circle at center,#FF385C 0%,#e61e4d 27.5%,#e31c5f 40%,#d70466 57.5%,#bd1e59 75%,#bd1e59 100% );
    background-color: transparent;
}
.radial-hover.rh-green {
    background-image: radial-gradient( circle at center,#70b58f 0%,#4DA88E 27.5%,#4DA88E 40%,#4DA88E 57.5%,#3D8872 75%,#3D8872 100% ) !important;
/* radial-gradient( circle at center,#55bd9f 0%,#4DA88E 27.5%,#4DA88E 40%,#4DA88E 57.5%,#3D8872 75%,#3D8872 100% ) */
}

.custom-link {  
	font: 600 14px/20px Work Sans; color: var(--green); letter-spacing: 1px; 
	text-decoration-line: underline; text-transform: uppercase;
	margin:20px 0 4px; display:inline-block;
}

.icon-circle {
    background: var(--green);
    padding: 5px 6.5px;
    border-radius: 100%;
    font-size: 23px; color: #fff;
    display: inline-block;
    line-height: 1px;
 }

.sns-icon { 
    display: block; width: 32px; height: 32px; border-radius: 100%; overflow: hidden; 
    background: var(--black); display: inline-block; margin-right: 7px; margin-bottom: -4px;
    font-family: FontAwesome; color: #fff; text-align: center;
}
.sns-icon:hover { background: var(--orange); opacity: 1; }

.sns-icon.smaller { width: 24px; height: 24px; }
.sns-icon.smaller:before {  font-size: 14.5px; line-height: 24px; }

.sns-icon:before { font-size: 23px; line-height: 32px; font-weight: 400; }
.sns-icon.fb:before { content: "\f09a"; }
.sns-icon.ig:before { content: "\f16d"; }
.sns-icon.mail:before { content: "\f0e0"; font-size: 16px; }
.sns-icon.phone:before { content: "\f095"; font-size: 18px; }
.sns-icon.whatsapp:before { content: "\f232"; }

.view-icon:before { 
	content: "\f06e"; display: inline-block;
	font-family: FontAwesome; margin-right: 10px;
}
.view-icon.active-state:before { content: "\f070"; }

/*------- ICON PSEUDO 'top' and 'list' ( for png icons only ) */
.icon-top:before {  
	content: ""; display: block;
	width: 40px; height: 40px; 
	margin: 0 auto 8px;

	background: url(../png/icons-2.png) no-repeat;
	background-size: 166px 320px;
	background-position: var(--ib-pos);
}
/* variable icon styles */
.icon-top.custom-size:before { width: var(--icon-width); height: var(--icon-height);}
.icon-top.custom-bg:before { background: var(--icon-bg); }
/**/

.icon-list li { padding-left: 25px !important; position: relative; }
.icon-list li:before {
	content: ""; display: block !important;
	
	position: absolute !important; left: 0 !important;
	width: 16px !important; height: 15px !important;

	background: url(../png/icons-2.png) no-repeat !important;
	background-size: 166px 320px !important;
	background-position: var(--icon-pos) !important;
}

.icon-list.lotus li { line-height: 24px !important; } /* set line height for all lotus for consistency */
.icon-list.lotus li:before {
    background-position:-120px -31.5px !important; top:4px !important;
}
.icon-list.lotus-white li:before {
    filter: brightness(0) invert(1);
    -webkit-filter: brightness(0) invert(1);
}

/* variable icon styles ( unused currently )*/
.icon-list.custom-top li:before { top: var(--icon-top); }
.icon-list.custom-size li:before { width: var(--icon-width); height: var(--icon-height);}
.icon-list.custom-content li:before { content: var(--icon-content); }
.icon-list.custom-bg li:before { background: var(--icon-bg); }


/**/

.quote-marks { position: relative; }
.quote-marks:before {
    content: "\f10d"; font-family: fontawesome; font-size: 2em;
    position: absolute; top: 0px; right: 109%;
    line-height: 0; color: #fff;
}
.quote-marks.orange:before { color: var(--orange); }
.quote-marks.static:before { position: static; line-height: normal; }

.quote-div {
    padding: 40px 55px; border-radius: 10px; background: #f3f1e8;
    font-size: 1.12em; line-height: 1.7; color: #442d28; font-family: 'Work Sans';
}
    .quote-div b, .quote-div strong { color: var(--orange); font-weight: 600; }


.single .quote-div { 
    background: #FAF8F4; padding: 24px 24px 24px 64px;
    font-size: 16px; line-height: 150%; text-align: justify; color: #292929;
    border: 1px solid #EAE9E6; 
}
.single .quote-marks:before { 
    content: ""; display: block;
    width: 32px; height: 24px;
    background-image: url(../png/quote-marks.png); background-repeat: no-repeat; background-size: 100% 100%;
    position: absolute; top: 0; left: -44px;
}

@media only screen and (max-width: 500px) { 
.single .quote-div { text-align: left; font-size: 14px; }

.single .quote-div:not(.dont-collapse) { padding-left: 24px; }
.single .quote-div:not(.dont-collapse) .quote-marks:before { position: static; margin-bottom: 12px; }
}

/**/

.quote-div-v2 { border-radius: 10px; overflow: hidden; }

.quote-div-v2 > div:last-child,
.quote-div-v2-txt { 
    padding: 44px; background: #f3f1e8; 
    background: #f3f1e8 url(../webp/quote-div-v2-bg.png.webp) center bottom / 88.25% auto no-repeat;
}

.quote-div-v2 .quote-icon { 
    width: 56px; height: 42px; display: inline-block; 
    background: url(../webp/quotes.png.webp);
    background-size: cover;
}

.quote-div-v2 p { 
    margin: 25px 0; 
    font-family: "Work Sans"; text-align: center; color: var(--black); font-size: 20.2px; line-height: 160%;
}
.quote-div-v2 p strong { color: var(--orange) !important; }

.quote-source { display: inline-flex; align-items: center; text-align: left; line-height: 120%; gap: 15px; }
    .qs-name { color: var(--black); font-size: 16px; font-weight: 700; margin-bottom: 5px; display: block; }
    .qs-label { color: var(--black-2); font-size: 14px; display: block; }

    .quote-source img { width: 75px; height: 75px; border: 4px solid #fff; border-radius: 100%; }

@media only screen and (max-width: 600px) {

.quote-div-v2 p { font-size: 18px; }

.quote-div-v2 .quote-icon { width: 43px; height: 32px; }

}

/**/

.chat-bubble {
    font-size: 14px; font-family: Work Sans;
    color: #606463;    
    background: #fff;    
    box-shadow: -2px -2px 10px #00000010, 0 3px 7px #00000015, 0 30px 18px #00000005;
    position: relative;
    display: table; height: 36px;
    /* border-radius: 12px; margin: 10px auto 0; */
}
    /*
    .chat-bubble:after {
        content: ""; 
        display: block; width: 21px; height: 16px;
        background: url(https://www.allyogatraining.com/wp-content/themes/genesis-sample/image/triangle-white.png);
        position: absolute;
        top: -15px; left: 20px;
    }
    */

.chat-bubble > * { 
    display: table-cell; vertical-align: middle;
    padding: 6px 14px;
}

/**/
.triangle-pseudo { position: relative; }
.triangle-pseudo:after {
    content: "";
    display: block;
    width: 21px; height: 16px;
    background: url(../png/triangle-white.png);
    position: absolute; top: -11px; left: 20px; z-index: -1;
}

/**/

.my-pager-content { display: none !important; }
.show-content { display: block !important; }

.show-content.sc-inline { display: inline !important; }
.show-content.sc-inlineblock { display: inline-block !important; }

.inline-block-grid .show-content { display: inline-block !important; }

.play-video { display: none; width: 100%; height: 100%; }
.play-video iframe { width: 100%; height: 100%; }

/**/
.my-flex {  
	display: -webkit-flex; display: flex; 
	-webkit-justify-content: center; justify-content: center;
	gap: var(--gap); font-size: 16px; line-height: normal;
}
.my-flex.ai-center { -webkit-align-items: center; align-items: center; }
.my-flex.ai-stretch { -webkit-align-items: stretch; align-items: stretch; }

.my-flex.space-evenly { 
    -webkit-justify-content: space-evenly; justify-content: space-evenly;
}
.my-flex.space-between { 
    -webkit-justify-content: space-between; justify-content: space-between;
}
.my-flex.flex-start { 
    -webkit-justify-content: flex-start; justify-content: flex-start;
}
.my-flex.column { 
    -webkit-flex-direction: column; flex-direction: column; 
}

	.my-flex.equal > * { flex: 1 1 0px; }

.flex-wrap { -webkit-flex-wrap: wrap; flex-wrap: wrap; }

.flex-varwidth > div { width: calc(var(--width) - var(--gap)); }

.my-flex img { height: auto; max-width: 100%; }

.flex-inherit > * {
    background: var(--inherit-background);
    padding: var(--inherit-padding);
    box-shadow: var(--inherit-boxshadow);
    font-size: var(--inherit-fontsize);
}
@media only screen and (min-width: 801px) { 
    .flex-inherit > * {
        padding: var(--inherit-padding-800);
        box-shadow: var(--inherit-boxshadow-800);
    }
}

/**/

@media only screen and (max-width: 1000px) { 
.flex-break-1000 { display: block; }
}

@media only screen and (max-width: 800px) { 
.flex-break-800 { display: block; }
.flex-break-800 > * { width: 100% !important; }

.flex-break-800.fb-space > * { margin-top: var(--space-x) !important; }
.flex-break-800.fb-space > *:first-child { margin-top: 0 !important; }

.flex-wrap-800 { flex-wrap: wrap; }

.my-flex.flex-switch-800 { flex-wrap: wrap; }

.my-flex.flex-switch-800 > * { flex: 0 1 auto; width: 100%; } 
.my-flex.flex-switch-800 > *:first-child { order: 2; width: 100%; }


.flex-column-800 { flex-direction: column; }
    .flex-column-800 > * { width: 100% !important; }
    .flex-justify-left-800 { justify-content: left; }

.flex-remove-maxwidth-800 > div { max-width: none !important; }

}

@media only screen and (max-width: 600px) { 
.flex-break-600 { display: block; }
.flex-break-600 > * { width: 100% !important; }

.flex-break-600.fb-space > * { margin-top: var(--space-x) !important; }
.flex-break-600.fb-space > *:first-child { margin-top: 0 !important; }

.flex-break-600.img-heightauto img { height: auto !important; }

/*.flex-break-600.flex-varwidth > div { width: 100%; }*/

.my-flex.flex-switch-600 { flex-wrap: wrap; }

.my-flex.flex-switch-600 > * { flex: 0 1 auto; } 
.my-flex.flex-switch-600 > *:first-child { order: 2; width: 100%; }

.my-flex.ai-start-m { -webkit-align-items: flex-start; align-items: flex-start; }

.my-flex.var-gap { gap: var(--gap-m); }

}

/* must have my-flex parent */
.varradius .img-div { border-radius: var(--radius); overflow: hidden; }

.img-div img { display: block; margin: 0 !important; }
/**/
.div-80 { width: 80%; }
.div-70 { width: 70%; }
.div-60 { width: 60%; }
.div-50 { width: 50%; }
.div-40 { width: 40%; }
.div-30 { width: 30%; }
.div-20 { width: 20%; }
/**/
.img-varwidth { width: var(--width); }
.txt-varwidth { width: var(--width); }

/**/
.inline-block-grid { margin: -12px auto !important; max-width: 1600px; }
  .inline-block-grid > div { display: inline-block; max-width: 384px; width: 100%; 
      margin: 12px 0;
  }
  .inline-block-grid > div.hide { display: none; }

  .inline-block-grid.bigger > div { max-width: 500px; }
  
@media only screen and (min-width: 501px) { 
.inline-block-grid > div { margin: 12px; }
}

/**/
.img-txt-entry { padding: 16px; gap: 16px; border-radius: 10px;
    font-family: Work Sans; text-align: left; font-size: 16px; line-height: normal;
    background: #fff;
}
.img-txt-entry.v2 { background: rgba(255,255,255,0.85); padding: 24px 16px; }

  .img-txt-entry > div { display: -webkit-flex; display: flex; gap: 16px; }

  .ite-img span { 
      display: block; width: 112px; height: 112px; border-radius: 10px; overflow: hidden; 
      background-size: cover; background-position: center; opacity: 1;
      -webkit-transition: 0.5s all ease; transition: 0.5s all ease;
  }
  .ite-img.round span { border-radius: 100%; }

      .ite-head { font: 700 16px/24px Open Sans; color: #292929; margin-bottom: 0 !important; }
      
      .ite-txt > * { margin-bottom: 4px; display: block; }
      .ite-txt > *:last-child { margin-bottom: 0; }

      .ite-txt p { 
      		overflow: hidden; 
      		padding-bottom: 0.15em; box-sizing: content-box; /* offset for br */
      		-webkit-transition: 0.5s all ease; transition: 0.5s all ease;       
          max-height: 8.281em; min-height: 8.281em;        		     
      }
      @media only screen and (max-width: 700px) { 
        /* adj bc paragraph lineheight becomes 150% at med-700px */
        .ite-txt p { max-height: 9em; min-height: 9em; } 
      }   

      .ite-txt p br,
      .ite-txt p .br { margin: 0.15em; display: block; }

      .ellipsis .ite-txt p {     
      	padding: 0; box-sizing: border-box; max-height: none; min-height: 0;
      	/* ellipsis is dependent of orient vertical */          
        text-overflow: ellipsis; -webkit-box-orient: vertical;           
            
        /* box and line clamp are dependent of ea other */      
        display: -webkit-box; -webkit-line-clamp: var(--ellipsis); line-clamp: var(--ellipsis);          
      }

   /* read more btn */
  .ite-txt > a,
  .ite-link { 
  	color: var(--green); letter-spacing: 1px; text-decoration: underline; 
    font-weight: 600;
  	height: auto !important; /* fixes hover bug (hover intent not detected because of this elem)*/
  }
  .ite-txt > a:after,
  .ite-link:after { 
  	content: "\f105"; font-family: FontAWesome; 
  	display: inline-block; margin-left: 8px; font-size: 18px;
  }

/* used on blog entries */
  .img-txt-entry.no-padding .ite-txt { padding: 16px; }
  .img-txt-entry.no-padding > div { display: block; }
  .img-txt-entry.no-padding .ite-img { 
  	background-position: center; background-size: cover; background-color: #ccc; width: 100%; height: 224px; 
  	border-radius: 10px 10px 0 0;
  }

  .feat-img { padding: 0; display: block; }
  .img-txt-entry.feat-img .ite-txt { padding: 16px; }
  .img-txt-entry.feat-img > div { display: block; }
  .img-txt-entry.feat-img .ite-img { 
  	background-position: center; background-size: cover; background-color: #ccc; width: 100%; height: 224px; 
  	border-radius: 10px 10px 0 0;
  }
/**/

.ite-close {
	opacity: 0; pointer-events: none;
	width: 40px; height: 40px; line-height: 42px;
  font-size: 34px; font-weight: 300; font-family: "Verdana"; 
	color: var(--black); text-align: center;
  position: absolute; right: 0; top: 0; z-index: 10; cursor: pointer;
  -webkit-transition: 0.3s all ease; transition: 0.3s all ease;
}

/* read more click event */
.ite-read-more { position: relative; vertical-align: top; }

.ite-read-more.active-state > div { gap: 0; }
.ite-read-more.active-state .ite-txt p { max-height: 40em; }
.ite-read-more.active-state .ite-txt p.more-height { max-height: 70em; }
.ite-read-more.active-state .ite-txt p.more-height-2 { max-height: 85em; }

.ite-read-more.active-state .ite-img span:not(.exclude) { width: 0; opacity: 0; transform: rotateY(90deg); transform-origin: top left; }
.ite-read-more.active-state .ite-txt > a { opacity: 0; visibility: hidden; height: 0; }

.ite-read-more.active-state .ite-close { opacity: 1; pointer-events: auto; }

/**/
.ul-check li { font-family: Work Sans; line-height: 24px; position: relative; padding-left: 24.5px; margin-bottom: 8px !important; }
		.ul-check li:last-child { margin-bottom: 0; }

		.ul-check li:before {
			content: "\f00c"; font-family: FontAwesome; color: var(--green-3);
			position: absolute; left: 0;
		}
		.ul-check.c-white li:before { color: #fff; }
        .ul-check.var-check-color li:before { color: var(--check-color); }

        .ul-check.cross li:before { content: "\f00d"; color: var(--red); }

.ul-check > strong { margin-bottom: 10px; display: block; }

/*===== TABS =====*/	
.my-tabs .ui-tabs-nav {  
	display: -webkit-flex; display: flex; 
	-webkit-justify-content: center; justify-content: center;
    background: #efefef; border-radius: 100px; 
}
.my-tabs .ui-tabs-nav li { flex: 1 1 0px; }
.my-tabs .ui-tabs-nav li a { 
	font-size: 16px; line-height: 24px; font-weight: 600; text-align: center; color: #A1A5A4;
	padding: 10px 0; opacity: 1 !important;
	display: table; width: 100%; height: 100%;
}
	.my-tabs .ui-tabs-nav li a span { display: table-cell; vertical-align: middle; }

.my-tabs .ui-tabs-nav li.ui-state-active a { color: #fff; background: #4DA88E; border-radius: 100px; }

/**/
.my-tabs > .ui-tabs-panel { padding: 25px 0; }
.my-tabs > .ui-tabs-panel.no-padding-top { padding-top: 0; }

.tab-panels-no-padding-bottom .my-tabs > .ui-tabs-panel { padding-bottom: 0; }

/**/
.my-tabs.rounded-corners .ui-tabs-nav li:first-child { left: 0; }
    .my-tabs.rounded-corners .ui-tabs-nav li a { border: 2px solid #A1A5A4; padding: 5px; background: #f2f2f2; } 
    .my-tabs.rounded-corners .ui-tabs-nav li:not(:first-child) a { border-left: none; }

.my-tabs.rounded-corners .ui-tabs-nav li:first-child a { border-radius: 6px 0 0 6px !important; }
.my-tabs.rounded-corners .ui-tabs-nav li:last-child a { border-radius: 0 6px 6px 0 !important; }

.my-tabs.rounded-corners .ui-tabs-nav li.ui-state-active { z-index: 10; }
.my-tabs.rounded-corners .ui-tabs-nav li.ui-state-active a { color: #3584B6; border: 2px solid #3584B6; background: #F2F8FF; border-radius: 0; }

.my-tabs.rounded-corners .ui-tabs-nav li a:hover {
    box-shadow: rgb(0 0 0 / 40%) 0px 6px 20px -12px, rgb(0 0 0 / 40%) 0px -6px 20px -12px;
}

/**/

.my-tabs.tabs-varwidth .ui-tabs-nav li { flex: none; width: var(--width); }

/* MY TABS og elements */
    .my-tabs p { line-height: normal; text-align: left !important; }

    .my-tabs img { border-radius: 12px !important; width: 100%; }
    /* override values - quicker method */
    .my-tabs .div-20 { width: 27%; }
    .my-tabs .div-80 { width: 73%; }


/* TABS media query */
@media only screen and (max-width: 600px) { 
.my-tabs .ui-tabs-nav li a { font-size: 13px; font-weight: normal; }

.my-tabs img { margin-bottom: 15px !important; }
}

/*=========== ACCORDION */	
.accordion { background: #fff; font-size: 16px; /*border: 1px solid #e8e8e7;*/ }
.accordion h4 { 
	font: 600 20px/26px Playfair Display; color: #292929;
	position: relative; cursor: pointer;
	margin: 0 !important;
    padding: 20px 16px; border-top: 0.5px solid rgba(0, 0, 0, 0.25);
}
.accordion > .ui-accordion:first-child h4 { border-top: none; }

.accordion h4:hover { opacity: 0.8; }
.accordion h4:focus { outline: none; }


	.accordion .ui-state-default:before {
		content: "\f107"; 
		font-family: FontAwesome; font-size: 26px; color: #60646373;
		display: block; position: absolute; right: 16px; top: 50%; margin-top: -12.5px;
		background: none; height: auto; width: auto;
	}
    .accordion .ui-state-active { color: #4DA88E; }
	.accordion .ui-state-active:before { content: "\f106"; color: #4DA88E; }

.accordion h4 + div { padding: 0 16px 20px; font: 16px/160% Work Sans; color: #606463; }

.accordion img { max-width: 100%; }	
.accordion li { padding-left: 24px; position: relative; }
.accordion li:before {   
	content: "\2022"; position: absolute; top: 0; left: 8px;
}
.accordion p { text-align: left !important; margin-bottom: 16px; }
.accordion p:last-child { margin-bottom: 0; }

.accordion strong { color: var(--black); text-transform: uppercase; }

.accordion-flex { 
	display: -webkit-flex; display: flex; 
	-webkit-justify-content: center; justify-content: center; 
}

@media only screen and (max-width: 640px) { 
.my-tabs .accordion h4 { padding: 15px 0; }
.my-tabs .accordion h4 + div { padding: 0 0 15px; font: 14px/150% Work Sans; }
    
	/* applies to my-accordion inside flex */
.accordion { margin-left: 0 !important; margin-right: 0 !important; max-width: none !important; }
.accordion-flex { display: block; }
}

/* =========== SLIDESHOW */

.cycle-slideshow { position: relative; cursor: pointer; overflow: hidden; }
.cycle-slideshow > div { 
	height: 100%; width: 100%; position: relative;
	background-repeat: none; background-size: cover; background-position: center;
}
.cycle-slideshow.autoheight > div { height: auto; }

	.cycle-slideshow img { object-fit: cover; width: 100%; height: 100%; }
.cycle-slideshow > .next { 
	display: block; position: absolute; width:100%; height:100%; z-index: 101;
}

.cycle-pager { margin-top: 16px; text-align: center; }
.cycle-pager > span { 
	width: 12px; height: 12px; border-radius: 100%; margin: 0 7px; 
	display: inline-block; background: #E0E0E0; text-indent: -9999px; cursor: pointer;
}
.cycle-pager > .cycle-pager-active { background: var(--orange); }

.cycle-acm + .cycle-pager { margin: 0; position: relative; top: -20px; z-index: 100; height: 0; }
	.cycle-acm + .cycle-pager span { border: 1px solid; }

/**/
.cycle-intro { height: 224px; margin-top: var(--space-dynamic); max-width: 1147px; overflow: visible; z-index: 1; }
.cycle-intro > div { 
    border-radius: 10px; 
    box-shadow: 0px 4px 40px 0px rgba(0, 0, 0, 0.08); height: auto;
}

	.cycle-intro > div > span { 		
        text-align: left;
		width: 100%; display: block; 
        border-radius: 5px; padding: 16px !important;
	}
        .cycle-intro > div span b {
            display: block; 
            font-family: Playfair Display; font-size: 18px; line-height: 1.4; color: var(--black);
        }
        .cycle-intro > div span > span { 
            font-size: 16px; line-height: 150%; color: var(--black-2); 
            display: block; margin-top: 16px;
        }

    .cycle-intro img { display: block; height: 214px; }
    @media only screen and (max-width: 600px) { 
    .cycle-intro img { height: 340px; }
    }
    @media only screen and (max-width: 430px) { 
    .cycle-intro img { height: 245px; }
    }

	.cp-intro { margin-top: 16px !important; }

/**/
.cycle-acm { height: 224px !important; }

/* Cycle Accommodation break carousel on PC */
.cycle-accommodation-m .acm-entry { -webkit-transition: none; transition: none; }
    .cycle-accommodation-m img { height: auto; }                        

.cycle-accommodation-m .cycle-arrows { top: 81.5vw; }

.cycle-accommodation-m .acm-info > span:first-child { text-align: center; }

@media only screen and (min-width: 651px) { 
.cycle-accommodation-m { 
    height: auto !important; /* height auto on PC. but use cycle dynamic auto height on mobile */
    margin: 0 auto; cursor: auto;
    display: -webkit-flex; display: flex; 
    -webkit-justify-content: space-between; justify-content: space-between; gap: 10px;
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
}
.cycle-accommodation-m .acm-entry { 
    height: auto !important; /* reset to default . to stretch flex items */
    max-width: calc(50% - (var(--gap)/2) ); 
    margin: 0 0 calc(var(--gap) - 7px) 0 !important; 
    position: relative !important; visibility: visible !important; 
    overflow: hidden; opacity: 1 !important;
    -webkit-transition: 0.2s all ease; transition: 0.2s all ease;
}
    
.cycle-accommodation-m .cycle-sentinel { display: none !important; }

.cycle-accommodation-m .acm-info > span:first-child { text-align: left; }
                                
}

/**/
.cycle-shala { height: 224px; max-width: 792px; margin-bottom: var(--space-x) !important; }

/* next prev arrows */
.cycle-arrows {  
    display: block; width: 30px !important; height: 30px !important; padding: 0 !important;
    border-radius: 100%; background: rgba(0,0,0,0.5);
    position: absolute; top: 50%; margin-top: -15px; z-index: 200 !important;
    font-family: FontAwesome !important; text-align: center !important; line-height: 30px !important; font-size: 20px !important;
    color: #fff !important;
}
.cycle-arrows.next { right: 8px !important; left: auto !important; content: "\f00c"; padding-left: 2.5px !important; }
.cycle-arrows.prev { left: 8px !important; padding-right: 2.5px !important; }

@media only screen and (min-width: 651px) { 
.cycle-intro { 
    height: auto !important; /* height auto on PC. but use cycle dynamic auto height on mobile */
	margin: 0 auto; cursor: auto;
	display: -webkit-flex; display: flex; 
	-webkit-justify-content: space-between; justify-content: space-between;
    flex: 1 1 0; gap: 16px;
    max-width: 1249px;
}
.cycle-intro > div { position: relative !important; visibility: visible !important; 
	overflow: hidden; opacity: 1 !important;
}
	.cycle-intro > div > span { padding: 24px; bottom: 16px; }

.cycle-intro > .next { display: none; }
.cp-intro { display: none; }

/**/
.cycle-shala { height: 450px; border-radius: 10px; overflow: hidden; }
}

/* version 2 : with text right side ( and auto height is set to calc - tallest slide )*/

.cycle-shala.v2 { max-width: 996px; background:var(--green); margin-bottom: 0 !important; height: auto; }

.cycle-shala.v2 .my-flex { height: 100%; }

.cycle-shala.v2 .my-flex img { width: 69.277%; }

.cycle-shala.v2 .my-flex > div { 
width: 30.723%; padding: 24px;
color: #fff; font-family: Playfair Display;
font-size: 21px; letter-spacing: 0.6px;
}

    .sec-side .cycle-shala.v2 .my-flex > div { font-size: 18px; }

.cycle-shala.v2 .cp-shala {
    position: absolute; bottom: 10px; right: 0;
    z-index: 200; width: 30.723%;
}
.cycle-shala.v2 + .cp-shala { display: none !important; margin-top: 16px; }

.cycle-slideshow.v2 > .next.overlay { top: 0; /* add this because autoheight calc's sentinel slide is taking .next.overlay space */ }

.cycle-shala.v2 .cycle-arrows { opacity: 0; -webkit-transition: 0.2s all ease; transition: 0.2s all ease; }
.cycle-shala.v2:hover .cycle-arrows { opacity: 1; }

@media only screen and (max-width: 1000px) { 
.cycle-shala.v2 .my-flex { flex-direction: column; }

.cycle-shala.v2 .my-flex img { width: 100%; display: block; }
.cycle-shala.v2 .my-flex > div { 
    font-size: 18px; text-align: center; width: 100%; 
}

.cycle-shala.v2 .cp-shala { display: none !important; }
.cycle-shala.v2 + .cp-shala { display: block !important; }
}

/* ----- CYCLE ON MOBILE */

.cycle-on-mobile { z-index: 1; max-width: 840px; width: 100%; margin: 0 auto; }
.cycle-on-mobile > .group { 
    width: 100%; margin: 0; 
    height: auto !important; /* must set height to auto so data-cycle-auto-height=container works */
}

.cycle-on-mobile > .group > *:first-child { margin-bottom: 20px; }
.cycle-on-mobile.var-gap > .group > *:first-child { margin-bottom: var(--var-gap); }

.cycle-on-mobile .cycle-arrows.next { right: 0; }
.cycle-on-mobile .cycle-arrows.prev { left: 0; }
.cycle-on-mobile + .cycle-pager { margin-top: 24px !important; }

@media only screen and (min-width: 1201px) { 
.cycle-on-mobile { 
    height: auto !important; /* height auto on PC. but use cycle dynamic auto height on mobile */
    margin: 0 auto; cursor: auto;
    display: -webkit-flex; display: flex; 
    -webkit-justify-content: center; justify-content: center;
    -webkit-flex-wrap: wrap; flex-wrap: wrap;
    pointer-events: none; /* disable swiping */
    gap: 20px; 
    max-width: 1200px;
}
.cycle-on-mobile.var-gap { gap: var(--var-gap); }

.cycle-on-mobile > .group { 
    max-width: 385px;
    position: relative !important; visibility: visible !important; opacity: 1 !important;
    left: 0; transform: none;
}

.cycle-on-mobile > .next, .cycle-on-mobile > .prev { display: none; }
.cycle-on-mobile + .cycle-pager { display: none; }

.cycle-on-mobile .ite-read-more { pointer-events: auto; }

}


/*=========== UPCOMING EVENTS BLOCK */
.ev-table { display: table; width: 100%; text-align: left; }
.ev-table.auto { max-width: none; width: auto; }

/* row */
.ev-table .ev-entry { display: table-row; border: none; padding: 0; } 
.ev-table .ev-entry:first-child { border: none; }
.ev-table .ev-entry.ev-head {
    font: 400 14px/20px Work Sans; color: #292929; letter-spacing: 1px;
}
	.ev-table .ev-entry.ev-head > span { padding: 0 0 16px; }

	/* cell */
	.ev-table .ev-entry > span { display: table-cell; vertical-align: middle; padding: 12px 0; }
		.ev-table .ev-entry > span > span { display: inline-block; vertical-align: middle; }

.ev-info img { margin-top:-3px; vertical-align: middle; }

.ev-date-th { width: 180px; margin-right: 24px; }
.ev-date-th + span { width: 160px; /* same width as ev-tags */ }
	
.ev-date { font: 700 16px/24px Open Sans; width: 180px; color: #292929; margin-right: 24px; margin-bottom: 4px; }
	.ev-date span { 
		display: block;
		font-size: 14px; line-height: 20px; font-weight: 400; letter-spacing: 1px; 
	}
    .ev-sidebar .ev-date { font-size: 15px; } /* for sidebars reduce fsize: present on reviewpage and school inner pages */

.ev-price { 
	font: 700 21px/30px Open Sans; color: #606463; 
	padding-right: 10px !important; width: 1%; white-space: nowrap;
}
.ev-price:after { 
	content: "..."; display: inline;
	position: relative; top: -5px; left: 10px; color: var(--green);
}

.ev-price-txt { 
	display: block !important; 
	font-size: 13.4px; font-weight: 500; letter-spacing: 0.7px; line-height: 1; color: #606463;
}

.ev-tags {  
	font: 600 14px/20px Work Sans; color: #fff; text-align: center;
	padding: 4px 0; width: 160px; border-radius: 4px; display: inline-block;
}

.ev-tags.waiting { color: #fff; background: var(--red); } 
.ev-tags.spot { color: #292929; background: var(--yellow); }
.ev-tags.free { background: var(--green-3); }
.ev-tags.all-inclusive { background: #b673a5; }
.ev-tags.full { background: #f5425d; }
.ev-tags.places { color: #292929; border: 2px solid var(--green-3); background: none; }
.ev-tags.spaces { color: #292929; border: 2px solid var(--red); background: none; font-size: 13.5px; letter-spacing: -0.5px; }

.ev-tags.orange { color: #fff; background: var(--orange); }
.ev-tags.green { color: #fff; background: var(--green); }
.ev-tags.purple { color: #fff; background: #b79aba; }

.ev-entry.full { opacity: 1 !important; cursor: no-drop; }
.full .ev-tags { background: #f5425d; /* F44C85 */ }

.one-percent-width { width: 1%; min-width: 160px; }

.ev-table { max-width: 350px; }
@media only screen and (min-width: 600px) { 
.ev-table { max-width: 560px; }
.ev-date { margin-bottom: 0; }
}

@media only screen and (max-width: 400px) { 
.ev-table { font-size: 14px !important; }
.ev-table .ev-entry.ev-head > span:first-child { width: 180px; }
    .ev-date-th { width: auto; }
    .ev-date { margin-right: 0; width: auto; }
    .ev-tags.free { max-width: 130px; }
}

/* text tooltip wrap */
.info-lines { line-height: 1.6; font-size: 0.95em; position: relative; }
.info-lines li { padding-bottom: 5px; position: relative; padding-left: 24.5px; cursor: pointer; }
.info-lines li:before {
	content: "\f00c"; font-family: FontAwesome; color: var(--green-3);
	position: absolute; left: 0;
}
.info-lines li:after { 
	content: ""; display: block; width: 16px; height: 16px;
	background: url(../png/info.png) no-repeat 0 / cover;
	position: absolute; top: 5px; right: 0;
}

.info-hover { position: relative; cursor: pointer; }
.info-hover:hover > .info-show { opacity: 1; pointer-events: auto; }
    .info-show { 
        width: 210px; padding: 15px; background: #D4EDE7;       
        font: 14px/18px Work Sans; letter-spacing: 1px;
        color: var(--black); text-align: center; border-radius: 10px;
        position: absolute; top: calc(100% + 8px); right: -15px;
        z-index: 10; opacity: 0; pointer-events: none;
        -webkit-transition: 0.2s opacity ease; transition: 0.2s opacity ease;
        display: block; cursor: auto;
    }
    .info-show:after{ 
        content: ""; display:  block; 
        border: 9px solid transparent; border-bottom-color: #D4EDE7; 
        top: -16px; right: 14px; height: 0; width: 0; position: absolute;
    }

/* UPCOMING EVENTS BLOCK - FLEX VERSION */
.ev-table.flex-ver,
.ev-table.flex-ver .ev-entry { display: block; }

.ev-table.flex-ver .ev-entry > span { 
    display: -webkit-flex; display: flex; 
    -webkit-justify-content: space-between; justify-content: space-between; 
    gap: 10px;
}
.ev-table.flex-ver .ev-date { margin-right: 0; }

.ev-table.flex-ver .ev-tags { -webkit-align-self: center; align-self: center; }

.ev-dots { font:700 21px/21px Open Sans; color: var(--green); -webkit-align-self: center; align-self: center; }

/*=========== CUSTOM DROP DOWN */
.custom-select { 
	-webkit-user-select: none; -ms-user-select: none; user-select: none; 
	position: relative;
}
.custom-select select { display: none !important; }
.custom-select .wpcf7-not-valid-tip { position: relative; left: 7px; }


.sub-select-label-wrap { }

.sub-select-label {
	display: block; padding: 12px 0 12px 17px; background: #fff; 
	border: 1px solid #dadad6; border-radius: 30px;
	color: #606463; font-size: 15px; line-height: 17px; width: 100%; position: relative; cursor: pointer;
}
.sub-select-label:after {
	content: "\f107"; 
	position: absolute; right: 17px; top: 50%; margin-top: -10px;
	display: block; height: 10px; width: 14px;
	font-family: FontAwesome; font-size: 26px; color: var(--orange);
}
	/* OPEN state  */
	.visibility-toggle { visibility: visible !important; }
	.sub-select-open:after { content: "\f106"; }
	.border-on .sub-select-label { border-radius: 20px 20px 0 0;  }

/* dropdown */	
.sub-option { 
	margin: 0; padding: 0; position: absolute; width: 100%; 
	border: 1px solid #dadad6; border-top: none; border-radius: 0 0 4px 4px; cursor: pointer; visibility: hidden; 
	box-shadow: 7px 7px 10px rgba(1,1,1,0.19); z-index: 10;
}

.apply-now-widget .sub-option { height: 274px; width: 100%; background: #fff; }

	.sub-option li { 
	padding: 17px 13px 17px 53px; background: #fff; border-bottom: 1px solid #dadad6; font-size: 15px; color: #5e6463;
	position: relative; list-style: none;
	}
	.sub-option li:hover { background: #fafaf6; }

	.sub-option li:before { 
		content: "\f073"; display: block; width: 23px; height: 24px;
		position: absolute; top: 50%; left: 13px; margin-top: -12px;
		font-family: FontAwesome; color: #d6c2b9;
		font-size: 22px; line-height: 24px; text-align: center;
	}



/* move this to application css */
		/*
		.sub-option li.app-waiting-tag, .sub-option li.app-spots-tag { padding-right: 116px; }
		.sub-option li.app-waiting-tag:after, .sub-option li.app-spots-tag:after, .sub-option li.app-full-tag:after {
			content: attr(data-content);
			display: block; width: 90px; height: 23px;
			position: absolute; top: 50%; right: 13px; margin-top: -11.5px;
			background: #f76d51; font-size:12px; line-height: 23px; color: #fff; text-align: center;
		}
		.sub-option li.app-spots-tag:after {
			background: none; color: #f15348;
		}
		.sub-option li.app-full-tag:after {
			background: #F46969; padding: 0 5px; box-sizing: content-box;
		}
		*/
/* move end  */


/* =========== CUSTOM SCROLLBAR */
.custom-scrollbar {
	overflow-y: auto;

	/* FF */
  scrollbar-width: thin;
  scrollbar-color: #b3b3ae #fff;
}

/* CUSTOM SCROLLBAR - Chrome, Edge, and Safari */
.custom-scrollbar::-webkit-scrollbar {
  width: 8px;
}
.custom-scrollbar::-webkit-scrollbar-track {
  background: #fff; border-left: 1px solid #dadad6;
}
.custom-scrollbar::-webkit-scrollbar-thumb {
  background-color: #b3b3ae;
  border-radius: 20px;
}

/* =========== POPUP or LIGHTBOX */
.my-popup-wrapper { 
	width: 100%; height: 100%; position: fixed; top: 0; left: 0; background: rgba(0,0,0,0.7) !important; z-index: 250;
	visibility: hidden; opacity:0; -webkit-transition: 0.2s all ease; transition: 0.2s all ease;
}

.my-popup-wrapper > div { 
	max-width: 600px; width: 100%; background: #fff;  
	position: relative; padding: 16px;
	max-height: 546px; top: 50%; margin: 0 auto; text-align: center; color: var(--black-2);
	-ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%);
}

.my-popup-close {
	width: 46px; height: 46px; line-height: 42px;
  border-radius: 100%;
  font-size: 34px; font-weight: 300; font-family: "Verdana"; 
	color: var(--black); text-align: center;
  position: absolute; right: 0; top: 0; z-index: 10; cursor: pointer;
}
.my-popup-close.v2 { color: var(--orange); top: -16px; right: -10px; box-shadow:3px 3px 5px rgb(1 1 1 / 19%); }

	.my-popup-head { 
		font-size: 28px; line-height: 34.7px; font-family: Playfair Display; color: #292929; 
		display: block; margin-bottom: 24px; font-weight: 600;
	} 
	.my-popup-wrapper p { margin-bottom: 24px; }
	.my-popup-wrapper p:last-child { margin-bottom: 0; }

@media only screen and (min-width: 501px) {
.my-popup-wrapper > div { padding: 24px; }
}

/**/
.my-popup-wrapper > .orange-gradient { background: url(../jpg/orange-gradient-2.jpg); }
.my-popup-wrapper form { max-width: 400px; margin: 0 auto; }
.v3-notice { color: #fff; }
.v3-notice a { color: #fff; text-decoration: underline; }

.my-popup-wrapper .wpcf7 form .wpcf7-response-output { color: #fff !important; }

/* =========== SCHEDULE TABLE */
.schedule-table table { border-spacing: 15px 0; text-align: left; }

.schedule-table.th table { border-spacing: 20px 0; }

.schedule-table th, .schedule-table td { padding: 13px 7px; }
.schedule-table th { color: #ff7c55; font-weight: normal; font-weight:600; }
.schedule-table td { 
	border-top: 2px solid #dbdbdb; 
	-webkit-transition: 0.2s all ease; transition: 0.2s all ease; 
}

.schedule-table td:first-child { white-space: nowrap; color: #7cc0ad; font-weight:600; position: relative; }
.schedule-table td:first-child span { padding: 0 0 0 5px; }
.schedule-table td:first-child span:after { content: ""; display: block; }		
		
.schedule-table tr:hover td, .schedule-table tr:hover td:after { background: #FFFBF2; }

.schedule-table td:first-child:after { 
	content:""; display: block; position: absolute; 
	width: 20px; height: 100%; right: -20px; top: 0;
	-webkit-transition: 0.2s all ease; transition: 0.2s all ease; 
}

@media only screen and (min-width: 501px) { 
.schedule-table th, .schedule-table td { padding: 17px 22px; }
.schedule-table td:first-child span { padding: 0 35px; }
.schedule-table td:first-child span:after { display: none; }	
}

/* =========== SCROLL RELATED */
.scrolled-content { 
    opacity: 0;
    -webkit-transition: 0.2s all ease; transition: 0.2s all ease; z-index: 45; 
}
.scrolled-content-show { opacity: 1; }

/* custom shortlinks styles */
.fixed-top {    
		width: 100%; background: #fff;
    position: fixed; top: 0; left: 0; z-index: 220;
    box-shadow: 1px 1px 3px 0 rgba(0, 0, 0, 0.3); text-align: center; 
}
.fixed-top > div {    
    max-width: 1440px; width: 100%; padding: 0 40px; margin: 0 auto;
    display: -webkit-flex; display: flex; 
    -webkit-justify-content: space-between; justify-content: space-between; 
}

.fixed-top ul { display: block; text-align: left; }
.fixed-top li {
    display: inline-block; margin: 0;
}
    .fixed-top li a {
        display: block; padding: 0 12px;
        font: 14px/72px Work Sans; color: var(--black); letter-spacing: 1px; text-transform: uppercase;
    }
    .fixed-top li:first-child a { padding-left: 0; }
    .fixed-top li:last-child a { padding-right: 0; }
    .fixed-top li:hover a { color: #ff7c55; }

.ft-cta {  
    display: -webkit-flex; display: flex; 
    -webkit-align-items: center; align-items: center; gap: 16px;
}

.fixed-top .cta-btn { font-size: 14px; line-height: 32px; }

@media only screen and (max-width: 1300px) { 
.fixed-top { padding: 0 15px; }
.fixed-top li a { font-size: 12px; }

.fixed-top .cta-btn { font-size: 13px; }
}
@media only screen and (max-width: 1200px) { 

/* .fixed-top { display: none; } */

.fixed-top:after {  
    content: ""; display: block;
    width: 40px; height: 100%;
    background: linear-gradient(to right, hsla(0, 0%, 100%, 0), #fff);
    position: absolute; right: 14px; bottom: 0;
}

.fixed-top > div { display: block; white-space: nowrap; overflow-x: auto; padding: 0; } 

.fixed-top ul { display: inline-block; }
.fixed-top li a { line-height: 52px;  padding: 0 6px; }
.fixed-top li:first-child a { padding-left: 0; }

.fixed-top li:last-child { position: relative; z-index: 1; }

.ft-cta { display: none; }

/* adj menu-btn position if fixed-top is present . adj for hellobar as well */
body > div[style*="display: inline"] ~ .site-container .site-inner:has(.fixed-top) ~ .fixed-cta > .menu-btn{ top: 108px; }
.site-inner:has(.fixed-top) ~ .fixed-cta > .menu-btn { top: 58px; }

}

/* ======================= */

/* =========== SECTIONS */

.sec { 
	--h2-margin: 16px;
	max-width: 1920px; margin: 0 auto; padding: var(--space-dynamic) var(--space-x) var(--space-dynamic); 
	font-family: Open Sans; text-align: center; color: #606463;
	background: #fff; 
}
.sec.sec-gray { background: var(--gray); }
	.sec > div { margin: 0 auto; }

.sec h1, .sec h2, .sec h3, .sec h4 { font-family: Playfair Display; color: #292929; }

.sec h1, .sec h2 { 
	font-size: 28px; line-height: 34.7px; 
	max-width: 400px; margin: 0 auto 18px; 
}
	.sec h2 br { display: none; }

.sec h3 { font-size: 28px; line-height: 34.7px; }
.sec h4 { font-size: 20px; line-height: 26px; }

/**/
.sec-offset { padding-top: var(--space-dynamic); }
.sec-offset:before { display:none; }

@media only screen and (min-width: 701px) { 
.sec-offset { position: relative; padding-top: 0; }
.sec-offset:before {
	content: ""; display: block;
	position: absolute; top: 0; left: 0;
	height: 106px; width: 100%;
}
.sec-offset.offset-gray:before { background: var(--gray); }
.sec-offset.offset-white:before { background: #fff; }

}

/**/
.intro-sec p {  margin-bottom: 16px; }

@media only screen and (min-width: 501px) { 
.sec h1, .sec h2 { font-size: 38px; line-height: 47px; max-width: none; }

.sec h2 { margin-bottom: var(--h2-margin); }
.sec h2 br { display: block; }
/**/
.intro-sec { padding: 12px var(--space-x) var(--space-dynamic); }

}

/* Content + Sticky Sidebar */
.sec > .sec-side { max-width: 1206px; padding-right: 414px; text-align: left; }
.sec:not(.align-left) > .sec-side h2 { text-align: center; }
.sec:not(.align-left) > .sec-side p { text-align: center; }
.sec > .sec-side div { margin: 0 auto; }

.page-template-events-2023 .sec p:not([class]) strong { color: #292929; }

.sticky-css { position: relative; }
.sticky-parent-0 { max-width: 1206px; }
.sticky-parent-1 { width: 390px; float: right; padding-top: 88px; } /* same val as padding-right sec-side */

/* pos sticky-css variant */
.sticky-css .sticky-parent-0 {
    position: absolute; top: 0; left: 50%; margin-left: -603px;
    width: 100%; height: 100%; height: calc(100% - var(--space-dynamic));
    padding-top: 70px; pointer-events: none;
}
.sticky-css .sticky-parent-1 { position: sticky; top: 20px; padding-top: 0; pointer-events: auto; z-index: 5; }
@media only screen and (max-width: 1206px) { 
.sticky-css .sticky-parent-0 { margin-left: calc(100% / -2); }
}

@media only screen and (max-width: 977px) {
.sec > .sec-side { padding-right: 0; }
.sticky-css .sticky-parent-0 { position: static; padding: var(--space-dynamic) var(--space-x); margin: 0; display: none; }	
.sticky-parent-1 { width: 100%; position: static !important; float: none; }
}

/* SECTIONS v1 */
.sec-1 { 
    max-width: 1920px; margin: 0 auto; 
    font-family: Open Sans; color: #606463;
    background: #fff; padding-left: 15px; padding-right: 15px;
}

.sec-1 > div { margin: 0 auto; }

/* ==================================================== */

/* BROCHURE */
.brochure-left { padding: var(--space-dynamic); background: var(--green); }

    .brochure-img-wrap { position: relative; border-radius: 10px; overflow: hidden; }

    .brochure-img-wrap img { width: 100%; max-width: 624px; display: block; height: auto; }

    /* 100% responsive txt ( just in case )*/
/*    
    .ot-1 {
        display: block;
        position: absolute; bottom: 22%; right: 4%;
        font: 600 1.15vw/1.6vw Work Sans; color: #fff; text-align: left; letter-spacing: 1px;
    }    
    .ot-2 { 
        display: block; position: absolute; bottom: 4%; right: 3.5%; 
        font-family: Work Sans; text-align: left; color: #fff; line-height: 1.5vw;
    }
        .ot-2-line-1 { font-size: 0.84vw; font-weight:400; }
        .ot-2-line-2 { font-size: 1vw; }
            .ot-2-line-2 b { font-size: 1.2vw; font-weight: 600; }
    
    @media only screen and (min-width: 1920px) {  
    .ot-1 { font-size: 16.55px; line-height: 23px;}
    .ot-2 { line-height: 21.6px; }
        .ot-2-line-1 { font-size: 12.08px; }
        .ot-2-line-2 { font-size: 14.14px; }
            .ot-2-line-2 b { font-size: 17.26px; }
    }      
    */      

.brochure-right { padding: var(--space-dynamic); background: var(--green-2); }

.brochure-right h4 { margin-bottom: 15px; }
.brochure-right ul { font-family: Work Sans; letter-spacing: 1px; }
.brochure-right li { margin-bottom: 13px; }
.brochure-right li:last-child { margin-bottom: 0; }

.brochure-right button[type="submit"] { max-width: none; }

.brochure-summary-flex-m {
    display: -webkit-flex; display: flex; 
    -webkit-justify-content: center; justify-content: center;
    gap: var(--gap);
}
.brochure-summary-flex-m ul { min-width: 240px; }

@media only screen and (min-width: 600px) { 
.brochure-summary-flex-m { display: block; }
.brochure-summary-flex-m ul { min-width: 0; }
}

.follow-ig-strip h4, .follow-ig-strip .ig { -webkit-transition: 0.2s all ease; transition: 0.2s all ease; color: inherit; }
.follow-ig-strip a { opacity: 1; color: #292929; }
.follow-ig-strip a .ig { color: #fff; }
.follow-ig-strip a:hover { color: var(--orange); }
.follow-ig-strip a:hover .ig { background: var(--orange); color: #fff; }

/* =========== FOOTER */
footer { background: #FAFAFA !important; }

footer .my-flex > div { margin-bottom: var(--space-dynamic); }
footer .my-flex > div:last-child { margin: 0; }

.footer-col-3 li { margin-bottom: 8px; }
.footer-col-3 a { font: 400 14px/19px Work Sans; color: var(--black-2); text-decoration: underline; }
.footer-col-3 a:hover { color: var(--orange); text-decoration: none; }

@media only screen and (min-width: 1001px) { 
footer .my-flex > div { margin-bottom: 0; }
.footer-col-1 { text-align: left; }
}

.copyright-sec { padding: var(--space-y) var(--space-x) var(--space-dynamic); font: 14px/19px Work Sans; text-align: center; }
.copyright-sec p { color: var(--black-2); margin-bottom: 4px; }
.copyright-sec a { color: var(--black); font-weight: 700; }

/* =========== FIXED CTA */
.to-top, .menu-btn { 
	background: rgba(0, 0, 0, 0.4); width: 40px; height: 40px; line-height: 40px; 
	text-align: center; border-radius: 5px; display: inline-block; position: relative; vertical-align: middle;
}

.to-top:after, .menu-btn:after { 
	content:"\f106"; font-family:"fontawesome"; color: #fff !important; font-size: 20px; 
	position: absolute; top: 0; left: 0; width: 100%; height: 100%; 
}
.menu-btn { opacity: 0; position: fixed; top: 8px; right: 8px; }
.menu-btn:after { content: "\f0c9"; }

@media only screen and (max-width: 1000px) { 
.menu-btn { opacity: 1; }
}

/* sticky contact - mail icon hover */
.sticky-contact { 
display: inline-block; position: relative; width: 40px; height: 40px; background: #1ABBCF;
font-size: 23px !important; line-height: 40px !important; color: #fff; vertical-align: middle; text-align: center;
border-radius: 5px; cursor: pointer; z-index: 1;
}
.sticky-contact:before { content: "\f0e0"; display: block; width: 100%; height: 100%; border-radius: 5px; }
.sticky-contact:hover, .sticky-contact:hover:before { border-radius: 0 4px 4px 0; }
.sticky-contact:hover:before { background: rgba(0,0,0,0.4); }
.sticky-contact:hover a { width: 185px; padding: 9px 61px 9px 21px; color: #fff; }

.sticky-contact a { 
background: #1ABBCF; padding: 9px 0 9px 0; border-radius: 4px; 
position: absolute; bottom: 0; right: 0; 
font-size: 15px; color: transparent; font-family: 'Open Sans'; text-shadow: none; 
letter-spacing: 0.9px; line-height: normal; white-space: nowrap; z-index: -1;
width: 0; height: 40px; overflow: hidden;
}
.sticky-contact a:hover { opacity: 1; background: #25a1b0; }

/**/
.fixed-cta .my-whatsapp { 
	width: 47px; height: 47px; padding: 0; vertical-align: middle; 
	background: url("../png/whatsapp-retina.png"); background-size: 100%;
}

/**/
.fixed-cta { position: fixed; bottom: 0; right: 0; z-index: 200; }

.fixed-cta-child { display: inline-block; direction: ltr; padding-right: 15px; }
    .fixed-cta-child > * { margin: 0 5px 14px; }

.event-specific-cta { padding: 12px 24px 16px; margin-right: 5px; box-shadow: 0px 0px 5px 2px rgb(139,139,139,.4); background: #fff; }
    .event-specific-cta .cta-btn { 
        margin-top: 10px; 
        line-height: 48px;
        border-radius: 8px; padding: 0;
        font-size: 18px; font-weight: 500; text-transform: none; letter-spacing: 0.1px;
    }    
    .event-specific-cta .cta-btn:first-child { margin-top: 0; }

        .event-specific-cta .cta-btn svg { vertical-align: middle; }

body #hubspot-messages-iframe-container { bottom: 50px !important; }    

@media only screen and (max-width: 500px) { 
.fixed-cta { direction: ltr; width: 100%; } 

.event-specific-cta { margin: 0; }

.fixed-cta-child { 
    width: 100%; padding: 0;
    display: -webkit-flex; display: flex; 
    -webkit-justify-content: space-between; justify-content: space-between; 
}
    .fixed-cta-child > * { align-self: center; margin: 8px !important; }

body #hubspot-messages-iframe-container { bottom: 0 !important; } 
}

/*========== */
.show-mobile { display: none !important; }
@media only screen and (max-width: 600px) { 
.hide-mobile { display: none !important; }
.show-mobile { display: block !important; }
}

.show-800 { display: none !important; }
@media only screen and (max-width: 800px) { 
.hide-800 { display: none !important; }
.show-800 { display: block !important; }
}

/* sticky cta header brush bg */
.header-widget {
   background: url(../png/up-ev-bg.png) center/100% 100% no-repeat;
    color: #fff; line-height: 1;
    padding: 35px 43px 29px 48.7px;
    position: absolute; top: -29px; left: -24px;
    font-size: 25px; font-weight: normal;
}
.header-widget + * { margin-top: 36px !important; }


/* ========== GLOBUS TRANSLATE */
.widget_wpglobus { display: inline-block; position: absolute; right: 40px; top: 4px; z-index: 10; }
.widget_wpglobus h2 { display: none; }
.widget_wpglobus .flag { margin-left: 20px; margin-right: 0 !important; float: right; } 

.widget_wpglobus .flag { display: none; } 
.widget_wpglobus .wpglobus-current-language { display: block; }
.widget_wpglobus:hover .flag { display: block; }


@media only screen and (max-width: 1000px) {
.widget_wpglobus { right: 20px; }
}

/* ========== GEO LOC PRICE CURRENCY */
.css-price { font-style: normal; }
.css-price span:last-child { display: none; }
.geoip-continent-EU .css-price span:first-child { display: none; } 
.geoip-continent-EU .css-price span:last-child { display: inline; } 


/* ========== SCHEDULE TABLE */
.schedule-entry-table { 
    display: table; font-family: Work Sans; 
    border-collapse: separate; border-spacing: 0 6px;
}

.schedule-entry { 
    display: table-row; background: #f1f8f6;    
    user-select: none; cursor: pointer;
}

    .schedule-entry > div { display: table-cell; padding: 14px 22px; border: 2px solid #f1f8f6; }

.time-range { font-weight: 500; line-height: 1; font-size: 40px; color: #4DA88E;
        white-space: nowrap; position: relative; vertical-align: middle;
    }
.time-range:after {
    content: "";
    display: block;
    height: calc(100% - 28px); width: 2px;
    border-right: dotted 3px #a6d4c7;
    position: absolute; right: -1px; top: 14px;
}
    .time-range span { font-weight: 600; font-size: 16px; }
    
.activity-info { color: #292929; vertical-align: middle; }
.activity-info .ai-head { font-size: 19px; line-height: 150%; font-weight: 500; display: block; position: relative; }
    
    .activity-info .ai-head:before {
        content: "\f107"; 
        font-family: FontAwesome; font-size: 26px; color: #D2D7D6;
        display: block; position: absolute; right: 0; top: 50%; margin-top: -12.89px;
    }
    
.activity-info .ai-para {
    font-size: 16px; line-height: 24px; margin-top: 8px;    
    -webkit-transition-behavior: allow-discrete; transition-behavior: allow-discrete;
    max-height: 0; opacity: 0; overflow: hidden; color: #606463;
}

.schedule-entry,
.time-range, .time-range:after,
.ai-head,
.ai-para { 
    -webkit-transition: 0.2s all ease; transition: 0.2s all ease; 
}
/* dont animate color on activity-info */
.activity-info { 
    -webkit-transition: 0.2s background ease, 0.2s border ease; transition: 0.2s background ease, 0.2s border ease; 
}

/* old active state
.active-state.schedule-entry { background: #4DA88E !important; box-shadow: 0px 4px 20px 0px #00000026; }

.active-state.schedule-entry > div { border-color: #4DA88E !important; }

.active-state .time-range, 
.active-state .activity-info { color: #fff; }

.active-state .time-range:after { border-color: #ffffff40; }

.active-state .activity-info .ai-head:before { content: "\f106"; color: #ffffff50; }

.active-state .activity-info .ai-para { 
    max-height: none;
    opacity: 1; 
}
*/

/* active state - first three lines is similar to hover below */
.active-state.schedule-entry { background: #e5f2ee !important; box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.08); }
.active-state.schedule-entry > div { border-color: rgba(77, 168, 142, 0.20) !important; }
.active-state .time-range:after { border-color: #d2d2d2; }

.active-state .activity-info .ai-head:before { content: "\f106"; color: #d2d2d2; }

.active-state .activity-info .ai-para { 
    max-height: none;
    opacity: 1; 
}

@media only screen and (min-width: 601px) {

.schedule-entry > div:first-child { border-top-left-radius: 10px; border-bottom-left-radius: 10px; border-right: none !important; }
.schedule-entry > div:last-child { border-top-right-radius: 10px; border-bottom-right-radius: 10px; border-left: none !important; }

/* hover effect */
.schedule-entry:hover { background: #e5f2ee; }
.schedule-entry:hover > div { border-color: rgba(77, 168, 142, 0.20); }
.schedule-entry:hover .time-range:after { border-color: #d2d2d2; }
}

@media only screen and (max-width: 600px) {
.schedule-entry,
.schedule-entry > div { display: block; border: 2px solid #f1f8f6; }

.schedule-entry > div:first-child { border-top-left-radius: 10px; border-top-right-radius: 10px; border-bottom: none !important; }
.schedule-entry > div:last-child { border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; border-top: none !important; }

.schedule-entry > .time-range { padding-bottom: 14px; }
.schedule-entry > .activity-info { padding-top: 14px; }

.schedule-entry { margin-top: 12px !important; border-radius: 10px; overflow: hidden; }
.schedule-entry:first-child { margin-top: 0 !important; }
.schedule-entry:before { top: 20px; right: 20px; }

.time-range:after { 
    width: calc(100% - 48px); height: 2px; 
    top: auto; bottom: 0; left: 24px; 
    border-bottom: dotted 3px #a6d4c7; border-right: none;
}

.time-range { font-size: 24px; }
    .time-range span { font-size: 14px; }

.activity-info .ai-head { font-size: 18px; line-height: 27px; }
.activity-info .ai-para { font-size: 14px; line-height: 21px; }

}
/* schedule entry table end */

/* Special Offers section */
.sec-so { padding: 0; }

.special-offer { 
    max-width: 792px; background: var(--green); 
    display: block; padding: 16px;
}
.so-image { 
    background-position: center; background-size: cover; background-repeat: no-repeat;
    width: 100%; height: 250px; border-radius: 10px;
} 
    .so-image img { display: none; }

.so-content { padding: 16px 0 0 0; }
    

    .so-content ul { background: #fff; text-align: left; color: var(--black); padding: 24px 28px; border-radius: 10px; }
    .so-content li { font: 16px/24px Open Sans; margin-bottom: 16px; }  
    .so-content li:last-child { margin-bottom: 0; }
    
@media only screen and (min-width: 701px) { 
.special-offer { 
    position: relative; z-index: 5; border-radius: 10px; overflow: hidden; padding: 0; 
    display: -webkit-flex; display: flex;
    -webkit-justify-content: space-between; justify-content: space-between;
}

.so-image { width: 40%; height: auto; border-radius: 0; }
.so-content { padding: 24px 32px; width: 60%; }
}

/*===== MY-TABLE , CURRICULUM TABLE =====*/
.my-table, .my-table th, .my-table td { border-collapse: collapse; text-align: left; }

.my-table { background: #fff; text-align: left; width: 100%; overflow: hidden; border:none; border-radius: 10px 10px 0 0; /*height: 459px;*/ }
.my-table.block { display: block; }

.my-table th, .my-table td { box-sizing: border-box; border: 1px solid #d4ede7; }
.my-table th { 
    font-size: 14px; line-height: 29.5px; font-weight: 400; letter-spacing: 1px; background: #4DA88E; color: #fff; 
    padding: 5px 15px; border-bottom: none; 
}
    .my-table.col-1-fit th:first-child { width: 1%; }

    .my-table.th-fw-600 th { font-weight: 600; }

.my-table td { font-size: 16px; line-height: 23px; padding: 13px 15px; }  
    .my-table tr td:first-child { background: #f1f9f7; color: #292929; }

.my-table td a { color: var(--green); }

/* color-var */
.my-table.color-var-2 th { background: #fffef5; color: var(--black); }

.my-table.color-var-2 td a { color: var(--orange); }

.my-table.color-var-2 tr td:first-child { background: #f9f5f1; }

/**/
.my-table .first-column { max-width: 234px; padding-right: 30px; padding-left: 20px; }

/**/
.my-table ul { list-style: none; margin-top: 20px; }
.my-table ul:first-child { margin-top: 0; } 
.my-table ul li { padding-left: 30px; position: relative; }
.my-table ul li:before { 
    content: ""; display: inline-block; 
    width: 4px; height: 4px; background: url(../png/icons.png); background-position: -5px -10px; 
    position: absolute; top: 11px; left: 0; 
}
.my-table ul li:first-child { margin-top: 0; }

/**/
.my-table p { margin-top: 20px; }
.my-table p:first-child { margin-top: 0;  }

.my-table h3 { font-size: 16px !important; font-weight: normal !important; margin: 0 !important; }

/**/
.my-table .my-date-entry { white-space: nowrap; font-size: 13px; color: #ac9a92; display: block; position: relative; margin-top:10px; }

@media only screen and (max-width: 680px) {     
.my-table th, .my-table td { padding: 15px; }
.my-table th { padding-top: 0; padding-bottom: 0; }
.my-table td { font-size: 14px; }
.my-table .first-column { padding-right: 20px; }
.my-table ul li { padding-left: 10px; } 

.my-table h3 { font-size: 14px !important; }
}
@media only screen and (max-width: 480px) { 
.table-schedule-after-content { text-align: center; }
.table-schedule-after-content * { float: none !important; }
}

/* ============== show hide fade effect */
.height-auto { height: auto !important; }   

@media only screen and (max-width: 600px) { 
.on-fade-effect { position: relative; height: 383.5px; overflow-y: hidden; overflow-x: auto; }

.on-fade-effect:after { 
    content: ""; 
    display: block; position: absolute; bottom: 0; left: 0;
    width: 100%; height: 240px; background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, #FFFFFF 100%);
    -webkit-transition: background 0.2s ease-in; transition: background 0.2s ease-in;
}
.off-fade-effect:after { background: rgba(255, 255, 255, 0); }

}

    /* future proofing */
.on-fade-effect.custom-fade-height { height: var(--container-height); } 
.on-fade-effect.custom-fade-height:after { height: var(--fade-height); }

/* arrow */
.view-more-btn:after { background-position: -97px 0; width: 17px; height: 19px; top: 22px; }
.view-more-btn2:after { background-position: -114px 0; }
    
    .view-more-btn span { display: inline-block; }
    .view-more-btn span:after { bottom: 0; }
    .view-more-btn .my-hide { display: none; }  

/* prolly not used lines end ============== */  


/*===== Apply Now Widget =====*/
.apply-now-widget { color: #606463; width: 390px; box-shadow: 0px 4px 34px #D9D9D9; }
.apply-now-mobile { display: none; margin: 28px auto 0; max-width: 385px; width: 100%; }
.apply-now-header {
        --an-bg-color: #FAF8F4; 
    padding: 32px 32px 24px; background: var(--an-bg-color); position: relative;
    position:relative;
    /* min-height: 132px; */
}
.apply-now-header p { font: 400 14px/18px Work Sans; }
.apply-now-widget .cta-btn { max-width: none; width: 100%; }

.apply-now-header .overlap-txt { background: var(--an-bg-color); width: 100%; }

    .apply-price { font-size: 38px; line-height: 1; font-weight: 700; margin: 1px 0; }      

        .apply-price .old-price { 
                display: inline; font-size: 16px; line-height: 24px; color: #606463; text-decoration: line-through; 
            }                      
         

    .apply-save { 
            color: #fff; padding-top: 16.3px; padding-right: 20px;
        font-size: 16px; line-height: 18px; text-align: right; width: 133px; height: 110px;
        position: absolute; top: 0; right: 0;
                background-color: #FF7C55;
            clip-path: polygon(0 0, 100% 0, 100% 100%);      
    }
            .apply-save span:first-child { font-family: Work Sans; font-size: 14px; }
            .apply-save span { display: block; }

.apply-availability {
    position: absolute; bottom: -15px; left: -10px; margin: 0;
    background: #ED4E55; padding: 4px 20px 6px; border-radius: 0 5px 5px 0;
    color: #fff; font-family: Work Sans; letter-spacing: 1px;
}
.apply-availability:before {
    content: "";
    border-style: solid; border-width: 0 10px 10px 0; border-color: transparent #C23F40 transparent transparent;
    position: absolute; left: 0; bottom: -10px; z-index: -1;
}

.apply-availability.green { background: var(--green); }
.apply-availability.green:before { border-color: transparent #59a089 transparent transparent; }

.apply-cd { margin-bottom: 5px; }

.cd-wrap { width: 100%; font: 14px/20px Work Sans; color: #292929; text-transform: uppercase; letter-spacing: 1px; }

.ujic-hold { margin-top: 4px; padding-left: 4px; max-width: 320px; width: 100%; }
.countdown_section { 
margin-right: 4px !important; padding: 0; border: none; background: none;
}
.countdown_amount {
    box-shadow: none !important; position: relative; top: -1px;
    padding: 0 !important; margin: 0 !important; min-width: 0 !important;
    text-shadow: none !important; background: none !important; font-weight: bold !important;
    font-size: 13px !important; font-family: Open Sans !important; line-height: 1 !important;
}
.countdown_txt { float: right; padding-left: 4px; padding-right: 2px; margin: 0 !important; font-size: 12px !important; 
    line-height: 1 !important; position: relative; top: 6px; }
.countdown_section:last-child .countdown_txt:after { content: " left"; }
            
.apply-now-content { padding: 21px 23px; background: #fff; }
    .sidebar-widget .apply-now-content p, .apply-now-content .my-btn { margin: 19px auto; max-width:none; 
        font-size: 13px; font-weight: 700; padding: 11px;
    }
    .apply-now-content p { font-size: 12px; line-height: 16px; font-weight: 300; }
    
    .apply-now-content .my-btn.outlined { border: 3px solid; padding-top: 8.55px; padding-bottom: 8.55px; }

.apply-now-content .sidebar-date-entry:before { margin: 0 16px 0 4px; }

.apply-now-widget .sub-select-label-wrap { margin: 0; }

.apply-now-footer { background: #fffef5; padding: 0 23px; border-bottom: 1px solid #f5f2e9; }
.apply-now-footer:hover { background: #FEF7CB; }


/* ========== PAGE SPECIFIC AMENDS */

/* blog pages */
.img-txt-entry.v-blog { background: #f8f8f8; }
	.v-blog .ite-txt p { margin: 0 !important; }    

/* ========== HELLO BAR FIX */
body > div[style*="display: inline"] #headline { white-space: nowrap; }

body > div[style*="display: inline"] ~ .site-container .my-header,
body > div[style*="display: inline"] ~ .site-container .fixed-top,
body > div[style*="display: inline"] ~ .fixed-top { top: 50px; }

@media only screen and (max-width: 600px) { 
body > div[style*="display: inline"] #headline * { font-size: 16px !important; }

body > div[style*="display: inline"] ~ .site-container .my-header,
body > div[style*="display: inline"] ~ .site-container .fixed-top,
body > div[style*="display: inline"] ~ .fixed-top { top: 58px; }
}


/* ========== PAGE ELEMENT (div-with-icon) */
.div-with-icon.purple-bg { background: var(--purple); }
.div-with-icon.icon-map:before { content: "\f041"; font-size: 41px; }

.div-with-icon { 
    padding: 40px 64px; margin-top: 50px;
    border-radius: 10px; border: 2px solid #E15E50;
    position: relative;
}
.div-with-icon:before { 
    content: "";
    display: block; width: 80px; height: 80px;
    font-family: FontAwesome; font-size: 33px; color: #fff; text-align: center; line-height: 80px;
    position: absolute; top: -40px; left: -40px;
    border-radius: 100%; overflow: hidden; background: #EE8074;
}

.div-with-icon h3 { margin-bottom: 20px; }
.div-with-icon p { color: #292929; margin-bottom: 20px; }

@media only screen and (max-width: 900px) { 
.div-with-icon { padding: 48px 32px 32px 32px; text-align: left; }

.div-with-icon:before { left: 30px; }
}

/* ========== event apply cta sidebar */
.blog-event-sb {
    padding: 48px 32px; border-radius: 8px;
    background: url(../webp/blog-sb-bg.jpg.webp);
    background-size: cover; background-position: center;
    width: 385px;
}

.blog-event-sb:not(.sticky-widget, .sticky-widget2) { position: relative; }

.blog-event-sb:before {
    content: "";
    display: block; width: 100%; height: 100%;
    position: absolute; top: 0; left: 0;
    background: rgba(0,0,0,0.3); border-radius: 8px;
}
.blog-event-sb > div { position: relative; z-index: 2; }

@media only screen and (max-width: 967px) {
.blog-event-sb { position: relative !important; /* fix opaque overlay ish */ }
}