:root {
	--primary-color: #888899;
	--primary-dark-color: #777788;
	--primary-light-color: #9999aa;
	--primary-reverse-color: #ffffff;
	--primary-alpha20-color: rgba(136,136,153,.2);
	--primary-alpha50-color: rgba(136,136,153,.5);

	--secondary-color: #ff008c;
	--secondary-alpha50-color: rgba(255,0,140,.5);
	--secondary-dark-color: #cc0070;
	--secondary-light-color: #ff55bb;
	--secondary-reverse-color: #ffffff;

	--near-black-color: #111119;
	--grey-color: #555566;
	--lightgrey-color: #cccccc;
	--lightgrey-bg: #e8ecff;
	--verylight-grey-color: #f0f0f0;
	--white-color: #f7f8fc;
	--darkgrey-color: #444444;
	--line-color: var(--lightgrey-color);
	--text-color: var(--grey-color);

	--theme-a-color: #0055aa;
	--theme-b-color: #dd0055;
	--theme-a-light-color: #00ccff;
	--theme-b-light-color: #ffffff;

	--header-color: #000000;
	--header-background: none;
	--header-font: 'Roboto Flex', sans-serif;
	--text-font: 'Roboto Flex', sans-serif;
	--icons-font: 'bootstrap-icons';

	--nav-color: #000000;
	--nav-bg-color: var(--verylight-grey-color);
	--nav-root-bg-color: var(--verylight-grey-color);
	--nav-child-bg-color: var(--lightgrey-color);
	--nav-border: 0;
	--nav-lg-color:#000000;
	--nav-lg-root-bg-color: transparent;
	--nav-lg-child-bg-color: var(--verylight-grey-color);
	--nav-lg-border: 1px solid #eeeeee;
	--nav-inverse-color: #ffffff;
	--nav-inverse-bg: var(--primary-color);
	--nav-font: var(--header-font);

	--footer-color: var(--lightgrey-color);
	--footer-link-color: var(--text-color);
	--footer-background: var(--lightgrey-color);

	--speed: .3s;
	--toggle-width: 42px;
	--toggle-height: 42px;

	--bs-font-sans-serif: var(--text-font);
	--swiper-theme-color: var(--primary-color);
	--swiper-navigation-color: var(--nav-lg-root-bg-color);

	--control-border-radius: 0;
}

::selection { background: var(--primary-alpha20-color); }
::-moz-selection { background: var(--primary-alpha20-color); }
.bg-dark ::selection { background: var(--primary-reverse-alpha20-color); }
.bg-dark ::-moz-selection { background: var(--primary-reverse-alpha20-color); }

.dark :root {
	--header-color: #ffffff;
}


.ondark,
.dark .onwhite {
	display: none;
}
.onwhite,
.dark .ondark {
	display: block;
}


/**
 * SVG ICONS
 */
.si:before {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 43px;
	height: 43px;
	color: #000000;
	font-size: 32px;
}
.bg-dark .si:before {
	color: #ffffff;
}
.si.si-start,
.si.si-end {
	position: relative;
	line-height: 1.5;
}
.si.si-start:before,
.si.si-end:before {
	position: absolute;
	width: 32px;
	height: auto;
	line-height: 1.2;
}
.si.si-start {
	padding-left: 32px;
}
.si.si-end {
	padding-right: 32px;
}
.si.si-start:before {
	left: 0;
}
.si.si-end:before {
	right: 0;
}
.si-burger {
	display: inline-flex;
	width: 42px;
	height: 42px;
	background: none;
	align-items: center;
	justify-content: center;
}
.si-burger span {
	position: relative;
	display: inline-block;
	width: 23px;
	border-bottom: 2px solid var(--header-color,#000000);;
}
.si-burger span::before,
.si-burger span::after {
	content: '';
	position: absolute;
	width: 100%;
	border-bottom: 2px solid var(--header-color,#000000);;
	transform: translateY(-7px);
}
.si-burger span::after {
	transform: translateY(7px);
}
[class^="si-"]::before, [class*=" si-"]::before,
header [class^="bi-"]::before, header [class*=" bi-"]::before {
	line-height: initial;
	font-size: 24px;
}
label[class^="si-"]::before, label[class*=" si-"]::before,
label[class^="bi-"]::before, label[class*=" bi-"]::before,
.page-link [class^="bi-"]::before, .page-link [class*=" bi-"]::before {
	line-height: initial;
	font-size: 16px;
}
@media (min-width:992px) {
	.si-burger {
		display: none;
	}
}

*:focus-visible {
	outline: 0;
}
a,
a:hover,
a:focus {
	-webkit-transition-duration: var(--speed);
	-o-transition-duration: var(--speed);
	transition-duration: var(--speed);
	text-decoration: none;
	outline: 0 solid transparent;
	color: var(--theme-a-color);
	transition: color var(--speed);
}
a:hover {
	text-decoration: underline;
	color: var(--theme-b-color);
}
.dark a, .dark a:hover, .dark a:focus {
	color: var(--theme-a-light-color);
}
.dark a:hover {
	text-decoration: underline;
	color: var(--theme-b-light-color);
}
a.btn:hover,
header a:hover {
	text-decoration: none!important;
}

ul,
ol {
	margin: 0;
}

ul li,
ol li {
	list-style: none;
}

main {
	font-size: 1.125rem;
	line-height: 2;
}
main .content ul, main .content ol {
	padding: 0;
	margin-bottom: 1rem;
}
main .content ul li {
	position: relative;
	padding-left: 2rem;
}
main .content ul li::before {
	content: '»';
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	width: 18px;
	height: 18px;
}

img {
	height: auto;
	max-width: 100%;
}

i, em {
	font-variation-settings: 'slnt' -10;
}
/*
b, strong {
	font-variation-settings: 'wght' 800;
}
*/

h1 {
	display: block;
	width: 100%;
	color: var(--header-color);
	font-family: var(--header-font);
	font-weight: 100;
	font-size: calc(1.75rem + 1.5vw);
	line-height: 1;
}

.area .caption {
	display: inline-block;
	font-size: 3rem;
	background: linear-gradient(-90deg, #dd0055 0, #0055aa 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

main * + h2,
main * + .caption {
	margin: 3rem 0 2rem!important;
}

body,
main {
	margin: 0;
	padding: 0;
	color: var(--text-color);
	background-color:var(--white-color);
	font-family: var(--text-font);
}
main {
	padding: 60px 0;
}

body {
	display: flex;
	flex-flow: column nowrap;
}
body.dark,
.dark main {
	color: #ffffff;
	background-color: var(--primary-dark-color);
}

.night-light-label {
	display: block;
	margin: 0;
	height: 27px;
	width: 56px;
	flex-basis: 56px;
	border: 1px solid var(--line-color);
	border-radius: 28px;
	position: relative;
	cursor: pointer;
}
.night-light-label #night-light-checkbox {
	position: absolute;
	visibility: hidden;
}
.night-light-label .night-light-ball {
	position: absolute;
	width: 21px;
	height: 21px;
	top: 2px;
	left: 2px;
	border-radius: 50%;
	background: var(--line-color);
	z-index: 99;
	transition: 300ms;
}
.night-light-label #night-light-checkbox:checked + .night-light-ball {
	transform: translateX(28px);
}
.moon-svg, .sun-svg {
	width: 16px;
	height: 16px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.sun-svg {
	left: 5px;
	fill: #ffffff;
}
.moon-svg {
	right: 5px;
	fill: #ffffff;
}

main > .content > h2 {
	display: block;
	width: 100%;
	color: #ffffff;
	font-family: var(--header-font);
	font-weight: 200;
	font-size: calc(1.75rem + .9vw);
	line-height: 1.2;
	background: linear-gradient(90deg, #dd0055 0, #0055aa 60%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	text-align: center;
}
.dark main > .content > h2 {
	background: linear-gradient(90deg, #ff00cc 0, #00ccff 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.bg-img {
	background-image: var(--bg-m-img);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}


header {
	position: fixed;
	top: 0px; left: 0;
	right: 0;
	z-index: 1020;
	color: var(--header-color);
	background: var(--header-background);
	box-shadow: 0 7px 40px 0 rgba(0, 0, 0, 0.3);
	-webkit-backdrop-filter: blur(.6rem);
	backdrop-filter: blur(.6rem);
}
header .header-main {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	width: 100%;
}
.brand {
	margin: 0 auto;
}
.logo {
	max-height: 50px;
	width: auto;
	padding: 5px;
}

main {
}

footer {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 10;
	display: flex;
	flex-flow: row wrap;
}

nav.alter {
	display: none;
}
nav.alter.open {
	display: block;
}
nav.alter .nav-head {
	position: absolute;
	right: 0;
}

@media (min-width: 992px) {
	header {
		position: fixed;
		top: 0;
		left: 0;
		right: auto;
		bottom: 40px;
		width: 20%;
		overflow-y: auto;
		background: none;
	}
	nav.main .toggle,
	nav.alter .toggle {
		display: none;
	}
	nav.alter {
		display: block;
	}
	main {
		margin-left: 20%;
		padding-top: 0;
		padding-bottom: 40px;
	}
	.bg-img {
		background-image: var(--bg-img);
	}
}


h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6, .caption {
	font-family: var(--header-font);
}
.h1, h1 {
	font-size: calc(2rem + 1.5vw);
	margin-bottom: 1.5vw;
}
.h2, h2, main .caption, footer .caption {
	font-size: calc(1rem + 1.2vw);
}
th .caption {
	text-align: center;
	font-size: 1rem;
	font-weight: bold;
}

.text-sm {
	font-size: .875rem;
}

.toggle {
	display: flex;
	padding: 7px;
	max-width: var(--toggle-width);
}
.toggle.close {
	display: inline-flex;
	max-width: none;
}
.toggle.close .bi {
	display: flex;
}
.toggle.close .bi:before {
	font-size: 36px;
	line-height: 1;
}

.btn-link, .btn-link:hover, .btn-link:focus {
	text-decoration: none;
	color: var(--primary-color);
}
a.btn:hover, a.btn:focus {
	text-decoration: none;
}
a:hover, a:focus,
.btn-link:hover, .btn-link:focus {
	text-decoration: underline;
}
header a:hover, header a:focus {
	text-decoration: none;
}
.dropdown {
	display: inline-block;
}
.dropdown .dropdown-toggle,
.dropdown .dropdown-toggle:hover
.dropdown .dropdown-toggle:focus {
	display: flex;
	box-shadow: 0 0 0 transparent;
	background: transparent;
	padding: 8px;
	color: var(--primary-color);
}
.dropdown .dropdown-toggle::after {
	display: none;
}
header .dropdown .dropdown-toggle,
header .dropdown .dropdown-toggle:hover
header .dropdown .dropdown-toggle:focus {
	color: var(--header-color,#000000);
}
.btn-primary,
.bg-primary,
.page-item.active .page-link {
	background: var(--primary-dark-color)!important;
	border-color: var(--primary-dark-color)!important;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active, 
.btn-outline-primary:hover, .btn-outline-primary:focus, .btn-outline-primary:active {
	background-color: var(--primary-light-color)!important;
	border-color: var(--primary-light-color)!important;
}
.btn-outline-primary {
	color: var(--primary-color);
	border-color: var(--primary-color)!important;
}
.btn-check:active + .btn-outline-primary,
.btn-check:checked + .btn-outline-primary,
.btn-outline-primary.active,
.btn-outline-primary.dropdown-toggle.show,
.btn-outline-primary:active {
	background-color: var(--secondary-color);
	border-color: var(--secondary-color);
}
.btn-secondary,
.btn-outline-secondary:active,
.btn-outline-secondary:hover,
.bg-secondary {
	background-color: var(--secondary-dark-color)!important;
	border-color: var(--secondary-dark-color)!important;
}
.btn-check:active + .btn-outline-secondary,
.btn-check:checked + .btn-outline-secondary,
.btn-outline-secondary.active,
.btn-outline-secondary.dropdown-toggle.show,
.btn-outline-secondary:active {
	color: #ffffff;
	background-color: var(--secondary-dark-color)!important;
	border-color: var(--secondary-dark-color)!important;
}
.btn-floating {
	display: flex;
	align-items: center;
	height: 100%;
}
.btn-floating.text-center {
	justify-content: center;
}

main {
	padding: 45px 0 2rem;
}
.text-secondary {
	color: var(--secondary-dark-color)!important;
}

ul,
ol {
	margin: 0;
}

ul li,
ol li {
	list-style: none;
}

img {
	height: auto;
	max-width: 100%;
}

.title-content {
	text-align: center;
}
.title-content h1 {
	display: inline-block;
	width: auto;
}
.title-gradient {
	background: linear-gradient(90deg, #ffffff 0, #dd0055 25%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
h1 span { font-size: 20px; }

.title-area {
	position: relative;
	background-image: var(--bg-image);
	padding: 128px 2rem 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.title-area * {
	position: relative;
	z-index: 1;
}
.title-area::before {
	content: '';
	position: absolute;
	inset: 0 0 0 0;
	z-index: 0;
	background-color: var(--near-black-color);
	opacity: .5;
}
.title-area h1 {
	background: linear-gradient(10deg, #880066 0, #2233aa 75%);
	background: linear-gradient(90deg, #ff00cc 0, #00ccff 60%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

@media (min-width: 768px) {
	.title-area { padding: 250px 10rem 100px; }
	h1 { font-size: 36px; }
	h1 span { font-size: 24px; }
}
@media (min-width: 992px) {
	.brand-text {
		display: block;
		font-size: .825rem;
		letter-spacing: .7px;
	}

	.title-area {
		margin-top: -150px;
	}
	h1 { font-size: 48px; }
	h1 span { font-size: 36px; }
}
@media (min-width: 992px) {
	h1 { font-size: 60px; }
	h1 span { font-size: 48px; }
}

.breadcrumb-container {
	position: absolute;
	bottom: 0;
	left: 50%;
	max-width: 100%;
	margin: 0;
	border-radius: 30px;
	transform: translate(-50%, 50%);
	width: calc(100% - 2rem);
}
.breadcrumb {
	align-items: center;
	padding: 0 1rem!important;
	background: #f0f0f0;
}
.breadcrumb li {
	display: inline-flex;
}
.breadcrumb a, .breadcrumb a:hover {
	text-transform: uppercase;
	display: inline-block;
	padding: 5px;
	font-size: 12px;
}
.breadcrumb li + li a,.breadcrumb li + li a:hover {
	position: relative;
	padding-left: 28px;
}
.breadcrumb li + li a:after {
	content: '»';
	position: absolute;
	top: 50%;
	left: 10px;
	transform: translate(-50%,-50%);
}

.list-inline {
	display: inline-flex;
	list-style: none;
	margin: 0;
	padding: 0;
}
@media (min-width: 992px) {
	.breadcrumb-container {
		width: auto;
	}
	.breadcrumb {
		padding: .5rem 1rem!important;
	}
	main {
		padding: 0;
	}
	.logo {
		padding: 0;
	}
}
@media (min-width: 1200px) {
	.logo {
		margin: 1rem auto;
		width: auto;
	}
}

.bg-dark,
.bg-dark a,
.bg-dark a:hover {
	color: #ffffff;
	background-color: var(--primary-dark-color)!important;
}
.bg-dark a:hover {
	color: var(--secondary-light-color)!important;
}

.container {
	--bs-gutter-x: 1.5rem;
	--bs-gutter-y: 0;
	width: 100%;
	padding-right: calc(var(--bs-gutter-x) * .5);
	padding-left: calc(var(--bs-gutter-x) * .5);
	margin-right: auto;
	margin-left: auto;
}
.visually-hidden, .visually-hidden-focusable:not(:focus):not(:focus-within) {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0,0,0,0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/**
 * Nav-Tree
 */
.nav-root a {
	display: block;
	padding: .25rem 0;
}
.nav-root>li>a {
	font-weight: bold;
	font-size: 1.125rem;
}
.nav-root>li>ul>li>a {
	font-weight: bold;
}
@media (max-width:991px) {
	main {
		padding-top: 70px;
	}
	.nav-tree {
		position: fixed;
		top: 0; bottom: 0;
		left: 0; right: 0;
		z-index: 9900;
		width: 100vw;
		transition: all .3s;
	}
	.nav-tree.flip-left {
		height: 100vh;
		background: #ffffff;
		-webkit-transform: perspective(300px) rotateY(90deg);
		transform: perspective(300px) rotateY(90deg);
		-webkit-transform-origin: left;
		transform-origin: left;
	}
	.nav-tree.flip-left.open {
		-webkit-transform: perspective(300px) rotateY(0deg);
		transform: perspective(300px) rotateY(0deg);
		opacity: 1;
	}
	.nav-body {
		position: absolute;
		top: 50px;
		left: 0;
		right: 0;
		bottom: 0;
		overflow-y: auto;
		padding: 1rem;
	}
}
@media (min-width:992px) {
	.container {
		max-width: 960px;
	}
	header .header-main {
		flex-flow: column nowrap;
		justify-content: space-between;
	}
	.toggle-main,
	.toggle-alt {
		display: none;
	}
	.nav-tree .nav-head {
		display: none;
	}
	.nav-tree.main .nav-body {
		position: absolute;
		top: 100px;
		left: 0;
		right: 0;
		bottom: 0;
		overflow-y: auto;
		display: flex;
		padding: 0 1rem 2rem;
	}
	.nav-tree.main ul {
		padding: 0;
	}
	.nav-tree.alter {
		order: 1;
		background-color: var(--nav-bg-color);
	}
	.nav-tree.alter .nav-body {
		display: flex;
		width: 100%;
	}
	.nav-tree.alter > .container {
		display: flex;
		padding-top: .5rem;
		padding-bottom: .5rem;
	}
	.nav-tree.alter > .container > .nav-body {
		justify-content: space-between;
	}
	.nav-tree.alter > .container > .nav-body > * {
		display: inline-flex!important;
		width: auto;
	}
	.nav-tree.alter .nav-inline li + li {
		margin-left: 1rem;
	}
	.header-main {
		order: 2;
	}
	.nav-tree[class^="flip-"] .nav-root li > ul,
	.nav-tree[class*=" flip-"] .nav-root li > ul,
	.nav-tree[class^="flip-"] .nav-root li.open > ul,
	.nav-tree[class*=" flip-"] .nav-root li.open > ul {
		border: 0;
	}
	.nav-root a,
	.nav-root a:hover {
		border-radius: 6px;
		border: 1px solid transparent;
	}
	.nav-root a:hover {
		color: #ffffff;
		background: var(--theme-a-color);
	}
	.nav-root>li>a {
		padding-left: 1rem;
	}
	.nav-root>li>ul>li>a {
		padding-left: 2.5rem;
	}
	.nav-root>li>ul>li>ul>li>a {
		padding-left: 4rem;
	}
	a.active {
		border-color: var(--theme-a-color);
	}

/**
	.nav-tree.flip-left {
		display: none;
	}
	.nav-tree.flip-left {
		-webkit-transform: none;
		transform: none;
		opacity: 1;
	}
**/
}

@media (min-width:1200px) {
	.container {
		max-width: 1140px;
	}
}
@media (min-width:1400px) {
	.container {
		max-width: 1320px;
	}
}


/* Home featured */
.featured-area {
	position: relative;
	z-index: 1;
}
.featured-area .featured {
	position: relative;
	z-index: 1;
	@flex (0 0 100%);
	max-width: 100%;
	width: 100%;
	height: 480px;
}
.featured-area .featured a {
	display: inline-block;
	font-size: 3em;
	font-size: 1.5em;
	line-height: 1em;
	margin: 0;
	color: #ffffff;
}
.featured-area .featured a:hover {
	color: #dd0055;
}

@media (min-width: 768px) {
	.featured-area .featured {
		height: 400px;
	}
	.featured-area .featured a {
		font-size: 2em;
	}
}
@media (min-width: 992px) {
	.featured-area .featured {
		@flex (0 0 50%);
		max-width: 50%;
		height: 540px;
	}
	.featured-area .featured a {
		font-size: 3em;
	}
}
@media (min-width: 1200px) {
}













.box-dark h2,
.box-dark p,
.box-dark li,
.box-dark a,
.box-dark a:hover
{
	color: #ffffff;
	text-shadow: 0 0 3px rgba(0,0,0,0.9);
}
.box-dark p,
.box-dark li {
	font-size: 1.2em;
}

.bg-img .box {
	margin: 2em;
}
@media (min-width: 768px) {
	.bg-img .box {
		margin: 3em;
	}
}
@media (min-width: 992px) {
	.box-dark p,
	.box-dark li {
		font-size: 1.5em;
	}
	.bg-img .box {
		margin: 4.5em;
	}
}
@media (min-width: 1200px) {
	.bg-img .box {
		margin: 6em;
	}
}

.title-area h1 {
	font-weight: 100;
	font-size: calc(1.75rem + 1.5vw);
}

.breadcrumb {
	background: linear-gradient(90deg, #ddc8ff 0, #ccddff 100%);
	margin-bottom: 0;
}
.dark .breadcrumb {
	background: linear-gradient(90deg, #554477 0, #556688 100%);
}
.breadcrumb a, .breadcrumb a:hover {
	text-transform: uppercase;
	display: inline-block;
	padding: 5px;
	font-size: 12px;
	font-family: var(--text-font);
}
.dark .breadcrumb a, .dark .breadcrumb a:hover {
	color: var(--lightgrey-color);
}
.breadcrumb li + li a,.breadcrumb li + li a:hover {
	position: relative;
	padding-left: 28px;
}
.breadcrumb li + li a:after {
	content: '\F27B';
	position: absolute;
	top: 50%;
	left: 10px;
	transform: translate(-50%,-50%);
	font-family: var(--icons-font);
	font-size: 1.25rem;
	color: #da1dd3;
}


.site-preview {
	position: relative;
	padding-bottom: 45px;
}
.desktop .site-preview {
	max-width: 300px;
	margin-left: auto;
	margin-right: auto;
}
.site-preview a {
	display: block;
	overflow: hidden;
	position: relative;
	padding-bottom: 56.25%;
	padding-bottom: 67%;
	margin: 30px 0;
	box-shadow: 0 0 10px rgba(0,0,0,0.3);
}
.site-preview a img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	transition: 1.5s all ease-in-out;
}
.site-preview a:hover img {
	transform: translateY(-100%);
	margin-top: 56.25%;
	transition: 2s all ease-in-out;
}
.site-preview h4 {
	position: absolute;
	bottom: 0; left: 0; right: 0;
	text-align: center;
	font-weight: normal;
	font-size: inherit;
}

.jarallax {
	position: relative;
	z-index: 0;
}
.jarallax > .jarallax-img {
	position: absolute;
	object-fit: cover;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

/*========================================================
					 ATTACHED DOCUMENTS
=========================================================*/
.attached-docs ul { display: block; margin: 0; padding: 0; margin-top: 30px; list-style: none; }
.attached-docs ul li:before { display: none; }
.attached-docs a { display: block; font-size: 1.2em; }
.attached-docs a[href$='.pdf'],
.attached-docs a.icon-PDF {
	background:transparent url(//static.torus.gr/icons/filetypes/pdf/pdf-32_32.png) center left no-repeat; padding:.8em 0 .8em 48px; }
.attached-docs a[href$='.xls'],
.attached-docs a[href$='.xlsx'],
.attached-docs a[href$='.csv'],
.attached-docs a[href$='.xlw'],
.attached-docs a[href$='.xlt'] {
	background:transparent url(//static.torus.gr/icons/filetypes/xlsx_win/xlsx_win-32_32.png) center left no-repeat; padding:.8em 0 .8em 48px; }
.attached-docs a[href$='.doc'],
.attached-docs a[href$='.docx'],
.attached-docs a[href$='.rtf'],
.attached-docs a[href$='.wps'],
.attached-docs a[href$='.txt'] {
	background:transparent url(//static.torus.gr/icons/filetypes/docx_win/docx_win-32_32.png) center left no-repeat; padding:.8em 0 .8em 48px; }
.attached-docs a[href$='.pps'],
.attached-docs a[href$='.ppt'],
.attached-docs a[href$='.ppsx'],
.attached-docs a[href$='.pptx'] {
	background:transparent url(//static.torus.gr/icons/filetypes/pptx_win/pptx_win-32_32.png) center left no-repeat; padding:.8em 0 .8em 48px; }
.attached-docs a[href$='.zip'] {
	background:transparent url(//static.torus.gr/icons/filetypes/zip/zip-32_32.png) center left no-repeat; padding:.8em 0 .8em 48px; }
.attached-docs a[href$='.7z'],
.attached-docs a[href$='.rar'] {
	background:transparent url(//static.torus.gr/icons/filetypes/rar/rar-32_32.png) center left no-repeat; padding:.8em 0 .8em 48px; }
.attached-docs a[href$='.jpg'],
.attached-docs a[href$='.jpe'],
.attached-docs a[href$='.jpeg'] {
	background:transparent url(//static.torus.gr/icons/filetypes/jpeg/jpeg-32_32.png) center left no-repeat; padding:.8em 0 .8em 48px; }
.attached-docs a[href$='.gif'] {
	background:transparent url(//static.torus.gr/icons/filetypes/gif/gif-32_32.png) center left no-repeat; padding:.8em 0 .8em 48px; }
.attached-docs a[href$='.png'] {
	background:transparent url(//static.torus.gr/icons/filetypes/png/png-32_32.png) center left no-repeat; padding:.8em 0 .8em 48px; }
.attached-docs a[href$='.tif'],
.attached-docs a[href$='.tiff'] {
	background:transparent url(//static.torus.gr/icons/filetypes/tiff/tiff-32_32.png) center left no-repeat; padding:.8em 0 .8em 48px; }
/* mailto and external links
a[href^="mailto:"] {
	background:transparent url(../images/mailto.png) center left no-repeat; padding-left:20px; line-height:15px; }
 */
.attached-docs a, .attached-docs a:hover { text-decoration: none; }
.attached-docs .filetitle { font-weight: bold; }
.attached-docs .filelocation { display: block; font-weight: normal; text-style: italic; font-size: 12px; clear: both; }




/**
 * FORM
 */
.form-floating > label {
	line-height: 1.5;
}
.form-check.form-switch {
	margin-bottom: 1rem;
}
.validResult { display: none; }
.invalid-feedback {
	z-index: 10;
	position: relative;
	padding: .5rem;
	margin: 0 30px;
	width: auto;
	font-size: .875rem;
	line-height: 1;
	border: 1px solid #dc3545;
	border-radius: 1rem;
	color: #ffffff;
	background: #dc3545;
}
.invalid-feedback::before {
	content: '';
	position: absolute;
	left: 30px;
	top: 0;
	transform: translateY(-100%);
	display: block;
	border: 7px solid transparent;
	border-top: 0;
	border-bottom-color: #dc3545;
}
.control-display { padding-top: 7px; }
.form-horizontal .control-label { text-align: left; }
.well {
	background: none;
	border-radius: 0;
	border: 0;
	box-shadow: 0 0 0 transparent;
}
form .well {
	padding: 15px;
}
.form-group { margin: 15px -15px;}
.form-group { margin-bottom: 0; }
.control { margin-bottom: 15px; }
.fieldwrap::after {
	display: table;
	clear: both;
	content: '';
	height: 1px;
}


.form-group .alert-danger { background: none; border: 0; border-radius: 0; }
.form-group .alert { box-shadow: 0 0 0 transparent; font-size: .875rem; margin: 0; padding: 7px; }

.form-control,
.form-control:hover,
.form-control:focus,
.form-floating > .form-control,
.form-floating > .form-control-plaintext {
	box-shadow: 0 0 0 transparent;
	border-color: var(--primary-color);
	border-radius: 30px;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.form-control:hover,
.form-control:focus {
	box-shadow: 0 0 0 transparent;
	border-color: var(--secondary-color);
}
.form-floating > label {
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}
.form-floating > .form-control:focus ~ label {
	z-index: 5;
}
.form-check-input:checked {
	background-color: var(--secondary-color);
	border-color: var(--secondary-darker-color);
}
.form-switch .form-check-input:focus {
	box-shadow: 0 0 0 .25rem rgba(30,210,255,.25);
}

.dark .form-floating > .form-control,
.dark .form-floating > .form-control-plaintext {
	background-color: var(--primary-darkest-color)!important;
	color: #ffffff;
	border-color: var(--primary-darker-color);
}
.dark .form-check-input {
	background-color: #000000;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e");
}
.dark input:-webkit-autofill,
.dark input:-webkit-autofill:hover, 
.dark input:-webkit-autofill:focus, 
.dark input:-webkit-autofill:active {
	-webkit-text-fill-color: #ffffff !important;
	background-color: var(--primary-darkest-color)!important;
	-webkit-box-shadow: 0 0 0 30px var(--primary-darkest-color) inset !important;
}

.page-children-list .child-page,
.page-project-list .project { margin-bottom: 60px; }
.page-children-list h2,
.page-project-list h2 { text-align: center; }
.page-children-list .text-center { text-align: center; margin: 15px 0; }

/**
 * Buttons
 */
/*
.btn {
	line-height: 44px;
	line-height: 1.5;
	border-width: var(--bs-btn-border-width);
}
.btn.btn-sm {
	white-space: nowrap;
}
.btn:focus-visible {
	outline: 2px dotted var(--primary-color);
}
.btn.icon-right {
	padding-right: 56px;
}
.btn.icon-left {
	padding-left: 56px;
}
.btn.bi::before,
.btn.si::before {
	margin-right: .5rem;
}
.btn .bi,
.btn .si {
	position: absolute;
	right: 3px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-block;
	width: 40px;
	height: 40px;
	border-radius: 20px;
	font-size: 24px;
	line-height: 40px;
	text-align: center;
	transition: all var(--speed);
}
.btn:hover .bi,
.btn:hover .si {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	color: #ffffff;
	background: linear-gradient(30deg, #ff00cc 0, #00ccff 100%);
}
.btn.icon-left .bi,
.btn.icon-left .si {
	left: 3px;
	right: auto;
}

.btn-group > .btn {
	flex: 0 1 auto;
}

.btn-theme,
.btn-theme:hover {
	display: inline-flex;
	align-items: center;
	position: relative;
	z-index: 1;
	border: 4px solid transparent;
	border-radius: 3em;
}
.dark .btn-theme,
.dark .btn-theme:hover {
	background-color: var(--primary-darkest-color);
}
.btn-theme::before,
.btn-theme::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -2;
	margin: -5px;
	border-radius: inherit;
	background: linear-gradient(30deg, #ff00cc 0, #00ccff 100%);
}
.btn-theme::before {
	background-size: 150% 100%;
	background-position: 100% 0;
}
.btn-theme:hover::before {
	background-position: 0 0;
	transition: all var(--speed);
}
.btn-theme::after {
	top: 5px;
	left: 5px;
	right: 5px;
	bottom: 5px;
	z-index: -1;
	background: #ffffff;
}
.dark .btn-theme::after {
	background: var(--primary-darkest-color);
}

.btn-close:focus,
.btn-check:focus + .btn, .btn:focus {
	box-shadow: 0 0 0 0 transparent;
}

.btn-recaptcha, .btn-recaptcha:hover {
	position: relative!important;
	z-index: 4!important;
	border-radius: 30px!important;
	background-color: var(--secondary-darker-color);
	margin-left: -30px!important;
}
.btn-recaptcha img {
	max-width: none;
}
*/



/**
 * Cookies box
 */
.cb-cookiesbox {
	position: fixed;
	top: auto; left: 0; right: 0; bottom: 0;
	z-index: 1020;
	display: block;
	padding: 30px;
	margin: 0;
	color: var(--primary-reverse-color);
	background: var(--primary-darker-color);
	font-size: .875rem;
}
.cb-cookiesbox a, .cb-cookiesbox a:hover, .cb-cookiesbox a:focus {
	color: #ffffff;
	font-size: .875rem;
}
.cb-cookiesbox p {
	margin: 0;
	text-align: center;
	line-height: 1em;
}
.cb-cookiesbox .btn-close {
	position: absolute;
	top: 0;
	right: 0;
	box-sizing: border-box;
	display: inline-block;
	width: 44px;
	height: 44px;
	font-size: 32px;
	line-height: 44px;
	text-align: center;
	text-decoration: none;
	background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
	background-size: 20px 20px;
}

@media (min-width: 1199px) {
	.cb-cookiesbox {
		left: 50%; bottom: 30px; right: auto;
		transform: translateX(-50%);
		width: 500px;
	}
}



/**
 * messageBox
 */
#messageBox {
	border: 0;
	font-size: 1.3em;
}

.message-box-icon { display: inline-block; float: left; }


/**
 * Modal
 */
.modal-content {
	-webkit-border-radius: 0;
	-webkit-background-clip: padding-box;
	-moz-border-radius: 0;
	-moz-background-clip: padding;
	border-radius: 0px;
	background-clip: padding-box;
	-webkit-box-shadow: 0 0 40px rgba(0,0,0,.5);
	-moz-box-shadow: 0 0 40px rgba(0,0,0,.5);
	box-shadow: 0 0 40px rgba(0,0,0,.5);
	border: 1px solid #ffffff;
}
.modal-message .modal-dialog {
	width: 400px;
}
.modal-message .modal-body, .modal-message .modal-footer, .modal-message .modal-header, .modal-message .modal-title {
	background: 0 0;
	border: none;
	margin: 0;
	padding: 0 20px;
	text-align: center!important;
	font-size: .875rem;
}
.modal-message .btn {
	font-size: .875rem;
}
.modal-message .modal-title {
	font-size: 1rem;
	color: #999999;
	margin-bottom: 3px;
}

.modal-message .modal-body {
	color: #999999;
}
.modal-message .modal-header {
	color: #ffffff;
	margin-bottom: 10px;
	padding: 15px 0 8px;
	justify-content: center;
}
.modal-message .modal-header .fas,
.modal-message .modal-header .fab,
.modal-message .modal-header .glyphicon {
	font-size: 30px;
}

.modal-message .modal-footer {
	margin: 25px 0 20px;
	padding-bottom: 10px;
}

.modal-backdrop.in {
	zoom: 1;
	filter: alpha(opacity=40);
	-webkit-opacity: .10;
	-moz-opacity: .40;
	opacity: .40;
}
.modal-backdrop {
	background-color: #000000;
}
.modal-message.modal-success .modal-header {
	color: #44CCA0;
	border-bottom: 3px solid #44CCA0;
}

.modal-message.modal-info .modal-header {
	color: #1FA9FF;
	border-bottom: 3px solid #1FA9FF;
}

.modal-message.modal-danger .modal-header {
	color: #FF0000;
	border-bottom: 3px solid #FF0000;
}

.modal-message.modal-warning .modal-header {
	color: #EFB03B;
	border-bottom: 3px solid #EFB03B;
}

.dark .modal {
	--bs-modal-bg: var(--primary-darker-color);
}
.dark .modal-content {
	border-color: var(--primary-darkest-color);
}


label {
	line-height: 1;
	font-size: 16px;
	text-align: left;
}
#acceptProcessingWrap label, #acceptEmailContactWrap label {
	font-size: .875rem;
}
#modal .parsley-errors-list.filled {
	order: 3;
}

form .btn-group {
	width: 100%;
	justify-content: center;
}

/*
 * footer
 */
.footer-cover {
	porision: relative;
	z-index: 1;
	pointer-events: none;
}
footer {
	clear: both;
	background-color: var(--footer-background);
	padding: .5rem 1rem;
}


footer a,
footer a:hover {
	color: #ffffff;
}

footer a:hover {
	color: #dd0055;
	text-decoration: none;
}

.signature {
}
.signature a, .signature a:hover, .signature a:focus {
	display: inline-block;
	padding: 12px 0 0;
	font-family: verdana, arial, helvetica, sans-serif;
	font-size: 10px;
	font-weight: bold;
	color: #888888;
	text-decoration: none;
	transition: all .5s;
}
.signature a:hover, .signature a:focus {
	color: #00aaff;
}

hr {
	height: 4px;
	border-radius: 2px;
	border: 0;
	background: linear-gradient(90deg, #ff00cc 0, #00ccff 60%);
	margin: 1rem 0;
	opacity: 1;
}

nav.children {
	margin: 2rem 0;
	padding: 0 .75rem;
}
nav.children a {
	display: block;
	padding: .5rem 0;
	line-height: 1.2;
}
nav.side-nav {
	display: flex;
	flex-flow: column nowrap;
	font-size: .875rem;
}
nav.side-nav > a {
	display: block;
	padding: .25rem 0;
}
nav.side-nav > a.nav2 {
	font-weight: bold;
}
nav.side-nav > a.nav3 {
	padding-left: 1.5rem;
}
@media (min-width:768px) {
	nav.children {
		padding: 0 1.5rem;
	}
	nav.side-nav {
		position: sticky;
		top: 50px;
	}
}