@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}

#wrapper{
   padding-top: var(--ama-header-height);
   background-color: var(--ama-wrapper-bg)
}

[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;
}

/* =============================================================================
   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)}

/* =============================================================================
   header
   ========================================================================== */
#header{
   background-color: var(--ama-header-bgcolor);
   transition: transform .3s linear;
   transform: translateY(0);
}

@media (min-width: 1200px){
   #header.scroll-header.scrolling-down{transform: translateY(-100%)}
}
@media (max-width: 1199px){
   body:not([style="overflow: hidden; padding-right: 15px;"]) #header.scroll-header.scrolling-down{transform: translateY(-100%)}
}

.h-top{
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   padding-top: .3125rem;
   padding-bottom: .3125rem;
   height: calc(var(--ama-header-height) - 3.125rem)
}
   .h-top > .h__logo{flex: 1 0 0}

   .h-top{
      --ama-btn-border-width: 1px;
      --ama-btn-padding-y: calc(.3125rem - var(--ama-btn-border-width));
      --ama-btn-padding-x: calc(.9375rem - var(--ama-btn-border-width))
   }
   .h-top * + .wp-block-button,
   .h-top .wp-block-button + *{margin-top: 0!important}

#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}

.ama-search-toggle{
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   justify-content: center;
   color: var(--ama-secondary-color);
   background-color: #fff;
   border: 1px solid #D4D5D8;
   border-radius: 50%;
   width: 1.875rem;
   height: 1.875rem;
   transition: all .3s linear
}
.ama-search-toggle:hover{
   color: var(--ama-secondary-color);
   border-color: var(--ama-yellow-color);
   background-color: var(--ama-yellow-color)
}
.ama-search-toggle > svg{display: block}

.h-top{position: relative}
.h-top > :not(.h__logo) + *{margin-left: 1.875rem}

.ama-search-container{
   grid-column: content;
   position: absolute;
   top: 100%;
   left: 0;
   width: 100%;
   z-index: 100;
   margin: 0!important
}
   .ama-search-container .searchbox{padding: .3125rem .625rem; background-color: #fff}
   .searchbox{
      --ama-input-border-width: 1px;
      --ama-input-padding-y: calc(.3125rem - var(--ama-input-border-width));

      display: grid;
      grid-template-columns: 1fr auto;
      gap: .25rem;      
   }
      .searchbox > *{height: 2.5rem}
      .searchbox > .searchbox-submit{
         width: 2.5rem;
         padding: 0;
         border: var(--ama-input-border-width) solid var(--ama-input-border-color);
         color: var(--ama-input-color);
         background: var(--ama-input-background-color);
         display: flex;
         flex-wrap: wrap;
         align-items: center;
         justify-content: center;
         transition: color .3s linear, border-color .3s linear, background-color .3s linear
      }
      .searchbox > .searchbox-submit:hover{
         color: #fff;
         border-color: var(--ama-primary-color);
         background-color: var(--ama-primary-color)
      }

/* =============================================================================
   ama-nav-menu
   ========================================================================== */
.ama-nav-menu{
   --ama-link-color: currentColor;
   --ama-link-hover-color: var(--ama-primary-color);
   list-style: none;
   padding: 0;
   margin: 0
}
.ama-nav-menu > li > .more-toggle > svg{display: block; margin-left: .5rem}

   .ama-nav-menu li{
      display: flex;
      flex-wrap: wrap;
      flex-direction: row;
      align-items: center;
      align-content: center
   }
      .ama-nav-menu li > a,
      .ama-nav-menu > li > .more-toggle{
         display: block;
         flex: 1 0 0;
         text-decoration: none!important;
         color: var(--ama-link-color)
      }
      .ama-nav-menu:not(.is-secondary) > li > a,
      .ama-nav-menu:not(.is-secondary) > li > .more-toggle{font-weight: 700}
      .ama-nav-menu li > .sub-menu-toggle{
         display: flex;
         flex-wrap: wrap;
         flex-direction: row;
         align-items: center;
         align-content: center;
         justify-content: center
      }
      .ama-nav-menu li > ul{min-width: 100%}
      .ama-nav-menu a,
      .ama-nav-menu > li > .more-toggle{padding-top: .5rem; padding-bottom: .5rem}

      .ama-nav-menu li:hover > a,
      .ama-nav-menu [class*="current"] > a,
      .ama-nav-menu > li:hover > .more-toggle{color: var(--ama-link-hover-color)}

/* =============================================================================
   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 * + *,
.term-description * + *,
*:not(.ama-block) + .wp-el:not(.wp-block-heading){margin-top: var(--ama-margin-top-base)}

.wp-el + .instagram-media-rendered{margin-top: var(--ama-margin-top-base)!important}
.instagram-media-rendered{max-width: 48.75rem!important}

.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) + h1,
*:not(.ama-block) + h2,
*:not(.ama-block) + h3,
*:not(.ama-block) + .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),
.gutenberg-elements > *:first-child:not(.full-width):empty + *{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}
*:not(.ama-block) + .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{
   font-size: .9375rem;
   line-height: 1.25rem;
   padding-top: var(--ama-footer-padding-top);
   padding-bottom: var(--ama-footer-padding-bottom);
   background-color: var(--ama-footer-bgcolor)
}
   #footer .ama-nav-menu{font-size: unset; line-height: unset}
   #footer .ama-nav-menu > li > a{font-weight: 500}

   .f-inner{display: flex; flex-wrap: wrap; align-items: center}
      .f-inner > .f__logo{flex: 1 0 0}
      .f-inner > .f__logo + *:not(.ama-social){margin-left: 1.25rem}
      .f-inner > .f__logo + .ama-social{margin-left: calc(1.25rem - var(--ama-social-gap))}
      .f-inner > .ama-nav-menu + .ama-social{margin-left: calc(3.75rem - var(--ama-social-gap))}

/* =============================================================================
   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}

/* =============================================================================
   adblock message
   ========================================================================== */
#adblock-message {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 9999;
   font-weight: 700;
}

/* =============================================================================
   h-main-mobile-nav
   ========================================================================== */
.h-main-mobile-nav{background-color: #efefef; font-size: .875rem; line-height: 1em; padding: 0; overflow: hidden}
   .h-main-mobile-nav > .ama-scrollbar{
      padding: 0.875rem var(--grid-padding-inline);
      overflow: hidden;
      white-space: nowrap;
   }
   .h-main-mobile-nav ul{
      display: flex;
      align-items: center;
      gap: .25rem;
      padding: 0;
      list-style: none;
      pointer-events: none;
      user-select: none
   }
      .h-main-mobile-nav ul > li{flex-shrink: 0}
      .h-main-mobile-nav a{
         display: block;
         padding: 0.3125rem 0.75rem 0.1875rem 0.75rem;
         border-radius: 0.75rem;
         color: #fff;
         background-color: var(--ama-primary-color);
         text-decoration: none;
         white-space: nowrap;
         transition: all .3s linear;
         pointer-events: all;
         user-select: none
      }
      .h-main-mobile-nav a:hover,
      .h-main-mobile-nav [class*="current"] > a{background-color: var(--ama-secondary-color);}

/* =============================================================================
   media query
   ========================================================================== */
.h__logo svg,
.f__logo svg{width: 16.875rem}

@media (min-width: 1200px){
   .h-main-mobile-nav{display: none!important}

	#headerOffcanvas > .offcanvas-body,
   .ama-nav-menu,
   .ama-nav-menu > li > a,
   .ama-nav-menu > li > .more-toggle{height: 100%}

   .ama-nav-menu .sub-menu-toggle{display: none!important; pointer-events: none; user-select: none}
   .ama-nav-menu,
   .ama-nav-menu > li > a,
   .ama-nav-menu > li > .more-toggle{display: flex; flex-wrap: wrap}
   .ama-nav-menu,
   .ama-nav-menu ul{list-style: none; padding: 0}
   .ama-nav-menu{align-items: stretch; justify-content: center}
   .ama-nav-menu > li > a,
   .ama-nav-menu > li > .more-toggle{align-items: center}
   .ama-nav-menu{font-size: 1.0625rem}
   .ama-nav-menu a{text-decoration: none}
   
   .ama-nav-menu > li:not(:first-child){margin-left: 1.25rem}

   .ama-nav-menu > li:not(.is-mega-menu){position: relative}
   .ama-nav-menu > li > a{position: relative; line-height: 1.25rem; min-height: 3.125rem}
      .ama-nav-menu > li > a > span{position: relative; padding: .3125rem 0}
         .ama-nav-menu > li > a > span::after{
            content: '';
            display: block;
            width: 100%;
            height: 1px;
            background: currentColor;
            position: absolute;
            left: 0;
            bottom: 0;
            transform: scale(0);
            transition: transform .3s ease
         }
         .ama-nav-menu > li:hover > a > span::after{transform: scale(1)}

   .ama-nav-menu .sub-menu{
      --ama-link-color: var(--ama-body-color);
      --ama-link-hover-color: var(--ama-primary-color)
   }
   .ama-nav-menu > :not(.is-mega-menu) .sub-menu{
      font-size: .875rem;
      line-height: 1.25rem;
      position: absolute;
      background-color: #fff;
      box-shadow: 0 0 0 1px var(--ama-sub-menu-border-color) inset;
      white-space: nowrap;
      padding: .625rem 0;
      min-width: 10rem;

      opacity: 0;
      pointer-events: none;
      transform-origin: left top;
      transform: scale(0.6);
      transition: opacity 0.3s, transform .3s;
      filter: drop-shadow(0 .625rem 1.25rem rgba(205, 220, 216, 1));
   }
   .ama-nav-menu > :not(.is-mega-menu) > .sub-menu{
      top: 100%;
      left: 50%;
      transform: scale(0.6) translateX(-50%)
   }
      .ama-nav-menu > :not(.is-mega-menu) .sub-menu::before,
      .ama-nav-menu > :not(.is-mega-menu) .sub-menu::after{
         border: solid transparent;
         content: "";
         height: 0;
         width: 0;
         position: absolute;
         pointer-events: none;
      }
      .ama-nav-menu > :not(.is-mega-menu) > .sub-menu::before,
      .ama-nav-menu > :not(.is-mega-menu) > .sub-menu::after{
         bottom: calc(100% - 1px);
         left: 50%;
      }
      .ama-nav-menu > :not(.is-mega-menu) > .sub-menu::before{
         border-color: rgba(194, 225, 245, 0);
         border-bottom-color: var(--ama-sub-menu-border-color);
         border-width: 11px;
         margin-left: -11px;
      }
      .ama-nav-menu > :not(.is-mega-menu) > .sub-menu::after{
         border-color: rgba(255, 255, 255, 0);
         border-bottom-color: #fff;
         border-width: 10px;
         margin-left: -10px;
      }

      .ama-nav-menu :not(.is-mega-menu) li:hover > .sub-menu,
      .ama-nav-menu :not(.is-mega-menu) li:focus-within > .sub-menu{opacity: 1; pointer-events: all; transform: none}
      .ama-nav-menu > :not(.is-mega-menu):hover > .sub-menu,
      .ama-nav-menu > :not(.is-mega-menu):focus-within > .sub-menu{opacity: 1; pointer-events: all; transform: scale(1) translateX(-50%)}

   .ama-nav-menu > :not(.is-mega-menu) .sub-menu .sub-menu{top: 0; left: calc(100% - 1px)}
      .ama-nav-menu > :not(.is-mega-menu) .sub-menu .sub-menu::before,
      .ama-nav-menu > :not(.is-mega-menu) .sub-menu .sub-menu::after{right: calc(100% - 1px); top: 1.875rem}
      .ama-nav-menu > :not(.is-mega-menu) .sub-menu .sub-menu::before{
         border-color: rgba(194, 225, 245, 0);
         border-right-color: var(--ama-sub-menu-border-color);
         border-width: 11px;
         margin-top: -11px
      }
      .ama-nav-menu > :not(.is-mega-menu) .sub-menu .sub-menu::after{
         border-color: rgba(255, 255, 255, 0);
         border-right-color: #fff;
         border-width: 10px;
         margin-top: -10px
      }
      .ama-nav-menu > :not(.is-mega-menu) .sub-menu a{display: block; padding: .625rem 1.25rem}

   .h-main-nav{
      color: #fff;
      background-color: var(--ama-primary-color)!important;
      grid-column: full-width!important;
      min-height: 3.125rem
   }
      .h-main-nav > .offcanvas-body{
         width: 100%;
         max-width: calc(var(--ama-container) + (var(--grid-padding-inline) * 2));
         padding-left: var(--grid-padding-inline);
         padding-right: var(--grid-padding-inline);
         margin-left: auto;
         margin-right: auto
      }
      .h-main-nav > .offcanvas-body,
      .h-main-nav .ama-nav-menu,
      .h-main-nav .ama-nav-menu > li,
      .h-main-nav .ama-nav-menu > li > a{height: 100%}
      .h-main-nav .ama-nav-menu{font-size: .9375rem}
      .h-main-nav .ama-nav-menu{
         --ama-link-color: currentColor;
         --ama-link-hover-color: var(--ama-secondary-color)
      }

      .h-main-nav > .offcanvas-body > .ama-nav-menu{flex: 1 0 0}
      .h-main-nav > .offcanvas-body > .ama-nav-menu.is-primary{justify-content: flex-start}
      .h-main-nav > .offcanvas-body > .ama-nav-menu.is-secondary{justify-content: flex-end}
      .h-main-nav > .offcanvas-body > .ama-nav-menu.is-secondary:not(:only-child){position: relative}
         .h-main-nav > .offcanvas-body > .ama-nav-menu.is-secondary:not(:only-child)::before{
            content: '';
            display: block;
            height: calc(100% - 1.25rem);
            width: 2px;
            top: 50%;
            left: 0;
            background-color: currentColor;
            position: absolute;
            transform: translateY(-50%)
         }

   .ama-nav-menu.is-primary,
   .ama-nav-menu.is-secondary{flex-wrap: nowrap}
      .ama-nav-menu.is-primary > li,
      .ama-nav-menu.is-secondary > li{
         flex-shrink: 0
      }

   .ama-nav-more {
      position: relative;
      cursor: pointer;
   }

   .ama-nav-rest {
      --ama-link-color: var(--ama-body-color);
      --ama-link-hover-color: var(--ama-primary-color);
      display: none;
      position: absolute;
      top: 100%;
      right: 0;
      background: #fff;
      list-style: none;
      padding: 5px 0;
      margin: 0;
      box-shadow: 0 4px 8px rgba(0,0,0,0.15);
      z-index: 1000;
      min-width: 150px;
   }

   .ama-nav-rest li {
      padding: 0 15px;
      white-space: nowrap;
   }
   .ama-nav-more:hover .ama-nav-rest,
   .ama-nav-more.active .ama-nav-rest{display: block}

   .ama-nav-menu.ama-nav-menu--js{visibility: hidden}
}
@media (max-width: 1199px){
   .h-main-mobile-nav{margin-bottom: var(--ama-offset-top-first)}
   .h-main-mobile-nav + .gutenberg-elements > *:first-child:not(.full-width),
   .h-main-mobile-nav + .gutenberg-elements > *:first-child:not(.full-width):empty + *{margin-top: 0}

   .ama-nav-menu li + li{border-top: 1px solid rgba(0, 0, 0, .05)}
   .ama-nav-menu .sub-menu-toggle{
      cursor: pointer;
      align-self: stretch;
      width: 2.375rem;
      position: relative;
      background: rgba(0, 0, 0, .05)
   }
   .ama-nav-menu .sub-menu{display: none; padding: .625rem; background-color:rgba(0, 0, 0, .05)}

   #header .offcanvas-body{padding: 0}
   #header .offcanvas-body .ama-nav-menu a{padding-left: var(--ama-offcanvas-padding-x); padding-right: var(--ama-offcanvas-padding-x)}

   .h-top{height: 3.75rem; padding: 0}
      .h-top > nav,
      .h-top > .wp-block-button{display: none!important}

   .h-main-nav{
      grid-column: full-width!important;
      height: 100vh;
      height: 100dvh;
      height: 100svh
   }
   .h-main-nav .offcanvas-body > * + .d-xl-none{border-top: 2px dashed rgba(0, 0, 0, .1); margin-top: .625rem; padding-top: .625rem}
   .h-main-nav .offcanvas-body > .d-xl-none > .wp-block-button{text-align: center; padding-left: var(--ama-offcanvas-padding-x); padding-right: var(--ama-offcanvas-padding-x)}
   .h-main-nav .offcanvas-body > .d-xl-none > * + .wp-block-button{margin-top: .625rem!important}

   .h-top > :not(.h__logo) + *{margin-left: 0}
   .h-top > :not(.h__logo) + #menu-toggle{margin-left: .625rem}

   .offcanvas-body .ama-nav-menu > li:not(.ama-nav-more){display: flex!important}
   .offcanvas-body .ama-nav-menu > .ama-nav-more{display: none!important}

   .f-inner{display: block}
   .f-inner > .f__logo + *:not(.ama-social){margin-left: 0; margin-top: 1.25rem}
   .f-inner > .ama-nav-menu > li:not(.ama-nav-more){display: block!important}
   .f-inner > .ama-nav-menu > .ama-nav-more{display: none!important}
   .f-inner > .ama-nav-menu + .ama-social{
      margin-top: calc(1.875rem - var(--ama-social-gap));
      margin-left: calc(var(--ama-social-gap) * -1)
   }

   .scroll-to-top{
      bottom: .3125rem;
      right: .3125rem
   }
}
@media (max-width: 413px){
   .h__logo svg, .f__logo svg{
      width: 13.125rem
   }
}

/*
*: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}

.single-article__meta,
.addtoany_shortcode{overflow: hidden!important}
.addtoany_shortcode > .addtoany_list{display: flex!important; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 0.375rem}
.addtoany_shortcode a{padding: 0; font-size: 2rem!important; width: 2rem!important; height: 2rem!important; overflow: hidden}
.addtoany_shortcode a,
.addtoany_shortcode .a2a_svg{display: block}
.addtoany_shortcode .a2a_svg + .a2a_label{display: none}
.a2a_svg svg{width: 2rem!important}

.addtoany_list.a2a_kit_size_32 a:not(.addtoany_special_service)>span{
   width: 2rem!important;
   height: 2rem!important;
   line-height: 2rem!important
}