@charset "UTF-8";

*{min-height: 0; min-width: 0}img{max-width: 100%; height: auto; font-style: italic; background-repeat: no-repeat; background-size: cover; shape-margin: .75rem}img.alignright{float:right;margin:0 0 1em 1em}img.alignleft{float:left;margin:0 1em 1em 0}img.aligncenter{display:block;margin-left:auto;margin-right:auto}.alignright{float:right}.alignleft{float:left}.aligncenter{display:block;margin-left:auto;margin-right:auto}a, button, input, textarea, select{outline: none!important}*:focus{outline:none!important}.row:before, .row:after {width:0px; height:0px}input::-webkit-outer-spin-button, input::-webkit-inner-spin-button{-webkit-appearance: none; margin: 0}input[type=number]{-moz-appearance: textfield}svg{height:auto}


[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {-webkit-appearance: none; appearance: none}

* + br,
br + *{margin-top: 0!important}

a.skip-main {
   color: #fff;
   background-color:#000;
   left:-999px;
   position: absolute;
   top: auto;
   width: 1px;
   height: 1px;
   overflow: hidden;
   z-index: -1040;
}
a.skip-main:focus,
a.skip-main:active{
   left: auto;
   top: auto;
   width: 30%;
   height: auto;
   overflow: auto;
   margin: 10px 35%;
   padding: 5px;
   border-radius: 0;
   border: 2px solid yellow;
   text-align: center;
   font-size: 1em;
   z-index: 1040;
}

#wrapper:not(.has-landing){padding-top: var(--ama-header-height)}
#wrapper{background-color: var(--ama-wrapper-bg)}
#wrapper > .gutenberg-elements{width: 100%; max-width: 160rem; margin-left: auto; margin-right: auto}

/* =============================================================================
   animated close icon
   ========================================================================== */
.remove, .btn-close{position: relative; display: block; overflow: hidden; text-decoration: none}
   .remove::before, .remove::after,
   .btn-close::before, .btn-close::after{content: ''; display: block; width: 12px; height: 2px; position: absolute; top: calc(50% - 1px); left: calc(50% - 6px); background-color: currentColor; transition: background-color .2s ease-in-out, transform .2s ease-in-out, width .2s ease-in-out}
   .remove::before, .btn-close::before{transform: rotate(45deg)}
   .remove::after, .btn-close::after{transform: rotate(-45deg)}
   .remove:hover::before, .remove:hover::after,
   .btn-close:hover::before, .btn-close:hover::after{transform: rotate(0)}

/* =============================================================================
   wpml
   ========================================================================== */
.wpml-ls{font-size: 1.5rem; line-height: 1.25em}
.wpml-ls ul{list-style: none; padding: 0}
   .wpml-ls li{position: relative}
      .wpml-ls a{display: flex; align-items: center; text-decoration: none!important; text-transform: uppercase; font-weight: 400}
      .wpml-ls a > * + *{margin-left: .625rem}
      .wpml-ls .wpml-ls-item-toggle{min-height: 3.125rem; padding: 0 1.25rem}
         .wpml-ls .wpml-ls-item-toggle::after{
            content: '';
            display: block;
            width: 0.75rem;
            height: 0.375rem;
            background: currentColor;
            margin-left: .625rem;
            mask: url(../images/arrow.svg) center no-repeat;
            mask-size: 100% auto;
            -webkit-mask: url(../images/arrow.svg) center no-repeat;
            -webkit-mask-size: 100% auto
         }

      .wpml-ls li > ul{
         position: absolute;
         top: 100%;
         width: max-content;
         max-width: 20rem;
         min-width: 100%;
         right: 0;
         z-index: 10;
         display: none
      }
         .wpml-ls li > ul > li{margin-top: .25rem}
            .wpml-ls li > ul a{padding: .3125rem 1.25rem; min-height: 2.5rem}

.wpml-ls.wpml-ls-legacy-list-horizontal > ul{
   color: var(--ama-header-color);
   border: 1px solid var(--ama-header-color);
   display: flex;
   flex-wrap: wrap;
   justify-content: flex-end
}
   .wpml-ls.wpml-ls-legacy-list-horizontal li + li{border-left: 1px solid var(--ama-header-color)}
   .wpml-ls.wpml-ls-legacy-list-horizontal a{
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      text-align: center;
      color: inherit;
      min-height: 2.375rem;
      min-width: 4.375rem;
      transition: all .3s linear
   }
   .wpml-ls.wpml-ls-legacy-list-horizontal a:hover,
   .wpml-ls.wpml-ls-legacy-list-horizontal .wpml-ls-current-language > a{color: var(--ama-primary-color); background-color: var(--ama-header-color)}

#wrapper:not(.has-landing) .wpml-ls.wpml-ls-legacy-list-horizontal a:hover,
#wrapper:not(.has-landing) .wpml-ls.wpml-ls-legacy-list-horizontal .wpml-ls-current-language > a{color: #fff; background-color: var(--ama-header-color)}

/* =============================================================================
   header
   ========================================================================== */
#header{
   --ama-link-hover-color: var(--ama-secondary-color);

   color: var(--ama-header-color);
   background-color: var(--ama-header-bgcolor);
   box-shadow: var(--ama-header-box-shadow);
   transition: all .3s linear
}
   .h-inner{
      grid-column: breakout!important;
      display: grid;
      grid-template-columns: auto 1fr;
      gap: .625rem;
      align-items: center;
      height: var(--ama-header-height);
      transition: height .3s linear;
      margin-left: auto;
      margin-right: auto;
      width: 100%;
      max-width: 120rem
   }

   .h__logo{position: relative}
      .h__logo a{transition: color .2s linear}
      .h__logo .is-main-slogan{
         max-width: 100%;
         height: auto;
         position: absolute;
         top: 110%;
         left: 0;
         pointer-events: none;
         user-select: none
      }

   .h__els{
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: flex-end;
   }

#header.scroll-header{
   --ama-header-color: var(--ama-primary-color);
   --ama-header-bgcolor: #fff;
   --ama-header-box-shadow: 0 .625rem 1.25rem 0 rgba(0, 0, 0, .06);
}
#header.scroll-header .wpml-ls.wpml-ls-legacy-list-horizontal a:hover,
#header.scroll-header .wpml-ls.wpml-ls-legacy-list-horizontal .wpml-ls-current-language > a{color: #fff}
#header.scroll-header .h__logo .is-main-slogan {display: none}
#menu-toggle{color: currentColor; padding: 0; width: 2rem; height: 2rem; border: none; background: none; position: relative}
* + #menu-toggle{margin-left: 1.25rem}
   #menu-toggle > span{display: block; width: 100%; height: 2px; position: absolute; top: 50%; background-color: currentColor; transform: translate(0, -50%); transition: opacity 0.3s 0.3s}
      #menu-toggle::before,
      #menu-toggle::after{content: ''; display: block; width: 100%; height: 2px; position: absolute; background-color: currentColor; transition: transform 0.3s, top 0.3s 0.3s, bottom 0.3s 0.3s}
      #menu-toggle::before{top: 6px}
      #menu-toggle::after{bottom: 6px}

#wrapper.has-landing #header:not(.scroll-header){--ama-header-color: #fff}
   #wrapper.has-landing #header:not(.scroll-header) .h__logo a:hover{color: rgba(255, 255, 255, .5)}

/* =============================================================================
   ama-nav-menu
   ========================================================================== */
.ama-nav-menu,
.ama-nav-menu ul{padding: 0; list-style: none}
.ama-nav-menu{font-weight: 400}
   .ama-nav-menu a{text-decoration: none!important}
   .ama-nav-menu > li > a{
      font-size: 1.5rem;
      line-height: 1.25em
   }

   .ama-nav-menu .has-submenu > .sub-menu-toggle{display: flex; align-items: center; justify-content: center}
      .ama-nav-menu .has-submenu > .sub-menu-toggle > svg{width: .75rem; height: auto}
   .ama-nav-menu .sub-menu{font-size: .9375rem; line-height: 1.25rem}

/* =============================================================================
   content
   ========================================================================== */
.classic-editor ul:not([class]),
.term-description ul,
ul.wp-el,
ul.wp-el ul{padding-left: 0; list-style: none}

   .classic-editor ul:not([class]) li,
   .term-description ul li,
   ul.wp-el li{padding-left: 1.875rem; position: relative}
   
      .classic-editor ul:not([class]) li::before,
      .term-description ul li::before,
      ul.wp-el li::before{
         content: '';
         display: block;
         width: .625rem;
         height: .625rem;
         border-radius: 50%;
         background: var(--ama-marker-color);
         position: absolute;
         top: .45em;
         left: 0
      }

.classic-editor ul:not([class]) li + li,
.classic-editor li ul,
.classic-editor li ol,
.term-description li + li,
.term-description li ul,
.term-description li ol,
.wp-el li + li,
.wp-el li > ul,
.wp-el li > ol{margin-top: var(--ama-margin-top-li)}

.classic-editor * + *:not(h1, h2, h3, h4, h5, h6),
.term-description * + *,
*:not(.ama-block) + .wp-el:not(.wp-block-heading){margin-top: var(--ama-margin-top-base)}

.classic-editor * + ul,
.term-description * + ul,
*:not(.ama-block) + ul.wp-el{margin-top: 1.25rem}

.classic-editor * + h1,
.classic-editor * + h2,
.classic-editor * + h3,
.classic-editor * + h4,
.classic-editor * + h5,
.classic-editor * + h6,
.term-description * + h1,
.term-description * + h2,
.term-description * + h3,
.term-description * + h4,
.term-description * + h5,
.term-description * + h6,
*:not(.ama-block) + h1,
*:not(.ama-block) + h2,
*:not(.ama-block) + h3,
*:not(.ama-block) + h4,
*:not(.ama-block) + h5,
*:not(.ama-block) + h6{margin-top: var(--ama-margin-top-heading)}

.wp-block-heading + .wp-el:not(.wp-block-heading){margin-top: calc(var(--ama-margin-top-base) / 2)}

*:not(.ama-block) + .wp-block-contact-form-7-contact-form-selector{margin-top: var(--ama-margin-top-wpcf7)}

.gutenberg-elements > *:first-child:not(.full-width, .block-cta-cover){margin-top: var(--ama-offset-top-first)}
.gutenberg-elements > *:last-child:not(.full-width, .block-cta-cover){margin-bottom: var(--ama-offset-bottom-last)}

/* wp-block-columns */
.wp-block-columns{margin-bottom: 0}
* + .wp-block-columns{margin-top: calc(var(--ama-gutter-column-x) * 2)}

/* wp-block-buttons */
*:not(.ama-block):not(.wp-block-button) + .wp-block-button,
.wp-block-button + *:not(.ama-block):not(.wp-block-button){margin-top: var(--ama-margin-top-button)}

*:not(.ama-block) + .wp-block-buttons{margin-top: var(--ama-margin-top-buttons)}
.wp-block-buttons + *:not(.ama-block){margin-top: var(--ama-margin-top-button)}

*.ama-block + .wp-block-buttons,
.wp-block-buttons + *.ama-block{margin-top: calc(var(--ama-margin-top-block) - var(--ama-gutter-button-x))}

/* =============================================================================
   footer
   ========================================================================== */
#footer{
   padding-top: var(--ama-footer-padding-top);
   padding-bottom: var(--ama-footer-padding-bottom);
   background-color: var(--ama-footer-bgcolor)
}

   .f-inner{
      display: grid;
      grid-template-columns: 20rem 1fr;
      gap: var(--ama-gutter-double-x) var(--ama-gutter-x)
   }
      .f__about > * + :not(.ama-dev){margin-top: var(--ama-gutter-double-x)}
      .f__about > * + .ama-dev{margin-top: calc(var(--ama-gutter-double-x) + .625rem)}
      .f__form{
         grid-column: 2;
         width: 100%;
         max-width: 57.5rem;
         margin-left: auto
      }

.ama-dev{
   font-size: var(--ama-sm-font-size);
   line-height: var(--ama-sm-line-height)
}
   .ama-dev a:not(:hover){opacity: .3}

/* =============================================================================
   scroll to top
   ========================================================================== */
.scroll-to-top{z-index: 10; position: fixed; bottom: .625rem; right: .625rem; user-select: none; pointer-events: none}
.scroll-to-top__btn{width: var(--ama-scroll-top-width); height: var(--ama-scroll-top-height); opacity: 0; color: var(--ama-scroll-top-color); border-radius: var(--ama-scroll-top-border-radius); background-color: var(--ama-scroll-top-bg); font-size: 150%; line-height: 1em; -moz-transition: all .25s linear; transition: all .25s linear}
.scroll-to-top__btn[style="visibility: visible;"]{pointer-events: all; cursor: pointer; opacity: 1}

/* =============================================================================
   scrolling animations
   ========================================================================== */
@-webkit-keyframes fadeInUp {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, 1.5rem, 0);
      transform: translate3d(0, 1.5rem, 0)
   }

   100% {
      opacity: 1;
      -webkit-transform: none;
      transform: none
   }
}
@keyframes fadeInUp {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(0, 1.5rem, 0);
      -ms-transform: translate3d(0, 1.5rem, 0);
      transform: translate3d(0, 1.5rem, 0)
   }

   100% {
      opacity: 1;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none
   }
}

@-webkit-keyframes fadeInLeft {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(1.5rem, 0, 0);
      transform: translate3d(1.5rem, 0, 0)
   }

   100% {
      opacity: 1;
      -webkit-transform: none;
      transform: none
   }
}
@keyframes fadeInLeft {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(1.5rem, 0, 0);
      -ms-transform: translate3d(1.5rem, 0, 0);
      transform: translate3d(1.5rem, 0, 0)
   }

   100% {
      opacity: 1;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none
   }
}

@-webkit-keyframes fadeInRight {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(-1.5rem, 0, 0);
      transform: translate3d(-1.5rem, 0, 0)
   }

   100% {
      opacity: 1;
      -webkit-transform: none;
      transform: none
   }
}
@keyframes fadeInRight {
   0% {
      opacity: 0;
      -webkit-transform: translate3d(-1.5rem, 0, 0);
      -ms-transform: translate3d(-1.5rem, 0, 0);
      transform: translate3d(-1.5rem, 0, 0)
   }

   100% {
      opacity: 1;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none
   }
}

@-webkit-keyframes zoomIn {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(.5,.5,.5);
      transform: scale3d(.5,.5,.5)
   }
   100% {
      opacity: 1;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none
   }
}
@keyframes zoomIn {
   0% {
      opacity: 0;
      -webkit-transform: scale3d(.5,.5,.5);
      -ms-transform: scale3d(.5,.5,.5);
      transform: scale3d(.5,.5,.5)
   }
   100% {
      opacity: 1;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none
   }
}

.wp-el,
.wp-block-buttons,
.card-item > *,
.block-cols .is-col,
.block__header > *,
.procons li{
   opacity: 0;
	transform: translate3d(0, 1.5rem, 0);
}

.block-txtmedia-alt:not(.reverse-order) > .block__body > .body__media img,
.block-cta-cover > .block__media img{
   opacity: 0;
	transform: translate3d(1.5rem, 0, 0);
}
.block-txtmedia-alt.reverse-order > .block__body > .body__media img{
   opacity: 0;
	transform: translate3d(-1.5rem, 0, 0);
}

.tm-item,
.block-txtmedia > .block__body > .body__media,
.block-before-after > .comparison-wrapper,
.gallery-item,
.creview-item,
.logo-item img{
   opacity: 0;
	transform: scale3d(.5,.5,.5);
}

.animate-fadeup{
   -webkit-animation: fadeInUp 0.8s ease forwards;
   animation: fadeInUp 0.8s ease forwards;
}
.animate-fadeleft{
   -webkit-animation: fadeInLeft 0.8s ease forwards;
   animation: fadeInLeft 0.8s ease forwards;
}
.animate-faderight{
   -webkit-animation: fadeInRight 0.8s ease forwards;
   animation: fadeInRight 0.8s ease forwards;
}
.animate-zoomin{
   -webkit-animation: zoomIn 0.8s ease forwards;
   animation: zoomIn 0.8s ease forwards;
}

/* =============================================================================
   media query
   ========================================================================== */
@media (min-width: 1200px){
   .is-main-logo,
   .h__logo{width: 17.5rem}
   .h__logo a{display: block; max-width: 17.5rem; position: relative}
   .h__logo svg{transition: width .2s linear}
   #header.scroll-header a{max-width: 9.375rem}
   #header.scroll-header .is-main-logo{width: 9.375rem}

   #header.scroll-header{--ama-header-height: 4.625rem}
   .h-inner{grid-template-columns: auto 1fr auto}

   .h__nav > .offcanvas-body{justify-content: center}

   .ama-nav-menu{
      padding: 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: center
   }
      .ama-nav-menu > li:not(:last-child){margin-right: clamp(1.25rem, 6.25vw, 7.5rem)}
   .ama-nav-menu .has-submenu{position: relative}
   .ama-nav-menu a{display: flex; flex-wrap: wrap; align-items: center; justify-content: center}
   .ama-nav-menu > li > a{
      padding-top: .3125rem;
      padding-bottom: .3125rem;
      position: relative
   }
      .ama-nav-menu > li > a::after{
         content: '';
         display: block;
         width: 100%;
         height: 1px;
         background-color: currentColor;
         position: absolute;
         left: 0;
         bottom: 0;
         transform: scaleX(0);
         transition: transform .3s linear
      }

   .ama-nav-menu .has-submenu > a{padding-right: 1.5rem}
   .ama-nav-menu .has-submenu > .sub-menu-toggle{
      pointer-events: none;
      user-select: none;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
   }
   .ama-nav-menu .sub-menu > .has-submenu > a{padding-right: 2.4375rem}
   .ama-nav-menu .sub-menu > .has-submenu > .sub-menu-toggle{right: .9375rem}
      .ama-nav-menu .sub-menu > .has-submenu > .sub-menu-toggle > svg{transform: rotate(270deg)}

   .ama-nav-menu .sub-menu{
      position: absolute;
      width: max-content;
      max-width: 20rem;
      min-width: 100%;
      color: var(--ama-primary-color);
      background-color: #fff;
      border-radius: var(--ama-general-border-radius);
      z-index: 10;
      padding: .3125rem 0;

      opacity: 0;
      pointer-events: none;
      transform: scale(.6);
      transform-origin: left top;
      transition: opacity .3s, transform .3s;
      filter: drop-shadow(0 .625rem 1.25rem rgba(0, 0, 0, .1));
   }
   .ama-nav-menu .sub-menu a{padding: .3125rem .9375rem; justify-content: flex-start}

   .ama-nav-menu > li > .sub-menu{top: 100%; left: 50%; transform: scale(.6) translateX(-50%)}
   .ama-nav-menu .sub-menu .sub-menu{top: -.3125rem; left: 100%; transform: scale(.6)}

   .ama-nav-menu li:hover > .sub-menu{opacity: 1; pointer-events: all}
   .ama-nav-menu > li:hover > .sub-menu{transform: scale(1) translateX(-50%)}
   .ama-nav-menu .sub-menu > li:hover > .sub-menu{transform: scale(1)}
   
   .ama-nav-menu li:hover > a,
   .ama-nav-menu [class*="current"] > a{color: var(--ama-header-color)}
   .ama-nav-menu > li:hover > a::after,
   .ama-nav-menu > [class*="current"] > a::after{transform: scaleX(1)}

   #ps2id-dummy-offset{height: 8.75rem}
}
@media (min-width: 1200px) and (max-width: 1440px){
   .ama-nav-menu > li:not(:last-child) {
      margin-right: clamp(1.25rem, 4vw, 3.75rem)
   }
}
@media (max-width: 1199px){
   .h__nav{color: var(--ama-body-color)}

   .ama-nav-menu li:hover > a,
   .ama-nav-menu [class*="current"] > a{color: var(--ama-link-hover-color)}

   .h__nav .ama-nav-menu > li > a{padding-top: .9375rem; padding-bottom: .9375rem}
   .h__nav .offcanvas-body{padding: 0}

   .ama-nav-menu a{padding: .3125rem .625rem; min-height: 2.5rem; display: flex; align-items: center; justify-content: flex-start}
   .ama-nav-menu .has-submenu{display: grid; grid-template-columns: 1fr auto}
      .ama-nav-menu .has-submenu > .sub-menu{grid-column: 1 / -1; display: none; background-color: rgba(0, 0, 0, .03)}
      .ama-nav-menu li + li{border-top: 1px solid #E8F1F3}
      .ama-nav-menu .has-submenu > .sub-menu > li + li{border-top-color: rgba(0, 0, 0, .1)}

   .ama-nav-menu .sub-menu-toggle{cursor: pointer; width: 2.5rem; background-color: #E8F1F3}

   .is-main-logo{
      width: 12.5rem
   }

   .wpml-ls{font-size: 1.125rem; line-height: 1.25rem}
      .wpml-ls.wpml-ls-legacy-list-horizontal a{
         min-width: 2.5rem;
         min-height: 1.875rem;
      }
}
@media (max-width: 991px){
   .f-inner{
      grid-template-columns: 1fr
   }
      .f-inner > .f__about{
         text-align: center
      }
      .f-inner > .f__form{grid-column: unset; order: -1}
}
@media (max-width: 567px){
   .h__logo a{
      display: block;
      width: 3.1875rem;
      height: 3.5rem;
      overflow: hidden
   }
   .is-main-slogan{display: none!important}
}

/*
*:focus-visible{outline: 2px dashed #000!important; outline-offset: 3px}
#footer *:focus-visible{outline-color: var(--ama-footer-color)!important}
*/

/* custom adminbar */
html{margin-top: 0!important}
#wpadminbar{background: none; user-select: none; pointer-events: none}
   #wpadminbar .quicklinks > [role="menu"] > li{background: #1d2327; pointer-events: all}