/* 
YOCA GLOBAL STYLESHEET (Version 1)
TEACUP 2024 (c) All rights reserved.

/*******************************************************************************
********************************** ESSENTIALS **********************************
*******************************************************************************/

/* HTML ________________________________________________________________________________ */

html {
	height: 100%;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	-moz-osx-font-smoothing: grayscale;
}

/* BODY ________________________________________________________________________________ */

body {
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: rgb(20, 20, 20) !important;
	font-family: 'LeagueSpartan', sans-serif;
	font-size: 18px;
	color: #ffffff;
	font-style: normal;
	font-weight: normal;
	text-align: left;
}

/* BODY TOP MARGIN ________________________________________________________________________________ */

.page-margin {
	margin-top: 0;
}

@media screen and (max-width: 580px) {
.page-margin {margin-top: 0;}
}

/*******************************************************************************
************************************ COLORS ************************************
*******************************************************************************/

:root {
	--yoca-green: #06954E; /* sea green */
	--yoca-green-rgb: 6, 149, 78;
}

/* PARAGRAPHS ________________________________________________________________________________ */

p {
	display: block;
	margin-block-start: 0.5em;
	margin-block-end: 1em;
	margin-inline-start: 0;
	margin-inline-end: 0;
	font-weight: 400;
}

@media screen and (min-width: 1024px) {
	p {
		font-size: 1.25em;
		line-height: 1.6em;
	}
}

/* HEADINGS ________________________________________________________________________________ */

h1, h2, h3, h4, h5, h6 {
	display: block;
	margin: 0.5em 0;
	padding: 0;
	font-style: normal;
	font-weight: 900;
	line-height: 1.2em;
	color: rgb(var(--yoca-green-rgb));
}

h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
	margin: 0 0 0.5em 0;
}

h1 /* page titles and section titles */ {
	font-size: 2.5em;
}

h2 /* section titles and subheadings */ {
	font-size: 2em;
}

h3 /* … */ {
	font-size: 1.5em;
}

h4 /* … */ {
	font-size: 1.25em;
}

h5 /* … */ {
	font-size: 1em;
}

h6 /* … */ {
	font-size: 0.8em;
}

@media screen and (max-width: 600px) {
	/* 75% smaller */
	h1 {
	font-size: 1.75em;
	}
	
	h2 {
		font-size: 1.5em;
	}
	
	h3 /* … */ {
		font-size: 1.25em;
	}
	
	h4 /* … */ {
		font-size: 1.1em;
	}
	
	h5 /* … */ {
		font-size: 1em;
	}
	
	h6 /* … */ {
		font-size: 0.8em;
	}
}

/* SUPERSCIPT ________________________________________________________________________________ */

sup {
	font-size: 0.7em;
}

/* HORIZONTAL RULE (LINE) ________________________________________________________________________________ */

hr {
	display: block;
	height: 1px;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	margin-left: auto;
	margin-right: auto;
	border-style: inset;
	border-width: 0;
	width: 100%;
	background-color: black;
	color: black;
}

/*******************************************************************************
************************************ LISTS *************************************
*******************************************************************************/

/* CIRCLED TICKS (Updated: 2023) –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

.check-list {
  margin: 0;
  padding-left: 1.2rem;
}

.check-list li {
  position: relative;
  list-style-type: none;
  padding-left: 2.5rem;
  margin-bottom: 0.5rem;
}

.check-list li:before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: -4px;
	width: 0.4em;
	height: 0.75em;
	border-width: 0 0.2em 0.2em 0;
	border-style: solid;
	border-color: var(--yoca-green);
	transform-origin: bottom left;
	transform: rotate(45deg);
}


ul.circled-ticks li, ul.circled-ticks-white li {
	display: block;
	counter-reset: my-default-counter;
	list-style: none;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 1em;
}

ul.circled-ticks li, ul.circled-ticks-white li {
	margin: 0 0 0.5rem 0;
	counter-increment: my-default-counter;
	position: relative;
}

ul.circled-ticks li::before {
	content: url('/media/images/symbols/tick.svg');
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 0;
	/*transform: rotate(-10deg);*/
	background: var(--yoca-green);
	border-radius: 50%;
	text-align: center;
}

ul.circled-ticks-white li::before {
	content: url('/media/images/symbols/tick_white.svg');
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 0;
	/*transform: rotate(-10deg);*/
	background: inherit;
	border-radius: 50%;
	text-align: center;
}

/* POINTS [OL] (Updated: 2021) –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

ol.circled-numbers {
	display: block;
	counter-reset: my-awesome-counter;
	list-style: none;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 40px;
}

ol.circled-numbers li {
	margin: 0 0 0.5rem 0;
	counter-increment: my-awesome-counter;
	position: relative;
}

ol.circled-numbers li::before {
	content: counter(my-awesome-counter);
	color: #ffffff;
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 4px;
	/*transform: rotate(-10deg);*/
	background: var(--yoca-green);
	border-radius: 50%;
	text-align: center;
}

ol.circled-numbers li ol {
	display: block;
	list-style: none;
	counter-reset: special-little-letters;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 40px;
}

@media screen and (min-width: 1024px) {
	ol.circled-numbers li ol {
		font-size: 1em;
	}
}

/* Level 2: Letters */
ol.circled-numbers li ol li {
	margin: 0 0 0.5rem 0;
	list-style: none;
	counter-increment: special-little-letters;
}

ol.circled-numbers li ol li::before {
	content: counter(special-little-letters, lower-alpha);
	color: #ffffff;
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 0;
	/*transform: rotate(-10deg);*/
	background: var(--yoca-green);
	border-radius: 50%;
	text-align: center;
}

/* RULES (Updated: 2021) –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

ol.rules-sections {
	display: block;
	counter-reset: rules-counter;
	list-style: none;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 40px;
}

/* Level 1: numbers (Headings) */
ol.rules-sections li {
	margin: 0 0 0.5rem 0;
	counter-increment: rules-counter;
	position: relative;
}

ol.rules-sections li::before {
	content: counter(rules-counter);
	color: #ffffff;
	font-size: 1.5em;
	font-weight: bold;
	position: absolute;
	--size: 2em;
	left: calc(-1 * var(--size) - 0.25em);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 70px;
	/*transform: rotate(-10deg);*/
	background: var(--yoca-green);
	border-radius: 50%;
	text-align: center;
}

ol.rules-sections li ol {
	display: block;
	counter-reset: my-awesome-counter;
	list-style: none;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 40px;
}

@media screen and (min-width: 1024px) {
	ol.rules-sections li ol {
		font-size: 1em;
	}
}

/* Level 2: numbers */
ol.rules-sections li ol li {
	margin: 0 0 0.5rem 0;
	counter-increment: my-awesome-counter;
	position: relative;
}

ol.rules-sections li ol li::before {
	content: counter(my-awesome-counter);
	color: #ffffff;
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 0;
	/*transform: rotate(-10deg);*/
	background: var(--yoca-green);
	border-radius: 50%;
	text-align: center;
}

ol.rules-sections li ol li ol {
	display: block;
	list-style: none;
	counter-reset: special-little-letters;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 40px;
}

/* Level 3: Letters */
ol.rules-sections li ol li ol li {
	margin: 0 0 0.5rem 0;
	list-style: none;
	counter-increment: special-little-letters;
}

ol.rules-sections li ol li ol li::before {
	content: counter(special-little-letters, lower-alpha);
	color: #ffffff;
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 0;
	/*transform: rotate(-10deg);*/
	background: var(--yoca-green);
	border-radius: 50%;
	text-align: center;
}

ol.rules-sections li ol li ol ol {
	display: block;
	list-style: none;
	counter-reset: special-roman-letters;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 40px;
}

/* Level 4: Roman */
ol.rules-sections li ol li ol ol li {
	margin: 0 0 0.5rem 0;
	list-style: none;
	counter-increment: special-roman-letters;
}

ol.rules-sections li ol li ol ol li::before {
	content: counter(special-roman-letters, upper-roman);
	color: #ffffff;
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 0;
	/*transform: rotate(-10deg);*/
	background: var(--yoca-green);
	border-radius: 50%;
	text-align: center;
}

/* individual lists */

ol.rules-points {
	display: block;
	counter-reset: my-awesome-counter;
	list-style: none;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 40px;
}

ol.rules-points li {
	margin: 0 0 0.5rem 0;
	counter-increment: my-awesome-counter;
	position: relative;
}

ol.rules-points li::before {
	content: counter(my-awesome-counter);
	color: #ffffff;
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 0;
	/*transform: rotate(-10deg);*/
	background: #222222;
	border-radius: 50%;
	text-align: center;
}

ol.rules-lettered {
	display: block;
	list-style: none;
	counter-reset: special-little-letters;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 40px;
}

ol.rules-lettered li {
	margin: 0 0 0.5rem 0;
	list-style: none;
	counter-increment: special-little-letters;
}

ol.rules-lettered li::before {
	content: counter(special-little-letters, lower-alpha);
	color: #ffffff;
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 0;
	/*transform: rotate(-10deg);*/
	background: #222222;
	border-radius: 50%;
	text-align: center;
}

ol.rules-roman {
	display: block;
	list-style: none;
	counter-reset: special-roman-letters;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 40px;
}

ol.rules-roman li {
	margin: 0 0 0.5rem 0;
	list-style: none;
	counter-increment: special-roman-letters;
}

ol.rules-roman li::before {
	content: counter(special-roman-letters, upper-roman);
	color: #ffffff;
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 0;
	/*transform: rotate(-10deg);*/
	background: #222222;
	border-radius: 50%;
	text-align: center;
}

ul.rules-bullet {
	display: block;
	list-style: none;
	counter-reset: my-awesome-counter;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	padding-left: 40px;
}

ul.rules-bullet li {
	margin: 0 0 0.5rem 0;
	list-style: none;
}

ul.rules-bullet li::before {
	content: "—";
	color: #ffffff;
	font-size: 1em;
	font-weight: bold;
	position: absolute;
	--size: 1.5em;
	left: calc(-1 * var(--size) - 10px);
	line-height: var(--size);
	width: var(--size);
	height: var(--size);
	top: 0;
	/*transform: rotate(-10deg);*/
	background: #222222;
	border-radius: 50%;
	text-align: center;
}

/*******************************************************************************
*********************************** TABLES *************************************
*******************************************************************************/

/* GENERAL TABLE ________________________________________________________________________________ */
.table /* general table */ {
	width: 100%;
	margin: 1em 0 1em 0;
	border-collapse: collapse;
	border-radius: 1em;
	font-size: 1em;
}

/* Table: row */
.table tr {
	border: none;
}

/* Table: header cells */
.table th {
	border: none;
	padding: 0.5em;
}

/* Table: cells */
.table td {
	border: none;
	padding: 0.5em;
}

/* Table: head */
.table thead {
	vertical-align: bottom;
}

.table thead tr:last-child {
	border-bottom: none;
}

/* Table: first row */
.table thead tr:first-of-type th:first-of-type {
	border-top-left-radius: 1em;
}

.table thead tr:last-of-type th:last-of-type {
	border-top-right-radius: 1em;
}

.table thead tr:first-of-type th {
	padding-top: 1em;
}

/* Table body */
.table tbody {
	vertical-align: top;
	background-color: rgba(255, 255, 255, 1);
}

/* Table without the thead tag: first row */
.table tbody:first-child tr:first-child td:first-of-type {
	border-top-left-radius: 1em;
}

.table tbody:first-child tr:first-child td:last-of-type {
	border-top-right-radius: 1em;
}

/* Table without the thead tag: last row */
.table tbody:last-child tr:last-child td:first-of-type {
	border-bottom-left-radius: 1em;
}

.table tbody:last-child tr:last-child td:last-of-type {
	border-bottom-right-radius: 1em;
}

/* Table: footer last row */
.table tr:last-of-type td:first-of-type {
	border-bottom-left-radius: 1em;
}

.table tr:last-of-type td:last-of-type {
	border-bottom-right-radius: 1em;
}

/* Table: body rows */
.table tbody tr:nth-child(odd) {
	background-color: rgba(255, 255, 255, 1);
}

.table tbody tr:nth-child(even) {
	background-color: rgba(250, 250, 250, 1);
}

.table tbody:hover tr {
	opacity: 0.8;
}

.table tbody tr:hover {
	background-color: rgba(var(--yoca-green-rgb), 0.1);
	opacity: 1 !important;
}

/* Table: foot */
.table tfoot {
	vertical-align: top;
}

.table tfoot tr:first-child {
	border-top: none;
}

/* Table autosize (optional) */
.autosize, .autosize td, .autosize th {
	width: auto;
}

/*******************************************************************************
*********************************** LINKS **************************************
*******************************************************************************/

/* DEFAULT LINK ________________________________________________________________________________ */

a:link {
	color: inherit;
	text-decoration: underline;
	text-decoration-style: solid;
	text-decoration-thickness: 0.2em;
	text-decoration-color: rgba(var(--yoca-green-rgb), 0.4);
	text-underline-position: under;
	text-decoration-skip-ink: none;
	transition: all .2s ease;
}

a:visited {
	color: inherit;
	text-decoration: underline;
	text-decoration-style: solid;
	text-decoration-thickness: 0.2em;
	text-decoration-color: rgba(var(--yoca-green-rgb), 0.4);
	text-underline-position: under;
	text-decoration-skip-ink: none;
}

a:active {
	color: inherit;
	text-decoration: underline;
	text-decoration-style: solid;
	text-decoration-thickness: 0.2em;
	text-decoration-color: rgba(var(--yoca-green-rgb), 0.4);
	text-decoration-skip-ink: none;
	text-underline-position: under;
}

a:hover {
	text-decoration: underline;
	text-decoration-style: solid;
	text-decoration-thickness: 0.2em;
	text-decoration-color: rgba(var(--yoca-green-rgb), 0.9);
	text-decoration-skip-ink: none;
	text-underline-position: under;
}

/*******************************************************************************
************************************ FONTS *************************************
*******************************************************************************/

/* NUMERIC KEYBOARD VALUES
font-weight: 100; – Hairline
font-weight: 200; – Thin
font-weight: 300; – Light
font-weight: 400; – Regular
font-weight: 500; – Medium
font-weight: 600; – Semibold
font-weight: 700; – Bold
font-weight: 800; – Heavy
font-weight: 900; – Black
*/

/* DEFAULT FONT ________________________________________________________________________________ */

@font-face {
	font-family: "LeagueSpartan";
	src: url('/styles/fonts/League_Spartan/static/LeagueSpartan-Black.ttf') format('truetype');
	font-weight: 900;
}

@font-face {
	font-family: "LeagueSpartan";
	src: url('/styles/fonts/League_Spartan/static/LeagueSpartan-ExtraBold.ttf') format('truetype');
	font-weight: 800;
}

@font-face {
	font-family: "LeagueSpartan";
	src: url('/styles/fonts/League_Spartan/static/LeagueSpartan-Bold.ttf') format('truetype');
	font-weight: 700;
}

@font-face {
	font-family: "LeagueSpartan";
	src: url('/styles/fonts/League_Spartan/static/LeagueSpartan-SemiBold.ttf') format('truetype');
	font-weight: 600;
}

@font-face {
	font-family: "LeagueSpartan";
	src: url('/styles/fonts/League_Spartan/static/LeagueSpartan-Medium.ttf') format('truetype');
	font-weight: 500;
}

@font-face {
	font-family: "LeagueSpartan";
	src: url('/styles/fonts/League_Spartan/static/LeagueSpartan-Regular.ttf') format('truetype');
	font-weight: 400;
}

@font-face {
	font-family: "LeagueSpartan";
	src: url('/styles/fonts/League_Spartan/static/LeagueSpartan-Light.ttf') format('truetype');
	font-weight: 300;
}

@font-face {
	font-family: "LeagueSpartan";
	src: url('/styles/fonts/League_Spartan/static/LeagueSpartan-ExtraLight.ttf') format('truetype');
	font-weight: 200;
}

@font-face {
   font-family: "LeagueSpartan";
   src: url('/styles/fonts/League_Spartan/static/LeagueSpartan-Thin.ttf') format('truetype');
   font-weight: 100;
}

/* FONT STYLING ________________________________________________________________________________ */

.bold {
	font-weight: bold !important;
}

/* FONT SIZES ________________________________________________________________________________ */

.large, .fs-x_1_5 {
	font-size: 1.5em !important;
}


.fs-x_1 {
	font-size: 1em !important;
}

.fs-x_1_5 {
	font-size: 1.5em !important;
}

.x-large {
	font-size: 2em !important;
}

.xx-large {
	font-size: 3em !important;
}

.smaller {
	font-size: smaller !important;
}

/*******************************************************************************
*********************************** CURSORS ************************************
*******************************************************************************/

.not-allowed {
	cursor: not-allowed;
}

/*******************************************************************************
************************************ TEXT **************************************
*******************************************************************************/

.uppercase {
	text-transform: uppercase !important;
}

.lowercase {
	text-transform: lowercase !important;
}

.capitalize {
	text-transform: capitalize !important;
}

/*******************************************************************************
*********************************** LAYOUT *************************************
*******************************************************************************/

/* GUIDE TO WEB CONTENT RESOLUTION (WIDTH)
width: 1024px; (–2023, previous version)
width: 1140px;
width: 1280px; (2023–, current version)
width: 1440px;
*/

/* BODY LAYOUT
1. wrapper (width: 100%)
2. header (include, separate stylesheet)
3. content (width: 100%; between header and footer)
2. section (width: 100%)
	2.1. section-content (specific content width)
	2.2. supnavigation
3. footer (include, separate stylesheet)
*/

/* WRAPPER ________________________________________________________________________________ */

div.wrapper {
	background: rgb(20, 20, 20);
	display: block;
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	/* padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left); */
}

/* INTRO ________________________________________________________________________________ */

div.intro, div.footer {
	position: relative;
	display: block;
	background: url('/media/images/bg_intro.jpg');
	background-color: ;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	padding-top: 4em;
	border: 0;
	overflow: visibile;
}

/* CONTENT ________________________________________________________________________________ */

div.content /* width: 100%; between header and footer */ {
	background-color: #ffffff;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	border: 0;
}

section {
	position: relative;
	display: block;
	background-color: ;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	width: 100%;
	height: intrinsic;
	margin: 0;
	padding: 0;
	padding-top: 6em;
	border: 0;
	overflow: visibile;
}

section.intro {
	padding-top: 12em !important;
}

section.no_top_padding, section.presentation {
	padding-top: 0 !important;
}

div.section-content {
	position: relative;
	max-width: 1280px;
	height: intrinsic;
	margin: 0 auto;
	padding: 0 1em 6em 1em;
	line-height: 1.6em;
	border-top: 1px solid transparent;
	overflow: visibile;
}

/* SUPNAVIGATION ________________________________________________________________________________ */

div.subnavigation {
	position: relative;
	display: block;
	background-color: ;
	width: 100%;
	height: intrinsic;
	margin: 0;
	padding: 0;
	border: 0;
	overflow: visibile;
}

div.subnavigation-content {
	position: relative;
	max-width: 1280px;
	height: intrinsic;
	margin: 0 auto;
	padding: 0.5em 1em;
	line-height: 1.6em;
	border-top: 1px solid transparent;
	overflow: visibile;
}

/*******************************************************************************
********************************** COLUMNS *************************************
*******************************************************************************/

/* CONTAINER, ROW & COLUMNS ________________________________________________________________________________ */

.container {
	width: 100%;
}

.row {
	display: flex;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	flex-wrap: wrap;
	flex-direction: row;
	align-items: flex-start;
	margin-left: -1em;
	margin-right: -1em;
}

/* DEVICES & SCREEN WIDTHS
 <360px — Extra small devices [Phones] (max container width: auto): .col- [.col-xs-]
 ≥600px — Small devices [Tablets] (max container width: 799px): col-sm-
 ≥800px — Medium devices [Desktops, Laptops] (max container width: 1079px): .col-md-
 ≥1080px — Large devices [Desktops] (max container width: 960px): .col-lg-
≥1280px — (inactive) Extra large devices [Desktops] (max container width: auto): .col-xl-

12 colums grid: 1 column of 100% width = col-__-12
*/

.col-0, .col-1, .col-2, .col-2-4 /*survey*/, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col-xs-0, .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12,  .col-sm-0, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-md-0, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .filterDiv /*library items*/, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-lg-0, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-xl-0, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
	position: relative;
	min-height: 1px;
	/*padding-right: 1em;
	padding-left: 1em;
	padding-top: 1em;
	padding-bottom: 1em;*/
	vertical-align: top;
}
.col-0, .col-1, .col-2, .col-2-4 /* survey */, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {
	float: left;
}
.col-12 {
  width: 100%;
}
.col-11 {
  width: 91.66666667%;
}
.col-10 {
  width: 83.33333333%;
}
.col-9 {
  width: 75%;
}
.col-8 {
  width: 66.66666667%;
}
.col-7 {
  width: 58.33333333%;
}
.col-6 {
  width: 50%;
}
.col-5 {
  width: 41.66666667%;
}
.col-4 {
  width: 33.33333333%;
}
.col-3 {
  width: 25%;
}
.col-2-4 /* survey */ {
  width: 20%;
}
.col-2 {
  width: 16.66666667%;
}
.col-1-5 /* phonemic symbols */ {
  width: 12.5%;
}
.col-1 {
  width: 8.33333333%;
}
.col-0 {
	  width: 0%;
	  display: none;
}

@media (min-width: 360px) {
	.col-xs-0, .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12, .filterDiv /* library items */ {
		float: left;
	}
	.col-xs-12 {
	  width: 100%;
	}
	.col-xs-11 {
	  width: 91.66666667%;
	}
	.col-xs-10 {
	  width: 83.33333333%;
	}
	.col-xs-9 {
	  width: 75%;
	}
	.col-xs-8 {
	  width: 66.66666667%;
	}
	.col-xs-7 {
	  width: 58.33333333%;
	}
	.col-xs-6 {
	  width: 50%;
	}
	.col-xs-5 {
	  width: 41.66666667%;
	}
	.col-xs-4 {
	  width: 33.33333333%;
	}
	.col-xs-3 {
	  width: 25%;
	}
	.col-xs-2 {
	  width: 16.66666667%;
	}
	.col-xs-1 {
	  width: 8.33333333%;
	}
	.col-xs-0 {
		width: 0%;
		display: none;
	}
}
@media (min-width: 600px) {
	.col-sm-0, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
	float: left;
	}
	.col-sm-12 {
	width: 100%;
	}
	.col-sm-11 {
	width: 91.66666667%;
	}
	.col-sm-10 {
	width: 83.33333333%;
	}
	.col-sm-9 {
	width: 75%;
	}
	.col-sm-8 {
	width: 66.66666667%;
	}
	.col-sm-7 {
	width: 58.33333333%;
	}
	.col-sm-6 {
	width: 50%;
	}
	.col-sm-5 {
	width: 41.66666667%;
	}
	.col-sm-4 {
	width: 33.33333333%;
	}
	.col-sm-3 {
	width: 25%;
	}
	.col-sm-2 {
	width: 16.66666667%;
	}
	.col-sm-1 {
	width: 8.33333333%;
	}
}
@media (max-width: 799px) {
	.col-sm-0 {
	width: 0%;
	display: none;
	}
}
@media (min-width: 800px) {
	.col-md-0, .col-md-1, .col-md-2, .col-md-2-4 /* survey */, .col-md-3, .col-md-4, .filterDiv /* library items */, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
	float: left;
	}
	.col-md-12, .filterDiv /* library items */ {
	width: 100%;
	}
	.col-md-11 {
	width: 91.66666667%;
	}
	.col-md-10 {
	width: 83.33333333%;
	}
	.col-md-9 {
	width: 75%;
	}
	.col-md-8 {
	width: 66.66666667%;
	}
	.col-md-7 {
	width: 58.33333333%;
	}
	.col-md-6 {
	width: 50%;
	}
	.col-md-5 {
	width: 41.66666667%;
	}
	.col-md-4 {
	width: 33.33333333%;
	}
	.col-md-3 {
	width: 25%;
	}
	.col-md-2-4 /* survey */ {
	width: 20%;
	}
	.col-md-2 {
	width: 16.66666667%;
	}
	.col-md-1 {
	width: 8.33333333%;
	}
	.col-md-0 {
	width: 0%;
	display: none;
	}
}
@media (min-width: 1080px) {
	.col-lg-0, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
	float: left;
	}
	.col-lg-12 {
	width: 100%;
	}
	.col-lg-11 {
	width: 91.66666667%;
	}
	.col-lg-10 {
	width: 83.33333333%;
	}
	.col-lg-9 {
	width: 75%;
	}
	.col-lg-8 {
	width: 66.66666667%;
	}
	.col-lg-7 {
	width: 58.33333333%;
	}
	.col-lg-6 {
	width: 50%;
	}
	.col-lg-5 {
	width: 41.66666667%;
	}
	.col-lg-4 {
	width: 33.33333333%;
	}
	.col-lg-3 {
	width: 25%;
	}
	.col-lg-2 {
	width: 16.66666667%;
	}
	.col-lg-1 {
	width: 8.33333333%;
	}
	.col-lg-0 {
	width: 0%;
	display: none;
	}
}
@media (min-width: 1280px) {
	.col-xl-0, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12 {
	float: left;
	}
	.col-xl-12 {
	width: 100%;
	}
	.col-xl-11 {
	width: 91.66666667%;
	}
	.col-xl-10 {
	width: 83.33333333%;
	}
	.col-xl-9 {
	width: 75%;
	}
	.col-xl-8 {
	width: 66.66666667%;
	}
	.col-xl-7 {
	width: 58.33333333%;
	}
	.col-xl-6 {
	width: 50%;
	}
	.col-xl-5 {
	width: 41.66666667%;
	}
	.col-xl-4 {
	width: 33.33333333%;
	}
	.col-xl-3 {
	width: 25%;
	}
	.col-xl-2 {
	width: 16.66666667%;
	}
	.col-xl-1 {
	width: 8.33333333%;
	}
	.col-xl-0 {
	width: 0%;
	display: none;
	}
}

/* COL CONTENT ________________________________________________________________________________ */

.col-content {
	position: relative;
	width: 100%;
	height: intrinsic;
	padding-right: 1em;
	padding-left: 1em;
	padding-top: 1em;
	padding-bottom: 1em;
}

@media (max-width: 359px) {
	.col-xs-12 .col-content {
		padding-bottom: 0 !important;
	}
}

@media (min-width: 360px) and (max-width: 599px) {
	.col-sm-12 .col-content {
		padding-bottom: 0 !important;
	}
}

@media (min-width: 600px) and (max-width: 799px) {
	.col-md-12 .col-content {
		padding-bottom: 0 !important;
	}
}

@media (min-width: 800px) and (max-width: 1079px) {
	.col-lg-12 .col-content {
		padding-bottom: 0 !important;
	}
}

@media (min-width: 1080px) and (max-width: 1279px) {
	.col-xl-12 .col-content {
		padding-bottom: 0 !important;
	}
}

/* COLUMN ORDER ________________________________________________________________________________ */

@media screen and (max-width: 768px) {
	.first {order: 1;}
	.second {order: 2;}
	.third {order: 3;}
	.fourth {order: 4;}
	.fifth {order: 5;}
}

/* TILE ________________________________________________________________________________ */

.tile {
	display: block;
	position: relative;
	background: rgba(255, 255, 255, 0.95);
	width: 100%;
	height: auto;
	margin: 0;
	padding: 2em;
	font-size: unset;
	color: unset;
	border-radius: 1em;
	border-width: 0.05em;
	border-style: solid;
	border-color: rgba(0, 0, 0, 0.25);
	overflow: hidden;
	vertical-align: middle;
	transform: translateZ(0);
	-webkit-box-shadow: 0px 10px 30px -20px rgba(0, 0, 0, 0.5) !important;
	-moz-box-shadow: 0px 10px 30px -20px rgba(0, 0, 0, 0.5) !important;
	box-shadow: 0px 10px 30px -20px rgba(0, 0, 0, 0.5) !important;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	transition-duration: 0.5s;
	transition-property: transform;
	animation-iteration-count: 1;
	opacity: 1;
}

/*******************************************************************************
********************************** UTILITIES ***********************************
*******************************************************************************/

/* ALIGNING ________________________________________________________________________________ */

.center {
	display: block;
	margin: 0 auto;
	text-align: center;
	float: center;
}

.left {
	display: block;
	margin: auto;
	text-align: left;
}

.right {
	display: block;
	margin: auto;
	text-align: right;
}

/* DARKEN & WHITEN ________________________________________________________________________________ */

.green_glass, .grey_glass {
	position: relative;
}

.green_glass:after, .grey_glass:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: block;
}

.green_glass:after {
	//background-color: rgba(var(--yoca-green-rgb),0.7) !important;
	background-image: linear-gradient(to bottom right, rgba(var(--yoca-green-rgb),0.2), rgba(var(--yoca-green-rgb),0.6));
}

.grey_glass:after {
	//background-color: rgba(var(--yoca-green-rgb),0.7) !important;
	background-image: linear-gradient(to bottom right, rgba(0,0,0,0.5), rgba(0,0,0,0.9));
}

.green_glass div, span, p, button, h1, h2, h3, h4, h5, h6, ul, .grey_glass div, span, p, button, h1, h2, h3, h4, h5, h6, ul {
	position: relative;
	z-index: 1;
}

/* NOWRAP ________________________________________________________________________________ */

.nowrap {
	white-space: nowrap;
}

/* PREVENT TEXT SELECT ________________________________________________________________________________ */

.prevent-select {
	-webkit-touch-callout: none; /* iOS */
	-webkit-tap-highlight-color: transparent; /* iOS */
	-moz-user-select: -moz-none;
	-webkit-user-select: none; /* Safari */
	-ms-user-select: none; /* IE 10 and IE 11 */
	user-select: none; /* Standard syntax */
}

/* GROW EFFECT ________________________________________________________________________________ */

.hvr-grow {
	display: inline-block;
	vertical-align: middle;
	transform: translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	transition-duration: 0.3s;
	transition-property: transform;
}

.hvr-grow:hover,
.hvr-grow:focus,
.hvr-grow:active {
	transform: scale(1.1);
}

/* SCROLLING ________________________________________________________________________________ */

/* Horizontal scrolling */
div.scroll-h {
	width: 100%;
	height: auto;
	overflow-x: scroll;
	overflow-y: hidden;
}

/*******************************************************************************
******************************* GLOBAL ELEMENTS ********************************
*******************************************************************************/

/* BACK TO TOP (BUTTON) ________________________________________________________________________________ */

.back-to-top {
	background: none;
	margin: 0;
	padding: 0.35em 0;
	position: fixed;
	bottom: 24px;
	left: 50%;
	margin-left: -30px; /* Negative half of width */
	/* right: 108px; */
	width: 60px;
	height: 60px;
	z-index: 100;
	display: none;
	text-decoration: none;
	color: #ffffff !important;
	background-color: rgba(var(--yoca-green-rgb),0.5) !important; 
	text-align: center;
	border-radius: 50%;
}
 
.back-to-top i { 
	color: #ffffff !important;
}

.back-to-top:hover {
	background-color: var(--yoca-green) !important;
}

.back-to-top:hover,
.back-to-top:active,
.back-to-top:focus {
	color: #ffffff !important;
}

/* PRIVACY NOTICE (GDPR) ________________________________________________________________________________ */

#myCookieConsent {
	z-index: 999999999999;
	min-height: intrinsic;
	padding: 0.75em;
	overflow: hidden;
	position: fixed;
	color: #ffffff;
	bottom: 0;
	right: 0;
	left: 0;
	display: none;
	text-align: center;
	font-size: 1em;
	font-weight: 500;
	background-color: rgba(34,34,34,0.8);
	-webkit-backdrop-filter: saturate(180%) blur(20px);
	backdrop-filter: saturate(180%) blur(20px);
}

#myCookieConsent div {
	
}

#myCookieConsent p {
	font-size: 0.9em;
}

#myCookieConsent a {
	display: inline-block;
	color: white;
	font-size: 0.8em;
	background: var(--langhub-red);
	text-decoration: none;
	cursor: pointer;
	padding: 0.5em 1em;
	margin: 0.5em;
	border-radius: 1em;
	font-weight: 800;
}

#myCookieConsent a:hover {
	background: var(--yoca-green);
	color: white;
}

#myCookieConsent a#cookieButton {
	display: inline-block;
	color: white;
	font-size: 0.8em;
	background: var(--langhub-red);
	text-decoration: none;
	cursor: pointer;
	padding: 0.5em 1em;
	margin: 0.5em;
	border-radius: 1em;
	font-weight: 800;
}

#myCookieConsent a#cookieButton:hover {
	background: var(--yoca-green);
	color: white;
}

/*******************************************************************************
*********************************** HEADER *************************************
*******************************************************************************/

/* GLOBAL NAVIGATION MENU */

.header {
	position: fixed;
	width: 100%;
	top: 0;
	margin: 0;
	padding: 0.4em;
	background-color: rgba(var(--yoca-green-rgb),0.8);
	-webkit-backdrop-filter: saturate(180%) blur(20px);
	backdrop-filter: saturate(180%) blur(20px);
	transition: 0.4s;
	z-index: 999;
	/*opacity: 0.8 or 0.9; to add*/
}

.header-container {
	display: block;
	max-width: 1280px;
	height: intrinsic;
	margin: 0 auto;
	padding: 0;
}

/* GLOBAL NAVIGATION MENU LOGO */

#logo {
	float: left;
	display: inline-block;
	transition: 0.4s;
}

.header-logo {
	display: inline-block;
	background-image: url(/media/images/logo/header-logo.svg);
	background-size: 100% 100%;
	height: 6em; width: 8em; /* IMPORTANT!!! Must stay in one line */
	margin: 0;
	padding: 0;
	text-decoration: none;
	/*-webkit-mask-size: cover;
	-webkit-mask-image: url('/images/logo/langhub-square-white.svg');
	mask-image: url('/images/logo/langhub-square-white.svg');*/
	transition: 0.4s ease;
}

.header-logo:hover {
	opacity: 0.5;
}

@media screen and (max-width: 580px) {
	#logo {
		float: none;
		display: block;
		width: 100%;
		text-align: center;
	}
	
	.header-logo {
	display: block;
	margin: 0 auto;
	}
}

/* –––––––––––––––––––– GLOBAL MENU TOP BAR LIST (July 2023) –––––––––––––––––––– */

div.global-menu-top-bar-container {
	float: right;
}

ul.global-menu-top-bar-contact-phone, ul.global-menu-top-bar-contact-email, ul.global-menu-top-bar-contact-cal, ul.global-menu-top-bar-contact-instagram {
	display: inline-block;
	list-style-type: none;
	margin: 0.45em 0;
	padding: 0;
	overflow: visible;
	transition: 0.3s;
}

@media screen and (min-width: 1024px) {
	ul.global-menu-top-bar-contact-phone, ul.global-menu-top-bar-contact-email, ul.global-menu-top-bar-contact-cal, ul.global-menu-top-bar-contact-instagram {
		font-size: 1em;
		line-height: 1em;
	}
}

ul.global-menu-top-bar-contact-phone li, ul.global-menu-top-bar-contact-email li, ul.global-menu-top-bar-contact-cal li, ul.global-menu-top-bar-contact-instagram li {
	float: left;
	margin: 0;
	padding: 0.25em 0;
	border: 0;
	font-size: 1em;
	font-weight: 600;
	color: #ffffff;
}

ul.global-menu-top-bar-contact-phone li a, ul.global-menu-top-bar-contact-email li a, ul.global-menu-top-bar-contact-cal li a, ul.global-menu-top-bar-contact-instagram li a {
	text-decoration: none;
}

/* CONTACT BAR */
ul.global-menu-top-bar-contact-phone li, ul.global-menu-top-bar-contact-email li, ul.global-menu-top-bar-contact-cal li, ul.global-menu-top-bar-contact-instagram li {
	border-top-left-radius: 1em !important;
	border-top-right-radius: 1em !important;
	border-bottom-left-radius: 1em !important;
	border-bottom-right-radius: 1em !important;
	padding-left: 2.25em;
	padding-right: 0.75em;
	text-align: center;
	text-decoration: none !important;
	line-height: normal;
	transition: 0.3s;
	opacity: 1 !important;
}

ul.global-menu-top-bar-contact-phone li:hover, ul.global-menu-top-bar-contact-email li:hover, ul.global-menu-top-bar-contact-cal li:hover, ul.global-menu-top-bar-contact-instagram li:hover {
	opacity: 0.8 !important;
}

.header-phone-icon {
	display: inline-block;
	top: -0.25em;
	left: 0;
	border-radius: 1em;
	background: url(/media/images/header/call.svg) 0 0 no-repeat;
	background-position: center;
	background-size: 1.4em;
	background-color: transparent;
	content: '';
	margin: 0;
	position: absolute;
	height: 1.8em;
	width: 1.8em;
}

.header-email-icon {
	display: inline-block;
	top: -0.25em;
	left: 0;
	border-radius: 1em;
	background: url(/media/images/header/mail.svg) 0 0 no-repeat;
	background-position: center;
	background-size: 1.4em;
	background-color: transparent;
	content: '';
	margin: 0;
	position: absolute;
	height: 1.8em;
	width: 1.8em;
}

.header-cal-icon {
	display: inline-block;
	top: -0.25em;
	left: 0;
	border-radius: 1em;
	background: url(/media/images/header/cal.svg) 0 0 no-repeat;
	background-position: center;
	background-size: 1.4em;
	background-color: transparent;
	content: '';
	margin: 0;
	position: absolute;
	height: 1.8em;
	width: 1.8em;
}

.header-instagram-icon {
	display: inline-block;
	top: -0.25em;
	left: 0;
	border-radius: 1em;
	background: url(/media/images/social-media/instagram.svg) 0 0 no-repeat;
	background-position: center;
	background-size: 1.4em;
	background-color: transparent;
	content: '';
	margin: 0;
	position: absolute;
	height: 1.8em;
	width: 1.8em;
}

/* ROUND BUTTONS */
button.global-menu-top-bar-button {
	display: none;
}

.online_booking_button {
	background-color: white;
	color: rgba(var(--yoca-green-rgb),1) !important;
	padding: 0.25em 0.33em 0.1em !important;
	border: 0;
	border-radius: 0.33em;
}

/* SCREEN RESOLUTIONS */

@media screen and (max-width: 800px) /* smartphone */ {
	div.global-menu-top-bar-container {
		margin-right: 4em; // to make space for the mobile menu button
	}
	
	ul.global-menu-top-bar-contact-phone, ul.global-menu-top-bar-contact-email, ul.global-menu-top-bar-contact-cal, ul.global-menu-top-bar-contact-instagram {
		display: none;
	}
	
	span.global-menu-top-bar-text {
		display: none !important;
	}
	
	button.global-menu-top-bar-button {
		display: inline-block;
		margin: 0.45em 0.5em;
		border: 0;
		border-top-left-radius: 1em !important;
		border-top-right-radius: 1em !important;
		border-bottom-left-radius: 1em !important;
		border-bottom-right-radius: 1em !important;
		height: 1.85em;
		width: 1.85em;
		background-color: white;
		padding: 0.5em;
		color: black;
		text-align: center;
		text-decoration: none;
		font-size: 1em;
		cursor: pointer;
		transition: 0.3s;
	}
	
}

@media screen and (max-width: 580px) /* smartphone */ {
	div.global-menu-top-bar-container {
		float: none; 
		display: block;
		width: 100%;
		text-align: center;
		margin-right: 0;
	}
	
	button.global-menu-top-bar-button {
		margin-top: 1em;
	}
}

/* –––––––––––––––––––– GLOBAL MENU TOP BAR LIST (new) –––––––––––––––––––– */

div.global-menu-top-bar-container {
	float: right;
}

ul.global-menu-top-bar {
	float: right;
	list-style-type: none;
	margin: 0.45em 0;
	padding: 0;
	overflow: hidden;
	transition: 0.3s;
}

@media screen and (min-width: 1024px) {
	ul.global-menu-top-bar {
		font-size: 1em;
		line-height: 1em;
	}
}

ul.global-menu-top-bar li {
	float: left;
	margin: 0 0.45em;
	padding: 0;
}

ul.global-menu-top-bar li a {
	float: left;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	font-size: 0.8em;
	line-height: normal;
}

a.global-menu-top-bar-btn {
	color: #ffffff;
	text-align: center;
	text-decoration: none !important;
	margin: 0;
	padding: 0.25em 0.5em !important;
	border: 0.1em solid;
	border-color: #ffffff;
	border-top-left-radius: 1em !important;
	border-top-right-radius: 1em !important;
	border-bottom-left-radius: 1em !important;
	border-bottom-right-radius: 1em !important;
	transition: 0.3s;
	opacity: 1 !important;
}

a.global-menu-top-bar-btn:hover {
	color: #222222 !important;
	background-color: #ffffff !important;
	text-align: center;
	text-decoration: none;
}

@media screen and (max-width: 800px) /* smartphone */ {
	
div.global-menu-top-bar-container {
	margin-right: 4em; // to make space for the mobile menu button
}

span.login-items {
	display: none !important;
}
}

@media screen and (max-width: 580px) /* smartphone */ {
	div.global-menu-top-bar-container {float: none; display: block; width: 100%; text-align: center; margin-right: 0;}
	ul.global-menu-top-bar {float: none; display: inline-block; margin: 1.5em auto 1em auto;}
	ul.global-menu-top-bar li {float: none; display: inline-block; margin: 0.5em;}
	ul.global-menu-top-bar li a {float: none; display: inline-block;}
}

/* –––––––––––––––––––– GLOBAL MENU MAIN BAR LIST (current) –––––––––––––––––––– */

div.global-menu-main-bar-container {
	clear: right;
}

ul.global-menu-main-bar {
	float: right;
	list-style-type: none;
	margin: 0;
	padding: 0;
	overflow: hidden;
}

@media screen and (min-width: 1024px) {
	ul.global-menu-main-bar {
		font-size: 22px;
		line-height: normal;
	}
}

ul.global-menu-main-bar li {
	float: left;
	margin: 0;
	font-size: 22px;
	font-weight: 700;
}

ul.global-menu-main-bar li a {
	float: left;
	color: rgba(255, 255, 255, 0.9);
	text-align: center;
	text-transform: none; 
	margin: 0.75em 0.67em;
	padding: 0.25em;
	text-decoration: none;
	transition: 0.3s;
}

ul.global-menu-main-bar li a:active {
	opacity: 0.5;
	text-shadow: 0 0 0;
	text-decoration: none;
}

ul.global-menu-main-bar li a:hover {
	color: white;
	text-shadow: 0 0 5px rgba(255, 255, 255, 0.2);
	text-decoration: none;
}

@media screen and (max-width: 1080px) {
ul.global-menu-main-bar li a {
	margin: 1em 0.25em 0.75em;
	font-size: 0.8em;
}
}

@media screen and (max-width: 800px) {
ul.global-menu-main-bar li {display: none;}
}

@media screen and (max-width: 800px) 
{
ul.global-menu-main-bar.responsive {
	position: relative;
	display: block;
	height: 100%;
	width: 100%;
	border: 0;
	text-align: center;
	z-index: 999999;
}
ul.global-menu-main-bar.responsive li.icon {
	float: none;
	position: fixed;
	right: 0;
	top: 0;
	width: 2em;
	height: 2em;
	z-index: 99999999;
}
ul.global-menu-main-bar.responsive li.icon:active {
	float: none;
	position: fixed;
	right: 0;
	top: 0;
	width: 2em;
	height: 2em; z-index: 99999999;
}
ul.global-menu-main-bar.responsive li {
	float: none;
	display: block;
	background: #222222;
	height: auto;
	width: 100%;
	margin: 0;
	padding: 0.5em;
	border: 0;}
ul.global-menu-main-bar.responsive li a {
	float: none;
	display: block;
	opacity: 1.0;
	background: #222222;
	border: 0;
	padding: 0.75em 1em;
	margin: 0;
	text-align: center;
}
}

/* –––––––––––––––––––– SIDENAV – ICON (current) –––––––––––––––––––– */

.sidenav-icon-container {
	display: none;
}

@media screen and (max-width: 800px) {
.sidenav-icon-container {
	position: fixed;
	top: 0;
	right: 0;
	display: block;
	background-color: transparent;
}
}

.sidenav-icon {
	display: block;
	cursor: pointer !important;
	margin: 0;
	padding: 0.25em 0.5em;
	color: #ffffff;
	font-size: 2.75em;
	text-align: center;
	text-transform: none;
	text-decoration: none !important;
	overflow: visible !important;
	transition: 0.3s;
}

.sidenav-icon:hover {
	color: #ffffff !important;
	text-decoration: none !important;
	opacity: 0.5;
}

/* –––––––––––––––––––– SIDENAV – MENU (new) –––––––––––––––––––– */

.sidenav {
	height: 100vh !important;
	width: 0;
	position: fixed;
	z-index: 999999999;
	top: 0;
	left: 0;
	background: rgba(var(--yoca-green-rgb),1);
	overflow-x: hidden;
	transition: 0.3s;
	padding-top: 3em;
	text-align: center;
}

.sidenav a {
	margin: 0.25em auto;
	padding: 0.25em 1em;
	text-decoration: none !important;
	font-size: 1.75em;
	color: #ffffff !important;
	display: block;
	transition: 0.3s;
}

.sidenav a:hover{
	color: #ffffff;
	text-decoration: none;
	opacity: 0.5;
}

.sidenav .closebtn {
	position: absolute;
	top: 0;
	right: 0;
	cursor: pointer !important;
	margin: 0;
	padding: 0.15em 0.33em;
	color: #ffffff;
	font-size: 4em;
	text-align: center;
	text-transform: none;
	text-decoration: none !important;
	overflow: visible !important;
	transition: 0.3s;
}

.sidenav .closebtn:hover {
	color: #ffffff !important;
	text-decoration: none !important;
	opacity: 0.5;
}

a.global-menu-sidenav-btn {
	display: block;
	width: intrinsic !important;
	background-color: #ffffff !important;
	color: #222222 !important;
	text-align: center;
	text-decoration: none !important;
	margin: 0.5em auto;
	padding: 0.25em 0.75em !important;
	border: 0.1em solid;
	border-color: #ffffff;
	border-top-left-radius: 1em !important;
	border-top-right-radius: 1em !important;
	border-bottom-left-radius: 1em !important;
	border-bottom-right-radius: 1em !important;
	transition: 0.3s;
	opacity: 1 !important;
	white-space: nowrap;
}

a.global-menu-sidenav-btn:hover {
	opacity: 0.5 !important;
}

@media screen and (max-height: 580px) {
.sidenav {
	background: rgba(var(--yoca-green-rgb),1);
	//-webkit-backdrop-filter: saturate(180%) blur(20px) !important;
	//backdrop-filter: saturate(180%) blur(20px) !important;
}
.sidenav a {}
}


/*******************************************************************************
********************************** IMAGES ***********************************
*******************************************************************************/

div.intro-logo {
	display: block;
	align-content: center;
	background-color: #ffffff;
	height: 9em;
	width: 12em;
	margin: 0 auto;
	padding: 0;
	text-decoration: none;
	-webkit-mask-size: cover;
	-webkit-mask-image: url('/media/images/logo/yoca.svg');
	mask-image: url('/media/images/logo/yoca.svg');
	transition: 0.3s;
}

div.footer-logo {
	display: block;
	align-content: center;
	background-color: #ffffff;
	height: 9em;
	width: 12em;
	margin: 0 auto;
	padding: 0;
	text-decoration: none;
	-webkit-mask-size: cover;
	-webkit-mask-image: url('/media/images/logo/yoca.svg');
	mask-image: url('/media/images/logo/yoca.svg');
	transition: 0.3s;
}

.card-photo /* photo must be included within html */ {
	display: inline-block;
	height: 6em;
	width: 6em;
	margin: 0;
	background-color: white;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: center center;
	border: 0.15em solid var(--yoca-green);
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	outline: none;
	transition: 0.4s;
}

span.card-details {
	display: inline-block !important;
	white-space: nowrap;
	width: intrinsic;
	height: 2.5em;
	padding: 0;
	text-align: left;
	line-height: normal;
	font-size: inherit;
	font-weight: 300;
	color: #ffffff;
	background-color: transparent;
}

/* Section: YOCA */

div.background-display-mobile-yoca {
	background-size: 40em;
	background-position: left bottom;
}

@media screen and (max-width: 580px) /* smartphone */ {
	div.background-display-mobile-yoca {
		background-size: 30em;
		background-position: center bottom;
	}
}


.intro-cirles-mobile {
	display: none;
}

@media screen and (max-width: 800px) {
	.intro-cirles-desktop {
		display: none;
	}
	
	.intro-cirles-mobile {
		display: block;
	}
}






























































































/* VERSION 3 (to delete) ________________________________________________________________________________ */



/* HEADER */

.hide {
  display: none;
}

/*.myDIV-order:hover, .myDIV-register:hover, .myDIV-tests:hover, .myDIV-account:hover {
  display: inline-block;
  color: white;
 }*/

.myDIV-order:hover + .hide {
  display: block;
  color: white;
}

.myDIV-register:hover + .hide {
  display: inline-block;
  color: white;
}

.myDIV-tests:hover + .hide {
  display: inline-block;
  color: white;
}

.myDIV-account:hover + .hide {
  display: block;
  white-space: nowrap !important;
  color: white;
}

/* –––––––––––––––––––– ELEARNING –––––––––––––––––––– */

.bg-blog /* teacup blog */ {
	background: rgb(34,34,34) !important;
	background: -webkit-linear-gradient(to right, #f5af19, #222222);  /* Chrome 10-25, Safari 5.1-6 */
	background: linear-gradient(to right, #00366d, #002a53, #001d3a, #222222); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
	color: white;  /* fallback for old browsers */
	font-weight: 900;
	}

/*FEATURES*/

.heading-rainbow, .heading-halloween, .heading-holidays {
	font-size: 1em;
	font-weight: 900;
}

.heading-rainbow {
	color: #008026;  /* fallback for old browsers */
	background: -webkit-linear-gradient(to right, #e40303, #ff8c00, #ffed00, #008026, #004dff, #750787);  /* Chrome 10-25, Safari 5.1-6 */
	background: linear-gradient(to right, #e40303, #ff8c00, #ffed00, #008026, #004dff, #750787); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.heading-halloween {
	color: #f35811;  /* fallback for old browsers */
	background: -webkit-linear-gradient(to right, #f5af19, #f35811);  /* Chrome 10-25, Safari 5.1-6 */
	background: linear-gradient(to right, #f5af19, #f35811); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

 .btn-grad {background-image: linear-gradient(to right, #fe8c00 0%, #f83600  51%, #fe8c00  100%)}
 .btn-grad {
	margin: 10px;
	padding: 15px 45px;
	text-align: center;
	text-transform: uppercase;
	transition: 0.5s;
	background-size: 200% auto;
	color: white;            
	box-shadow: 0 0 20px #eee;
	border-radius: 10px;
	display: block;
  }

.btn-grad:hover {
	background-position: right center; /* change the direction of the change here */
	color: #fff;
	text-decoration: none;
  }
 
/* item blocks (for promoting articles) */
div.el-promo-block {
	display: block;
	vertical-align: middle;
	width: 100%;
	transform: translateZ(0);
	-webkit-box-shadow: 0px 25px 75px -25px rgba(0,0,0,1);
	-moz-box-shadow: 0px 25px 75px -25px rgba(0,0,0,1);
	box-shadow: 0px 25px 75px -25px rgba(0,0,0,1);
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	transition-duration: 0.3s;
	transition-property: transform;
	animation-iteration-count: 1;
	border-radius: 0.5em;
	opacity: 0.95;
}

div.el-promo-block:hover,
div.el-promo-block:focus,
div.el-promo-block:active {
	transform: scale(1.025);
	opacity: 1;
}

div.el-promo-block a {
	text-decoration: none;
}

div.el-promo-block-top {
	height: 10em;
	max-height: 10em;
	/* background-image: url(); –> to be set individually within HTML */
	background-color: rgba(0, 0, 0, 0.25);
	background-size: cover;
	background-position: center center;
	border-top-left-radius: 0.5em;
	border-top-right-radius: 0.5em;
}

div.el-promo-block-bottom {

	height: 100%;
	border-bottom-left-radius: 0.5em;
	border-bottom-right-radius: 0.5em;
}

span.el-promo-block-title {
	font-size: 1.5em;
	font-weight: 800;
}

span.el-promo-block-subtitle {
	font-size: 1em;
	font-weight: 600;
}

/* Disqus comment counts */

a.disqus-comment-count-link, a.disqus-comment-count-link-intro {
	display: block;
	width: intrinsic;
	margin-top: 1em;
	color: white;
	font-size: 0.8em;
	font-weight: 500;
	text-decoration: none;
}

a.disqus-comment-count-link-intro {
	position: absolute;
	margin: 1em;
	bottom: 0;
	right: 0;
	font-size: 1em !important;
	text-decoration: none !important;
}

a.disqus-comment-count-link-intro:hover {
	text-decoration: none !important;
}

.disqus-comment-count {
	width: intrinsic;
	margin: 0;
	padding: 0;
	background-color: transparent;
	color: white;
}

.disqus-comment-count:before {
	display: inline-block;
	margin-right: 0.5em;
	content: ' ';
	width: 1em;
	height: 1em;
	background: url('/images/svg/icons/comment-bubble.svg');
	background-color: transparent;
	background-size: 1em 1em; 
	background-repeat: no-repeat;
	background-position: left center;
}

/* basics */

ol.elearning, ul.elearning, ol.lib-item, ul.lib-item {
	margin-bottom: 1em !important;
}

.elearning li, .exercise li {
	margin-bottom: 1em;
}

.nobullets {
	list-style: none;
	margin: 0;
}

li.nostyle {
	list-style-type: none; /* no numbers */
}

/* –––––––––––––––––––– AUDIO BUTTON –––––––––––––––––––– */

.audio {
	display: inline-block !important;
	width: 1.25em !important;
	height: 1.25em !important;
	margin: -0.25em 0;
	padding: 0;
	border: 0 !important;
	border-radius: 50% !important;
	text-decoration: none;
	background-image: url('/images/buttons/speaker.svg');
	background-size: cover;
}

.audio:hover {
	opacity: 0.8;
}

/* TEACUP 2014-2019 (c) All rights reserved. */

/* CONTENTS –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

/*
1. HTML
2. BODY
3. GLOBAL NAVIGATION MENU
4. 
5. 
6. CONTENT ELEMENTS
7. COLOURS
*/

/* .shtml elements –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

span.alert-icon /*svg icons*/ {
	display: block;
	-webkit-mask-size: cover;
	height: 8em;
	width: 8em;
	margin: 1em auto 0 auto;
	padding: 0;
	text-decoration: none;
}

/* –––––––––––––––––––– SLIDER –––––––––––––––––––– */

div.slide /*new*/ {
	min-height: 95vh;
	padding: 0 2em !important;
}

@media screen and (max-width: 1200px)
{
div.slide {padding: 0 2em !important;}
}

div.presentation /*new*/ {
	min-height: 95vh;
	padding-top: 0 !important;
	background-size: contain;
}

@media screen and (max-width: 1200px)
{
div.presentation {padding: 0 2em;}
}

span.presentation-text {
	display: block;
	width: 100%;
	height: intrinsic;
	margin: 3em auto 1em auto;
	padding: 0;
	line-height: normal;
	background: linear-gradient(to right, #e4f2ff 0%, #bddeff 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	font-size: 5em;
	font-weight: 800;
}

@media screen and (max-width: 576px)
{
span.presentation-text {font-size: 3em;}
}

span.presentation-next-button {
	display: inline-block;
	background: linear-gradient(to right, #e4f2ff 0%, #bddeff 100%);
	width: 2em;
	height: 2em;
	margin: 0;
	padding: 0.5em 0 0.5em 0.15em;
	border: 0;
	border-radius: 50%;
	font-size: 2em;
	font-weight: bold;
	text-align: center;
	text-decoration: none !important;
	color: #222222;
	line-height: 1em;
	vertical-align: middle;
	transition: 0.3s;
}

span.presentation-next-button:hover {
	opacity: 0.75;
}

@media screen and (max-width: 576px)
{
span.presentation-next-button {font-size: ;}
}

.multiply {
	color: white;
	mix-blend-mode: multiply;
	background-color: rgba(255, 255, 255, 1);
}

.screen {
	color: black;
	mix-blend-mode: screen;
	background-color: rgba(255, 255, 255, 1);
}

/* –––––––––––––––––––– SECTION CONTENT BOXES (to delete) –––––––––––––––––––– */

div.section-content-box-50 {
	position: relative;
	display: table-cell;
	margin: 0.5em;
	border: 0;
	padding: 0;
	vertical-align: top;
	overflow: visibile;
	height: 100%;
	width: 50%;
	max-width: 50%;
}

@media screen and (max-width: 384px) /* smartphone */
{
div.section-content-box-50 {
	display: block;
	width: 100%;
	}
}

/* –––––––––––––––––––– CONTENT IMAGES –––––––––––––––––––– */

div.blur {
	padding: 1em;
	background: #ffffff; /* for IE */
	background: rgba(255, 255, 255, 0.75);
}

div.blur-black-image {
	position: relative;
	padding: 0;
	background-color: #ffffff;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	overflow: visibile;
	
}

div.dark-bg /*photo overlap*/ {
	padding: 0;
	margin: 0;
	height: 100%;
	width: 100%;
	background: #000000; /* for IE */
	background: rgba(0, 0, 0, 0.5);
	transition: 0.2s;
}

div.dark-bg:hover /*photo overlap*/ {
	background: rgba(0, 0, 0, 0.4);
	transition: 0.4s;
}

div.blur-black {
	padding: 1em 0.5em 0.5em 0.5em;
	background: #000000; /* for IE */
	background: rgba(0, 0, 0, 0.5);
	transition: 0.2s;
}

div.blur-black:hover {
	background: #000000; /* for IE */
	background: rgba(0,0,0,0.4); 
}


/* –––––––––––––––––––– SECTIONS –––––––––––––––––––– */

section.light-grey {
	display: block;
	background: #f9f9f9;
	margin: 2em auto;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

/* –––––––––––––––––––– BOXES –––––––––––––––––––– */

div.box, div.box-80, div.box-75, div.box-67, div.box-50, div.box-33, div.box-25, div.box-20, div.box-20-survey, div.box-16 {
	position: relative;
	border-bottom: 0 solid transparent;
	margin: 0;
	padding: 0;
	vertical-align: top;
	overflow: visibile;
	height: 100%;
}

@media screen and (max-width: 768px) /* tablet */
{
}

@media screen and (max-width: 384px) /* smartphone */
{
}

/* 100% no columns */
div.box
{display: block; width: 100%; max-width: 100%; height: intrinsic;}

@media screen and (max-width: 768px)
{
div.box
{display: block; width: 100%; max-width: 100%;}
}

/* 80% */
div.box-80, div.box-80-100
{display: inline-block; width: 80%; max-width: 80%; height: intrinsic;}

@media screen and (max-width: 768px) 
{
div.box-80
{display: inline-block; width: 80%; max-width: 80%;}
div.box-80-100
{display: inline-block; width: 80%; max-width: 80%;}
}

@media screen and (max-width: 384px) 
{
div.box-80
{display: block; width: 100%; max-width: 100%;}
div.box-80-100
{display: block; width: 100%; max-width: 100%;}
}

/* 75% */
div.box-75
{display: inline-block; width: 75%; max-width: 75%; height: intrinsic;}

@media screen and (max-width: 768px) 
{
div.box-75
{display: block; width: 75%; max-width: 75%;}
}

/* 75% */
div.box-75-50
{display: inline-block; width: 75%; max-width: 75%; height: intrinsic;}

@media screen and (max-width: 768px) 
{
div.box-75-50
{display: block; width: 50%; max-width: 50%;}
}

/* 67% */
div.box-67
{display: inline-block; width: 67%; max-width: 67%; height: intrinsic;}

@media screen and (max-width: 768px) 
{
div.box-67
{display: block; width: 100%; max-width: 100%;}
}

/* 50% – 2 columns */
div.box-50
{display: inline-block; width: 50%; max-width: 50%; height: intrinsic;}

@media screen and (max-width: 768px) /* smartphone */
{
div.box-50
{display: inline-block; width: 50%; max-width: 50%;}
}

@media screen and (max-width: 384px) /* smartphone */
{
div.box-50
{display: block; width: 100%; max-width: 100%; text-align: center !important;}
}

/* 50% – 2 columns */
div.box-50-100
{display: inline-block; width: 50%; max-width: 50%; height: intrinsic;}

@media screen and (max-width: 768px) /* smartphone */
{
div.box-50-100
{display: inline-block; width: 100%; max-width: 100%;}
}

/* 33% – 3 columns */
div.box-33
{display: inline-block; width: 33%; max-width: 33%; height: intrinsic;}

@media screen and (max-width: 768px) 
{
div.box-33
{display: block; width: 100%; max-width: 100%;}
}

/* 25% – 4 columns */
div.box-25
{display: inline-block; width: 25%; max-width: 25%;}

@media screen and (max-width: 768px) 
{
div.box-25
{display: inline-block; width: 50%; max-width: 50%;}
}

@media screen and (max-width: 384px) 
{
div.box-25
{display: inline-block; width: 100%; max-width: 100%;}
}

/* 25% – 4 columns */
div.box-25-100
{display: inline-block; width: 25%; max-width: 25%;}

@media screen and (max-width: 768px) 
{
div.box-25
{display: inline-block; width: 100%; max-width: 100%;}
}

/* 20% – 5 columns */
div.box-20, div.box-20-100, div.box-20-survey
{display: inline-block; width: 20%; max-width: 20%; height: intrinsic;}

@media screen and (max-width: 768px) 
{
div.box-20
{display: inline-block; width: 20%; max-width: 20%;}
div.box-20-100
{display: inline-block; width: 20%; max-width: 20%;}
div.box-20-survey
{display: inline-block; width: 20%; max-width: 20%;}
}

@media screen and (max-width: 384px) 
{
div.box-20
{display: inline-block; width: 50%; max-width: 50%;}
div.box-20-100
{display: block; width: 100%; max-width: 100%;}
div.box-20-survey
{display: inline-block; width: 20%; max-width: 20%;}
}

/* 16% – 6 columns */
div.box-16
{display: inline-block; width: 16%; max-width: 16%; height: intrinsic;}

@media screen and (max-width: 384px) 
{
div.box-16
{display: block; width: 50%; max-width: 50%;}
}

.clear {
	clear: both;
}

/* –––––––––––––––––––– BOX FILLERS –––––––––––––––––––– */

div.box-filler {
	position: relative;
	display: block;
	height: 100%;
	width: auto;
	padding: 0 1em;
	margin: 0;
	padding-bottom: 1em;
	border: 0;
	overflow: hidden;
}

/* –––––––––––––––––––– BOX IMAGES –––––––––––––––––––– */

img.box-image-50 {
	padding: 0;
	margin-top: 2em;
	border: 0;
	height: 7em;
	width: auto;
}

/* –––––––––––––––––––– IMAGES –––––––––––––––––––– */

.img-wrapper /* to center an image inside a div */ {
	width: 100%;
	min-height: 175px;
	border: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

img.logo {
	display: block;
	width: 8em;
	height: 8em;
	padding: 0;
	margin: 2em auto;
	border: 0;
}

img.publisher {
	display: block;
	padding: 0;
	margin: 2em auto;
	border: 0;
	width: 80%;
}

img.section-image-main {
	display: block;
	width: 450px;
	height: auto;
	padding: 0;
	margin: 2em auto;
	border: 0;
}

@media screen and (max-width: 384px) 
{
img.section-image-main
{display: block; width: 50%; max-width: 50%;}
}

/* STICKY NAVBAR –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Style the navbar */
.navbar {
	width: 100%;
	margin: 0;
	padding: 0;
	display: block;
	overflow: hidden;
	position: sticky;
	position: -webkit-sticky;
	top: 3.5em !important;
	visibility: visible !important;
	-webkit-backdrop-filter: saturate(180%) blur(20px);
	backdrop-filter: saturate(180%) blur(20px);
	z-index: 100;
}

.navbar-container {
	max-width: 1280px;
	height: auto;
	margin: 0 auto;
	padding: 0 0 0 1em;
	font-size: 0.8em;
	overflow: auto;
	white-space: nowrap;	
}

.navbar-container {
	-ms-overflow-style: none;  /* IE 10+ */
	overflow: -moz-scrollbars-none;  /* Firefox */
}

.navbar-container::-webkit-scrollbar {
	display: none; /* Safari and Chrome */
}

/* Navbar links */
.navbar a {
	display: inline-block;
	text-align: center;
	margin: 0.5em 0.2em;
	padding: 0.5em;
	text-decoration: none;
}

a.navbarlink:link, a.navbarlink:visited {
	color: inherit;
	font-weight: 700;
	text-decoration: none !important;
}

a.navbarlink:active {
	opacity: 0.5;
	text-shadow: 0 0 0;
	text-decoration: none !important;
}

a.navbarlink.white:hover {
	text-shadow: 0 0 3px rgba(255, 255, 255, 0.5);
	text-decoration: none !important;
}

a.navbarlink:hover {
	text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
	text-decoration: none !important;
}

/* Page content */
.navbar-section {
	padding-top: 8em !important;
}

/* COLOURS (FONTS & BACKGROUNDS) –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

/*
teacup blue (very dark blue – new) – #222222 <- CURRENT
teacup blue (dark blue – previous) – #004080
teacup blue (dark blue – previous) – #222222
*/

/* FILTER DIV ELEMENTS –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

/*filterDiv display must be set to none to make undesired items disappear*/
.filterDiv {
	display: none;
}

/* The "show" class is added to the filtered elements */
.show {
	display: block;
}

/* Style the buttons */
button.lang-skill-and-element-btn {
	display: inline-block !important;
	height: 8em !important;
	width: 8em !important;
	margin: 0.75em !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 50% !important;
	text-align: center;
}

/* Add a light grey background on mouse-over */
button.lang-skill-and-element-btn:hover {
	opacity: 0.8;
}

/* Add a dark background to the active button */
button.lang-skill-and-element-btn.active, button.lang-skill-and-element-btn:focus {
	background-color: black;
}

/* –––––––––––––––––––– Filtered Elements –––––––––––––––––––– */

div.box-bg {
	background-repeat: no-repeat;
	background-size: cover; /* Resize the background image to cover the entire container */
	background-position: 50% 50%; /* Center the image */
	height: intrinsic; /* You must set a specified height */
	width: 100%;
	background-color: #cccccc; /* Used if the image is unavailable */
	position: relative;
	margin: 0 0 0 0;
	padding: 0;
}

p.notes, span.notes {
	font-size: 0.8em;
	margin: 0.5em 0;
	padding: 0;
}

/* –––––––––––––––––––– language change spans –––––––––––––––––––– */

.pl-button {
	background-image:url('http://www.langhub.eu/images/flags/pl.png');
}

.en-button {
	background-image:url('http://www.langhub.eu/images/flags/en.png');
}

.jp-button {
	background-image:url('http://www.langhub.eu/images/flags/jp.png');
}

.pl-button,
.en-button,
.jp-button {
	display: inline-block !important;
	width: 2em !important;
	height: 2em !important;
	margin: 0 auto;
	background-size: 2em 2em !important;
	font-size: 0;
	border: 1px !important;
	border-color: #000000 !important;
	border-radius: 50% !important;
}

.pl-button:hover,
.en-button:hover,
.jp-button:hover {
	opacity: 0.8 !important;
}

/* –––––––––––––––––––– translated text –––––––––––––––––––– */

span.translated-text {
	font-size: 0.9em;
	opacity: 0.75;
}

span.translated-text:before {
	content: "| ";
}

/* –––––––––––––––––––– BOX SHADOWS –––––––––––––––––––– */

.shadow {
	-moz-box-shadow: inset 0 0.7em 0.7em -0.7em #000000;
	-webkit-box-shadow: inset 0 0.7em 0.7em -0.7em #000000;
	box-shadow: inset 0 0.7em 0.7em -0.7em #000000;
}

.shadow-top {
	-moz-box-shadow: unset 0 0.7em 0.7em -0.7em #000000;
	-webkit-box-shadow: unset 0 0.7em 0.7em -0.7em #000000;
	box-shadow: unset 0 0.7em 0.7em -0.7em #000000;
}

.drop-shadow {
	-webkit-box-shadow: 0px 25px 75px -25px rgba(0,0,0,0.7);
	-moz-box-shadow: 0px 25px 75px -25px rgba(0,0,0,0.7);
	box-shadow: 0px 25px 75px -25px rgba(0,0,0,0.7);
}

/* –––––––––––––––––––– BOX RADIUS –––––––––––––––––––– */

.rounded {
	-webkit-border-radius: 0.5em !important;
	-moz-border-radius: 0.5em !important;
	border-radius: 0.5em !important;
}


/* –––––––––––––––––––– OPACITY –––––––––––––––––––– */

.opacity-off /*not available*/ {
	opacity: 0.33;
	cursor: not-allowed;
}

.off {
	opacity: 0.33;
	cursor: not-allowed;
}

/* –––––––––––––––––––– GREY BOXES –––––––––––––––––––– */

div.grey-box-filler {
	height: 100%;
	width: auto;
	color: auto;
	padding: 8px;
	margin: 4px;
	border: 1px solid;
	border-color: #e6e6e6;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	background-color: #ffffff;
	background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0, #ffffff), color-stop(1, #ebebeb));
	background-image: -o-linear-gradient(bottom, #ffffff 0%, #ebebeb 100%);
	background-image: -moz-linear-gradient(bottom, #ffffff 0%, #ebebeb 100%);
	background-image: -webkit-linear-gradient(bottom, #ffffff 0%, #ebebeb 100%);
	background-image: -ms-linear-gradient(bottom, #ffffff 0%, #ebebeb 100%);
	background-image: linear-gradient(to bottom, #ffffff 0%, #ebebeb 100%);
}

@media screen and (max-width: 768px) 
{
div.grey-box-filler
{padding: 4px; margin: 4px;}
}

div.grey-box-filler:hover {
	text-decoration: none;
	background-color:#ffffff;
	background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0, #ebebeb), color-stop(1, #ffffff));
	background-image:-o-linear-gradient(bottom, #ebebeb 0%, #ffffff 100%);
	background-image:-moz-linear-gradient(bottom, #ebebeb 0%, #ffffff 100%);
	background-image:-webkit-linear-gradient(bottom, #ebebeb 0%, #ffffff 100%);
	background-image:-ms-linear-gradient(bottom, #ebebeb 0%, #ffffff 100%);
	background-image:linear-gradient(to bottom, #ebebeb 0%, #ffffff 100%);
	}


/* –––––––––––––––––––– SQUARE & CIRCLE BOXES WITH IMAGE INSIDE –––––––––––––––––––– */

div.box-wrapper {
	position: ;
	display: block;
	background: auto;
	width: 5.3em;
	height: 5.3em;
	margin: 0 auto;
	padding: 0;
	border: 0;
	border: none;
	text-align: center;
}

div.circle-box-wrapper {
	position: ;
	display: block;
	background: auto;
	width: 5.3em;
	height: 5.3em;
	margin: 0 auto;
	padding: 0;
	border: 0;
	border-radius: 50%;
	text-align: center;
}

span.circle-box-icon-wrapper, span.box-icon-wrapper {
	display: inline-block;
	width: inherit;
	height: inherit;
	margin: 0 auto;
	padding: 25%;
}

span.circle-box-icon, span.box-icon {
	display: block;
	-webkit-mask-size: cover;
	height: 100%;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-decoration: none;
}

span.circle-box-picture-icon /*for svg pictures*/ {
	display: block;
	width: 100%;
	height: 2.7em;
	background-color: transparent;
	background-size: 2.7em;
	background-repeat: no-repeat;
	background-position: center;
}

/* –––––––––––––––––––– TOOLTIP (INFO MOUSEOVER TEXT) –––––––––––––––––––– */

/* displayed link */
a.tooltipbookmark:link, a.tooltipbookmark:visited, a.tooltipbookmark:active, a.tooltipbookmark:hover {
	color: inherit;
	text-decoration: none;
	cursor: auto;
}

/* Tooltip container */
.tooltip {
	position: relative;
	border-bottom: 0.1em dotted rgba(var(--yoca-green-rgb), 0.5); /* If you want dots under the hoverable text */
}

.tooltip:hover {
	border-bottom: 0.1em dotted rgba(var(--yoca-green-rgb), 1);
}

/* Tooltip text */
.tooltip .tooltiptext {
	visibility: hidden;
	width: inherit;
	background-color: black;
	color: #fff;
	text-align: center;
	padding: 0.25em 0.5em;
	border-radius: 4px;
	bottom: 100%;
	left: 50%;
	margin-left: -50%; /* Use half of the width (120/2 = 60), to center the tooltip */
 
	/* Position the tooltip text - see examples below! */
	position: absolute;
	z-index: 1;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip:hover .tooltiptext {
	visibility: visible;
}

.tooltip .tooltiptext::after /* tooltip arrow */ {
	content: " ";
	position: absolute;
	top: 100%; /* At the bottom of the tooltip */
	left: 0;
	margin-left: 0.25em;
	border-width: 0.5em;
	border-style: solid;
	border-color: black transparent transparent transparent;
}

/* –––––––––––––––––––– CONTACT –––––––––––––––––––– */

/* contact boxes - global */
span.phone, span.email {
	display: block;
	height: 64px;
	width: 64px;
	margin: 16px auto;
	padding: 0;
	text-decoration: none;
	background: rgb(34,34,34);
}

span.phone /* telephone number */ {
	-webkit-mask-image: url('/images/shapes/phone.svg');
	mask-image: url('/images/shapes/phone.svg');
	-webkit-mask-size: cover;
}

span.email /* email address */ {
	-webkit-mask-image: url('/images/shapes/envelope.svg');
	mask-image: url('/images/shapes/envelope.svg');
	-webkit-mask-size: cover;
}

@media screen and (max-width: 768px) 
{
span.phone, span.email
{height: 48px; width: 48px;}
}

a.contact-link:link, a.contact-link:hover {
	display: block;
	color: #222222;
	font-size: 32px;
	text-align: center;
	line-height: normal;
	padding: 16px;
	margin: 0 auto;
	text-align:center;
	text-decoration: none;
}

@media screen and (max-width: 768px) 
{
a.contact-link
{font-size: 24px;}
}

div.map /* google map */ {
	margin-bottom: 1em;
	width: 100%;
	height: auto;
	background-color: white;
	overflow: hidden;
}

span.icon-map {
	display: block;
	-webkit-mask-size: cover;
	height: 16em;
	width: 16em;
	margin: 1em auto 0 auto;
	padding: 0;
	text-decoration: none;
}


/* –––––––––––––––––––– LINKS –––––––––––––––––––– */

a:link .white, a:visited .white, a:hover .white, a:active .white {
	color: white !important;
}

a.nodecoration:link, a.nodecoration:visited, a.nodecoration:active, a.nodecoration:hover {
	color: auto;
	text-decoration: none !important;
	cursor: pointer;
}

/* –––––––––––––––––––– LINKS with SYMBOLS –––––––––––––––––––– */

/* read more link */
a.go_to:link, a.go_to:visited, a.go_to:active {
	padding: 0;
	margin: 0;
	text-decoration: none;
}

a.go_to:after {
	display: inline-block;
	position: relative;
	opacity: 0;
	padding-left: 0;
	content: "\00a0❯"; /* \00a0 — non-breaking space */
	transition: all 0.3s ease;
}

a.go_to:hover:after {
	opacity: 1;
	padding-left: 0.3em;
}

/* read more link */
a.mlink:link, a.mlink:visited, a.mlink:active {
	width: intrinsic;
	height: intrinsic;
	padding: 0;
	margin: 0;
	text-decoration: none;
}

a.mlink:after {
	display: inline-block;
	content: " ❯";
	padding-left: 0.3em;
}

a.mlink:hover {
	color: auto;
	text-decoration: underline;
	transition: 0.2s;
}

a.mlink:link .white, a.mlink:visited .white, a.mlink:active .white, a.mlink:hover .white {
	color: white !important;
}

/* external site link */
a.flink:link, a.flink:visited, a.flink:active
{width: intrinsic; height: intrinsic; padding: 0; margin: 0; text-decoration: none;}
a.flink:after
{display: inline-block; content: " ⧉"; padding-left: 0.5em;}
a.flink:hover
{color: auto; text-decoration: underline; transition: 0.2s;}

/* download link */
a.dlink:link, a.dlink:visited, a.dlink:active
{width: intrinsic; height: intrinsic; padding: 0; margin: 0; text-decoration: none;}
a.dlink:after
{display: inline-block; content: " ⤓"; padding-left: 0.5em;}
a.dlink:hover
{color: auto; text-decoration: underline; transition: 0.2s;}

a.white, a.white:hover {
	color: white !important;
}


/* pdf download link */
a.pdflink:link, a.pdflink:visited , a.pdflink:active {
background-image: url('/images/icons/pdficon_large.png');
display: ;
margin: 0;
width: intrinsic;
height: intrinsic;
background-size: 1em 1em;
background-position: 0% 50%;
background-repeat: no-repeat;
padding: 0 0 0 1.4em;
}
a.pdflink:hover
{color: #cc3333; text-decoration: underline; transition: 0.2s;}

a.auto-link:link    {text-decoration:underline;} /* no font colour */
a.auto-link:visited {text-decoration:underline;}
a.auto-link:hover   {text-decoration:none;}
a.auto-link:active  {text-decoration:none;}

span.pdflink {
background-image: url('/images/icons/pdficon_large.png');
display: inline-block;
margin: 0;
width: intrinsic;
height: intrinsic;
background-size: 18px 18px;
background-position: 0% 50%;
background-repeat: no-repeat;
padding: 0 0 0 24px;
}

a.imglink:link, a.imglink:visited , a.imglink:active {
	text-decoration: none;
	color: inherit;
}

a.imglink:hover {
	text-decoration: underline;
	color: auto;
}

/*Home Slides*/
a.slide-link:link:after, a.slide-link:visited:after, a.slide-link:active:after
{color: auto; font-size: inherit; width: intrinsic; height: intrinsic; padding: 0 0.5em 0 0; margin: 0; text-decoration: none; content: " ❯";}
a.slide-link:hover
{color: auto; text-decoration: underline; transition: 0.2s;}

/*Student's Site*/
a.ss-bookmark:link, a.ss-bookmark:visited , a.ss-bookmark:active {
	text-decoration: none;
	color: black;
	font-size: 0.8em;
	opacity: 0.5;
	margin-right: 1em;
}

a.ss-bookmark:hover {
	opacity: 1;
}

/* –––––––––––––––––––– GLOBAL FORMS –––––––––––––––––––– */

*:focus /* removes the focus outline for all elements */ {
	outline: none !important;
}

.form-group, .form-group-search /*ver.2*/ {
	background-color: #eaeffc;
	position: relative;
	margin: 0 auto;
	margin-left: 0.25em;
	margin-right: 0.25em;
	padding-top: 0.25em;
	padding-left: 2em;
	padding-right: 2em;
	padding-bottom: 0.25em;
	border: 0.1em solid var(--yoca-green);
	border-top-left-radius: 2em !important;
	border-top-right-radius: 2em !important;
	border-bottom-left-radius: 2em !important;
	border-bottom-right-radius: 2em !important;
	overflow: hidden;
	-webkit-transition: background-color 0.2s ease;
	transition: background-color 0.2s ease;
}

.form-invalid {
	background-color: #ffeeee !important;
}

.form-group-search {
	padding-left: 1em !important; /*search icon positioning*/
}

.form-group:hover, .form-group-search:hover /*ver.2*/ {
	background-color: #ffffff;
}

.form-group label, .form-group-search label /*ver2*/ {
background: transparent;
color: #222222;
text-transform: ;
font-size: 0.75em;
margin: 0;
margin-bottom: -0.5em;
padding: 0;
width: intrinsic;
display: block;
opacity: 1;
border: 0;
-webkit-transition: opacity 0.2s ease;
transition: opacity 0.2s ease;
}

.form-group input[type=text], input[type=email], input[type=password] /*ver.2*/ {
background: transparent;
color: #222222;
text-transform: ;
font-size: 1em;
margin: 0;
padding: 0;
padding-top: 0.25em;
padding-bottom: 0.25em;
width: 100%;
display: block;
opacity: 1;
border: 0;
box-shadow: 0;
-webkit-transition: opacity 0.2s ease;
transition: opacity 0.2s ease;
}

.form-group textarea /*ver.2*/ {
background: transparent;
color: #222222;
text-transform: ;
font-size: 1em;
margin: 0;
padding: 0;
padding-top: 0.25em;
padding-bottom: 0.25em;
width: 100%;
display: block;
opacity: 1;
border: 0;
-webkit-transition: opacity 0.2s ease;
transition: opacity 0.2s ease;
}

.form-group select /*ver.2*/ {
background: transparent;
color: #222222;
text-transform: ;
font-size: 1em;
color: #222222;
margin: 0;
width: intrinsic;
display: block;
opacity: 1;
border: 0;
box-shadow: 0;
-webkit-transition: opacity 0.2s ease;
transition: opacity 0.2s ease;
}

/*sumbit-buttom ver.2*/

.form-button /*ver.2 – dark button*/ {
	background: var(--yoca-green);
	position: relative;
	border: 0.1em solid var(--yoca-green);
	border-top-left-radius: 2em !important;
	border-top-right-radius: 2em !important;
	border-bottom-left-radius: 2em !important;
	border-bottom-right-radius: 2em !important;
	margin: 0 auto;
	padding-top: 0.25em;
	padding-left: 0.75em;
	padding-right: 0.75em;
	padding-bottom: 0.25em;
	overflow: hidden;
	cursor: pointer;
	-webkit-transition: background-color 0.2s ease;
	transition: background-color 0.2s ease;
}

.form-button:hover /*ver.2*/ {
background-color: rgba(var(--yoca-green-rgb), 0.9); /*dark ocean blue – #223344*/
opacity: 0.9;
}

input[type=button], input[type=submit], input[type=reset] {
background-color: transparent;
width: 100%;
border: 0;
margin: 0.25em;
padding: 0.25em;
color: white;
font-size: 1em;
font-weight: 600;
text-align: center;
text-decoration: none; 
cursor: pointer;
}

.form-group-search input {
background: transparent;
background-image: url('/images/icons/searchicon.svg');
background-position: 0 0;
background-repeat: no-repeat;
color: #222222;
font-size: 1em;
margin: 0;
padding: 0;
padding-top: 0.25em;
padding-bottom: 0.25em;
padding-left: 2em !important; /*icon:24x24*/ /*search input field positioning*/
width: 100%;
display: block;
opacity: 1;
border: 0;
box-shadow: 0;
-webkit-transition: opacity 0.2s ease;
transition: opacity 0.2s ease;
}

/*checkboxes/radios*/

/* The container */
.checkbox-container {
display: block;
position: relative;
width: ;
background-color: transparent;
margin: 1em auto;
padding-top: 0;
padding-left: 2em;
padding-right: 0.75em;
padding-bottom: 0;
border: 0;
border-radius: 0;
cursor: pointer;
-webkit-transition: background-color 0.2s ease;
transition: background-color 0.2s ease;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}

/* Hide the browser's default checkbox */
.checkbox-container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
}

/* Create a custom checkbox – span */
.checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 1.5em;
	width: 1.5em;
	background-color: rgba(var(--yoca-green-rgb), 0.1);
	border: 0.1em solid var(--yoca-green);
	border-radius: 0.25em;
}

/* Create a custom radio button */
.radiomark {
	position: absolute;
	top: 0;
	left: 0;
	height: 1.5em;
	width: 1.5em;
	background-color: rgba(var(--yoca-green-rgb), 0.1);
	border: 0.1em solid var(--yoca-green);
	border-radius: 50%;
}

/* On mouse-over, add a grey background color */
.checkbox-container:hover input ~ .checkmark, .checkbox-container:hover input ~ .radiomark {
	background-color: rgba(var(--yoca-green-rgb), 0.25);
}

/* When the checkbox is checked, add a blue background */
.checkbox-container input:checked ~ .checkmark, .checkbox-container input:checked ~ .radiomark {
	background: var(--yoca-green);
}

/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after, .radiomark:after {
	content: "";
	position: absolute;
	display: none;
}

/* Show the checkmark when checked */
.checkbox-container input:checked ~ .checkmark:after, .checkbox-container input:checked ~ .radiomark:after {
	display: block;
}

/* Style the checkmark/indicator */
.checkbox-container .checkmark:after {
	left: 0.33em;
	top: 0.15em;
	width: 0.4em;
	height: 0.7em;
	border: solid white;
	border-width: 0 0.25em 0.25em 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

/* Style the indicator (dot/circle) */
.checkbox-container .radiomark:after {
	 top: 0.33em;
	left: 0.33em;
	width: 0.67em;
	height: 0.67em;
	border-radius: 50%;
	background: white;
}

.label-question, .label-heading {
	display: block;
	width: 100%;
	font-size: 1em;
	margin: 0;
}

.label-heading {
	text-transform: uppercase;
	font-weight: bold;
	margin-top: 1em;
}







form {
	width: 100%;
	margin: 0 auto 32px auto;
	padding: 0;
	border: 0;
	background: transparent;
}


input, textarea {
	font-size: 1em;
	padding: 0;
	background: #eaeffc;
	color: #222222;
	border: 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

select {
	font-size: 1em;
	padding: 0;
	background: #eaeffc;
	color: #222222;
	border: 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	max-width: 100%;
	white-space: normal;
	word-wrap: break-word;
	vertical-align: baseline;
	line-height: normal;
}

textarea {
	display: block;
	margin: 0;
	width: 100%;
	border: 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}


fieldset {
	display: block;
	font-size: 1em;
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: auto;
	background-color: transparent;
}

legend {
	display: block;
	color: #222222;
	font-style: normal;
	font-weight: 500;
	line-height: 1em;
	font-size: 1.6em;
	text-align: left;
	margin: 0;
	padding: 0.2em 0;
}

label {
	display: inline-block;
	font-size: auto;
	margin: 0.2em 0;
	padding: 0.5em 0;
	border: 0;
	font-weight: auto;
}

/* to hide radio buttons */
.radios .radio {
	background-color: transparent;
	display: inline-block;
	width: 100%;
	height: 100%;
	border: 4px solid transparent;
	padding: 0;
	margin: 0;
	-webkit-border-radius: 0.5em;
	-moz-border-radius: 0.5em;
	border-radius: 0.5em;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.radios input[type=radio]{
	display: none;
}

.radios input[type=radio]:checked + .radio {
	background-color: #ffffff;
	border: 4px solid var(--yoca-green);
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

span.smiley-face-r1, span.smiley-face-r2, span.smiley-face-r3, span.smiley-face-r4, span.smiley-face-r5 {
	display: block;
	background-size: cover;
	height: 3em;
	width: 3em;
	margin: 0.5em auto;
	padding: 0;
	text-decoration: none;
}

span.smiley-face-r1 {
	background-image: url('/images/smiley-faces/very-unsatisfied.png');
	mask-image: url('/images/smiley-faces/very-unsatisfied.png');
}

span.smiley-face-r2 {
	background-image: url('/images/smiley-faces/unsatisfied.png');
	mask-image: url('/images/smiley-faces/unsatisfied.png');
}

span.smiley-face-r3 {
	background-image: url('/images/smiley-faces/neutral.png');
	mask-image: url('/images/smiley-faces/neutral.png');
}

span.smiley-face-r4 {
	background-image: url('/images/smiley-faces/satisfied.png');
	mask-image: url('/images/smiley-faces/satisfied.png');
}

span.smiley-face-r5 {
	background-image: url('/images/smiley-faces/very-satisfied.png');
	mask-image: url('/images/smiley-faces/very-satisfied.png');
}

/* –––––––––––––––––––– GLOBAL BUTTON –––––––––––––––––––– */

button {
	position: relative;
	display: ;
	font-size: 1em;
	font-weight: normal;
	font-style: normal;
	color: #ffffff;
	padding: 0.5em 1em;
	margin: 0 0.5em 0.5em 0;
	border: 0;
	width: intrinsic;
	-webkit-transition-duration: 0.4s; /* Safari */
	transition-duration: 0.4s;
	text-decoration: none;
	overflow: hidden;
	cursor: pointer;
	/*-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 50%;*/
	line-height: normal;
	border-top-left-radius: 1em;  /* 100px of height + 10px of border */
	border-top-right-radius: 1em;
	border-bottom-left-radius: 1em;
	border-bottom-right-radius: 1em;
}

button:hover {
	transition: all 0.2s;
	opacity: 0.8;
}

span.button {
	position: relative;
	display: inline-block;
	background: var(--yoca-green);
	border: 1px solid var(--yoca-green);
	font-size: 1em;
	font-weight: bold;
	color: #ffffff !important;
	padding: 0.5em;
	margin: 8px 0 16px 0;
	width: intrinsic;
	text-align: left;
	-webkit-transition-duration: 0.4s; /* Safari */
	transition-duration: 0.4s;
	text-decoration: none;
	overflow: hidden;
	cursor: pointer;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

span.button:hover {
	transition: all 0.4s;
	background-color: rgba(var(--yoca-green), 0.9);
	border: 1px solid var(--yoca-green);
	color: #ffffff !important;
	-moz-box-shadow: 0 0 8px #999999;
	-webkit-box-shadow: 0 0 8px #999999;
	box-shadow: 0 0 8px #999999;
}

span.button2 /* no bg */ {
	position: relative;
	display: inline-block;
	background-color: auto;
	border: 1px solid #ffffff;
	font-size: 1em;
	font-weight: bold;
	color: #ffffff;
	padding: 0.5em;
	margin: 8px 16px 16px 0;
	width: intrinsic;
	text-align: left;
	-webkit-transition-duration: 0.4s; /* Safari */
	transition-duration: 0.4s;
	text-decoration: none;
	overflow: hidden;
	cursor: pointer;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

span.button2:hover {
	background-image: url('/images/backgrounds/transparent.png'); background-size: auto auto; background-repeat: repeat; background-position: 0 0;
	color: #ffffff;
	transition: all 0.5s;
}

/* –––––––––––––––––––– FORM THANKS –––––––––––––––––––– */

div.form-thanks {
	background: transparent;
	height: auto;
	width: auto;
	text-align: center;
	font-size: 2em;
	font-weight: normal;
	padding: 2em 2em;
	margin: 1em 0;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	line-height: normal;
}

/* –––––––––––––––––––– ROTATE –––––––––––––––––––– */

.rotate {
	display: block;
	-ms-transform: rotate(270deg); /* IE 9 */
	-webkit-transform: rotate(270deg); /* Chrome, Safari, Opera */
	transform: rotate(270deg);
	white-space: nowrap;
}


/* –––––––––––––––––––– PAGE TITLE AND INTRODUCTION - to be deleted –––––––––––––––––––– */

div.content-title /* page title / to delete */
{display: block; max-width: 100%; height: auto; padding: 0.2em 0; margin: 0; font-size: 2.2em; color: #222222; font-style: normal; font-weight: 500; text-align: left; line-height: 1em;}

div.content-introduction, div.content-text /* page introduction and text / to delete */
{display: block; max-width: 100%; height: auto; margin: 0 0 16px 0; text-align: left;}


/* Highlight test */

.highlight, .bg-highlight {
	background: var(--highlight) !important;
}


img#main-image
{display: block; margin: 0 auto; padding: 10px 0; border: 0;}

/* box headings centered */
span.main-heading, span.main-heading-50, span.main-heading-33, span.main-heading-25, span.main-heading-20, span.main-heading-16, span.main-heading-label-50 {
	display: block;
	font-style: normal;
	font-weight: normal;
	text-align: center;
	margin: 0;
	padding: 0.6em 0 0.4em 0;
	line-height: normal;
}

span.main-heading {
	font-size: 1.7em;
}

span.main-heading-label-50 {
	font-size: 0.7em;
}

span.main-heading-50 {
	font-size: 1.5em;
}

span.main-heading-33 {
	font-size: 1.3em;
}

span.main-heading-25 {
	font-size: 1.2em;
}

span.main-heading-20 {
	font-size: 1em;
}

span.main-heading-16 {
	font-size: 0.8em;
}


span.sub-heading, span.sub-heading-50, span.sub-heading-33, span.sub-heading-25, span.sub-heading-20, span.sub-heading-16 {
	display: block;
	font-style: normal;
	font-weight: normal;
	text-align: center;
	margin: 0;
	padding: -0.2em 0 0.6em 0;
	line-height: normal;
}

span.sub-heading {
	font-size: 1.6em;
}

span.sub-heading-50 {
	font-size: 1.3em;
}

span.sub-heading-33 {
	font-size: 1.1em;
}

span.sub-heading-25 {
	font-size: 1em;
}

span.sub-heading-20 {
	font-size: 0.8em;
}

span.sub-heading-16 {
	font-size: 0.6em;
}


/* box text centered */
span.main-text, span.main-text-50, span.main-text-33, span.main-text-25, span.main-text-20, span.main-text-16 {
	display: block;
	width: 80%;
	height: intrinsic;
	font-style: normal;
	font-weight: 500;
	text-align: center;
	margin: 0 auto;
	padding: 0.2em 0 1em 0;
	line-height: 1.5em;
}

span.main-text {
	font-size: 1.2em;
}

span.main-text-50 {
	font-size: 1.1em;
}

span.main-text-33 {
	font-size: 1em;
}

span.main-text-25 {
	font-size: 0.9em;
}

span.main-text-20 {
	font-size: 0.8em;
}

span.main-text-16 {
	font-size: 0.8em;
}

@media screen and (max-width: 768px) 
{
span.main-text-16
{font-size: 0.6em; padding: 0.3em 0;}
}


/* –––––––––––––––––––– IMAGE BOXES FOR BACKGROUNDS –––––––––––––––––––– */

span.eyebrow {
	position: relative;
	display: block;
	font-size: 1.75em;
	font-style: normal;
	font-weight: bold;
	margin: 0;
	padding: 1em 0 0.25em 0;
	line-height: normal;
}

span.heading, span.image-box-heading {
	position: relative;
	display: block;
	font-size: 3em;
	font-style: normal;
	font-weight: 900;
	margin: 0;
	padding: 0 0 0.25em 0;
	line-height: normal;
}

span.subheading, span.image-box-subheading {
	position: relative;
	display: block;
	font-size: 2em;
	font-style: normal;
	font-weight: 700;
	margin: 0;
	padding: 0 0 0.5em 0;
	line-height: normal;
}

span.text, span.image-box-text {
	position: relative;
	display: block;
	font-size: 1.25em;
	font-style: normal;
	font-weight: normal;
	margin: 0;
	padding: 0 0 0.75em 0;
	line-height: 1.8em;
}

a.featured-link:link, a.featured-link:visited, a.featured-link:active {
	width: intrinsic;
	height: intrinsic;
	margin: 0;
	padding: 0;
	color: white;
	font-size: 1.25em;
	font-style: normal;
	font-weight: bold;
	line-height: 1.5em;
	text-decoration: none;
}

a.featured-link:after {
	display: inline-block;
	content: " ❯";
	padding-left: 0.5em;
}

a.featured-link:hover {
	color: auto;
	text-decoration: underline;
	transition: 0.2s;
}

@media screen and (max-width: 768px) 
{
span.eyebrow
{font-size: 1.3em;}
span.heading, span.image-box-heading
{font-size: 2.25em;}
span.subheading, span.image-box-subheading
{font-size: 1.5em;}
span.text, span.image-box-text
{font-size: 1em;}
a.featured-link
{font-size: 1em;}
}

span.quote {
	position: relative;
	display: block;
	font-size: 1.25em;
	font-style: italic;
	font-weight: 500;
	text-align: center;
	margin: 0 20%;
	padding: 1em 0 0.5em 0;
	line-height: 1.5em;
}

span.quote-author {
	position: relative;
	display: block;
	font-size: 1.25em;
	font-style: normal;
	font-weight: normal;
	text-align: center;
	margin: 0 20%;
	padding: 0.5em 0 1em 0;
	line-height: 1em;
}

span.image-box-date /* student's site – features */ {
	display: block;
	position: relative;
	top: -1px;
	width: intrinsic;
	font-size: 0.8em;
	font-style: normal;
	font-weight: normal;
	margin: 0;
	padding: 1em 0.5em 0.25em;
	line-height: normal;
	border: 0;
	-webkit-border-radius: 0 0 4px 4px;
	-moz-border-radius: 0 0 4px 4px;
	border-radius: 0 0 4px 4px;
	opacity: 0.8;
}

span.image-box-subheading-text {
	display: block;
	font-size: 1.4em;
	font-style: normal;
	font-weight: normal;
	margin: 0;
	padding: 0;
	line-height: normal;
	text-shadow: 0 0 1.8em black, 0 0 0.5em black;
}

div.image-box-text-filler {
	position: relative;
	display: block;
	height: auto;
	width: auto;
	padding: 1em;
	margin: 2em 0.2em 2em 0.2em;
	border: 0;
	overflow: visibile;
	-webkit-border-radius: 0.25em;
	-moz-border-radius: 0.25em;
	border-radius: 0.25em;
}

div.image-box-text-filler-mouseover:hover {
	padding: 1em;
	background: #ffffff; /* for IE */
	background: rgba(255, 255, 255, 0.85);
	cursor: default;
	-moz-box-shadow: 0 0 1.8em #000000;
	-webkit-box-shadow: 0 0 1.8em #000000;
	box-shadow: 0 0 1.8em #000000;
}

/* –––––––––––––––––––– FOOTNOTES –––––––––––––––––––– */

.footnotes {
	font-size: 0.8em;
}

ol.footnotes {
	list-style-type: decimal;
	margin: 0;
	margin-top: 2em;
	padding: 0;
	padding-left: 2em;
	overflow: hidden;
}

ol.footnotes li {
	margin: 0;
	padding: 0;
}

/* –––––––––––––––––––– ACCORDION –––––––––––––––––––– */

/* Style the buttons that are used to open and close the accordion panel */
button.accordion-btn {
	background-color: transparent;
	width: 100%;
	margin: 0;
	padding: 0 3em 0 0;
	border: 0;
	border-radius: 0;
	color: #222222;
	font-size: 1.2em;
	font-weight: 600;
	text-align: left;
	cursor: pointer;
	outline: none;
	transition: ease-in-out 0.3s;
}

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
button.accordion-btn:active, button.accordion-btn:hover {
	
}

/* icons */
button.accordion-btn:after {
	content: '❯'; /* Unicode character for "plus" sign (+) */
	font-size: 1.2em;
	color: #000000;
	float: right;
	margin: 0 -1em 0 0;
	opacity: 1;
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

button.accordion-btn.active:after {
	content: "❯"; /* Unicode character for "minus" sign (-) */
	-webkit-transform: rotate(270deg);
	-ms-transform: rotate(270deg);
	transform: rotate(270deg);
}

/* panel-blc */
div.panel-blc {
	background-color: transparent;
	max-height: 0;
	margin: 0;
	padding: 0 4em 1em 0;
	border: 0;
	overflow: hidden;
	opacity: 0;
	transition: ease-in-out 0.3s;
}

div.panel-blc.show {
	opacity: 1;
	max-height: inherit; /* Whatever you like, as long as its more than the height of the content (on all screen sizes) */
	transition: ease-in-out 0.3s;
}

div.accordion-btn-header /*to delete*/
{max-width: 100%; height: auto; background-color: #CC3333; font-size: 18px; color: #ffffff; font-style: normal; font-weight: bold; text-align: left; padding: 18px 8px; margin: 0; border: 0; 	-webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px;}

/* –––––––––––––––––––– GLOBAL IMAGES –––––––––––––––––––– */

img#banner, img#online-banner {
	display: block;
	padding: 0;
	margin: 0 0 8px 0;
	border: 0;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	max-height: 100%;
	max-width: 100%;
	}

img#language-type {
	display: inline-block;
	padding: 0;
	margin: 0 0 0 0;
	height: 4em;
	width: 4em;
	border: 1px solid #505050;
	border-radius: 50%;
}

img#flag-lang-ver {
	display: inline-block;
	padding: 0;
	margin: 0 0 0 0;
	height: 2em;
	width: 2em;
	border: 1px solid #505050;
	border-radius: 50%;
}

img#clipart {
	height: 6em;
	width: 6em;
	border: 0;
}


/* –––––––––––––––––––– MISC –––––––––––––––––––– */




img.center {
	display: block;
	margin: 0 auto;
	text-align: center;
	float: center;
}

img.left {
	display: block;
	margin: auto;
	text-align: left;
	float: left;
}

img.right {
	display: block;
	margin: auto;
	text-align: right;
	float: right;
}


/* –––––––––––––––––––– ARROWS –––––––––––––––––––– */

.arrow-left {
  width: 0;
  height: 0;
}



/* –––––––––––––––––––– SITE MAP –––––––––––––––––––– */

/* MENU LINKS */
.site-map-menu ul
{display: block; list-style-type: none; padding: 0; margin: 0; width: intrinsic; height: auto; background-color: transparent; text-align: left; font-style: normal; font-weight: normal; text-decoration: none;}
.site-map-menu li
{display: block; list-style-type: none; padding: 0 8px 0 0; margin: 0 0 0 -40px;}
.site-map-menu li a
{}

span.padlock {
	-webkit-mask-image: url('/images/shapes/padlock.svg');
	mask-image: url('/images/shapes/padlock.svg');
	-webkit-mask-size: cover;
	display: inline-block;
	height: 0.8em;
	width: 0.8em;
	margin: 0;
	padding: 0;
	text-decoration: none;
}

/* –––––––––––––––––––– ABOUT TEACUP –––––––––––––––––––– */

div#teacup-logo
{display: block; height: 256px; width: 256px; margin: 4px auto; background-image: url('/images/logos/teacup_320x320.png'); background-size: 256px 256px; background-repeat: no-repeat; background-position: 0 0;}


/* –––––––––––––––––––– ABOUT ME –––––––––––––––––––– */

div#my-photo
{padding-right: 336px; background-image: url('/images/photos/me_2_500x500.png'); background-size: 320px 320px; background-repeat: no-repeat; background-position: top right;}

@media screen and (max-width:768px) 
{
div#my-photo
{padding-right: 2px; padding-top: 320px; margin: 4px; background-size: 320px 320px;}
}

/* –––––––––––––––––––– LANGUAGE ELEMENTS AND SKILLS LABELS (SPANS) & COURSES –––––––––––––––––––– */

/* span.bg-language-elements, span.bg-grammar, span.bg-vocabulary, span.bg-pronunciation, span.bg-spelling, span.bg-punctuation, span.bg-language-skills, span.bg-listening, span.bg-speaking, span.bg-reading, span.bg-writing, span.bg-translation, courses span.bg-academic, span.bg-business, span.bg-professional */
span.label {
	/*white-space: nowrap;*/
	word-break: keep-all;
	width: intrinsic;
	height: intrinsic;
	padding: 0 0.5em;
	text-align: center;
	line-height: auto;
	font-size: 0.85em;
	font-weight: 600;
	background-color: auto;
	border-radius: 0.75em;
}

/* –––––––––––––––––––– SERVICES & ICONS –––––––––––––––––––– */

span.icon-default, span.icon-learning-type, span.icon-learning-type-stroke, span.icon-private-lessons, span.icon-private-lessons-stroke, span.icon-courses, span.icon-courses-stroke, span.icon-ict, span.icon-ict-stroke, span.icon-students, span.icon-students-stroke, span.icon-individual, span.icon-individual-stroke, span.icon-groups, span.icon-groups-stroke, span.icon-pair, span.icon-pair-stroke, span.icon-small-group, span.icon-small-group-stroke, span.icon-medium-group, span.icon-medium-group-stroke, span.icon-large-group, span.icon-large-group-stroke, span.icon-place, span.icon-place-stroke, span.icon-teacup, span.icon-teacup-stroke, span.icon-home, span.icon-home-stroke, span.icon-work, span.icon-work-stroke, span.icon-online, span.icon-online-stroke, span.icon-levels, span.icon-levels-stroke, span.icon-a0, span.icon-a0-stroke, span.icon-a1, span.icon-a1-stroke, span.icon-a1plus, span.icon-a1plus-stroke, span.icon-a2, span.icon-a2-stroke, span.icon-b1, span.icon-b1-stroke, span.icon-b1plus, span.icon-b1plus-stroke, span.icon-b2, span.icon-b2-stroke, span.icon-c1, span.icon-c1-stroke, span.icon-c2, span.icon-c2-stroke, span.icon-general-english, span.icon-general-english-stroke, span.icon-business-english, span.icon-business-english-stroke, span.icon-professional-english, span.icon-professional-english-stroke, span.icon-finance, span.icon-finance-stroke, span.icon-it, span.icon-it-stroke, span.icon-law, span.icon-law-stroke, span.icon-medicine, span.icon-medicine-stroke, span.icon-nursing, span.icon-nursing-stroke, span.icon-exams, span.icon-exams-stroke, span.icon-academic-english, span.icon-academic-english-stroke, span.icon-language-elements-and-skills, span.icon-language-elements-and-skills-stroke, span.icon-language-elements, span.icon-language-elements-stroke, span.icon-grammar, span.icon-grammar-stroke, span.icon-vocabulary, span.icon-vocabulary-stroke, span.icon-pronunciation, span.icon-pronunciation-stroke, span.icon-spelling, span.icon-spelling-stroke, span.icon-skills, span.icon-skills-stroke, span.icon-listening, span.icon-listening-stroke, span.icon-speaking, span.icon-speaking-stroke, span.icon-reading, span.icon-reading-stroke, span.icon-writing, span.icon-writing-stroke, span.icon-kids, span.icon-kids-stroke, span.icon-time, span.icon-time-stroke, span.icon-more, span.icon-more-stroke, span.icon-translations, span.icon-translations-stroke, span.icon-elt, span.icon-elt-stroke, span.icon-audit, span.icon-audit-stroke, span.icon-search, span.icon-search-stroke, span.icon-question, span.icon-question-stroke, span.icon-online-tutor, span.icon-online-tutor-stroke, span.icon-facebook, span.icon-linkedin, span.icon-skype, span.icon-facetime, span.icon-whatsapp, span.icon-viber, span.icon-phone, span.icon-phone-stroke, span.icon-email, span.icon-form, span.icon-bus, span.icon-tram, span.icon-metro, span.icon-payment, span.icon-payment-stroke, span.icon-transport, span.icon-transport-stroke, span.icon-discount, span.icon-discount-stroke, span.icon-schedule, span.icon-schedule-stroke, span.icon-apply, span.icon-apply-stroke, span.icon-materials, span.icon-materials-stroke, span.icon-links, span.icon-links-stroke {
	display: block;
	-webkit-mask-size: cover;
	height: 4em;
	max-width: 4em;
	margin: 1em auto 0 auto;
	padding: 0 0 0 0;
	text-decoration: none;
}

span.icon-learning-type {
	-webkit-mask-image: url('/images/shapes/cursor.svg');
	mask-image: url('/images/shapes/cursor.svg');
}

span.icon-learning-type-stroke {
	-webkit-mask-image: url('/images/shapes/cursor-stroke.svg');
	mask-image: url('/images/shapes/cursor-stroke.svg');
}

span.icon-private-lessons {
	-webkit-mask-image: url('/images/shapes/school-bag.svg');
	mask-image: url('/images/shapes/school-bag.svg');
}

span.icon-private-lessons-stroke {
	-webkit-mask-image: url('/images/shapes/school-bag-stroke.svg');
	mask-image: url('/images/shapes/school-bag-stroke.svg');
}

span.icon-courses {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-courses-stroke {
	-webkit-mask-image: url('/images/shapes/folder-stroke.svg');
	mask-image: url('/images/shapes/folder-stroke.svg');
}

span.icon-ict {
	-webkit-mask-image: url('/images/shapes/office-building.svg');
	mask-image: url('/images/shapes/office-building.svg');
}

span.icon-ict-stroke {
	-webkit-mask-image: url('/images/shapes/office-building-stroke.svg');
	mask-image: url('/images/shapes/office-building-stroke.svg');
}

span.icon-students {
	-webkit-mask-image: url('/images/shapes/students.svg');
	mask-image: url('/images/shapes/students.svg');
}

span.icon-students-stroke {
	-webkit-mask-image: url('/images/shapes/students-stroke.svg');
	mask-image: url('/images/shapes/students-stroke.svg');
}

span.icon-individual {
	-webkit-mask-image: url('/images/shapes/individual.svg');
	mask-image: url('/images/shapes/individual.svg');
}

span.icon-individual-stroke {
	-webkit-mask-image: url('/images/shapes/individual-stroke.svg');
	mask-image: url('/images/shapes/individual-stroke.svg');
}

span.icon-groups {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-groups-stroke {
	-webkit-mask-image: url('/images/shapes/students-plus-stroke.svg');
	mask-image: url('/images/shapes/students-plus-stroke.svg');
}

span.icon-pair {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-pair-stroke {
	-webkit-mask-image: url('/images/shapes/pair-stroke.svg');
	mask-image: url('/images/shapes/pair-stroke.svg');
}

span.icon-small-group {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-small-group-stroke {
	-webkit-mask-image: url('/images/shapes/small-group-stroke.svg');
	mask-image: url('/images/shapes/small-group-stroke.svg');
}

span.icon-medium-group {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-medium-group-stroke {
	-webkit-mask-image: url('/images/shapes/students-plus-stroke.svg');
	mask-image: url('/images/shapes/students-plus-stroke.svg');
}

span.icon-large-group {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-large-group-stroke {
	-webkit-mask-image: url('/images/shapes/students-plus-stroke.svg');
	mask-image: url('/images/shapes/students-plus-stroke.svg');
}

span.icon-place {
	-webkit-mask-image: url('/images/shapes/pin.svg');
	mask-image: url('/images/shapes/pin.svg');
}

span.icon-place-stroke {
	-webkit-mask-image: url('/images/shapes/pin-stroke.svg');
	mask-image: url('/images/shapes/pin-stroke.svg');
}

span.icon-teacup {
	-webkit-mask-image: url('/images/shapes/teacup.svg');
	mask-image: url('/images/shapes/teacup.svg');
}

span.icon-teacup-stroke {
	-webkit-mask-image: url('/images/shapes/teacup-stroke.svg');
	mask-image: url('/images/shapes/teacup-stroke.svg');
}

span.icon-home {
	-webkit-mask-image: url('/images/shapes/home.svg');
	mask-image: url('/images/shapes/home.svg');
}

span.icon-home-stroke {
	-webkit-mask-image: url('/images/shapes/home-stroke.svg');
	mask-image: url('/images/shapes/home-stroke.svg');
}

span.icon-work {
	-webkit-mask-image: url('/images/shapes/office-building.svg');
	mask-image: url('/images/shapes/office-building.svg');
}

span.icon-work-stroke {
	-webkit-mask-image: url('/images/shapes/office-building-stroke.svg');
	mask-image: url('/images/shapes/office-building-stroke.svg');
}

span.icon-online {
	-webkit-mask-image: url('/images/shapes/computer.svg');
	mask-image: url('/images/shapes/computer.svg');
}

span.icon-online-stroke {
	-webkit-mask-image: url('/images/shapes/computer-stroke.svg');
	mask-image: url('/images/shapes/computer-stroke.svg');
}

span.icon-levels {
	-webkit-mask-image: url('/images/shapes/graph.svg');
	mask-image: url('/images/shapes/graph.svg');
}

span.icon-levels-stroke {
	-webkit-mask-image: url('/images/shapes/graph-stroke.svg');
	mask-image: url('/images/shapes/graph-stroke.svg');
}

span.icon-a0 {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-a0-stroke {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-a1 {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-a1-stroke {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-a1plus {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-a1plus-stroke {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-a2 {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-a2-stroke {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-b1 {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-b1-stroke {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-b1plus {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-b1plus-stroke {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-b2 {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-b2-stroke {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-c1 {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-c1-stroke {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-c2 {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-c2-stroke {
	-webkit-mask-image: url('/images/shapes/.svg');
	mask-image: url('/images/shapes/.svg');
}

span.icon-general-english {
	-webkit-mask-image: url('/images/shapes/apple.svg');
	mask-image: url('/images/shapes/apple.svg');
}

span.icon-general-english-stroke {
	-webkit-mask-image: url('/images/shapes/apple-stroke.svg');
	mask-image: url('/images/shapes/apple-stroke.svg');
}

span.icon-business-english {
	-webkit-mask-image: url('/images/shapes/briefcase.svg');
	mask-image: url('/images/shapes/briefcase.svg');
}

span.icon-business-english-stroke {
	-webkit-mask-image: url('/images/shapes/briefcase-stroke.svg');
	mask-image: url('/images/shapes/briefcase-stroke.svg');
}

span.icon-professional-english {
	-webkit-mask-image: url('/images/shapes/gear-option.svg');
	mask-image: url('/images/shapes/gear-option.svg');
}

span.icon-professional-english-stroke {
	-webkit-mask-image: url('/images/shapes/settings-stroke.svg');
	mask-image: url('/images/shapes/settings-stroke.svg');
}

span.icon-finance {
	-webkit-mask-image: url('/images/shapes/pie-chart.svg');
	mask-image: url('/images/shapes/pie-chart.svg');
}

span.icon-finance-stroke {
	-webkit-mask-image: url('/images/shapes/pie-chart-stroke.svg');
	mask-image: url('/images/shapes/pie-chart-stroke.svg');
}

span.icon-it {
	-webkit-mask-image: url('/images/shapes/mouse.svg');
	mask-image: url('/images/shapes/mouse.svg');
}

span.icon-it-stroke {
	-webkit-mask-image: url('/images/shapes/mouse-stroke.svg');
	mask-image: url('/images/shapes/mouse-stroke.svg');
}

span.icon-law {
	-webkit-mask-image: url('/images/shapes/gravel.svg');
	mask-image: url('/images/shapes/gravel.svg');
}

span.icon-law-stroke {
	-webkit-mask-image: url('/images/shapes/gavel-stroke.svg');
	mask-image: url('/images/shapes/gavel-stroke.svg');
}

span.icon-medicine {
	-webkit-mask-image: url('/images/shapes/heart.svg');
	mask-image: url('/images/shapes/heart.svg');
}

span.icon-medicine-stroke {
	-webkit-mask-image: url('/images/shapes/heart-stroke.svg');
	mask-image: url('/images/shapes/heart-stroke.svg');
}

span.icon-nursing {
	-webkit-mask-image: url('/images/shapes/injection.svg');
	mask-image: url('/images/shapes/injection.svg');
}

span.icon-nursing-stroke {
	-webkit-mask-image: url('/images/shapes/injection-stroke.svg');
	mask-image: url('/images/shapes/injection-stroke.svg');
}

span.icon-exams {
	-webkit-mask-image: url('/images/shapes/check-box.svg');
	mask-image: url('/images/shapes/check-box.svg');
}

span.icon-exams-stroke {
	-webkit-mask-image: url('/images/shapes/paper-and-pencil-stroke.svg');
	mask-image: url('/images/shapes/paper-and-pencil-stroke.svg');
}

span.icon-academic-english {
	-webkit-mask-image: url('/images/shapes/graduation-hat.svg');
	mask-image: url('/images/shapes/graduation-hat.svg');
}

span.icon-academic-english-stroke {
	-webkit-mask-image: url('/images/shapes/graduation-hat-stroke.svg');
	mask-image: url('/images/shapes/graduation-hat-stroke.svg');
}

span.icon-language-elements-and-skills {
	-webkit-mask-image: url('/images/shapes/puzzle.svg');
	mask-image: url('/images/shapes/puzzle.svg');
}

span.icon-language-elements-and-skills-stroke {
	-webkit-mask-image: url('/images/shapes/puzzle-stroke.svg');
	mask-image: url('/images/shapes/puzzle-stroke.svg');
}

span.icon-language-elements {
	-webkit-mask-image: url('/images/shapes/puzzle-piece.svg');
	mask-image: url('/images/shapes/puzzle-piece.svg');
}

span.icon-language-elements-stroke {
	-webkit-mask-image: url('/images/shapes/puzzle-stroke.svg');
	mask-image: url('/images/shapes/puzzle-stroke.svg');
}

span.icon-grammar {
	-webkit-mask-image: url('/images/shapes/puzzle-piece.svg');
	mask-image: url('/images/shapes/puzzle-piece.svg');
}

span.icon-grammar-stroke {
	-webkit-mask-image: url('/images/shapes/puzzle-piece-stroke.svg');
	mask-image: url('/images/shapes/puzzle-piece-stroke.svg');
}

span.icon-vocabulary {
	-webkit-mask-image: url('/images/shapes/list.svg');
	mask-image: url('/images/shapes/list.svg');
}

span.icon-vocabulary-stroke {
	-webkit-mask-image: url('/images/shapes/list-stroke.svg');
	mask-image: url('/images/shapes/list-stroke.svg');
}

span.icon-pronunciation {
	-webkit-mask-image: url('/images/shapes/lips.svg');
	mask-image: url('/images/shapes/lips.svg');
}

span.icon-pronunciation-stroke {
	-webkit-mask-image: url('/images/shapes/lips-stroke.svg');
	mask-image: url('/images/shapes/lips-stroke.svg');
}

span.icon-spelling {
	-webkit-mask-image: url('/images/shapes/abc-squares.svg');
	mask-image: url('/images/shapes/abc-squares.svg');
}

span.icon-spelling-stroke {
	-webkit-mask-image: url('/images/shapes/abc-squares-stroke.svg');
	mask-image: url('/images/shapes/abc-squares-stroke.svg');
}

span.icon-skills {
	-webkit-mask-image: url('/images/shapes/target.svg');
	mask-image: url('/images/shapes/target.svg');
}

span.icon-skills-stroke {
	-webkit-mask-image: url('/images/shapes/puzzle-stroke.svg');
	mask-image: url('/images/shapes/puzzle-stroke.svg');
}

span.icon-listening {
	-webkit-mask-image: url('/images/shapes/headphones.svg');
	mask-image: url('/images/shapes/headphones.svg');
}

span.icon-listening-stroke {
	-webkit-mask-image: url('/images/shapes/headphones-stroke.svg');
	mask-image: url('/images/shapes/headphones-stroke.svg');
}

span.icon-speaking {
	-webkit-mask-image: url('/images/shapes/speech-bubble.svg');
	mask-image: url('/images/shapes/speech-bubble.svg');
}

span.icon-speaking-stroke {
	-webkit-mask-image: url('/images/shapes/speech-bubble-stroke.svg');
	mask-image: url('/images/shapes/speech-bubble-stroke.svg');
}

span.icon-reading {
	-webkit-mask-image: url('/images/shapes/book.svg');
	mask-image: url('/images/shapes/book.svg');
}

span.icon-reading-stroke {
	-webkit-mask-image: url('/images/shapes/book-stroke.svg');
	mask-image: url('/images/shapes/book-stroke.svg');
}

span.icon-writing {
	-webkit-mask-image: url('/images/shapes/pen.svg');
	mask-image: url('/images/shapes/pen.svg');
}

span.icon-writing-stroke {
	-webkit-mask-image: url('/images/shapes/pen-stroke.svg');
	mask-image: url('/images/shapes/pen-stroke.svg');
}

span.icon-kids {
	-webkit-mask-image: url('/images/shapes/star.svg');
	mask-image: url('/images/shapes/star.svg');
}

span.icon-kids-stroke {
	-webkit-mask-image: url('/images/shapes/star-stroke.svg');
	mask-image: url('/images/shapes/star-stroke.svg');
}

span.icon-time {
	-webkit-mask-image: url('/images/shapes/clock.svg');
	mask-image: url('/images/shapes/clock.svg');
}

span.icon-time-stroke {
	-webkit-mask-image: url('/images/shapes/clock-stroke.svg');
	mask-image: url('/images/shapes/clock-stroke.svg');
}

span.icon-more {
	-webkit-mask-image: url('/images/shapes/more.svg');
	mask-image: url('/images/shapes/more.svg');
}

span.icon-more-stroke {
	-webkit-mask-image: url('/images/shapes/more-stroke.svg');
	mask-image: url('/images/shapes/more-stroke.svg');
}

span.icon-translations {
	-webkit-mask-image: url('/images/shapes/file.svg');
	mask-image: url('/images/shapes/file.svg');
}

span.icon-translations-stroke {
	-webkit-mask-image: url('/images/shapes/file-stroke.svg');
	mask-image: url('/images/shapes/file-stroke.svg');
}

span.icon-elt {
	-webkit-mask-image: url('/images/shapes/teacher-and-board.svg');
	mask-image: url('/images/shapes/teacher-and-board.svg');
}

span.icon-elt-stroke {
	-webkit-mask-image: url('/images/shapes/teacher-and-board-stroke.svg');
	mask-image: url('/images/shapes/teacher-and-board-stroke.svg');
}

span.icon-audit {
	-webkit-mask-image: url('/images/shapes/presentation.svg');
	mask-image: url('/images/shapes/presentation.svg');
}

span.icon-audit-stroke {
	-webkit-mask-image: url('/images/shapes/presentation-stroke.svg');
	mask-image: url('/images/shapes/presentation-stroke.svg');
}

span.icon-search {
	-webkit-mask-image: url('/images/shapes/magnifying-glass.svg');
	mask-image: url('/images/shapes/magnifying-glass.svg');
}

span.icon-search-stroke {
	-webkit-mask-image: url('/images/shapes/magnifying-glass-stroke.svg');
	mask-image: url('/images/shapes/magnifying-glass-stroke.svg');
}

span.icon-question {
	-webkit-mask-image: url('/images/shapes/question-mark.svg');
	mask-image: url('/images/shapes/question-mark.svg');
}

span.icon-question-stroke {
	-webkit-mask-image: url('/images/shapes/question-mark-stroke.svg');
	mask-image: url('/images/shapes/question-mark-stroke.svg');
}

span.icon-online-tutor {
	-webkit-mask-image: url('/images/shapes/person-on-screen.svg');
	mask-image: url('/images/shapes/person-on-screen.svg');
}

span.icon-online-tutor-stroke {
	-webkit-mask-image: url('/images/shapes/person-on-screen-stroke.svg');
	mask-image: url('/images/shapes/person-on-screen-stroke.svg');
}

span.icon-facebook {
	-webkit-mask-image: url('/images/shapes/facebook.svg');
	mask-image: url('/images/shapes/facebook.svg');
}

span.fcebook-stroke {
	-webkit-mask-image: url('/images/shapes/facebook-stroke.svg');
	mask-image: url('/images/shapes/facebook-stroke.svg');
}

span.icon-phone {
	-webkit-mask-image: url('/images/shapes/phone.svg');
	mask-image: url('/images/shapes/phone.svg');
}

span.icon-phone-stroke {
	-webkit-mask-image: url('/images/shapes/phone-stroke.svg');
	mask-image: url('/images/shapes/phone-stroke.svg');
}

span.icon-email {
	-webkit-mask-image: url('/images/shapes/envelope.svg');
	mask-image: url('/images/shapes/envelope.svg');
}

span.icon-form {
	-webkit-mask-image: url('/images/shapes/form.svg');
	mask-image: url('/images/shapes/form.svg');
}

span.icon-linkedin {
	-webkit-mask-image: url('/images/shapes/linkedin.svg');
	mask-image: url('/images/shapes/linkedin.svg');
}

span.icon-linkedin-stroke {
	-webkit-mask-image: url('/images/shapes/linkedin-stroke.svg');
	mask-image: url('/images/shapes/linkedin-stroke.svg');
}

span.icon-skype {
	-webkit-mask-image: url('/images/shapes/skype.svg');
	mask-image: url('/images/shapes/skype.svg');
}

span.icon-facetime {
	-webkit-mask-image: url('/images/shapes/facetime.svg');
	mask-image: url('/images/shapes/facetime.svg');
}

span.icon-whatsapp {
	-webkit-mask-image: url('/images/shapes/whatsapp.svg');
	mask-image: url('/images/shapes/whatsapp.svg');
}

span.icon-viber {
	-webkit-mask-image: url('/images/shapes/viber.svg');
	mask-image: url('/images/shapes/viber.svg');
}

span.icon-bus {
	-webkit-mask-image: url('/images/shapes/bus.svg');
	mask-image: url('/images/shapes/bus.svg');
}

span.icon-tram {
	-webkit-mask-image: url('/images/shapes/tram.svg');
	mask-image: url('/images/shapes/tram.svg');
}

span.icon-metro {
	-webkit-mask-image: url('/images/shapes/metro.svg');
	mask-image: url('/images/shapes/metro.svg');
}

span.icon-payment {
	-webkit-mask-image: url('/images/shapes/cash.svg');
	mask-image: url('/images/shapes/cash.svg');
}

span.icon-payment-stroke {
	-webkit-mask-image: url('/images/shapes/cash-stroke.svg');
	mask-image: url('/images/shapes/cash-stroke.svg');
}

span.icon-transport {
	-webkit-mask-image: url('/images/shapes/car.svg');
	mask-image: url('/images/shapes/car.svg');
}

span.icon-transport-stroke {
	-webkit-mask-image: url('/images/shapes/car-stroke.svg');
	mask-image: url('/images/shapes/car-stroke.svg');
}

span.icon-discount {
	-webkit-mask-image: url('/images/shapes/offer-label.svg');
	mask-image: url('/images/shapes/offer-label.svg');
}

span.icon-discount-stroke {
	-webkit-mask-image: url('/images/shapes/offer-label-stroke.svg');
	mask-image: url('/images/shapes/offer-label-stroke.svg');
}

span.icon-schedule {
	-webkit-mask-image: url('/images/shapes/calendar.svg');
	mask-image: url('/images/shapes/calendar.svg');
}

span.icon-schedule-stroke {
	-webkit-mask-image: url('/images/shapes/calendar-stroke.svg');
	mask-image: url('/images/shapes/calendar-stroke.svg');
}

span.icon-apply {
	-webkit-mask-image: url('/images/shapes/filling-form.svg');
	mask-image: url('/images/shapes/filling-form.svg');
}

span.icon-apply-stroke {
	-webkit-mask-image: url('/images/shapes/filling-form-stroke.svg');
	mask-image: url('/images/shapes/filling-form-stroke.svg');
}

span.icon-materials {
	-webkit-mask-image: url('/images/shapes/book.svg');
	mask-image: url('/images/shapes/book.svg');
}

span.icon-materials-stroke {
	-webkit-mask-image: url('/images/shapes/book-stroke.svg');
	mask-image: url('/images/shapes/book-stroke.svg');
}

span.icon-links {
	-webkit-mask-image: url('/images/shapes/cursor.svg');
	mask-image: url('/images/shapes/cursor.svg');
}

span.icon-links-stroke {
	-webkit-mask-image: url('/images/shapes/cursor-stroke.svg');
	mask-image: url('/images/shapes/cursor-stroke.svg');
}

.picture-icon /*kids*/ {
	display: block;
	width: 100%;
	height: 5em;
	background-color: transparent;
	background-size: 5em;
	background-repeat: no-repeat;
	background-position: center;
}


/* –––––––––––––––––––– COURSES –––––––––––––––––––– */

div.course-box
{display: block; min-height: 128px; max-width: 1280px; padding: 1em; margin: 1em; color: #ffffff; border: 0; -webkit-border-radius: 32px; -moz-border-radius: 32px; border-radius: 32px;}

@media screen and (max-width: 768px) 
{
div.course-box
{padding: 32px 16px;}
}

div.general-english, div.business-english, div.professional-english, div.finance, div.it, div.academic-english, div.exams, div.language-and-skills, div.language-elements, div.grammar, div.vocabulary, div.pronunciation, div.skills, div.listening, div.speaking, div.reading, div.writing, div.kids
{}

@media screen and (max-width: 768px) 
{
div.general-english, div.business-english, div.professional-english, div.finance, div.it, div.academic-english, div.exams, div.language-and-skills, div.language-elements, div.grammar, div.vocabulary, div.pronunciation, div.skills, div.listening, div.speaking, div.reading, div.writing, div.kids
{}
}

div.general-english
{background-image: url('/images/courses/general-english-icon.png');}

div.business-english
{background-image: url('/images/courses/business-english-icon.png');}

div.professional-english
{background-image: url('/images/courses/professional-english-icon.png');}

div.finance
{background-image: url('/images/courses/finance-icon.png');}

div.it
{background-image: url('/images/courses/it-icon.png');}

div.academic-english
{background-image: url('/images/courses/academic-english-icon.png');}

div.exams
{background-image: url('/images/courses/exams-icon.png');}

div.language-and-skills
{background-image: url('/images/courses/language-and-skills-icon.png');}

div.language-elements
{background-image: url('/images/courses/language-elements-icon.png');}

div.grammar
{background-image: url('/images/courses/grammar-icon.png');}

div.vocabulary
{background-image: url('/images/courses/vocabulary-icon.png');}

div.pronunciation
{background-image: url('/images/courses/pronunciation-icon.png');}

div.skills
{background-image: url('/images/courses/skills-icon.png');}

div.listening
{background-image: url('/images/courses/listening-icon.png');}

div.speaking
{background-image: url('/images/courses/speaking-icon.png');}

div.reading
{background-image: url('/images/courses/reading-icon.png');}

div.writing
{background-image: url('/images/courses/writing-icon.png');}

div.kids
{background-image: url('/images/courses/english-for-kids-icon.png');}

span.course-title
{display: block; padding: 0; margin: 4px 0; color: #ffffff; font-size: 32px; font-weight: bold; line-height: 1em;}

@media screen and (max-width: 768px) 
{
span.course-title
{padding: 0 48px 0 0;}
}

span.course-subtitle
{display: block; padding: 0; margin: 8px 0; color: #ffffff; font-size: 24px; font-weight: normal;}

img#course-symbol
{display: block; height: 64px; margin: 4px auto; border: 0;}

img#course-icon
{display: block; height: 32px; margin: 4px auto; border: 0;}

img#course-logo
{display: block; max-width: 100%; max-height: 50vh; margin: 0 auto 1em auto; border: 0;}

@media screen and (max-width:768px) 
{
img#course-symbol
{height: 36px;}
}

table th#course-level
{vertical-align: top; font-size: 12px; font-style: normal; font-weight: bold; text-align: center;}

table td#course-level
{vertical-align: top; font-size: 12px; font-style: normal; font-weight: normal; text-align: center;}

img#course-series
{display: inline-block; border: solid 1px; border-color: #999999; margin: 4px 16px 8px 0; padding: 0; height: 128px;}

img#language-flag
{display: inline-block; border: 0; margin: 4px; padding: 0; height: 48px;}

/* –––––––––––––––––––– LEVELS –––––––––––––––––––– */

span.cefr /* ball */
{width: 2.5em; height: 2.5em; margin: 4px auto; padding: 0; text-align: center; line-height: 2.5em; font-size: 2.5em; color: #ffffff; font-weight: bold; -webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;}

@media screen and (max-width:768px) 
{
span.cefr
{width: 36px; height: 36px; font-size: 1.25em; line-height: 36px;}
}

img#cefr
{display: block; height: 64px; margin: 4px auto; border: 0;}

@media screen and (max-width:768px) 
{
img#cefr
{height: 36px;}
}

table td#cefr-category
{vertical-align: middle; padding: 4px; margin: 0; font-size: 14px; font-style: normal; font-weight: bold; text-align: center; width: 32px; height: auto; max-width: 32px; min-width: 32px; max-height: auto; min-height: auto;}

table td#cefr-level
{vertical-align: top; font-size: 12px; font-style: normal; font-weight: bold; text-align: center;}

span.bullet {
	display: block;
	margin: 0 auto;
	padding: 0;
	font-size: 2.5em;
	text-align: center;
}

/* –––––––––––––––––––– CORPORATION –––––––––––––––––––– */

img#company-logo
{display: inline-block; height: 100px; border: 0; margin: 4px 16px; padding: 0;}

img#company-logo:hover
{opacity: 0.8;}




/* –––––––––––––––––––– PRICING –––––––––––––––––––– */

span.pricing-feature-label {
	display: block;
	margin: 0.2em 0;
	font-size: 1em;
	font-weight: 600;
}

span.pricing-label {
	display: block;
	margin: 0;
	font-size: 0.6em;
	font-weight: 400;
}

span.pricing-lesson-duration {
	display: block;
	margin: 0 0 1.25em;
	font-size: 1em;
	font-weight: 400;
}

span.pricing-time {
	font-size: 1.5em !important;
	font-weight: 700 !important;
}

span.pricing-price, span.pricing-price-promo {
	display: block;
	width: fit-content;
	font-size: 1em;
	font-weight: 400;
}

span.pricing-price-amount {
	font-size: 2em !important;
	font-weight: 800 !important;
}

span.pricing-price-off, span.price-off /* crossed-out */ {
	position: relative;
	font-size: 0.8em;
	color: rgb(90, 90, 90);
	margin-bottom: 0.25em;
	width: fit-content;
}

span.pricing-price-off:after, span.price-off:after {
	content: " ";
	width: 100%;
	height: 0.2em;
	background: rgba(204,51,51,0.85);
	position: absolute;
	top: 33%;
	left: 0;
	transform: rotate(-10deg);
	z-index: 1;
}

/* –––––––––––––––––––– PRICING LABELS –––––––––––––––––––– */

span.price-label {
	display: block;
	height: auto;
	width: fit-content;
	max-width: min-content;
	border: 0.15em solid rgb(0, 150, 50);
	padding: 0.33em;
	margin: 1em auto;
	background-color: transparent;
	-webkit-border-radius: 0.25em;
	-moz-border-radius: 0.25em;
	border-radius: 0.25em;
	color: rgb(0, 150, 50);
	font-style: normal;
	font-weight: 500;
	font-size: 0.8em;
	text-align: center;
	line-height: 1.2em;
}
	
span.price-info {
	display: inline-block;
	height: auto;
	width: auto;
	border: 0 solid;
	padding: 8px 12px 8px 12px;
	margin: 1em 0.5em;
	background-color: #990033;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	color: #ffffff;
	text-align: center;
	font-size: 0.8em;
	font-style: normal;
	font-weight: bold;
	line-height: 1.2em;
}

/* –––––––––––––––––––– ONLINE –––––––––––––––––––– */

span.article-info {
	height: 1em;
	font-size: 0.8em;
}

span.verb-group /* irregular verbs */ {
	display: inline-block;
	color: #606060;
	border: 1px solid #606060;
	border-radius: 4px;
	font-weight: normal;
	padding: 0 4px;
	margin: 2px;
	font-size: 0.9em;
}

/* –––––––––––––––––––– LINKS – TYPE LABELS –––––––––––––––––––– */

span.link-type /* type of link, app */
{
	content: "";
	display: inline-block;
	width: intrinsic;
	height: intrinsic;
	text-align: center;
	padding: 5px;
	margin: 5px;
	font-size: 0.8em;
	font-weight: bold;
	color: #ffffff;
	text-decoration: none;
	background-color: #0080ff;
	background: -webkit-linear-gradient(#008cf0, #0066b2, #004080);
	background: -o-linear-gradient(#008cf0, #0066b2, #004080);
	background: -moz-linear-gradient(#008cf0, #0066b2, #004080);
	background: linear-gradient(#008cf0, #0066b2, #004080);
	border: 0px solid #0080ff;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-moz-box-shadow: inset 0 0 5px #cccccc;
	-webkit-box-shadow: inset 0 0 5px #cccccc;
	box-shadow: inset 0 0 5px #cccccc;
}

span.link-recommendation, span.label-recommendation, span.label-soon, span.label-new, span.label-updated, span.label-beta /* recommended link, app */
{
	display: inline-block;
	width: intrinsic;
	height: intrinsic;
	text-align: center;
	padding: 0.2em 0.5em;
	margin: 0;
	font-size: 50%;
	font-weight: bold;
	color: #ffffff;
	text-decoration: none;
	background-color: #cc3333;
	border: 0;
	border-radius: 0.5em;
	line-height: normal;
	vertical-align: super;
}

span.link-recommendation:after, span.label-recommendation:after /* recommended link, app */
{
	content: "RECOMMENDED";
}

span.label-soon:after /* available soon */
{
	content: "AVAILABLE SOON";
}

span.label-new:after /* new */
{
	content: "NEW";
}

span.label-updated:after /* available soon */
{
	content: "UPDATED";
}

span.label-beta:after /* beta version */
{
	content: "BETA";
}

/* –––––––––––––––––––– APPS, DICTIONARIES –––––––––––––––––––– */

img.app-logo {
	display: inline-block;
	width: 6em;
	height: 6em;
	border: 0;
	border-radius: 1em;
}

@media screen and (max-width: 768px) 
{
img.app-logo
{width: 4em; height: 4em;}
}

img#flag-dictionary {
	display: inline-block;
	height: 3em;
	width: 3em;
	margin: 2em 0.5em 0 0;
	border: 0;
}

.dic-play-button {
	display: inline-block;
	-webkit-mask-size: cover;
	height: 1.2em;
	width: 1.2em;
	margin: 0 0.5em;
	padding: 0;
	text-decoration: none;
	-webkit-mask-image: url('/images/buttons/play.svg');
	mask-image: url('/images/buttons/play.svg');
	opacity: 0.8;
	cursor: pointer;
}

.dic-play-button:hover {
	opacity: 1.0;
	cursor: pointer;
}


span.badge-app-store, span.badge-app-store-pl, span.badge-mac-app-store, span.badge-mac-app-store-pl, span.badge-podcasts, span.badge-podcasts-pl, span.badge-google-play, span.badge-google-play-pl {
	display: inline-block;
	margin: 0.4em;
	padding: 0;
	height: 40px; /*fixed*/
	background-repeat: no-repeat;
	background-position: 0 0;
	opacity: 0.8;
}

span.badge-app-store {
	background: url('/images/badges/apple/app-store.svg');
	background-size: contain; /* original: 120 x 40 px */
	width: 120px;
}

span.badge-app-store-pl {
	background: url('/images/badges/apple/app-store-pl.svg');
	background-size: contain;
	width: 120px;
}

span.badge-mac-app-store {
	background: url('/images/badges/apple/mac-app-store.svg');
	background-size: contain; /* original: 156 x 53 px */
	width: 156px;
}

span.badge-mac-app-store-pl {
	background: url('/images/badges/apple/mac-app-store-pl.svg');
	background-size: contain;
	width: 156px;
}

span.badge-podcasts {
	background: url('/images/badges/apple/apple-podcasts.svg');
	background-size: contain; /* original: 165 x 40 px */
	width: 165px;
}

span.badge-podcasts-pl {
	background: url('/images/badges/apple/apple-podcasts-pl.svg');
	background-size: contain;
	width: 165px;
}

span.badge-google-play {
	background: url('/images/badges/google/google-play.svg');
	background-size: contain; /* original: 180 x 53 px */
	width: 135px;
}

span.badge-google-play-pl {
	background: url('/images/badges/google/google-play-pl.svg');
	background-size: contain;
	width: 135px;
}

span.badge-app-store:hover, span.badge-app-store-pl:hover, span.badge-mac-app-store:hover, span.badge-mac-app-store-pl:hover, span.badge-podcasts:hover, span.badge-podcasts-pl:hover, span.badge-google-play:hover, span.badge-google-play-pl:hover {
	opacity: 1.0;
}


span.dic-cambridge, span.dic-oxford, span.dic-longman, span.dic-babla, span.dic-linguee {
	display: block;
	width: 1.5em;
	height: 1.5em;
	background-size: 1.5em 1.5em;
	background-repeat: no-repeat;
	background-position: 0 0;
}

span.dic-cambridge {
	background-image: url('/images/dictionaries/cambridge.png');
}

span.dic-oxford {
	background-image: url('/images/dictionaries/oxford.png');
}

span.dic-longman {
	background-image: url('/images/dictionaries/longman.png');
}

span.dic-babla {
	background-image: url('/images/dictionaries/babla.png');
}

span.dic-linguee {
	background-image: url('/images/dictionaries/linguee.png');
}

/* –––––––––––––––––––– TEACUP MUSIC –––––––––––––––––––– */

span.playlist-logo {
	display: block;
	margin: 0.5em auto;
	padding: 0;
	width: 6em;
	height: 6em;
	background-size: 6em 6em;
	background-repeat: no-repeat;
	background-position: 0 0;
	border: 1px solid #999999;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

span.badge-apple-music {
	display: inline-block;
	height: 36px;
	width: 101px;
	margin: 0.5em;
	padding: 0;
	background-size: 101px 36px;
	background-repeat: no-repeat;
	background-position: 0 0;
	opacity: 0.85;
}

span.badge-apple-music {
	background-image: url('/images/badges/apple-music.png');
}

span.badge-apple-music:hover {
	opacity: 1.0;
}


/* –––––––––––––––––––– APPS –––––––––––––––––––– */

span.app-logo {
	display: block;
	margin: 0.5em auto;
	padding: 0;
	width: 6em;
	height: 6em;
	background-size: 6em 6em;
	background-repeat: no-repeat;
	background-position: 0 0;
	border: 1px solid #999999;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

/* –––––––––––––––––––– PRINT –––––––––––––––––––– */

@media print
{    
	.no-print, .no-print *
	{
		display: none !important;
	}
}


/* –––––––––––––––––––– MEDIA - VIDEOS –––––––––––––––––––– */

#myVideo {
	position: relative;
	right: 0;
	bottom: 0;
	width: 100%;
	height: intrinsic;
}

.video-content {
	position: absolute;
	top: 0;
	background: rgba(0, 0, 0, 0.5);
	color: #ffffff;
	height: 100%;
	width: 100%;
	padding: 0;
}


/* –––––––––––––––––––– STEP FORM –––––––––––––––––––– */


#regForm {
  
}

.step-form input {
  padding: 10px;
  width: 100%;
  font-size: 17px;
  border: 1px solid #aaaaaa;
}

/* Mark input boxes that gets an error on validation: */
input.invalid {
  background-color: #ffdddd !important;
}

/* Hide all steps by default: */
.tab {
  display: none;
}

#prevBtn {
  background-color: #bbbbbb;
}

/* Make circles that indicate the steps of the form: */
.step {
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbbbbb;
  border: none;  
  border-radius: 50%;
  display: inline-block;
  opacity: 0.5;
}

.step.active {
  opacity: 1;
}

/* Mark the steps that are finished and valid: */
.step.finish {
  background-color: #4CAF50;
}


/* –––––––––––––––––––– Registration and login forms –––––––––––––––––––– */

.error {
  width: 92%; 
  margin: 0px auto; 
  padding: 10px; 
  border: 1px solid #a94442; 
  color: #a94442; 
  background: #f2dede; 
  border-radius: 5px; 
  text-align: left;
}
.success {
  color: #3c763d; 
  background: #dff0d8; 
  border: 1px solid #3c763d;
  margin-bottom: 20px;
}

/* –––––––––––––––––––– PHOTOS –––––––––––––––––––– */

span.tutor-photo, span.student-photo /* photo must be included within html */ {
	display: block;
	height: 9em;
	width: 9em;
	margin: 0 auto;
	background-color: white;
	background-size: 9em 9em;
	background-repeat: no-repeat;
	background-position: 0 0;
	border: none;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	outline: none;
	transition: 0.4s;
}

span.logo-image /* teacup info page */ {
	display: block;
	height: 12em;
	width: 12em;
	margin: 0 auto;
	background-color: transparent;
	background-size: 12em 12em;
	background-repeat: no-repeat;
	background-position: 0 0;
	border: none;
	/*-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;*/
	outline: none;
	transition: 0.4s;
}



/* timeline – teacup info page */

* {
  box-sizing: border-box;
}

/* The actual timeline (the vertical ruler) */
.timeline {
  position: relative;
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 4em;
  padding-bottom: 6em;
}

/* The actual timeline (the vertical ruler) */
.timeline::after {
  content: '';
  position: absolute;
  width: 6px;
  background-color: white;
  top: 0;
  bottom: 0;
  left: 50%;
  margin-left: -3px;
}

/* Container around content */
.timeline-container {
  padding: 10px 40px;
  position: relative;
  background-color: inherit;
  width: 50%;
}

/* The circles on the timeline */
.timeline-container::after {
  content: '';
  position: absolute;
  width: 25px;
  height: 25px;
  right: -17px;
  background-color: #cc3333;
  border: 4px solid white;
  top: 15px;
  border-radius: 50%;
  z-index: 1;
}

/* Place the container to the left */
.timeline-left {
  left: 0;
}

/* Place the container to the right */
.timeline-right {
  left: 50%;
}

/* Add arrows to the left container (pointing right) */
.timeline-left::before {
  content: " ";
  height: 0;
  position: absolute;
  top: 22px;
  width: 0;
  z-index: 1;
  right: 30px;
  border: medium solid white;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent white;
}

/* Add arrows to the right container (pointing left) */
.timeline-right::before {
  content: " ";
  height: 0;
  position: absolute;
  top: 22px;
  width: 0;
  z-index: 1;
  left: 30px;
  border: medium solid white;
  border-width: 10px 10px 10px 0;
  border-color: transparent white transparent transparent;
}

/* Fix the circle for containers on the right side */
.timeline-right::after {
  left: -16px;
}

/* The actual content */
.timeline-content {
  padding: 20px 30px;
  background-color: white;
  position: relative;
  border-radius: 6px;
}

/* Media queries - Responsive timeline on screens less than 600px wide */
@media screen and (max-width: 600px) {
/* Place the timelime to the left */
  .timeline::after {
	left: 31px;
  }

/* Full-width containers */
  .timeline-container {
	width: 100%;
	padding-left: 70px;
	padding-right: 25px;
  }

/* Make sure that all arrows are pointing leftwards */
  .timeline-container::before {
	left: 60px;
	border: medium solid white;
	border-width: 10px 10px 10px 0;
	border-color: transparent white transparent transparent;
  }

/* Make sure all circles are at the same spot */
  .timeline-left::after, .timeline-right::after {
	left: 15px;
  }

/* Make all right containers behave like the left ones */
  .timeline-right {
	left: 0%;
  }
}

/* presentations — lists */
span.ticked-text {
	display: block;
	width: 100%;
	margin: 0.25em 0;
	padding: 0;
	padding-top: 0.25em;
	padding-bottom: 0.25em;
	padding-left: 2.25em !important; /*icon:24x24*/
	background: transparent;
	background-image: url('/images/svg/marks/checkmark-circle.svg');
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 1.75em;
	color: #222222;
	font-size: 1.25em;
	font-style: normal;
	font-weight: 700;
	opacity: 1;
	border: 0;
	box-shadow: 0;
	-webkit-transition: opacity 0.2s ease;
	transition: opacity 0.2s ease;
}

.song-en {
	display: block;
	font-size: 1.5em;
	font-weight: bold;
	color: white;
	text-align: center;
	padding: 1em 0 2em;
}

.song-trans {
	display: block;
	font-size: 0.7em !important;
	font-weight: 500 !important;
	color: grey;
	text-align: center;
	padding-bottom: 0.5em;
}

/* VIDEOS –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

/* Style the video: 100% width and height to cover the entire window */
#myVideo {
  position: relative;
  right: 0;
  bottom: 0;
  min-width: 100%; 
  min-height: 100%;
}

/* Add some content at the bottom of the video/page */
.video-box-content {
  position: relative;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  color: #f1f1f1;
  width: 100%;
  height: 100%;
  padding: 20px;
}

/* MATERIAL ICONS (Google) –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

.material-icons {
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 1em;  /* Preferred icon size */
	display: inline-block;
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	word-wrap: normal;
	white-space: nowrap;
	direction: ltr;
	
	/* Support for all WebKit browsers. */
	-webkit-font-smoothing: antialiased;
	/* Support for Safari and Chrome. */
	text-rendering: optimizeLegibility;
	
	/* Support for Firefox. */
	-moz-osx-font-smoothing: grayscale;
	
	/* Support for IE. */
	font-feature-settings: 'liga';
}
	
/* Rules for sizing the icon. */
.material-icons.md-8 { font-size: 0.5em; }
.material-icons.md-12 { font-size: 0.75em; }
.material-icons.md-16 { font-size: 1em; }
.material-icons.md-20 { font-size: 1.25em; }
.material-icons.md-24 { font-size: 1.5em; }
.material-icons.md-32 { font-size: 2em; }
.material-icons.md-40 { font-size: 2.5em; }
.material-icons.md-48 { font-size: 3em; }

/* Rules for using icons as black on a light background. */
.material-icons.md-dark { color: rgba(0, 0, 0, 0.54); }
.material-icons.md-dark.md-inactive { color: rgba(0, 0, 0, 0.26); }

/* Rules for using icons as white on a dark background. */
.material-icons.md-light { color: rgba(255, 255, 255, 1); }
.material-icons.md-light.md-inactive { color: rgba(255, 255, 255, 0.3); }

.material-icons.md-dark { color: rgba(0, 0, 0, 0.54); }
.material-icons.md-dark.md-inactive { color: rgba(0, 0, 0, 0.26); }

.material-icons.md-light { color: rgba(255, 255, 255, 1); }
.material-icons.md-light.md-inactive { color: rgba(255, 255, 255, 0.3); }

.inline-icon {
	display: inline-flex;
	vertical-align: top;
	line-height: 1em;
}

/* Read more / read less –––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

#more {display: none;}

#dots {font-size: 2em; font-weight: bold;}