@charset "utf-8";

:root {
	--prim: hsl(230deg 85% 62%);
	--prim_hsl: 230deg 85% 62%;
	--prim100: hsl(230deg 40% 13%);
	--prim200: hsl(230deg 48% 38%);
	--prim400: hsl(230deg 55% 55%);	
	--prim600: hsl(230deg 95% 65%);
	--prim800: hsl(230deg 100% 80%);
	
	--scnd: #f14b93;
	--scnd400: #db4a89;
	
	--active: #a1faff;
	--fail: var(--scnd);
	--success: #2abca1;
	--success: #00b392;
	--orange: #ffbc00;
	
	--font: #272935;
	--gray: hsl(230deg 21% 95%);
	--gray: hsl(230deg 28% 96%);
	--graylight: hsl(230deg 15% 97%);
	
	--b: #e5e5e5;
	--br: 2rem;
	
	--m: 80px;
	--n: 100px;
	
	--hmain: 85px;
	--hbar: 51px;

	--overlap: 4.8rem;
	
	--box: 700px;
	--box_small: 460px;
	--box_large: 1000px;
	
	--hic_width: 19px;
	--hic_height: 10px;
	--hic_bar_heith: 2px;
	--hic_bar_nth2: inherit;
	--hic_bar_br: 1px;

	--ds_light: 0px 5px 18px hsl(230deg 20% 30% / 5%);
	--ds_medium: 0px 6px 22px hsl(230deg 20% 30% / 6%);
	--ds_medium: 0px 3px 11px hsl(230deg 20% 30% / 5%);
	--ds_hl: 0px 5px 26px hsl(230deg 20% 30% / 10%);
	--ds_strong: 0px 10px 35px rgb(0 0 0 / 20%);
	
	--gradient_prim: linear-gradient(90deg, var(--prim400), var(--prim600));
	--gradient_purple: linear-gradient(90deg, var(--prim400), #7550fb);
	--gradient_turquoise: linear-gradient(90deg, var(--prim400), #4c93d1);
}

html {
	font-size: 10px;
	font-size: 62.5%; /* 10px */
}
body {
	color: var(--font);
	margin: 0;
	padding: 0;
	font-family: 'Euclid Circular B', sans-serif;
	font-weight: 400;
	font-size: 100%;
	font-style: normal;
	overflow-y: scroll;
	letter-spacing: 0;
	-webkit-tap-highlight-color: transparent;
}
body.noscroll {
    position: fixed;
    width: 100%;
}

/* BASIC */
header, .header_spacer {
	height: var(--hmain);
}
.start.headerscroll header {
	height: calc(var(--hmain) * 0.75);
}
body:not(.start).headerscroll header {
	opacity: 0;
}
body:not(.start) .header_spacer {
	position: relative;
	z-index: 1;
	background-color: white;
}
#hic_mum {
	transition: 0.25s;
}
body {
	background-color: white;
}
/* /BASIC */

::-moz-selection { background: var(--scnd); background: #404b83; color: #FFFFFF; }
::selection { background: var(--scnd); background: #404b83; color: #FFFFFF; }
a,
a:visited,
a:active {
	text-decoration: inherit;
	color: inherit;
}
a:hover {
	text-decoration: underline;
	color: inherit;
}
a.noline:hover {
	text-decoration: none;
}
.r {
	font-weight: 400 !important;
}
.m {
	font-weight: 500 !important;
}
b, .bold, strong, .strong {
	font-weight: 600 !important;
}
img {
	max-width: 100%;
	height: auto;
}
img.full {
	width: 100%;
}
.sheet img {
	display: inline-block;
}
.sheet h1, .sheet h2 {
	text-align: left;
}
.sheet span {
    font-size: 1em !important;
}
.block {
	display: block;
}
.fixed {
	position: fixed;
}
body.fixed {
	width: 100%;
}
h1, h2, h3, h4, h5 {
	padding: 0;
	position:relative;
	float: left;
	width: 100%;
}
h1 {
	font-size: 4.75rem;
	font-weight: 500;
	letter-spacing: -0.03em;
	line-height: 1.3em;
	margin: 0 0 1em 0;
	word-wrap: break-word;
}
h1.slim {
	font-size: 6rem;
	font-weight: 400;
}
h2, h1.small {
	font-size: 2.6rem;
	font-weight: 500;
	letter-spacing: -0.025em;
	line-height: 1.2em;
	margin: 0 0 1em 0;
}
h2 {
	margin-top: 1.8em;
}
h2.small {
    font-size: 1.8rem;
    margin-bottom: 3em;
}
h1 + h2 {
	margin-top: -0.75em;
}
h1 + h2.small {
	margin-top: -1.5em;
}
h2:first-child {
	margin-top: 0;
}
h3 {
	font-size: 2rem;
	font-weight: 500;
	letter-spacing: -0.02em;
	line-height: 1.1em;
	margin: 0 0 1em 0;
}
h4 {
	font-size: 1.8rem;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.0em;
	margin: 0 0 0.75em 0;
}
h5 {
	font-size: 1.6rem;
    font-weight: 600;
	letter-spacing: 0;
	line-height: 0.9em;
    margin: 0 0 0.75em 0;
}
p, ul, ol {
	font-size: 1.5rem;
	margin: 0 0 0.85em 0;
	font-weight: 400;
	line-height: 1.8em;
	letter-spacing: 0;
	padding-left: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.sheet p, .sheet ul, .sheet ol {
	float: left;
}
p:last-child, ul:last-child, ol:last-child {
	margin-bottom: 0;
}
p + h2, ul + h2, ol + h2 {
	margin-top: 1.25em;
}
p + h3, ul + h3, ol + h3 {
	margin-top: 1.5em;
}
h2 + p, h2 + ul, h2 + ol {
    margin-top: -0.35em;
}
ul {
	list-style-type: none;
}
ol {
	list-style-position: inside;
}
.sheet ul li {
	padding-left: 1.6em;
}
.sheet ul li:before {
    content: "•";
    display: inline-block;
    position: absolute;
    margin-left: -1.6em;
    color: var(--prim);
}
.nobr {
	white-space: nowrap;
}
.wrap {
	position: relative;
	top: 0;
	left: 0;
	float: left;
	width: 100%;
	min-height: 100vh;
}
.container {
	position: relative;
	display: table;
	display: flow-root;
	margin: 0 auto;
	width: 100%;
	padding: 0;
}
main {
	background-color: var(--graylight);
	min-height: max(600px, calc(100vh - var(--hmain)));
}
main:after {
    content: "";
    float: left;
    width: 100%;
	pointer-events: none;
    height: var(--br);
}
main.signin_container:after {
	display: none;
}
.start main, body.prim_bg main {
	background-color: transparent;
}
.start .header_spacer {
	display: none;
}
section, .section, .set {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	float: left;	
	width: 100%;
	margin: 0;
}
.padd_leri {
	padding-left: var(--m);
	padding-right: var(--m);
}
.padd_tobo {
	padding-top: var(--n);
	padding-bottom: var(--n);
}
.padd_to {
	padding-top: var(--n);
}
.padd_bo {
	padding-bottom: var(--n);
}
.padd_nobo {
	padding-bottom: 0 !important;
}
.sticky {
	top: 0;
	position: -webkit-sticky;
	position: sticky;
}
header {
	position: fixed;
	width: inherit;
	z-index: 9999;
	top: 0 !important;
	transition: height 0.25s, opacity 0.6s;
    -webkit-animation: move 1s;
            animation: move 1s;
}
@-webkit-keyframes move {
    0%   { opacity: 0; }
	60%  { opacity: 0; }
    100% { opacity: 1; }
}
@keyframes move {
    0%   { opacity: 0; }
	60%  { opacity: 0; }
    100% { opacity: 1; }
}
body:not(.start) header {
	position: absolute;
	background-color: white;
}
.white {
	color: #FFFFFF !important;
}
.prim {
	color: var(--prim) !important;
}
.prim_bg {
	background-color: var(--prim) !important;
}
.prim400 {
	color: var(--prim400) !important;
}
.scnd {
	color: var(--scnd) !important;
}
.logo, .logo_svg  {
	display: block;
	position: relative;
	float: left;
	width: 66px;
	height: auto;
}
.logo_main {
	fill: var(--prim);
}
.start.prim_bg header .logo_main {
	fill: white;
}
.logo_sup {
	fill: var(--scnd);
}
.logo:hover .logo_main {
	fill: var(--scnd) !important;
}
.logo_gradient {
	opacity: 0.6;
	fill: url(#logo_gradient);
}
.watermark {
	opacity: 0.04;
}
.watermark .logo_svg {
	width: 100%;
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}
.watermark .logo_main {
	fill: white;
}
.blob {
	position: absolute;
	fill: #000000;
	-webkit-animation-iteration-count: infinite;
			animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
            animation-direction: alternate;
    -webkit-animation-name: blob;
            animation-name: blob;
}
@-webkit-keyframes blob {
    to { -webkit-transform: translateX(-50%); transform: translateX(-50%); }
}
@keyframes blob {
    to { -webkit-transform: translateX(-50%); transform: translateX(-50%); }
}
#hic_mum {
	display: none;
	position: relative;
	height: var(--hic_height);
	cursor: pointer;
}
#hic_mum:after {
    content: "";
    position: absolute;
    top: calc((var(--hic_width) * -0.35) - 10px);
	bottom: calc((var(--hic_width) * -0.35) - 10px);
    left: -15px;
	right: -15px;
}
#hic_mum, .hic_hamburger_bar {
	width: var(--hic_width);
}
.hic_hamburger_bar {
	position: absolute;
	height: var(--hic_bar_heith);
	border-radius: var(--hic_bar_br);
	margin-top: calc(var(--hic_bar_heith) / -2);
	background-color: var(--font);
	transition: 0.3s;
}
.hic_hamburger_bar:nth-child(1) {
	top: 0;
}
.hic_hamburger_bar:nth-child(2) {
	top: 50%;
	display: var(--hic_bar_nth2);
}
.hic_hamburger_bar:nth-child(3) {
	top: var(--hic_height);
}
.hic_animate .hic_hamburger_bar:nth-child(1) {
	-webkit-transform: translateY(calc(var(--hic_height) / 2)) rotate(45deg);
	transform: translateY(calc(var(--hic_height) / 2)) rotate(45deg);
}
.hic_animate .hic_hamburger_bar:nth-child(2) {
	opacity: 0;
	-webkit-transform: translateX(-40%);
	transform: translateX(-40%);
}
.hic_animate .hic_hamburger_bar:nth-child(3) {
	-webkit-transform: translateY(calc(var(--hic_height) / -2)) rotate(-45deg);
	transform: translateY(calc(var(--hic_height) / -2)) rotate(-45deg);
}
#hic_mum:hover .hic_hamburger_bar {
	background-color: var(--prim);
}
nav {
	height: 100%;
	position: relative;
	z-index: -1;
}
nav ul {
	font-size: 1em;
	line-height: 1em;
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
    height: 34px;
}
nav ul.main {
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.nav_sub_container:hover ul.sub, ul.sub:hover {
	display: block;
}
nav ul.sub {
	position: absolute;
    height: auto;
    z-index: -1;
    padding: 25px 0 40px 0;
	display: none;
}
nav ul.sub:before {
    content: "";
    position: absolute;
    top: -100%;
    left: -100vw;
    height: 200%;
    width: 150vw;
    background-color: white;
	-webkit-box-shadow: 0 0 60px rgb(0 0 0 / 5%);
	box-shadow: 0 0 60px rgb(0 0 0 / 5%);
	pointer-events: none;
}
nav ul.sub:after {
	content: "";
	position: absolute;
	left: -20px;
	right: -20px;
	top: -3px;
	bottom: 0;
	z-index: -1;
}
nav ul.sub li {
	display: block;
	width: max-content;
    margin: 0;
	padding: 0.7em 0;
}
.hidemenu nav ul.sub li {
	width: auto;
}
nav ul.sub a {
    font-size: 1.4rem;
    font-weight: 400;
	line-height: 1.6em;
}
nav li {
	position: relative;
	display: inline-block;
	margin: 0 11px;
}
nav li:first-child {
	margin-left: 0px;
}
nav li:last-child {
	margin-right: 0px;
}
nav a, nav a:visited, nav a:active {
	position: relative;
	display: inline-block;
	height: 100%;
    font-size: 1.4rem;
    font-weight: 500;
	font-weight: 400;
    letter-spacing: 0;
	line-height: 34px;
	color: white;
}
nav a.active {
	color: var(--active);
	pointer-events: none;
}
nav a:hover {
	color: white;
	text-decoration: none;
}
nav a:after {
    content: "";
    height: 0.08em;
    width: 100%;
    background: currentColor;
    position: absolute;
    left: 0;
    bottom: 0;
	transform: scaleX(0);
	transform-origin: left;
	opacity: 0;
	transition: 0.4s;
}
nav a:hover:after {
	opacity: 1;
	transform: scaleX(1);
}
.hidemenu nav {
	position: absolute;
	padding: var(--n) var(--m);
	top: 100%;
	left: 0;
	width: 100%;
	height: calc(100vh - 100%);
	overflow-y: auto;
	z-index: 1;
	background-color: hsl(230deg 34% 8% / 87%);
	background-color: hsl(var(--prim_hsl) / 90%);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.35s;
}

.hidemenu nav.triggered {
	opacity: 1;
	pointer-events: auto;
}


.hidemenu nav ul {
	height: auto;
	text-align: center;
	opacity: 0;
	transition: 0.25s;
}
.hidemenu nav ul.main {
	top: auto;
    -webkit-transform: none;
    transform: none;
}
.hidemenu nav li {
	padding: 1.3rem 0;
	margin: 0;
	display: block;
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
	transition: 0.5s ease;
    transition-delay: 0;
}
.hidemenu nav ul.opp li {
	opacity: 1;
	-webkit-transform: translateY(0);
    transform: translateY(0);
	transition-delay: calc(var(--order) * 100ms);
}
.hidemenu nav a {
	font-size: 3.8rem;
	line-height: 2em;
}
.hidemenu nav ul.sub {
    position: relative;
    z-index: 0;
    padding: 0;
    display: block;
}
.hidemenu nav ul.sub:before, .hidemenu nav ul.sub:after {
	display: none;
}
.hidemenu nav ul.sub a {
	font-size: 1.4rem;
	line-height: 1.2em;
}
.hidemenu #hic_mum {
	display: block;
}
.soc {
	height: 100%;
	position: relative;
	margin-left: 25px;
	display: flex;
}
.soc_box_in, .soc_svg {
	position: relative;
	float: left;
	width: 22px;
	height: 22px;
}
.soc_box {
	position: relative;
	height: 22px;
	margin-right: -4px;
}
.soc_box_in {
	margin-left: 15px;
}
.soc_svg {
	fill: #FFFFFF;
	transition: 0.15s;
}
.soc_svg:hover {
	fill: #FFFFFF;
}
.share_mum {
	padding-top: 14px;
	padding-bottom: 14px;
}
.share_box {
	position: relative;
	display: table;
}
.share, .share_icon {
	width: 18px;
	height: 18px;
}
.share {
	position: relative;
	float: left;
	margin: 0 8px;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.share_icon {
	position: relative;
	fill: #bcbdbf;
}
.share_icon:hover {
	fill: #7cddc1;
}
.box {
	width: 100%;
	position: relative;
	display: table;
	display: flow-root;
	margin: 0 auto;
	padding: 0;
}
.box.mini {
	max-width: 340px;
}
.box.small {
	max-width: var(--box_small);
}
.box {
	max-width: var(--box);
}
.box.large {
	max-width: var(--box_large);
}
.center {
	text-align: center !important;
}
.left {
	text-align: left !important;
}
.right {
	text-align: right !important;
}
.clear {
	clear: both;
}
.border-box {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.bg {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.transformY {
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.transformX {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.transformXY {
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.center_mum {
	display: flex !important;
    align-items: center;
    justify-content: center;
}
.spacer, .spacer_sm, .spacer_tiny, .spacer_n, .spacer_nhalf {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	float: left;	
	width: 100%;
}
.spacer {
	height: 35px;
}
.spacer_sm {
	height: 16px;
}
.spacer_tiny {
	height: 8px;
}
.spacer_n {
	height: var(--n);
}
.spacer_nhalf {
	height: calc(var(--n) / 2);
}
.overflow {
	overflow: hidden;
}
.overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}
.pe {
	pointer-events: none;
}
.preload {
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	z-index: 99999999999;
	background-color: var(--graylight); 
	pointer-events: none;
    -webkit-animation: preload_release 0.45s forwards;
			animation: preload_release 0.45s forwards;
}
@-webkit-keyframes preload_release {
    99%  { opacity: 0; width: 100%; height: 100%; }
    100% { opacity: 0; width: 0; height: 0; display: none; }
}
@keyframes preload_release {	
    99%  { opacity: 0; width: 100%; height: 100%; }
    100% { opacity: 0; width: 0; height: 0; display: none; }
}
.preload .logo_svg {
	width: 100px;
	height: auto;
}
.preload .logo_svg > .logo_main {
	opacity: 0.1;
	fill: var(--prim200);
}
.fl_left {
	float: left;
}
.fl_right {
	float: right;
}
.no_margin {
	margin: 0 !important;
}
footer {
	padding-top: 50px;
	padding-bottom: 50px;
	background-color: var(--prim100);
	display: flex;
	align-items: center;
    justify-content: space-between;
	border-radius: var(--br) var(--br) 0 0;
    margin-top: calc(var(--br) * -1) !important;
}
footer .logo_svg {
	width: 220px;
	height: auto;
}
footer .logo_svg > .logo_sup {
	fill: white;
	fill: hsl(230deg 100% 92%);
}
footer .logo_svg > .logo_main {
	fill: var(--prim600);
}
.footer_logo:hover .logo_svg > .logo_main {
	fill: #374054;
}
footer ul {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.3em;
	color: rgba(255,255,255,0.9);
	letter-spacing: 0.02em;
	padding: 0;
	margin: 0;
}
footer ul li {
	padding: 10px 0;
}
footer ul li.small {
	font-size: 1.3rem;
}
footer ul li a:hover {
	color: #FFFFFF;
}
address {
	font-style: normal;
}
.invisible {
	opacity: 0;
}
.visible {
    opacity: 1 !important;
}
.opp {
    opacity: 1 !important;
}
.oppa {
    -webkit-animation: oppa 1.6s forwards;
            animation: oppa 1.6s forwards;		
}
@-webkit-keyframes oppa {
    0%   { opacity: 0; }
    100% { opacity: 1; }
}
@keyframes oppa {
    0%   { opacity: 0; }
    100% { opacity: 1; }
}
.dn {
	display: none;
}
.dni {
	display: none !important;
}
.paused {
	pointer-events: none;
    -webkit-animation-play-state: paused;
            animation-play-state: paused;		
}
.running {
    -webkit-animation-play-state: running;
            animation-play-state: running;		
}
#message {
	position: fixed;
	bottom: calc(var(--n) / 2);
	z-index: 999999999;
	color: white;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.5em;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 2rem var(--m);
	width: max-content;
	max-width: calc(100% - (2 * var(--m)));
	text-align: center;
	border-radius: var(--br);
	-webkit-box-shadow: var(--ds_strong);
	box-shadow: var(--ds_strong);
	pointer-events: none;
	left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-animation: msg 6.7s forwards;
            animation: msg 6.7s forwards;
}
@-webkit-keyframes msg {
    0%   { opacity: 0; }
	5% 	 { opacity: 1; }
	90%  { opacity: 1; }		
    100% { opacity: 0; }
}
@keyframes msg {
    0%   { opacity: 0; }
	5%   { opacity: 1; }
	90%  { opacity: 1; }		
    100% { opacity: 0; }
}
.warning {
	background-color: var(--fail);
}
.success {
	background-color: var(--success);
}
#message em {
	display: inline-block;
	padding: 0 0.35em;
	border-radius: 5px;
	font-style: normal;
	background-color: rgba(255,255,255,0.5);
}
#message li {
	padding: 0.3em 0;
}
.maps_info {
	font-family: 'Euclid Circular B';
    font-weight: 400;
	font-size: 1.2rem;
}
.sumsy_mode_mum {
	position: fixed;
	left: -15px;
	top: 50%;
	margin-top: -22px;
	width: 28px;
	height: 44px;
	background-color: #404751;
	border-radius: 0 5px 5px 0;
	transition: 0.05s linear;
	-webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.8);
	z-index: 1;
}
.sumsy_mode_mum:hover {
	background-color: #282E36;
	left: -10px;
}
.sumsy_mode_mum svg {
	fill: #FFFFFF;
	width: 28px;
	height: 44px;
}
.sumsy_mode_mum circle {
	opacity: 0.20;
}
.sumsy_iframe {
	position: fixed;
	top: 0;
	right: -100%;
	margin: 0;
	padding: 0;
	border: 0;
	height: 100%;
	z-index: 999;
	transition: 0.5s ease-in-out;
	-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
}
.sumsy_blur {
    opacity: 0.4;
	-webkit-filter: blur(2px) grayscale(100%);
	filter: blur(2px) grayscale(100%);
}
.sumsy_blur .container {
	pointer-events: none;
}
.hide_scrollbar {
    overflow-y: scroll;
    overflow-x: hidden;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
.hide_scrollbar::-webkit-scrollbar {
	width: 0px;
}
.pointer {
    cursor: pointer;
}
#popup_mum {
    z-index: 9999;
    position: fixed;
	padding: var(--hmain) 0;
	background-color: hsl(230deg 15% 90% / 95%);
	display: none;
	inset: 0;
	display: flex;
    align-items: center;
    justify-content: center;
    -webkit-animation: oppa 0.3s;
            animation: oppa 0.3s;
}
#popup {
	position: relative;
    width: 100%;
    max-width: var(--box_large);
	max-height: 100%;
    padding: var(--n) var(--m);
    background-color: white;
    opacity: 0;
	overflow: auto;
	border-radius: var(--br);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	cursor: auto;
}
#hide_popup {
	margin-top: calc(var(--n) / 3);
}
.close:hover {
	cursor: pointer;
}
.close:before, .close:after {
	content: "";
	position: absolute;
	width: var(--hic_width);
	height: var(--hic_bar_heith);
	border-radius: var(--hic_bar_br);
	top: calc(var(--hmain) / 2);
	right: var(--m);
	margin-top: calc(var(--hic_bar_heith) / -2);
	background-color: var(--font);
}
.close:before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.close:after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.grid3 {
	display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-flow: dense;
}
.grid12 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-auto-flow: dense;
}
.col2  { grid-column-end: span 2; }
.col3  { grid-column-end: span 3; }
.col4  { grid-column-end: span 4; }
.col5  { grid-column-end: span 5; }
.col6  { grid-column-end: span 6; }
.col8  { grid-column-end: span 8; }
.col12 { grid-column-end: span 12; }
.row2  { grid-row-end: span 2; }
.row3  { grid-row-end: span 3; }
.row4  { grid-row-end: span 4; }
.load {
	pointer-events: none;
	overflow: hidden;
}
.load * {
	z-index: -1;
}
.load:after {
    content: "";
    position: absolute;
	inset: 0;
    background-color: white;
	z-index: 0;
}
.load:before {
	position: absolute;
	left: 50%;
    top: 50%;
	margin: -1rem 0 0 -1rem;
	border-color: hsl(var(--prim_hsl) / 10%) !important;
	border-bottom-color: var(--prim) !important;	
	z-index: 10;
}
.br {
	border-radius: var(--br);
}
.text_divider {
    position: relative;
    margin: 0 0.4em;
    color: var(--prim800);
}
.text_divider:before {
	content: "•";
}
.icon {
	position: relative;
	display: inline-block;
	height: 1.25em;
	width: 1.25em;
	stroke: currentColor;
	stroke-width: 1.25;
	vertical-align: middle;
    bottom: 0.15em;
}
.icon:only-child {
	display: block;
	bottom: 0;
}
.cookie_details {
	position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    padding: 10px;
	font-size: 1.4rem;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
	align-items: center;
}
.cookie_details .undo {
	cursor: pointer;
}
.cookie_details .undo svg {
	width: 20px;
	height: 20px;
	stroke: var(--scnd);
}
.cookie_details .undo:hover svg {
	stroke: var(--font);
}
.tag {
	--success: #0a997e;
	--orange: #f38500;
    position: relative;
    font-size: 1rem;
	font-size: 0.71428em;
    color: var(--prim);
    padding: 0 0.25em;
    border-radius: 0.3em;
    overflow: hidden;
    display: inline-block;
    font-weight: 400;
    margin: 0 0.7em;
	top: 0.18em;
    -webkit-box-shadow: 0 0 0 1px currentColor;
	box-shadow: 0 0 0 1px currentColor;
}
.tag.gray {
	color: hsl(230deg 10% 57%);
}
.tag.green, .green {
	color: var(--success);
}
.tag:first-child {
	margin-left: 0;
}
.tag + .tag {
	margin-left: -0.1rem;
}
.tag:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	background-color: currentColor;
	opacity: 0.04;
	width: 100%;
	height: 100%;
}
.signin .tag {
	top: auto;
	margin: 0 4px;
    width: 2em;
    text-align: center;
}
.signin_container {
	height: 100vh;
	min-height: 600px;
}
.signin {
	background-color: white;
	padding: 50px;	
	-webkit-box-shadow: var(--ds_light);
	box-shadow: var(--ds_light);
}
.prim_bg .signin, .prim_bg .foreboxes > div {
	-webkit-box-shadow: var(--ds_strong);
	box-shadow: var(--ds_strong);
}
.signin h1 {
	margin-bottom: 1.75em;
}
.signin button {
	width: 100%;
}
.graylight {
	background-color: var(--graylight);
}
.na {
	font-style: italic;
	color: hsl(230deg 9% 65%);
}
.sb_row {
	display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
.table {
	transition: 0.25s;
}
.table_header {
	color: var(--prim400);
	font-weight: 600;
	top: var(--hbar);
	z-index: 3;
    -webkit-box-shadow: 0 -5px 0 white;
	box-shadow: 0 -5px 0 white;
	border-top: none !important;
	border-bottom: 1px solid var(--b);
	margin-bottom: -1px;
}
.table_header .icon {
	stroke-width: 1.5;
	display: inline-block;
	bottom: 0.15em;
}
.row {
	font-size: 1.4rem;
	padding: 1.5rem 0;
	border-top: 1px solid var(--b);
	background: white;
	display: flex;
}
.row > span, .row div {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-right: 1.5rem;
	flex: 1 0 0;
}
.row > [style] {
	flex: var(--grow) 0 0;
}
.row > :last-child {
	padding-right: 0;
	text-align: right;
}
.job.row > :last-child {
	font-weight: 500;
}
.row > [data-key="job[date]"] {
	min-width: 150px;
}
.row > [data-key="job[identifier]"] {
	min-width: 100px;
}
.row > [data-key="user[name]"] {
	min-width: 120px;
}
.row > [data-key="user[mail]"] {
	min-width: 220px;
}
.row > [data-key="user[group]"] {
	min-width: 110px;
}
.row .indicator {
	color: var(--color);
}
.row .indicator:before {
	content: "•";
	position: absolute;
	background-color: currentColor;
	border-radius: 2px;
	transform-origin: left;
	transition: 0.25s;
}
.row:hover, .position:hover {
	color: var(--prim);
	text-decoration: none;
}
.row:hover > .indicator:before {
	-webkit-transform: scaleX(1.8);
	transform: scaleX(1.8);
}
.top {
	padding-top: calc(var(--n) + var(--hbar));
    padding-bottom: var(--overlap);
    margin-top: calc(var(--hbar) * -1);
	margin-bottom: calc(var(--overlap) * -1);
    -webkit-box-shadow: 0 0 40px rgb(0 0 0 / 24%);
	box-shadow: 0 0 40px rgb(0 0 0 / 24%);
}
.top:after {	
    position: absolute;
    width: 100%;
    height: var(--overlap);
	top: 100%;
    left: 0;
	background-color: inherit;
    -webkit-box-shadow: 0 0 40px rgb(0 0 0 / 24%);
	box-shadow: 0 0 40px rgb(0 0 0 / 24%);
	-webkit-transform-origin: top;
	transform-origin: top;
	transition: 0.25s;
	z-index: -1;
}
.search_container {
	--input_bg: transparent;
	--input_bg_hover: transparent;
	--input_bg_focus: transparent;
	--placeholder_color: rgb(255 255 255 / 50%);
	--form_rowheight: var(--hbar);
	opacity: 0;
	z-index: -1;
	margin-top: calc(var(--hbar) * -1);
	justify-content: center;
}
.search_container:after {
    content: "";
    position: absolute;
    width: 100%;
    height: 1px;
    left: 0;
    bottom: 0;
    background-color: rgb(255 255 255 / 65%);
	-webkit-transform-origin: right;
	transform-origin: right;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
}
#hbar.searching > .search_container:after {
	transition: 0.45s;
	-webkit-transform: scaleX(1);
	transform: scaleX(1);
}
#search {
	color: white;
	border: none;
	border-radius: 0;
	padding: 0 54px 0 0;
	opacity: 0;
	transition: opacity 0.5s ease 0.3s;
}
#hbar.searching #search {
	opacity: 1;
}
#hbar.searching ~ div {
	pointer-events: none;
}
#hbar {
	color: white;
	height: var(--hbar);
	font-size: 1.5rem;
	font-weight: 500;
	z-index: 999;
}
#hbar > div {
	height: 100%;
	display: flex;
	align-items: center;
	transition: 0.35s;
	-webkit-transform: translateY(14px);
	transform: translateY(14px);
}
#hbar:before {
	content: "";
	position: absolute;
	left: 0;
	top: 100%;
	width: 100%;
	height: 50%;
	background: inherit;
	-webkit-transform-origin: top;
	transform-origin: top;
	-webkit-transform: scaleY(0);
	transform: scaleY(0);
	z-index: -1;
}
#hbar.searching:before {
	transition: transform 0.5s, -webkit-transform 0.5s;
	-webkit-transform: scaleY(1);
	transform: scaleY(1);
}
.search_container:after, #hbar:before {
	transition: 0.15s;
}
.headerscroll #hbar > div, .noscroll #hbar > fiv {
	transform: none;
}
.top, .headerscroll #hbar, .noscroll #hbar {
	background-color: var(--prim400);
}
body.tt_prim .top, body.tt_prim.headerscroll #hbar, body.tt_prim.noscroll #hbar {
	background: var(--gradient_prim);
}
body.tt_purple .top, body.tt_purple.headerscroll #hbar, body.tt_purple.noscroll #hbar {
	background: var(--gradient_purple);
}
body.tt_turquoise .top, body.tt_turquoise.headerscroll #hbar, body.tt_turquoise.noscroll #hbar {
	background: var(--gradient_turquoise);
}
#hbar .icon_mum {
	color: transparent;
	position: relative;
    padding: 6px;
    border-radius: 42%;
	margin-right: 1.2em;
	background-color: currentColor;
	-webkit-box-shadow: 0 0 0 2px currentColor;
	box-shadow: 0 0 0 2px currentColor;
	display: flex;
	justify-content: center;
}
#hbar .icon_mum:hover {
	color: rgb(255 255 255 / 15%);
}
#hbar .icon_mum:before {
	content: "";
	position: absolute;
	inset: -0.8rem;
}
#hbar .icon_mum.active {
	color: var(--active) !important;
	-webkit-box-shadow: 0 0 0 2px rgb(255 255 255 / 0%), 0 0 15px rgb(0 0 0 / 25%);
	box-shadow: 0 0 0 2px rgb(255 255 255 / 0%), 0 0 15px rgb(0 0 0 / 25%);
}
#hbar .icon_mum.active .icon {
	color: var(--prim400);
}
#hbar .icon_mum .icon {
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}
#hbar .icon_mum.pe {
	opacity: 0.35;
}
#hbar .search_container .icon_mum {
	position: absolute;
	right: 0;
	color: transparent !important;
}
#hbar .icon, .toolbox .icon {
	display: block;
	color: white;
    width: 1.7rem;
    height: 1.7rem;
    stroke-width: 1.6;
	bottom: 0;
}
#hbar .icon_mum:first-child {
	margin-left: -4px;
}
#hbar .icon_mum:last-child {
	margin-right: -4px;
}
#hbar .page {
	flex-grow: 1;
}
#hbar.searching > div {
	opacity: 0;
	pointer-events: none;
}
#hbar.searching > .search_container {
	opacity: 1;
	pointer-events: auto;
}
.foreboxes {
	display: grid;
    grid-template-columns: repeat(12, 1fr);
	grid-template-rows: repeat(12, 1fr);
    grid-auto-flow: dense;
	grid-gap: 3.5rem;
	margin: 0 calc(var(--overlap) / -1);
	width: calc(100% + calc(2 * var(--overlap)));
}
.foreboxes.autorow {
	grid-template-rows: auto;
}
.foreboxes.flexgrid {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 3.5rem;
	margin: 0;
	width: 100%;
}
.foreboxes > div, .position {
	position: relative;
	background-color: white;
	border-radius: var(--br);
	-webkit-box-shadow: var(--ds_medium);
	box-shadow: var(--ds_medium);
	overflow: hidden;
	z-index: 1;
}
.foreboxes > div:not(.position) {
	padding: var(--overlap);
}
.forebox {
	padding: var(--overlap) 0 !important;
	margin-bottom: 2rem;
}
.forebox:last-child {
	margin-bottom: 0;
}
.forebox:before {
    content: "";
    position: absolute;
    background-color: white;
	inset: 0 calc(var(--m) / -1);
	border-radius: var(--br);
	-webkit-box-shadow: var(--ds_medium);
	box-shadow: var(--ds_medium);
}
.position.exceeded_answer_timelimit .indicator:before {
	content: "";
	position: absolute;
	inset: -5px;
	background-color: rgb(255 255 255 / 75%);
}
.position.exceeded_answer_timelimit .indicator:after {
    content: "";
    position: absolute;
    width: 100%;
    padding-bottom: 100%;
	top: 0;
	left: 0;
    display: inline-block;
    border-radius: 50%;
    background-color: var(--scnd);
    animation: bounce 0.5s;
    animation-direction: alternate;
    animation-timing-function: cubic-bezier(.5,0.05,1,.5);
    animation-iteration-count: infinite;
}
@-webkit-keyframes bounce {
	from { transform: translate3d(0, -22%, 0); }
	to   { transform: translate3d(0, 1.8rem, 0); }
}
@keyframes bounce {
	from { transform: translate3d(0, -22%, 0); }
	to   { transform: translate3d(0, 1.8rem, 0); }
}
.position.compact {
    padding: 0.4rem 0.6rem 0.4rem 1.7rem !important;
    border-radius: 4px;
}
.position.compact .positions_header {
    padding: 0.3rem !important;
	inset: 0 !important;
    height: 100%;
	margin: 0;
	box-sizing: border-box;
}
.position.compact .titlelist > li {
	position: relative;
	max-width: 100%;
	font-size: 1.3rem;
	margin-bottom: -0.15em;
	line-height: 1.8em;
	padding-left: 0 !important;
}
.calendar_container .position.compact .titlelist li {
    max-width: 100%;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}
.position.compact .titlelist > li:first-child {
	font-weight: 500;
}
.position.compact .titlelist > li:last-child {
	margin-bottom: 0;
}
.position.compact .positions_header .indicator {
	height: 100%;
	width: 0.4em;
}
.position.queried {
	z-index: 50 !important;
}
.position.queried, .position.queried + .position, .position.queried + h3 + .position {
	border-color: transparent !important;
}
.position:not(.compact).queried:after {
	content: "";
    z-index: -1;
    position: absolute;
    inset: 1px;
    border-radius: var(--br);
    box-shadow: inset 0 0 0 1px var(--prim800);
}

.onebox {
	border-radius: var(--br);
	-webkit-box-shadow: var(--ds_medium);
	box-shadow: var(--ds_medium);
}
.ongoing {
    display: inline-block;
    position: relative;
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    color: var(--prim);
    background-color: currentColor;
    margin-right: 0.6em;
    top: -0.15em;
}
.ongoing:before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 50%;
	background-color: currentColor;
	opacity: 0.3;
	-webkit-animation: nucl 2s forwards infinite;
			animation: nucl 2s forwards infinite;
}
.ongoing:after {
	background-color: inherit;
}
@-webkit-keyframes nucl {
    to   { -webkit-transform: scale(6); transform: scale(6); opacity: 0; }
}
@keyframes nucl {
    to   { -webkit-transform: scale(6); transform: scale(6); opacity: 0; }
}
.sort_item {
	position: relative;
	padding-right: 0.8em;
}
.sort_item:hover {
	cursor: pointer;
	color: var(--font);
}
.sort_item:before, .sort_item:after {
	content: "";
	position: absolute;
	right: 0;
	border: 3px solid transparent;
	opacity: 0.4;
}
.sort_item:before {
	top: 0.15em;
	border-bottom-color: currentColor;
}
.sort_item:after {
	bottom: 0.15em;
	border-top-color: currentColor;
}
.sort_item.asc:before,
.sort_item.desc:after  {
	opacity: 1;
}
.action .icon {
	color: var(--prim);
	width: 24px;
	height: 24px;
	bottom: 0;
}
.action select {
	font-weight: 500;
	border: none !important;
	background-color: transparent !important;
	background-position: right center;
}
.toolbox, .autocomplete-suggestions, .daterangepicker {
	position: absolute;
	color: white;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
	border-radius: var(--br);
    -webkit-backdrop-filter: blur(12px) saturate(0.4);
    backdrop-filter: blur(12px) saturate(0.4);
}
.unblurred {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}
.toolbox, .autocomplete-suggestions, .daterangepicker {
	--tb_padding_x: 2.2rem;
}
.toolbox, .daterangepicker {
	opacity: 0;
    pointer-events: none;
    top: calc(100% + 1.8rem);
    cursor: default;
	-webkit-transform-origin: top;
	transform-origin: top;
	-webkit-transform: scale(0);
	transform: scale(0);
    transition: 0.2s;
	transition: 0.2s cubic-bezier(0, 0, 0.25, 1.3);
}
.autocomplete-suggestions {
	overflow: auto;
}
.search_container .autocomplete-suggestions {
	--tb_padding_x: 3.5rem;
	top: 125%;
	width: calc(100% + 2 * var(--tb_padding_x)) !important;
    margin: 0 calc(var(--tb_padding_x) * -1);
}
form .autocomplete-suggestions {
	--tb_padding_x: var(--input_padding);
	top: 125%;
}
.icon_mum:hover > .toolbox, .toolbox_container:hover > .toolbox, .daterangepicker.visible {
	opacity: 1;
	pointer-events: auto;
	-webkit-transform: none;
	transform: none;
}
.toolbox {
	z-index: 9;
}
.toolbox:before {
	content: "";
	position: absolute;
	width: 50%;
	height: 4rem;
	top: -2.5rem;
	left: 25%;
	border-radius: 0.8rem;
	z-index: -1;
}
.toolbox > ul {
	overflow: hidden;
}
.toolbox > ul, .autocomplete-suggestions, .daterangepicker {
	border-radius: var(--br);
	font-size: 1.4rem;
	font-weight: 400;
	letter-spacing: 0;
	background-color: hsl(230deg 60% 7% / 78%);
    -webkit-box-shadow: 0 20px 50px rgb(0 0 0 / 35%);
	box-shadow: 0 20px 50px rgb(0 0 0 / 35%);
}
.toolbox.unblurred > ul {
	background-color: #575965;
}
.toolbox > ul > li, .autocomplete-suggestion, .autocomplete-group {
	position: relative;
	cursor: pointer;
	padding: 0.9em var(--tb_padding_x);
	border-bottom: 1px solid rgb(255 255 255 / 10%);
	margin-top: -1px;
}
.search_container .autocomplete-suggestion {
	padding: 1.0em var(--tb_padding_x);
}
.autocomplete-group {
	font-weight: 500;
	font-size: 1.6rem;
	letter-spacing: 0;
	background-color: rgb(0 0 0 / 15%);
	cursor: default;
}
.toolbox > ul > li:last-child, .autocomplete-suggestion:last-child {
	border-bottom: none;
}
.toolbox > ul > li, .daterangepicker > div {
	opacity: 0;
	white-space: nowrap;
}
.toolbox > ul > li.active {
	color: var(--active);
}
.icon_mum:hover > .toolbox > ul > li, .toolbox_container:hover > .toolbox > ul > li, .daterangepicker.visible > div {
	transition: opacity 0.25s ease-in 0.15s, color 0.25s;
	opacity: 1;
}
.toolbox > ul > li:hover, .autocomplete-suggestion:hover {
	background-color: rgb(0 0 0 / 10%);
}
.toolbox > ul .icon {
	display: inline-block !important;
	bottom: 0.075em;
	margin-right: 0.35em;
	-webkit-transform: none !important;
	transform: none !important;
	color: inherit !important;
}
.filter[data-status]:before {
	content: "";
	position: relative;
	display: inline-block;
	height: 0.7em;
	width: 3px;
	background-color: var(--status_color);
	border-radius: 0.15rem;
	margin-right: 0.5em;
}
.autocomplete-selected {
	background-color: rgb(255 255 255 /10%) !important;
}
.autocomplete-suggestions strong {
	font-weight: 400 !important;
	background-color: var(--active);
	color: black;
}
.center_container {
    flex: 1 0 0;
    display: flex;
    justify-content: flex-end;
    padding-right: 3rem;
}
.profile_thumb {
	position: relative;
    width: 4.8rem;
    height: 4.8rem;
    color: var(--prim);
    border-radius: 44%;
    background-color: var(--gray);
    font-size: 1.4rem;
    font-weight: 500;
	z-index: 2;
}
.profile_thumb:hover {
	cursor: default;
	-webkit-box-shadow: 0 2px 6px rgba(0,0,0,0.2);
	box-shadow: 0 2px 6px rgba(0,0,0,0.2);
	text-decoration: none;
}
.profile_thumb .toolbox {
	top: calc(var(--hmain) - 11px);
}
.action_button {
	position: relative;
	width: 8rem;
	height: 8rem;
	margin: 4.5rem auto 0 auto;
	color: var(--prim400);
	font-size: 2.4rem;
	border-radius: 50%;
	background-color: white;
	overflow: hidden;
	cursor: pointer;
	transition: 0.5s;
	-webkit-box-shadow: var(--ds_medium);
	box-shadow: var(--ds_medium);
}
.action_button .icon {
	transition: 0.5s;
	stroke-width: 1.5;
}
.forebox:after {
	content: "";
	opacity: 0;
	position: absolute;
	transition: opacity 0.5s;
}
.table_container.empty .forebox:after {
    content: "Alle Einträge wurden gefiltert";
    inset: 0;
	opacity: 1;
    background: white;
    border-radius: var(--br);
    display: flex;
    align-items: center;
    font-size: 1.4rem;
    font-weight: 500;
	z-index: 5;
}




.job_data {
	grid-column-end: span 4;
	grid-row-end: span 12;
}
.job_state {
	grid-column-end: span 3;
	grid-row-end: span 5;
}
.job_location {
	grid-column-end: span 5;
	grid-row-end: span 5;
}
.job_desc {
	grid-column-end: span 8;
	grid-row-end: span 7;
}
.job_desc .icol, .job_desc textarea {
	height: 100%;
}
.icon_circle {
	position: relative;
	height: 3.8rem;
	width: 3.8rem;
	color: var(--prim400);
	background-color: var(--gray);
	border-radius: 44%;
	display: flex;
    align-items: center;
    justify-content: center;
}
.icon_circle .icon {
    width: 2.2rem;
    height: 2.2rem;
	stroke-width: 1.5;
}
.job_desc .icon_circle {
	position: absolute;
	right: var(--overlap);
	bottom: var(--overlap);
	-webkit-transform: translate(0.8rem, 0.8rem);
	transform: translate(0.8rem, 0.8rem);
}
.icon_circle.prim {
	color: white !important;
	background-color: var(--prim) !important;	
}
.forebox_overlay {
	background-color: rgb(255 255 255 / 0.75);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	padding: inherit;
	opacity: 0;
	pointer-events: none;
	transition: 0.5s;
	display: flex;
	align-items: center;
    justify-content: center;
    flex-direction: column;
}
.foreboxes > div:hover .forebox_overlay {
	opacity: 1;
	pointer-events: auto;
	cursor: auto;
}
.job_state_desc p, .location_na p {
	color: var(--font_lc);
	height: 100%;
    padding: 0;
    font-size: 1.3rem;
    line-height: 1.5em;
	letter-spacing: 0;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
}
.job_state_desc p .icon, .location_na p .icon {
    stroke: var(--stroke);
    stroke-width: 1.35;
    border-radius: 50%;
    margin-bottom: 1rem;
    min-height: 2.2em;
    min-width: 2.2em;
}
.location_na {
	color: var(--font);
	padding: inherit;
}
.location_na p .icon {
	stroke: var(--prim);
}
.location_na:hover {
	cursor: pointer;
	color: var(--prim);
}
.position {
	padding: 2.8rem;
 	flex: 247.75px 0 0;
	box-sizing: border-box;
	cursor: pointer;
}
a.position {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.position .icon_circle {
	color: var(--prim);
	background-color: transparent;
	-webkit-transform: translate(-0.8rem, 0);
	transform: translate(-0.8rem, 0);
}
.queried:before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: var(--prim600);
    -webkit-animation: oppout 1.6s ;
            animation: oppout 1.6s forwards;	
}
@-webkit-keyframes oppout {
    to { opacity: 0; }
}
@keyframes oppout {
    to { opacity: 0; }
}
.queried.load:before, #hbar .icon_mum.load:before {
	left: 50%;
    top: 50%;
	background-color: transparent;
	-webkit-animation: spin 0.4s linear infinite;
    animation: spin 0.4s linear infinite;
}
#hbar .icon_mum:before {
    border-color: transparent !important;
    border-bottom-color: var(--prim800) !important;
}
#hbar .icon_mum.load:after {
	background-color: transparent;
}
#hbar .icon_mum.load svg {
	opacity: 0;
}
.positions_header {
	position: relative;
	width: 100%;
	height: 2.2rem;
	margin-bottom: 2.4rem;
    color: var(--prim);
	text-align: right;
    font-size: 1.1rem;
    font-weight: 500;
    letter-spacing: 0.03em;
	display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
.positions_header .icon {
	width: 2.2rem;
	height: 2.2rem;
	color: var(--prim400);
	display: inline-block;
	margin: 0 0.35em;
	bottom: 0;
}
.positions_header .indicator {
	position: relative;
	width: 0.6rem;
	height: 1.8rem;
	border-radius: 2px;
	overflow: hidden;
	background-color: var(--color);
}
.pool .positions_header > span {
	position: relative;
	color: var(--prim200);
	font-weight: 400;
	display: inline-flex;
    align-items: center;
}
.pool .positions_header > span:before {
	content: "";
	position: absolute;
	inset: -0.8rem;
	background-color: var(--input_bg);
	z-index: -1;
	border-radius: 1.1rem;
}
.position ul {
	font-size: 1.3rem;
	letter-spacing: 0;
}
.iconlist, .titlelist {
	font-size: 1.3rem;
}
.iconlist .title, .titlelist .title {
	font-size: 1.5rem;
	font-weight: 500;
}
.titlelist .title {
    margin-bottom: 1.2rem;
    line-height: 1.5em;
}
.iconlist > li {
	position: relative;
    padding: 0.9em 0;
    border-bottom: 1px solid var(--b);
	display: grid;
    grid-template-columns: 3rem 1fr 1.8rem;
    grid-column-gap: 1.5rem;
    grid-auto-flow: column;
}
.iconlist > li > span {
	line-height: 1.9rem;
    padding: 0.225rem 0;
}
.iconlist > li:first-child {
	padding-top: 0;
}
.iconlist > li:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}
.iconlist > li > span:not(.title):empty:after, .row > [data-key="user[tel]"]:empty:after {
	content: "keine Angabe";
	font-style: italic;
}
.iconlist.admin li > span:not(.title):empty:after {
	content: "nicht zugeordnet";
}
.iconlist div:not(.toolbox) {
    color: var(--prim);
    grid-column-end: span 1;
    grid-row-end: span 2;
    display: flex;
    align-items: center;
}
.iconlist > li > div > .icon {
	width: 2.2rem;
	height: 2.2rem;
	stroke-width: 1.35;
}
.iconlist span {
	grid-column-end: span 2;
}
.iconlist > li.edit span {
	grid-column-end: span 1;
}
.iconlist > li.edit div:last-child .icon {
	width: 1.8rem;
    height: 1.8rem;
    stroke: rgb(0 0 0 / 30%);
	transition: 0.2s;
}
.iconlist > li.edit:hover {
	cursor: pointer;
}
.iconlist .toolbox {
	margin-top: -1.5em;
}
.tag.big {
	font-size: 1.3rem;
	line-height: 1.5em;
	letter-spacing: 0;
	border: none;
	padding: 0.8em 0.6em;
	margin: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	top: auto;
}
.tag.big:before {
	opacity: 0.08;
}
.set.tag.big {
	margin-bottom: 2rem;
}
#position_ui_actions {
	display: flex;
	gap: 1.5em;
    flex-direction: row;
    justify-content: center;
    align-items: center;
	padding: 0 var(--m) calc(var(--n) / 2) var(--m);
    width: calc(100% + 2 * var(--m));
    margin: 0 calc(var(--m) * -1) 1.8rem;
    border-bottom: 1px solid var(--b);
}
#position_ui_actions > button:only-child {
	position: relative;
    right: auto;
	margin: 0 auto;
}
button.smaller .icon {
	bottom: 0;
    stroke-width: 1.6;
    margin-right: 0.5em;
    width: 1.9rem;
	min-width: 1.9rem;
    height: 1.9rem;
}
button.smaller .icon:only-child {
    margin-right: 0;
}
.state1 {
	--color: var(--gray);
	--font_lc: var(--font);
	--stroke: hsl(230deg 11% 57%);
}
.state2 {
	--color: hsl(230deg 20% 65%);
	--color: hsl(275deg 100% 87%);
	--color: hsl(260deg 100% 78%);
	--font: white;
	--font_lc: var(--prim);
	--stroke: hsl(230deg 11% 57%);
}
.job .state2, .job_state.state2 {
	--color: var(--gray);
	--font: var(--prim);
}
.state3 {
	--color: var(--orange);
	--font_lc: #272935;
	--stroke: var(--orange);
}
.state4 {
	--color: var(--fail);
	--font: white;
	--font_lc: var(--color);
	--stroke: var(--fail)
}
.state5 {
	--color: var(--success);
	--font: white;
	--font_lc: #272935;
	--stroke: var(--success)
}
.stateP {
	--color: var(--prim);
	--font: white;
}
#popup.info {
	padding-top: 0;
	overflow-y: scroll;
}
#popup.info .infobar {
	position: relative;
	top: 0;
	z-index: 9;
	font-size: 1.3rem;
	text-align: center;
	padding: 2rem 0;
	margin-bottom: calc(var(--n) / 2);
}
#popup.info .infobar > span {
	position: relative;
	color: var(--font);
}
#popup.info .infobar:after {
	content: "";
	position: absolute;
	background-color: var(--color);
	opacity: var(--dim);
	inset: 0 calc(var(--m) * -1) 0 calc(var(--m) * -1);
	z-index: -1;
}
#popup.info .infobar.state1:after {
	border-bottom: 1px solid rgb(0 0 0 / 8%);
}
#popup.info h1 {
	margin-top: calc(var(--n) / 3);
}
mark {
	background-color: var(--prim);
	color: white;
	padding: 0 0.2em;
}
.positions_header mark {
	font-weight: 400;
	background-color: var(--gray);
    color: var(--prim200);
    padding: 0.4em 0.7em 0.4em 0.8em;
    margin-right: 0.4em;
    border-radius: 2rem;
}
#popup form {
	margin-top: 3rem;
}
#position_form[data-state="5"] .icol:not(.start_input):not(.submit), 
#user_form.own select[name="mum"],
#user_form.jobtura input[name="first_name"],
#user_form.jobtura input[name="last_name"],
#user_form.jobtura input[name="mail"],
#user_form.jobtura input[name="tel_input"],
form.disabled {
	pointer-events: none;
	--input_bg: white;
	--input_bordercolor: var(--b);
}
#position_form[data-state="5"] .icol:not(.start_input) label:after,
#user_form.own select[name="mum"] + label:after,
#user_form.jobtura input[name="first_name"] + label:after,
#user_form.jobtura input[name="last_name"] + label:after,
#user_form.jobtura input[name="mail"] + label:after,
#user_form.jobtura input[name="tel_input"] + label:after,
form.disabled .icol.submit,
form.disabled label:after {
	display: none;
}
#position_form[data-state="5"] select, #user_form.own select[name="mum"], form.disabled select {
	background-image: none;
}
#position_form.pool_generated .pos_type, #position_form.pool_generated .pos_count {
	display: none;
}
form.disabled #location_search {
	width: 100%;
}
form.disabled #location_search_container button {
	display: none;
}
/*, form.disabled */
#position_form[data-state="5"] .bool > input:not(:checked) + em i,
form.disabled .bool > input:not(:checked) + em i {
	display: none;
}
#position_form[data-state="5"] .bool > input:not(:checked) + em,
form.disabled .bool > input:not(:checked) + em {
	opacity: 0.5;
	text-decoration: line-through;
	padding-left: var(--input_padding);
}
#location_search {
	width: calc(100% - 5rem);
	padding-right: 6rem;
}
#location_search_container > button {
	position: absolute;
	width: auto;
	height: var(--form_rowheight);
	right: 0;
	padding: 0;
}
#location_search_container > button > .icon {
	width: 2.8rem;
	height: auto;
	stroke-width: 1.2;
}
.pagination {
	display: flex;
	flex-direction: row;
    justify-content: center;
	gap: 1rem;
}
#popup .pagination {
	margin-bottom: 4rem;
}
.icon_pagination {
	height: auto;
	padding: 1rem 2rem;
	border-radius: 50px;
	font-size: 1.2rem;
	font-weight: 400;
	background-color: var(--gray);
	color: var(--font);
	display: flex;
	align-items: center;
}
.icon_pagination.active {
	background-color: var(--prim);
	color: white;
	cursor: default;
	pointer-events: none;
}
.icon_pagination.indicator:after {
	content: "";
    position: absolute;
    top: -2px;
    right: -2px;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background-color: var(--scnd);
    border: 2px solid white;
}
.icon_pagination .icon {
	width: 1.8rem;
    height: 1.8rem;
	stroke-width: 1.6;
}
.icon_pagination.active .icon {
	stroke-width: 1.6;
}
.slide {
	opacity: 0;
	transition: opacity 300ms;
}
.slide.slid {
	opacity: 1;
}
#position_ui_actions_slide {
	display: none;
}
#position_ui_actions, #popup h1 > span, #position_ui_infobar, button.subslide_back {
	transition: 0.45s cubic-bezier(.8,0,.3,1) !important;
}
.subslide #position_ui_actions {
	opacity: 0;
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
	pointer-events: none;
}
.subslide #position_ui_infobar {
	opacity: 0.4;
	pointer-events: none;
}
#position_ui_infobar span {
	position: relative;
	display: inline-block;
	line-height: 1.8em;
	font-weight: 600;
}
#position_ui_infobar.toggle_actions span {
	max-width: 80%;
	cursor: pointer;
}
#position_ui_infobar .toggle {
	display: none;
	pointer-events: none;
}
#position_ui_infobar.toggle_actions .toggle {
	display: block;
    position: absolute;
    right: -2px;
    width: calc(var(--hic_width) + 4px);
    height: auto;
	stroke: none;
    fill: var(--font);
}
.tag_warning {
	background-color: var(--scnd);
    padding: 0 0.25em;
	line-height: 1.4em !important;
    color: white;
    border-radius: 0.3rem;
}
#position_ui_infobar .tag_warning {
	margin: 0 0.5rem; 
}
#popup h1 {
	position: relative;
	width: 100%;
	overflow: hidden;
}
#popup h1 > span:last-child {
	position: absolute;
    left: 0;
    width: 100%;
	opacity: 0;
	-webkit-user-select: none;
    user-select: none;
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}
#popup.subslide h1 > span:first-child {
	opacity: 0;
	-webkit-user-select: none;
    user-select: none;
}
#popup.subslide h1 > span:last-child {
	opacity: 1;
	-webkit-user-select: auto;
    user-select: auto;
	-webkit-transform: none;
	transform: none;
}
button.subslide_back {
	position: absolute;
	pointer-events: none;
	opacity: 0;
	color: var(--font) !important;
	-webkit-transform: translateX(-200%);
	transform: translateX(-200%);
	z-index: 1;
}
.subslide button.subslide_back {
	pointer-events: auto;
	opacity: 1;
	-webkit-transform: none;
	transform: none;
}

.load_fullscreen {
	position: fixed;
	inset: 0;
	background-color: var(--prim);
	z-index: 9999;
	-webkit-animation-duration: 1000ms;
			animation-duration: 1000ms;
}
.load_fullscreen > .center_mum {
	height: 100vh;
}
.load_fullscreen > .center_mum:before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: white;
	opacity: 0;
    -webkit-animation: oppa 1.4s forwards;
            animation: oppa 1.4s forwards;
	-webkit-animation-delay: 600ms;
			animation-delay: 600ms;
}
.load_fullscreen .animated {
	-webkit-animation-timing-function: cubic-bezier(.8,0,.3,1);
	animation-timing-function: cubic-bezier(.8,0,.3,1);
	-webkit-animation-duration: 2s;
	animation-duration: 2s;
}
.load_fullscreen .logo_svg {
    width: 100%;
}
.load_fullscreen .logo_main {
    fill: white;
}
.load_fullscreen .logo_sup {
    fill: var(--font);
}
.load_fullscreen .logo_gradient {
	opacity: 0.35;
}

.progress {
	position: absolute;
	fill: none;
	width: 140px;
	height: 140px;
	stroke: var(--gray);
	stroke-miterlimit: 10;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}
.progress circle {
	position: relative;
	stroke-width: 1.3;
}
.progress circle:nth-child(2) {
	position: relative;
	stroke: var(--stroke);
	stroke-linecap: round;
	stroke-dasharray: 100 100;
	stroke-dashoffset: 100;
	transition: stroke-dashoffset 1s cubic-bezier(.8,0,.3,1);
}
.progress_counter {
	position: absolute;
	font-weight: 500;
	line-height: 1em;
}
.state3 .progress_counter > span:nth-child(1), .state4 .progress_counter > span:nth-child(1) {
	color: var(--color);
}
.progress_counter > span:nth-child(2):after {
	content: '/';
	font-size: 0.65em;
	margin: 0 0.2em;
	font-weight: 700;
	vertical-align: bottom;
}


#log {
	max-width: 530px;
}
.log_row {
	display: flex;
	flex-direction: row;
    align-items: center;
	padding: 1.5rem 0;
}
.log_row .icon_container {
	position: relative;
    display: flex;
	align-items: center;
    justify-content: center;
	flex: 6.3rem 0 0;
	width: 6.3rem;
	height: 6.3rem;
	border-radius: 44%;
	margin-right: 3rem;
	background-color: white;
}
.log_row .icon_container:before {
	content: "";
	position: absolute;
	width: 0.1rem;
	height: 100%;
	left: 3.1rem;
	bottom: -100%;
	background-color: var(--b);
	z-index: -1;
}
.log_row:last-child .icon_container:before {
	display: none;
}
.log_row .icon {
	width: 2.3rem;
	height: 2.3rem;
}
.log_row .desc {
	line-height: 1.6em;
	flex: 1 0 0;
}
.log_row .desc li {
	padding: 0.1rem 0;
}
.log_row .desc li:first-child {
	font-size: 1.2rem;
}
.log_row .desc li:last-child {
	font-size: 1.4rem;
}
.log_row .desc b {
	color: var(--prim);
	font-weight: 500 !important;
}

#location_remove {
	z-index: 1;
    right: 5rem !important;
	padding: 0 var(--input_padding) !important;
    width: 2.1rem !important;
	-webkit-box-sizing: content-box;
    box-sizing: content-box;
}
#location_remove .icon {
	width: 100% !important;
	stroke: var(--placeholder_color);
}
#location_remove:hover .icon {
	stroke: var(--prim400);
}
#location_search_container input[name="location"][value="0"] + #location_remove {
	display: none;
}
.icon_menu {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: space-evenly;
    flex-direction: row;
}
.icon_menu > div {
	position: relative;
	margin: 0 8px;
	padding: 8px;
	border-radius: 44%;
	cursor: pointer;
	overflow: hidden;
	transition: 0.2s ease;
}
.forebox_overlay .icon_menu > div {
	opacity: 0;
	pointer-events: none;
	-webkit-transform: translateY(2rem) scale(0);
	transform: translateY(2rem) scale(0);
}
.forebox_overlay .icon_menu > div.load:after {
	background-color: transparent;
}
.forebox_overlay .icon_menu > div.load .icon {
	opacity: 0;
}
.foreboxes > div:hover .forebox_overlay .icon_menu > div {
	opacity: 1;
	pointer-events: auto;
	-webkit-transform: none;
	transform: none;
	transition-delay: calc(var(--order) * 80ms);
}
.icon_menu .icon {
	width: 2.1rem;
	height: 2.1rem;
	min-width: 2.1rem;
	min-height: 2.1rem;
	color: var(--prim);
	stroke-width: 1.35;
}
.location_overlay .titlelist {
	margin-bottom: 2rem;
}
.location_overlay .titlelist li.title {
	overflow: hidden;
}
.location_overlay.forebox_overlay {
	justify-content: space-between;
}
.titlelist.small li.title {
	margin: 0;
	height: 1.9rem;
}
.titlelist.small li {
	line-height: 1.9rem;
	padding: 0.225rem 0;
	text-align: center;
}
.gmnoprint, .gmnoscreen, .gm-style-cc {
	display: none;
}
#grid_transform_container.box .position {
	flex: 100% 0 0;
}
#grid_transform_container.box .position .positions_header, .calendar .position .positions_header {
    position: absolute;
    width: auto;
	inset: auto 0 auto 0;
	padding-left: inherit;
	padding-right: inherit;
}
#grid_transform_container.box .position .titlelist .title {
    max-width: 75%;
    padding-left: 1.3em;
}
.calendar .position .titlelist .title {
    max-width: none;
}
.calendar .position .positions_header span {
	display: none;
}
.calendar .position .titlelist .title {
    padding-left: 1.3em;
}
#grid_transform_container.box .foreboxes.flexgrid {
    gap: 1.8rem;
}

button.icon_button {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 4rem !important;
}
button.icon_button .icon {
    stroke-width: 1.8;
    width: 2rem;
    height: 2rem;
    bottom: 0;
}
.foreboxes.ov_grid.pos {
	display: grid; 
	grid-auto-rows: max-content 1fr max-content;
	grid-template-rows: unset;
	grid-template-columns: 1fr 1fr; 
	grid-template-areas: 
		"data user_card"
		"data info"
		"desc desc";
}
.position_data {
	grid-area: data;
}
#position_user_card {
	grid-area: user_card;
}
#position_user_card > .set {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: calc(var(--overlap) / 2);
	gap: 2.5rem
}
#position_user_card > .set.state4 li.title {
	color: var(--color);
}
#position_user_card button {
	height: 4.7rem;
	border-radius: 3rem;
	padding: 0;
}
#position_user_card button.big {
	height: 5.9rem;
	margin-bottom: -0.6rem;
}
#position_user_card .titlelist {
	margin-bottom: 0.6rem;
}
#position_user_card .icon {
	width: 4.7rem;
	height: 4.7rem;
	margin: 0 auto;
	stroke: var(--stroke);
}
.position_info {
	grid-area: info;
	display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}
.position_info .progress_container {
	top: calc(var(--overlap) / -4);
	height: 100%;
}
.progress_ratio {
	height: 90%;
	max-height: 124px;
    aspect-ratio: 2.3/1;
}
.position_info .progress {
	position: relative;
	width: auto;
    height: 100%;
}
.position_info .progress circle:nth-child(2) {
	stroke: var(--prim);
}
.position_info .progress_counter {
	font-size: 3.5rem;
}
.position_info_desc {
	grid-area: desc;
	line-height: 1.9rem;
	text-align: center;
	font-size: 1.5rem;
    font-weight: 500;
	padding: 0.225rem 0;
}
.position_desc {
	grid-area: desc;
}
#map {
	background-color: var(--gray);
}
#map:empty {
	background-color: transparent;
    pointer-events: none;
}
#map.onebox {
	height: 50rem;
}
.info_field {
	font-size: 1.4rem;
	line-height: 1.4em;
	padding: 2.4rem;
    border: 1px solid var(--orange);
    border-radius: var(--br);
	display: flex;
    flex-direction: column;
    align-items: center;
	overflow: hidden;
	text-align: center;
}
.info_field:before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: var(--orange);
	opacity: 0.05;
}
.user_restrictions {
	--prim: var(--scnd);
	--option_bg_checked: var(--scnd);
}
.options_columns[name="skills"] {
	display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 0 8%;
}
.options_columns[name="skills"] .option {
	flex: 28% 0 0;
}
.corner_knob {
	position: absolute;
	left: 1em;
	top: 1em;
	padding: 0 !important;
	border: none !important;
}
.controls {
	user-select: none;
}
.controls .icon_mum {
	border-radius: 44%;
	width: 4.8rem;
    height: 4.8rem;
	background-color: white;
	color: var(--prim400);
    display: flex;
    justify-content: center;
    align-items: center;
	box-shadow: var(--ds_medium);
}
.controls .icon_mum:hover {
	box-shadow: 0 0 18px rgb(0 0 0 / 8%);
}
.controls .icon_mum.active {
	background-color: var(--prim) !important;
	color: white;
}
.controls .icon_mum.active:hover {
	background-color: var(--prim400) !important;
}
.controls .icon_mum > .icon {
	width: 2rem;
	height: 2rem;
	stroke-width: 1.6;
}

.calendar_controls {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
	margin: 3rem 0;
}
.calendar_controls h1, #calendar_date_picker {
	text-align: center;
	font-size: 1.9rem;
	margin: 0;
}
#calendar_date_picker {
	background-color: transparent;
	height: auto;
	cursor: pointer;
	font-weight: 500;
    max-width: 150px;
    width: 40%;
}
.bg_white {
	background-color: white;
}
.calendar_container {
	border-radius: var(--br);
	background-color: var(--graylight);
	-webkit-box-shadow: var(--ds_medium), 0 0 0 1px rgb(0 0 0 / 3%);
	box-shadow: var(--ds_medium), 0 0 0 1px rgb(0 0 0 / 3%);
}
.calendar_container.center_column {
	display: flex;
    justify-content: center;
}
.calendar_week {
	display: flex;
	min-width: 1680px;
}
.calendar_container, .calendar_day {
	contain: paint;
}
.calendar_day {
    padding: 0 1.5em;
	border-right: 1px solid var(--b);
	max-width: 14.2857%;
}
.calendar_day .positions {
	padding: 0.5rem 0;
}
.calendar_day .position {
	margin: 1rem 0;
	flex: none;
}
.calendar_day:last-child {
	border-right: none;
}
.calendar_header {
	position: relative;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 500;
    -webkit-position: sticky;
    position: sticky;
    top: 0;
    z-index: 10;
    padding: 1.5em 0;
	color: var(--font);
}
.calendar_header:before {
	content: "";
	position: absolute;
	inset: 0 -1.5rem;
	background-color: white;
	border-bottom: 1px solid var(--b);
	-webkit-box-shadow: 0 0 10px rgb(0 0 0 / 7%);
	box-shadow: 0 0 10px rgb(0 0 0 / 7%);
}
.calendar_header span {
	position: relative;
}
.calendar_day:nth-child(4) .calendar_header {
	color: var(--prim);
}
.calendar_day:nth-child(4) a.calendar_skip {
	pointer-events: none;
}
.calendar_week .position {
	padding: 1.6rem;
}
.calendar .daterangepicker {
	margin-top: 1.7rem;
	padding-bottom: 2.3rem;
}
.calendar .daterangepicker .calendar-table:after, .user_calendar .daterangepicker .calendar-table:after {
	display: none;
}
a.calendar_skip {
	position: absolute;
	inset: 0;
	bottom: auto;
	height: 6rem;
	z-index: 11;
}
.calendar_skip:hover + .calendar_header > span {
	color: var(--prim);
}
.switch_cal {
	position: absolute;
	left: 6rem;
	z-index: 1;
}
.position .indicator {
	transition: 0.25s;
	transform-origin: left;
}
.position:not(.compact):hover .indicator {
	-webkit-transform: scaleX(1.8);
    transform: scaleX(1.8);
}
.position.exceeded_answer_timelimit:hover .indicator {
	-webkit-transform: none;
    transform: none;
}



@media screen and (hover: hover) and (pointer: fine) {
.action_button:hover {
	-webkit-box-shadow: none;
	box-shadow: none;
}
.action_button:hover .icon {
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}
.position:hover {
	z-index: 2;
	-webkit-box-shadow: var(--ds_hl);
	box-shadow: var(--ds_hl);
}
.iconlist > li.edit:hover div:last-child .icon {
	stroke: rgb(0 0 0 / 50%);
	-webkit-transform: translateX(0.3rem);
	transform: translateX(0.3rem);
}
.icon_menu > div:not(.load):before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: transparent;
}
.icon_menu > div:hover:before {
	background-color: #eaecf5;
	background-color: var(--gray);
}
#hbar .icon_mum, #hbar .icon_mum .icon {
	transition: 0.2s;
}
#position_ui_infobar.toggle_actions:hover:after {
	cursor: pointer;
	opacity: 0.9;
}
#signout_forebox:hover {
	color: var(--scnd);
}
}
@media screen and (hover: none) and (pointer: coarse) {
.nav_sub_container > a {
	pointer-events: none;
}
.hidemenu .nav_sub_container > a {
	pointer-events: auto;
}
#search_trigger {
	transition: 0s;
	color: transparent !important;
}
.icon_pagination, .iconlist > li.edit div:last-child .icon {
	transition: 0s;
}
.map_enlarge {
	display: none;
}
}
@media screen and (-webkit-min-device-pixel-ratio: 2), screen and (min-resolution: 192dpi) {

}
@media screen and (max-width: 1360px) {
:root {
	--m: 74px;
	--overlap: 4.4rem;
}
.foreboxes {
	grid-gap: 3rem;
}
.foreboxes.flexgrid {
	gap: 3rem;
}
.position {
	flex: 249.5px 0 0;
}
.forebox {
	padding: var(--overlap) 0 !important; 
}
.forebox:before {
	inset: 0 calc(var(--overlap) * -1);
}
}
@media screen and (max-width: 1260px) {
:root {
	--m: 68px;
}
.foreboxes {
	grid-gap: 2.25rem;
}
.foreboxes.flexgrid {
	gap: 2.25rem;
}
.position {
	flex: 255.13px 0 0;
}
.search_container .autocomplete-suggestions {
	--tb_padding_x: var(--overlap);
}
.toolbox {
	--tb_padding_x: 1.8em;
}
}
@media screen and (max-width: 1223px) {
:root {
	--m: 64px;
	--n: 95px;
	--hmain: 78px;
	--overlap: 6rem;
}
.forebox, .foreboxes, .search_container .autocomplete-suggestions {
	--overlap: 3.8rem;
}
.top .sb_row h1:only-child, h1, h2 {
	flex: 1 0 0;
	text-align: center;
}
.foreboxes {
    grid-template-rows: auto;
}
.position {
	flex-basis: calc(25% - 1.6875rem);
}
.foreboxes.ov_grid {
	width: 100%;
    max-width: var(--box);
    margin: 0 auto;
}
.job_data {
	grid-column-end: span 6;
	grid-row-end: span 4;
}
.job_state {
	grid-column-end: span 6;
	grid-row-end: span 2;
}
.job_location {
	grid-column-end: span 6;
	grid-row-end: span 2;
}
.job_desc {
	grid-column-end: span 12;
	grid-row-end: auto;
}
.job_desc textarea {
	height: 14.3rem;
}
.location_overlay.forebox_overlay {
    justify-content: center;
}
.location_overlay .titlelist {
    margin-top: 1.5rem;
}
.position_info .progress_container {
	top: auto;
}
}
@media screen and (max-width: 1100px) {
:root {
	--m: 58px;
}
.signin {
	margin-bottom: var(--n);
}
.row {
    padding: 1.4rem 0;
}
.position {
	flex-basis: calc(33.3333% - 1.5rem);
}
#popup_mum {
	padding: var(--hmain) 0 0 0;
	align-items: flex-end;
}
#popup {
	border-radius: var(--br) var(--br) 0 0;
}
.row > [data-key="user[group]"] {
	text-align: right;
	padding: 0;
}
.user.row > :last-child {
	display: none;
}
}
@media screen and (max-width: 999px) {
:root {
	--m: 44px;
	--n: 92px;
}
.spacer {
	height: 28px;
}
.spacer_sm {
	height: 12px;
}
.spacer_tiny {
	height: 6px;
}
.dn999 {
	display: none;
}
.d999 {
    display: unset;
}
#hbar > div {
    -webkit-transform: translateY(12px);
    transform: translateY(12px);
}
h1 {
	font-size: 4.4rem;
}
h1.slim {
	font-size: 5.5rem;
}
h2, h1.small {
    font-size: 2.4rem;
}
.forebox:before {
	inset: 0 calc(var(--m) / -1);
}
}
@media screen and (max-width: 880px) {
:root {
	--m: 36px;
}
.forebox, .foreboxes {
	--overlap: var(--m);
}
.search_container .autocomplete-suggestions {
	--overlap: calc(var(--m) / 2);
	--tb_padding_x: calc(var(--m) - 0.5rem);
	border-radius: var(--br);
}
body {
    -webkit-text-size-adjust: 100%;
}
.dn880 {
	display: none;
}
.d880 {
    display: unset;
}
.signin_container {
	align-items: flex-start;
}
.signin {
	margin-top: var(--n);
	margin-bottom: 0;
}
#hbar > div {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
}
.foreboxes {
    grid-gap: 2rem;
}
.foreboxes.flexgrid {
	gap: 2rem;
}
.position {
	flex-basis: calc(50% - 1rem);
}
.options_columns[name="skills"] {
    gap: 0 2%;
}
.options_columns[name="skills"] .option {
	flex: 32% 0 0;
}
}
@media screen and (max-width: 740px) {
:root {
	--m: 28px;
	--overlap: 10rem;
}
.dn740 {
	display: none;
}
.d740 {
    display: unset;
}
.box.d740 {
	display: flow-root;
}
.table_header.row {
	display: none;
}
.forebox {
	padding: 0 !important;
	margin: 0;
}
.forebox:before {
	display: none;
}
.forebox.action {
	padding: 0 var(--m) !important;
	margin-top: 0;
	margin-bottom: calc(var(--m) / 1.5);
	-webkit-box-shadow: var(--ds_medium);
	box-shadow: var(--ds_medium);
}
.cart_morph {
	padding: var(--m);
	margin: calc(var(--m) / 3) 0;
	background-color: white;
	border: none;
	border-radius: var(--br);
	-webkit-box-shadow: var(--ds_light);
	box-shadow: var(--ds_light);
}
.cart_morph:first-child {
	margin-top: 0;
}
.forebox.cart_morph:not(.action) {
	padding: var(--m) !important;
}
.row {
    display: grid;
    grid-template-columns: 18px 1fr auto;
    grid-template-rows: auto;
    gap: 0px 0px;
    grid-template-areas:
        "indicator . ."
        "indicator desc desc"
        "indicator . .";
}
.user.row {
    grid-template-areas:
		"indicator desc desc"
        "indicator . .";
}
.row > span, .row div {
	font-size: 1.3rem;
	padding-right: 0;
	min-width: 0 !important;
}
.row > .m {
    font-size: 1.5rem;
    margin: 1em 0;
	grid-area: desc;
}
.user.row > .m {
	margin-top: 0;
}
.row .indicator {
	grid-area: indicator;
}
.row .indicator:before {
    content: "";
	height: 100%; 
	width: 3px;
}
.row:hover > .indicator:before {
    -webkit-transform: none;
    transform: none;
}
.row > [data-key="user[group]"] {
	background: linear-gradient(90deg, rgb(255 255 255 / 0%) , rgb(255 255 255 / 100%) 3rem);
	padding-left: 4rem;
}
.row > [data-key="user[tel]"] {
	display: none;
}
#hbar > div {
    -webkit-transform: translateY(8px);
    transform: translateY(8px);
}
h1 {
	font-size: 4rem;
}
h1.slim {
	font-size: 5rem;
}
.top {
	border-radius: 0 0 1.2rem 1.2rem;
}
.table_container.empty .forebox:not(.action):after {
	display: none;
}
.table_container.empty .forebox:after {
    justify-content: center;
}
.table_container:first-child .action {
	transition: 0.5s;
}
.table_container.empty:first-child .action {
	margin-top: calc(var(--overlap) / 2);
}
.box.large.tables {
    max-width: var(--box_small);
}
.position {
	padding: var(--overlap);
}
.options_columns[name="skills"] {
    gap: 0 10%;
}
.options_columns[name="skills"] .option {
	flex: 45% 0 0;
}
}
@media screen and (max-width: 696px) {
:root {
	--m: 26px;
	--n: 65px;
	--hmain: 65px;
}
.logo, .logo_svg  {
	width: 62px;
}
.spacer {
	height: 20px;
}
.spacer_sm {
	height: 8px;
}
.spacer_tiny {
	height: 4px;
}
.dn696, .sumsy_iframe, .sumsy_mode_mum {
	display: none;
}
.d696 {
    display: unset;
}
footer {
	height: 310px;
	flex-direction: column;
	flex-direction: column-reverse;
}
footer ul {
	text-align: center;
}
.profile_thumb, .controls .icon_mum {
	width: 4.4rem;
	height: 4.4rem;
}
.toolbox {
	--tb_padding_x: 1.5em;
}
.foreboxes {
	grid-gap: calc(var(--m) / 1.5);
}
.foreboxes.flexgrid {
	gap: calc(var(--m) / 1.5);
}
.position {
	flex-basis: calc(50% - (var(--m) / 1.5 / 2));
}
.foreboxes.ov_grid {
    max-width: var(--box_small);
}
.foreboxes.ov_grid > div {
	grid-column-end: span 12;
	grid-row-end: auto;
}
.foreboxes.ov_grid > .job_state, .foreboxes.ov_grid > .job_location {
	grid-column-end: span 6;
	height: 14rem;
}
.positions_header {
    margin-bottom: 2rem;
}
.job_desc textarea {
	height: 19.2rem;
}
.profile_thumb .toolbox {
    top: calc(var(--hmain) - 7px);
}
h2, h1.small {
    font-size: 2.2rem;
}
h2.small {
    font-size: 1.7rem;
}
.foreboxes.ov_grid.pos {
	display: grid; 
	grid-auto-rows: auto;
	grid-template-rows: unset;
	grid-template-columns: 1fr; 
	grid-template-areas:
		"user_card"
		"info"
		"data"
		"desc";
}
.foreboxes.ov_grid.pos > div {
	grid-column-end: span 1;
}
#position_user_card > .set, .position_info {
    gap: calc(var(--overlap) / 1.5);
}
#position_user_card button, #position_user_card button.big {
	height: 4.9rem;
	margin-bottom: 0;
}
#position_user_card .titlelist {
	margin-bottom: 1.4rem;
}
#position_user_card .icon {
	width: 4.7rem;
	height: 4.7rem;
}
.progress_ratio {
	height: 95px;
	max-height: none;
    aspect-ratio: auto;
}
.position_info .progress_counter {
	font-size: 2.8rem;
}
}
@media screen and (max-width: 620px) {
.stretch {
	max-width: none !important;
	width: auto !important;
	margin: auto calc(var(--m) * -1);
}
.dn620 {
	display: none;
}
.d620 {
    display: unset;
}
#hbar > div {
    -webkit-transform: none;
    transform: none;
}
#position_form .icol.col4, #position_form .icol.col8 {
	grid-column: span 12;
}
#position_form .icol.col4.oneline {
	grid-column: span 6;
}
#location_form .icol.col4 {
	grid-column: span 4;
}
.info_field {
	font-size: 1.3rem;
}
}
@media screen and (max-width: 506px) {
:root {
	--m: 24px;
}
.dn506 {
	display: none;
}
.d506 {
    display: unset;
}
.job_desc textarea {
	height: 21.8rem;
}
.progress circle {
	stroke-width: 1.2;
}
.options_columns[name="skills"] {
    gap: 2%;
}
.options_columns[name="skills"] .option {
	flex: 49% 0 0;
}
}
@media screen and (max-width: 475px) {
:root {
	--m: 24px;
}
html {
	font-size: 56.25%;
}
.dn475 {
	display: none;
}
.d475 {
    display: unset;
}
.signin {
    padding: 40px;
}
#hbar .icon_mum {
	-webkit-box-shadow: 0 0 0 1px currentColor;
	box-shadow: 0 0 0 1px currentColor;
}
#hbar .icon_mum.active {
	-webkit-box-shadow: 0 0 0 1px rgb(255 255 255 / 0%), 0 0 12px rgb(0 0 0 / 25%);
	box-shadow: 0 0 0 1px rgb(255 255 255 / 0%), 0 0 12px rgb(0 0 0 / 25%);
}
#hbar .icon_mum .icon {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}
.position {
	flex-basis: 100%;
}
.positions_header {
	margin-bottom: 0;
    position: absolute;
    inset: var(--overlap);
    width: auto;
}
.position .titlelist .title, #grid_transform_container.box .position .titlelist .title {
    padding-left: 1.6rem;
}
.position .titlelist .title {
    max-width: 50%;
}
.progress {
	width: 130px;
    height: 130px;
}
.profile_thumb .toolbox {
    top: calc(var(--hmain) - 8px);
}
#grid_transform {
	display: none !important;
}
#grid_transform_container.box .foreboxes.flexgrid {
    gap: calc(var(--m) / 1.5);
}
}
@media screen and (max-width: 413px) {
:root {
	--m: 20px;
}
.dn413 {
	display: none;
}
.d413 {
    display: unset;
}
.signin {
    padding: 40px 30px;
}
.row > span, .row div {
	font-size: 1.2rem;
}
.row > .m {
    font-size: 1.4rem;
}
.toolbox > ul, .autocomplete-suggestions {
    font-size: 1.3rem;
}
.pool .positions_header > span:before {
    inset: -0.7rem;
	border-radius: 1.5rem;
}
.job_desc textarea {
	height: 24.3rem;
}
.foreboxes > div:not(.position) {
	padding-top: 2.6rem;
	padding-bottom: 2.6rem;
}
.progress_ratio {
    height: 90px;
}
.options_columns[name="skills"] {
    gap: 0;
}
.options_columns[name="skills"] .option {
	flex: 100% 0 0;
}
.info_field {
	font-size: 1.2rem;
}
.calendar_day {
    padding: 0 1.1em;
}
}
@media screen and (max-width: 380px) {
:root {
	--m: 18px;
}
.dn380 {
	display: none;
}
.d380 {
    display: unset;
}
h1 {
	font-size: 3.75rem;
}
h1.slim {
	font-size: 4.5rem;
}
.progress {
	width: 124px;
    height: 124px;
}
#position_user_card button, #position_user_card button.big {
	height: 4.7rem;
}
.foreboxes > div:not(.position) {
	padding-top: 2.4rem;
	padding-bottom: 2.4rem;
}
}
@media screen and (max-width: 355px) {
:root {
	--m: 16px;
	--n: 52px;
}
.soc {
	display: none;
}
.dn355 {
	display: none;
}
.d355 {
    display: unset;
}
.signin {
    padding: 40px 25px;
}
h1 {
	font-size: 3.25rem;
}
h1.slim {
	font-size: 4rem;
}
h2.small {
    font-size: 1.6rem;
}
.job_desc textarea {
	height: 26.8rem;
}
.progress {
	width: 118px;
    height: 118px;
}
.progress circle {
	stroke-width: 1.1;
}
.foreboxes > div:not(.position) {
	padding-top: 2.2rem;
	padding-bottom: 2.2rem;
}
.switch_cal {
    left: 5rem;
}
}