/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/*************** FONTS.   ***************/
@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 300;
  src: url('/wp-content/uploads/rubik-v30-latin/rubik-v30-latin-300.woff2') format('woff2');
}
/* rubik-300italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: italic;
  font-weight: 300;
  src: url('/wp-content/uploads/rubik-v30-latin/rubik-v30-latin-300italic.woff2') format('woff2');
}
/* rubik-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 400;
  src: url('/wp-content/uploads/rubik-v30-latin/rubik-v30-latin-regular.woff2') format('woff2');
}
/* rubik-italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: italic;
  font-weight: 400;
  src: url('/wp-content/uploads/rubik-v30-latin/rubik-v30-latin-italic.woff2') format('woff2');
}
/* rubik-500 - latin */
@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 500;
  src: url('/wp-content/uploads/rubik-v30-latin/rubik-v30-latin-500.woff2') format('woff2');
}
/* rubik-500italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: italic;
  font-weight: 500;
  src: url('/wp-content/uploads/rubik-v30-latin/rubik-v30-latin-500italic.woff2') format('woff2');
}
/* rubik-600 - latin */
@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 600;
  src: url('/wp-content/uploads/rubik-v30-latin/rubik-v30-latin-600.woff2') format('woff2');
}
/* rubik-600italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: italic;
  font-weight: 600;
  src: url('/wp-content/uploads/rubik-v30-latin/rubik-v30-latin-600italic.woff2') format('woff2');
}
/* rubik-700 - latin */
@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: normal;
  font-weight: 700;
  src: url('/wp-content/uploads/rubik-v30-latin/rubik-v30-latin-700.woff2') format('woff2');
}
/* rubik-700italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Rubik';
  font-style: italic;
  font-weight: 700;
  src: url('/wp-content/uploads/rubik-v30-latin/rubik-v30-latin-700italic.woff2') format('woff2');
}
/* Custom */
html {
    font-family: "Rubik", arial, sans-serif;
}
h1, .banner h1, .h1-style {
	font-size:2.986rem;
	line-height:1.2;
	font-weight:400;
	font-family: "Rubik", arial, sans-serif;
   }
h2, .banner h2, .h2-style {
	font-size:2.488rem;
	font-weight:400;
	line-height:1.2;
	font-family: "Rubik", arial, sans-serif;
   }
h3, .banner h3, .h3-style {
	font-size:2.074rem;
	font-weight:400;
	line-height:1.2;
	font-family: "Rubik", arial, sans-serif;
   }
h4, .banner h4, .h4-style {
	font-size:1.728rem;
   	font-weight:400;
	line-height:1.2;
	font-family: "Rubik", arial, sans-serif;
   }
h5, .banner h5, .h5-style {
	font-size:1.44rem;
	font-weight:400;
	font-family: "Rubik", arial, sans-serif;
   }
h6, .banner h6, .h6-style {
	font-size:1.2rem;
	font-weight:400;
	text-transform:none;
	font-family: "Rubik", arial, sans-serif;
   }
p, .p-style {
	font-size:1rem;
	font-weight:400;
	line-height: 1.7;
	font-family: "Rubik", arial, sans-serif;
}
.p-small,.p-small p  {
	font-size:14px;
	font-weight:300;
}
.p-smaller  {
	font-size:12px;
	font-weight:300;
   }
.p-strong {
	font-weight:500;
	color: var(--color-charcoal-900);
}
.tm-oms-subtitle, .tm-oms-subtitle p, .oms-subtitle, .oms-location-subtitle {
	text-transform: uppercase;
	font-weight: 500!important;
	letter-spacing: 3px;
	color: var(--color-oms-brand)!important;
	font-size: 16px;
	margin-bottom:3px;
}
.dark .heading-font, .dark a.lead, .dark h1, .dark h2, .dark h3, .dark h4, .dark h5, .dark h6, .dark label, .hover-dark:hover a, .hover-dark:hover h1, .hover-dark:hover h2, .hover-dark:hover h3, .hover-dark:hover h4, .hover-dark:hover h5, .hover-dark:hover h6, .hover-dark:hover p {
	color: var(--color-charcoal-100)!important;
}
.dark p, .dark td {
	color: var(--color-charcoal-200);
}
.button, button, input[type=button], input[type=reset], input[type=submit] {
	font-weight:500;
	font-size:14px;
}


/*************** COLORS.   ***************/

.col.color-charcoal-100 > .col-inner, .section.color-charcoal-100, .is-divider {
	background-color: var(--color-charcoal-100)
}
.col.color-charcoal-200 > .col-inner, .section.color-charcoal-200 {
	background-color: var(--color-charcoal-200)
}
.col.color-charcoal-400 > .col-inner, .section.color-charcoal-300 {
	background-color: var(--color-charcoal-300)
}
.col.color-charcoal-500 > .col-inner, .section.color-charcoal-400 {
	background-color: var(--color-charcoal-400)
}
.col.color-charcoal-500 > .col-inner, .section.color-charcoal-500 {
	background-color: var(--color-charcoal-500)
}
.col.color-charcoal-600 > .col-inner, .section.color-charcoal-600 {
	background-color: var(--color-charcoal-600)
}
.col.color-charcoal-700 > .col-inner, .section.color-charcoal-700, .dark .is-divider {
	background-color: var(--color-charcoal-700)
}
.col.color-charcoal-800 > .col-inner, .section.color-charcoal-800 {
	background-color: var(--color-charcoal-800)
}
.col.color-charcoal-900 > .col-inner, .section.color-charcoal-900 {
	background-color: var(--color-charcoal-900)
}
.col.color-charcoal-1000 > .col-inner, .section.color-charcoal-1000 {
	background-color: var(--color-charcoal-1000)
}
.col.color-charcoal-1100 > .col-inner, .section.color-charcoal-1100 {
	background-color: var(--color-charcoal-1100)
}
.col.color-charcoal-1200 > .col-inner, .section.color-charcoal-1200 {
	background-color: var(--color-charcoal-1200)
}
:root {
    --oms-color-primary: #00a3e0;
    --color-oms-brand: #00a3e0;
	--color-oms-brand-50: #00a3e050;
	--color-oms-brand-accessible: #009CEB;
	--color-oms-brand-dark: #008BC0;
	--color-oms-body: var(--color-charcoal-700);
	--color-oms-header: var(--color-charcoal-900);
	--fs-color-secondary: var(--color-charcoal-900) !important;
    }
::selection {
	background: var(--color-oms-brand-50);
}
:root {
	--color-charcoal-100: #F9FAFA;
	--color-charcoal-200: #F1F3F5;
	--color-charcoal-300: #DFE6EB;
	--color-charcoal-400: #C8D3DE;
	--color-charcoal-500: #ABB9C7;
	--color-charcoal-600: #7E8E9E;
	--color-charcoal-700: #556575;
	--color-charcoal-800: #405261;
	--color-charcoal-900: #314351;
	--color-charcoal-1000: #253642;
	--color-charcoal-1100: #1D2B36;
	--color-charcoal-1200: #131B24;
}
h1,h2,h3,h4,h5,h6 {
	color: var(--color-oms-header);
}
p {
	color: var(--color-oms-body);
}



/*************** Banners.   ***************/
.tm-banner-50 .banner-bg, .tm-banner-50, .tm-banner-50 .banner-layers {
border-radius: 50px;
}
.tm-banner-40 .banner-bg, .tm-banner-40, .tm-banner-40 .banner-layers {
border-radius: 40px;
}
.tm-banner-30 .banner-bg, .tm-banner-30, .tm-banner-30 .banner-layers {
border-radius: 30px;
}
.tm-banner-20 .banner-bg, .tm-banner-20, .tm-banner-20 .banner-layers {
border-radius: 20px;
}
.tm-banner-10 .banner-bg, .tm-banner-10, .tm-banner-10 .banner-layers {
border-radius: 10px;
}
.tm-banner-shadow-40 .banner-layers {
	  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.8) 0%,
	rgba(0, 0, 0, 0.5) 25%,
    rgba(0, 0, 0, 0) 40%,
    rgba(0, 0, 0, 0) 100%
  )
}
.tm-banner-shadow-40-top .banner-layers {
	  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.8) 0%,
	rgba(0, 0, 0, 0.5) 25%,
    rgba(0, 0, 0, 0) 40%,
    rgba(0, 0, 0, 0) 100%
  )
}


/*************** Button.   ***************/
.button {
    font-size:14px;
    font-weight:400;
    padding:3px 22px;
}
.button.primary,.button.secondary, .button.white {
    transition: padding 0.3s ease;
}
.button.primary:hover,.button.secondary:hover, .button.white:hover{
    padding-right:36px;
}
.button.primary:hover:after, .button.secondary:hover:after, .button.white:hover:after
{
  right: 12px; 
  opacity: 1;
}
.button.primary:after, .button.secondary:after, .button.white:after {
      content: "";
  background-image: url('/wp-content/uploads/icons/oms_icon_brand_chevron-right.svg');
  display: inline-block;
  width: 18px;
  height: 18px;
  background-size: cover;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: right 0.3s ease, opacity 0.3s ease;
}
.button.primary:after {
	filter: grayscale(1) brightness(100);
}
.button.white {
	color: var(--color-oms-body)!important;
	border-color: var(--color-charcoal-200);
}
.button.white:hover {
	box-shadow: inset 0 0 0 100px var(--color-charcoal-100);
}
.oms-buttom-glass {
	background-color: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.2);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
}


/*************** Nav.   ***************/
ul.header-nav-main a {
    font-weight:400;
}
ul.header-nav-main.nav-left {
	justify-content: center;
}
.has-dropdown .icon-angle-down {
	font-size: 12px;
	margin-left: 0.4em;
	opacity: 0.75;
	top: 1px;
}

.nav-dropdown-has-arrow li.has-dropdown:after, .nav-dropdown-has-arrow li.has-dropdown:before {
	display:none;
}
.nav-dropdown-default {
	padding: 10px;
}
.nav-dropdown-has-border .nav-dropdown {
	border-radius:12px;
	border:none;
	min-width: 200px;
    width: max-content;
}
.nav-dropdown li {
	font-size: .9em;
}
.nav-dropdown.nav-dropdown-default>li>a:hover {
	background-color: var(--color-charcoal-200);
	transition: background-color 0.5s;
}

.nav-dropdown.nav-dropdown-default>li>a {
	padding-left: 15px;
	padding-right: 15px;
	border-radius: 12px;
	border:none;
	margin:0;
	transition: background-color 0.5s;
}
li.current-dropdown>.nav-dropdown {
	top:45px;
}
/* Floating header styling */
.header-wrapper.stuck .header-inner.container {
    margin-top:20px;
    max-width: 1200px;
    border-radius: 20px;
    padding: 0px 30px;
    background: rgba(255,255,255,.54);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
        border: 1px solid rgba(255, 255, 255, 0.4);
}
/* Header padding for Mobile + Tablet */
.header-wrapper.stuck .header-main  {
    padding: 0px 15px;
}
/* Remove header shadow */
.header-wrapper.stuck, .header-shadow .header-wrapper, .layout-shadow #wrapper {
    -webkit-box-shadow: none;
    box-shadow: none;
}
.header-wrapper.stuck .header-bg-color {
    background-color: unset;
}
.header-wrapper.stuck .flex-row {
    height: 120%!important;
}

/* Menu Item active */
.nav-column li.active>a, .nav-column li>a:hover, .nav-dropdown li.active>a, .nav-dropdown>li>a:hover, .nav-vertical-fly-out>li.active>a, .nav-vertical-fly-out>li>a:hover, .nav>li.active>a, .nav>li.current>a, .nav>li>a.active, .nav>li>a.current, .nav>li>a:hover {
    color: var(--color-oms-brand-accessible);
}




/*************** Standorte.   ***************/
/* Map */

.map_container {
    margin-left: -90px;
    padding: 20px 0;
    width: 100%;
    min-width: 600px;
}

.map svg path {
    fill: var(--color-charcoal-1100);
    stroke: #ffffff;
    stroke-width: 1px;
}

.map svg path:hover {
    fill: var(--color-charcoal-1000);
}

.map svg .pin:not(.disabled) path {
    fill: var(--color-charcoal-1100);
    stroke: var(--color-oms-brand);
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}
#search_icon_wrapper .search_text {
	color:white;
}
.map svg .pin.disabled path {
    border: #808080 !important;
    stroke-width: 1 !important;
}
.oms-map-outline .map svg path {
	  fill: var(--color-charcoal-100);
    stroke: var(--color-charcoal-400);
    stroke-width: 1px;
}

.oms-map-outline .map svg .pin:not(.disabled) path {
		fill: var(--color-charcoal-100);
}
.pin {
    cursor: pointer;
    display: block;
}

#popup {
    display: none;
    position: fixed;
    max-width: 32rem;
    min-width: 20rem;
    z-index: 11;
    transition: opacity 200ms ease-in-out;
    border-radius: 10px;
    pointer-events: none;
    padding: 1.2rem 1.8rem 0.5rem 0.5rem;
    background-color: rgba(255, 255, 255, 0.8);
    box-shadow: 0 0 10px rgba(30, 30, 30, 0.1);
    backdrop-filter: blur(10px);
}

.popup_content {
    overflow: auto;
    overflow-x: hidden;
}

.location-li-item {
    list-style: none;
    margin-bottom: .75rem;
    display: flex;
    align-items: center;
    color: var(--color-charcoal-600);
}

.icon-wrapper {
    margin-right: 11.2px;
}

@media (max-width: 1400px) {
    .map_container {
        margin: 0 auto;
        min-width: initial;
    }
}

@media (max-width: 800px) {
    .map_container,
    #popup {
        display: none !important;
    }
}
/* Standort */

.oms-location-main-info {
    display: flex;
    align-items: center;
    padding-bottom: 30px;
    padding-top: 30px;
    height: 400px;
    z-index: 1
}

.oms-location-contact-bar-container {
    margin-top: -15px;
}

.oms-location-contact-bar-container .contact-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content:start;
}
.oms-location-contact-bar-container .location-li-item {
  padding: 4px 10px;
  border-radius: 10px;
	border: 1px solid #FFF;
	background: rgba(255, 255, 255, 0.50);
	box-shadow: 5px 10px 30px 0px rgba(0, 0, 0, 0.03);
	backdrop-filter: blur(5px);
}
.location_breadcrumb {
    position: relative;
    z-index: 10;
    margin: 0;
    padding: 8px 0;
    list-style: none;
    font-size: 14px;
}
.location-description p {
    margin: 0;
}
.location-header {
    width: 100%;
    height: 400px;
    margin-bottom: 0px;
    background: var(--color-charcoal-200);
    overflow: hidden;
}

.location-checklist {
    max-width: 100%;
    margin: 0;
}

.location-heading {
    font-size: 2em;
}

.location-li-item {
    list-style: none;
}

.oms-location-main-info {
    padding-right: 80px;
}

.location-li-item a {
    color: var(--color-oms-brand);
    display: flex;
}

.location-li-item .icon-wrapper {
    height: 20px;
    width: 20px;
    margin-right: 4px;
}

.location-li-item .icon-wrapper img{
    margin-bottom: 2px;
}

.location-header .map_container {
    margin-left: 0 ;
}

#popup {
    display: none;
}

.invisible-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: transparent;
}

.location-content {
    margin-top: 500px;
}

@media only screen and (max-width: 1200px){
    .map_container {
        display: none;
    }
}
/*************** Footer/Body Icon   ***************/
#wrapper::after {
    content: "";
    position: absolute;
    width: 120px;
    height: 70px;
    right: 0;
    bottom: 0;
    background-image: url(/wp-content/uploads/icons/oms-ecke-some-pruefservice-light.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom right;
}
/*************** Images/Icons   ***************/
.oms-img-18 {
width: 18px !important;
height:18px;
}
.oms-img-22 {
width: 22px !important;
height:22px;
}
.oms-img-24 {
width: 24px !important;
height:24px;
}
.oms-img-28 {
width: 28px !important;
height:28px;
}
.oms-img-40 {
width: 40px !important;
height:40px;
}
.oms-img-50 {
width: 50px !important;
height:50px;
}
.oms-img-70 {
width: 70px !important;
}
.oms-img-80 {
width: 80px !important;
}
.oms-img-100 {
width: 100px !important;
}

.oms-img-200 {
width: 200px !important;
}
.img-inner {
	width:inherit;
}
.oms-img-rounded img{
	border-radius:999px
}
/*----------------------------------------*/
/*    Accordion    */
/*----------------------------------------*/

.accordion-title.active {
    background-color: rgba(0, 0, 0, .0);
    border-color: var(--color-charcoal-300);
    color: var(--fs-color-primary)!important;
    font-weight: 400;
}
.accordion-title {
    border-top: 0px solid #ddd;
    color: var(--color-charcoal-700)!important;
    display: block;
    font-size: 1rem;
    padding: 1rem 2.2rem 1rem 1.7rem;
    position: relative;
    transition: border .2s ease-out, background-color .3s;
}
.accordion-item {
	border: 1px solid var(--color-charcoal-300);
	border-radius: 30px;
	margin-bottom: 20px;
}
.accordion-inner {
	padding: 0rem 1.7rem 1.4rem 1.7rem;
}
.accordion-inner p:last-child {
	margin:0;
}
.accordion .toggle {
    border-radius: 999px;
    height: 1.5em;
    right: 0.5rem;
    left:unset;
    margin-left: 5px;
    position: absolute;
    top: 0.9em;
    transform-origin: 50% 47%;
    width: 2.3em;
}
.accordion .toggle i{
    font-size: 1.3em;
}
/*----------------------------------------*/
/*    Ref Logo Slider    */
/*----------------------------------------*/

.oms-ref-logo-hover .has-hover .image-color img {
	opacity:0.3
}

.oms-ref-logo-hover .has-hover:hover .image-color img {
	opacity:1;
}

/*----------------------------------------*/
/*    Blockquote    */
/*----------------------------------------*/

blockquote {
    border-left: unset;
    color: #333;
    font-size: 1.2em;
    font-style: normal;
    margin: 0;
    padding: 0;
    position: relative;
}
blockquote p {
	color:var(--color-charcoal-900);
	font-size: 2rem;
	font-weight: 400;
	line-height: 1.4;
	margin: 20px 0 30px 0;
}
blockquote p:before {
	content:"";
	position: absolute;
	width: 75px;
	height: 52px;
	top:-25px;
	left:-50px;
	background-image: url('https://oms-pruefservice.de/wp-content/uploads/icons/oms-quotemarks.png');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
blockquote p .last-word {
	position: relative;
}
blockquote p .last-word:after {
	content:"";
	position: absolute;
	width: 75px;
	height: 52px;
	bottom:-30px;
	right:-55px;
	background-image: url('https://oms-pruefservice.de/wp-content/uploads/icons/oms-quotemarks.png');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	transform: rotate(180deg);
}

/*----------------------------------------*/
/*    Video Banners    */
/*----------------------------------------*/

.video-banner .banner-inner:before {
	content:"";
	position: absolute;
	width: 80px;
	height: 80px;
	background-image: url('https://oms-pruefservice.de/wp-content/uploads/icons/oms_icon_white_play.svg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	z-index: 99;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
	-webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
	border-radius:99px;
	background-color: rgba(255, 255, 255, 0.1);
	pointer-events: none;
}

.oms-vimeo {
border-radius:30px;
margin-bottom:0}
.oms-vimeo>p{
font-size:0;
margin:0;}

@media only screen and (max-width: 48rem) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/
	.col-mobile-left .col-inner, .col-mobile-left .text-right>div, .col-mobile-left .text-right>div>div{
		text-align:left!important;
	}
	.col-mobile-center .col-inner, .col-mobile-center .text-right>div, .col-mobile-center .text-right>div>div{
		text-align:center;
	}
	.col-mobile-right .col-inner{
		text-align:right;
	}
	  h1, .banner h1, .h1-style {
    font-size: 2.2rem!important;
  }
  h2, .banner h2, .h2-style {
    font-size: 2rem;
  }
  h3, .banner h3, .h3-style {
    font-size: 1.75rem;
  }
  h4, .banner h4, .h4-style {
    font-size: 1.5rem;
  }
  h5, .banner h5, .h5-style {
    font-size: 1.3rem;
  }
  h6, .banner h6, .h6-style {
    font-size: 1.15rem;
  }
	
/*************** Banners.   ***************/
.tm-banner-50 .banner-bg, .tm-banner-50, .tm-banner-50 .banner-layers {
border-radius: 30px;
}
.tm-banner-40 .banner-bg, .tm-banner-40, .tm-banner-40 .banner-layers {
border-radius: 24px;
}
.tm-banner-30 .banner-bg, .tm-banner-30, .tm-banner-30 .banner-layers {
border-radius: 21px;
}
.tm-banner-20 .banner-bg, .tm-banner-20, .tm-banner-20 .banner-layers {
border-radius: 16px;
}
.tm-banner-10 .banner-bg, .tm-banner-10, .tm-banner-10 .banner-layers {
border-radius: 6px;
}
}