.elementor-20251 .elementor-element.elementor-element-d7a8e31{--display:flex;--min-height:0px;}.elementor-20251 .elementor-element.elementor-element-d7a8e31:not(.elementor-motion-effects-element-type-background), .elementor-20251 .elementor-element.elementor-element-d7a8e31 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://house-of-pm.eu/wp-content/uploads/2025/10/Weiss-Hintergrund-scaled.png");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Roboto;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-20251 .elementor-element.elementor-element-a302bce > .elementor-widget-container{margin:4% 0% 0% 0%;}.elementor-20251 .elementor-element.elementor-element-a302bce{text-align:center;font-family:"Nunito", Roboto;font-size:70px;font-weight:300;line-height:80px;letter-spacing:0.8px;}.elementor-20251 .elementor-element.elementor-element-a302bce p{margin-block-end:0px;}.elementor-20251 .elementor-element.elementor-element-d92442e{--display:flex;}.elementor-20251 .elementor-element.elementor-element-e050dd6 > .elementor-widget-container{margin:-10px 0px 0px 0px;}.elementor-20251 .elementor-element.elementor-element-0b4fade{--display:flex;}.elementor-20251 .elementor-element.elementor-element-7f7d3c7{text-align:center;}.elementor-20251 .elementor-element.elementor-element-7ab0dc5{--spacer-size:58px;}.elementor-20251 .elementor-element.elementor-element-8a6b981{--display:flex;}.elementor-20251 .elementor-element.elementor-element-09eef71{--spacer-size:102px;}@media(max-width:1200px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-20251 .elementor-element.elementor-element-a302bce{font-size:20px;letter-spacing:0.3px;}}@media(max-width:800px){.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-20251 .elementor-element.elementor-element-a302bce{line-height:25px;letter-spacing:0.3px;}}/* Start custom CSS for text-editor, class: .elementor-element-a302bce */.elementor-19309 .elementor-element.elementor-element-a302bce > .elementor-widget-container {
color: black;
font-family: Nunito;
font-size: clamp(20px, 8vw, 70px)!important;
line-height: 1.2;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e050dd6 */.elementor-20251 .elementor-element.elementor-element-e050dd6 .typewrite-wrap{
  /* expand to full viewport width, regardless of Elementor container */
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;
  margin-top: clamp(20px, 10vw, 80px);

  /* now your site gutter is truly from the viewport edge */
  padding-left: 10vw;         /* match whatever your other blocks use */
  padding-right: 10vw;         /* optional */

  display: block;
  font-family: Roboto;
  font-size: clamp(20px, 5vw, 40px);
  font-weight: 600;
  color: #000;
  letter-spacing: .04em;
  white-space: normal;
  line-height: 1.2;
  min-height: 2.4em;   /* reserve two lines */
  max-height: 2.4em;   /* clamp to two lines */
  overflow: hidden;    /* prevent push-down while typing */
}

/* Mobile: allow 3 lines if you want */
@media (max-width: 767px){
  .elementor-20251 .elementor-element.elementor-element-e050dd6 .typewrite-wrap{
    min-height: 6.0em;  /* 3 * 1.2em */
    max-height: 6.0em;
  }
}

#tw::after{
  content:"";
  display:inline-block;
  width:1px; height:.9em;
  margin-left:.25em;
  background:currentColor;
  animation: tw-blink 1s step-end infinite;
  vertical-align:-0.1em;
}
@keyframes tw-blink{50%{opacity:0}}
@media (prefers-reduced-motion: reduce){ #tw::after{animation:none} }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-421986e */.video-4-1 {
  position: relative;
  width: 100%;
  padding-top: 25%; /* 1 / 4 = 0.25 → 25% */
}

.video-4-1 video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain; /* or cover */
}/* End custom CSS */