@charset "UTF-8";

*{min-height: 0; min-width: 0}*,*::before,*::after{box-sizing: border-box}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}*:focus{outline:none}.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}

body{margin: 0; overflow-x: hidden; color: var(--ama-body-color); background-color: var(--ama-body-bg); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale}
#wrapper{padding-top: 0; background-color: var(--ama-wrapper-bg); overflow-x: clip}
a{color: inherit}
p, ul, ol, figure{margin: 0}
button, input, textarea, select{font: inherit; color: inherit}

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

.screen-reader-text{position: absolute!important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0}

/* =============================================================================
   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)}

.btn-close{width: 2.75rem; height: 2.75rem; padding: 0; border: 0; background: none; color: inherit; opacity: 1; box-shadow: none!important; cursor: pointer}
   .btn-close::before, .btn-close::after{width: 1.375rem; left: calc(50% - .6875rem)}

/* =============================================================================
   shared components
   ========================================================================== */
/* hand drawn arrow */
.arr{
   display: inline-block;
   flex: none;
   width: 1.3125rem;
   height: .6875rem;
   background-color: currentColor;
   -webkit-mask: url(../images/arrow-long.svg) center/contain no-repeat;
   mask: url(../images/arrow-long.svg) center/contain no-repeat;
   transition: transform .2s
}
a:hover .arr{transform: translateX(3px)}

.ico{display: block; width: 1.25rem; height: 1.25rem; flex: none}

/* kicker: label above titles, tree ring before */
.kicker,
p.is-style-kicker{
   display: inline-flex;
   align-items: center;
   gap: .5625rem;
   padding: .5rem 1rem .5rem .75rem;
   border-radius: var(--ama-radius-sm);
   background-color: var(--ama-primary-color);
   color: #fff;
   font-family: var(--ama-font-serif);
   font-style: italic;
   font-weight: 500;
   font-size: .9375rem;
   letter-spacing: .1em;
   text-transform: uppercase;
   line-height: 1
}
p.is-style-kicker{width: fit-content; justify-self: start}
   .kicker::before,
   p.is-style-kicker::before{content: ''; width: 1.0625rem; height: 1.0625rem; flex: none; background: url(../images/ring-light.svg) center/contain no-repeat}
   .kicker > span{color: var(--ama-accent-color); letter-spacing: .04em; margin-right: -1px}
   .kicker em{font-style: italic}

.kicker.is-light,
.is-dark .kicker,
.is-dark p.is-style-kicker,
.block-landing:not(.is-basic) .kicker,
.block-contact .kicker,
.cta__box .kicker,
.card-item.is-highlight .kicker{background-color: #fff; color: var(--ama-primary-color)}
   .kicker.is-light::before,
   .is-dark .kicker::before,
   .is-dark p.is-style-kicker::before,
   .block-landing:not(.is-basic) .kicker::before,
   .block-contact .kicker::before,
   .cta__box .kicker::before,
   .card-item.is-highlight .kicker::before{background-image: url(../images/ring-primary.svg)}
   .kicker.is-light > span,
   .card-item.is-highlight .kicker > span{color: var(--ama-secondary-color)}

.lead,
p.is-style-lead{font-size: var(--ama-lead-font-size); line-height: var(--ama-lead-line-height); color: var(--ama-muted-color)}

.ulink{display: inline-block; font-weight: 600; font-size: .90625rem; white-space: nowrap; text-decoration: none!important; border-bottom: 1.5px solid currentColor; padding-bottom: .25rem; transition: opacity .2s}
   .ulink:hover{opacity: .7}

/* dark sections */
.is-dark{color: #fff}
   .is-dark h1 em, .is-dark h2 em, .is-dark h3 em{color: var(--ama-accent-color)}
   .is-dark .lead, .is-dark p.is-style-lead{color: rgba(255, 255, 255, .85)}
   .is-dark .splide__arrow{border-color: #fff; color: #fff}
   .is-dark .splide__arrow--next{background-color: #fff; color: var(--ama-primary-color)}

/* placeholder in the editor */
.ama-placeholder{padding: 1.25rem; border: 1.5px dashed var(--ama-line-color); border-radius: var(--ama-radius-sm); color: var(--ama-muted-color); font-size: .875rem; text-align: center}

/* =============================================================================
   forms
   ========================================================================== */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="date"],
textarea,
select{
   display: block;
   width: 100%;
   font-family: inherit;
   font-size: var(--ama-input-font-size);
   font-weight: var(--ama-input-font-weight);
   line-height: var(--ama-input-line-height);
   color: var(--ama-input-color);
   background-color: var(--ama-input-background-color);
   border: var(--ama-input-border-width) solid var(--ama-input-border-color);
   border-radius: var(--ama-input-border-radius);
   padding: var(--ama-input-padding-y) var(--ama-input-padding-x);
   transition: border-color .2s;
   -webkit-appearance: none;
   appearance: none
}
select{padding-right: 2.5rem; cursor: pointer; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%232B4E31' stroke-width='1.5'/%3E%3C/svg%3E") right .875rem center no-repeat}
textarea{resize: vertical; min-height: 5.25rem}
input:not([type="submit"]):not([type="button"]):not([type="reset"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):focus, textarea:focus, select:focus{border-color: var(--ama-input-border-color-focus); color: var(--ama-input-color-focus); background-color: var(--ama-input-background-color-focus)}
::placeholder{color: var(--ama-input-placeholder-color); opacity: 1}
input[type="checkbox"], input[type="radio"]{accent-color: var(--ama-primary-color); width: 1.125rem; height: 1.125rem; margin: 0 .5rem 0 0; vertical-align: -.1875rem; cursor: pointer}

/* =============================================================================
   wpml
   ========================================================================== */
.wpml-ls{font-size: .875rem; line-height: 1.5em}
.wpml-ls ul{list-style: none; padding: 0; margin: 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: 2.625rem; padding: 0}
         .wpml-ls .wpml-ls-item-toggle::after{
            content: '';
            display: block;
            width: 10px;
            height: 6px;
            background: currentColor;
            margin-left: .375rem;
            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: -.75rem;
         z-index: 10;
         display: none;
         padding: .3125rem 0;
         background-color: #fff;
         color: var(--ama-ink-color);
         border-radius: var(--ama-radius-sm);
         filter: drop-shadow(0 .625rem 1.25rem rgba(0, 0, 0, .1))
      }
         .wpml-ls li > ul > li + li{margin-top: 0}
            .wpml-ls li > ul a{padding: .3125rem .75rem; min-height: 2.25rem}
            .wpml-ls li > ul a:hover{color: var(--ama-primary-color)}

/* =============================================================================
   topbar
   ========================================================================== */
.ama-topbar{position: relative; z-index: 1029; background-color: var(--ama-topbar-bgcolor); color: var(--ama-topbar-color); font-size: .84375rem}
   .topbar__inner{min-height: var(--ama-topbar-height); display: flex; flex-wrap: wrap; justify-content: center; align-items: center; column-gap: .875rem; text-align: center}
   .topbar__label{font-family: var(--ama-font-serif); font-style: italic; font-size: .9375rem; color: #fff}
   .ama-topbar a{color: #fff; font-weight: 600; text-decoration: none; border-bottom: 1px solid rgba(255, 255, 255, .6)}
   .ama-topbar a:hover{border-bottom-color: #fff}

/* =============================================================================
   header: transparent on dark tops → white wavy panel on scroll
   ========================================================================== */
#header{
   top: 0;
   color: var(--ama-header-color);
   transition: color .3s
}
.has-topbar #header{top: var(--ama-topbar-height)}

   #header > .h-bg{grid-column: full-width}
   .h-bg{
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      bottom: -4rem;
      pointer-events: none;
      opacity: 0;
      transform: translateY(-.875rem);
      transition: opacity .35s, transform .35s;
      filter: drop-shadow(0 .625rem 1.125rem rgba(20, 30, 22, .1));
      background: url(../images/wave-header.svg) bottom/100% 4rem no-repeat, linear-gradient(#fff, #fff) top/100% calc(100% - 3.9375rem) no-repeat
   }
   .h-inner{
      position: relative;
      display: flex;
      align-items: center;
      gap: .9375rem;
      height: var(--ama-header-height);
      transition: height .3s
   }

/* logo */
.h__logo,
.f__logo{display: flex; align-items: center; flex: none; color: inherit; text-decoration: none!important; transition: opacity .2s}
.h__logo:hover,
.f__logo:hover{color: inherit; opacity: .8}
   .logo-tree{width: 0; height: auto; opacity: 0; margin-right: 0; color: var(--ama-primary-color); transition: width .35s, opacity .3s, margin .35s}
   .wm{display: flex; flex-direction: column; line-height: 1}
      .wm b{font-family: var(--ama-font-sans-serif); font-weight: 800; font-size: 1.9375rem; letter-spacing: -.02em; transition: font-size .3s}
      .wm span{font-size: .53125rem; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--ama-muted-color); margin-top: .25rem; transition: color .3s}
   #header .wm span{color: rgba(255, 255, 255, .75)}

/* actions */
.h__els{display: flex; align-items: center; gap: .625rem; flex: none; margin-left: auto; font-weight: 600; font-size: .875rem}
   .h__tools{display: contents} /* mobile: icons inline next to the burger; desktop: strip above the menu */
   .h__contact{display: none}
   .h__search,
   .ama-woo-cart,
   .h__account{position: relative; display: inline-flex; align-items: center; height: 2.625rem; padding: 0; border: 0; background: none; color: inherit; cursor: pointer; text-decoration: none!important}
   .h__search .ico{width: 1.375rem; height: 1.375rem}
   /* icons + language switcher hover like the menu items: same colour, a bit lighter */
   .h__search, .ama-woo-cart, .h__account, .h__lang .wpml-ls > ul > li > a{transition: opacity .2s}
   .h__search:hover, .ama-woo-cart:hover, .h__account:hover, .h__lang .wpml-ls > ul > li > a:hover{color: inherit; opacity: .8}
   .h-cart-fragment{position: absolute; top: .25rem; right: -.625rem; min-width: 1.125rem; height: 1.125rem; padding: 0 .25rem; border-radius: .5625rem; background-color: var(--ama-accent-color); color: var(--ama-primary-color); font-size: .6875rem; font-weight: 700; line-height: 1.125rem; text-align: center}
   .h-cart-fragment.is-empty{display: none}
   .h__lang{max-width: 3.75rem; overflow: visible; transition: max-width .35s, opacity .25s, margin .35s}
   .h__phone{display: none; width: 2.5rem; height: 2.5rem; border-radius: 50%; align-items: center; justify-content: center; background-color: rgba(255, 255, 255, .16); color: inherit; transition: background-color .3s, color .3s}
      .h__phone .ico{width: 1.1875rem; height: 1.1875rem}
   .btn.h__quote{--ama-btn-padding-y: calc(.6875rem - var(--ama-btn-border-width)); --ama-btn-padding-x: calc(1.125rem - var(--ama-btn-border-width)); --ama-btn-font-size: .875rem; --ama-btn-bg: transparent; --ama-btn-border-color: rgba(255, 255, 255, .8); --ama-btn-color: #fff}

/* menu tree icon */
.menu-tree{flex: none; width: 11px; height: 14px; margin-right: .4375rem; color: var(--ama-accent-color); transition: color .3s}

/* white state (scrolled / light pages) */
#header.scroll-header,
.has-light-top #header{color: var(--ama-ink-color)}
   #header.scroll-header .h-bg,
   .has-light-top #header .h-bg{opacity: 1; transform: none}
   #header.scroll-header .h-inner{height: var(--ama-header-height-scrolled)}
   #header.scroll-header .logo-tree,
   .has-light-top #header .logo-tree{width: 1.875rem; opacity: 1; /*margin-right: .75rem*/ margin-right: .375rem}
   #header.scroll-header .wm b{font-size: 1.75rem}
   #header.scroll-header .wm span,
   .has-light-top #header .wm span{color: var(--ama-muted-color)}
   #header.scroll-header .menu-tree,
   .has-light-top #header .menu-tree{color: var(--ama-primary-color)}
   #header.scroll-header .has-tree > a,
   .has-light-top #header .has-tree > a{color: var(--ama-primary-color)}
   #header.scroll-header .h__lang{max-width: 0; opacity: 0; margin-left: -1.25rem; pointer-events: none}
   #header.scroll-header .btn.h__quote,
   .has-light-top #header .btn.h__quote{--ama-btn-bg: var(--ama-primary-color); --ama-btn-border-color: var(--ama-primary-color)}
   #header.scroll-header .h__phone,
   .has-light-top #header .h__phone{background-color: var(--ama-primary-color); color: #fff}
   #header.scroll-header .h-cart-fragment,
   .has-light-top #header .h-cart-fragment{background-color: var(--ama-primary-color); color: #fff}

/* burger */
#menu-toggle{color: currentColor; padding: 0; width: 1.75rem; height: 2.75rem; margin-right: -.125rem; border: none; background: none; position: relative; cursor: pointer}
   #menu-toggle > span{display: block; width: 100%; height: 2px; border-radius: 2px; position: absolute; top: 50%; background-color: currentColor; transform: translate(0, -50%)}
      #menu-toggle::before,
      #menu-toggle::after{content: ''; display: block; height: 2px; border-radius: 2px; position: absolute; right: 0; background-color: currentColor}
      #menu-toggle::before{top: calc(50% - 8px); width: 100%}
      #menu-toggle::after{bottom: calc(50% - 8px); width: 65%}

/* =============================================================================
   ama-nav-menu
   ========================================================================== */
.ama-nav-menu,
.ama-nav-menu ul{padding: 0; margin: 0; list-style: none}
.ama-nav-menu{font-weight: 600}
   .ama-nav-menu a{text-decoration: none!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: .75rem; height: auto}
   .ama-nav-menu .sub-menu{font-size: .9375rem; line-height: 1.25rem}

.h__nav-cta{display: none}

/* =============================================================================
   search
   ========================================================================== */
.ama-search.offcanvas-top{background-color: #fff; color: var(--ama-ink-color); border: 0; box-shadow: 0 1.25rem 2.5rem rgba(20, 30, 22, .12)}
   .ama-search .offcanvas-body{padding: 2rem 0}
   .search__inner{display: grid; grid-template-columns: 1fr auto; gap: 1rem; align-items: center}
   .ama-search form{display: grid; grid-template-columns: 1fr auto; gap: .75rem}
   .ama-search input[type="search"]{height: 3.25rem; font-size: 1.0625rem}
   .ama-search button[type="submit"]{
      height: 3.25rem;
      padding: 0 1.5rem;
      border: 0;
      border-radius: var(--ama-radius-sm);
      background-color: var(--ama-primary-color);
      color: #fff;
      font-weight: 600;
      cursor: pointer
   }

/* =============================================================================
   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: .5em;
         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{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) + h1,
*:not(.ama-block) + h2,
*:not(.ama-block) + h3{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){padding-top: var(--ama-offset-top-first)}
.gutenberg-elements > *:last-child:not(.full-width){padding-bottom: var(--ama-offset-bottom-last)}
.has-light-top #main{padding-top: var(--ama-header-height)}

/* core blocks: kicker → heading, lead */
p.is-style-kicker + h1,
p.is-style-kicker + h2,
p.is-style-kicker + h3{margin-top: 1rem!important}
h2.wp-el + p.is-style-lead{margin-top: 1.125rem}

/* list: checkmarks */
ul.is-style-checks{display: flex; flex-direction: column; gap: .625rem}
   ul.is-style-checks li{display: flex; align-items: center; gap: .875rem; padding-left: 0!important; font-weight: 500}
   ul.is-style-checks li + li{margin-top: 0!important}
   ul.is-style-checks li::before{position: static!important; width: 1.75rem!important; height: 1.75rem!important; flex: none; background: var(--ama-mint-color) url(../images/icon-check.svg) center/.75rem no-repeat!important}
   .is-dark ul.is-style-checks li::before{background-color: rgba(255, 255, 255, .14)!important; background-image: url(../images/icon-check-white.svg)!important}

/* list: tree rings with spruce separators */
ul.is-style-rings{margin-top: 1.25rem}
   ul.is-style-rings li{position: relative; padding: 1rem 0 1rem 2.875rem!important; font-size: .90625rem}
   ul.is-style-rings li + li{margin-top: 0!important}
   ul.is-style-rings li::before{top: 50%!important; width: 1.75rem!important; height: 1.75rem!important; margin-top: -.875rem; border-radius: 0!important; background: url(../images/ring-primary.svg) center/contain no-repeat!important}
   ul.is-style-rings li + li::after{content: ''; position: absolute; left: 0; right: 0; top: -.375rem; height: .75rem; background: url(../images/separator-spruce.svg) left center/auto 100% round no-repeat; opacity: .8}
   ul.is-style-rings li strong{display: block; font-size: 1.125rem}
   .is-dark ul.is-style-rings li{color: rgba(255, 255, 255, .9)}
   .is-dark ul.is-style-rings li strong{color: #fff}
   .is-dark ul.is-style-rings li::before{background-image: url(../images/ring-light.svg)!important}
   .is-dark ul.is-style-rings li + li::after{background-image: url(../images/separator-spruce-light.svg)}

/* gallery: mosaic (1 big + 4) */
.wp-block-gallery.is-style-mosaic{display: grid!important; grid-template-columns: 2fr 1fr 1fr; grid-auto-rows: 14.375rem; gap: .875rem!important}
   .wp-block-gallery.is-style-mosaic > figure.wp-block-image{width: 100%!important; height: 100%; margin: 0!important; border-radius: var(--ama-radius); overflow: hidden}
   .wp-block-gallery.is-style-mosaic > figure.wp-block-image:first-child{grid-row: span 2}
   .wp-block-gallery.is-style-mosaic > figure.wp-block-image img{width: 100%; height: 100%!important; object-fit: cover; transition: transform .5s}
   .wp-block-gallery.is-style-mosaic > figure.wp-block-image:hover img{transform: scale(1.04)}
.wp-block-gallery figure.wp-block-image{border-radius: var(--ama-radius-md); overflow: hidden}
.wp-block-image img{border-radius: var(--ama-radius-md)}

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

.wp-block-buttons{display: flex; flex-wrap: wrap; gap: var(--ama-gutter-button-x)}
.wp-block-buttons > .wp-block-button{margin: 0}

/* tables in content */
.wp-block-table table{border-collapse: collapse; font-size: .9375rem}
   .wp-block-table th{font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--ama-muted-color)}
   .wp-block-table td, .wp-block-table th{padding: .5rem .75rem .5rem 0; border-bottom: 1px solid var(--ama-line-color)}

/* =============================================================================
   section waves (mask = colour of the neighbouring section)
   ========================================================================== */
.has-wave-top::before,
.has-wave-bottom::after,
.block-landing::after,
.block-contact::before,
.block-contact::after,
.pd-story::before,
.pd-story::after,
#footer::before{
   content: '';
   position: absolute;
   left: 0;
   right: 0;
   height: var(--ama-wave-height);
   z-index: 2;
   pointer-events: none;
   background-color: var(--wave-color, #fff);
   -webkit-mask: url(../images/wave-primary-top.svg) center/100% 100% no-repeat;
   mask: url(../images/wave-primary-top.svg) center/100% 100% no-repeat
}
.has-wave-top::before,
.block-contact::before,
.pd-story::before{top: -1px}
.has-wave-bottom::after,
.block-landing::after,
.block-contact::after,
.pd-story::after{bottom: -1px; -webkit-mask-image: url(../images/wave-primary-bottom.svg); mask-image: url(../images/wave-primary-bottom.svg)}

.wave-top-white::before{--wave-color: #fff}
.wave-top-mint::before{--wave-color: var(--ama-mint-color)}
.wave-top-primary::before{--wave-color: var(--ama-primary-color)}
.wave-top-gray::before{--wave-color: var(--ama-gray-color)}
.wave-bottom-white::after{--wave-color: #fff}
.wave-bottom-mint::after{--wave-color: var(--ama-mint-color)}
.wave-bottom-primary::after{--wave-color: var(--ama-primary-color)}
.wave-bottom-gray::after{--wave-color: var(--ama-gray-color)}

/* =============================================================================
   acf blocks (common)
   ========================================================================== */
* + .ama-block,
.ama-block + *{margin-top: var(--ama-margin-top-block)}
/* anchors (#tooted, #epoks …) stop below the fixed header */
.ama-block[id]{scroll-margin-top: calc(var(--ama-header-height-scrolled) + 1.5rem)}

/* full width inside full width (e.g. single product → story section) */
.full-width > .full-width{grid-column: full-width; display: grid; grid-template-columns: inherit}

/* full width sections touching each other */
.block-bgcolor + .block-bgcolor,
.block-bgcolor + .block-contact,
.block-contact + .block-bgcolor,
.block-landing + .block-bgcolor.has-wave-top,
.block-hero + .block-bgcolor.has-wave-top{margin-top: 0}

/* block header */
.block__header{margin-bottom: 3rem}
   .block__header .block__heading > * + *{margin-top: 1rem}
   .block__header .block__heading > .lead{margin-top: .75rem; max-width: 40rem}
   .block__header .block__intro .lead{margin-top: 0}

.block__header.is-stacked{display: flex; justify-content: space-between; align-items: flex-end; gap: 2rem}
.block__header.is-split{display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem 4.5rem; align-items: end}
   .block__intro{display: flex; justify-content: space-between; align-items: flex-end; gap: 2rem}
   .block__intro > .lead:not(:only-child){max-width: 23.75rem}
   .block__header.is-split > .block__actions{grid-column: 1 / -1; justify-content: flex-end}
.block__header.is-center{display: flex; flex-direction: column; align-items: center; text-align: center; gap: 1rem}
   .block__header.is-center .block__heading{display: flex; flex-direction: column; align-items: center}
   .block__header.is-center .lead{margin-left: auto; margin-right: auto}
.block__header.is-numbered{display: grid; grid-template-columns: auto 1fr auto; gap: 1.75rem; align-items: center}
   .block__number{width: 5.375rem; height: 5.375rem; display: grid; place-items: center; background: url(../images/ring-thin-primary.svg) center/contain no-repeat; font-family: var(--ama-font-serif); font-weight: 600; font-size: 1.625rem; color: var(--ama-primary-color)}
   .block__header.is-numbered h2{line-height: 1.12}
   .block__header.is-numbered .lead{font-size: 1rem}
.block__header.is-bignumber{display: flex; justify-content: space-between; align-items: flex-end; gap: 2rem}
   .is-bignumber .block__heading{display: flex; align-items: center; gap: 1.375rem}
   .block__bignum{flex: none; display: flex; flex-direction: column; align-items: flex-start; font-family: var(--ama-font-serif); font-size: 6rem; line-height: .8; font-weight: 600; letter-spacing: -.04em; color: var(--ama-primary-color); margin: 0!important}
      .block__bignum small{font-size: 1rem; font-style: italic; font-weight: 500; letter-spacing: .06em; color: var(--ama-secondary-color); margin: 0 0 .375rem .25rem}
   .block__bigtext{flex: 1 1 0; min-width: 0}
   .block__header .block__bigtext > * + *{margin-top: .375rem}
   .is-bignumber .kicker{padding: 0; background: none!important; color: var(--ama-secondary-color)!important; font-size: .875rem; font-weight: 400}
   .is-bignumber .kicker::before{display: none}
   .is-bignumber h2{font-size: 1.5rem!important; line-height: 1.2!important}

.block__actions{display: flex; align-items: center; gap: .75rem; flex: none}
   .block__actions .ulink + .splide__arrows{margin-left: 1rem}

/* block footer */
.block__footer{margin-top: 2.75rem; display: flex; flex-direction: column; gap: 1.625rem}
   .block__footer.is-center{align-items: center; text-align: center}
   .block__footer.is-center .wp-block-buttons{justify-content: center}
   .block__footer.is-left{align-items: flex-start}
   .block__note{position: relative; width: 100%; padding: 1.25rem 1.625rem 1.25rem 4.375rem; border-radius: var(--ama-radius); background-color: var(--card-bg, var(--ama-mint-color)); font-size: .9375rem; line-height: 1.6; text-align: left}
      .block__note::before{content: ''; position: absolute; left: 1.625rem; top: 1.3125rem; width: 1.75rem; height: 1.75rem; background: url(../images/ring-primary.svg) center/contain no-repeat}

/* card background follows the section */
:root{--card-bg: var(--ama-mint-color); --card-hover-bg: var(--ama-mint-hover-color)}
.bg-mint{--card-bg: #fff; --card-hover-bg: #fff}

/* splide arrows (grouped; overrides the absolute arrows in splide-core.min.css) */
.splide__arrows,
.splide__arrows:not(.progress-arrows){display: flex; gap: .75rem; position: static; top: auto; left: auto; width: auto; transform: none; pointer-events: auto}
.splide__arrow{
   position: static;
   top: auto;
   width: var(--ama-splide-width);
   height: var(--ama-splide-height);
   flex: none;
   padding: 0;
   display: flex;
   align-items: center;
   justify-content: center;
   border: var(--ama-splide-border-width) solid var(--ama-splide-border-color);
   border-radius: var(--ama-splide-border-radius);
   background-color: var(--ama-splide-bgcolor);
   color: var(--ama-splide-color);
   cursor: pointer;
   transition: opacity .2s
}
   .splide__arrow--next{background-color: var(--ama-ink-color); color: #fff}
   .splide__arrow--prev .arr{transform: scaleX(-1)}
   .splide__arrow:hover{opacity: .75}
   .splide__arrow:disabled{opacity: .3; cursor: default}
.splide__list{padding: 0!important; margin: 0!important; list-style: none}

/* sliders bleed to the right edge */
.is-style-slider .splide__track{overflow: visible}
.is-style-slider .splide__slide{width: auto}

/* chips / filter bar (works filters, shop categories) */
.pp-bar{display: flex; justify-content: space-between; align-items: center; gap: 1.25rem; flex-wrap: wrap; padding-bottom: 1.25rem; margin-bottom: 1.5rem; border-bottom: 1px solid var(--ama-line-color)}
.pp-chips{display: flex; flex-wrap: wrap; gap: .5rem}
   .pp-chips > a,
   .pp-chips > button{
      display: flex;
      align-items: center;
      gap: .5rem;
      height: 2.75rem;
      padding: 0 1.125rem;
      border: 1.5px solid var(--ama-line-color);
      border-radius: var(--ama-radius-sm);
      background-color: #fff;
      font: inherit;
      font-weight: 600;
      font-size: .90625rem;
      color: var(--ama-primary-color);
      text-decoration: none!important;
      white-space: nowrap;
      cursor: pointer;
      transition: border-color .2s, background-color .2s, color .2s
   }
   .pp-chips > a:hover,
   .pp-chips > button:hover{border-color: var(--ama-primary-color)}
   .pp-chips small{font-size: .75rem; color: var(--ama-muted-color)}
   .pp-chips > .on{background-color: var(--ama-primary-color); border-color: var(--ama-primary-color); color: #fff}
   .pp-chips > .on small{color: var(--ama-accent-color)}
.pp-empty{padding: 2.5rem 0; text-align: center; color: var(--ama-muted-color)}
.more{display: flex; justify-content: center; margin-top: 2.5rem}

/* slider card (products slider, works slider) */
.scard{flex: none; width: 17.875rem; height: 100%; display: flex; flex-direction: column; background-color: #fff; border-radius: var(--ama-radius); overflow: hidden; text-decoration: none!important; color: inherit}
   .scard-img{position: relative; display: block; overflow: hidden}
      .scard-img img{display: block; width: 100%; height: 11.875rem; object-fit: cover; transition: transform .5s}
      .scard:hover .scard-img img{transform: scale(1.04)}
   .ptag{position: absolute; left: 1.5rem; top: 1.375rem; background-color: var(--ama-primary-color); color: #fff; font-size: .6875rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; padding: .375rem .6875rem; border-radius: var(--ama-radius-sm)}
   .scard-b{flex: 1; display: flex; flex-direction: column; gap: .625rem; padding: 1.125rem 1.125rem 1.25rem}
      .scard-b b{font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.3125rem; line-height: 1.2}
      .scard-b small{font-size: .84375rem; color: var(--ama-muted-color)}
   .scard-f{display: flex; justify-content: space-between; align-items: center; margin-top: auto; padding-top: .875rem; border-top: 1px solid var(--ama-line-color); font-weight: 600; font-size: .875rem; color: var(--ama-primary-color)}
   .go{width: 2.5rem; height: 2.5rem; border-radius: var(--ama-radius-sm); border: 1.5px solid var(--ama-primary-color); display: flex; align-items: center; justify-content: center; transition: background-color .2s, color .2s}
   .scard:hover .go{background-color: var(--ama-primary-color); color: #fff}
   .scard:hover .go .arr{transform: none}

/* =============================================================================
   landing (page header) — is-default | is-basic | is-stylized (+ block-hero)
   ========================================================================== */
.block-landing{--ama-wave-height: 4rem; position: relative; overflow: hidden}
   .block-landing .kicker{margin-bottom: 1rem}
   .block-landing .kicker + h1{margin-top: 0}
   .block-landing.is-basic .kicker,
   .block-landing.is-stylized .kicker{align-self: flex-start}
   .landing__meta{font-size: .875rem; margin-bottom: .5rem}

/* default: green, tree-ring illustration, centered */
.block-landing.is-default{
   background-color: var(--ama-primary-color);
   color: #fff;
   text-align: center;
   /*padding: calc(var(--ama-header-height) + 3.375rem) 0 5.75rem;*/
   padding: calc(var(--ama-header-height) + 2.125rem) 0 7rem
}
   .block-landing.is-default::before{content: ''; position: absolute; inset: 0; opacity: .8; pointer-events: none; background: url(../images/pattern-white.svg) center/1920px auto; -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 30%, #000 62%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0, #000 30%, #000 62%, transparent 100%)}
   .block-landing.is-default > .block__body{position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center}
   .block-landing.is-default h1{max-width: 56.25rem; margin: 0 0 .875rem}
   .block-landing.is-default h1 em{color: var(--ama-accent-color)}
   .block-landing.is-default .landing__desc{font-size: 1.0625rem; line-height: 1.6; color: rgba(255, 255, 255, .88); max-width: 40rem}
   .block-landing.is-default .landing__meta{color: rgba(255, 255, 255, .75)}
   .block-landing.is-default .wp-block-buttons{justify-content: center; margin-top: 1.5rem}
/* page hero + quicklinks */
.block-landing.is-default + .block-quicklinks{
   margin-top: 0;
   padding: 1.5rem 0 4.375rem;
   filter: none;
   background:
      url(../images/wave-quicklinks-bottom.svg)
         bottom / 100% 3.75rem no-repeat,
      linear-gradient(#fff, #fff)
         top / 100% calc(100% - 3.6875rem) no-repeat;
}

@media (max-width: 767px){
   .block-landing.is-default + .block-quicklinks{
      padding: 1.25rem 0 2.75rem;
      background:
         url(../images/wave-quicklinks-bottom.svg)
            bottom / 100% 2.125rem no-repeat,
         linear-gradient(#fff, #fff)
            top / 100% calc(100% - 2.0625rem) no-repeat;
   }
}
/* basic: plain title in the content column (light header) */
.block-landing.is-basic{padding-top: 3rem}
   .block-landing.is-basic::after{display: none}
   .block-landing.is-basic h1{max-width: 56.25rem; margin: 0 0 .875rem}
   .block-landing.is-basic .landing__desc{font-size: 1.125rem; line-height: 1.6; color: var(--ama-muted-color); max-width: 46rem}
   .block-landing.is-basic .landing__meta{color: var(--ama-muted-color)}
   .block-landing.is-basic .wp-block-buttons{margin-top: 1.5rem}

/* stylized: background image (uses the block-hero styles below) */
   .block-landing.is-stylized .ama-crumbs p{justify-content: flex-start}
   .block-landing.is-stylized .ama-crumbs{margin-bottom: 1.25rem}

/* breadcrumbs */
.ama-crumbs{margin-bottom: .75rem; font-size: .8125rem; color: rgba(255, 255, 255, .7)}
   .ama-crumbs p{display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem; margin: 0}
   .ama-crumbs a{text-decoration: none!important; transition: color .2s}
   .ama-crumbs a:hover{color: #fff}
   .ama-crumbs .last,
   .ama-crumbs p > span:last-child:not(.separator){font-weight: 600; color: #fff}
   .ama-crumbs .separator{opacity: .7}
.ama-crumbs.is-dark{color: var(--ama-muted-color)}
   .ama-crumbs.is-dark p{justify-content: flex-start}
   .ama-crumbs.is-dark a:hover{color: var(--ama-primary-color)}
   .ama-crumbs.is-dark .last,
   .ama-crumbs.is-dark p > span:last-child:not(.separator){color: var(--ama-ink-color)}

/* =============================================================================
   block-bgcolor (section)
   ========================================================================== */
.block-bgcolor{position: relative; overflow: hidden; padding: var(--ama-section-padding-y) 0}
   .block-bgcolor.has-wave-top{padding-top: calc(var(--ama-wave-height) + 2rem)}
   .block-bgcolor.has-wave-bottom{padding-bottom: calc(var(--ama-wave-height) + 2rem)}
   .block-bgcolor > *{position: relative; z-index: 1}

.bg-white{background-color: #fff}
.bg-mint{background-color: var(--ama-mint-color)}
.bg-gray{background-color: var(--ama-gray-color)}
.bg-primary{background-color: var(--ama-primary-color)}

.deco-trees-right{background-image: url(../images/trees-decor.svg); background-position: right 0 bottom -2.25rem; background-size: 31.25rem auto; background-repeat: no-repeat}
.deco-trees-left{background-image: url(../images/trees-decor.svg); background-position: left 0 bottom -2.25rem; background-size: 31.25rem auto; background-repeat: no-repeat}
.bg-primary.deco-trees-right,
.bg-primary.deco-trees-left{background-image: url(../images/trees-decor-white.svg); background-size: 56.25rem auto}
.deco-pattern{background-image: url(../images/pattern-primary.svg); background-position: center; background-size: 1920px auto}
.bg-primary.deco-pattern{background-image: url(../images/pattern-white.svg)}
.deco-pattern-right{background-image: url(../images/pattern-primary.svg); background-position: right -20rem center; background-size: 1920px auto; background-repeat: no-repeat}
.bg-primary.deco-pattern-right{background-image: url(../images/pattern-white.svg)}

/* =============================================================================
   block-hero
   ========================================================================== */
.block-hero{position: relative; overflow: hidden; color: #fff}
   .block-hero::before{content: ''; position: absolute; inset: 0; z-index: 1; background: linear-gradient(180deg, rgba(12, 16, 12, .55) 0%, rgba(12, 16, 12, .1) 35%, rgba(12, 16, 12, .25) 60%, rgba(12, 16, 12, .78) 100%)}
   .block-hero > .hero__bg,
   .block-hero > .hero__stamp,
   .block-ticker > .tk{grid-column: full-width}
   .hero__bg{position: absolute; inset: 0; width: 100%!important; height: 100%!important; object-fit: cover; object-position: 60% 40%}
   /* min-height (not height): a long title / narrow screen grows the hero instead of running under the header */
   .hero__inner{position: relative; z-index: 2; min-height: clamp(35rem, calc(100vh - 11.875rem), 48.75rem); display: flex; flex-direction: column; justify-content: flex-end; padding-top: calc(var(--ama-header-height) + 1.875rem); padding-bottom: 10rem}
   .block-hero h1{font-size: clamp(2.75rem, 1.4rem + 4.3vw, 4.75rem); line-height: 1; margin-bottom: 1.5rem}
   .block-hero h1 em{color: #D9E8DC}
   .hero__row{display: flex; justify-content: space-between; align-items: flex-end; gap: 1.5rem}
   .hero__text{font-size: 1.1875rem; line-height: 1.55; margin-bottom: 1.375rem; color: rgba(255, 255, 255, .92); max-width: 40rem}
   .hero__offer{display: flex; flex-wrap: wrap; align-items: center; row-gap: .5rem; margin: 0 0 1.875rem -2.375rem; padding: 0; list-style: none; max-width: 57.375rem; clip-path: inset(-20px -20px -20px 38px)}
      .hero__offer li{flex: none; display: inline-flex; align-items: center; font-size: .8125rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: #EAF2EC; text-shadow: 0 1px 10px rgba(0, 0, 0, .5); white-space: nowrap}
      .hero__offer li::before{content: ''; flex: none; width: .625rem; height: .8125rem; margin: 0 .875rem; background: url(../images/tree-light.svg) center/contain no-repeat; opacity: .9}
   .block-hero .wp-block-buttons{margin-top: 0}
   .hero__note{font-family: var(--ama-font-hand); font-weight: 600; font-size: 1.75rem; line-height: 1; transform: rotate(-3deg); opacity: .9; text-shadow: 0 1px 6px rgba(0, 0, 0, .25); white-space: nowrap}
   .hero__stamp{position: absolute; z-index: 2; right: var(--content-edge); top: 10.625rem; width: 10rem; height: 10rem; transform: rotate(-9deg)}
   @media (max-width: 760px){ .hero__stamp{display: none} } /* would sit on the title */
   @media (max-width: 760px){ .hero__stamp{display: none} } /* would sit on the title */

/* =============================================================================
   block-quicklinks (white wavy box over the hero)
   ========================================================================== */
.block-quicklinks{
   position: relative;
   z-index: 4;
   padding: 5.625rem 0 4.375rem;
   filter: drop-shadow(0 1.125rem 1.375rem rgba(20, 30, 22, .13));
   background: url(../images/wave-quicklinks-top.svg) top/100% 5.625rem no-repeat, url(../images/wave-quicklinks-bottom.svg) bottom/100% 3.75rem no-repeat, linear-gradient(#fff, #fff) 0 5.5625rem/100% calc(100% - 9.25rem) no-repeat
}
.block-hero + .block-quicklinks{margin-top: -8.125rem}
   .block-quicklinks .block__header{margin-bottom: 0; padding: .375rem 0 .5rem}
   .block-quicklinks > .ql__inner > .block__body{display: grid; grid-template-columns: repeat(4, 1fr); align-items: center}
   .ql-item{display: flex; gap: 1rem; align-items: center; padding: 1.375rem 1.375rem 1.375rem 0; text-decoration: none!important; color: inherit}
   .ql-item + .ql-item{padding-left: 1.375rem; border-left: 1px solid #D5DED7}
      .ql-item img{width: 5.75rem; height: 4.625rem; flex: none; object-fit: cover; border-radius: 1.625rem .25rem 1.625rem .25rem}
      .ql-item__txt{flex: 1; min-width: 0}
      .ql-item__title{display: flex; align-items: center; gap: .5rem; font-size: 1.09375rem; margin: .25rem 0 .1875rem; white-space: nowrap}
         .ql-item__title .arr{width: 1.1875rem; height: .625rem; color: var(--ama-primary-color)}
      .ql-item__sub{display: block; font-size: .84375rem; color: var(--ama-muted-color)}

/* =============================================================================
   block-ticker
   ========================================================================== */
.block-ticker{
   position: relative;
   z-index: 1;
   height: 16.25rem;
   overflow: hidden;
   background: url(../images/wave-ticker-lines.svg) top/100% 6.875rem no-repeat, url(../images/wave-ticker-bottom.svg) bottom/100% 10.625rem no-repeat, linear-gradient(var(--ama-primary-color), var(--ama-primary-color)) top/100% calc(100% - 7.5rem) no-repeat
}
.block-quicklinks + .block-ticker{margin-top: -3.875rem}
   .tk{position: absolute; left: 0; right: 0; top: 2.75rem; bottom: 1.875rem; display: flex; align-items: center; overflow: hidden}
   .tk-t{display: flex; width: max-content; animation: tk 80s linear infinite; will-change: transform}
   .tk:hover .tk-t{animation-play-state: paused}
   .tk-g{display: flex; flex: none; align-items: center; gap: .91em; padding-right: .91em; white-space: nowrap; font-size: 2.75rem; line-height: 1.2; color: var(--ama-cream-color)}
      .tk-caps, .tk-outline{font-weight: 800; text-transform: uppercase; letter-spacing: .03em}
      .tk-outline{color: transparent; -webkit-text-stroke: 1.3px var(--ama-cream-color)}
      .tk-italic{font-family: var(--ama-font-serif); font-style: italic; font-weight: 400; font-size: 1.227em}
      .tk-serif{font-family: var(--ama-font-serif); font-weight: 600; font-size: 1.136em; color: var(--ama-accent-color)}
      .tk-g img{display: block; width: auto}
      .tk-tree{height: 1.09em}
      .tk-trees{height: 1em}
      .tk-ring{height: 1.045em}
      .tk-ring.sm{height: .91em}
@keyframes tk{to{transform: translate3d(-50%, 0, 0)}}

/* =============================================================================
   block-cards
   ========================================================================== */
.block-cards > .block__body{display: grid; grid-template-columns: repeat(var(--cards-columns, 3), minmax(0, 1fr)); gap: 1.25rem; align-items: stretch}

/* default */
.block-cards .card-item{display: flex; flex-direction: column; background-color: var(--card-bg); border-radius: var(--ama-radius); overflow: hidden; text-decoration: none!important; color: inherit; transition: background-color .2s}
   .block-cards a.card-item:hover{background-color: var(--card-hover-bg)}
   .card__img{position: relative; display: block; height: 13.125rem; overflow: hidden}
      .card__img img{display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s}
      .card-item:hover .card__img img{transform: scale(1.04)}
   .card__tag{position: absolute; left: 1.25rem; bottom: 1rem; padding: .375rem .6875rem; border-radius: var(--ama-radius-sm); background-color: #fff; color: var(--ama-primary-color); font-size: .71875rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase}
   .card__body{flex: 1; display: flex; flex-direction: column; padding: 1.5rem 1.625rem 1.625rem}
      .block-cards .card__body h3{font-size: 1.375rem; line-height: 1.2}
      .card__txt{display: block; margin: .5rem 0 1.125rem; font-size: .90625rem; line-height: 1.6; color: var(--ama-muted-color)}
      .card__more{margin-top: auto; display: flex; align-items: center; gap: .5rem; font-weight: 600; font-size: .875rem; color: var(--ama-primary-color)}

/* cta card */
.block-cards .card-item.is-cta{justify-content: center; align-items: flex-start; padding: 2.125rem 1.875rem; background: var(--ama-primary-color) url(../images/pattern-white.svg) center/1300px auto; color: #fff}
   .card-item.is-cta h3{font-size: 1.75rem; margin: 1rem 0 .5rem}
   .card-item.is-cta h3 em{color: var(--ama-accent-color)}
   .card-item.is-cta p{margin-bottom: 1.375rem; font-size: .9375rem; color: rgba(255, 255, 255, .85)}
   .card-item.is-cta .kicker{margin-bottom: 0}

/* audience */
.block-cards.is-style-audience .card__img{height: 14.375rem}
   .block-cards.is-style-audience .card__img .kicker{position: absolute; left: 1.375rem; bottom: 1.125rem; padding-left: .875rem}
   .block-cards.is-style-audience .card__img .kicker::before{display: none}
   .block-cards.is-style-audience .card__body{padding: 1.75rem 1.875rem 1.875rem}
   .block-cards.is-style-audience h3{font-size: 1.75rem; line-height: 1.1}
   .card__sub{font-size: .875rem; color: var(--ama-muted-color); margin: .5rem 0 1.25rem}
   .card__listlabel{font-size: .71875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--ama-secondary-color); margin-bottom: .75rem}
   .card__list{display: flex; flex-direction: column; gap: .625rem; padding: 0; margin: 0; list-style: none}
      .card__list li{display: flex; align-items: center; gap: .875rem; font-size: .9375rem; font-weight: 500}
      .card__list li::before{content: ''; width: 1.75rem; height: 1.75rem; flex: none; border-radius: 50%; background: #fff url(../images/icon-check.svg) center/.75rem no-repeat}
   .card__cta{margin-top: auto; padding-top: 1.625rem; display: flex; align-items: center; gap: 1.125rem; flex-wrap: wrap}
   .card__cta > *{margin: 0!important}
   .card__link{font-weight: 600; font-size: .875rem; text-decoration: none!important; border-bottom: 1.5px solid currentColor; padding-bottom: .125rem}
   .card-item.is-highlight{background-color: var(--ama-primary-color)!important; color: #fff}
      .card-item.is-highlight .card__sub{color: rgba(255, 255, 255, .75)}
      .card-item.is-highlight .card__listlabel{color: var(--ama-accent-color)}
      .card-item.is-highlight .card__list li::before{background-color: rgba(255, 255, 255, .14); background-image: url(../images/icon-check-white.svg)}

/* compact */
.block-cards.is-style-compact .card-item,
.cards__rest .card-item{position: relative}
   .block-cards.is-style-compact .card__img,
   .cards__rest .card__img{height: 9.375rem}
   .block-cards.is-style-compact .card__body,
   .cards__rest .card__body{gap: .375rem; padding: 1rem 1.125rem 1.25rem}
      .block-cards.is-style-compact .card__body b,
      .cards__rest .card__body b{font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.25rem; line-height: 1.2; padding-right: 1.875rem}
      .block-cards.is-style-compact .card__body small,
      .cards__rest .card__body small{font-size: .84375rem; line-height: 1.5; color: var(--ama-muted-color)}
   .card__go{position: absolute; right: 1.125rem; top: 10.375rem; color: var(--ama-primary-color)}

/* featured: big card + 2×2 */
.block-cards.is-style-featured > .block__body{grid-template-columns: 1fr 1.15fr}
   .card-item.is-featured{position: relative; min-height: 33.75rem; color: #fff!important}
      .card-item.is-featured > img{position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .6s}
      .card-item.is-featured:hover > img{transform: scale(1.04)}
      .card-item.is-featured::after{content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(14, 24, 16, .92) 0%, rgba(14, 24, 16, .4) 50%, rgba(14, 24, 16, .05) 80%)}
      .card-item.is-featured .card__body{position: absolute; left: 2rem; right: 2rem; bottom: 2rem; z-index: 1; padding: 0; flex: none; align-items: flex-start; gap: .625rem}
      .card-item.is-featured .card__tag{position: static; padding: 0; background: none; color: var(--ama-accent-color); font-size: .71875rem; letter-spacing: .16em}
      .card-item.is-featured .card__body b{font-family: var(--ama-font-serif); font-weight: 500; font-size: 2.25rem; line-height: 1.05}
      .card-item.is-featured .card__body small{font-size: .9375rem; line-height: 1.55; color: rgba(255, 255, 255, .86); max-width: 23.75rem; margin-bottom: .5rem}
   .cards__rest{display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem}

/* benefits */
.block-cards.is-style-benefits .card-item{flex-direction: row; gap: 1rem; align-items: flex-start; padding: 1.5rem 1.625rem}
   .card__icon{width: 3rem; height: 3rem; flex: none; border-radius: 50%; display: flex; align-items: center; justify-content: center; background-color: var(--ama-mint-color); color: var(--ama-primary-color)}
   .bg-mint .card__icon{background-color: var(--ama-mint-color)}
   .card__icon svg{width: 1.25rem; height: 1.625rem}
   .block-cards.is-style-benefits .card__body{padding: 0}
      .block-cards.is-style-benefits .card__body b{display: block; font-size: 1.0625rem; margin: .125rem 0 .375rem}
      .block-cards.is-style-benefits .card__body small{display: block; font-size: .90625rem; line-height: 1.55; color: var(--ama-muted-color)}

/* =============================================================================
   block-products (slider part, cards are in ama-woocommerce.css)
   ========================================================================== */
.block-products.is-style-slider .block__header,
.block-works.is-style-slider .block__header{margin-bottom: 2.25rem}

/* =============================================================================
   block-works
   ========================================================================== */
.works-grid{display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem}
.work-item{position: relative; margin: 0; border-radius: var(--ama-radius); overflow: hidden; background-color: var(--ama-mint-color)}
.work-item[hidden]{display: none}
   .work-item > a{display: block; cursor: zoom-in}
   .work-item.is-video > a{cursor: pointer}
   .work-item img{display: block; width: 100%; object-fit: cover; transition: transform .5s}
   .work-item:not(.works-masonry .work-item) img{aspect-ratio: 4/3}
   .work-item:hover img{transform: scale(1.04)}
   .work-item figcaption{position: absolute; left: 0; right: 0; bottom: 0; display: flex; flex-direction: column; gap: .125rem; padding: 2.5rem 1.375rem 1.125rem; background: linear-gradient(180deg, rgba(12, 18, 13, 0), rgba(12, 18, 13, .78)); color: #fff; pointer-events: none}
      .work-item figcaption small{font-size: .6875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--ama-accent-color)}
      .work-item figcaption b{font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.25rem; line-height: 1.2}
.work-play{position: absolute; left: 50%; top: 50%; width: 4.5rem; height: 4.5rem; margin: -2.25rem 0 0 -2.25rem; border-radius: 50%; display: flex; align-items: center; justify-content: center; background-color: rgba(255, 255, 255, .92); color: var(--ama-primary-color); box-shadow: 0 .625rem 1.875rem rgba(0, 0, 0, .25); pointer-events: none; transition: transform .25s, background-color .25s}
   .work-play .ico{width: 1.5rem; height: 1.5rem; margin-left: .1875rem}
   .work-item:hover .work-play{transform: scale(1.08); background-color: #fff}

.works-masonry{columns: 3; column-gap: 1rem}
   .works-masonry .work-item{break-inside: avoid; margin: 0 0 1rem; border-radius: var(--ama-radius-md)}
   .works-masonry .work-item img{height: auto} /* keeps the width / height attribute ratio (needed for lazy sizes="auto" images) */
   .works-masonry .work-item:hover img{transform: scale(1.03)}
   .works-masonry .work-item figcaption{padding: 2.25rem 1.25rem 1rem}
      .works-masonry .work-item figcaption b{font-size: 1.125rem}

.block-works.is-style-slider .scard{width: 21.25rem; background-color: var(--card-bg)}
   .block-works.is-style-slider .scard-img img{height: 15.625rem}
   .block-works.is-style-slider .scard .work-play{width: 3.5rem; height: 3.5rem; margin: -1.75rem 0 0 -1.75rem}

/* =============================================================================
   block-workshop (Praegu töökojas)
   ========================================================================== */
.wip-grid{display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem}
.wip-card{display: flex; flex-direction: column; width: 100%; height: 100%; overflow: hidden; border-radius: var(--ama-radius-md); background-color: var(--card-bg)}
   .wip-card__media{position: relative; aspect-ratio: 4/3; overflow: hidden; background-color: var(--ama-line-color)}
      .wip-card__media img,
      .wip-card__video{display: block; width: 100%; height: 100%; object-fit: cover}
   .wip-badge{position: absolute; left: .875rem; top: .875rem; z-index: 2; padding: .375rem .625rem; border-radius: var(--ama-radius-sm); background-color: var(--ama-primary-color); color: #fff; font-size: .65625rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; line-height: 1.2}
   .wip-card .work-play{pointer-events: auto}
   .wip-card__body{flex: 1; display: flex; flex-direction: column; gap: .375rem; padding: 1.25rem 1.375rem 1.375rem}
      .wip-card__wood{font-size: .6875rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--ama-secondary-color)}
      .wip-card__title{margin: 0!important; font-size: 1.375rem; line-height: 1.2}
      .wip-card__desc{margin: 0; font-size: .875rem; line-height: 1.5; color: var(--ama-muted-color)}
   .wip-stage{display: flex; flex-direction: column; gap: .5rem; margin: .625rem 0 .5rem; font-size: .84375rem}
      .wip-stage__label b{font-weight: 600; color: var(--ama-primary-color)}
      .wip-stage__bar{display: block; height: .3125rem; border-radius: 1rem; background-color: rgba(43, 78, 49, .14); overflow: hidden}
         .wip-stage__bar i{display: block; height: 100%; border-radius: inherit; background-color: var(--ama-primary-color)}
   .wip-card__link{display: flex; justify-content: space-between; align-items: center; margin-top: auto; padding-top: .875rem; border-top: 1px solid var(--ama-line-color); font-weight: 600; font-size: .875rem; color: var(--ama-primary-color); text-decoration: none!important}
      .wip-card__link:hover .go{background-color: var(--ama-primary-color); color: #fff}

.block-workshop.splide .splide__slide{display: flex}

@media (max-width: 980px){
   .wip-grid{grid-template-columns: repeat(2, minmax(0, 1fr))}
}
@media (max-width: 640px){
   .wip-grid{grid-template-columns: 1fr}
}

/* =============================================================================
   block-steps
   ========================================================================== */
.block-steps > .block__body,
.steps__box > .block__body{display: grid; grid-template-columns: repeat(var(--steps-columns, 4), minmax(0, 1fr)); gap: 1.75rem; padding: 0; margin: 0; list-style: none}
.steps__box{background-color: var(--card-bg); border-radius: var(--ama-radius); padding: 2.75rem 3rem}
   .steps__box .block__header{margin-bottom: 1.875rem}
   .step-item{position: relative; display: flex; flex-direction: column; gap: .5rem}
   .step__num{width: 3.625rem; height: 3.625rem; display: grid; place-items: center; margin-bottom: .375rem; background: url(../images/ring-thin-primary.svg) center/contain no-repeat; font-family: var(--ama-font-serif); font-weight: 600; font-size: 1.125rem; line-height: 1; color: var(--ama-primary-color)}
   .step-item h3{font-size: 1.3125rem; line-height: 1.25; margin: 0!important}
   .step-item p{font-size: .90625rem; line-height: 1.55; color: var(--ama-muted-color)}

.block-steps.is-style-cards > .block__body{gap: 1.25rem}
   .block-steps.is-style-cards .step-item{padding: 1.875rem 1.875rem 2rem; border-radius: var(--ama-radius); background-color: var(--card-bg); gap: .5rem}
   .block-steps.is-style-cards .step__num{margin-bottom: .625rem}
   .block-steps.is-style-cards .step-item h3{font-size: 1.375rem}
   .block-steps.is-style-cards .step-item p{font-size: .9375rem; line-height: 1.6}

/* =============================================================================
   block-compare (before / after)
   ========================================================================== */
.block-compare > .block__body{display: grid; grid-template-columns: 1fr 4rem 1fr; align-items: center}
   .block-compare figure{position: relative; margin: 0}
   .block-compare figure a{display: block; border-radius: var(--ama-radius); overflow: hidden}
   .block-compare img{display: block; width: 100%; aspect-ratio: 3/2; object-fit: cover}
   .block-compare figcaption{position: absolute; left: 1.375rem; bottom: 1.25rem; padding: .5rem .75rem; border-radius: var(--ama-radius-sm); background-color: #fff; color: var(--ama-primary-color); font-weight: 700; font-size: .75rem; letter-spacing: .12em; text-transform: uppercase}
   .compare__arrow{justify-self: center; width: 3rem; height: 3rem; display: grid; place-items: center; border-radius: var(--ama-radius-sm); background-color: var(--ama-primary-color); color: #fff}

/* =============================================================================
   block-locations
   ========================================================================== */
.block-locations > .block__body{
   display: grid;
   grid-template-columns: 1fr;
   gap: 1.25rem;
}

   .location-card{
      display: flex;
      flex-direction: column;
      min-width: 0;
      overflow: hidden;
      background: var(--ama-mint-color);
      border-radius: var(--ama-radius);
      color: var(--ama-ink-color);
   }

      .location-card__info{
         flex: 1;
         display: flex;
         flex-direction: column;
         padding: 1.75rem 2rem;
         background: var(--ama-mint-color) url(../images/pattern-primary.svg) 30% 60% / 1000px auto no-repeat;
      }

         .location-card__tree{
            width: 1.5rem;
            height: auto;
            margin-bottom: .625rem;
            color: var(--ama-primary-color);
         }

         .location-card h2{
            margin: 0 0 1rem;
            font-size: var(--ama-h3-font-size);
         }

         .location-card__content{
            margin: -.375rem 0 1rem;
            font-size: .9375rem;
            line-height: 1.55;
            color: var(--ama-muted-color);
         }

            .location-card__content p{
               margin: 0 0 .5rem;
            }

            .location-card__content > :last-child{
               margin-bottom: 0;
            }

            .location-card__content strong{
               color: var(--ama-ink-color);
            }

         .location-card .location-card__list{
            display: grid;
            gap: .5rem;
            margin: 0;
            padding: 0;
            list-style: none;
            font-size: .9375rem;
            line-height: 1.45;
         }

         .location-card .location-card__list + .location-card__list{
            margin-top: .5rem;
         }

            .location-card .location-card__list li{
               display: flex;
               align-items: flex-start;
               gap: .625rem;
            }

               .location-card .location-card__list .ico{
                  flex: none;
                  width: 1.125rem;
                  height: 1.125rem;
                  margin-top: .125rem;
                  color: var(--ama-primary-color);
               }

               .location-card .location-card__list a{
                  color: inherit;
                  text-decoration: none;
                  overflow-wrap: anywhere;
               }

               .location-card .location-card__list a:hover{
                  color: var(--ama-primary-color);
                  text-decoration: underline;
               }

      .location-card__map{
         background: var(--ama-mint-hover-color);
      }

         .location-card__map iframe{
            display: block;
            width: 100%;
            height: 15rem;
            border: 0;
         }

@media (min-width: 768px){
   .location-card.has-map{
      flex-direction: row;
   }

      .location-card.has-map .location-card__info{
         flex: 1 1 50%;
      }

      .location-card.has-map .location-card__map{
         flex: 1 1 50%;
      }

         .location-card.has-map .location-card__map iframe{
            height: 100%;
            min-height: 16rem;
         }
}

@media (max-width: 767px){
   .location-card__info{
      padding: 1.375rem 1.25rem;
   }
}
/* =============================================================================
   Quote
   ========================================================================== */
.block-quote .quote-card{
   margin: 0;
   padding: 2rem 2.25rem;
   border-radius: var(--ama-radius-sm);
   background: var(--ama-mint-color);
   color: var(--ama-ink-color);
}

   .quote-card__mark{
      display: block;
      height: 2.5rem;
      margin-bottom: 1rem;
      font-family: var(--ama-font-serif);
      font-size: 5rem;
      line-height: 1;
      color: var(--ama-secondary-color);
   }

   .block-quote .quote-card__text{
      margin: 0;
      padding: 0;
      border: 0;
      background: none;
      font-family: var(--ama-font-serif);
      font-size: clamp(1.125rem, 1rem + .4vw, 1.375rem);
      font-style: normal;
      line-height: 1.6;
      color: inherit;
   }

      .quote-card__text > p{
         margin: 0 0 1rem;
      }

      .quote-card__text > p:last-child{
         margin-bottom: 0;
      }

   .quote-card__author{
      display: flex;
      flex-direction: column;
      gap: .25rem;
      margin-top: 1.25rem;
      font-size: .875rem;
      font-style: normal;
   }

      .quote-card__author b{
         font-weight: 600;
         color: var(--ama-primary-color);
      }

      .quote-card__author span{
         color: var(--ama-muted-color);
      }

      * + .block-quote, .block-quote + *{margin-top: 1.875rem}
      
@media (max-width: 767px){
   .block-quote .quote-card{
      padding: 1.5rem 1.25rem;
   }
}
/* =============================================================================
   block-pricelist
   ========================================================================== */
.block-pricelist > .block__body{display: flex; flex-direction: column; gap: .75rem}
.pg{overflow: hidden; border: 1.5px solid var(--ama-line-color); border-radius: var(--ama-radius); background-color: #fff; transition: border-color .2s}
.pg[open]{border-color: var(--ama-primary-color)}
   .pg summary{display: flex; align-items: center; gap: 1.125rem; padding: 1.5rem 2.25rem; cursor: pointer; list-style: none; transition: background-color .2s, color .2s}
   .pg summary::-webkit-details-marker{display: none}
   .pg summary:hover{background-color: var(--ama-mint-color)}
   .pg[open] summary{background-color: var(--ama-primary-color); color: #fff}
   .pg-n{font-family: var(--ama-font-serif); font-style: italic; font-size: .9375rem; letter-spacing: .1em; color: var(--ama-secondary-color)}
   .pg-t{display: flex; flex-direction: column; min-width: 0}
      .pg-t b{font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.75rem; line-height: 1.1}
      .pg-t small{margin-top: .25rem; font-size: .84375rem; color: var(--ama-muted-color)}
   .pg-from{margin-left: auto; white-space: nowrap; font-size: .875rem; font-weight: 600; color: var(--ama-secondary-color)}
      .pg-from b{font-family: var(--ama-font-serif); font-size: 1.5rem; color: var(--ama-primary-color)}
   .pg[open] .pg-n, .pg[open] .pg-t small, .pg[open] .pg-from{color: var(--ama-accent-color)}
   .pg[open] .pg-from b{color: #fff}
   .pg-ic{width: 2.5rem; height: 2.5rem; flex: none; border: 1.5px solid var(--ama-primary-color); border-radius: var(--ama-radius-sm); background: linear-gradient(var(--ama-primary-color), var(--ama-primary-color)) center/13px 1.5px no-repeat, linear-gradient(var(--ama-primary-color), var(--ama-primary-color)) center/1.5px 13px no-repeat}
   .pg-from + .pg-ic{margin-left: 0}
   .pg-t + .pg-ic{margin-left: auto}
   .pg[open] .pg-ic{border-color: #fff; background: linear-gradient(#fff, #fff) center/13px 1.5px no-repeat}
   .pg-items{padding: .375rem 2.25rem .875rem}
   .pl-item{display: grid; grid-template-columns: 1fr auto; gap: .75rem 3rem; align-items: start; padding: 1.5rem 0; border-top: 1px solid var(--ama-line-color)}
   .pg-items .pl-item:first-child{border-top: 0}
      .pl-t h3{font-size: 1.3125rem; line-height: 1.25}
      .pl-t > p{max-width: 40rem; margin-top: .375rem; font-size: .9375rem; line-height: 1.6; color: var(--ama-muted-color)}
      .pl-price{text-align: right; white-space: nowrap; font-size: .9375rem; font-weight: 600; color: var(--ama-secondary-color)}
         .pl-price b{font-family: var(--ama-font-serif); font-weight: 600; font-size: 1.875rem; letter-spacing: -.02em; color: var(--ama-primary-color)}
      .pl-price.is-ask{font-family: var(--ama-font-serif); font-style: italic; font-weight: 500; font-size: 1.0625rem; padding-top: .375rem}
      .pl-sizes{display: grid; grid-template-columns: repeat(2, minmax(0, 13.75rem)); gap: .25rem 2rem; margin: .75rem 0 0; padding: 0; list-style: none; font-size: .875rem}
         .pl-sizes li{display: flex; justify-content: space-between; gap: .75rem; padding: .3125rem 0; border-bottom: 1px dashed var(--ama-line-color)}
         .pl-sizes span{color: var(--ama-muted-color)}
         .pl-sizes b{font-weight: 700; color: var(--ama-ink-color)}
      .pl-table-wrap{overflow-x: auto}
      .pl-table{width: 100%; max-width: 32.5rem; margin-top: 1rem; border-collapse: collapse; font-size: .875rem}
         .pl-table th{padding: .375rem 0; text-align: left; font-size: .6875rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--ama-muted-color)}
         .pl-table td{padding: .4375rem 0; border-top: 1px solid var(--ama-line-color)}
         .pl-table th:last-child, .pl-table td:last-child{text-align: right}
         .pl-table td:last-child{font-weight: 700; color: var(--ama-primary-color)}
.block-pricelist .block__footer.is-center{align-items: flex-start; text-align: left}
.block-pricelist .block__note{padding: 0; background: none; font-size: .84375rem; color: var(--ama-muted-color)}
   .block-pricelist .block__note::before{display: none}

/* =============================================================================
   block-contact (green section)
   ========================================================================== */
.block-contact{position: relative; overflow: hidden; background: var(--ama-primary-color) url(../images/trees-decor-white.svg) right -3.75rem bottom -4.375rem/56.25rem auto no-repeat; color: #fff; padding: 8.75rem 0 8.125rem}
   .contact__inner{position: relative; z-index: 3}
   .block-contact .block__header{margin-bottom: 2.75rem}
   .block-contact .block__header h2 em{color: var(--ama-accent-color)}
   .block-contact .lead{color: rgba(255, 255, 255, .82)}
   .contact__card{display: grid; grid-template-columns: .8fr 1.2fr; background-color: #fff; color: var(--ama-ink-color); border-radius: var(--ama-radius); overflow: hidden; box-shadow: 0 1.875rem 3.75rem rgba(0, 0, 0, .18)}
   .contact__info{display: flex; flex-direction: column; padding: 2.25rem; background: var(--ama-mint-color) url(../images/pattern-primary.svg) 30% 60%/1000px auto no-repeat}
      .contact__tree{width: 1.875rem; height: auto; margin-bottom: .875rem; color: var(--ama-primary-color)}
      .contact__name{font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.625rem}
      .contact__info small{font-size: .875rem; color: var(--ama-muted-color)}
      .contact__info .ama-contacts{margin-top: 1.5rem}
   .contact__form{display: flex; flex-direction: column; gap: .875rem; padding: 2.25rem 2.5rem}
   .qf-title{font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.625rem}

/* contact list */
.ama-contacts{display: flex; flex-direction: column; gap: .875rem; padding: 0; margin: 0; list-style: none; font-size: .96875rem}
   .ama-contacts li{display: flex; align-items: flex-start; gap: .75rem}
   .ama-contacts .ico{width: 1.125rem; height: 1.125rem; color: var(--ama-primary-color); margin-top: .125rem}
   .ama-contacts a{text-decoration: none}
   .ama-contacts a:hover{color: var(--ama-primary-color); text-decoration: underline}
.ama-contacts.is-plain{gap: .75rem; font-size: inherit}
.ama-contacts.is-inline{flex-direction: row; flex-wrap: wrap; gap: .25rem 1rem}

/* contact form 7: qform markup (see README) */
.qf-row{display: grid; grid-template-columns: 1fr 1fr; gap: .75rem}
.qf-f{display: flex; flex-direction: column; gap: .375rem; margin: 0; font-size: .8125rem; font-weight: 600; color: var(--ama-muted-color)}
   .qf-f .wpcf7-form-control-wrap{display: block}
.wpcf7-form > * + *{margin-top: .875rem}
.qf-foot{display: flex; gap: .75rem; align-items: stretch}
.qf-file{position: relative; flex: 1; display: flex; align-items: center; gap: .75rem; padding: 0 .875rem; min-height: 3.25rem; border: 1.5px dashed #B9CBBE; border-radius: var(--ama-radius-sm); background-color: var(--ama-mint-color); cursor: pointer; transition: border-color .2s; margin: 0}
   .qf-file:hover{border-color: var(--ama-primary-color)}
   .qf-file .wpcf7-form-control-wrap{position: absolute; inset: 0}
   .qf-file input[type="file"]{position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer}
   .qf-ico{width: 1.25rem; height: 1.25rem; flex: none; background-color: var(--ama-primary-color); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5l-8.6 8.6a5.5 5.5 0 0 1-7.8-7.8l8.6-8.6a3.7 3.7 0 0 1 5.2 5.2l-8.6 8.6a1.8 1.8 0 0 1-2.6-2.6l7.9-7.9'/%3E%3C/svg%3E") center/contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11.5l-8.6 8.6a5.5 5.5 0 0 1-7.8-7.8l8.6-8.6a3.7 3.7 0 0 1 5.2 5.2l-8.6 8.6a1.8 1.8 0 0 1-2.6-2.6l7.9-7.9'/%3E%3C/svg%3E") center/contain no-repeat}
   .qf-file-t{display: flex; flex-direction: column; min-width: 0; pointer-events: none}
      .qf-file-t b{font-size: .90625rem; color: var(--ama-primary-color)}
      .qf-file-t small{font-size: .78125rem; color: var(--ama-muted-color); white-space: nowrap; overflow: hidden; text-overflow: ellipsis}
.qf-foot .wpcf7-submit,
.qf-foot p{flex: none; margin: 0}
.wpcf7-submit{padding-right: calc(var(--ama-btn-padding-x) + 2.0625rem); background-image: url(../images/arrow-long-white.svg); background-repeat: no-repeat; background-position: right var(--ama-btn-padding-x) center; background-size: 1.3125rem .6875rem}
.wpcf7 form{position: relative}
.wpcf7-not-valid-tip{font-size: .8125rem; font-weight: 500; color: #B4382A; margin-top: .25rem}
.wpcf7 form .wpcf7-response-output{margin: 1rem 0 0; padding: .75rem 1rem; border-radius: var(--ama-radius-sm); font-size: .875rem; border: 1.5px solid var(--ama-line-color)}
.wpcf7 form.sent .wpcf7-response-output{border-color: var(--ama-success-color); background-color: var(--ama-mint-color)}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output{border-color: #E4B4AE}

/* =============================================================================
   block-newsletter
   ========================================================================== */
.block-newsletter{display: grid; grid-template-columns: 1.2fr 1fr; gap: 4rem; align-items: end}
   .block-newsletter .block__header{margin-bottom: 0}
   .block-newsletter .lead{font-size: .9375rem}
.nl-form{display: flex; align-items: stretch; border-bottom: 1.5px solid var(--ama-ink-color)}
   .nl-form .wpcf7-form-control-wrap{flex: 1}
   .nl-form input[type="email"]{height: 3.5rem; border: 0; border-radius: 0; background: transparent; padding: 0; font-size: 1rem}
   .nl-form .wpcf7-submit{--ama-btn-bg: transparent; --ama-btn-border-color: transparent; --ama-btn-color: var(--ama-primary-color); --ama-btn-padding-x: 0; padding-right: 2.25rem; font-weight: 700; background-position: right center; background-image: url(../images/arrow-long-green.svg)}
   .nl-form label{position: absolute; left: -9999px}
   .nl-form > *{margin: 0!important}
   .nl-form .wpcf7-form-control-wrap > .wpcf7-form-control{height: 3.5rem; border: 0!important; border-radius: 0!important; background: transparent!important; padding: 0!important; font-size: 1rem}
.contact__form .wpcf7-form-control-wrap > textarea.wpcf7-form-control{min-height: 5.25rem; height: auto; max-height: none; resize: vertical}
.qf-foot > *,
.qf-row > *,
.qf-f > .wpcf7-form-control-wrap{margin: 0!important}

/* =============================================================================
   block-cta
   ========================================================================== */
.cta__box{display: flex; justify-content: space-between; align-items: center; gap: 1.875rem; padding: 2.125rem 2.5rem; border-radius: var(--ama-radius); background: var(--ama-primary-color) url(../images/pattern-white.svg) center/1400px auto; color: #fff}
   .cta__box .block__header{margin: 0}
   .cta__box .block__header h2{font-size: 1.875rem!important; line-height: 1.15!important}
   .cta__box .block__header h2 em{color: var(--ama-accent-color)}
   .cta__box .lead{font-size: .9375rem; color: rgba(255, 255, 255, .85); margin-top: .375rem!important}
   .cta__box .block__footer{margin: 0; flex: none}

/* =============================================================================
   block-chips
   ========================================================================== */
.block-chips{display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; font-size: .875rem; color: var(--ama-muted-color)}
* + .block-chips{margin-top: 1.375rem}
   .block-chips b{margin-right: .375rem; font-weight: 600; color: var(--ama-ink-color)}
   .block-chips span{padding: .4375rem .875rem; border: 1.5px solid var(--ama-line-color); border-radius: var(--ama-radius-sm); font-family: var(--ama-font-serif); font-size: 1rem; color: var(--ama-primary-color)}

/* =============================================================================
   block-faqs
   ========================================================================== */
.block-faqs .accordion{border-top: 1px solid var(--ama-line-color)}
   .block-faqs .accordion-item{max-width: none; margin-left: 0; margin-right: 0; font-size: inherit; line-height: inherit; border: 0; border-bottom: 1px solid var(--ama-line-color); border-radius: 0!important; background: none}
   .block-faqs .accordion-button{
      position: relative;
      display: flex;
      align-items: center;
      width: 100%;
      padding: 1.5rem 3.75rem 1.5rem 0;
      border: 0;
      border-radius: 0!important;
      background: none!important;
      box-shadow: none!important;
      color: inherit!important;
      text-align: left;
      cursor: pointer
   }
   .block-faqs .accordion-button::after{display: none}
   .block-faqs .accordion-name{font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.3125rem; line-height: 1.3}
   .block-faqs .accordion-toggle{position: absolute; right: 0; top: 50%; width: 2.5rem; height: 2.5rem; margin-top: -1.25rem; border: 1.5px solid var(--ama-primary-color); border-radius: var(--ama-radius-sm); background: linear-gradient(var(--ama-primary-color), var(--ama-primary-color)) center/13px 1.5px no-repeat, linear-gradient(var(--ama-primary-color), var(--ama-primary-color)) center/1.5px 13px no-repeat; transition: background-size .2s, background-color .2s}
   .block-faqs .accordion-button:hover .accordion-toggle{background-color: var(--ama-mint-color)}
   .block-faqs .accordion-button:not(.collapsed) .accordion-toggle{background-size: 13px 1.5px, 1.5px 0}
   .block-faqs .collapsing{transition: height .22s cubic-bezier(.4, 0, .2, 1)} /* quicker than Bootstrap's .35s */
   .block-faqs .accordion-body{padding: 0 3.75rem 1.5rem 0; font-size: .96875rem; line-height: 1.65; color: var(--ama-muted-color)}
      .block-faqs .accordion-body > * + *{margin-top: 1rem}

/* =============================================================================
   block-posts
   ========================================================================== */
.block-posts:not(.is-style-slider) > .block__body{display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem}
.post-item{display: flex; flex-direction: column; gap: .875rem; text-decoration: none!important; color: inherit}
   .post-item .item__thumb{display: block; border-radius: var(--ama-radius); overflow: hidden; background-color: var(--ama-mint-color)}
      .post-item .item__thumb img{display: block; width: 100%; height: 15rem; object-fit: cover; transition: transform .5s}
      .post-item:hover .item__thumb img{transform: scale(1.04)}
   .item__cat{font-size: .75rem; letter-spacing: .14em; font-weight: 600; color: var(--ama-secondary-color); text-transform: uppercase}
   .item__title{font-family: var(--ama-font-serif); font-size: 1.4375rem; line-height: 1.2; font-weight: 500}
   .item__more{display: flex; align-items: center; gap: .5rem; font-weight: 600; font-size: .875rem; color: var(--ama-primary-color)}
.block-posts.is-style-slider .splide__arrows{margin-top: 1.5rem; justify-content: flex-end}
.block-empty{text-align: center}

/* =============================================================================
   block-stats
   ========================================================================== */
.block-stats > .block__body{display: grid; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: 1.25rem}
   .stat-item{padding: 1.75rem; border-radius: var(--ama-radius); background-color: var(--card-bg)}
   .stat-item .is-value{font-family: var(--ama-font-serif); font-weight: 600; font-size: 3rem; line-height: 1; color: var(--ama-primary-color)}
   .stat-item .is-label{margin-top: .5rem; font-size: .9375rem; color: var(--ama-muted-color)}

/* =============================================================================
   block-txtmedia
   ========================================================================== */
.block-txtmedia{
   --content-column: 1 / 6;
   --content-order: 0;
   --media-column: 7 / -1
}
.block-txtmedia.reverse-order{
   --content-column: 8 / -1;
   --content-order: 1;
   --media-column: 1 / 7
}
   .block-txtmedia > .block__body{
      display: grid;
      grid-template-columns: repeat(12, 1fr);
      gap: var(--ama-gutter-double-x);
      align-items: center
   }
      .block-txtmedia .body__content{grid-column: var(--content-column); order: var(--content-order)}
      .block-txtmedia .body__media{grid-column: var(--media-column)}

.block-txtmedia img{display: block; margin: 0; width: 100%}
.block-txtmedia .splide img,
.block-txtmedia .video-container{border-radius: var(--ama-radius); overflow: hidden}
.block-txtmedia .body__media .splide__arrows{position: absolute; right: 1.25rem; bottom: 1.25rem; z-index: 2}
.block-txtmedia .splide__arrow--prev{background-color: #fff}

/* mosaic: 6 numbered photos */
.block-txtmedia.is-type-mosaic{--content-column: 1 / 6; --media-column: 6 / -1}
.block-txtmedia.is-type-mosaic.reverse-order{--content-column: 8 / -1; --media-column: 1 / 8}
.mosaic{display: grid; grid-template-columns: repeat(3, 1fr); gap: .75rem; padding: 0; margin: 0; list-style: none}
   .mosaic__item{position: relative; height: 12.25rem; border-radius: var(--ama-radius); overflow: hidden}
   .mosaic__item a{display: block; height: 100%}
   .mosaic__item img{width: 100%; height: 100%!important; object-fit: cover}
   .mosaic__item::after{content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(10, 18, 12, .75), rgba(10, 18, 12, 0) 55%); pointer-events: none}
   .mosaic__num{position: absolute; left: .75rem; top: .75rem; z-index: 1; width: 3.25rem; height: 3.25rem; display: grid; place-items: center; background: url(../images/ring-thin-white.svg) center/contain no-repeat; filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .45)); font-family: var(--ama-font-serif); font-weight: 600; font-size: 1rem; line-height: 1; color: #fff; text-shadow: 0 1px 6px rgba(0, 0, 0, .6); pointer-events: none}
   .mosaic__item > b{position: absolute; left: .875rem; right: .625rem; bottom: .75rem; z-index: 1; font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.125rem; color: #fff; pointer-events: none}
.block-txtmedia.is-type-mosaic .body__content > .wp-block-buttons{margin-top: 1.875rem}
.block-txtmedia .body__content > p:not([class]){font-size: 1.0625rem; line-height: 1.6}
.is-dark .block-txtmedia .body__content > p:not([class]){color: rgba(255, 255, 255, .94)}

/* =============================================================================
   footer
   ========================================================================== */
#footer{
   --ama-wave-height: 5.625rem;
   --wave-color: #fff;
   position: relative;
   overflow: hidden;
   padding-top: var(--ama-footer-padding-top);
   background: var(--ama-footer-bgcolor) url(../images/trees-decor.svg) right -1.875rem bottom -2.125rem/27.5rem auto no-repeat;
   color: var(--ama-footer-color);
   font-size: .90625rem
}
#footer::before{-webkit-mask-image: url(../images/wave-footer-top.svg); mask-image: url(../images/wave-footer-top.svg)}
   .f-inner{position: relative; z-index: 3; display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.2fr; gap: 2.5rem; padding-bottom: var(--ama-footer-padding-bottom)}
   .f-brand .f__logo{color: var(--ama-ink-color)}
   .f-brand .logo-tree{width: 2.75rem; opacity: 1; margin-right: 1rem}
   .f-brand .wm b{font-size: 2.375rem}
   .f-brand .wm span{font-size: .59375rem}
   .f-brand > p{font-size: .90625rem; line-height: 1.6; color: var(--ama-muted-color); margin: 1.375rem 0; max-width: 20rem}
   .f-col{display: flex; flex-direction: column; align-items: flex-start; gap: .75rem}
   .f-title{font-family: var(--ama-font-serif); font-weight: 500; font-size: 1.125rem; margin-bottom: .25rem}
   .f-menu{display: flex; flex-direction: column; gap: .75rem; padding: 0; margin: 0; list-style: none}
      .f-menu a,
      #footer .ama-contacts a{text-decoration: none!important; transition: color .2s}
      .f-menu a:hover,
      #footer .ama-contacts a:hover{color: var(--ama-primary-color)}
   #footer .ama-contacts span{line-height: 1.5}
   .f-bar{position: relative; z-index: 3; display: flex; justify-content: space-between; gap: 1.25rem; padding: 1.75rem 0 calc(1.75rem + env(safe-area-inset-bottom)); font-size: .78125rem; color: var(--ama-muted-color)}
   .f-bar::before{content: ''; position: absolute; left: 0; right: 0; top: -.6875rem; height: 1.375rem; background: url(../images/separator-spruce.svg) left center/auto 100% round no-repeat}
   .f-bar p{display: flex; flex-wrap: wrap; gap: .25rem 1.75rem}
   .ama-dev a{text-decoration: none}
   .ama-dev a:hover{color: var(--ama-primary-color)}

/* social */
.ama-social{margin: calc(var(--ama-social-gap) * -1)}
   .ama-social a{border: 1.5px solid #C9D6CC; transition: color .2s, background-color .2s, border-color .2s}
   .ama-social a:hover{border-color: var(--ama-social-hover-bgcolor)}
   .ama-social a > svg{width: 1rem; height: 1rem}

/* =============================================================================
   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){
   /* the header uses the wider breakout column, spacing grows with the screen:
      7+ menu items still fit at 1200px and get room from 1440px up */
   #header > .h-inner{grid-column: breakout}
   .h-inner{gap: clamp(1rem, 10vw - 6.5rem, 2.5rem)}
   .ama-nav-menu > li{flex: none} /* never squeeze items on top of each other */
   .h__els{gap: clamp(.875rem, 2.5vw - 1rem, 1.25rem)}
   .ama-woo-cart{margin-right: .375rem} /* room for the count badge */

   /* strip above the menu: contacts left, search · cart · language right — stays (a bit lower) when scrolled,
      so the menu row has the whole width for the menu items */
   #header{padding-top: var(--ama-header-top); transition: color .3s, padding .3s}
   #header.scroll-header{padding-top: var(--ama-header-top-scrolled)}
   .h-inner{height: calc(var(--ama-header-height) - var(--ama-header-top))}
   #header.scroll-header .h-inner{height: calc(var(--ama-header-height-scrolled) - var(--ama-header-top-scrolled))}
   .h__tools{position: absolute; z-index: 3; left: 0; right: 0; bottom: 100%; height: var(--ama-header-top); display: flex; align-items: center; justify-content: flex-end; gap: 1.25rem; border-bottom: 1px solid rgba(255, 255, 255, .2); font-size: .8125rem; transition: height .3s, border-color .3s}
   #header.scroll-header .h__tools{height: var(--ama-header-top-scrolled)}
   #header.scroll-header .h__tools,
   .has-light-top #header .h__tools{border-bottom-color: var(--ama-line-color)}
   .h__contact{display: flex; align-items: center; gap: 1.5rem; margin-right: auto; font-weight: 500}
      .h__contact a{display: inline-flex; align-items: center; gap: .4375rem; color: inherit; text-decoration: none; opacity: .85; transition: opacity .2s}
      .h__contact a:hover{color: inherit; opacity: 1}
      .h__contact .ico{width: .9375rem; height: .9375rem}
   .h__tools .h__search,
   .h__tools .ama-woo-cart{height: 100%}
   .h__tools .h__search .ico,
   .h__tools .ama-woo-cart .ico{width: 1.1875rem; height: 1.1875rem}
   .h__tools .h-cart-fragment{top: 50%; margin-top: -1.0625rem}
   .h__tools .h__lang{font-size: .8125rem}
   #header.scroll-header .h__lang{max-width: 3.75rem; opacity: 1; margin-left: 0; pointer-events: auto} /* the strip stays, so does the language */
   .h__nav{flex: 1}
   .h__nav > .offcanvas-body{justify-content: center}

   .ama-nav-menu{
      padding: 0;
      gap: .625rem clamp(.625rem, 7.5vw - 5rem, 1.75rem);
      display: flex;
      flex-wrap: nowrap;
      justify-content: center;
      font-size: clamp(.78125rem, .8333vw + .15625rem, .90625rem);
      white-space: nowrap
   }
   .ama-nav-menu .has-submenu{position: relative}
   .ama-nav-menu a{display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; transition: opacity .2s}
   .ama-nav-menu > li > a{min-height: 2.5rem}
   .ama-nav-menu > li > a:hover{color: inherit; opacity: .8}
   .ama-nav-menu > li[class*="current"] > a{box-shadow: inset 0 -1.5px 0 currentColor}

   .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-wrapper{
      position: absolute;
      width: max-content;
      max-width: 20rem;
      min-width: 100%;
      background-color: #fff;
      color: var(--ama-ink-color);
      border-radius: var(--ama-radius-sm);
      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 .sub-menu a:hover{color: var(--ama-primary-color)}

   .ama-nav-menu > li > .sub-menu-wrapper{top: 100%; left: 50%; transform: scale(.6) translateX(-50%)}
   .ama-nav-menu .sub-menu-wrapper .sub-menu{top: -.3125rem; left: 100%; transform: scale(.6)}

   .ama-nav-menu li:hover > .sub-menu-wrapper{opacity: 1; pointer-events: all}
   .ama-nav-menu > li:hover > .sub-menu-wrapper{transform: scale(1) translateX(-50%)}
   .ama-nav-menu .sub-menu > li:hover > .sub-menu-wrapper{transform: scale(1)}
}
@media (min-width: 1200px) and (max-width: 1279px){
   /* scrolled header on small laptops: the tree logo takes room, so the wordmark and button get a bit smaller */
   #header.scroll-header .wm b{font-size: 1.5rem}
   .btn.h__quote{--ama-btn-padding-x: calc(.875rem - var(--ama-btn-border-width))}
}

/* mobile menu: full screen green panel */
@media (max-width: 1199px){
   .h__logo{margin-right: auto}
   .h-inner{gap: 1.375rem}

   .h__nav.offcanvas-xl{
      --ama-offcanvas-width: 100%;
      width: 100%;
      border: 0;
      background: var(--ama-primary-color) url(../images/pattern-white.svg) center/1920px auto;
      color: #fff;
      padding: 1rem 1.25rem 2rem;
      overflow-y: auto;
      overscroll-behavior: contain;
      transition: transform .35s cubic-bezier(.22, .61, .36, 1);
      will-change: transform /* own layer: the patterned panel slides without repainting */
   }
   .h__nav .offcanvas-header{flex: none; padding: 0; min-height: 3.5rem; border: 0; display: flex; justify-content: space-between; align-items: center}
      #header .h__nav .offcanvas-header .h__logo{color: #fff}
      #header .h__nav .offcanvas-header .logo-tree{width: 1.75rem; opacity: 1; margin-right: .75rem; color: var(--ama-accent-color)}
      #header .h__nav .offcanvas-header .wm b{font-size: 1.625rem}
      #header .h__nav .offcanvas-header .wm span{font-size: .53125rem; letter-spacing: .2em; color: rgba(255, 255, 255, .7)!important}
      .h__nav .btn-close{color: #fff; margin-right: -.5rem}
   .h__nav .offcanvas-body{flex: 1 0 auto; display: flex; flex-direction: column; padding: 0; overflow: visible}
   .h__nav nav{margin: 2.25rem 0 2.5rem}

   .ama-nav-menu{counter-reset: mnav}
   .ama-nav-menu > li{border-bottom: 1px solid rgba(255, 255, 255, .14)}
   .ama-nav-menu > li > a{display: flex; align-items: baseline; gap: .875rem; padding: 1rem 0; font-family: var(--ama-font-serif); font-weight: 500; font-size: 2rem; line-height: 1.1; color: #fff!important}
   .ama-nav-menu > li > a::before{counter-increment: mnav; content: counter(mnav, lower-roman) "."; font-style: italic; font-size: .8125rem; letter-spacing: .1em; color: var(--ama-accent-color); width: 1.875rem; flex: none}
   .ama-nav-menu .menu-tree{display: none}
   .ama-nav-menu .has-submenu{display: grid; grid-template-columns: 1fr auto; align-items: center}
      .ama-nav-menu .has-submenu > .sub-menu-wrapper{grid-column: 1 / -1; display: none; padding: 0 0 1rem 2.75rem}
      .ama-nav-menu .sub-menu a{display: block; padding: .375rem 0; font-size: 1.0625rem; color: rgba(255, 255, 255, .85)}
   .ama-nav-menu .sub-menu-toggle{cursor: pointer; width: 2.75rem; height: 2.75rem; border: 1.5px solid rgba(255, 255, 255, .3); border-radius: var(--ama-radius-sm); color: #fff}
   .ama-nav-menu .sub-menu-toggle.active > svg{transform: rotate(180deg)}

   .h__nav-cta{margin-top: auto; display: flex; flex-direction: column; align-items: flex-start; gap: 1rem; font-size: .875rem; color: rgba(255, 255, 255, .75)}
      .h__nav-cta > *, .h__nav-cta .wp-block-button{margin: 0!important}
      .h__nav-cta a{color: inherit; text-decoration: none}
      .h__nav-cta a:hover{color: #fff}
      .h__nav-lang{display: none; gap: .5rem}
         .h__nav-lang a{display: inline-flex; align-items: center; justify-content: center; min-width: 2.75rem; height: 2.375rem; padding: 0 .625rem; border: 1.5px solid rgba(255, 255, 255, .3); border-radius: var(--ama-radius-sm); font-size: .8125rem; font-weight: 600; letter-spacing: .08em; color: #fff!important; transition: border-color .2s, background-color .2s}
         .h__nav-lang a:hover{border-color: rgba(255, 255, 255, .7)}
         .h__nav-lang a.is-current{background-color: #fff; border-color: #fff; color: var(--ama-primary-color)!important}
}

@media (max-width: 1100px){
   .hero__stamp{width: 8.125rem; height: 8.125rem; top: 9.375rem}
}
@media (max-height: 800px) and (min-width: 641px){
   .block-hero h1{font-size: 3.875rem; margin-bottom: 1.125rem}
   .hero__text{margin-bottom: 1rem}
   .hero__offer{margin-bottom: 1.375rem}
}
@media (max-height: 700px) and (min-width: 641px){
   .block-hero h1{font-size: 3.375rem}
   .hero__text{font-size: 1rem}
   .hero__offer{display: none}
}

@media (min-width: 981px) and (max-width: 1240px){
   .block-quicklinks > .ql__inner > .block__body{grid-template-columns: 1fr 1fr}
   .ql-item:nth-child(odd){border-left: 0; padding-left: 0}
   .ql-item:nth-child(n+3){border-top: 1px solid #D5DED7}
}

/* tablet */
@media (max-width: 980px){
   /* heading on its own row, link + slider arrows below it */
   .block__header.is-stacked,
   .block__header.is-bignumber{flex-direction: column; align-items: stretch; gap: 1.25rem}
      .block__header.is-stacked .block__actions,
      .block__header.is-bignumber .block__actions{justify-content: space-between}
   .block__header.is-split{grid-template-columns: 1fr; gap: 1.125rem}
   .block__header.is-numbered{grid-template-columns: auto 1fr; gap: 1.25rem}
      .block__header.is-numbered .block__actions{grid-column: 2; justify-self: start}

   .block-quicklinks > .ql__inner > .block__body{grid-template-columns: 1fr}
   .ql-item{padding: 1rem 0}
   .ql-item + .ql-item{border-left: 0; border-top: 1px solid #D5DED7; padding-left: 0}

   .block-cards > .block__body{grid-template-columns: repeat(min(var(--cards-columns, 3), 2), minmax(0, 1fr))}
   .block-cards.is-style-audience > .block__body,
   .block-cards.is-style-benefits > .block__body,
   .block-cards.is-style-featured > .block__body{grid-template-columns: 1fr}
   .block-cards.is-style-audience > .block__body{max-width: 38.75rem}
   .card-item.is-featured{min-height: 26.25rem}

   .block-steps > .block__body,
   .steps__box > .block__body{grid-template-columns: repeat(min(var(--steps-columns, 4), 2), minmax(0, 1fr)); row-gap: 1.75rem}
   .block-steps.is-style-cards > .block__body{grid-template-columns: 1fr}

   .works-grid{grid-template-columns: 1fr 1fr}
   .works-masonry{columns: 2}

   .block-posts:not(.is-style-slider) > .block__body{grid-template-columns: 1fr 1fr}
   .block-posts:not(.is-style-slider) .post-item:nth-child(3){display: none}

   .block-txtmedia > .block__body{grid-template-columns: 1fr; gap: 3rem}
   .block-txtmedia .body__content,
   .block-txtmedia .body__media{grid-column: 1 / -1!important; order: 0!important; margin: 0!important}

   .contact__card{grid-template-columns: 1fr}
   .block-newsletter{grid-template-columns: 1fr; gap: 1.75rem}
   .cta__box{flex-direction: column; align-items: flex-start}

   .wp-block-gallery.is-style-mosaic{grid-template-columns: 1fr 1fr; grid-auto-rows: 11.25rem}
   .wp-block-gallery.is-style-mosaic > figure.wp-block-image:first-child{grid-column: 1 / -1; grid-row: auto; height: 16.25rem}

   .f-inner{grid-template-columns: 1fr 1fr; row-gap: 2.5rem}
}

/* mobile */
@media (max-width: 640px){
   .kicker, p.is-style-kicker{font-size: .8125rem; padding: .4375rem .75rem .4375rem .625rem}
   .block__header{margin-bottom: 2rem}
   .block__header.is-stacked,
   .block__header.is-bignumber{gap: 1rem}
   .block__intro{flex-direction: column; align-items: flex-start; gap: 1rem}
   .block__header.is-numbered{grid-template-columns: 3rem 1fr; gap: .375rem .875rem; align-items: start}
   .block__number{width: 3rem; height: 3rem; font-size: 1rem; margin-top: .125rem}
   .is-bignumber .block__heading{gap: .875rem}
   .block__bignum{font-size: 4rem}
   .is-bignumber h2{font-size: 1.25rem!important}
   .block__note{padding: 1rem 1.125rem 1rem 3.625rem; font-size: .875rem}
   .block__note::before{left: 1.125rem; top: 1.0625rem}

   /* topbar + header */
   .topbar__inner{column-gap: .5rem; font-size: .78125rem}
   .topbar__label{font-size: .84375rem}
   .h-inner{gap: .875rem}
   #header .wm b{font-size: 1.5625rem}
   #header .wm span{font-size: .46875rem; letter-spacing: .16em}
   .h__els{gap: .75rem}
   .h-bg{bottom: -2.375rem; background-size: 100% 2.375rem, 100% calc(100% - 2.3125rem)}
   .btn.h__quote, .h__lang{display: none}
   .h__nav-lang{display: flex} /* languages move into the menu */
   .h__phone{display: flex}
   #header.scroll-header .logo-tree,
   .has-light-top #header .logo-tree{width: 1.5rem; margin-right: .5625rem}
   #header.scroll-header .wm b{font-size: 1.375rem}
   #header.scroll-header .wm span{font-size: .425rem; letter-spacing: .13em}

   .splide__arrows{display: none}
   .block-txtmedia .splide__arrows{display: flex}

   /* landing */
   .block-landing{--ama-wave-height: 2.125rem}
   .block-landing.is-default{padding: calc(var(--ama-header-height) + 2.375rem) 0 3.5rem}
   .block-landing.is-basic{padding-top: 2rem}
   .block-landing .landing__desc, .block-landing.is-default .landing__desc, .block-landing.is-basic .landing__desc{font-size: 1rem}
   .block-landing:not(.is-stylized) .wp-block-buttons .wp-block-button{flex: 1 1 auto}
   .block-landing:not(.is-stylized) .wp-block-button__link{width: 100%}

   /* hero */
   .block-hero::before{background: linear-gradient(180deg, rgba(12, 16, 12, .6) 0%, rgba(12, 16, 12, .35) 30%, rgba(12, 16, 12, .6) 60%, rgba(12, 16, 12, .85) 100%)}
   .hero__inner{min-height: 45rem; padding-top: max(9.375rem, calc(var(--ama-header-height) + 1.875rem)); padding-bottom: 9.375rem}
   .block-hero h1{font-size: 2.75rem; margin-bottom: 1.125rem}
   .hero__row{flex-direction: column; align-items: flex-start}
   .hero__text{font-size: 1rem}
   .hero__offer{margin: 0 0 1.5rem -1.625rem; clip-path: inset(-20px -20px -20px 26px)}
      .hero__offer li{font-size: .71875rem; letter-spacing: .1em}
      .hero__offer li::before{margin: 0 .5625rem; width: .5rem; height: .6875rem}
   .block-hero .wp-block-button{flex: 1 1 100%}
   .block-hero .wp-block-button__link{width: 100%}
   .hero__note, .hero__stamp{display: none}

   /* quicklinks + ticker */
   .block-quicklinks{padding: 4.375rem 0 2.75rem; background-size: 100% 4.375rem, 100% 2.125rem, 100% calc(100% - 6.375rem); background-position: top, bottom, 0 4.3125rem}
   .block-hero + .block-quicklinks{margin-top: -6.875rem}
   .ql-item{gap: .875rem}
   .ql-item img{width: 5.25rem; height: 4.125rem}
   .block-ticker{height: 12.25rem}
   .block-quicklinks + .block-ticker{margin-top: -2.25rem}
   .tk{top: 1.875rem; bottom: 1.875rem}
   .tk-g{font-size: 1.59375rem}

   /* cards */
   .block-cards > .block__body{grid-template-columns: 1fr; gap: .875rem}
   .card__img{height: 11.25rem}
   .block-cards.is-style-audience .card__img{height: auto; padding: 1.25rem 1.375rem 0; overflow: visible}
      .block-cards.is-style-audience .card__img img{display: none}
      .block-cards.is-style-audience .card__img .kicker{position: static}
   .block-cards.is-style-audience .card__body{padding: .875rem 1.375rem 1.375rem}
   .block-cards.is-style-audience h3{font-size: 1.4375rem}
   .card__sub{margin: .25rem 0 .75rem}
   .card__listlabel, .card__link{display: none}
   .card__list{gap: .5rem}
   .card__cta{padding-top: 1.125rem}
   .block-cards.is-style-compact > .block__body,
   .cards__rest{grid-template-columns: 1fr 1fr; gap: .625rem}
   .block-cards.is-style-compact .card__img,
   .cards__rest .card__img{height: 6rem}
   .block-cards.is-style-compact .card__body,
   .cards__rest .card__body{padding: .625rem .75rem .875rem}
      .block-cards.is-style-compact .card__body b,
      .cards__rest .card__body b{font-size: 1.0625rem; padding-right: 0}
      .block-cards.is-style-compact .card__body small,
      .cards__rest .card__body small{font-size: .78125rem}
   .card__go{display: none}
   .card-item.is-featured{min-height: 16.25rem}
      .card-item.is-featured .card__body{left: 1.375rem; right: 1.375rem; bottom: 1.5rem}
      .card-item.is-featured .card__body b{font-size: 1.75rem}
   .block-cards.is-style-benefits .card-item{padding: .875rem 1rem; gap: .75rem}
   .card__icon{width: 2.375rem; height: 2.375rem}
   .card__icon svg{width: 1rem; height: 1.3125rem}
   .block-cards.is-style-benefits .card__body small{font-size: .84375rem}

   /* sliders */
   .scard{width: 14.375rem}
   .scard-img img{height: 9.375rem}
   .block-works.is-style-slider .scard{width: 16.875rem}
   .block-works.is-style-slider .scard-img img{height: 11.875rem}

   /* chips scroll sideways */
   .pp-chips{flex-wrap: nowrap; overflow-x: auto; margin: 0 calc(var(--grid-padding-inline) * -1); padding: 0 var(--grid-padding-inline); scrollbar-width: none}
   .pp-chips::-webkit-scrollbar{display: none}
   .pp-chips > a,
   .pp-chips > button{flex: none; height: 2.5rem; padding: 0 .875rem; font-size: .84375rem}

   /* works */
   .works-grid{gap: .625rem}
   .work-item{border-radius: 2rem .25rem 2rem .25rem}
   .work-item:not(.works-masonry .work-item) img{aspect-ratio: 1}
   .work-item figcaption{padding: 1.75rem .75rem .625rem}
      .work-item figcaption small{display: none}
      .work-item figcaption b{font-size: .90625rem}
   .works-masonry{column-gap: .625rem}
   .works-masonry .work-item{margin-bottom: .625rem; border-radius: 1.5rem .25rem 1.5rem .25rem}
   .works-masonry .work-item figcaption{padding: 1.625rem .75rem .625rem}
      .works-masonry .work-item figcaption b{font-size: .875rem}
   /* cards under a numbered header (Eritellimus groups) are smaller on phones */
   .block-cards:has(> .block__header.is-numbered) .card__body h3{font-size: 1.125rem}
   .block-cards:has(> .block__header.is-numbered) .card__txt{margin: .25rem 0 .625rem; font-size: .84375rem; line-height: 1.5}
   .work-play{width: 3rem; height: 3rem; margin: -1.5rem 0 0 -1.5rem}

   /* steps */
   .steps__box{padding: 1.75rem 1.375rem}
   .block-steps > .block__body,
   .steps__box > .block__body{grid-template-columns: 1fr; row-gap: 1.25rem}
   .steps__box .step-item{display: grid; grid-template-columns: 3.25rem 1fr; column-gap: .875rem; row-gap: .125rem}
      .steps__box .step__num{grid-row: span 2; width: 3rem; height: 3rem; margin: 0}
      .steps__box .step-item h3{font-size: 1.125rem}
   .block-steps.is-style-cards .step-item{padding: 1.375rem 1.25rem}
   .block-steps.is-style-cards .step__num{width: 3rem; height: 3rem; font-size: 1rem; margin-bottom: .5rem}

   /* compare */
   .block-compare > .block__body{grid-template-columns: 1fr; gap: .75rem}
   .compare__arrow{transform: rotate(90deg)}

   /* price list */
   .pg summary{gap: .75rem; padding: 1.125rem}
   .pg-from, .pg-n{display: none}
   .pg-t b{font-size: 1.375rem}
   .pg-items{padding: .25rem 1.125rem .625rem}
   .pl-item{grid-template-columns: 1fr; gap: .625rem; padding: 1.25rem 0}
   .pl-price{text-align: left}
   .pl-price b{font-size: 1.625rem}
   .pl-t h3{font-size: 1.1875rem}
   .pl-sizes{grid-template-columns: 1fr}
   .pl-table{font-size: .8125rem}

   /* faqs */
   .block-faqs .accordion-button{padding: 1.125rem 3.25rem 1.125rem 0}
   .block-faqs .accordion-name{font-size: 1.125rem}
   .block-faqs .accordion-body{padding-right: 0}

   /* contact */
   .block-contact{background-size: 32.5rem auto; background-position: right -8.75rem bottom -2.5rem; padding: 5.25rem 0 5rem}
   .contact__info, .contact__form{padding: 1.5rem 1.25rem}
   .qf-row{grid-template-columns: 1fr}
   .qf-foot{flex-direction: column}
   .qf-file{min-height: 3rem}

   /* posts */
   .block-posts:not(.is-style-slider) > .block__body{grid-template-columns: 1fr}
   .block-posts:not(.is-style-slider) .post-item:nth-child(n+2){display: none}
   body.blog .block-posts .post-item,
   body.archive .block-posts .post-item{display: flex!important}
   .post-item .item__thumb img{height: 12.5rem}
   .item__title{font-size: 1.25rem}

   /* txtmedia mosaic */
   .mosaic{grid-template-columns: 1fr 1fr; gap: .625rem}
   .mosaic__item{height: 7.75rem}
   .mosaic__num{width: 2.625rem; height: 2.625rem; left: .5rem; top: .5rem; font-size: .8125rem}
   .mosaic__item > b{font-size: 1rem}

   .wp-block-gallery.is-style-mosaic{grid-auto-rows: 8.125rem; gap: .625rem!important}
   .wp-block-gallery.is-style-mosaic > figure.wp-block-image:first-child{height: 12.5rem}

   .cta__box{padding: 1.5rem 1.25rem}
   .cta__box .block__header h2{font-size: 1.5625rem!important}

   /* footer */
   #footer{--ama-wave-height: 2.75rem; background-size: 15rem auto}
   .f-inner{row-gap: 1.75rem}
   .f-brand, .f-inner > .f-col:last-child{grid-column: 1 / -1}
   .f-bar{flex-direction: column; gap: .625rem}
   .f-bar p{gap: .25rem 1rem}
}

*:focus-visible{outline: 2px dashed var(--ama-primary-color); outline-offset: 3px}
.wpcf7-submit:focus,
.wpcf7-submit:active,
.btn:focus,
.btn:active,
.wp-block-button__link:focus,
.wp-block-button__link:active{background-color: var(--ama-btn-bg); border-color: var(--ama-btn-border-color); color: var(--ama-btn-color)}
.is-dark *:focus-visible,
.block-landing *:focus-visible,
.block-contact *:focus-visible{outline-color: #fff}

@media (prefers-reduced-motion: reduce){
   .tk-t{animation: none}
}

/* 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}
/* =============================================================================
   block-custom-order (Eritellimus: välimus + materjal + päring)
   ========================================================================== */
.co__tabs{margin-bottom: 1.75rem}
   .co__tabs > button[aria-selected="true"]{cursor: default}
.co__body{display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(19rem, 23.5rem); gap: 2rem 1.75rem; align-items: start}
.co__step{display: flex; align-items: center; gap: .625rem; margin: 0 0 1rem; font-size: .96875rem; font-weight: 700; color: var(--ama-primary-color)}
   .co__step > span{display: grid; place-items: center; width: 1.875rem; height: 1.875rem; flex: none; border-radius: 50%; background-color: var(--ama-primary-color); color: #fff; font-size: .8125rem}
.co-none{margin: 0; padding: 1.25rem; border: 1.5px dashed var(--ama-line-color); border-radius: var(--ama-radius-sm); font-size: .875rem; color: var(--ama-muted-color)}

/* cards */
.co-list{display: grid; gap: .75rem}
   .co-list.is-ref{grid-template-columns: repeat(2, minmax(0, 1fr))}
   .co-list:not(.is-open) > .is-extra{display: none}
.co-item{position: relative; display: flex}
.co-card{position: relative; flex: 1; display: flex; flex-direction: column; margin: 0; border: 1.5px solid var(--ama-line-color); border-radius: var(--ama-radius-sm); background-color: #fff; overflow: hidden; cursor: pointer; transition: border-color .2s, box-shadow .2s}
   .co-card:hover{border-color: var(--ama-primary-color)}
   .co-card > input{position: absolute; opacity: 0; pointer-events: none}
   .co-card:has(> input:checked){border-color: var(--ama-primary-color); box-shadow: 0 0 0 1.5px var(--ama-primary-color), 0 .75rem 1.5rem rgba(20, 30, 22, .08)}
   .co-card:has(> input:focus-visible){outline: 2px dashed var(--ama-primary-color); outline-offset: 3px}
   .co-card__img{display: block; aspect-ratio: 4 / 3; background-color: var(--ama-mint-color); overflow: hidden}
      .co-card__img img{display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s}
      .co-card:hover .co-card__img img{transform: scale(1.04)}
   .co-card__b{display: flex; flex-direction: column; gap: .125rem; padding: .625rem .75rem .75rem}
      .co-card__b b{font-size: .875rem; font-weight: 600; line-height: 1.3}
      .co-card__b small{font-size: .75rem; color: var(--ama-muted-color)}
   .co-card__price{margin-top: .125rem; font-size: .875rem; font-weight: 700; color: var(--ama-primary-color)}
   .co-card__check{position: absolute; top: .5rem; right: .5rem; width: 1.5rem; height: 1.5rem; border: 1.5px solid var(--ama-line-color); border-radius: 50%; background: #fff center / .75rem no-repeat; transition: background-color .2s, border-color .2s}
   .co-card:has(> input:checked) .co-card__check{border-color: var(--ama-primary-color); background-color: var(--ama-primary-color); background-image: url(../images/tick-white.svg)}
.co-card__link{position: absolute; z-index: 1; font-size: .75rem; font-weight: 600; color: var(--ama-primary-color); text-decoration: underline; text-underline-offset: .1875rem}
   .co-card__link:hover{text-decoration: none}
   .is-ref + .co-card__link{right: .75rem; bottom: .75rem}

/* materials: rows */
.co-card.is-mat{flex-direction: row; align-items: center; padding: .5rem; padding-right: 2.75rem; gap: .25rem}
   .co-card.is-mat .co-card__img{width: 4.25rem; height: 4.25rem; flex: none; aspect-ratio: auto; border-radius: .5rem .125rem .5rem .125rem}
   .co-card.is-mat .co-card__b{flex: 1; padding: .125rem .5rem 1.125rem}
   .co-card.is-mat .co-card__check{top: 50%; right: .75rem; margin-top: -.75rem}
   .is-mat + .co-card__link{right: 2.875rem; bottom: .625rem}
.co-more{display: block; width: 100%; margin-top: .75rem; padding: .75rem; border: 1.5px dashed var(--ama-line-color); border-radius: var(--ama-radius-sm); background: transparent; font-size: .875rem; font-weight: 600; color: var(--ama-primary-color); cursor: pointer; transition: border-color .2s}
   .co-more:hover{border-color: var(--ama-primary-color)}
   .co-more[hidden]{display: none!important}

/* "Mul on oma idee / puit" switch */
.co-toggle{position: relative; display: flex; align-items: center; gap: .75rem; margin: 0 0 1rem; padding: .75rem .875rem; border: 1.5px solid var(--ama-line-color); border-radius: var(--ama-radius-sm); background-color: var(--ama-light-color); cursor: pointer; transition: border-color .2s, background-color .2s}
   .co-toggle:hover{border-color: var(--ama-primary-color)}
   .co-toggle > input{position: absolute; opacity: 0; pointer-events: none}
   .co-toggle:has(> input:focus-visible){outline: 2px dashed var(--ama-primary-color); outline-offset: 3px}
   .co-toggle:has(> input:checked){border-color: var(--ama-primary-color); background-color: var(--ama-mint-color)}
   .co-toggle__ico{width: 2.25rem; height: 2.25rem; flex: none; border-radius: 50%; background: #fff center / 1.25rem no-repeat}
      .co-toggle__ico.is-ref{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232B4E31' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20h9'/%3E%3Cpath d='M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4z'/%3E%3C/svg%3E")}
      .co-toggle__ico.is-mat{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23A3622C' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='16' cy='12' rx='5' ry='8'/%3E%3Cellipse cx='16' cy='12' rx='2' ry='3.5'/%3E%3Cpath d='M16 4H7c-2.8 0-5 3.6-5 8s2.2 8 5 8h9'/%3E%3C/svg%3E")}
   .co-toggle__t{flex: 1; display: flex; flex-direction: column; line-height: 1.3}
      .co-toggle__t b{font-size: .90625rem; color: var(--ama-primary-color)}
      .co-toggle__t small{font-size: .75rem; color: var(--ama-muted-color)}
   .co-toggle__sw{position: relative; width: 2.5rem; height: 1.375rem; flex: none; border-radius: 1rem; background-color: #C9D3CB; transition: background-color .2s}
      .co-toggle__sw::after{content: ""; position: absolute; top: .1875rem; left: .1875rem; width: 1rem; height: 1rem; border-radius: 50%; background-color: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, .2); transition: transform .2s}
      .co-toggle > input:checked ~ .co-toggle__sw{background-color: var(--ama-primary-color)}
      .co-toggle > input:checked ~ .co-toggle__sw::after{transform: translateX(1.125rem)}
.co__own{display: none; flex-direction: column; gap: .875rem; padding: 1.25rem; border-radius: var(--ama-radius-md); background-color: var(--ama-mint-color)}
   .co__col:has(.co-toggle > input:checked) .co__own{display: flex}
   .co__col:has(.co-toggle > input:checked) .co__picker{display: none}
   .co__own textarea{min-height: 7rem}
   .co__file{min-height: 4rem; background-color: #fff}
   .co__file.has-files{border-style: solid; border-color: var(--ama-primary-color)}
   .co__file .qf-file-t small{white-space: normal}

/* form */
.co__card{position: sticky; top: calc(var(--ama-header-height-scrolled, 4.5rem) + 1.25rem); padding: 1.75rem 1.75rem 2rem; border-radius: var(--ama-radius-md); background-color: var(--ama-mint-color)}
   .co__fields{display: flex; flex-direction: column; gap: .875rem}
   .co__fields .qf-title{margin: 0 0 .25rem}
   .co__fields input:not([type="checkbox"]), .co__fields textarea{background-color: #fff}
   .co__picks{display: flex; flex-direction: column; gap: .5rem}
   .co__pick{display: flex; flex-wrap: wrap; align-items: center; gap: .25rem .75rem; padding: .5rem; border: 1.5px dashed #B9CBBE; border-radius: var(--ama-radius-sm); background-color: rgba(255, 255, 255, .6); transition: border-color .2s, background-color .2s}
      .co__pick.is-set{border-style: solid; border-color: var(--ama-accent-color); background-color: #fff}
      .co__pick-img{width: 2.75rem; height: 2.75rem; flex: none; border-radius: .375rem; background: var(--ama-light-color) center / cover no-repeat}
      .co__pick:not(.is-set) .co__pick-img, .co__pick.is-own .co__pick-img{background-size: 1.25rem; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B9CBBE' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E")}
      .co__pick.is-own .co__pick-img{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232B4E31' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5L20 7'/%3E%3C/svg%3E")}
      .co__pick-t{flex: 1; display: flex; flex-direction: column; min-width: 0; line-height: 1.3}
         .co__pick-t small{font-size: .6875rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ama-muted-color)}
         .co__pick-t b{font-size: .875rem; font-weight: 600}
         .co__pick:not(.is-set) .co__pick-t b{font-weight: 500; color: var(--ama-muted-color)}
   .co__err{display: block; font-size: .8125rem; font-weight: 500; color: #B4382A}
      .co__err:empty{display: none}
      .co__pick .co__err{flex-basis: 100%; padding-left: .25rem}
   .is-error > input, .is-error > textarea, .is-error > select{border-color: #B4382A!important}
   .co__pick.is-error{border-color: #B4382A; border-style: solid}
   .co__consent{display: block; margin: 0; font-size: .8125rem; line-height: 1.45; color: var(--ama-muted-color); cursor: pointer}
   .co__hp{position: absolute!important; left: -9999px; width: 1px; height: 1px; overflow: hidden}
   .co__submit{width: 100%; margin-top: .25rem}
   .co__submit:disabled{opacity: .6; cursor: progress}
   .co__err.is-form{text-align: center}
.co__done{display: flex; flex-direction: column; align-items: center; gap: 1rem; padding: 1.5rem .5rem; text-align: center}
   .co__done p{margin: 0; font-size: 1.0625rem; font-weight: 500}
   .co__done-ico{width: 3.5rem; height: 3.5rem; border-radius: 50%; background: var(--ama-primary-color) url(../images/tick-white.svg) center / 1.375rem no-repeat}
   .co__done[hidden], .co__fields[hidden], .co__pick[hidden]{display: none}

/* steps layout (block field "Paigutus: sammudena"); without JS it stays in columns */
.co__nav{display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; margin-top: 1.75rem; padding-top: 1.5rem; border-top: 1px solid var(--ama-line-color)}
   .co__nav .co-next{margin-left: auto}
   .co__nav-err{flex: 1 1 12rem; text-align: right}
.co__actions{display: flex; gap: .625rem; margin-top: .25rem}
   .co__actions .co__submit{flex: 1; margin: 0}
.co__pick-edit{margin-left: auto; padding: .25rem .5rem; border: 0; background: none; font-size: .8125rem; font-weight: 600; color: var(--ama-primary-color); text-decoration: underline; text-underline-offset: .1875rem; cursor: pointer}
   .co__pick-edit:hover{text-decoration: none}
.co__progress{display: flex; gap: .5rem; margin: 0 0 2rem; padding: 0; list-style: none; scroll-margin-top: calc(var(--ama-header-height-scrolled, 4.5rem) + 1.5rem)}
   .co__progress li{position: relative; flex: 1; display: flex}
   .co__progress button{flex: 1; display: flex; align-items: center; gap: .625rem; padding: 0 0 .875rem; border: 0; border-bottom: 3px solid var(--ama-line-color); background: none; font: inherit; text-align: left; color: var(--ama-muted-color); cursor: pointer; transition: border-color .2s, color .2s}
   .co__progress button > span{display: grid; place-items: center; width: 1.875rem; height: 1.875rem; flex: none; border: 1.5px solid var(--ama-line-color); border-radius: 50%; background: #fff center / .75rem no-repeat; font-size: .8125rem; font-weight: 700; transition: background-color .2s, border-color .2s, color .2s}
   .co__progress button > b{font-size: .9375rem; font-weight: 700}
   .co__progress .is-current button{border-color: var(--ama-primary-color); color: var(--ama-primary-color)}
   .co__progress .is-current button > span{border-color: var(--ama-primary-color); background-color: var(--ama-primary-color); color: #fff}
   .co__progress .is-done button{border-color: var(--ama-accent-color); color: var(--ama-primary-color)}
   .co__progress .is-done button > span{border-color: var(--ama-accent-color); background-color: var(--ama-accent-color); background-image: url(../images/tick-white.svg); color: transparent}
   .co__progress button:hover > b{text-decoration: underline; text-underline-offset: .25rem}
.block-custom-order:not(.is-js) .co__progress,
.block-custom-order:not(.is-js) .co__nav,
.block-custom-order:not(.is-js) .co__pick-edit,
.block-custom-order:not(.is-js) .co__actions .co-prev{display: none}
.is-steps.is-js .co__body{grid-template-columns: minmax(0, 1fr)}
   .is-steps.is-js .co__col:not(.is-current){display: none}
   .is-steps.is-js .co__step{display: none}
   .is-steps.is-js .co-toggle{max-width: 34rem}
   .is-steps.is-js .co__own{max-width: 46rem}
   .is-steps.is-js .co-list.is-ref{grid-template-columns: repeat(4, minmax(0, 1fr))}
   .is-steps.is-js .co-list.is-mat{grid-template-columns: repeat(3, minmax(0, 1fr))}
   .is-steps.is-js .co__card{position: static; max-width: 46rem; margin: 0 auto}
   .is-steps.is-js .co__col.is-current{animation: co-step .35s ease}
@keyframes co-step{from{opacity: 0; transform: translateY(.75rem)}}

@media (max-width: 1199px){
   .is-steps.is-js .co-list.is-ref{grid-template-columns: repeat(3, minmax(0, 1fr))}
   .is-steps.is-js .co-list.is-mat{grid-template-columns: repeat(2, minmax(0, 1fr))}
}
@media (max-width: 1199px){
   .co__body{grid-template-columns: repeat(2, minmax(0, 1fr))}
   .co__col.is-form{grid-column: 1 / -1}
   .co__card{position: static; max-width: 40rem; margin: 0 auto}
}
@media (max-width: 767px){
   .co__tabs{flex-wrap: nowrap; overflow-x: auto; margin-right: calc(var(--grid-padding-inline, 1rem) * -1); padding-right: var(--grid-padding-inline, 1rem); scrollbar-width: none}
   .co__tabs::-webkit-scrollbar{display: none}
   .co__body{grid-template-columns: minmax(0, 1fr); gap: 2.25rem}
   /* cards side by side, swipe */
   .co-list.is-ref, .co-list.is-mat{display: grid; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 62%; overflow-x: auto; scroll-snap-type: x mandatory; padding: .125rem .125rem .75rem; margin: -.125rem}
   .co-list.is-mat{grid-auto-columns: 86%; grid-template-rows: repeat(2, auto)}
   .co-list > .is-extra{display: flex!important}
   .co-item{scroll-snap-align: start}
   .co-more{display: none}
   .co__card{padding: 1.5rem 1.25rem 1.75rem}
   .co__own{padding: 1rem}
   /* steps: a plain grid instead of the swipe row (one column on screen anyway) */
   .is-steps.is-js .co-list.is-ref{grid-auto-flow: row; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; scroll-snap-type: none}
   .is-steps.is-js .co-list.is-mat{grid-auto-flow: row; grid-template-columns: minmax(0, 1fr); grid-template-rows: none; overflow: visible; scroll-snap-type: none}
   .is-steps.is-js .co-list:not(.is-open) > .is-extra{display: none!important}
   .is-steps.is-js .co-more{display: block}
   .co__progress{gap: .375rem}
   .co__progress button{flex-direction: column; align-items: flex-start; gap: .375rem}
   .co__progress button > b{font-size: .78125rem; line-height: 1.25}
   .co__nav-err{order: -1; flex-basis: 100%; text-align: left}
}
@media (max-width: 480px){
   .co__body .qf-row, .co__own .qf-row{grid-template-columns: minmax(0, 1fr)}
}

/* small phones: the search icon stays visible when scrolled, so the header items move a bit closer */
@media (max-width: 420px){
   .h-inner{gap: .5rem}
   .h__els{gap: .5625rem}
   .h__phone{width: 2.25rem; height: 2.25rem}
}
@media (max-width: 374px){
   #header.scroll-header .logo-tree,
   .has-light-top #header .logo-tree{width: 0; margin-right: 0; opacity: 0}
   #header .wm b{font-size: 1.375rem}
   #header .wm span{font-size: .425rem; letter-spacing: .13em}
}

/* =============================================================================
   valmimisprotsess (product page + block-process)
   ========================================================================== */
.process__head{max-width: 46rem; margin-bottom: 2.25rem}
   .process__head h2{margin-top: 1rem!important}
   .process__head .lead{margin-top: .875rem!important; color: var(--ama-muted-color)}
.process__content{max-width: 52rem; margin-bottom: 2.5rem; font-size: 1.03125rem; line-height: 1.7; color: var(--ama-muted-color)}
   .process__content > * + *{margin-top: .875rem!important}
   .process__content img{border-radius: var(--ama-radius-md)}
   .process__head + .process__content{margin-top: -.75rem}
   .process__content:last-child{margin-bottom: 0}
.process__steps{display: grid; grid-template-columns: repeat(var(--process-cols, 4), minmax(0, 1fr)); gap: 1.75rem 1.5rem; margin: 0; padding: 0; list-style: none}
.process-step{position: relative; display: flex; flex-direction: column; gap: .5rem; margin: 0}
   .process-step__img{display: block; aspect-ratio: 4 / 3; margin-bottom: .25rem; border-radius: var(--ama-radius-md); overflow: hidden; background-color: var(--ama-mint-color)}
      .process-step__img img{display: block; width: 100%; height: 100%; object-fit: cover}
   .process-step .step__num{margin-bottom: .25rem}
   .process-step.has-img .step__num{position: relative; z-index: 1; margin: -2.625rem 0 0 1.125rem; border-radius: 50%; background-color: #fff}
   .process-step h3{margin: 0!important; font-size: 1.3125rem; line-height: 1.25}
   .process-step p{margin: 0!important; font-size: .9375rem; line-height: 1.6; color: var(--ama-muted-color)}
/* more than 4 steps: one row that scrolls sideways */
.process.is-scroll .process__steps{grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: calc((100% - 4.5rem) / 4); overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 1rem; scrollbar-width: thin}
   .process.is-scroll .process-step{scroll-snap-align: start}
.process + .process{margin-top: 4.5rem; padding-top: 4.5rem; border-top: 1px solid var(--ama-line-color)}
.block-process .block__header + .process{margin-top: 0}

@media (max-width: 1199px){
   .process__steps{grid-template-columns: repeat(min(var(--process-cols, 4), 2), minmax(0, 1fr))}
   .process.is-scroll .process__steps{grid-auto-columns: calc((100% - 1.5rem) / 2)}
}
@media (max-width: 640px){
   .process__steps,
   .process.is-scroll .process__steps{grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: 78%; gap: 1rem; overflow-x: auto; scroll-snap-type: x mandatory; padding-bottom: 1rem}
   .process-step{scroll-snap-align: start}
   .process + .process{margin-top: 3rem; padding-top: 3rem}
}

/* =============================================================================
   block-testimonials
   ========================================================================== */
.block-testimonials.is-grid > .block__body{
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: var(--ama-gutter-x)
}

.block-testimonials.splide .splide__slide{display: flex;}

.tm-card{
   display: flex;
   flex-direction: column;
   margin: 0;
   padding: 1.75rem 2rem;
   border: 1.5px solid var(--ama-line-color);
   border-radius: var(--ama-radius-md);
   background-color: #fff;
   color: var(--ama-ink-color)
}
   .tm-card__mark{display: block; height: 2rem; margin-bottom: .5rem; font-family: var(--ama-font-serif); font-size: 4rem; line-height: 1; color: var(--ama-secondary-color)}
   .tm-card__text{margin: 0; padding: 0; border: 0; background: none; font-size: 1rem; line-height: 1.65; color: inherit}
      .tm-card__text > p:last-child{margin-bottom: 0}

   .tm-card__author{display: flex; align-items: center; gap: .875rem; margin-top: auto; padding-top: 1.25rem; font-size: .875rem;}
      .tm-card__author > span{display: flex; flex-direction: column; gap: .125rem; min-width: 0}
      .tm-card__author b{font-weight: 600; color: var(--ama-primary-color)}
      .tm-card__author small{font-size: inherit; color: var(--ama-muted-color)}

@media (max-width: 767px){
   .block-testimonials.is-grid > .block__body{grid-template-columns: 1fr}
}
