@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;
}

.is-general-phone > a{
   font-size: .9375rem;
   line-height: 1.125rem;
   font-weight: 400;
   position: relative;
   display: flex;
   min-height: 1.875rem;
   padding-left: 2.8125rem;
   overflow: hidden;
   flex-wrap: wrap;
   align-items: center;
   text-decoration: none!important;
   color: var(--ama-body-color)!important;
}
   .is-general-phone > a::before,
   .is-general-phone > a::after{
      content: '';
      display: block;
      width: 1.875rem;
      height: 1.875rem;
      position: absolute;
      top: calc(50% - 0.9375rem);
      left: 0
   }
   .is-general-phone > a::before{
      background-color: var(--ama-secondary-color);
      border-radius: 50%
   }
   .is-general-phone > a::after{
      background-color: #fff;
      mask-image: url(../images/icon-phone.svg);
      mask-position: center;
      mask-size: 50% auto;
      mask-repeat: no-repeat;
      -webkit-mask-image: url(../images/icon-phone.svg);
      -webkit-mask-position: center;
      -webkit-mask-size: 50% auto;
      -webkit-mask-repeat: no-repeat;
   }
   .is-general-phone > a > span{display: block}
   .is-general-phone .gp-number{
      color: var(--ama-primary-color);
      font-size: 1.625rem;
      line-height: 1.875rem;
      font-weight: 700;
      transition: color .3s linear
   }
   .is-general-phone > a > span + span{margin-left: .75rem}

   .is-general-phone > a:hover .gp-number{color: var(--ama-secondary-color)}

/* =============================================================================
   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: 1rem; line-height: 1.5em}
.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: 600}
      .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: 12px;
            height: 6px;
            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}

/* =============================================================================
   header
   ========================================================================== */
#header{
   --ama-btn-font-size: 1.25rem;
   --ama-btn-line-height: 1.875rem;
   --ama-btn-border-width: 1px;
   --ama-btn-padding-x: calc(.875rem - var(--ama-btn-border-width));
   --ama-link-color: var(--ama-body-color);
   --ama-link-hover-color: var(--ama-primary-color);

   background-color: var(--ama-header-bgcolor);
   box-shadow: var(--ama-header-box-shadow);
   transition: all .3s linear
}
   .h-inner{
      display: grid;
      grid-template-columns: auto 1fr;
      gap: .625rem;
      align-items: center;
      height: var(--ama-header-height)
   }
      .h__els{
         --h-search-gap: 3.125rem;

         display: flex;
         flex-wrap: wrap;
         align-items: center;
         justify-content: flex-end
      }
      .h__els .searchbox + :not(.ama-social){margin-left: var(--h-search-gap)}
      .h__els > div + div{margin-left: calc(var(--h-search-gap) - var(--ama-social-gap))}

   .h__logo{
      font-size: 2.3125rem;
      line-height: 3.0625rem;
      letter-spacing: -0.05em;
      font-weight: 700;
      color: var(--ama-primary-color);
      text-decoration: none
   }

   #header * + .wp-block-button{margin-top: 0!important; margin-left: 1.25rem}

#header.scroll-header{
   --ama-header-box-shadow: 0 .625rem 1.25rem 0 rgba(0, 0, 0, 0);
}

#menu-toggle{color: currentColor; padding: 0; width: 2rem; height: 2rem; border: none; background: none; position: relative}
   #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}
   #menu-toggle.toggled > span{opacity: 0; transition: opacity 0.3s}
      #menu-toggle.toggled::before,
      #menu-toggle.toggled::after{transition: top 0.3s, bottom 0.3s, transform 0.3s 0.3s}
      #menu-toggle.toggled::before{top: calc(50% - 1px); transform: rotate(45deg)}
      #menu-toggle.toggled::after{bottom: calc(50% - 1px); transform: rotate(-45deg)}

.h__nav{
   --ama-link-color: var(--ama-body-color);
   --ama-link-hover-color: var(--ama-primary-color);
}

/* searchbox */
form.searchbox{
   --ama-input-font-size: 0.9375rem;
   --ama-input-line-height: 1.25rem;
   --ama-input-border-radius: 0.625rem;

   display: grid;
   grid-template-columns: 1fr auto;
   position: relative
}
   form.searchbox .searchbox-input{
      display: block;
      font-size: var(--ama-input-font-size);
      line-height: var(--ama-input-line-height);
      font-weight: var(--ama-input-font-weight);
      border-radius: var(--ama-input-border-radius);
      padding: var(--ama-input-padding-y) calc(var(--ama-input-padding-select-x) + .625rem) var(--ama-input-padding-y) var(--ama-input-padding-x);
      border: var(--ama-input-border-width) solid var(--ama-input-border-color);
      transition: all .3s linear
   }
   form.searchbox .searchbox-input:focus{border-color: var(--ama-input-border-color-focus)}
   form.searchbox .searchbox-submit{
      position: absolute;
      width: calc(var(--ama-input-padding-select-x) - calc(var(--ama-input-border-width) * 2));
      height: calc(100% - calc(var(--ama-input-border-width) * 2));
      top: 50%;
      right: var(--ama-input-border-width);
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      border: none;
      padding: 0;
      color: var(--ama-primary-color);
      background-color: transparent;
      border-radius: var(--ama-input-border-radius);
      transform: translateY(-50%);
      transition: all .3s linear
   }
   form.searchbox .searchbox-submit:hover{
      color: #fff;
      background-color: var(--ama-secondary-color)
   }

/* =============================================================================
   ama-nav-menu
   ========================================================================== */
.ama-nav-menu,
.ama-nav-menu ul{padding: 0; list-style: none}
.ama-nav-menu{font-weight: 600}
   .ama-nav-menu a{text-decoration: none!important}
   .ama-nav-menu li:hover > a,
   .ama-nav-menu [class*="current"] > a{color: var(--ama-link-hover-color)}
   .ama-nav-menu > li > a{
      font-size: var(--ama-md-font-size);
      line-height: var(--ama-md-line-height);
   }
   .ama-nav-menu > li:hover > a,
   .ama-nav-menu > [class*="current"] > a{text-decoration: underline!important}

   .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: .6326rem; height: auto}
   .ama-nav-menu .sub-menu{font-size: .9375rem; line-height: 1.25rem; font-weight: 500}

/* =============================================================================
   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: 50px; 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: .575em;
         left: 1.25rem
      }

.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),
.term-description * + *,
*:not(.ama-block) + .wp-el{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,
.term-description * + h1,
.term-description * + h2,
.term-description * + h3,
*:not(.ama-block, .entry-header) + h1,
*:not(.ama-block, .entry-header) + h2,
*:not(.ama-block, .entry-header) + h3,
*:not(.ama-block, .entry-header) + .wp-block-heading{margin-top: var(--ama-margin-top-heading)}

*: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){margin-top: var(--ama-offset-top-first)}
.gutenberg-elements > *:last-child:not(.full-width){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__menu{
      --ama-link-color: var(--ama-body-color);
      --ama-link-hover-color: var(--ama-primary-color);
      font-weight: 600;
      grid-column: breakout!important;
      background-color: #EDF2FA;
      padding: .625rem var(--grid-padding-inline);
      border-radius: var(--ama-general-border-radius)
   }
      .f__menu > *{
         width: 100%;
         max-width: var(--ama-container);
         margin: 0 auto;
         padding: 0;
         list-style: none;
         display: flex;
         flex-wrap: wrap;
         justify-content: center
      }
      .f__menu > ul > li{margin: .9375rem 1.5625rem}
      .f__menu a{text-decoration: none}
      .f__menu a:hover,
      .f__menu [class*="current"] > a{text-decoration: underline; color: var(--ama-link-hover-color)}

   * + .f__end{margin-top: 1.875rem}
   .f__end{
      display: grid;
      grid-template-columns: auto 1fr;
      align-items: center;
      gap: var(--ama-gutter-x)
   }
      .f__end > .e-right{
         grid-column: 2;
         display: flex;
         flex-wrap: wrap;
         align-items: center;
         justify-content: flex-end;
         margin: -.625rem -1.0625rem
      }
         .f__end > .e-right > :not(.ama-social){margin: .625rem 1.0625rem}
         .f__end > .e-right > .ama-social{margin: calc(.625rem - var(--ama-social-gap)) calc(1.0625rem - var(--ama-social-gap))}

.ama-dev{
   --ama-link-color: rgba(30, 30, 30, .5);
   --ama-link-hover-color: var(--ama-secondary-color)
}
   .ama-dev a{text-decoration: none!important; transition: color .3s linear}

/* =============================================================================
   scroll to top
   ========================================================================== */
.scroll-to-top{z-index: 10; position: fixed; bottom: 1.25rem; right: 1.25rem; 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}

/* =============================================================================
   media query
   ========================================================================== */
@media (min-width: 1200px){
   .h-inner{grid-template-columns: auto auto 1fr}
   .h__nav{
      position: sticky;
      top: 0;
      z-index: 1020;
      width: 100%;
      max-width: var(--ama-container-xl);
      margin-left: auto;
      margin-right: auto;
      border-top: 1px solid rgba(var(--ama-primary-rgb), .2);
      border-bottom: 1px solid rgba(var(--ama-primary-rgb), .2);
      background-color: #fff!important;
      padding-left: var(--grid-padding-inline);
      padding-right: var(--grid-padding-inline)
   }
   .has-fw-landing .h__nav{border-bottom-color: transparent}
   .scroll-header + .h__nav{border-top-color: transparent}
   .has-fw-landing .scroll-header + .h__nav{border-bottom-color: rgba(var(--ama-primary-rgb), .2)}
      .h__nav > .offcanvas-body{
         justify-content: space-between;
         width: 100%;
         max-width: var(--ama-container);
         margin: 0 auto;
         min-height: 3.5rem;
      }
      .h__nav > .offcanvas-body > .menu-date{align-self: center; font-weight: 400}

   .ama-nav-menu{
      display: flex;
      flex-wrap: wrap;
   }
      .ama-nav-menu > li:not(:last-child){margin-right: 3.125rem}
   .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{min-height: 3.5rem}
   
   .ama-nav-menu .has-submenu > a{padding-right: 1.25rem}
   .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%;
      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)}
}
@media (min-width: 1366px){
   .h-inner > .is-general-phone{margin-left: 2.1875rem}
}
@media (max-width: 1199px){
   .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}


   .h-inner{grid-template-columns: auto 1fr auto; gap: var(--ama-gutter-x)}
      .h-inner > .is-general-phone{justify-self: start;}

   .h__els{gap: var(--ama-gutter-x);}

   .offcanvas-actions{padding: 2rem 1rem;}
      .offcanvas-actions > * + *{margin-top: .9375rem;}
      .offcanvas-actions .ama-social{
         display: flex;
         justify-content: center;
         align-items: center;
         width: 100%;
      }
         .offcanvas-actions .ama-social a{width: 2.5rem; height: 2.5rem;}

   .h__nav .menu-date{
      display: block;
      padding: .3125rem .625rem;
      font-size: .875rem;
      line-height: 1.25rem;
      font-weight: 600;
      border-bottom: 1px solid #E8F1F3;
      background-color: rgba(0, 0, 0, .015);
   }
}
@media (max-width: 1045px){
   .f__end{
      grid-template-columns: 1fr;
      text-align: center;
      justify-items: center;
   }
}

@media (max-width: 991px){
   .h__logo{
      font-size: 1.875rem;
      line-height: 2.5rem;
   }
   .h__els{gap: var(--ama-gutter-double-x);}

   .f__end > .e-right{
      grid-column: 1;
      justify-content: center;
   }
}

@media (max-width: 767px){
   .f__menu > ul > li{
      margin: .3125rem .625rem;
   }
}

@media (max-width: 575px){
   .h__logo {
      font-size: 1.25rem;
      line-height: 2rem;
   }
   .h-inner > .is-general-phone{justify-self: end;}

   .is-general-phone > a{padding-left: 1.5625rem;}
   .is-general-phone > a::before,
   .is-general-phone > a::after{
      width: 1.625rem;
      height: 1.625rem;
      top: calc(50% - .8125rem);
   }
      .is-general-phone > a > span:not(.gp-number){display: none;}
      .is-general-phone .gp-number{
         font-size: 1rem;
         line-height: 1.25rem;
         white-space: nowrap;
      }
}

@media (max-width: 425px){
    .h-inner{grid-template-columns: auto 1fr auto; gap: var(--ama-gutter-x);}
      .h__logo {
         font-size: 1.25rem;
         line-height: 2rem;
      }

   .f__end > .e-right{
      flex-direction: column;
      gap: var(--ama-gutter-x);
   }
}

/*
*: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}