.elementor-139 .elementor-element.elementor-element-arh00001{--display:flex;--min-height:40vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:80px;--padding-bottom:80px;--padding-left:24px;--padding-right:24px;}.elementor-139 .elementor-element.elementor-element-arh00001:not(.elementor-motion-effects-element-type-background), .elementor-139 .elementor-element.elementor-element-arh00001 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#f5f5f5;}.elementor-139 .elementor-element.elementor-element-arh00002{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-139 .elementor-element.elementor-element-arh00003{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-139 .elementor-element.elementor-element-arh00003 .elementor-heading-title{font-family:"Montserrat", Sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;line-height:1.5em;letter-spacing:0.2em;color:#d77b12;}.elementor-139 .elementor-element.elementor-element-arh00004{margin:24px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;}.elementor-139 .elementor-element.elementor-element-arh00004 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:52px;font-weight:700;line-height:1.1em;color:#000000;}.elementor-139 .elementor-element.elementor-element-4d89b5ab{width:var( --container-widget-width, 500px );max-width:500px;margin:32px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:500px;--container-widget-flex-grow:0;}.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__container{min-height:50px;}.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__submit{min-width:50px;}body:not(.rtl) .elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__icon{padding-left:calc(50px / 3);}body.rtl .elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__icon{padding-right:calc(50px / 3);}.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__input, .elementor-139 .elementor-element.elementor-element-4d89b5ab.elementor-search-form--button-type-text .elementor-search-form__submit{padding-left:calc(50px / 3);padding-right:calc(50px / 3);}.elementor-139 .elementor-element.elementor-element-4d89b5ab:not(.elementor-search-form--skin-full_screen) .elementor-search-form__container{border-radius:3px;}.elementor-139 .elementor-element.elementor-element-4d89b5ab.elementor-search-form--skin-full_screen input[type="search"].elementor-search-form__input{border-radius:3px;}.elementor-139 .elementor-element.elementor-element-f9eeb79e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:120px;--padding-bottom:120px;--padding-left:24px;--padding-right:24px;}.elementor-139 .elementor-element.elementor-element-f9eeb79e:not(.elementor-motion-effects-element-type-background), .elementor-139 .elementor-element.elementor-element-f9eeb79e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#f5f5f5;}.elementor-139 .elementor-element.elementor-element-bf713bbe{--grid-columns:3;--grid-row-gap:24px;--grid-column-gap:24px;}.elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination{text-align:center;font-family:"Poppins", Sans-serif;font-size:14px;font-weight:600;}body:not(.rtl) .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 56px/2 );}body:not(.rtl) .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 56px/2 );}body.rtl .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 56px/2 );}body.rtl .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 56px/2 );}@media(min-width:640px){.elementor-139 .elementor-element.elementor-element-arh00001{--content-width:1152px;}.elementor-139 .elementor-element.elementor-element-arh00002{--width:100%;}.elementor-139 .elementor-element.elementor-element-f9eeb79e{--content-width:1152px;}}@media(max-width:1023px){.elementor-139 .elementor-element.elementor-element-arh00004 .elementor-heading-title{font-size:36px;}.elementor-139 .elementor-element.elementor-element-f9eeb79e{--padding-top:60px;--padding-bottom:60px;--padding-left:24px;--padding-right:24px;}.elementor-139 .elementor-element.elementor-element-bf713bbe{--grid-columns:2;--grid-row-gap:24px;--grid-column-gap:24px;}body:not(.rtl) .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 56px/2 );}body:not(.rtl) .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 56px/2 );}body.rtl .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 56px/2 );}body.rtl .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 56px/2 );}}@media(max-width:639px){.elementor-139 .elementor-element.elementor-element-arh00004 .elementor-heading-title{font-size:36px;}.elementor-139 .elementor-element.elementor-element-4d89b5ab{--container-widget-width:100%;--container-widget-flex-grow:0;width:var( --container-widget-width, 100% );max-width:100%;}.elementor-139 .elementor-element.elementor-element-f9eeb79e{--padding-top:60px;--padding-bottom:60px;--padding-left:24px;--padding-right:24px;}.elementor-139 .elementor-element.elementor-element-bf713bbe{--grid-columns:1;--grid-row-gap:24px;--grid-column-gap:24px;}body:not(.rtl) .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:first-child){margin-left:calc( 56px/2 );}body:not(.rtl) .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:last-child){margin-right:calc( 56px/2 );}body.rtl .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:first-child){margin-right:calc( 56px/2 );}body.rtl .elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers:not(:last-child){margin-left:calc( 56px/2 );}}/* Start custom CSS for search-form, class: .elementor-element-4d89b5ab *//* ---- search-form: inline / "minimal" skin exception ---- */
/* widgets.md + field-learnings PART 1: on the inline/minimal skin Elementor's
   native input_background_color and input border-radius controls emit no CSS
   at all (they only compile for the full-screen skin), so the visible field has
   to be styled here. This is the documented "no native control on this skin"
   case, NOT a native-first violation. */

.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__container {
  position: relative;
  background-color: transparent;
  border-radius: 4px;
  min-height: 0;
}

.elementor-139 .elementor-element.elementor-element-4d89b5ab input[type="search"],
.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__input {
  width: 100%;
  background-color: #ffffff;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
  padding: 14px 48px 14px 16px;
  font-family: "Montserrat", sans-serif;
  font-size: 15px;
  line-height: 1.5;
  color: #000000;
  outline: none;
  transition: border-color 0.2s ease-out;
}

.elementor-139 .elementor-element.elementor-element-4d89b5ab input[type="search"]::placeholder,
.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__input::placeholder {
  color: #555555;
  opacity: 1;
}

.elementor-139 .elementor-element.elementor-element-4d89b5ab input[type="search"]:focus,
.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__input:focus {
  border-color: #d77b12;
  box-shadow: none;
}

/* ---- magnifier pinned inside the field, right edge (no native control
       for icon side / absolute placement on this skin) ---- */

.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__icon {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: auto;
  min-width: 0;
  padding: 0;
  color: #d77b12;
  pointer-events: none;
}

.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__icon i,
.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__icon svg {
  width: 20px;
  height: 20px;
  font-size: 20px;
  color: #d77b12;
  fill: #d77b12;
}

/* ---- magnifier: lucide Search, matching the rest of the icon set ---- */
/* The Search Form widget has no icon control, so the built-in Font    */
/* Awesome glyph is hidden and the lucide outline drawn as a mask.     */

.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__submit svg,
.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__icon svg {
  display: none;
}

.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__submit::before,
.elementor-139 .elementor-element.elementor-element-4d89b5ab .elementor-search-form__icon::before {
  content: '';
  display: block;
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
  background-color: #D77B12;
  -webkit-mask: url('https://druckmanager.ch/wp-content/uploads/lucide/search-2.svg') center / contain no-repeat;
  mask: url('https://druckmanager.ch/wp-content/uploads/lucide/search-2.svg') center / contain no-repeat;
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-bf713bbe *//* ---- Numbered pagination boxes ---- */
/* Elementor's native pagination controls cover alignment, spacing, typography
   and the normal/hover/active TEXT colours only. The 40px box, its border,
   radius, item gap and the active fill have no native control, so they live
   here. */

.elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  min-width: 40px;
  margin: 0 4px;
  padding: 0 12px;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
  transition: background-color 0.3s ease-out, border-color 0.3s ease-out;
}

.elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers.current {
  background-color: #d77b12;
  border-color: #d77b12;
}

.elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers.dots {
  border-color: transparent;
}

/* ---- No "previous" control ---- */
/* The source's control row is exactly [1] [2] [3] [→] — there is no previous
   arrow. pagination_type must stay "numbers_and_prev_next" to get the "→",
   and pagination_prev_label is deliberately empty; from page 2 on WordPress
   would otherwise print an EMPTY bordered 40px box. There is no native
   "next only" option, so the prev link is removed here. */

.elementor-139 .elementor-element.elementor-element-bf713bbe .elementor-pagination .page-numbers.prev {
  display: none;
}

/* ---- Card reveal stagger — source: <Reveal delay={i * 60}> ---- */
/* @keyframes and per-item :nth-of-type delays have no native equivalent inside
   a Loop Grid (the whole grid is one widget). Delays run on .e-loop-item, the
   hover lift runs on the card root inside it, so the two transforms never
   fight. Loop items sit at odd child positions because Elementor interleaves
   <style> tags, so :nth-of-type is required — :nth-child never matches. */

@keyframes druck-card-reveal {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.elementor-139 .elementor-element.elementor-element-bf713bbe .e-loop-item {
  animation: druck-card-reveal 0.5s ease-out both;
}

.elementor-139 .elementor-element.elementor-element-bf713bbe .e-loop-item:nth-of-type(2) {
  animation-delay: 60ms;
}

.elementor-139 .elementor-element.elementor-element-bf713bbe .e-loop-item:nth-of-type(3) {
  animation-delay: 120ms;
}

.elementor-139 .elementor-element.elementor-element-bf713bbe .e-loop-item:nth-of-type(4) {
  animation-delay: 180ms;
}

.elementor-139 .elementor-element.elementor-element-bf713bbe .e-loop-item:nth-of-type(5) {
  animation-delay: 240ms;
}

.elementor-139 .elementor-element.elementor-element-bf713bbe .e-loop-item:nth-of-type(6) {
  animation-delay: 300ms;
}

@media (prefers-reduced-motion: reduce) {
  .elementor-139 .elementor-element.elementor-element-bf713bbe .e-loop-item {
    animation: none;
  }
}/* End custom CSS */