@import url('https://fonts.googleapis.com/css2?family=Rajdhani:wght@300;400;500;600;700&display=swap');

/* Helpers
--------------------------------------- */
.a-l 				{ text-align: left; }
.a-c 				{ text-align: center; }
.a-r 				{ text-align: right; }
.a-j 				{ text-align: justify; }
					
.f-l 				{ float: left; }
.f-r 				{ float: right; }
.f-n 				{ float: none !important; }

.pos-r				{ position: relative; }
.pos-a				{ position: absolute; }
.pos-f				{ position: fixed; }
.pos-s				{ position: static; }

.uppercase 			{ text-transform: uppercase; }
.lowercase 			{ text-transform: lowercase; }
.capitalize 			{ text-transform: capitalize; }	
					
.hide,
.print-info			{ display: none; }
.show 				{ display: block; }
					
.n-m 				{ margin: 0!important; }
.n-p 				{ padding: 0!important; }
.n-b 				{ background: none!important; }
					
.cl:after   		{ content: '.'; display: block; height: 0; clear: both; visibility: hidden; }
.cc					{ clear: both; }

/* Typography (File used for typography - general styles)
--------------------------------------- */
html {
	color: #444; 
	min-height: 100%;
	font-family: sans-serif;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-ms-overflow-style: scrollbar;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
body {
	margin: 0;
	padding: 90px 0 0;
	font-family: Montserrat, Helvetica, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	color: #4c4d4d;
	text-align: left; 
}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
	margin-bottom: .25em;
	font-family: Montserrat, Arial, Helvetica, sans-serif;
    line-height: 1.2;
	font-weight: 600;
    letter-spacing: 0.2px;
}
.subline {
    font-family: Rajdhani, Arial, Helvetica, sans-serif;
}
h1, .h1 {
    font-size: 40px;
    font-weight: 600;
}
.keyvisual h1 {
    font-size: 52px;
}
h2, .h2 {
    font-size: 32px;
    line-height: 1.2;
}
h3, .h3 {
	font-size: 2.2rem;
}
h4, .h4 {
	font-size: 1.5rem;
}
h5, .h5 {
	font-size: 1.125rem;
}
h6, .h6 {
	font-size: .85rem;
}  
h1, h2, h3, h4, h5, h6 {
	margin-top: 0;
	margin-bottom: .5em;
}
.h1 *, .h2 *, .h3 *, .h4 *, .h5 *, .h6 *, h1 *, h2 *, h3 *, h4 *, h5 *, h6 * {
	color: inherit  !important;
	font-style: inherit  !important;
	font-size: inherit  !important;
	line-height: inherit !important; 
	font-family: inherit  !important;
	/*font-weight: normal;*/
}
 h1 a,
 h2 a,
 h3 a,
 h4 a {	
	border-bottom: 0px;
	padding-bottom: 0px;
	color: inherit  !important;
	font-style: inherit  !important;
	font-size: inherit  !important;
	line-height: inherit !important; 
	font-family: inherit  !important;
}
h1 span, h2 span, h3 span {
	color:#20264e !important
}
.color-c41224 {
    color: #20264e;
}
main ul li {
	list-style: square;
}
p a {
    text-decoration: underline;
    color:#20264e !important
}

main ul li,
main ol li,
p,
.p {
    font-size: 1.23rem;
    line-height: 1.48;
    margin-bottom: 20px;
    font-family: 'Montserrat', sans-serif;
	color: #4c4d4d;
}
p:last-child,
.p:last-child {
    margin-bottom: 0;
}
main ul,
main ol {
	padding-left: 20px;
}
main ul li,
main ol li {
	margin-bottom: 5px;
}
.strong {
	font-size: 35px;
	line-height: 45px; 
    font-family: Rajdhani;
    font-weight: normal;
}
.year {
    font-size: 190px;
	line-height: 190px; 
}
#root .small {  
    font-size: 15px;
    line-height: 20px;
}

a {
	color: #20264e;
	text-decoration: none;
	background-color: transparent;
	font-family: 'Montserrat', sans-serif;
}
.fancy-link {
    position: relative; 
    color: #4c4d4d;
    text-transform: initial;
    border-bottom: 1px solid #4c4d4d;
    display: inline-block;
}

input.btn,
button.btn,
a.btn {
    position: relative;
    background-color: #296c53;
    color: #fff;
    padding: 10px 23px 8px 20px;
    border-radius: 11px;
    font-weight: 400;
    font-size: 15px;
    line-height: 1;
    -webkit-transition: all 0.3s cubic-bezier(0.4, 0, 1, 1) 0s;
    transition: all 0.3s cubic-bezier(0.4, 0, 1, 1) 0s;
    display: inline-block;
    height: auto;
}
button.btn.with-arrow,
a.btn.with-arrow {
    padding-right: 40px;
}
button.btn.with-arrow:after,
a.btn.with-arrow:after {
    position: absolute;
    content: "\35";
    font-family: 'ElegantIcons';
    font-size: 20px;
    top: 50%;
    right: 10px;
    font-weight: 400;
    margin-top: -10px;
}
button.btn span,
a.btn span {
	color: #fcfaf4;
}
p.text-small,
.teaser p.text-small {
    font-size: 1.02rem;
}
button.btn-secondary,
a.btn-secondary {
    background: #fff;
    box-shadow: none;
    border-color: #fff;
    color: #000;
    padding: 15px 20px 15px 20px;
}

button.btn:before,
a.btn:before {
    position: absolute;
    content: '';
    width: 0%;
    height: 100%;
    right: 0px;
    top: 0px;
    opacity: 0.1;
    z-index: -1;
    transition: all 500ms ease; 
}
a.btn:hover:before,
button.btn:hover:before {
    width: 100%;
    left: 0px;
    z-index: 2;
    opacity: 1;
    /*background-color: #f0c415;*/
}
button.btn:hover, 
a.btn:hover {
    opacity: 0.9;
    background-color: #c8d3d9;
}
button.btn-secondary:hover,
a.btn-secondary:hover {
    background-color: #9d9d9d;
    color: #fff;
}
 
button.btn:hover span,
a.btn:hover span {	
    z-index: 2;
    position: relative;
}
.btn.btn-small {
    padding: 10px 10px 10px 10px
}
a.btn[href^='tel:'] {
    padding-left: 40px;
    padding-right: 20px;
}
a.btn[href^='tel:']:after {
    font-family: 'iconfont' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\e830";
    position:absolute;
    left: 14px;
    font-size: 20px;
    margin-top: -5px;
}
hr {
	margin-top: 1rem;
	margin-bottom: 1rem;
	border: 0;
	border-top: 1px solid rgba(0,0,0,.1);
}
dl,ol,ul{
    margin-top:0
}
ol ol,ol ul,ul ol,ul ul{
    margin-bottom:0
}
dt{
    font-weight:600
}
dd{
    margin-bottom:.5rem;
    margin-left:0
}
blockquote{
    margin:0 0 1rem
}
dfn{
    font-style:italic
}
b, strong { 
    font-weight: 600;
}
small{
    font-size:80%
}
sub,sup{
    position:relative;
    font-size:75%;
    line-height:0;
    vertical-align:baseline
}
sub{
    bottom:-.25em
}
sup{
    top:-.5em
}
code,kbd,pre,samp{
    font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;
    font-size:1em
}
pre{
    margin-top:0;
    margin-bottom:1rem;
    overflow:auto;
    -ms-overflow-style:scrollbar
}
span.bc-h {
    color: #f30000;
    font-size: 15px;
    vertical-align: 2px;
}

fieldset {
    border: 0;
}
.c_fff {
    color: #fff !important;
}
.with-arrow {
    position: relative;
    padding-right: 14px;
   /* color: #4c4d4d;*/
    color: inherit;
    font-size: 16px;
    line-height: 1.6;
}
.with-arrow span [data-icon] {
    display: inline-block;
    margin: 0 0 0 9px;
    font-weight: 400;
    font-size: 16px;
    border: 1px solid #be042e;
    padding: 1px 1px;
    line-height: 1;
    color: #be042e;
}
.links-box .with-arrow {
    padding-right: 0;
}
.with-arrow[href^="tel"] [data-icon]:before {
    content: "\e090";
}

.fs-8 {
	font-size: 8px !important;
	line-height: 1.5rem !important;
}
.fs-9 {
	font-size: 9px !important;
	line-height: 1.5rem !important;
}
.fs-10 {
	font-size: 10px !important;
	line-height: 1.5rem !important;
}
.fs-11 {
	font-size: 11px !important;
	line-height: 1.5rem !important;	
}
.fs-12 {
	font-size: 12px !important;
	line-height: 1.5rem !important;
}
.fs-13 {
	font-size: 13px !important;
	line-height: 1.5rem !important;
}
.fs-14 {
	font-size: 14px !important;
	line-height: 1.5rem !important;
}
.fs-15 {
	font-size: 15px !important;
	line-height: 1.5rem !important;
}
.fs-16 {
	font-size: 16px !important;
	line-height: 1.5rem !important;
}
.fs-17 {
	font-size: 17px !important;
	line-height: 1.5rem !important;
}
.fs-18 {
	font-size: 18px !important;
	line-height: 1.5rem !important;
}
.fs-19 {
	font-size: 19px !important;
	line-height: 1.5rem !important;
}
.fs-20 {
	font-size: 20px !important;
	line-height: 1.5rem !important;
}
.fs-21 {
	font-size: 21px !important;
	line-height: 1.5rem !important;
}
.fs-22 {
	font-size: 22px !important;
	line-height: 1.5rem !important;
}
.fs-24 {
	font-size: 24px !important;
	line-height: 1.5rem !important;	
}
.fs-26 {
	font-size: 26px !important;
	line-height: 1.5rem !important;
}
.fs-28 {
	font-size: 28px !important;
	line-height: 1.5rem !important;
}
.fs-30 {
	font-size: 30px !important;
	line-height: 1.5rem !important;
}
.fs-32 {
	font-size: 32px !important;
	line-height: 1.5rem !important;
}
.fs-34 {
	font-size: 34px !important;
	line-height: 1.5rem !important;
}
.fs-36 {
	font-size: 36px !important;
	line-height: 1.5rem !important;
}
*[class^="fs-"]:before {
    font-size: inherit !important;
	line-height: inherit !important;
}
#root .tel-size {
    font-size: 25px;
    line-height: inherit;
    color: #e81c2e;
    font-weight: 600;
    opacity: 1;
}
.bounce {
    -moz-animation: float 1500ms infinite ease-in-out;
    -webkit-animation: float 1500ms infinite ease-in-out;
    animation: float 1500ms infinite ease-in-out
}

.moveHorizontal {
    -moz-animation: moveHorizontal 3000ms infinite ease-in-out;
    -webkit-animation: moveHorizontal 3000ms infinite ease-in-out;
    animation: moveHorizontal 3000ms infinite ease-in-out;
}
.moveVertical {
    -moz-animation: moveVertical 3000ms infinite ease-in-out;
    -webkit-animation: moveVertical 3000ms infinite ease-in-out;
    animation: moveVertical 3000ms infinite ease-in-out;
}
.moveHorizontal_reverse {
    -moz-animation: moveHorizontal_reverse 3000ms infinite ease-in-out;
    -webkit-animation: moveHorizontal_reverse 3000ms infinite ease-in-out;
    animation: moveHorizontal_reverse 3000ms infinite ease-in-out;
}

.animationFramesTwo {
    -moz-animation: animationFramesTwo 20000ms infinite ease-in-out;
    -webkit-animation: animationFramesTwo 20000ms infinite ease-in-out;
    animation: animationFramesTwo 20000ms infinite ease-in-out;
}
.waving_left {
    -webkit-animation: waving_left 7s infinite linear;
    animation: waving_left 7s infinite linear;
    @include transition(0.3s);
}

.waving_right {
    -webkit-animation: waving_right 7s infinite linear;
    animation: waving_right 7s infinite linear;
    @include transition(0.3s);
}

.rotate {
    -webkit-animation: rotation 140s infinite linear;
    animation: rotation 140s infinite linear;
}
.semi-rotate {
    -webkit-animation: semi-rotate 5s infinite linear;
    animation: semi-rotate 5s infinite linear;
}
@-webkit-keyframes waving_left {
    0% {
        -webkit-transform: rotate(0deg);
    }

    25% {
        -webkit-transform: rotate(3deg);
    }

    50% {
        -webkit-transform: rotate(6deg);
    }

    75% {
        -webkit-transform: rotate(-3deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
    }
}

@keyframes waving_left {
    0% {
        -webkit-transform: rotate(0deg);
    }

    25% {
        -webkit-transform: rotate(3deg);
    }

    50% {
        -webkit-transform: rotate(6deg);
    }

    75% {
        -webkit-transform: rotate(-3deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
    }
}

@-webkit-keyframes waving_right {
    0% {
        -webkit-transform: rotate(0deg);
    }

    25% {
        -webkit-transform: rotate(-3deg);
    }

    50% {
        -webkit-transform: rotate(-6deg);
    }

    75% {
        -webkit-transform: rotate(-3deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
    }
}

@keyframes waving_right {
    0% {
        -webkit-transform: rotate(0deg);
    }

    25% {
        -webkit-transform: rotate(-3deg);
    }

    50% {
        -webkit-transform: rotate(-6deg);
    }

    75% {
        -webkit-transform: rotate(-3deg);
    }

    100% {
        -webkit-transform: rotate(0deg);
    }
}
@keyframes float {
    0% {
        @include transform(translateY(0px));

    }

    50% {
        @include transform(translateY(-5px));
    }

    100% {
        @include transform(translateY(0px));
    }
}

@-webkit-keyframes rotation {
    from {
        -webkit-transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(359deg);
    }
}
@keyframes rotation {
    from {
        -webkit-transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(359deg);
    }
}
@keyframes rotation {
    from {
        -webkit-transform: rotate(0deg);
    }

    to {
        -webkit-transform: rotate(359deg);
    }
}
@keyframes semi-rotate {
    0% {
        -webkit-transform: rotate(0deg);
    }

    50% {
        -webkit-transform: rotate(45deg);
    }

    75% {
        -webkit-transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(-45deg);
    }
}
@-webkit-keyframes animationFramesTwo {
    0% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
    }

    20% {
        -webkit-transform: translate(73px, -1px) rotate(36deg);
    }

    40% {
        -webkit-transform: translate(141px, 72px) rotate(72deg);
    }

    60% {
        -webkit-transform: translate(83px, 122px) rotate(108deg);
    }

    80% {
        -webkit-transform: translate(-40px, 72px) rotate(144deg);
    }

    100% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
    }
}

@keyframes animationFramesTwo {
    0% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
    }

    20% {
        -webkit-transform: translate(73px, -1px) rotate(36deg);
    }

    40% {
        -webkit-transform: translate(141px, 72px) rotate(72deg);
    }

    60% {
        -webkit-transform: translate(83px, 122px) rotate(108deg);
    }

    80% {
        -webkit-transform: translate(-40px, 72px) rotate(144deg);
    }

    100% {
        -webkit-transform: translate(0px, 0px) rotate(0deg);
    }
}
@-webkit-keyframes moveHorizontal {
    0% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px)
    }

    50% {
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px)
    }
}

@keyframes moveHorizontal {
    0% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px)
    }

    50% {
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }

    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px)
    }
}
@-webkit-keyframes moveHorizontal_reverse {
    0% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px)
    }

    50% {
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }

    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px)
    }
}

@keyframes moveHorizontal_reverse {
    0% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px)
    }

    50% {
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }

    100% {
        -webkit-transform: translateX(0px);
        transform: translateX(0px)
    }
}

@-webkit-keyframes moveVertical {
    0% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px)
    }

    50% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px)
    }
}

@keyframes moveVertical {
    0% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px)
    }

    50% {
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }

    100% {
        -webkit-transform: translateY(0px);
        transform: translateY(0px)
    }
}

@keyframes alltuchtopdown {
    0% {
      -webkit-transform: rotateX(0deg) translateY(0px);
      -moz-transform: rotateX(0deg) translateY(0px);
      -ms-transform: rotateX(0deg) translateY(0px);
      -o-transform: rotateX(0deg) translateY(0px);
      transform: rotateX(0deg) translateY(0px); }
    50% {
      -webkit-transform: rotateX(0deg) translateY(-20px);
      -moz-transform: rotateX(0deg) translateY(-20px);
      -ms-transform: rotateX(0deg) translateY(-20px);
      -o-transform: rotateX(0deg) translateY(-20px);
      transform: rotateX(0deg) translateY(-20px); }
    100% {
      -webkit-transform: rotateX(0deg) translateY(0px);
      -moz-transform: rotateX(0deg) translateY(0px);
      -ms-transform: rotateX(0deg) translateY(0px);
      -o-transform: rotateX(0deg) translateY(0px);
      transform: rotateX(0deg) translateY(0px); } }
  @-webkit-keyframes alltuchtopdown {
    0% {
      -webkit-transform: rotateX(0deg) translateY(0px);
      -moz-transform: rotateX(0deg) translateY(0px);
      -ms-transform: rotateX(0deg) translateY(0px);
      -o-transform: rotateX(0deg) translateY(0px);
      transform: rotateX(0deg) translateY(0px); }
    50% {
      -webkit-transform: rotateX(0deg) translateY(-20px);
      -moz-transform: rotateX(0deg) translateY(-20px);
      -ms-transform: rotateX(0deg) translateY(-20px);
      -o-transform: rotateX(0deg) translateY(-20px);
      transform: rotateX(0deg) translateY(-20px); }
    100% {
      -webkit-transform: rotateX(0deg) translateY(0px);
      -moz-transform: rotateX(0deg) translateY(0px);
      -ms-transform: rotateX(0deg) translateY(0px);
      -o-transform: rotateX(0deg) translateY(0px);
      transform: rotateX(0deg) translateY(0px); } }

@-webkit-keyframes shine {
    100% {
        left: 125%;
    }
}

@keyframes shine {
    100% {
        left: 125%;
    }
}

@-webkit-keyframes pulse {
	0% { -webkit-transform: scale(1); }
	50% { -webkit-transform: scale(1.1); }
	100% { -webkit-transform: scale(1); }
}

@keyframes pulse {
	0% { transform: scale(1); }
	50% { transform: scale(1.1); }
	100% { transform: scale(1); }
}
.phone-headset {
	animation: tada 3s infinite;
	-webkit-animation: tada 3s infinite;
    line-height: 1;
    -webkit-transition: all ease 0.25s;
    -moz-transition: all ease 0.25s;
    transition: all ease 0.25s;
}
@-webkit-keyframes tada { 
	0% {-webkit-transform: scale(1);}
	10%, 20% {-webkit-transform: scale(0.9) rotate(-3deg);} 
	30%, 50%, 70%, 90% {-webkit-transform: scale(1.1) rotate(3deg);}
	40%, 60%, 80% {-webkit-transform: scale(1.1) rotate(-3deg);} 
	100% {-webkit-transform: scale(1) rotate(0);} 
 }
 
 @keyframes tada { 
	0% {transform: scale(1);} 
	10%, 20% {transform: scale(0.9) rotate(-3deg);} 
	30%, 50%, 70%, 90% {transform: scale(1.1) rotate(3deg);} 
	40%, 60%, 80% {transform: scale(1.1) rotate(-3deg);} 
	100% {transform: scale(1) rotate(0);}
 }

 .fancybox-zoomIn {
    animation: 0.25s ease both fancybox-zoomIn;
  }
  
  .fancybox-zoomOut {
    animation: 0.15s ease both fancybox-zoomOut;
  }
  
  @keyframes fancybox-zoomIn {
    from {
      opacity: 0;
      transform: scale(0.75);
    }
  
    to {
      opacity: 1;
      transform: scale(1);
    }
  }
  
  @keyframes fancybox-zoomOut {
    to {
      opacity: 0;
      transform: scale(1.25);
    }
  }

ul.contentlist {
    margin-bottom: 20px;
    padding-left: 35px;
}
ul.contentlist li {
    display: block;
    position: relative;
    margin-bottom: 10px;
}

ul.contentlist li:before {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
    content: "\f058";
    font-family: 'Font Awesome\ 5 Pro';
    font-weight: 900;
    position: absolute;
    left: -32px;
    top: 4px;
    color: #ceac06;
}
ul.contentlist ul {
    margin-top: 10px;
}
ul.contentlist ul li:before{
    color: #9cd7b7;
}
@media screen and (max-width: 768px) {
    ul.contentlist {
        padding-left: 25px;
    }
    ul.contentlist li:before {
        left: -22px;
    }
}
blockquote {
    background: #9cd7b7;
    padding: 20px;
    border-radius: 5px;
    font-size: 20px;
    color: #20264e;
    line-height: 29px;
    margin-top: 50px;
    font-style: oblique;
    text-align: center;
}
.gap-10 {
    gap: 10px;
}
.gap-20 {
    gap: 20px;
}
.gap-30 {
    gap: 30px;
}
.gap-40 {
    gap: 40px;
}
.gap-50 {
    gap: 50px;
}