/* PBI Elementor Native – Phase 15: Kontakt. Only loaded on the Kontakt page. */
.pbi-contact-hero,.pbi-contact-strip,.pbi-contact-form-section,.pbi-contact-form-layout,.pbi-contact-map-placeholder,.pbi-contact-form-card,.pbi-contact-card{gap:0!important;margin-bottom:0!important}
.pbi-contact-hero>.elementor-element,.pbi-contact-strip>.elementor-element,.pbi-contact-form-section>.elementor-element,.pbi-contact-form-layout>.elementor-element,.pbi-contact-map-placeholder>.elementor-element,.pbi-contact-form-card>.elementor-element,.pbi-contact-card>.elementor-element{margin:0!important}

/* 700-pixel contact hero. */
.pbi-contact-hero{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(500px,1fr)!important;align-items:stretch!important;width:100%!important;min-height:700px!important;margin-top:180px!important;padding:0!important;background:#fff!important}
.pbi-contact-hero-copy{display:flex!important;flex-direction:column!important;justify-content:center!important;min-width:0!important;max-width:none!important;padding:92px 58px 84px max(48px,calc(50vw - 590px))!important}
.pbi-contact-eyebrow .elementor-heading-title{margin:0!important;color:#d4ad67!important;font-family:"Arial Narrow",Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:700!important;line-height:1.5!important;letter-spacing:.18em!important;text-transform:uppercase!important}
.pbi-contact-title{margin-top:18px!important}
.pbi-contact-title .elementor-heading-title{max-width:760px!important;margin:0!important;color:#45546c!important;font-family:Georgia,"Times New Roman",serif!important;font-size:clamp(44px,4.35vw,63px)!important;font-weight:400!important;line-height:1.08!important;letter-spacing:-.035em!important;text-transform:none!important}
.pbi-contact-lead{max-width:700px!important;margin-top:28px!important}
.pbi-contact-lead p{margin:0!important;color:#626e78!important;font-family:"Arial Narrow",Arial,Helvetica,sans-serif!important;font-size:17px!important;line-height:1.75!important}
.pbi-contact-hero-stage{position:relative!important;display:grid!important;place-items:center!important;min-width:0!important;min-height:700px!important;padding:70px 9%!important;background:linear-gradient(rgba(255,255,255,.04),rgba(255,255,255,.04)),url("contact-hero-open-door.png") 50% 50%/cover no-repeat!important;overflow:hidden!important}
.pbi-contact-card{position:relative!important;z-index:2!important;display:flex!important;flex-direction:column!important;width:min(455px,88%)!important;padding:35px 38px 35px!important;border:1px solid rgba(255,255,255,.22)!important;border-top:4px solid #d4ad67!important;background:#45546c!important;box-shadow:0 30px 70px rgba(41,57,76,.22)!important;color:rgba(255,255,255,.86)!important}
.pbi-contact-card-label .elementor-heading-title{margin:0 0 8px!important;color:#d4ad67!important;font-family:"Arial Narrow",Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:700!important;line-height:1.5!important;letter-spacing:.16em!important;text-transform:uppercase!important}
.pbi-contact-card-title .elementor-heading-title{margin:0 0 27px!important;color:#fff!important;font-family:Georgia,"Times New Roman",serif!important;font-size:31px!important;font-weight:400!important;line-height:1.2!important}
.pbi-contact-card-details .elementor-widget-container{margin:0!important;padding:0!important}
.pbi-contact-card-details p{margin:0!important}
.pbi-contact-card-link{border-top:1px solid rgba(255,255,255,.2)!important}
.pbi-contact-card-link a{display:block!important;padding:17px 0!important;color:#fff!important;font-family:Arial,Helvetica,sans-serif!important;font-size:16px!important;line-height:1.45!important;text-decoration:none!important}
.pbi-contact-card-link span{display:block!important;margin-bottom:4px!important;color:rgba(255,255,255,.6)!important;font-size:14px!important;font-weight:700!important;letter-spacing:.1em!important;text-transform:uppercase!important}
.pbi-contact-card-address{margin-top:7px!important;padding-top:21px!important;border-top:1px solid rgba(255,255,255,.2)!important;color:rgba(255,255,255,.86)!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;line-height:1.65!important}

/* Four contact promises. */
.pbi-contact-strip{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:center!important;width:100%!important;min-height:92px!important;padding:0 max(48px,calc(50vw - 590px))!important;background:#45546c!important}
.pbi-contact-strip>.elementor-widget-heading{display:grid!important;place-items:center!important;min-height:58px!important;padding:8px 24px!important}
.pbi-contact-strip>.elementor-widget-heading+.elementor-widget-heading{border-left:1px solid rgba(212,173,103,.42)!important}
.pbi-contact-strip .elementor-heading-title{margin:0!important;color:#fff!important;text-align:center!important;font-family:Georgia,"Times New Roman",serif!important;font-size:18px!important;font-weight:400!important;line-height:1.35!important}

/* Map placeholder and native Elementor Pro form. */
.pbi-contact-form-section{display:block!important;width:100%!important;padding:105px max(48px,calc(50vw - 590px)) 112px!important;border-top:1px solid #ded8cf!important;background:#f3f0eb!important}
.pbi-contact-form-layout{display:grid!important;grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr)!important;align-items:start!important;gap:clamp(65px,7vw,95px)!important;width:100%!important;max-width:1180px!important;margin:0 auto!important}
.pbi-contact-map-placeholder{display:flex!important;flex-direction:column!important;width:100%!important;padding-top:2px!important}
.pbi-contact-map-image img{display:block!important;width:100%!important;height:auto!important;border:1px solid #d2d9dd!important;border-top:4px solid #d4ad67!important;box-shadow:0 24px 52px rgba(39,55,76,.13)!important}
.pbi-contact-map-caption{margin-top:10px!important}
.pbi-contact-map-caption p{margin:0!important;color:#858b92!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;line-height:1.45!important}
.pbi-contact-form-card{display:flex!important;flex-direction:column!important;min-width:0!important;padding:39px 40px!important;border:1px solid #d2d9dd!important;border-top:4px solid #d4ad67!important;background:#fff!important;box-shadow:0 20px 45px rgba(39,55,76,.08)!important}
.pbi-contact-form-eyebrow{margin-bottom:18px!important}
.pbi-contact-form-title .elementor-heading-title{margin:0!important;color:#45546c!important;font-family:Georgia,"Times New Roman",serif!important;font-size:clamp(36px,3.8vw,53px)!important;font-weight:400!important;line-height:1.12!important;letter-spacing:-.025em!important;text-transform:none!important}
.pbi-contact-form-required{margin-top:8px!important;margin-bottom:38px!important}
.pbi-contact-form-required p{margin:0!important;color:#777e86!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;line-height:1.5!important}
.pbi-contact-form-widget,.pbi-contact-form-widget .elementor-widget-container,.pbi-contact-form-widget form{margin:0!important;padding:0!important}
.pbi-contact-form-widget .elementor-form-fields-wrapper{display:flex!important;flex-direction:column!important;gap:0!important;margin:0!important}
.pbi-contact-form-widget .elementor-field-group{display:flex!important;flex-direction:column!important;align-items:stretch!important;width:100%!important;max-width:none!important;margin:0 0 25px!important;padding:0!important}
.pbi-contact-form-widget .elementor-field-group>label{display:block!important;margin:0 0 8px!important;padding:0!important;color:#56606b!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:700!important;line-height:1.5!important;letter-spacing:.04em!important;text-transform:uppercase!important}
.pbi-contact-form-widget .elementor-required{color:inherit!important}
.pbi-contact-form-widget .elementor-field,.pbi-contact-form-widget select,.pbi-contact-form-widget textarea{width:100%!important;margin:0!important;border:1px solid #cfd5dc!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;color:#343b43!important;font-family:Arial,Helvetica,sans-serif!important;font-size:15px!important;font-weight:400!important;line-height:1.5!important;transition:border-color .16s,box-shadow .16s!important}
.pbi-contact-form-widget input.elementor-field,.pbi-contact-form-widget select.elementor-field{height:49px!important;min-height:49px!important;padding:0 14px!important}
.pbi-contact-form-widget textarea.elementor-field{min-height:163px!important;padding:13px 14px!important;resize:vertical!important}
.pbi-contact-form-widget .elementor-field:focus{border-color:#45546c!important;outline:0!important;box-shadow:0 0 0 3px rgba(69,84,108,.1)!important}
.pbi-contact-form-widget .elementor-field-type-acceptance{display:block!important;margin:0!important;padding-top:0!important}
.pbi-contact-form-widget .elementor-field-type-acceptance .elementor-field-subgroup{display:block!important;width:100%!important}
.pbi-contact-form-widget .elementor-field-type-acceptance .elementor-field-option{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:flex-start!important;gap:11px!important;width:100%!important}
.pbi-contact-form-widget .elementor-field-type-acceptance label{display:block!important;flex:1 1 auto!important;width:auto!important;margin:0!important;padding:0!important;color:#616872!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:400!important;line-height:1.55!important;letter-spacing:0!important;text-transform:none!important}
.pbi-contact-form-widget .elementor-field-type-acceptance input.elementor-field{display:block!important;flex:0 0 17px!important;width:17px!important;height:17px!important;min-height:17px!important;max-height:17px!important;margin:2px 0 0!important;padding:0!important;accent-color:#45546c!important}
.pbi-contact-form-widget .elementor-field-type-acceptance a{color:#8b3a46!important;text-decoration:underline!important;text-underline-offset:2px!important}
.pbi-contact-form-widget .elementor-field-type-submit{display:block!important;width:206px!important;margin:30px 0 0!important;padding:0!important}
.pbi-contact-form-widget .elementor-button{display:flex!important;justify-content:center!important;align-items:center!important;width:206px!important;min-height:46px!important;padding:12px 22px!important;border:0!important;border-radius:2px!important;background:#45546c!important;color:#fff!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:700!important;line-height:1.5!important;letter-spacing:.03em!important;text-transform:uppercase!important;transition:background .16s!important}
.pbi-contact-form-widget .elementor-button:hover,.pbi-contact-form-widget .elementor-button:focus{background:#8b3a46!important}
.pbi-contact-form-note{min-height:66px!important;margin:-66px 0 0 230px!important;display:flex!important;align-items:center!important}
.pbi-contact-form-note p{max-width:430px!important;margin:0!important;color:#7a8189!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;line-height:1.5!important}
.pbi-contact-form-status{min-height:21px;margin:18px 0 0;color:#45546c;font-family:Arial,Helvetica,sans-serif;font-size:14px;font-weight:700;line-height:1.5}
.pbi-contact-form-widget .elementor-message{margin:18px 0 0!important;color:#45546c!important;font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:700!important}

@media(max-width:1050px){
  .pbi-contact-hero{grid-template-columns:1fr!important;margin-top:0!important}
  .pbi-contact-hero-copy{padding:88px 55px!important}
  .pbi-contact-hero-stage{min-height:600px!important}
  .pbi-contact-strip{grid-template-columns:1fr 1fr!important}
  .pbi-contact-strip>.elementor-widget-heading:nth-child(3){border-left:0!important}
  .pbi-contact-strip>.elementor-widget-heading:nth-child(n+3){border-top:1px solid rgba(212,173,103,.42)!important}
  .pbi-contact-form-layout{grid-template-columns:1fr!important}
  .pbi-contact-map-placeholder{width:min(100%,470px)!important;margin:0 auto!important}
}
@media(max-width:760px){
  .pbi-contact-hero-copy{padding:75px 28px 82px!important}
  .pbi-contact-title .elementor-heading-title{font-size:39px!important}
  .pbi-contact-hero-stage{min-height:500px!important;padding:48px 28px!important}
  .pbi-contact-card{width:100%!important;padding:31px 27px!important}
  .pbi-contact-strip{grid-template-columns:1fr!important;padding:20px 28px!important}
  .pbi-contact-strip>.elementor-widget-heading{min-height:64px!important}
  .pbi-contact-strip>.elementor-widget-heading+.elementor-widget-heading,.pbi-contact-strip>.elementor-widget-heading:nth-child(3){border-top:1px solid rgba(212,173,103,.42)!important;border-left:0!important}
  .pbi-contact-form-section{padding:75px 28px 82px!important}
  .pbi-contact-form-layout{gap:48px!important}
  .pbi-contact-form-card{padding:31px 25px!important}
  .pbi-contact-form-title .elementor-heading-title{font-size:39px!important}
  .pbi-contact-form-note{min-height:0!important;margin:14px 0 0!important}
  .pbi-contact-form-widget .elementor-field-type-submit,.pbi-contact-form-widget .elementor-button{width:100%!important}
}
