/*
Theme Name: OMA2
Version: 1.0
Author: Bonfire Themes
Author URI: http://bonfirethemes.com/
Description: OMA2
Tags: light, responsive-layout, custom-background, custom-menu, editor-style, two-columns, right-sidebar, featured-images, full-width-template, sticky-post, translation-ready
Text Domain: oma2
License: GNU GENERAL PUBLIC LICENSE, Version 2
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/*************************************************************
[TABLE OF CONTENTS]

- GENERAL STYLING
- BLOG POST
- PAGES
- AUTHOR PAGE
- SHOWING TAGS/CATEGORIES/SEACRH RESULTS/AUTHOR
- LISTS
- HEADINGS
- POSTS, PAGES
- POST PAGINATION
- AUTHOR
- PREV/HOME/NEXT POST BUTTONS
- NAVIGATION (BLOG INDEX, CAT, etc.)
- POST FORMATTING
- CLEAR & ALIGNMENT
*************************************************************/


/* GENERAL STYLING
**************************************************/
* {
    box-sizing:border-box;
}
html, body {
	width:100%;
    height:100%;
    margin:0;
	padding:0;
    font-family:Inter;
    font-weight:400;
	
	background-color:#fff;
}
/* main content wrapper */
.oma2-content-wrapper {
    position:relative;
    z-index:1;
    padding-top:250px;
}
/* content animation (class added in header.php, everywhere except home due to GSAP conflict) */
.oma2-content-animation {
    transform:translateY(25px);
    opacity:0;

    transition:all 1s ease;
}
.oma2-content-animation.show {
    transform:translateY(0);
    opacity:1;
}
.oma2-content-animation.hide {
    transform:translateY(-15px);
    transition:all .3s ease;
}

/* page transition overlay */
.oma2-transition-overlay {
    position:fixed;
    z-index:999;
    top:0;
    left:0;
    width:100vw;
    height:100vh;
    background-color:#fff;

    transition:opacity .3s ease 0s, left 0s ease 0s;
}
.oma2-transition-overlay img {
    opacity:.15;
    width:150px;
    height:auto;

    position:absolute;
    left:0;
    right:0;
    margin:0 auto;

    margin-top:-50px;
    transform:translateY(0);
    top:50%;

    transition:transform .3s ease, top 0s ease 0s;
}
.oma2-transition-overlay img.show {
    top:calc(50% + 50px);
    transform:translateY(-50px) !important;
    transition:transform .3s ease 0s, top 0s ease 0s;
}
.oma2-transition-overlay img.hide {
    transform:translateY(-25px);
    transition:transform .3s ease, top 0s ease 0s;
}
.oma2-transition-overlay.hide {
    left:-1000%;
    opacity:0;

    transition:opacity .3s ease 0s, left 0s ease .3s;
}

/* text for screen readers */
.screen-reader-text {
	clip:rect(1px, 1px, 1px, 1px);
	position:absolute !important;
	height:1px;
	width:1px;
	overflow:hidden;
}
.screen-reader-text:focus {
	background-color:#f1f1f1;
	border-radius:3px;
	box-shadow:0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip:auto !important;
	color:#21759b;
	display:block;
	font-size:14px;
	font-size:0.875rem;
	font-weight:bold;
	height:auto;
	left:5px;
	line-height:normal;
	padding:15px 23px 14px;
	text-decoration:none;
	top:5px;
	width:auto;
	z-index:100000; /* Above WP toolbar. */
}
a {
    text-decoration:none;
	/* remove the flickering effect of a tapped link when on a touch device */
	-webkit-tap-highlight-color:rgba(0,0,0,0);
    
    -webkit-transition:all .2s ease;
    transition:all .2s ease;
}
a:hover {
	text-decoration:underline;
}
a span {
    -webkit-transition:all .2s ease;
    transition:all .2s ease;
}

/* headings */
h1, h2, h3, h4, h5, h6 {
    font-family:Poppins;
    font-style:normal;
    font-weight:500;

	margin:0;
    padding:0;
}
h1 { font-size:55px; line-height:125%; }
h2 { font-size:30px; line-height:145%; }
h3 { font-size:18px; line-height:145%; }
h4 { font-size:17px; line-height:19px; }
h5 { font-size:16px; line-height:18px; }
h6 { font-size:15px; line-height:17px; }
h1 span { color:#E14C0F; }

.entry-content p a,
.entry-content ul a,
.entry-content ol a,
.single-post .wpsp-question a,
.page .wpsp-question a {
    color:#002111;
}
.entry-content img,
.entry-content iframe {
    width:100%;
}
/* strange editor highlight background color fix */
.entry-content h1 mark,
.entry-content h2 mark,
.entry-content h3 mark {
    background-color:transparent !important;
}

/* article / .entry-content main styles */
article {
    width:100%;
}
article h1,
article h2,
article h3,
article h4,
article h5 {
    font-weight:400;
    color:#3B3C3C;
}
/* content */
.entry-content h1 {
    font-size:38px;
    line-height:120%;
}
.entry-content h2 {
    font-size:26px;
    line-height:38px;
}
.entry-content h3 {
    font-size:22px;
    line-height:35px;
    color:#7C7C7B;
}
.entry-content p {
    font-size:20px;
    line-height:35px;
    color:#7C7C7B;
    margin-bottom:20px;
}
.entry-content p strong {
    font-weight:500;
    line-height:32px;
}
.entry-content p a,
.entry-content li a {
    color:#002111;
    text-decoration:none;
}
.entry-content p a:hover,
.entry-content li a:hover {
    color:#002111;
    text-decoration:underline;
}
/* hide recaptcha badge */
.grecaptcha-badge {
    visibility:hidden !important;
}


/* CONTENT PAGES (/over-ons etc.)
**************************************************/
.content-page article h1,
.content-page article h2,
.content-page article h3,
.content-page article h4 {
    font-family:Poppins;
    font-weight:600;
    line-height:140%;
    color:#000;
}
.content-page article h1 {
    font-weight:500;
    font-size:26px;
    margin-bottom:20px;
}
.content-page article h2 {
    font-size:43px;
}
.content-page article h3 {
    font-size:28px;
}
.content-page article h4 {
    font-size:22px;
}
.content-page article p,
.content-page article ul,
.content-page article li,
.content-page article ol {
    font-size:22px;
    line-height:40px;
    color:#5C616A;
}
.content-page article p a,
.content-page article p a:hover,
.oma2-case-main article a,
.oma2-case-main article a:hover {
    color:#5C616A;
}
.content-page article strong {
    font-weight:700;
}

/* singular Dienst template adjustments */
.oma2-dienst-main.content-page article h2 {
    font-size:34px;
    line-height:36px;
    margin-bottom:25px;
}
.oma2-dienst-main.content-page article p,
.oma2-dienst-main.content-page article ul li,
.oma2-dienst-main.content-page article ol li {
    font-size:18px;
    line-height:32px;
}



/* HEADER
**************************************************/
/* header wrapper */
.oma2-header-wrapper {
    position:fixed;
    z-index:1000;
    width:100%;
    height:auto;
    backdrop-filter:blur(10px);
    background-color:rgba(255,255,255,0.9);

    will-change:transform;
    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
    -webkit-transform-style:preserve-3d;
    
    transform:translateY(0);
    transition:transform 0.3s ease;
}
.oma2-header-wrapper.hidden {
    transform: translateY(-100%);
}

/* header OMA portfolio notice */
.oma2-portfolio-notice {
    width:100%;
    height:50px;
    backdrop-filter:blur(10px);
    background-color:#D21216;

    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
}
.oma2-portfolio-notice-inner {
    display:flex;
    align-items:center;
    justify-content:center;
    width:1360px;
    margin:0 35px;
}
.oma2-portfolio-notice a {
    color:#fff;
}
.oma2-portfolio-notice .oma2-phone {
    width:max-content;
    margin:0 0 0 auto;
}
.oma2-portfolio-notice .oma2-phone img {
    margin:0 0 0 auto;
    transform:translateY(3px) translateX(-5px);
}

/* header OMA logo + menu */
.oma2-header {
    display:flex;
    align-items:center;
    justify-content:center;

    height:140px;
}
.oma2-header-inner {
    display:flex;
    align-content:center;
    justify-content:center;
    width:1360px;
    margin:0 35px;
}
.oma2-search-menu {
    position:relative;
    display:flex;
    align-items:center;
    height:max-content;
    margin:0 0 0 auto;
    height:inherit;
}
.oma2-search-button {
    cursor:pointer;
    padding:5px 5px 2px 5px;
}

/* logo plus signs */
.oma2-header-inner > a {
    position:relative;
}
.oma2-header-inner > a .oma2-logo-plus {
    position:absolute;
    top:44px;
    left:51px;
}
.oma2-header-inner > a .oma2-logo-plus:nth-of-type(2) {
    top:57px;
}
.oma2-header-inner > a .oma2-logo-plus:nth-of-type(3) {
    top:70px;
}




/* HEADER HANGING SERVICE
**************************************************/
.oma2-hanging-service {
    position:relative;
    top:0;
    margin:-60px -10px -150px auto;
    width:220px;
    height:210px;
    
    background-image:url(images/header-hanging.svg);
    background-size:100% auto;
    background-repeat:no-repeat;
}
.oma2-hanging-service::before {
    content:'';
    position:absolute;
    top:0;
    left:-15px;
    right:0;
    margin:0 auto;
    width:150px;
    height:2px;
    border-radius:10px;
    background-color:#000;
}

.oma2-hanging-service a {
    position:absolute;
    left:7px;
    bottom:25px;
    color:#fff;
    font-size:15.5px;
    line-height:21px;
    font-weight:600;
    letter-spacing:-4%;
    width:100%;
    height:70px;
    transform:rotate(-8deg);
    text-align:center;

    display:flex;
    flex-direction:column;
    justify-content:center;
}
.oma2-hanging-service a:hover {
    text-decoration:none;
}
.oma2-hanging-service a span {
    font-weight:500;
}

/* responsive layout */
@media (max-width: 1550px) {

    .oma2-hanging-service {
        margin-right:-20px
    }

}
@media (max-width: 1000px) {

    .oma2-hanging-service {
        transform:scale(.85);
        transform-origin:top;
    }

}
@media (max-width: 650px) {

    .oma2-hanging-service {
        margin-top:-30px;
        margin-bottom:-180px;
        margin-right:-40px;
        transform:scale(.65);
        transform-origin:top;
    }

}
@media (max-width: 400px) {

    .oma2-hanging-service {
        margin-right:-7px;
        transform:scale(.55);
        transform-origin:top right;
    }

}




/* HEADER MENU BUTTON
**************************************************/
.oma2-menu-button {
    position:relative;
    z-index:10;
    width:40px;
    height:30px;

    margin-left:25px;
    margin-right:15px;

    cursor:pointer;

    -webkit-transition:transform .2s cubic-bezier(.5, 1, 0.2, 2), background-color .2s ease;
    transition:transform .2s cubic-bezier(.5, 1, 0.2, 2), background-color .2s ease;
}
.oma2-menu-button:active {
    -webkit-transform:scale(.9);
    transform:scale(.9);
}
/* menu button 02 middle bar */
.oma2-menu-button-inner {
    position:absolute;
    content:'';
    top:13px;
    left:-1px;
}
/* menu button 02 top bar */
.oma2-menu-button-inner::before {
    position:absolute;
    content:'';
    top:-5px;
    
    width:42px;
    height:4px;
    background-color:#000;

    -webkit-transform:scaleX(1);
    transform:scaleX(1);

    -webkit-transition:transform .25s cubic-bezier(.2, 0, 0.2, 1.65);
    transition:transform .25s cubic-bezier(.2, 0, 0.2, 1.65);
}
.oma2-menu-button.active .oma2-menu-button-inner::before {
    background-color:#fff;
    -webkit-transform:translateY(5px) rotate(-45deg) scaleX(1);
    transform:translateY(5px) rotate(-45deg) scaleX(1);
}
/* menu button 02 bottom bar */
.oma2-menu-button-inner::after {
    position:absolute;
    content:'';
    top:5px;
    left:0;
    
    width:42px;
    height:4px;
    background-color:#000;

    -webkit-transform:scaleX(1);
    transform:scaleX(1);

    -webkit-transition:transform .25s cubic-bezier(.2, 0, 0.2, 1.65);
    transition:transform .25s cubic-bezier(.2, 0, 0.2, 1.65);
}
.oma2-menu-button.active .oma2-menu-button-inner::after {
    background-color:#fff;
    -webkit-transform:translateY(-5px) rotate(45deg) scaleX(1);
    transform:translateY(-5px) rotate(45deg) scaleX(1);
}


/* HEADER POPUP MENU
**************************************************/
.oma2-menu-wrapper {
    position:absolute;
    z-index:9;
    top:0;
    right:-10000px;
    width:680px;
    min-height:400px;
    height:auto;
    padding:85px 0 40px 75px;
    background-color:#D21216;
    
    opacity:0;
    transform:translateY(10px);
    transform-origin:top right;
    
    transition:transform .15s cubic-bezier(.25, .5, 0.5, 2);
}
.oma2-menu-wrapper.active {
    right:-10px;
    
    opacity:1;
    transform:translateY(0);
}
.oma2-menu-wrapper,
.oma2-menu-wrapper a {
    color:#fff;
}
.oma2-menu-wrapper a {
    display:block;
    width:max-content;
    font-size:19px;
    line-height:30px;
    margin:25px 0;
}
.oma2-menu-wrapper a img {
    transform:translateY(8px);
    margin-right:12px;
}
.oma2-menu-wrapper ul,
.oma2-menu-wrapper li {
    list-style-type:none;
    padding:0;
    margin:0;
}
.oma2-menu-wrapper ul.menu {
    column-count:2;
    margin-right:65px;
    border-bottom:1px solid;
    padding-bottom:25px;
}
.oma2-menu-wrapper ul.menu li a {
    font-family:Poppins;
    font-weight:500;
    line-height:50px;
    margin:0 0 30px 0;
    font-size:35px;
}

/* popup menu animations */
.oma2-menu-wrapper ul.menu li {
    opacity:0;
    transform:translateY(-10px);

    transition:.25s cubic-bezier(.25, .5, 0.5, 2.2);
}
.oma2-menu-wrapper.active ul.menu li {
    opacity:1;
    transform:translateY(0);
}
.oma2-menu-wrapper.active li:first-of-type {
    transition-delay:0s;
}
.oma2-menu-wrapper.active li:nth-of-type(2) {
    transition-delay:.05s;
}
.oma2-menu-wrapper.active li:nth-of-type(3) {
    transition-delay:.1s;
}
.oma2-menu-wrapper.active li:nth-of-type(4) {
    transition-delay:.15s;
}
.oma2-menu-wrapper.active li:nth-of-type(5) {
    transition-delay:.2s;
}
.oma2-menu-wrapper.active li:nth-of-type(6) {
    transition-delay:.25s;
}
.oma2-menu-wrapper.active li:nth-of-type(7) {
    transition-delay:.3s;
}

/* popup menu links hover */
.oma2-menu-wrapper ul.menu li a {
    position:relative;
}
.oma2-menu-wrapper ul.menu li a:hover,
.oma2-menu-wrapper > a:hover {
    text-decoration:none;
}
.oma2-menu-wrapper ul.menu li a::after {
    position:absolute;
    content:'';
    z-index:-1;
    left:0;
    width:100%;
    height:3px;
    background-color:rgba(255,255,255,0.75);
    opacity:1;
    bottom:2px;
    transform:scale(0,1);
    transition:transform 0.25s;
    transform-origin:left top;
}
.oma2-menu-wrapper ul.menu li a:hover::after {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}

/* mail+phone animation */
.oma2-menu-wrapper a:not(li a) {
    opacity:0;
    transform:translateY(-10px);

    transition:.25s cubic-bezier(.25, .5, 0.5, 2.2);
}
.oma2-menu-wrapper.active a:not(li a) {
    opacity:1;
    transform:translateY(0);
}
.oma2-menu-wrapper.active a:not(li a):first-of-type {
    transition-delay:.25s;
}
.oma2-menu-wrapper.active a:not(li a):nth-of-type(2) {
    transition-delay:.3s;
}



/* LANGUAGE SWITCHER (inside header popup menu)
**************************************************/
.oma2-wpml-widget-wrapper {
    position:absolute;
    bottom:50px;
    right:75px;
    overflow:hidden;
    padding-left:30px;
    width:85px;
    height:30px;
    margin:0 !important;
    display:flex;
    align-items:center;
}
/* globe icon */
.oma2-wpml-widget-wrapper .oma2-wpml-globe-icon {
    position:absolute;
    width:21px;
    height:21px;
    top:4px;
    left:0px;

    background-image:url(icons/language-globe.svg);
    background-size:21px 21px;
}

.wpml-language-switcher-block ul {
    transform:translateX(30px);
    height:25px;
}
.wpml-language-switcher-block ul li:first-of-type {
    padding-left:0px !important;
    margin-top:1px !important;
}
html[lang="en-US"] .wpml-language-switcher-block ul li:first-of-type {
    margin-top:0 !important;
}
.wpml-language-switcher-block li,
.wpml-language-switcher-block li a:hover {
    font-size:14px;
    font-weight:700;
    text-decoration:none;
    color:rgba(255,255,255,1) !important;
}
.wpml-language-switcher-block li a {
    font-size:14px;
    font-weight:700;
    color:rgba(255,255,255,0.5) !important;
}
/* divider */
.oma2-wpml-widget-wrapper ul:first-child::before {
    content:'/';
    position:absolute;
    top:2px;
    left:23px;
    width:1px;
    height:20px;
}
html[lang="en-US"] .oma2-wpml-widget-wrapper ul:first-child::before {
    left:22px;
}
html[lang="en-US"] .wpml-language-switcher-block li div a {
    min-height:19px !important;
    line-height:100% !important;
}
/* align all language items vertically */
.wpml-language-switcher-block li div,
.wpml-language-switcher-block li div a,
.wpml-language-switcher-block li div span {
    display:flex;
    align-items:center;
    height:100%;
    line-height:normal;
}


/* BUTTONS
**************************************************/
/* button with underline white */
a.button-underline-white {
    position:relative;
    z-index:1;
    display:inline-block;
    text-decoration:none;
}
a.button-underline-white::before {
    position:absolute;
    z-index:-1;
    left:0;
    content:'';
    width:100%;
    height:1px;
    background-color:#D2D2FF;
    opacity:.3;
    bottom:-4px;
}
a.button-underline-white::after {
    position:absolute;
    z-index:-1;
    left:0;
    content:'';
    width:100%;
    height:2px;
    background-color:#D21216;
    opacity:1;
    bottom:-4px;
    transform:scale(0,1);
    transition:transform 0.25s;
    transform-origin:left top;
}
a.button-underline-white:hover::after {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}



/* BLOG POST
**************************************************/
/* edit link */
a.post-edit-link {
    display:block;
    width:max-content;
    margin-top:25px;
    font-size:22px;
    font-weight:500;
    color:#002111;
    text-decoration:underline;
    margin-top:50px;
}
a.post-edit-link:hover {
    text-decoration:none;
}



/* AUTHOR PAGE
**************************************************/
.author-desc-wrapper {
	margin:-7px auto 57px auto;
    max-width:727px;
    text-align:center;
}
/* author name */
.author-name {
	margin:0 20px;
	padding:0 0 9px 0;
}


/* SHOWING TAGS/CATEGORIES/SEACRH RESULTS/AUTHOR
**************************************************/
.showing {
    text-align:center;
}
.showing-inner {
    margin:0 20px;
}
.showing span {
    color:#888;
}
.showing span a {
    color:#888;
    text-decoration:underline;
}
.showing span a:hover {
    text-decoration:none;
}
.showing p a {
    color:#002111;
}
.tag-description {
	padding:0 0 17px 0;
}
.tag-description p {
	padding:0;
}


/* LISTS
**************************************************/
ul, ol {
	margin-bottom:20px;
}
.entry-content ul li {
	margin:0 12px 0 18px;
	text-align:left;
}

.entry-content ol li {
	margin: 0 12px 0 21px;
	text-align:left;
}

@media (max-width: 1000px) {
    .entry-content ul li,
    .entry-content ol li {
        font-size:16px;
        line-height:26px;
    }
}
@media (max-width: 650px) {

    .entry-content ul li,
    .entry-content ol li {
        font-size:14px;
        line-height:20px;
    }

}


/* POSTS, PAGES
**************************************************/
.post {
	margin:0;
	padding:0;
}
/* mini divider */
.mini-divider {
	border-bottom:2px solid #252525;
	width:45px;
	margin:20px 0 28px 0;
}
.page-end-spacer {
	height:5px;
	display:block;
}


/* POST PAGINATION
**************************************************/
.link-pages p {
	font-size:13px;
	margin:0 20px 30px 0;
}
.link-pages a {
	text-decoration:underline;
	border-bottom:none;
}
.link-pages a:hover {
	text-decoration:none;
	background-color:transparent;
}


/* AUTHOR
**************************************************/
/* post author */
.post-author a {
	border-bottom:none;
	text-decoration:none;
}
.post-author a:hover {
	border-bottom:none;
	background:transparent;
	text-decoration:none;
}


/* TAGS
**************************************************/
.post-cat-tag {
    font-weight:400;
    margin-left:5px;
}
.post-cat-tag span {
    display:block;
}
.post-cat-tag a {
    font-size:15px;
	line-height:23px;
	margin:0;
	padding:0;
	border-bottom:none;
	
	text-decoration:underline;
	
	-webkit-transition:all .15s ease;
	-moz-transition:all .15s ease;
	transition:all .15s ease;
}
.post-cat-tag a:hover {
	text-decoration:none;
}


/* PREV/HOME/NEXT POST BUTTONS
**************************************************/
/* wrapper */
.prev-home-next-wrapper {
	clear:both;
	margin:-10px auto 0 auto;
	padding:0 0 5px 0;
	max-width:747px;
	text-align:center;
}
/* links */
.prev-home-next-wrapper a {
	margin:0;
	padding:0;
	font-size:14px;
	text-decoration:underline;
}
.prev-home-next-wrapper a:hover {
	text-decoration:none;
}
/* prev post */
.prev-home-next-wrapper .prev-post {
	padding-right:3px;
}
/* home */
.prev-home-next-wrapper .home-link {
	padding:0 7px 0 7px;
}
/* next post */
.prev-home-next-wrapper .next-post {
	padding-left:3px;
}


/* NAVIGATION (BLOG INDEX, CAT, etc.)
**************************************************/
.post-nav {
    display:block;
    width:max-content;
    margin:25px auto 0 auto;
}
.post-nav .prev,
.post-nav .next {
    width:47px;
    height:47px;
    margin:4px;
    border-radius:50px;
    display:inline-block;
    background-repeat:no-repeat;
    background-position:center center;
    cursor:pointer;
    outline:2px solid transparent;
    background-color:#fff !important;

    transition:all .15s ease;

    filter:drop-shadow(0px 4px 4px rgba(0,0,0,.1));
}
.post-nav .prev {
    float:left;
    background-image:url(icons/icon-arrow-left.svg);
}
.post-nav .next {
    background-image:url(icons/icon-arrow-right.svg);
}
.post-nav .prev:hover,
.post-nav .next:hover {
    outline:2px solid #fff;
}
.post-nav .prev:active,
.post-nav .next:active {
    -webkit-transform:scale(0.9);
    transform:scale(0.9);

    filter:drop-shadow(0px 1px 2px rgba(0,0,0,0.1));
}
.post-nav .prev.inactive,
.post-nav .next.inactive {
    pointer-events:none;
    opacity:.5;
}


/* POST FORMATTING
**************************************************/
img.alignleft, img.aligncenter, img.alignright, img.alignnone {
	padding:0;margin:0;
}
img.alignleft {
	padding-right:20px;
	padding-bottom:10px;
}
img.alignright {
	padding-left:20px;
	padding-bottom:10px;
}
img.aligncenter {
	margin:0 auto;
}
.alignleft {
	float:left;
	margin-right:30px;
}
.alignright {
	float:right;
	margin-left:30px;
}
.aligncenter {
	margin:0 auto;
	display:block;
}
.wp-caption {
	max-width:100%;
	margin:0;
	padding:0;
}
.wp-caption.alignleft {
	text-align:left;
}
.wp-caption.alignright {
	text-align:right;
}
.wp-caption.aligncenter {
	text-align:center;
}
.wp-caption img {
	margin:0;
	padding:0;
}
.wp-caption-text {
	position:relative;
	font-size:12px;
	line-height:18px;
	margin:10px 0 30px -1px;
	min-width:100%;
}
/* caption lines */
.wp-caption.alignnone .wp-caption-text::before,
.wp-caption.alignleft .wp-caption-text::before,
.wp-caption.alignright .wp-caption-text::before,
.wp-caption.aligncenter .wp-caption-text::before {
	content:'';
	display:block;
	width:88px;
	height:2px;
	position:absolute;
	top:-8px;
}
.wp-caption.alignnone .wp-caption-text::before,
.wp-caption.alignleft .wp-caption-text::before { left:-30px; }
.wp-caption.alignright .wp-caption-text::before { right:-31px; }
.wp-caption.aligncenter .wp-caption-text::before { margin:0 auto; left:0; right:0; }


/* CLEAR & ALIGNMENT
**************************************************/
.clear { clear:both; }
.left { float:left; }
.right { float:right; }
.textleft { text-align:left; }
.textright { text-align:right; }
.textcenter { text-align:center; }

/* clearfix */
.clearfix:after, #body:after, #footer:after, footer:after, .pagenav:after, #main-nav:after, .menu:after, .gallery:after
{ visibility: hidden; display: block; font-size: 0; clear: both; height: 0; }
.clearfix, #body, #footer, footer, .pagenav, #main-nav, .menu
{ display: inline-block; }
/* clearfix for ie7 */
.clearfix, #body, #footer, footer, .pagenav, #main-nav, .menu, .gallery
{ display: block; }


/* GRADIENT BACKGROUND (usually on first section)
**************************************************/
.gradient-bg::before {
    content:"";
    position:absolute;
    z-index:-1;
    bottom:0;
    left:0;
    right:0;
  
    height:calc(200px + 50%);
  
    background:linear-gradient(to top, #F4F4F4, #fff);
}

/* OVERONS BLOCK
**************************************************/
.oma2-block-overons {
    position:relative;
    z-index:10;
    padding:0;
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-block-overons-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
}

.oma2-block-overons h1 {
    font-size:26px;
    line-height:30px;
    font-weight:500;
}
.oma2-block-overons p {
    font-family:Poppins;
    font-weight:600;
    font-size:43px;
    line-height:60px;
    margin:20px 200px 65px 0;
}

.oma2-overons-content {
    display:flex;
    flex-wrap:wrap;
    align-items:flex-end;
    width:100%;
}
.oma2-overons-video {
    position:relative;
    width:100%;
    max-height:900px;
    margin:0 auto;
}
.oma2-overons-video .video-container {
    position:relative;
    z-index:1;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-color:#000;

    display:inline-block;

    -webkit-mask-image:linear-gradient(to bottom, black 0%, black 100%);
    mask-image:linear-gradient(to bottom, black 0%, black 100%);

    -webkit-mask-size:100% 0%;
    mask-size:100% 0%;

    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;

    -webkit-mask-position:top;
    mask-position:top;

    transition:mask-size .75s ease, transform 1.15s ease;

    transform:translateY(-25px);
}
.oma2-overons-video.show .video-container {
    -webkit-mask-size:100% 100%;
    mask-size:100% 100%;

    transform:translateY(0);
}
/* gray overlay */
.oma2-overons-video .video-container::before {
    content:'';
    position:absolute;
    z-index:999;
    bottom:0;
    left:0;
    width:100%;
    height:100%;
    background-color:#F3F3F3;
}
.oma2-overons-video.show .video-container::before {
    transform:scaleY(1);
    transform-origin:bottom;
    animation:dropGrey 1.15s ease forwards;
}
@keyframes dropGrey {
    0%, 35% { transform:scaleY(1); }
    100% { transform:scaleY(0); }
}
.oma2-overons-video .video-container video {
    position:relative;
    z-index:0;
    object-fit:cover;
    display:block;
    width:100%;
    height:100%;
}

/* overons left content */
.oma2-index-overons-left {
    position:relative;
    flex:1;
    display:flex;
    flex-direction:column;
    justify-content:left;
    padding:125px 0 90px 75px;
    will-change:transform;
}

.oma2-index-overons-left h3 {
    font-weight:600;
    font-size:34px;
    line-height:40px;
    max-width:525px;
}
.oma2-index-overons-left p {
    font-weight:400;
    font-size:22px;
    line-height:34px;
    color:#5C616A;
    margin-right:0;
    max-width:525px;
    margin-bottom:50px;
}

/* overons right content */
.oma2-index-overons-right {
    position:relative;
    width:700px;
    height:575px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:left;
    overflow-y:hidden;
    flex-shrink:0;
}
/* bottom gradient */
.oma2-index-overons-right::before {
    content:'';
    position:absolute;
    z-index:1;
    left:0;
    bottom:0;
    width:100%;
    height:80px;
    background:linear-gradient(to top, #F4F4F4, transparent);
    pointer-events:none;
}
.oma2-overons-card {
    position:absolute;
    display:block;
    width:540px;
    height:320px;
    margin:5px auto 30px auto;
    padding:85px 0 0 115px;
    background-color:#fff;
    
    -webkit-box-shadow:0px 0px 40px 0px rgba(0,0,0,0.05);
    box-shadow:0px 0px 40px 0px rgba(0,0,0,0.05);
}
.oma2-overons-card:first-child { margin-top:10px; }
.oma2-overons-card:nth-child(2) { margin-top:20px; }
.oma2-overons-card:nth-child(3) { margin-top:30px; }
.oma2-overons-card:nth-child(4) { margin-top:40px; }
.oma2-overons-card:nth-child(5) { margin-top:50px; }
.oma2-overons-card:nth-child(6) { margin-top:60px; }
.oma2-overons-card:nth-child(7) { margin-top:70px; }
.oma2-overons-card:nth-child(8) { margin-top:80px; }
.oma2-overons-card:nth-child(9) {
    margin-top:90px;
    padding:0;
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}

.oma2-overons-card::before {
    position:absolute;
    top:90px;
    left:35px;
    font-size:22px;
    font-weight:600;
    color:#D21216;
}
.oma2-overons-card:first-child::before { content:'01'; }
.oma2-overons-card:nth-child(2)::before { content:'02'; }
.oma2-overons-card:nth-child(3)::before { content:'03'; }
.oma2-overons-card:nth-child(4)::before { content:'04'; }
.oma2-overons-card:nth-child(5)::before { content:'05'; }
.oma2-overons-card:nth-child(6)::before { content:'06'; }
.oma2-overons-card:nth-child(7)::before { content:'07'; }
.oma2-overons-card:nth-child(8)::before { content:'08'; }

.oma2-overons-card:not(:last-child) h3 {
    font-weight:700;
    font-size:38px;
    line-height:44px;
    color:#090816;
    max-width:350px;
}
.oma2-overons-card:not(:last-child) p {
    font-family:Inter;
    font-weight:400;
    font-size:22px;
    line-height:33px;
    color:#5C616A;
    width:100%;
    max-width:325px;
    margin-top:15px;
}

/* final card */
.oma2-overons-card-final {
    margin-top:90px;
    padding:0;
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}
.oma2-overons-card-final h3 {
    font-weight:700;
    font-size:38px;
    line-height:44px;
    color:#D21216;
    text-align:center;
    margin-top:25px;
}
/* final card lower info */
.oma2-overons-card-final-lower {
    transform:translateY(85px);
    height:auto;
    background:transparent;
    outline:none;

    font-weight:700;
    font-size:38px;
    line-height:44px;
    color:#D21216;
    text-align:center;
    padding:0;

    -webkit-box-shadow:none;
    box-shadow:none;
}
.oma2-overons-card-final-lower h3 {
    font-weight:700;
    font-size:38px;
    line-height:44px;
    color:#090816;
    text-align:center;
}
.oma2-overons-card-final-lower p,
.oma2-overons-card-final-lower p a {
    font-weight:400;
    font-size:18px;
    line-height:44px;
    color:#5C616A;
    padding:0;
    width:100%;
    margin:0;
}
.oma2-overons-card-final-lower p a {
    font-weight:700;
}
.oma2-overons-card-final-lower img {
    width:20px;
    height:auto;
    transform:translateY(2px);
}



/* LATEST BLOGS BLOCK
**************************************************/
.cta-latest-blogs {
    position:fixed;
    z-index:1000;
    left:20px;
    bottom:20px;
    height:50px;
    display:block;
    width:max-content;
    padding:0 15px 0 20px;
    border-radius:50px;
    outline:1.5px solid #575757;
    pointer-events:auto;

    display:flex;
    align-items:center;

    backdrop-filter:blur(10px);
    background-color:rgba(255,255,255,0.9);
}
.cta-latest-blogs img {
    margin-right:12px;
    flex-shrink:0;
    pointer-events:auto;
}
.text-rotator-container {
    overflow:hidden;
    transition:width 0.7s ease;
    pointer-events:auto;
}
.rotating-posts {
    position:relative;
    padding:15px 10px 15px 0;
}
a.post-link {
    position:absolute;
    z-index:0;
    left:0;
    top:0;
    opacity:0;
    pointer-events:none;
    white-space:nowrap;
    transition:opacity 0.7s ease;

    font-size:18px;
    font-weight:600;
    color:#000;

    padding:inherit;
}
.post-link.visible {
    position:relative;
    z-index:1;
    opacity:1;
    pointer-events:auto;
}




/* CARDS BLOCK
**************************************************/
.oma2-block-cards {
    position:relative;
    z-index:10;
    padding:0;
    display:flex;
    justify-content:center;
    align-items:center;

    background-color:#fff;
}
.oma2-block-cards-inner {
    position:relative;
    width:100%;
    margin:0 auto;
}

.oma2-cards-wrapper {
    width:100%;
    padding:125px 0 150px 0;
    overflow-x:hidden;
}
.oma2-cards-inner {
    width:max-content;
    display:flex;
    flex-direction:row;
    align-items:center;
    margin:0 auto;
}
.oma2-cards-inner img {
    height:100%;
    width:auto;
    display:block;
    flex-shrink:0;
    margin-right:90px;
    box-shadow:10px 10px 20px 0px rgba(0,0,0,0.2);
}



/* LOGOS BLOCK
**************************************************/
.oma2-block-logos {
    position:relative;
    z-index:10;
    padding:35px 0 0 0;
    display:flex;
    justify-content:center;
    align-items:center;

    background-color:#fff;
}
.oma2-block-logos-inner {
    position:relative;
    width:100%;
    max-width:1300px;
    margin:0 35px;
}

.oma2-block-logos img {
    width:100%;
    height:auto;
}

/* logos slider */
.oma2-logo-grid {
    margin:0 auto;
    display:grid;
    width:100%;
    max-width:1000px;
    grid-template-columns:repeat(4, 1fr);
    gap:5px;
}
.oma2-logo-slot {
    display:flex;
    position:relative;
    aspect-ratio:1 / .4;
    overflow:hidden;
}

.oma2-logo-slot img {
    max-width:80%;
    max-height:40%;
    object-fit:contain;
    display:block;
    margin:auto;
}
@media (max-width: 650px) {
    .oma2-logo-grid {
        grid-template-columns:repeat(2, 1fr);
    }
    .oma2-logo-slot {
        aspect-ratio:auto;
      height:100px;
    }
    .oma2-logo-slot img {
        max-height:40%;
    }
}



/* FAQ BLOCK
**************************************************/
.oma2-block-faq {
    position:relative;
    z-index:10;
    padding:25px 50px 200px 50px;

    display:flex;
    align-items:center;
    justify-content:center;
}
.oma2-block-faq-inner {
    width:1300px;
    margin:0 auto;
    display:flex;
    gap:50px;
}
/* toggle boxes closed by default */
.faq-answer { display:none; }

/* FAQ wrapper */
.faq-items-wrapper {
    flex:1;
    max-width:825px;
    margin:0 auto 0 0;
}
/* FAQ content */
.oma2-faq-content {
    display:flex;
    justify-content:left;
    align-items:center;
    margin-bottom:25px;
}
.oma2-faq-content h2 {
    font-size:34px;
    font-weight:600;
}
.oma2-faq-content a {
    display:inline-flex;
    justify-content:right;

    font-size:17px;
    font-weight:400;
    color:#D21216;
    text-decoration:underline;
    margin:0 0 0 auto;

    -webkit-transition:.2s ease;
    transition:.2s ease;
}
.oma2-faq-content a:hover {
    text-decoration:none;
}
/* Q&A */
.faq-items-wrapper .faq-item:nth-child(2) {
    border-top:1px solid #BBBAB2;
}
.faq-item {
    position:relative;
    font-size:20px;
    color:#3B3C3C;
    padding:0;
    border-bottom:1px solid #BBBAB2;
}
.faq-question {
    cursor:pointer;
    padding:20px 40px 20px 10px;

    -webkit-transition:.2s ease;
    transition:.2s ease;
}
.faq-question:hover,
.faq-item.active .faq-question {
    color:#D21216;
}
.faq-answer {
    font-size:18px;
    line-height:150%;
    padding:0 75px 25px 10px;
}
.faq-answer a {
    display:block;
    width:fit-content;
    color:#002111;
    margin-top:15px;
}
/* faq toggle item */
.faq-toggle {
    position:absolute;
    top:17.5px;
    right:10px;
    width:25px;
    height:25px;
    pointer-events:none;
}
.faq-toggle::before {
    content:'+';
    position:absolute;
    top:2px;
}
.faq-question:hover .faq-toggle::before {
    color:#D21216;
}
.faq-item.active .faq-toggle::before {
    content:'-';
    margin-left:3px;
    margin-top:-1px;
}
/* FAQ appearance animation */
.faq-items-wrapper .faq-item {
    transform:translateY(50px);
    opacity:0;
    transition:all .75s ease;
}
.faq-items-wrapper.show .faq-item {
    transform:translateY(0);
    opacity:1;
}
.faq-items-wrapper .faq-item:nth-of-type(2) {
    transition-delay:.1s;
}
.faq-items-wrapper .faq-item:nth-of-type(3) {
    transition-delay:.2s;
}
.faq-items-wrapper .faq-item:nth-of-type(4) {
    transition-delay:.3s;
}
.faq-items-wrapper .faq-item:nth-of-type(5) {
    transition-delay:.4s;
}
.faq-items-wrapper .faq-item:nth-of-type(6) {
    transition-delay:.5s;
}

.hidden-until-loaded {
    -webkit-mask-image:linear-gradient(to bottom, black 0%, black 100%);
    mask-image:linear-gradient(to bottom, black 0%, black 100%);

    -webkit-mask-size:100% 0%;
    mask-size:100% 0%;

    -webkit-mask-repeat:no-repeat;
    mask-repeat:no-repeat;

    -webkit-mask-position:top;
    mask-position:top;

    transition:mask-size 1s ease, transform 1.25s ease;

    transform:translateY(15px);
}
.hidden-until-loaded.loaded {
    -webkit-mask-size:100% 100%;
    mask-size:100% 100%;

    transform:translateY(0);
}
/* gray overlay */
.hidden-until-loaded::before {
    content:'';
    position:absolute;
    z-index:999;
    bottom:0;
    left:0;
    width:100%;
    height:100%;
    background-color:#F7F7F7;
}
.hidden-until-loaded.loaded::before {
    transform:scaleY(1);
    transform-origin:bottom;
    animation:dropGrey 1.15s ease forwards;
}
/* dienst related stories adjustment */
.page-template-page-dienst .hidden-until-loaded::before {
    background-color:#FDFDFD;
}
/* iOS appearance animation fix for /cases */
.case-thumb.hidden-until-loaded {
    opacity:0;
    visibility:hidden;
    transition:opacity 360ms ease;
}
.case-thumb.loaded {
    opacity:1;
    visibility:visible;
}
.case-video-embed.hidden-until-loaded {
    opacity:0;
    visibility:hidden;
    transition:opacity 360ms ease;
}
.case-video-embed.loaded {
    opacity:1;
    visibility:visible;
}

/* CTA section */
.faq-cta {
    width:380px;
    height:max-content;
    border-radius:12px;
    background-color:#F5F5F5;
    padding:25px 25px 30px 25px;
    margin-top:10px;
}
.faq-cta h3 {
    font-size:25px;
    font-weight:600;
    letter-spacing:-0.8px;
}
.faq-cta span {
    display:flex;
    border-bottom:1px solid #C4C4C4;
    margin-bottom:10px;
}
.faq-cta span p {
    font-size:16px;
    line-height:160%;
    color:#002111;
    padding:0 20px 10px 0;
    margin-left:5px;
}
.faq-cta span img {
    display:none; /* shown by image randomizer*/
    border-radius:100px;
    margin-top:25px;
}
.faq-cta a {
    font-size:16.5px;
    color:#282828;
}
.faq-cta a:first-of-type {
    line-height:50px;
}
.faq-cta-icon {
    margin-left:5px;
    margin-right:10px;
    transform:translateY(3px);
}



/* SERVICES BLOCK
**************************************************/
.oma2-block-services {
    position:relative;
    z-index:10;
    padding:100px 0 150px 0;
    display:flex;
    justify-content:center;
    align-items:center;

    background-color:#292929;
}
.oma2-block-services-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
}

.oma2-block-services h2 {
    font-size:34px;
    line-height:40px;
    color:#EAEAEA;
}
.oma2-block-services p {
    font-size:20px;
    line-height:30px;
    color:#C7C7C7;
    margin-bottom:75px;
}
.dienst-child-pages-wrapper h2,
.dienst-child-pages-wrapper h2 a {
    font-size:16px;
    line-height:30px;
    font-weight:400;
    color:#fff;
    letter-spacing:-0.6px;
    transition:all .1s ease;
    display:block;
}
.oma2-block-services a:hover {
    font-weight:700;
    text-decoration:none;
}

/* alphabetical */
.oma2-services-alphabetical {
    column-count:4;
}
.oma2-services-alphabetical a {
    display:block;
    break-inside:avoid;
}

/* category/alphabetical switcher */
.oma2-services-switch-wrapper {
    outline:none;
    margin-bottom:20px;
    display:flex;
    gap:15px;

    margin:-40px 15px 60px 0;
}
.oma2-services-switch-wrapper div {
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-services-switch-wrapper div img {
    width:auto;
    height:20px;
    margin-right:7px;
}
.oma2-switch-categories,
.oma2-switch-alphabetical {
    position:relative;
    width:max-content;
    height:auto;
    padding:5px 5px;
    cursor:pointer;
    opacity:.5;

    transition:opacity 0.25s ease;
}
.oma2-switch-categories:hover,
.oma2-switch-alphabetical:hover {
    opacity:1;
}
/*
.oma2-switch-categories:active,
.oma2-switch-alphabetical:active {
    transform:scale(1);
}
*/
.oma2-switch-categories.active,
.oma2-switch-alphabetical.active {
    opacity:1;
    pointer-events:none;
}

/* down arrow */
.oma2-switch-categories::before,
.oma2-switch-alphabetical::before {
    content:'';
    position:absolute;
    left:11px;
    bottom:-8px;

    width:0;
    height:0;
    border-left:5px solid transparent;
    border-right:5px solid transparent;

    border-top:5px solid #ccc;

    transform:translateY(-7px) scale(0);
    opacity:1;
}
.oma2-block-services .oma2-switch-categories::before,
.oma2-block-services .oma2-switch-alphabetical::before {
    border-top-color:#777;
}
.oma2-switch-categories.active::before,
.oma2-switch-alphabetical.active::before {
    transform:translateY(0) scale(1);
    opacity:1;
    transition:all .35s ease .1s;
}
/* underline effect */
.oma2-switch-categories div,
.oma2-switch-alphabetical div {
    position:relative;
    z-index:1;
    display:inline-block;
    text-decoration:none;
  
    font-size:14px;
    font-weight:600;
    color:#111;
}
.oma2-block-services .oma2-switch-categories div,
.oma2-block-services .oma2-switch-alphabetical div {
    color:#fafafa;
}
.oma2-switch-categories div::after,
.oma2-switch-alphabetical div::after  {
    position:absolute;
    z-index:-1;
    left:0;
    content:'';
    width:100%;
    height:2px;
    background-color:#D21216;
    opacity:1;
    bottom:-1px;
    transform:scale(0,1);
    transition:transform 0.25s;
    transform-origin:left top;
}
.oma2-switch-categories:hover div::after,
.oma2-switch-alphabetical:hover div::after,
.oma2-switch-categories.active div::after,
.oma2-switch-alphabetical.active div::after{
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}

/* by category/alphabetical switch icon */
.oma2-switch-icon {
    position:relative;
    width:40px;
    height:20px;
    outline:2px solid #ccc;
    border-radius:50px;
    margin:10px 0 0 0;
    background-color:#fafafa;
}
.oma2-block-services .oma2-switch-icon {
    background-color:#333;
    outline-color:#666;
}
.oma2-switch-icon::before {
    content:'';
    position:absolute;
    top:2px;
    left:2px;
    width:16px;
    height:16px;
    border-radius:50px;
    background-color:#D21216;

    transform:translateX(0);
    transition:all .3s ease-in-out;
}
.oma2-block-services .oma2-switch-icon::before {
    background-color:#fff;
}
.oma2-switch-icon.active::before {
    transform:translateX(20px);
}

/* services filter textfield */
.oma2-switch-filter {
    margin-left:auto;
}
.oma2-switch-filter #oma2-services-filter {
    height:40px !important;
    font-size:16px !important;
    padding:0 10px!important;
    border:1px solid #979797 !important;
    width:250px !important;

    background-image:url(icons/icon-filter.svg);
    background-size:20px auto;
    background-position:right 10px center;
    background-repeat:no-repeat;
}
.oma2-switch-filter #oma2-services-filter:focus {
    outline:none;
    border:none;
    box-shadow:none;
    border:1px solid #7D7D7D !important;
}
.oma2-block-services .oma2-switch-filter #oma2-services-filter {
    color:#fff;
    border-color:#7D7D7D !important;
}
.oma2-block-services .oma2-switch-filter #oma2-services-filter:focus {
    border-color:#979797 !important;
}

/* services filter 'no results' message */
#noResults {
    display:none;
    font-size:16px;
    margin:0;
}


/* by category/alphabetical content wrappers */
.oma2-services-categories,
.oma2-services-alphabetical {
    visibility:hidden;
    opacity:0;
    transform: translateY(40px);
    height:0;
    overflow:hidden;
    transition:all 0.6s ease;
    pointer-events:none;
}
.oma2-services-categories.active,
.oma2-services-alphabetical.active {
    visibility:visible;
    opacity:1;
    transform:translateY(0);
    height:auto;
    pointer-events:auto;
}


/* dienst featured image popup */
.dienst-hover-popup {
    max-width:250px;
    position:absolute;
    pointer-events:none;
    z-index:10;
    background-color:#EDEDED;
    transform:translateY(-50%) translateX(25px);
    margin-right:30px;
    display:block;
    opacity:0;
    transition:opacity .25s ease;
}
.dienst-hover-popup img {
    display:block;
}
.dienst-hover-popup.show {
    opacity:1;
}

/* hide popup image on mobile */
@media (max-width: 650px) {
    .dienst-hover-popup { display:none; }
}

.oma2-block-services .dienst-child-page > h2 a {
    font-weight:700;
}
.oma2-block-services .dienst-child-pages-wrapper ul,
.oma2-block-services .dienst-child-pages-wrapper ul li {
    list-style-type:none;
    padding:0;
    margin:0;
}
.oma2-block-services .dienst-child-pages-wrapper ul {
    margin:10px 0 20px 15px;
}

/* masonry layout */
.dienst-child-pages-wrapper {
    column-count:4;
    column-gap:20px;
}
.dienst-child-page {
    break-inside:avoid;
    margin-bottom:50px;
}



/* SERVICES BLOCK (light background)
**************************************************/
.oma2-block-services-light {
    position:relative;
    z-index:10;
    padding:100px 0 125px 0;
    display:flex;
    justify-content:center;
    align-items:center;

    background-color:#fff;
}
.oma2-block-services-light-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
}

.oma2-block-services-light h2 {
    font-size:34px;
    line-height:40px;
    color:#000;
}
.oma2-block-services-light p {
    font-size:20px;
    line-height:30px;
    color:#5C616A;
    margin-bottom:75px;
}

.oma2-block-services-light .dienst-child-pages-wrapper h2,
.oma2-block-services-light .dienst-child-pages-wrapper h2 a {
    font-size:16px;
    line-height:30px;
    color:#303030;
    font-weight:400;
    letter-spacing:-0.6px;
    transition:all .1s ease;
}
.oma2-block-services-light .dienst-child-pages-wrapper h2 a:hover {
    font-weight:700;
    text-decoration:none;
}
.oma2-block-services-light .dienst-child-page > h2 a {
    font-weight:700;
}
.oma2-block-services-light .dienst-child-pages-wrapper ul,
.oma2-block-services-light .dienst-child-pages-wrapper ul li {
    list-style-type:none;
    padding:0;
    margin:0;
}
.oma2-block-services-light .dienst-child-pages-wrapper ul {
    margin:10px 0 20px 15px;
}



/* SERVICES BLOCK (mobile)
**************************************************/
.oma2-services-mobile { display:none; }
@media (max-width: 650px) {
    .oma2-services-mobile { display:inline; }
}

.oma2-services-mobile ul {
    padding:0;
    margin:0 0 15px 0;
}
.oma2-services-mobile ul,
.oma2-services-mobile ul li {
    list-style-type:none;
}
.oma2-services-mobile ul li {
    border-bottom:1px solid #555;
}
.oma2-services-mobile ul li:last-of-type {
    border-bottom:none !important;
}
.oma2-services-mobile ul li a {
    position:relative;
    width:max-content;
    font-size:16px;
    color:#fff;
    letter-spacing:-2%;
    display:block;
    padding:15px 10px;

    transform:translateX(25px);
    opacity:0;

    transition:.5s ease;
}
.oma2-services-mobile ul li a.show {
    transform:translateX(0);
    opacity:1;
}
.oma2-services-mobile ul li a::after {
    content:'';
    position:absolute;
    top:20px;
    right:-10px;
    width:10px;
    height:10px;
    display:block;

    background-image:url(icons/icon-right-white.svg);
    background-size:11px auto;
    background-position:right center;
    background-repeat:no-repeat;

    transition:transform 0.25s cubic-bezier(.5, 1, 0.2, 2);
}
.oma2-services-mobile ul li a:hover {
    text-decoration:none;
    font-weight:700;
}
.oma2-services-mobile ul li a:hover::after {
    transform:translateX(7px);
}
/* light background changes */
.oma2-block-services-light .oma2-services-mobile ul li a {
    color:#000;
}
.oma2-block-services-light .oma2-services-mobile ul li {
    border-bottom:1px solid #ccc;
}
.oma2-block-services-light .oma2-services-mobile ul li a::after {
    background-image:url(icons/icon-right.svg);
}




/* EMAIL BLOCK
**************************************************/
.oma2-block-email {
    position:relative;
    z-index:10;
    padding:100px 25px 100px 25px;
    display:flex;
    justify-content:center;
    align-items:center;
    background-color:#F3F3F3;
}
.oma2-block-email-inner {
    position:relative;
    width:100%;
    margin:0 auto;

    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
}

.oma2-block-email h3 {
    font-size:34px;
    font-weight:600;
    line-height:40px;
    letter-spacing:-0.8px;
}
.oma2-block-email p {
    font-size:23px;
    line-height:34px;
    letter-spacing:-4.5%;
    color:#292929;
    text-align:center;
}
.oma2-block-email .gform_wrapper {
    max-width:800px !important;
    margin:50px auto 0 auto;
    text-align:left;
}
.oma2-block-email form {
    display:flex;
    justify-content:center;
    margin:0 auto;
    padding:0;
}
.oma2-block-email .gform_body {
    margin:0 !important;
    padding:0 !important;
}
.oma2-block-email .gform_footer,
.oma2-block-email .gform_footer input {
    margin:0 !important;
    padding:0 !important;
}
.oma2-block-email .gform_footer input {
    margin-left:20px !important;
    padding:0 50px !important;
    height:70px !important;
    white-space:nowrap;
}
.oma2-block-email .ginput_container_email input[type="email"] {
    width:540px !important;
}



/* FOOTER BLOCK
**************************************************/
.oma2-block-footer {
    position:relative;
    z-index:10;
    padding:190px 0 20px 0;
    background-color:#000;

    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-block-footer-inner {
    width:1100px;
    margin:0 75px 25px 75px;
}


/* footer slogan + mail */
.oma2-block-footer-inner h3 {
    font-size:72px;
    font-weight:700;
    color:#EBEBEB;
    margin-bottom:20px;
}
.oma2-block-footer-inner a.button-underline-white {
    font-size:36px;
    color:#EBEBEB;
    margin-bottom:5px;
}

/* footer content */
.oma2-footer-wrapper {
    display:flex;
    margin-top:120px;
}
/* footer left side content */
.oma2-footer-left {
    flex:0 1 600px;
}
.oma2-footer-left p,
.oma2-footer-left a {
    font-size:20px;
    color:#EBEBEB;
    margin:0 0 5px 0;
}
.oma2-footer-left a {
    display:inline-block;
    margin-top:25px;
}

/* footer right side content */
.oma2-footer-right {
    flex:1;
    display:flex;
    align-items:flex-start;
    flex-direction:column;
}
.oma2-footer-right-inner {
    display:flex;
    flex-direction:row;
}
.oma2-footer-right-links {
    width:auto;
    padding:0;
    margin:0 75px 0 50px;
}
.oma2-footer-right ul {
    column-count:2;
    column-gap:125px;
}
.oma2-footer-right ul,
.oma2-footer-right ul li {
    list-style-type:none;
    margin:0;
    padding:0;
}
.oma2-footer-right a {
    width:max-content;
    display:inline-block;
    font-size:20px;
    margin-bottom:25px;
    color:#EBEBEB;
}

/* footer menu underline links */
.oma2-footer-right-links a {
    position:relative;
    z-index:1;
    display:inline-block;
    text-decoration:none;
}
.oma2-footer-right-links a::before {
    position:absolute;
    z-index:-1;
    left:0;
    content:'';
    width:100%;
    height:1px;
    background-color:#D2D2FF;
    opacity:.3;
    bottom:-4px;
}
.oma2-footer-right-links a::after {
    position:absolute;
    z-index:-1;
    left:0;
    content:'';
    width:100%;
    height:2px;
    background-color:#D21216;
    opacity:1;
    bottom:-4px;
    transform:scale(0,1);
    transition:transform 0.15s;
    transform-origin:left top;
}
.oma2-footer-right-links a:hover::after {
    -webkit-transform:scale(1,1);
    transform:scale(1,1);
}

.oma2-copyright {
    font-size:14px;
    color:#EBEBEB;
    margin-top:75px;
    margin-bottom:50px;
    letter-spacing:-2%;
}



/* CONTENT PAGE (FULL WIDTH)
**************************************************/
.oma2-default-page-template {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-default-page-template-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-default-page-template-inner h1 {
    font-size:43px !important;
    line-height:60px !important;
    font-weight:600 !important;
}
.oma2-default-page-template-inner .entry-content img {
    padding:0 0 20px 0;
}



/* 404
**************************************************/
.oma2-block-404-main {
    position:relative;
    z-index:10;

    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-block-404-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:50px 0 200px 0;
}

.oma2-block-404-main-inner > h1 {
    font-size:42x;
    line-height:56px;
    font-weight:600;
}
.oma2-block-404-main-inner > p {
    font-size:22px;
    line-height:32px;
    margin-bottom:50px;
    max-width:700px;
}


/* SEACH RESULTS
**************************************************/
.oma2-block-search-results-main {
    position:relative;
    z-index:10;

    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-block-search-results-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
}

.oma2-block-search-results-main-inner h1:first-of-type {
    margin-top:12px;
    margin-bottom:23px;
}

/* hide pagination if no results */
.search-no-results .post-nav {
    display:none;
}

/* search form */
.search #searchform {
    display:flex;
    gap:15px;
}
.search #searchform input[type="text"] {
    flex:1 1 auto;
    width:100%;
    height:70px !important;
}
.search #searchform input[type="submit"] {
    flex:0;
    white-space: nowrap;
    padding:0 30px !important;
    height:70px !important;
}

/* results */
.search-results .oma2-loop ul {
    gap:0;
}
.search-results .oma2-loop li.oma2-blog-post {
    flex:none;
    display:flex;
    width:100%;
    padding:30px 0;
    margin:0;
    max-width:100%;
    border-bottom:1px solid #BBBAB2;
}
.search-results .oma2-loop li.oma2-blog-post:last-of-type {
    border-bottom:none;
}
.search-results .oma2-loop li.oma2-blog-post .date,
.search-results .oma2-loop li.oma2-blog-post h2 {
    display:inline-block;
    vertical-align:middle;
    margin:0;
}
.search-results .oma2-loop li.oma2-blog-post .date {
    margin:0 20px 0 2px;
}


/* BUTTONS
**************************************************/
/* cta arrow */
.cta-arrow {
    position:relative;
    font-size:12px;
    font-weight:600;
    color:#141414;
    padding-right:15px;
}
.cta-arrow::after {
    content:'';
    position:absolute;
    top:3px;
    right:0;
    width:10px;
    height:10px;
    display:block;

    background-image:url(icons/icon-right.svg);
    background-size:auto auto;
    background-position:right center;
    background-repeat:no-repeat;

    transition:transform 0.25s cubic-bezier(.5, 1, 0.2, 2);
}
.cta-arrow:hover::after {
    transform:translateX(3px);
}

/* dark bordered */
.cta-standard {
    font-size:16px;
    font-weight:700;
    display:inline-block;
    text-decoration:none;
    padding:0 35px;
    height:50px;
    border-radius:5px;
    color:#090816;
    border:2px solid #090816;

    display:flex;
    align-items:center;
    width:max-content;

    background-image:linear-gradient(#D21216, #D21216);
    background-position:50% 50%;
    background-repeat:no-repeat;
    background-size:0% 100%;
    transition:background-size .35s, color .35s;
}
a.cta-standard:hover {
    color:#fff;
    text-decoration:none;
    background-size:100% 100%;
}

/* white round corners (w/ icon) */
a.button-white-round {
    position:relative;
    z-index:100;
    display:inline-block;
    text-decoration:none;
    padding:4px 30px 4px 30px;
    margin:8px;
    font-size:15px;
    font-weight:700;
    border-radius:50px;
    color:#002111;
    background-color:#fff;

    filter:drop-shadow(0px 4px 15px rgba(0,0,0,.1));

    transition:all 0.2s;
}
a.button-white-round:hover {
    text-decoration:none;
}
a.button-white-round::after {
    content:'';
    position:absolute;
    z-index:-1;
    left:30px;
    bottom:12px;
    width:calc(100% - 60px);
    height:2px;
    border-radius:10px;
    background-color:#002111;

    -webkit-transform:scaleX(0);
    transform:scaleX(0);
    transition:transform 0.2s;
    transform-origin:left top;
}
a.button-white-round:hover::after {
    -webkit-transform:scaleX(1);
    transform:scaleX(1);
}

/* white round corners (w/ icon) */
a.button-white-round-arrow {
    position:relative;
    z-index:100;
    text-decoration:none;
    padding:13px 40px 12px 20px;
    font-size:17px;
    border-radius:50px;
    display:block;
    color:#002111;
    background-color:#fff;

    background-image:url(icons/icon-arrow-angled.svg);
    background-size:24px auto;
    background-position:right 12px center;
    background-repeat:no-repeat;

    filter:drop-shadow(0px 4px 15px rgba(0,0,0,.1));

    transition:all 0.2s;
}
a.button-white-round-arrow:hover {
    text-decoration:none;
    background-position:right 10px center;
}
a.button-white-round-arrow::after {
    content:'';
    position:absolute;
    z-index:-1;
    left:20px;
    bottom:11px;
    width:calc(100% - 60px);
    height:2px;
    border-radius:10px;
    background-color:#002111;

    -webkit-transform:scaleX(0);
    transform:scaleX(0);
    transition:transform 0.2s;
    transform-origin:left top;
}
a.button-white-round-arrow:hover::after {
    -webkit-transform:scaleX(1);
    transform:scaleX(1);
}

/* white round corners (w/ icon) */
a.button-white-round-arrow-right {
    position:relative;
    z-index:100;
    text-decoration:none;
    width:max-content;
    margin:50px -15px 0 auto;
    padding:7px 50px 7px 25px;
    font-size:17px;
    border-radius:50px;
    display:block;
    color:#002111;
    font-weight:700;
    background-color:#fff;

    background-image:url(icons/icon-arrow-right-orange.svg);
    background-size:34px auto;
    background-position:right 10px center;
    background-repeat:no-repeat;

    filter:drop-shadow(0px 4px 15px rgba(0,0,0,.1));

    transition:all 0.2s;
}
a.button-white-round-arrow-right:hover {
    text-decoration:none;
    background-position:right 7px center;
}
a.button-white-round-arrow-right::after {
    content:'';
    position:absolute;
    z-index:-1;
    left:25px;
    bottom:14px;
    width:calc(100% - 75px);
    height:2px;
    border-radius:10px;
    background-color:#002111;

    -webkit-transform:scaleX(0);
    transform:scaleX(0);
    transition:transform 0.2s;
    transform-origin:left top;
}
a.button-white-round-arrow-right:hover::after {
    -webkit-transform:scaleX(1);
    transform:scaleX(1);
}

/* phone call button */
a.button-phone-call {
    display:inline-block;
    font-size:22px;
    line-height:110%;
    color:#fff;
    width:max-content;
    padding-left:45px;
    text-decoration:none;
    height:50px;
  
    display:inline-flex;
    flex-direction:column;
    justify-content:center;
    
    background-image:url(icons/icon-phone.svg);
    background-size:auto 37px;
    background-position:left;
    background-repeat:no-repeat;
}
.button-phone-call span {
    font-size:11px;
    font-weight:700;
    line-height:100%;
    display:block;
    margin-bottom:0;
}


/* /cases pagination (right) */
.oma2-cases-content-inner .pagination .next {
    position:relative;
    padding-right:20px;
}
.oma2-cases-content-inner .pagination .prev {
    position:relative;
    padding-left:20px;
}
.oma2-cases-content-inner .pagination .next:hover,
.oma2-cases-content-inner .pagination .prev:hover {
    text-decoration:none;
}
.oma2-cases-content-inner .pagination .next::after,
.oma2-cases-content-inner .pagination .prev::after {
    content:'';
    position:absolute;
    top:5px;
    right:0;
    width:12px;
    height:12px;
    display:block;

    background-image:url(icons/icon-right-red.svg);
    background-size:auto auto;
    background-position:right center;
    background-repeat:no-repeat;

    transition:transform 0.25s cubic-bezier(.5, 1, 0.2, 2);
}
.oma2-cases-content-inner .pagination .prev::after {
    left:0;

    transform:scaleX(-1);
}
.oma2-cases-content-inner .pagination .next:hover::after {
    transform:translateX(3px);
}
.oma2-cases-content-inner .pagination .prev:hover::after {
    transform:translateX(-3px) scaleX(-1);
}



/* LARGE PLAY BUTTON (tablet, desktop)
**************************************************/
.play-button-large {
    position:absolute;
    z-index:10;
    bottom:50%;
    left:50%;
    width:188px;
    height:188px;
    display:block;
    border-radius:50%;
    opacity:0;
    cursor:pointer;
    
    transform:scale(.25) translateX(-50%) translateY(50%);
    transform-origin:left bottom;

    -webkit-box-shadow:0 0 0px 20px rgba(231,229,222,0.5) inset;
    box-shadow:0 0 0px 20px rgba(231,229,222,0.5) inset;

    transition:.45s cubic-bezier(.5, 1, 0.2, 1.25) .9s;
}
.oma2-overons-video.show .play-button-large {
    opacity:1;
    transform:scale(1) translateX(-50%) translateY(50%);
}
.play-button-large:hover {
    -webkit-box-shadow:0 0 2px 0 rgba(231,229,222,0.75) inset;
    box-shadow:0 0 2px 0 rgba(231,229,222,0.75) inset;
}
.play-button-large::before {
    content:'';
    position:relative;
    z-index:9;
    top:12px; 
    left:12px;
    width:156px;
    height:156px;
    background-color:#D21216;
    display:block;
    border-radius:50%;
    border:4px solid #E7E5DE;
}
.play-button-large::after {
    content:'';
    position:absolute;
    z-index:12;
    width:45px;
    height:54px;
    top:69px;
    left:76px;

    background-image:url(icons/icon-play.png);
    background-size:45px 54px;

    -webkit-transition:all .25s ease;
	transition:all .25s ease;
}
.play-button-large:hover::after {
    -webkit-transform:scale(1.15);
    transform:scale(1.15);
}
.play-button-large:active::before {
    -webkit-transform:scale(.95);
    transform:scale(.95);
}
/* large play button ripple effect */
.play-button-large .large-ripple::after {
    content:'';
    position:absolute;
    right:0;
    bottom:0;
    width:188px;
    height:188px;
    border:1px solid #fff;
    border-radius:100%;
    box-sizing:border-box;

    animation-name:large-ripple;
    animation-duration:7s;
    animation-timing-function:ease-in-out;
    animation-iteration-count:infinite;
}
@keyframes large-ripple {
    0%, 39% { opacity:0; transform:scale(1); }
    40% { opacity:.5; transform:scale(1); }
    60%, 100% { opacity:0; transform:scale(2); }
}
/* hide ripple when pause button visible */
.play-button-pause .large-ripple::after {
    display:none;
}

/* pause button */
.play-button-pause {
    -webkit-transition:all .75s ease .35s;
    transition:all .75s ease .35s;

    left:-25px;
    bottom:-25px;
    transform-origin:center;

    -webkit-transform:translateX(0%) translateY(0%) scale(.35) !important;
    transform:translateX(0%) translateY(0%) scale(.35) !important;
}
.play-button-pause::after {
    content:'';
    position:absolute;
    z-index:12;
    width:66px;
    height:66px;
    top:61px;
    left:61px;

    background-image:url(icons/icon-pause.svg);
    background-size:66px 66px;

    -webkit-transition:all .2s ease;
    transition:all .2s ease;
}
.overons-video:hover .play-button-pause {
    opacity:1;
}



/* LARGE PLAY BUTTON (mobile)
**************************************************/
.play-button-large-mob {
    position:absolute;
    z-index:10;
    bottom:50%;
    left:50%;
    -webkit-transform:translateX(-50%) translateY(50%) scale(.55);
    transform:translateX(-50%) translateY(50%) scale(.55);
    width:188px;
    height:188px;
    display:block;
    border-radius:50%;
    cursor:pointer;

    -webkit-box-shadow:0 0 0px 20px rgba(231,229,222,0.5) inset;
    box-shadow:0 0 0px 20px rgba(231,229,222,0.5) inset;

    -webkit-transition:all .4s ease 0s;
	transition:all .4s ease 0s;
}
.play-button-large-mob:hover {
    -webkit-box-shadow:0 0 2px 0 rgba(231,229,222,0.75) inset;
    box-shadow:0 0 2px 0 rgba(231,229,222,0.75) inset;
}
.play-button-large-mob::before {
    content:'';
    position:relative;
    z-index:9;
    top:12px; 
    left:12px;
    width:156px;
    height:156px;
    background-color:#002111;
    display:block;
    border-radius:50%;
    border:4px solid #E7E5DE;
}
.play-button-large-mob::after {
    content:'';
    position:absolute;
    z-index:12;
    width:45px;
    height:54px;
    top:69px;
    left:76px;

    background-image:url(icons/icon-play.png);
    background-size:45px 54px;

    -webkit-transition:all .25s ease;
	transition:all .25s ease;
}
.play-button-large-mob:hover::after {
    -webkit-transform:scale(1.15);
    transform:scale(1.15);
}
.play-button-large-mob:active::before {
    -webkit-transform:scale(.95);
    transform:scale(.95);
}
/* large play button ripple effect */
.play-button-large-mob .large-ripple-mob::after {
    content:'';
    position:absolute;
    right:0;
    bottom:0;
    width:188px;
    height:188px;
    border:1px solid #fff;
    border-radius:100%;
    box-sizing:border-box;

    animation-name:large-ripple-mob;
    animation-duration:7s;
    animation-timing-function:ease-in-out;
    animation-iteration-count:infinite;
}
@keyframes large-ripple-mob {
    0%, 39% { opacity:0; transform:scale(1); }
    40% { opacity:.5; transform:scale(1); }
    60%, 100% { opacity:0; transform:scale(2); }
}
/* hide ripple when pause button visible */
.play-button-pause .large-ripple-mob::after {
    display:none;
}

/* pause button */
.play-button-pause {
    -webkit-transition:all .75s ease .35s;
    transition:all .75s ease .35s;

    left:-25px;
    bottom:-25px;

    -webkit-transform:translateX(0%) translateY(0%) scale(.35);
    transform:translateX(0%) translateY(0%) scale(.35);
}
.play-button-pause::after {
    content:'';
    position:absolute;
    z-index:12;
    width:66px;
    height:66px;
    top:61px;
    left:61px;

    background-image:url(icons/icon-pause.svg);
    background-size:66px 66px;

    -webkit-transition:all .2s ease;
    transition:all .2s ease;
}



/* BREADCRUMBS (Yoast)
**************************************************/
/* breadcrumbs (dark text) */
.oma2-breadcrumbs-dark {
    position:relative;
    z-index:20;
    font-size:14px;
    margin:0 0 50px 2px;
    color:#828282;
    width:auto;
}
.oma2-breadcrumbs-dark a {
    color:#828282;
    margin:0 1px;
    font-weight:400;
}
.oma2-breadcrumbs-dark img {
    width:13px;
    height:auto;
    margin:0 1px -2px 0;
}
.breadcrumb {
    display:inline-block;
}
.oma2-breadcrumbs-dark span span {
    padding:0 2px;
    font-weight:700;
}



/* PAGE TEMPLATE: CONTACT FORM
**************************************************/
.oma2-contact-page-main {
    position:relative;
    z-index:10;

    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-contact-page-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
}

/* contact page content wrapper */
.oma2-contact-content {
    display:flex;
    flex-wrap:wrap;
    gap:50px;
}
.oma2-form-contact-details,
.oma2-form-contact {
    flex:1;
    min-width:350px;
}

/* contact page image + address + info */
.oma2-form-contact-details {
    max-width:700px;
    padding-left:75px;
    font-size:22px;
    font-weight:400;
    line-height:40px;
}
.oma2-form-contact-details > img {
    width:500px;
    height:auto;
    margin-left:20px;
    border-radius:6px;
}
.oma2-form-contact-details a {
    color:#2A4D69;
}
.oma2-form-contact-details div:first-of-type {
    font-size:33px;
    font-weight:600;
    margin-top:40px;
    color:#000;
}
.oma2-form-contact-details div:last-of-type {
    font-weight:300;
    color:#5C616A;
}
.oma2-form-contact-details div {
    margin-bottom:30px;
    margin-left:20px;
    text-align:left;
}

/* contact page FORM (entered via page editor) */
.oma2-form-contact {
    max-width:540px;
    font-size:22px;
    font-weight:400;
    line-height:180%;
    margin-right:50px;
}



/* PAGE TEMPLATE: OVERONS
**************************************************/
.oma2-overons-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-overons-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-overons-main .oma2-overons-video {
    margin-top:50px;
}



/* PAGE TEMPLATE: CASES (parent)
**************************************************/
.oma2-cases-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-cases-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 65px 0;
    
    display:flex;
    flex-direction:column;
}

/* oma.amsterdam text/link */
.cases-oma-amsterdam,
.cases-oma-amsterdam a {
    font-size:16px;
    color:#5C616A;
    margin-top:50px;
}
.cases-oma-amsterdam a {
    text-decoration:underline;
}
.cases-oma-amsterdam a:hover {
    text-decoration:none;
    color:#D21216;
}
.cases-oma-amsterdam img {
    margin-right:10px;
}

/* /cases content */
.oma2-cases-content-wrapper {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;

    background-color:#fff;
}
.oma2-cases-content-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-cases-content-inner .case-item {
    display:flex;
    margin:50px 0 0 0;
    padding-bottom:50px;
    border-bottom:1px solid #C9C9C9;
}
.oma2-cases-content-inner .case-item img,
.oma2-cases-content-inner .case-item video {
    width:800px;
    height:auto;
}
.oma2-cases-content-inner .case-item-right {
    padding:5px 0 0 40px;
}
.oma2-cases-content-inner .case-item-right {
    font-size:18px;
    line-height:32px;
    letter-spacing:-2%;
    color:#5C616A;
}
.oma2-cases-content-inner .case-item-right h3 {
    font-size:22px;
    margin-bottom:15px;
    color:#000;
}
.oma2-cases-content-inner .case-item-right h2,
.oma2-cases-content-inner .case-item-right h2 a {
    font-size:30px;
    line-height:38px;
    color:#000;
    font-weight:600;
}
.oma2-cases-content-inner .case-item-right h2:hover a {
    color:#E14C0F;
    text-decoration:none;
}
.oma2-cases-content-inner .case-item-right .case-client-name {
    font-size:14px;
    color:#141414;
    letter-spacing:-0.56%;
    margin-top:10px;
}
.oma2-cases-content-inner .case-item-right p {
    margin:35px 0 30px 0;
}

/* pagination */
.oma2-cases-content-inner .pagination {
    text-align:right;
}
.oma2-cases-content-inner .pagination,
.oma2-cases-content-inner .pagination a {
    margin-top:60px;
    font-size:18px;
    font-weight:600;
    color:#D21216;
}
.oma2-cases-content-inner .pagination a {
    padding:0 5px;
}



/* PAGE TEMPLATE: CASE (child)
**************************************************/
.oma2-case-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-case-main-inner {
    position:relative;
    width:1100px;
    margin:0 35px;
    padding:0 0 125px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-case-breadcrumbs-logo-wrapper {
    max-width:1024px;
    display:flex;
    align-items:top;
    justify-content:space-between;
}
.oma2-case-breadcrumbs-logo-wrapper .cases-client-logo {
    margin-left:10px;
    width:auto;
    height:30px;
    transform:translateY(-10px);
    float:right;
}

.case-video-embed video {
    object-fit:cover;
}

.oma2-case-content {
    position:relative;
    max-width:1024px;
    margin-top:25px;
}
.oma2-case-content .cta-arrow {
    position:absolute;
    top:7px;
    right:5px;
}
.oma2-case-content h1 {
    font-size:22px;
    margin-bottom:20px;
    letter-spacing:-2%;
}
.oma2-case-content article h2 {
    font-size:32px;
    line-height:38px;
    letter-spacing:-2%;
    margin-bottom:45px;
}
.oma2-case-content img.case-feat-img {
    width:100%;
    height:auto;
}
/* breadcrumbs adjustment */
.oma2-case-main .oma2-breadcrumbs-dark span {
    font-weight:700;
}

/* prev/next case buttons */
.oma2-prev-case-btn,
.oma2-next-case-btn {
    position:absolute;
    top:450px; /* same amount needs to be set in page-case.php */
    left:0;
    font-size:16px;
    color:#fff;
    padding:0;
    border-radius:50px;
    background-color:#000;

    height:50px;
    width:50px;
    overflow:hidden;

    display:flex;
    align-items:center;

    background-size:auto auto;
    background-repeat:no-repeat;

    transition:width .25s ease, transform .2s ease, opacity 0.2s ease, background-color 0.25s ease, background-position 0.25s cubic-bezier(.5, 1, 0.2, 2), padding 0.4s cubic-bezier(.5, 1, 0.2, 2);
}
.oma2-prev-case-btn {
    left:0;
    padding-left:50px;
    background-image:url(icons/icon-case-left.svg);
    background-position:center left 19px;
    
    transform:translateX(calc(-100% - 30px));
}
.oma2-next-case-btn {
    left:auto;
    right:0;
    padding-right:50px;
    background-image:url(icons/icon-case-right.svg);
    background-position:center right 19px;

    transform:translateX(calc(100% + 30px));
}
.oma2-prev-case-btn:hover,
.oma2-next-case-btn:hover {
    width:175px;
    padding:0 20px;
    text-decoration:none;
    background-color:#D21216;
}
.oma2-prev-case-btn:hover {
    justify-content:right;
    padding-left:40px;
    padding-right:17px;
}
.oma2-next-case-btn:hover {
    justify-content:left;
    padding-right:40px;
    padding-left:17px;
}

.oma2-prev-case-btn span,
.oma2-next-case-btn span {
    white-space:nowrap;
    opacity:0;
}
.oma2-prev-case-btn:hover span,
.oma2-next-case-btn:hover span {
    opacity:1;
}

.oma2-prev-case-btn.hidden {
    opacity:0;
    transform:translateX(calc(-100% - 30px)) translateY(-150px) scale(.85);
}
.oma2-next-case-btn.hidden {
    opacity:0;
    transform:translateX(calc(100% + 30px)) translateY(-150px) scale(.85);
}

/* related stories adjustments for /cases */
.oma2-case-main-inner .oma2-related-stories-wrapper .oma2-blog-post h1 {
    font-size:22px;
    line-height:24px;
    letter-spacing:-0.9px;
    color:#002111;

    transition:.2s ease;
}
.oma2-case-main-inner .oma2-related-stories-wrapper .oma2-blog-post a:hover h1 {
    color:#E14C0F;
    text-decoration:none;
}



/* PAGE TEMPLATE: PRODUCTS
**************************************************/
.oma2-products-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-products-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 65px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-products-main-inner .entry-content p {
    max-width:1220px;
}

.page-template-page-products .oma2-block-logos {
    margin-bottom:65px;
}



/* PAGE TEMPLATE: DIENSTEN (main services page)
**************************************************/
.oma2-diensten-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-diensten-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-diensten-main-inner .entry-content p {
    max-width:1220px;
}

/* hide second paragraph on /services (can't translate) */
html[lang="en-US"] .oma2-diensten-main-inner .entry-content p span {
    display:none;
}



/* PAGE TEMPLATE: DIENST (parent category)
**************************************************/
.oma2-dienst-cat-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-dienst-cat-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 125px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-dienst-cat-main-inner a.cta-arrow {
    position:absolute;
    z-index:99;
    top:2px;
    right:0;
}

/* dienst parent category content wrapper */
.oma2-dienst-cat-content-wrapper article h1 {
    font-size:36px;
    line-height:38px;
    font-weight:600;
}
.oma2-dienst-cat-content-wrapper article p {
    font-size:20px;
    line-height:32px;
    font-weight:400;
    color:#5C616A;
    margin:5px 0 0 0;
}
.oma2-dienst-cat-content-inner {
    column-count:4;
    margin-top:50px;
}
.oma2-dienst-cat-content-inner a {
    display:block;
    break-inside:avoid;
}
.oma2-dienst-cat-content-inner h2 a {
    font-size:16px;
    line-height:30px;
    color:#303030;
    letter-spacing:-0.5px;
}
.oma2-dienst-cat-content-inner h2 a:hover {
    font-weight:700;
    text-decoration:none;
}



/* PAGE TEMPLATE: DIENST (individual services)
**************************************************/
.oma2-dienst-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-dienst-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 125px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-dienst-main-inner article .entry-content h2:not(:first-of-type) {
    font-size:28px;
    line-height:130%;
}

/* dienst content wrapper */
.oma2-dienst-content-wrapper {
    display:flex;
    flex-wrap:wrap;
    gap:85px;
}
/* dienst left column */
.oma2-dienst-content-left {
    flex:1;
    max-width:640px;
}

.oma2-dienst-content-left .entry-content img {
    width:100%;
    height:auto;
}
/* dienst right column */
.oma2-dienst-content-right {
    position:sticky;
    top:200px;
    flex:1;
    max-width:600px;
    min-width:200px;
    height:max-content;
    margin-top:60px;
    border-radius:5px;
}
.oma2-dienst-content-right-inner {
    outline:1px solid #BDBDBD;
    padding:30px 30px 50px 30px;
}
.oma2-dienst-sidebar-logos {
    margin-top:35px;
}
.oma2-dienst-sidebar-logos .oma2-block-logos-inner {
    margin:0 5px;
}
.oma2-dienst-sidebar-logos h3 {
    font-size:14px;
    font-weight:400;
    color:#5C617D;
    text-align:center;
}
.oma2-dienst-sidebar-logos .oma2-block-logos {
    padding-top:25px;
}
.oma2-lead-output {
    padding-bottom:35px;
    margin-bottom:35px;
    border-bottom:1px solid #BDBDBD;
}
.oma2-lead-output h2 {
    font-size:30px;
    line-height:38px;
    font-weight:600;
    color:#D21216;
    margin:10px 0 25px 0;
}
.oma2-lead-output ul,
.oma2-lead-output ul li {
    list-style-type:none;
    margin:0;
    padding:0;
}
.oma2-lead-output ul li {
    background-image:url(icons/icon-check.svg);
    background-size:12px 12px;
    background-position:top 9px left;
    background-repeat:no-repeat;

    padding-left:18px;
}
.oma2-lead-output ul li,
.oma2-lead-output p {
    font-size:18px;
    line-height:160%;
    font-weight:400;
    color:#5C616A;
}
.oma2-lead-output span {
    display:block;
    font-size:16px;
    font-weight:500;
    color:#090816;
    margin-top:35px;

    background-image:url(icons/icon-time.svg);
    background-size:auto auto;
    background-position:top left;
    background-repeat:no-repeat;
  
    padding-left:30px;
}

/* jump to form button */
.oma2-jump-to-form {
    width:100%;
    height:70px;
    font-size:22px;
    font-weight:700;
    color:#fff;
    border-radius:5px;
    cursor:pointer;

    display:flex;
    align-items:center;
    justify-content:center;

    transition:.15s ease;

    background-color:#2D9CDB;
}
.oma2-jump-to-form:hover {
    background-color:#237AAC;
}
/* button tooltip */
.oma2-jump-to-form-popup {
    position:absolute;
    z-index:99;
    left:15px;
    width:325px;
    padding:35px;
    font-size:14px;
    line-height:23px;
    font-weight:400;
    border-radius:5px;
    transform:translateY(calc(100% - 15px));
    background-color:#3A3A3A;
    pointer-events:none;
    transition:.2s ease;
    opacity:0;
}
.oma2-jump-to-form:hover .oma2-jump-to-form-popup {
    opacity:1;
}
.oma2-jump-to-form-popup.hidden {
    opacity:0 !important;
    transform:translateY(calc(100% - 5px));
}
.oma2-jump-to-form-popup::before {
    content:'';
    position:absolute;
    top:-10px;
    width:0; 
    height:0; 
    border-left:10px solid transparent;
    border-right:10px solid transparent;
    
    border-bottom:15px solid #3A3A3A;
    
    display:block;
}

.oma2-dienst-form-wrapper {
    padding:30px;
    margin-top:125px;
    border-radius:5px;
    outline:1px solid #BDBDBD;
}
.oma2-dienst-form-wrapper h3 {
    font-size:22px;
    line-height:30px;
    font-weight:600;
    color:#090816;
}
.oma2-dienst-form-wrapper h3 span {
    text-transform:lowercase;
}
.oma2-dienst-form-wrapper p {
    font-size:20px;
    line-height:32px;
    font-weight:400;
    color:#5C616A;
    margin:5px 0 0 0;
}

/* Smart Slider 3 adjustment */
.oma2-dienst-main .n2-padding {
    margin-bottom:45px;
}
.n2-ss-slider-wrapper-outside,
.n2-ss-slider-wrapper-inside {
    max-width:100% !important;
    width:100% !important;
    min-width:0 !important;
    overflow-x:hidden;
}

/* dienst sidebar form adjustments */
.oma2-dienst-form-wrapper .gform-theme {
    margin-top:30px;
}
#gform_wrapper_2 select {
    position:relative;
    height:70px;
    font-size:22px;
    line-height:32px;
    text-align:center;
    text-align-last:center;
    color:#fff;
    padding:20px 10px 20px 10px;
    margin:0 0 35px 0;
    border:none;
    border-radius:5px;
    
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    
    background-image:url("data:image/svg+xml;charset=US-ASCII,%3Csvg width='10' height='7' viewBox='0 0 10 7' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23ffffff' stroke-width='2' fill='none' fill-rule='evenodd'/%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 20px center;
    background-size:15px;
    background-color:#090816;
}
#gform_wrapper_2 select option {
    background-color:#090816;
    color:#fff;
}




/* DIENST RELATED SERVICES
**************************************************/
.oma2-dienst-related-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;

    background-color:#F8F7F7;
}
.oma2-dienst-related-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:60px 0 75px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-dienst-related-main h2 {
    font-size:22px;
    line-height:38px;
    font-weight:600;
    margin-bottom:50px;
}
.oma2-dienst-related-main h3 {
    word-break:break-word;
}
.diensten-wrapper {
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-start;
    gap:50px;
}

.diensten-block {
    flex:0 0 calc(25% - 40px);
    max-width:calc(25% - 40px);
}
.diensten-block a {
    text-decoration:none;
    color:#2F3135;
    display:block;

    transition:transform 0.25s cubic-bezier(.5, 1, 0.2, 2);
}
.diensten-block a:hover {
    transform:translateY(-10px);
}
.diensten-block img {
    width:100%;
    height:auto
}
.diensten-block h3 {
    margin-top:20px;
    padding-left:5px;
    font-size:16px;
    font-weight:700;
}
.diensten-block p {
    padding-left:5px;
    font-size:15px;
    font-weight:400;
}




/* LIKE / SHARE FUNCTIONALITY
**************************************************/
/* like / shae wrapper */
.oma2-like-share {
    position:absolute;
    z-index:99;
    top:-6px;
    left:auto;
    right:0;
    width:max-content;

    display:flex;
    justify-content:flex-end;
}

/* like button */
.oma2-like-wrapper {
    width:max-content;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.oma2-like-wrapper .like-button {
    width:38px;
    height:30px;
    cursor:pointer;
    border:none;
    background:none;
}
.oma2-like-wrapper .like-count {
    color:#4F4F4F;
    font-size:14px;
    pointer-events:none;
}
/* share button */
.oma2-share-button-wrapper {
    margin-left:22px;
    width:30px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
}



/* FULLSCREEN SHARE
**************************************************/
.oma2-share-overlay {
    position:fixed;
    z-index:99999;
    top:0;
    left:-10000%;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,.75);
    backdrop-filter:blur(10px);
    opacity:0;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    transition:all .25s ease 0s, left 0s ease .25s;
}
.oma2-share-overlay.active {
    left:0;
    opacity:1;

    transition:all .25s ease 0s, left 0s ease 0s;
}

/* fullscreen share close overlay (full overlay) */
.oma2-close-overlay {
    position:absolute;
    width:inherit;
    height:inherit;
}
/* fullscreen share close button (inside button wrapper) */
.oma2-close-share-overlay {
    cursor:pointer;
    position:absolute;
    top:2px;
    left:auto;
    right:2px;
    width:30px;
    height:30px;

    -webkit-transition:all .15s ease;
    transition:all .15s ease;
}
.oma2-close-share-overlay::before,
.oma2-close-share-overlay::after {
    content:'';
    position:absolute;
    top:5px;
    right:13px;
    width:2px;
    height:20px;
    background-color:#555;
    border-radius:3px;
}
.oma2-close-share-overlay::before {
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
}
.oma2-close-share-overlay::after {
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
}




/* SHARE BUTTONS
**************************************************/
/* share buttons */
.oma2-share-buttons-wrapper {
    position:relative;
    width:450px;
    min-width:100px;
    height:225px;
    text-align:center;
    margin:0 15px;
    
    display:flex;
    align-items:center;
    justify-content:center;
    flex-direction:column;

    background-color:#fff;

    transform:translateY(20px);
    transition:transform .4s ease;
}
.oma2-share-overlay.active .oma2-share-buttons-wrapper {
    transform:translateY(0);

    transition:transform .3s cubic-bezier(.5, 1, 0.2, 2);
}
.oma2-share-buttons-wrapper h3 {
    font-size:16px;
    font-weight:600;
    width:100%;
    margin:-20px 0 25px 0;
}
.oma2-share-buttons-inner {
    display:flex;
    align-items:center;
    justify-content:center;
}
.oma2-share-buttons-inner a {
    position:relative;
    width:50px;
    height:50px;
    margin:0 5px;
    border-radius:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    outline:1px solid #fff;
    background-color:#fafafa;

    transition:.2s cubic-bezier(.5, 1, 0.2, 2);
}
.oma2-share-buttons-inner a:hover {
    outline:1px solid transparent;
    transform:translateY(-3px);
    background-color:#F3EFEF;
}
.oma2-share-buttons-inner a::before {
    position:absolute;
    bottom:-20px;
    font-size:10px;
    color:#5C616A;
    opacity:1;

    transition:.35s cubic-bezier(.5, 1, 0.2, 2);
}
.oma2-share-buttons-inner a:hover::before {
    transform:translateY(-3px);
    color:#222;
}
/* copied to clipboard message */
.oma2-copy-message {
    position:fixed;
    z-index:9999;
    bottom:20px;
    right:5px;
    font-size:10px;
    color:#fff;
    padding:8px 10px;
    border-radius:2px;
    opacity:0;
    pointer-events:none;
    transform:translateY(10px);
    transition:opacity 0.3s ease, transform 0.3s ease;
    background-color:#000;
}
.oma2-copy-message.active {
    opacity:1;
    transform:translateY(0);
}




/* PAGE TEMPLATE: FAQ
**************************************************/
.oma2-faq-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-faq-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
    
    display:flex;
    flex-direction:column;
}
.wp-block-columns {
    display:flex;
    gap:80px;
}
.wp-block-column .wp-block-heading {
    margin-top:25px;
}
.wp-block-column p {
    margin-bottom:75px;
}




/* GRAVITY FORMS
**************************************************/
/* gravity form styling */
.gform_wrapper {
    max-width:600px;
}
.gform_heading,
.gform_description {
    display:none !important;
}
.ginput_container {
    margin-bottom:-20px !important;
}
.gform_submission_error,
.gfield_validation_message {
    font-size:22px !important;
}
textarea,
input[type=text],
input[type=email],
input[type=tel] {
    border:1px solid #BDBDBD !important;
    padding:20px 23px !important;
    resize:none !important;
    height:auto !important;
    border-radius:5px !important;
    font-size:22px !important;
    line-height:130% !important;
    font-weight:300 !important;

    box-shadow:none !important;
    background-color:transparent !important;
}
textarea {
    height:200px !important;
    min-height:200px !important;
    margin-bottom:-6px !important;
}
textarea::placeholder,
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder {
    color:#AEABAB !important;
    opacity:1;
}
textarea:focus::placeholder,
input[type=text]:focus::placeholder,
input[type=email]:focus::placeholder,
input[type=tel]:focus::placeholder {
    opacity:0 !important;
}
.gfield_checkbox label {
    font-size:13px !important;
    line-height:160% !important;
    color:#828282 !important;
}
/* customized checkbox */
.gchoice {
    position:relative;
    z-index:1;
    width:100%;
    height:auto;
    margin:-4px 0 5px -4px !important;
}
input.gfield-choice-input {
    position:absolute;
    z-index:2;
    width:100%;
    height:100%;
    appearance:none;
    display:none !important;
    margin:0;
    padding:0;

    background:none !important;
    border:none !important;
    box-shadow:none !important;
}
input.gfield-choice-input:hover,
.gchoice label:hover {
    cursor:pointer;
}
.gchoice label {
    position:relative;
    z-index:3;
    top:0;
    left:0;
    color:#828282;
    padding:3px 0 0 30px;
    margin:0;
    max-width:100% !important;
}
input.gfield-choice-input + label:after {
    content:'';
    position:absolute;
    z-index:-1;
    top:2px;
    left:0;
    width:23px;
    height:23px;
    border:2px solid #BDBDBD;
    box-sizing:border-box;
    background-color:transparent;
}
input[type="checkbox"].gfield-choice-input + label:after { 
    border-radius:2px;
}
input.gfield-choice-input:checked + label:after {
    content:'';
}
input.gfield-choice-input:checked + label:before {
    position:absolute;
    content:'';
    width:5px;
    height:10px;
    left:9px;
    top:7px;
    display:inline-block;
    transform:rotate(45deg);
    border-bottom:2px solid #BDBDBD;
    border-right:2px solid #BDBDBD;
}
/* submit button */
input[type=submit] {
    height:77px !important;
    border-radius:5px !important;
    padding:0 !important;
    width:100% !important;
    border:none !important;
    font-size:22px !important;
    font-weight:700 !important;
    color:#FFF7E6 !important;
    background-color:#219653 !important;
    cursor:pointer !important;
}
.gform_button {
    margin-top:20px !important;
}

.gfield_validation_message {
    margin-top:25px !important;
    font-size:20px !important;
}


@media (max-width: 500px) {

    textarea,
    input[type=text],
    input[type=email],
    input[type=tel] {
        padding:17px !important;
        border-radius:6px !important;
        font-size:16px !important;
        margin-top:-5px !important;;
    }
    .gfield_checkbox label {
        font-size:12px !important;
        line-height:140% !important;
        padding-top:6px;
    }
    input[type=submit] {
        height:50px !important;
        border-radius:6px !important;
        font-size:16px !important;
        font-weight:600 !important;
    }

}



/* FULLSCREEN SEARCH
**************************************************/
.header-search-overlay {
    position:fixed;
    z-index:9999999;
    top:0;
    left:-10000%;
    width:100%;
    height:100%;
    background-color:rgba(0,0,0,.9);
    backdrop-filter:blur(10px);
    opacity:0;

    display:inline-flex;
    align-items:center;
    justify-content:center;

    transition:all .25s ease 0s, left 0s ease .25s;
}
.header-search-overlay.active {
    left:0;
    opacity:1;

    transition:all .25s ease 0s, left 0s ease 0s;
}
.header-search-wrapper {
    position:relative;
    z-index:999999;
    width:875px;
    height:auto;   
    margin:0 30px;
    opacity:0;

    transform:translateY(40px);

    transition:transform .25s ease .25s, opacity .25s ease .25s;
}
.header-search-overlay.active .header-search-wrapper {
    opacity:1;

    transform:translateY(0);
    transition:transform .5s ease 0s, opacity .5s ease 0s;
}
/* fullscreen search input */
.header-search-wrapper input {
    width:100%;
    height:75px;
    border-radius:100px;
    padding-left:40px;
    
    background-color:transparent;
    border:1.5px solid #F5F5F5;
    outline:none;
}
.header-search-wrapper input,
.header-search-wrapper input::placeholder {
    font-family:Inter !important;
    font-weight:400 !important;
    font-size:28px !important;
    color:#F5F5F5 !important;
    opacity:1 !important;
}
.header-search-wrapper input::placeholder,
.header-search-wrapper input[type="text"]:focus::placeholder {
    opacity:.4 !important;
}
/* fullscreen search button */
.header-search-wrapper button {
    position:absolute;
    top:0;
    right:10px;
    width:75px;
    height:100%;
    cursor:pointer;
    border:none;
    background:none;
}
.header-search-wrapper button img {
    width:26px;
    height:26px;

    transition:all .25s ease;
}
.header-search-wrapper button:hover img {
    opacity:.75;
}
/* fullscreen search close button */
.close-search-overlay {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;

    -webkit-transition:all .15s ease;
    transition:all .15s ease;
}
.close-search-overlay::before,
.close-search-overlay::after {
    content:'';
    position:absolute;
    top:15px;
    right:33px;
    width:2px;
    height:34px;
    background-color:#fff;
    border-radius:3px;
}
.close-search-overlay::before {
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
}
.close-search-overlay::after {
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
}



/* GUTENBERG
**************************************************/
/* pullquote*/
.wp-block-pullquote {
    max-width:600px;
    text-align:left;
    margin-bottom:65px;
    padding:15px 0 0px 0;
}
.wp-block-pullquote blockquote {
    padding:2px 0 0 25px;
    border-left:4px solid #EA5925;
}
.wp-block-pullquote blockquote p {
    font-size:36px !important;
    line-height:42px !important;
    color:#EA5925 !important;
  
    margin-bottom:0px !important;
}
.wp-block-pullquote blockquote cite {
    font-weight:400;
    font-size:16px;
    font-style:normal;
    color:#626262 !important;
}

/* on tablets and lower screen sizes turn GRID BLOCK into vertical list */
@media ( max-width:1280px) {
    .wp-block-group-is-layout-grid,
    .oma2-locations-info .wp-block-group { grid:none !important; }
}
.wp-block-image {
    margin-top:20px;
}


/* ARCHIVES (CAT/TAG/AUTHOR)
**************************************************/
.oma2-block-archives-main {
    position:relative;
    z-index:10;

    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-block-archives-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
}

.oma2-block-archives-main .cta-arrow {
    float:right;
    margin-top:20px;
    margin-right:20px;
}

.oma2-block-archives-main-inner > p {
    font-size:20px;
    line-height:30px;
    color:#5C616A;
    margin-bottom:0 0 75px 0;
}
.oma2-block-archives-main-inner > span {
    font-size:16px;
    line-height:160%;
}
.oma2-block-archives-main-inner span:last-of-type {
    font-size:18px;
    color:#E14C0F;
}

.oma2-loop {
    margin-top:50px;
    margin-bottom:50px;
}
.oma2-loop > ul {
    display:flex;
    gap:62px;
    flex-wrap:wrap;
    margin-top:25px;
    list-style-type:none;
    padding:0;
}
.oma2-loop li.oma2-blog-post {
    flex:1 1 calc(25% - 50px); /* 4 columns */
    padding-top:20px;
    padding-bottom:20px;
    margin:0;
    max-width:calc(25% - 50px);
}
.oma2-loop .oma2-blog-post a {
    color:#141414;
}
.oma2-loop .oma2-blog-post img {
    width:100%;
    height:auto;
    margin-bottom:15px;
}
.oma2-loop .oma2-blog-post .date {
    font-size:10px;
    font-weight:600;
    letter-spacing:0.6px;
    color:#141414;
}
.oma2-loop .oma2-blog-post h2 {
    font-size:22px;
    line-height:24px;
    letter-spacing:-0.9px;
    margin-top:8px;
    color:#002111;

    hyphens:auto;
    overflow-wrap:break-word;

    transition:.2s ease;
}
.oma2-loop .oma2-blog-post a:hover {
    text-decoration:none;
}
.oma2-loop .oma2-blog-post a:hover h2 {
    color:#E14C0F;
    text-decoration:none;
}


/* author page edits */
.author .showing {
    display:flex;
    flex-direction:row;
    align-items:left;
    width:100%;
}
.author .showing-left {
    width:125px;
}
.author .showing-left > img {
    width:100px;
    height:100px;
    border-radius:50%;
    display:block;
}
.author .showing-left > a {
    position:relative;
    top:15px;
    margin-left:40px;
}
.author .showing-right {
    width:100%;
    text-align:left;
    flex:1;
}
.author .showing-right h1 {
    font-size:30px;
    line-height:125%;
    margin-bottom:3px;
}
.author .showing-nick {
    color:#4E4E4E !important;
    font-size:16px;
    line-height:130%;
    margin-bottom:10px;
}
.author .showing-right span {
    display:block;
}
.author .showing-right p {
    margin-top:7px;
    max-width:800px;
}



/* SINGLE POST
**************************************************/
.oma2-block-single-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-block-single-main-inner {
    position:relative;
    width:1340px;
    margin:0 35px;
    padding:0 0 25px 0;
    
    display:flex;
    flex-direction:column;
}
.oma2-entry-content-wrapper {
    display:flex;
}
.oma2-entry-content-wrapper .entry-content ul,
.oma2-entry-content-wrapper .entry-content ul li,
.oma2-entry-content-wrapper .entry-content ol,
.oma2-entry-content-wrapper .entry-content ol li {
    font-size:20px;
    line-height:160%;
    padding:0;
}

/* share buttons */
.oma2-share {
    position:absolute;
}
.oma2-share a {
    display:block;
    margin-bottom:20px;
}
.oma2-share a:first-child {
    margin-top:5px;
}

/* post meta info */
.single-meta {
    margin-bottom:15px;
}
.single-meta div {
    position:relative;
    width:max-content;
    display:inline-block;
    margin-right:8px !important;
}
.single-meta div,
.single-meta div a {
    font-size:16px;
    font-weight:500;
    color:#3B3C3C;
    margin:0;
    padding:0;
}
.single-meta div::after {
    content:'';
    position:absolute;
    top:8px;
    right:-8px;
    width:4px;
    height:4px;
    border-radius:50%;
    background-color:#EA5925;
    line-height:20px;
}
.single-meta div:last-child::after {
    display:none;
}
/* display only one category */
.single-meta div a[rel="category tag"] { display:none; }
.single-meta div a[rel="category tag"]:first-of-type { display:inline; }
.bsf-rt-reading-time {
    min-width:max-content !important;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
    display:inline-block !important;
    font-size:16px !important;
    color:#3B3C3C !important;
}
.single-meta ul,
.single-meta ul li {
    padding:0;
    margin:0;
    list-style-type:none;
}

/* single post author (below title) */
.oma2-single-author {
    display:flex;
    align-items:center;
    margin:40px 0 30px 0;

    font-size:16px;
    line-height:100%;
}
.oma2-single-author img.avatar {
    width:48px;
    height:48px;
    border-radius:50%;
    margin-left:5px;
    margin-right:20px;
}
.oma2-single-author a {
    color:#3B3C3C;
    line-height:130%;
    font-weight:700;
}
.oma2-single-author a:hover {
    color:#E14C0F;
    text-decoration:none;
}
.oma2-single-author a span {
    display:block;
    color:#4E4E4E;
    font-weight:400;
}

/* single post content */
.oma2-entry-content-wrapper .entry-content {
    max-width:620px;
    margin-left:125px;
    margin-right:75px;
}
.oma2-block-single-main-inner .entry-content article p a,
.oma2-block-single-main-inner .entry-content article ul li a {
    text-decoration:none;
    color:#002111;
}
.oma2-block-single-main-inner .entry-content article p a:hover,
.oma2-block-single-main-inner .entry-content article ul li a:hover {
    text-decoration:none;
    color:#E14C0F;
}
.oma2-entry-content-wrapper h1 {
    font-size:36px;
    line-height:130%;
    font-weight:500;
    display:block;
    max-width:max-content;
}
.oma2-entry-content-wrapper .entry-content h2 {
    font-size:28px;
    line-height:130%;
    font-weight:500;
    margin:50px 0 0 0;
    padding:0;
    color:#002111;
}
.oma2-entry-content-wrapper .entry-content h3 {
    font-size:22px;
    line-height:28px;
    font-weight:500;
    margin:50px 0 0 0;
    padding:0;
    color:#002111;
}
.oma2-entry-content-wrapper .entry-content p,
.oma2-entry-content-wrapper .entry-content ul li {
    font-size:16px;
    line-height:160%;
    font-weight:400;
    padding:0;
    color:#002111;
}
.oma2-entry-content-wrapper .entry-content .wp-block-image img {
    margin:0 0 5px 0;
}
.wp-block-embed.is-type-video {
    margin:20px 0 0 0;
}

/* post tags */
.oma2-entry-content-wrapper .oma2-post-tag {
    margin-top:50px;
    font-size:12px;
}
.oma2-entry-content-wrapper .oma2-post-tag a {
    color:#fff;
    border-radius:50px;
    padding:9px 35px;
    margin:0 5px 10px 0;
    display:inline-block;
    background-color:#D21216;
    font-weight:700;
}

/* blog bottom related stories */
.oma2-related-stories-wrapper {
    margin-top:100px;
    padding-top:50px;
    border-top:1px solid #000;
}
.oma2-related-stories-wrapper .cta-arrow {
    float:right;
    margin-top:5px;
}
.oma2-related-stories-wrapper > span {
    font-size:12px;
    font-weight:600;
    color:#141414;
}
.oma2-related-stories-wrapper > ul {
    display:flex;
    gap:50px;
    justify-content:space-between;
    flex-wrap:wrap;
    margin-top:25px;
    list-style-type:none;
    padding:0;
}
.oma2-related-stories-wrapper > ul > li {
    margin:0;
    padding:0;
}
.oma2-related-stories-wrapper li.oma2-blog-post {
    flex:1 1 calc(25% - 50px); /* 4 columns */
    padding-top:20px;
    padding-bottom:20px;
    margin:0;
}
.oma2-related-stories-wrapper .oma2-blog-post a {
    color:#141414;
}
.oma2-related-stories-wrapper .oma2-blog-post img {
    width:100%;
    height:auto;
    margin-bottom:15px;
}
.oma2-related-stories-wrapper .oma2-blog-post .date {
    font-size:10px;
    font-weight:600;
    letter-spacing:0.6px;
    color:#141414;
}
.oma2-related-stories-wrapper .oma2-blog-post h2 {
    font-size:22px;
    line-height:24px;
    letter-spacing:-0.9px;
    margin-top:8px;
    color:#002111;

    transition:.2s ease;
}
.oma2-related-stories-wrapper .oma2-blog-post a:hover {
    text-decoration:none;
}
.oma2-related-stories-wrapper .oma2-blog-post a:hover h2 {
    color:#E14C0F;
    text-decoration:none;
}

/* blog sidebar */
.oma2-blog-sidebar {
    width:400px;
    min-width:400px;
    margin:0 70px 0 auto;
    padding:0;
}
.oma2-blog-sidebar > div > div {
    margin-bottom:45px;
}
.oma2-blog-sidebar h3 {
    font-size:22px;
    font-weight:400;
    color:#3F3F3E;
    
    padding-bottom:15px;
    border-bottom:1px solid #3B3C3C;
}

/* sidebar author box */
.oma2-sidebar-author {
    padding:45px 45px 10px 45px;
    border-radius:12px;
    background-color:#F5F5F5;
}
.oma2-sidebar-author h4 {
    font-size:22px;
    font-weight:400;
    color:#3F3F3E;
    margin-bottom:25px;
}
.post-author-info a {
    display:flex;
    align-items:center;
    gap:20px;
}
.post-author-info a img {
    border-radius:50%;
    width:99px;
    height:99px;
    object-fit:cover;
}
.post-author-info a h5 {
    margin:0;
    padding:0;
    font-size:19px;
    color:#3B3C3C;

    transition:.2s ease;
}
.post-author-info a:hover,
.post-author-info a:hover h5 {
    color:#D21216;
    text-decoration:none !important;
}
.post-author-info p {
    font-size:15px;
    line-height:160%;
    color:#002111;
}
  

/* blog sidebar latest posts */
.oma2-sidebar-latest {
    margin-top:50px;
}
.oma2-sidebar-latest ul {
    list-style-type:none;
    padding:0;
}
.oma2-sidebar-latest ul li {
    width:100%;
    padding:25px 0 10px 10px;
    border:none;
    border-bottom:1px solid #DADBDB;
    border-radius:0;
}
.oma2-sidebar-latest ul li:first-of-type {
    padding-top:5px;
}
.oma2-sidebar-latest ul li span {
    font-size:14px;
}
.oma2-sidebar-latest ul li h3 {
    font-size:16px;
    font-weight:300;
    line-height:26px;
    padding:0 20px 0 0;
    margin:10px 0;
    border:none;

    transition:.2s ease;
}
.oma2-sidebar-latest ul li a:hover {
    text-decoration:none;
}
.oma2-sidebar-latest ul li a:hover h3 {
    color:#E14C0F;
}

/* blog sidebar email form */
.oma2-sidebar-mailinglist {
    border-radius:12px;
    width:100%;
    margin-top:50px;
}
.oma2-sidebar-mailinglist .gform_wrapper {
    max-width:800px !important;
    margin:20px auto 0 auto;
    text-align:left;
}
.oma2-sidebar-mailinglist form {
    display:flex;
    justify-content:center;
    margin:0 auto;
    padding:0;
}
.oma2-sidebar-mailinglist input[type=email] {
    padding:14.5px 15px !important;
    height:auto !important;
    font-size:16px !important;
}
.oma2-sidebar-mailinglist .gform_body {
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
}
.oma2-sidebar-mailinglist .gform_footer,
.oma2-sidebar-mailinglist .gform_footer input {
    margin:0 !important;
    padding:0 !important;
}
.oma2-sidebar-mailinglist .gform_footer input {
    margin-left:10px !important;
    padding:0 15px !important;
    height:51px !important;
    font-size:16px !important;
}

/* blog sidebar categories */
.oma2-sidebar-categories {
    margin-top:50px;
}
.oma2-sidebar-categories ul {
    list-style-type:none;
    padding:0;
    margin-top:20px;
}
.oma2-sidebar-categories ul li {
    position:relative;
    border-bottom:1px solid #DADBDB;
}

/* re-arrange categories */
.oma2-sidebar-categories > ul {
    display:flex;
    flex-direction:column;
}
/*
.oma2-sidebar-categories > ul li:nth-of-type(4) { order: -5; }
.oma2-sidebar-categories > ul li:nth-of-type(3) { order: -4; }
.oma2-sidebar-categories > ul li:nth-of-type(5) { order: -3; }
.oma2-sidebar-categories > ul li:nth-of-type(2) { order: -2; }
.oma2-sidebar-categories > ul li:nth-of-type(1) { order: -1; }
*/

.oma2-sidebar-categories ul li a {
    position:relative;
    width:100%;
    display:block;
    text-decoration:none;
    padding:20px 0 20px 15px;

  font-family:Poppins;
    font-size:19px;
    font-weight:400;
    color:#090816;

    -webkit-transition:.2s ease;
    transition:.2s ease;
}
.oma2-sidebar-categories ul li a:hover {
    color:#E14C0F;
}
.oma2-sidebar-categories ul li > span {
    position:absolute;
    top:25px;
    right:10px;
    pointer-events:none;
    text-align:right;

    font-weight:400;
    font-size:17px;

    -webkit-transition:.2s ease;
    transition:.2s ease;
}
.oma2-sidebar-categories ul li a:hover + span {
    position:absolute;
    opacity:0;

    -webkit-transform:translateY(-20px);
    transform:translateY(-20px);
}
.oma2-sidebar-categories .oma2-cat-arrow {
    position:absolute;
    top:12px;
    right:10px;
    width:40px;
    height:40px;
    opacity:0;

    background-image:url(icons/icon-blog-cat-arrow.svg);
    background-size:auto auto;
    background-position:top 14px right;
    background-repeat:no-repeat;

    -webkit-transform:translateY(20px);
    transform:translateY(20px);
  
    -webkit-transition:.2s ease;
    transition:.2s ease;
}
.oma2-sidebar-categories ul li a:hover > .oma2-cat-arrow {
    opacity:1;

    -webkit-transform:translateY(0);
    transform:translateY(0);
}

/* blog sidebar services */
.oma2-sidebar-services {
    position:sticky;
    top:200px;
    margin-top:50px;
}
.oma2-sidebar-services ul {
    list-style-type:none;
    padding:0;
    margin-top:20px;
}
.oma2-sidebar-services ul li {
    position:relative;
    border-bottom:1px solid #DADBDB;
}
.oma2-sidebar-services ul li a {
    font-size:16px;
    font-weight:400;
    line-height:26px;
    color:#090816;
    display:block;
    padding:8px 20px 8px 15px;
    margin: 0;
    border:none;

    transition:.2s ease;
}
.oma2-sidebar-services ul li a:hover {
    text-decoration:none;
    font-weight:600;
    color:#000;
}


/* Read Meter plugin customize */
#bsf_rt_progress_bar_container {
    z-index:999999;
    top:50px;
    opacity:1 !important;

    /* hide by default */
    display:none;
}
@media (max-width: 650px) {

    #bsf_rt_progress_bar_container {
        top:40px;
    }
    
}
/* show on children of /cases, /dienst, landing page templates and single.php */
.page-template-page-landing-page-a #bsf_rt_progress_bar_container,
.page-template-page-landing-page-b #bsf_rt_progress_bar_container,
.page-template-page-landing-page-c #bsf_rt_progress_bar_container,
.page-template-page-case #bsf_rt_progress_bar_container,
.single-post #bsf_rt_progress_bar_container,
.page-template-page-dienst #bsf_rt_progress_bar_container {
    display:inline;
}
/* move when smart header moves */
#bsf_rt_progress_bar_container {
    transition:top 0.175s ease .125s !important;
}
#bsf_rt_progress_bar_container.moveup {
    top:0;
    transition:top 0.05s ease-out 0s !important;
}
  


/* VIDEOS IN DIENST PAGES
**************************************************/
.wp-block-video,
.wp-block-embed.wp-embed-aspect-16-9,
.wp-block-embed__wrapper {
    margin-bottom:50px;
}
.wp-block-embed.wp-embed-aspect-16-9,
.wp-block-embed__wrapper {
    position:relative;
    width:100%;
    max-width:100%;
    padding-bottom:56.25%; /* 16:9 aspect ratio */
    height:0;
    overflow:hidden;
}
.wp-block-embed__wrapper iframe {
    position:absolute;
    top:0;
    left:0;
    width:100% !important;
    height:100% !important;
    border:0;
}



/* SCHEMA FAQ
**************************************************/
.wp-block-wpsp-faq {
    margin-top:20px;
    margin-bottom:60px;
}
.wpsp-faq-item {
    border:none !important;
    border-bottom:1px solid #C1C1C1 !important;
}
.wp-block-wpsp-faq div span {
    font-size:18px;
    line-height:32px;
    font-weight:700;
    padding:0 0 10px 0;
}
.wp-block-wpsp-faq div span p {
    font-size:18px;
    line-height:32px;
    font-weight:400;
    margin-top:0 !important;
}
.wp-block-wpsp-faq div:focus {
    outline: none !important;
}
.wp-block-wpsp-faq div {
    position:relative;
}
.wpsp-faq-icon-wrap {
    position:absolute;
    top:16px;
    right:0;
    width:20px !important;
    height:20px !important;
    display:block;

    background-image:url(icons/icon-faq-arrow.svg);
    background-size:auto auto;
    background-position:left center;
    background-repeat:no-repeat;

    transform:rotate(180deg);
}
.wpsp-faq-icon-wrap svg path {
    display:none;
}
.wpsp-icon-active {
    transform:scaleX(-1);
}



/* RATINGS (in blog posts via plugin)
**************************************************/
.rpi {
    margin-top:35px;
}




/* PAGE TEMPLATE: LANDING PAGE (parent)
**************************************************/
.oma2-landing-parent-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-landing-parent-main-inner {
    position:relative;
    width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-landing-parent-main-inner article h1 {
    font-weight:600;
    color:#3B3C3C;
    font-size:36px;
    line-height:38px;
    margin-bottom:25px;
}

.oma2-landing-content-inner {
    column-count:4;
    margin-top:50px;
}
.oma2-landing-content-inner a {
    display:block;
    break-inside:avoid;
}
.oma2-landing-content-inner h2 a {
    font-size:16px;
    line-height:30px;
    color:#303030;
    letter-spacing:-0.5px;
}
.oma2-landing-content-inner h2 a:hover {
    font-weight:700;
    text-decoration:none;
}

.oma2-landing-heading-shortcode {
    margin-top:-60px;  
    margin-bottom:75px;
}


/* LANDING FORM OVERLAY
**************************************************/
.oma2-landing-overlay {
    position:fixed;
    z-index:9999999;
    top:0;
    left:-10000%;
    width:100%;
    height:100%;
    opacity:0;

    display:grid;
    place-items:center;
    overflow-y:auto;

    backdrop-filter:blur(10px);
    background-color:rgba(255,255,255,0.96);

    transition:opacity .25s ease 0s, left 0s ease .25s;
}
.oma2-landing-overlay.active {
    left:0;
    opacity:1;

    transition:opacity .25s ease 0s, left 0s ease 0s;
}
/* close button */
.oma2-landing-overlay-close {
    position:absolute;
    z-index:1;
    top:15px;
    right:17px;
    width:35px;
    height:35px;
    display:block;
    cursor:pointer;
}
.oma2-landing-overlay-close::before,
.oma2-landing-overlay-close::after {
    content:'';
    position:absolute;
    top:1px;
    right:16px;
    width:2px;
    height:34px;
    background-color:#000;
    border-radius:3px;
    pointer-events:none;
}
.oma2-landing-overlay-close::before {
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
}
.oma2-landing-overlay-close::after {
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
}
/* content wrapper */
.oma2-landing-overlay-content-wrapper {
    max-height:100%;
    overflow-y:auto;
    display:flex;
    justify-content:center;
    width:100%;
    transform:translateY(40px);
    opacity:0;
}
.oma2-landing-overlay.active .oma2-landing-overlay-content-wrapper {
    margin-top:55px;
    padding-bottom:50px;
    transform:translateY(0);
    opacity:1;

    transition:opacity .5s ease 0s, transform .5s ease 0s;
}
.oma2-landing-overlay-content {
    width:auto;
    padding:15px;
    box-sizing:border-box;
    margin-top:30px;
}
.oma2-landing-overlay-content .gform_wrapper {
    margin-top:0;
    padding-bottom:75px;
}


/* PAGE TEMPLATE: LANDING PAGE
**************************************************/
.oma2-landing-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-landing-main-inner {
    position:relative;
    max-width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
    
    display:flex;
    flex-direction:column;
}

.oma2-landing-main-inner article h1 {
    margin-bottom:25px;
    text-align:center;
}
.oma2-landing-c article h1 {
    text-align:left;
}


.oma2-landing-b .image-video-wrapper {
    max-width:1024px;
    margin:65px 0 50px 0;
}
.oma2-landing-main-inner .wp-block-image {
    max-width:1024px;
}

.oma2-landing-main-inner article h1,
.oma2-landing-main-inner article h2,
.oma2-landing-main-inner article h3,
.oma2-landing-main-inner article h4,
.oma2-landing-main-inner article h5,
.oma2-landing-main-inner article p {
    max-width:650px;
    margin-left:auto;
    margin-right:auto;
}
.oma2-landing-main-inner article h3 {
    margin-top:50px;
}
.oma2-landing-main-inner article p {
    font-size:20px;
    line-height:32px;
    letter-spacing:-2%;
    color:#5C616A;
}

/* landing page jump to form button */
.oma2-landing-main-inner .jump-to-form {
    width:100%;
    max-width:650px;
    padding:20px 0 0 0;
}
.oma2-landing-main-inner .jump-to-form a {
    width:100%;
    height:70px;
    font-size:22px;
    font-weight:700;
    color:#fff;
    border-radius:5px;
    cursor:pointer;

    display:flex;
    align-items:center;
    justify-content:center;

    transition:.15s ease;

    background-color:#2D9CDB;
}
.oma2-landing-main-inner .jump-to-form a:hover {
    background-color:#237AAC;
    text-decoration:none;
}

.oma2-landing-main-inner .gform_wrapper {
    margin:0 auto;
    padding:35px;
    margin-top:35px;
    max-width:650px;
    width:100%;
    border-radius:5px;
    border:1px solid #BDBDBD;
}

.oma2-landing-main-inner .gform_heading {
    display:block !important;
    margin:10px 0 50px 0;
}
.oma2-landing-main-inner .gform_heading h2 {
    display:block !important;
    text-align:left !important;
    font-size:24px !important;
    line-height:30px !important;
    letter-spacing:0;
    margin-bottom:-5px !important;
}
.oma2-landing-main-inner .gform_heading p {
    display:block !important;
    text-align:left !important;
    margin-bottom:30px !important;
    font-size:20px !important;
}

/* landing A specific */
/* price */
.oma2-landing-a-price {
    width:140px;
    height:140px;
    border-radius:50%;

    font-size:27px;
    font-weight:600;
    letter-spacing:-2%;
    color:#fff;
    background-color:#333;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
  
    position:absolute;
    top:45px;
    right:45px;

    transition:transform .3s cubic-bezier(.5, 1, 0.2, 2), background-color .1s ease;
}
.oma2-landing-a-price div.starting-from {
    font-size:16px;
    font-weight:500;
    margin-bottom:4px;
}
.oma2-landing-a-price div.monthly {
    font-size:11px;
    font-weight:500;
    margin-top:3px;
}
.oma2-landing-price-link:hover .oma2-landing-a-price {
    transform:scale(1.1) rotate(10deg);
    background-color:#D21216;
}


/* main block */
.oma2-landing-a-top-wrapper {
    margin-bottom:20px;
    padding:85px 0 85px 0;
    width:100%;
    background-color:#F5F5F5;
}
.oma2-landing-a-top-wrapper h1 {
    font-size:44px !important;
    line-height:38px !important;
    font-weight:600 !important;
    letter-spacing:-2%;
    margin-bottom:35px !important;
    padding-left:20px;
    padding-right:20px;
}
.oma2-landing-a-top-wrapper p,
.oma2-landing-a-top-wrapper p a {
    font-family:'DM Sans';
    font-weight:400;
    font-size:20px !important;
    line-height:28px !important;
    letter-spacing:-2%;
    color:#334D5E !important;
    margin-bottom:30px;
    padding-left:20px;
    padding-right:20px;
    text-decoration:none;
}
.oma2-landing-a-top-wrapper p a {
    padding-left:0;
    padding-right:0;
}
.oma2-landing-a-top-wrapper p a:hover {
    color:#334D5E !important;
    text-decoration:none;
}
.oma2-landing-a-top-wrapper p strong {
    font-size:20px !important;
    font-weight:700;
}
.oma2-landing-a-main-img {
    max-width:850px;
    margin:75px auto 75px auto;
}
.oma2-landing-a-icons-wrapper {
    max-width:800px;
    margin:0 auto 50px auto;
}
.oma2-landing-a-icons-wrapper > div {
    margin-bottom:25px;
}
.oma2-landing-a-icons-wrapper p:not(strong) {
    font-size:18px !important;
    line-height:22px !important;
}
.oma2-landing-a .wp-block-video,
.oma2-landing-b .wp-block-video,
.oma2-landing-c .wp-block-video {
    max-width:850px;
    width:100%;
    margin:75px auto 75px auto;
}
.oma2-landing-a-main-img {
    max-width:850px !important;
    width:100%;
    margin:75px auto 75px auto;
}
/* landing A CTA button */
.page-template-page-landing-page-a .wp-block-button a {
    color:#fff;
    font-size:16px;
    font-weight:600;
    letter-spacing:0.05px;
    padding:18px 50px 18px 30px;
    height:auto !important;

    background-image:url(icons/icon-landing-right.svg);
    background-size:14px auto;
    background-position:right 20px center;
    background-repeat:no-repeat;

    transition:all .2s cubic-bezier(.5, 1, 0.2, 2);

    background-color:#090816;
}
.page-template-page-landing-page-a .wp-block-button a:hover {
    text-decoration:none;
    padding-right:55px;
    background-position:right 15px center;
}

.wp-block-button a {
    color:#fff !important;
}

/* logos block adjustments */
.page-template-page-landing-page-a .oma2-block-logos {
    margin-top:35px;
    margin-bottom:100px;
}

/* thumbs block */
.oma2-landing-a-middle-wrapper {
    margin-bottom:100px;
    padding-left:50px;
    padding-right:50px;
}
.oma2-landing-a-middle-wrapper h2 {
    font-size:32px !important;
    line-height:38px !important;
    letter-spacing:-2%;
    margin-bottom:35px;
}
.oma2-landing-a-middle-wrapper p,
.oma2-landing-a-middle-wrapper p a {
    font-size:18px !important;
    line-height:32px !important;
    letter-spacing:-2%;
    color:#5C616A;
    margin-bottom:25px;
    text-decoration:none;
}
.oma2-landing-a-middle-wrapper p a:hover {
    color:#5C616A;
    text-decoration:none;
}
.oma2-landing-a-middle-wrapper .wp-block-column:last-of-type {
    padding-left:40px;
}
.wp-block-button.alignleft {
    margin:25px auto 0 0;
}
.oma2-landing-a-middle-wrapper .wp-block-video {
    margin-top:15px;
}

/* final block */
.oma2-landing-a-bottom-wrapper {
    margin-bottom:20px;
    padding:40px 80px 75px 80px;
    width:100%;
    background-color:#F5F5F5;
}
.oma2-landing-a-bottom-wrapper h2 {
    max-width:450px !important;
    font-size:52px !important;
    line-height:58px !important;
    letter-spacing:-2%;

    margin-left:0 !important;
    margin-right:auto !important;
}
.oma2-landing-a-bottom-wrapper h3,
.oma2-landing-a-bottom-wrapper h3 a {
    font-size:22px !important;
    line-height:28px !important;
    letter-spacing:-2%;
    color:#090816;
    margin:35px 0 10px 0 !important;
    text-decoration:none;
}
.oma2-landing-a-bottom-wrapper p:first-child {
    max-width:450px;
    font-size:20px !important;
    line-height:32px !important;
    letter-spacing:-2%;
    margin-top:50px;
    margin-right:0;
}
.oma2-landing-a-bottom-wrapper p,
.oma2-landing-a-bottom-wrapper p a,
.oma2-landing-a-bottom-wrapper p a:hover {
    font-size:16px !important;
    line-height:26px !important;
    letter-spacing:-2%;
    margin:0;
    color:#5C616A;
    text-decoration:none;
}
.oma2-landing-a-bottom-wrapper .wp-block-video {
    margin:20px 0 0 0;
}

/* landing page video play button */
figure.wp-block-video {
    position:relative;
}
.play-button-landing {
    position:absolute;
    z-index:10;
    bottom:50%;
    left:50%;
    width:188px;
    height:188px;
    display:block;
    border-radius:50%;
    opacity:1;
    cursor:pointer;

    transform:scale(.5) translateX(-50%) translateY(50%);
    transform-origin:left bottom;

    -webkit-box-shadow:0 0 0px 20px rgba(231,229,222,0.5) inset;
    box-shadow:0 0 0px 20px rgba(231,229,222,0.5) inset;

    transition:.75s cubic-bezier(.5, 1, 0.2, 1.05) .15s;
}
.play-button-landing:hover {
    -webkit-box-shadow:0 0 2px 0 rgba(231,229,222,0.75) inset;
    box-shadow:0 0 2px 0 rgba(231,229,222,0.75) inset;
}
.play-button-landing::before {
    content:'';
    position:relative;
    z-index:9;
    top:12px; 
    left:12px;
    width:156px;
    height:156px;
    background-color:#D21216;
    display:block;
    border-radius:50%;
    border:4px solid #E7E5DE;
}
.play-button-landing::after {
    content:'';
    position:absolute;
    z-index:12;
    width:45px;
    height:54px;
    top:69px;
    left:76px;

    background-image:url(icons/icon-play.png);
    background-size:45px 54px;

    -webkit-transition:all .25s ease;
    transition:all .25s ease;
}
.play-button-landing:hover::after {
    -webkit-transform:scale(1.15);
    transform:scale(1.15);
}
.play-button-landing:active::before {
    -webkit-transform:scale(.95);
    transform:scale(.95);
}
/* large play button ripple effect */
.play-button-landing .large-ripple::after {
    content:'';
    position:absolute;
    right:0;
    bottom:0;
    width:188px;
    height:188px;
    border:1px solid #fff;
    border-radius:100%;
    box-sizing:border-box;

    animation-name:large-ripple;
    animation-duration:7s;
    animation-timing-function:ease-in-out;
    animation-iteration-count:infinite;
}
@keyframes large-ripple {
    0%, 39% { opacity:0; transform:scale(1); }
    40% { opacity:.5; transform:scale(1); }
    60%, 100% { opacity:0; transform:scale(2); }
}
/* hide ripple when pause button visible */
.play-button-pause-landing .large-ripple::after {
    display:none;
}

/* pause button */
.play-button-pause-landing {
    -webkit-transition:all .75s ease .35s;
    transition:all .75s ease .35s;

    left:-25px;
    bottom:-25px;
    transform-origin:center;

    -webkit-transform:translateX(0%) translateY(0%) scale(.35) !important;
    transform:translateX(0%) translateY(0%) scale(.35) !important;

    transition:.75s cubic-bezier(.5, 1, 0.2, 1.05) .15s;
}
.play-button-pause-landing::after {
    content:'';
    position:absolute;
    z-index:12;
    width:66px;
    height:66px;
    top:61px;
    left:61px;

    background-image:url(icons/icon-pause.svg);
    background-size:66px 66px;

    -webkit-transition:all .2s ease;
    transition:all .2s ease;
}
.overons-video:hover .play-button-pause-landing {
    opacity:1;
}

/* cases adjustments */
.case-thumb {
    height:max-content;
}
.case-thumb-video-wrapper .play-button-landing {
    transform:scale(.4) translateX(-50%) translateY(50%);
    transform-origin:left bottom;
}
.case-thumb-video-wrapper .play-button-pause-landing {
    left:25px;
    bottom:30px;
}


/* BLOG PAGE
**************************************************/
/* intro block */
.oma2-block-blog-intro {
    position:relative;
    z-index:10;
    height:100%;

    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-block-blog-intro-inner {
    position:relative;
    max-width:1360px;
    width:100%;
    min-height:inherit;
    margin:0 35px;
    padding:0 0 50px 0;
    align-items:center;
}
.oma2-block-blog-intro-inner h1 {
    font-weight:600;
    color:#3B3C3C;
    font-size:36px;
    line-height:38px;
}
.oma2-block-blog-intro-inner p {
    font-size:22px;
    line-height:33px;
    color:#7C7C7B;
    max-width:950px;
}
.oma2-block-blog-intro-inner p a,
.oma2-block-blog-intro-inner p a:hover {
    color:#7C7C7B;
}

/* main block */
.oma2-block-blog-main {
    position:relative;
    z-index:10;
    height:100%;

    display:flex;
    justify-content:center;
    align-items:center;

    background-color:#fff;
}
.oma2-block-blog-main-inner {
    position:relative;
    max-width:1360px;
    min-height:inherit;
    margin:0 35px;
    padding:75px 0 100px 0;
    align-items:center;
}

.oma2-block-blog-main h5 {
    font-size:12px;
    font-weight:600;
    color:#141414;
}
.oma2-block-blog-main .cta-arrow {
    float:right;
    transform:translateY(-16px);
}


/* /blog main posts (wrapper) */
.oma2-blog-main-posts-wrapper {
    width:100%;
    display:flex;
    flex-wrap:wrap;
    gap:40px;
    margin-top:35px;
    margin-bottom:50px;
    padding-bottom:50px;

    border-bottom:1px solid #000;
}


/* /blog main posts (left) */
.oma2-blog-main-posts-left {
    flex:5;
    max-width:800px;
    min-width:0;
}
.oma2-blog-main-posts-left ul {
    height:100%;
    padding:0;
    margin:0;
    list-style-type:none;
}
.oma2-blog-main-posts-left ul li {
    font-size:16px;
    line-height:160%;
    width:100%;
}
.oma2-blog-main-posts-left img {
    width:100%;
    height:auto;
    margin-bottom:5px;
}
.oma2-blog-main-posts-left ul li,
.oma2-blog-main-posts-left ul li a[rel="category tag"] {
    font-size:12px;
    letter-spacing:-0.5px;
    color:#141414;
}
.oma2-blog-main-posts-left ul li a h2 {
    font-size:26px;
    line-height:130%;
    margin-top:5px;
    color:#002111;

    transition:.2s ease;
}
.oma2-blog-main-posts-left ul li a:hover,
.oma2-blog-main-posts-left ul li a:hover h2 {
    color:#E14C0F;
    text-decoration:none;
}


/* /blog main posts (right) */
.oma2-blog-main-posts-right {
    flex:5;
    position:relative;
    width:auto;
    max-width:500px;
    min-width:250px;
}
.oma2-blog-main-posts-right img {
    width:100%;
    height:auto;
}
.oma2-blog-main-posts-right ul {
    padding:0;
    margin:0;
    list-style-type:none;
}
.oma2-blog-main-posts-right ul li {
    width:100%;
    height:auto;
    padding:0;
    background-color:transparent;
    border-radius:0;
    padding-bottom:25px;
    border-bottom:1px solid #C9C9C9;
}
.oma2-blog-main-posts-right ul li:last-of-type {
    border-bottom:none;
}
.oma2-blog-main-posts-right span {
    padding:15px 0 10px 0;
    display:block;
}
.oma2-blog-main-posts-right span a {
    font-size:12px;
    letter-spacing:-0.5px;
    color:#141414;
}
.oma2-blog-main-posts-right ul li a h3 {
    font-size:22px;
    line-height:130%;
    color:#002111;

    transition:.2s ease;
}
.oma2-blog-main-posts-right ul li a:hover,
.oma2-blog-main-posts-right ul li a:hover h3 {
    color:#E14C0F;
    text-decoration:none;
}

/* hide categories except first */
.oma2-blog-main-posts-right span a { display:none; }
.oma2-blog-main-posts-right span a:first-of-type { display:inline; }


/* /blog horizontal layout */
.oma2-blog-horiz-wrapper {
    width:100%;
    margin-top:30px;
    margin-bottom:50px;
    padding-bottom:60px;
    border-bottom:1px solid #000;
}
.oma2-blog-horiz-wrapper ul {
    width:100%;
    display:flex;
    flex-wrap:wrap;
    gap:50px;
    margin:0;
    padding:0;
    list-style:none;
}
.oma2-blog-horiz-wrapper ul li {
    width:calc(25% - 38px);
}
.oma2-blog-horiz-wrapper ul li img {
    width:100%;
    height:auto;
    margin-bottom:10px;
}
.oma2-blog-horiz-wrapper ul li a {
    font-size:10px;
    font-weight:600;
    letter-spacing:0.6px;
    color:#141414;
}
.oma2-blog-horiz-wrapper ul li a h2 {
    font-size:22px;
    line-height:24px;
    letter-spacing:-0.9px;
    margin-top:8px;
    color:#002111;

    hyphens:auto;
    overflow-wrap:break-word;

    transition:.2s ease;
}
.oma2-blog-horiz-wrapper ul li a:hover {
    text-decoration:none;
}
.oma2-blog-horiz-wrapper ul li a:hover h2 {
    color:#E14C0F;
    text-decoration:none;
}


/* /blog columns (final posts) */
.oma2-blog-col-wrapper {
    display:flex;
    gap:70px;
    width:100%;
}
.oma2-blog-col-inner {
    position:relative;
    width:100%;
    margin:10px 0 0 0;
    padding:20px 0 0 0;
}
.oma2-blog-col-wrapper ul {
    padding:0;
    margin:35px 0 35px 0;
    list-style-type:none;
}
.oma2-blog-col-wrapper ul li:first-child {
    border-top:1px solid #DEE2E6;
    padding-top:15px;
}
.oma2-blog-col-wrapper ul li {
    width:100%;
    font-size:13px;
    line-height:145%;

    border-bottom:1px solid #DEE2E6;
}
.oma2-blog-col-wrapper ul li a {
    display:flex;
    padding:15px 0;
}
.oma2-blog-col-wrapper ul li .hidden-until-loaded {
    margin-right:15px;
}
.oma2-blog-col-wrapper ul li img {
    width:80px;
    height:48px;
}
.oma2-blog-col-wrapper ul li a {
    font-size:9.6px;
    letter-spacing:0.6px;
    color:#141414;
}
.oma2-blog-col-wrapper ul li a h3 {
    font-size:15px;
    line-height:16px;
    letter-spacing:-0.6px;
    margin:7px 0 3px 0;
    color:#000;

    transition:.2s ease;
}
.oma2-blog-col-wrapper ul li a:hover {
    text-decoration:none;
}
.oma2-blog-col-wrapper ul li a:hover h3 {
    color:#E14C0F;
    text-decoration:none;
}




/* PRODUCTS PAGE
**************************************************/
.oma2-products-wrapper {
    position:relative;
    z-index:999;
    width:100%;
    margin:0 auto;
    padding:40px 35px 0 35px;
    background-color:#fff;
}

/* navigation */
.oma2-products-wrapper nav {
    position:sticky;
    z-index:100;
    top:210px;
    left:0;
    right:0;
    margin:0 auto 35px auto;
    width:max-content;
    border-radius:50px;
    padding:2px;
    height:50px;
    background-color:#F9F7F4;

    font-family:DM Sans;
    font-size:17px;
    font-weight:600;
    letter-spacing:-5%;
    line-height:100%;

    transition:.3s ease;
}
.stickymoveup {
    top:10px !important;
}
.oma2-products-wrapper nav ul {
    position:relative;
    margin:0;
    padding:0;
    display:flex;
    list-style:none;
    justify-content:center;
}
.oma2-products-wrapper nav ul li {
    position:relative;
    margin:0;
}
.oma2-products-wrapper nav ul li a {
    position:relative;
    z-index:2;
    display:block;
    padding:15px 25px;
    color:#000;
    text-decoration:none;
    transition:color .5s ease;
}
/* white text when active */
.oma2-products-wrapper nav ul li a.active {
    color:#fff;
}

/* sliding background highlight */
.oma2-products-wrapper .nav-slider {
    position:absolute;
    z-index:1;
    top:0;
    height:46px;
    background-color:#002332;
    border-radius:50px;
    transition:all .5s ease;
}

/* sections */
.oma2-products-wrapper section {
    position:relative;
    max-width:1360px;
    height:825px;
    display:flex;
    align-items:center;
    justify-content:left;
    color:#fff;
    margin:35px auto;
    background-color:#090816;
}

/* product section title+desc */
.oma2-products-wrapper section .oma2-section-intro {
    position:absolute;
    z-index:90;
    top:0;
    left:0;
    padding:75px 150px 0 75px;
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    width:100%;
    max-width:100%;
    pointer-events:none;
}
.oma2-products-wrapper section .oma2-section-intro h3 {
    font-size:52px;
    font-weight:600;
    line-height:100%;
    letter-spacing:-2%;
}
.oma2-products-wrapper section .oma2-section-intro span {
    font-size:20px;
    font-weight:400;
    line-height:32px;
    letter-spacing:-2%;
    text-align:right;
    max-width:285px;
    text-align:left;
}

/* if no tools pages present */
.oma2-tools-message-wrapper {
    margin:20px auto 0 auto;
}
.oma2-tools-message {
    font-size:20px;
    line-height:120%;
    text-align:center;
    border:3px solid rgba(255,255,255,.4);
    border-radius:50px;
    background-color:rgba(255,255,255,.1);
    padding:25px 70px;
    margin:0 40px;
}
@media (max-width: 1000px) {

    .oma2-tools-message {
        font-size:16px;
        padding:20px 50px;
    }

}
@media (max-width: 650px) {

    .oma2-tools-message {
        font-size:12px;
        border-width:2px;
        padding:15px 30px;
        margin:0 20px;
    }

}


/* individual products */
.oma2-product-wrapper {
    width:max-content;
    display:flex;
    align-items:center;
    justify-content:left;
    padding:0 75px;
    height:100%;

    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none; /* firefox */
}
/* hide scrollbar */
.oma2-product-wrapper::-webkit-scrollbar {
    display:none;
}
.oma2-product-individual {
    position:relative;
    display:flex;
    align-items:flex-end;
    flex:0 0 auto; /* don’t shrink, keep width */
    width:320px;
    height:320px;
    margin:100px 30px 0 30px;
    background-color:#8B8B8B;

    background-size:cover;
    background-position:center center;
}
.oma2-product-individual:hover {
    text-decoration:none;
}
/* price */
.product-price {
    position:absolute;
    top:-25px;
    right:-20px;
    outline:2px solid #fff;

    width:95px;
    height:95px;
    border-radius:50%;

    font-size:18px;
    font-weight:600;
    letter-spacing:-2%;
    color:#fff;
    background-color:#333;

    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    
    transform:scale(1.15);
    transition:transform .35s cubic-bezier(.5, 1, 0.4, 1.8), background-color .1s ease;
}
.oma2-product-individual:hover .product-price {
    transform:scale(1.25) rotate(10deg);
    background-color:#D21216;
}
.product-price div.starting-from {
    font-size:11px;
    font-weight:500;
    margin-top:-4px;
    margin-bottom:4px;
}
.product-price div.monthly {
    font-size:8px;
    font-weight:500;
    margin-top:4px;
}
/* product info */
.oma2-product-individual span {
    position:relative;
    z-index:2;
    display:block;
    width:100%;
    height:max-content;
    padding:15px 15px 15px 20px;
    overflow:hidden;
    height:65px;
    transition:all .4s ease;
}
.oma2-product-individual:hover span {
    height:150px;
}
.oma2-product-individual span h3 {
    color:#fff;
    transition:all .4s ease;
}
.oma2-product-individual:hover span h3 {
    color:#000;
}
.oma2-product-individual span p {
    font-size:16px;
    color:#000;
    opacity:0;
    margin-top:30px;
    transition:all .5s ease;
}
.oma2-product-individual:hover span p {
    opacity:1;
    margin-top:15px;
}
/* background video  */
.oma2-product-video {
    position:absolute;
    z-index:0;
    top:0;
    left:0;
    width:100%;
    height:100%;
    object-fit:cover;
}
/* language-specific texts */
.producten-nl,
.producten-en {
  display:none;
}
html[lang="nl-NL"] .producten-nl {
  display:block;
}
html[lang="en-US"] .producten-en {
  display:block;
}

.oma2-product-individual-bg {
    width:100%;
    height:155px;
    position:absolute;
    z-index:1;
    background-color:#fff;
    transform:scaleY(0) scaleX(.9);
    transform-origin:bottom;
    transition:all .4s ease;
}
.oma2-product-individual:hover .oma2-product-individual-bg {
    transform:scaleY(1) scaleX(1);
}

/* left/right nav */
.oma2-products-left,
.oma2-products-right {
    position:absolute;
    z-index:20;
    margin-top:100px;
    display:block;
    width:50px;
    height:50px;
    border-radius:50px;
    cursor:pointer;
    background-color:#EAEAEA;
    background-repeat:no-repeat;
    background-position:center center;

    transition:.2s ease;
}
.oma2-products-left {
    left:75px;
    background-image:url(icons/icon-arrow-left.svg);
}
.oma2-products-right {
    right:75px;
    background-image:url(icons/icon-arrow-right.svg);
}
.oma2-products-left.inactive {
    opacity:0;
    pointer-events:none;
    transform:translateX(-20px);
}
.oma2-products-right.inactive {
    opacity:0;
    pointer-events:none;
    transform:translateX(20px);
}

/* gradients */
.oma2-products-gradient-left {
    position:absolute;
    z-index:10;
    left:0;
    display:block;
    width:100px;
    height:100%;
    pointer-events:none;
    background:linear-gradient(to right, rgba(9, 8, 22, 0.5) 0%, rgba(9, 8, 22, 0.2) 50%, rgba(9, 8, 22, 0) 100%);
}
.oma2-products-gradient-right {
    position:absolute;
    z-index:10;
    right:0;
    display:block;
    width:100px;
    height:100%;
    pointer-events:none;
    background:linear-gradient(to left, rgba(9, 8, 22, 0.5) 0%, rgba(9, 8, 22, 0.2) 50%, rgba(9, 8, 22, 0) 100%);
}



/* FULL-WIDTH PAGE TEMPLATE
**************************************************/
.oma2-full-width-heading-shortcode {
    margin-top:-60px;  
    margin-bottom:75px;
}
.oma2-full-width-main {
    position:relative;
    z-index:10;
    
    display:flex;
    justify-content:center;
    align-items:center;
}
.oma2-full-width-main-inner {
    position:relative;
    width:100%;
    max-width:1360px;
    margin:0 35px;
    padding:0 0 75px 0;
    
    display:flex;
    flex-direction:column;
}
.oma2-full-width-main-inner article h1 {
    font-size:55px;
    font-weight:600;
    margin-bottom:25px;
    text-align:left;
}
.oma2-full-width-main-inner .wp-block-image {
    max-width:1115px;
}
.oma2-full-width-main-inner article,
.oma2-full-width-main-inner article h1,
.oma2-full-width-main-inner article h2,
.oma2-full-width-main-inner article h3,
.oma2-full-width-main-inner article h4,
.oma2-full-width-main-inner article h5,
.oma2-full-width-main-inner article p { 
    max-width:1115px;
    margin-left:auto;
    margin-right:auto;
}
.oma2-full-width-main-inner article h3 {
    margin-top:50px;
}
.oma2-full-width-main-inner article p,
.oma2-full-width-main-inner article li {
    font-size:20px;
    line-height:32px;
    letter-spacing:-2%;
    color:#5C616A;
}
.oma2-full-width-main-inner article ol,
.oma2-full-width-main-inner article ul {
    padding-left:0;
}

/* full-width template headings */
.oma2-full-width-main-inner .entry-content h1,
.oma2-full-width-main-inner .entry-content h2,
.oma2-full-width-main-inner .entry-content h3,
.oma2-full-width-main-inner .entry-content h4,
.oma2-full-width-main-inner .entry-content h5,
.oma2-full-width-main-inner .entry-content h6 {
    line-height:120%;
    font-weight:600;
    margin:0;
    color:#000;
}
.oma2-full-width-main-inner .entry-content h1 {
    font-size:55px;
}
.oma2-full-width-main-inner .entry-content h2 {
    font-size:45px;
}
.oma2-full-width-main-inner .entry-content h3 {
    font-size:40px;
}
.oma2-full-width-main-inner .entry-content h4 {
    font-size:30px;
}
.oma2-full-width-main-inner .entry-content h5 {
    font-size:25px;
}
.oma2-full-width-main-inner .entry-content h6 {
    font-size:20px;
}




/* ANIMATIONS
**************************************************/
.anim-lettering {
    opacity:0;
    transition:opacity 0.3s ease;
}
.anim-lettering.visible {
    opacity: 1;
}

.anim-lettering .anim-letter {
    display:inline-block;
    opacity:0;
    transform:translateY(25px);
    animation:slideFadeUp .75s ease-out forwards;
}

@keyframes slideFadeUp {
    0%,
    25% {
        opacity:0;
        transform:translateY(25px);
    }
    100% {
        opacity:1;
        transform:translateY(0);
    }
}



.anim-fadeslideup {
    display:block;
    opacity:0;
    transform:translateY(50px);

    transition:all .5s ease-out .15s;
}
.anim-fadeslideup.visible {
    opacity:1;
    transform:translateY(0);
}



.anim-slideup {
    overflow:hidden;
}
.anim-slideup div,
.oma2-footer-right-links .anim-slideup a {
    display:block;
    opacity:0;
    transform:translateY(70px);

    transition:all 1.25s cubic-bezier(.25, 1, .75, 1);
}
.anim-slideup.visible div,
.oma2-footer-right-links .anim-slideup.visible a {
    opacity:1;
    transform:translateY(0);
}


/* delays */
.anim-delay-10,
.anim-delay-10 div,
.oma2-footer-right-links .anim-delay-10 a { transition-delay:.1s; }
.anim-delay-20,
.anim-delay-20 div,
.oma2-footer-right-links .anim-delay-20 a { transition-delay:.2s; }
.anim-delay-30,
.anim-delay-30 div,
.oma2-footer-right-links .anim-delay-30 a { transition-delay:.3s; }
.anim-delay-40,
.anim-delay-40 div,
.oma2-footer-right-links .anim-delay-40 a { transition-delay:.4s; }
.anim-delay-50,
.anim-delay-50 div,
.oma2-footer-right-links .anim-delay-50 a { transition-delay:.5s; }
.anim-delay-60,
.anim-delay-60 div,
.oma2-footer-right-links .anim-delay-60 a { transition-delay:.6s; }
.anim-delay-70,
.anim-delay-70 div,
.oma2-footer-right-links .anim-delay-70 a { transition-delay:.7s; }
.anim-delay-80,
.anim-delay-80 div,
.oma2-footer-right-links .anim-delay-80 a { transition-delay:.8s; }
.anim-delay-90,
.anim-delay-90 div,
.oma2-footer-right-links .anim-delay-90 a { transition-delay:.9s; }
.anim-delay-100,
.anim-delay-100 div,
.oma2-footer-right-links .anim-delay-100 a { transition-delay:1s; }




/* FADE UP animation (NO extra wrapper needed)*/
.anim-fadeup {
    display:block;
    opacity:0;
    transform:translateY(70px);

    transition:transform .75s ease-out .15s, opacity 1s ease 0s;
}
.anim-fadeup.visible {
    opacity:1;
    transform:translateY(0);
}




/* HEADINGS ADJUSTMENTS
**************************************************/
.oma2-content-wrapper .entry-content h4,
.oma2-content-wrapper .entry-content h5,
.oma2-content-wrapper .entry-content h6 {
    font-weight:500;
    color:#000;
}
.oma2-content-wrapper .entry-content h4 {
    font-size:18px;
}
.oma2-content-wrapper .entry-content h5 {
    font-size:15px;
}
.oma2-content-wrapper .entry-content h6 {
    font-size:13px;
}

@media (max-width: 650px) {
  
    .oma2-content-wrapper .entry-content h4 {
        font-size:16px;
    }
    .oma2-content-wrapper .entry-content h5 {
        font-size:13px;
    }
    .oma2-content-wrapper .entry-content h6 {
        font-size:11px;
    }
  
}



/* GOOGLE REVIEW BADGES
**************************************************/
.greview-home-wrapper {
    position:absolute;
    top:-35px;
    left:0px;
}
.g-review,
.g-review-footer {
    width:max-content;
    border-radius:50px;
    margin-top:65px;
    height:60px;
    
    padding-left:15px;
    padding-right:25px;
    
    border:2px solid #F2F2F2;
    background-color:#fff;

    display:flex;
    align-items:center;
    justify-content:center;
}
.g-review-footer {
    border:2px solid #292929;
    background-color:#292929;
}
.g-review:hover,
.g-review-footer:hover {
    text-decoration:none;
}
.g-logo {
    width:29px;
    margin-right:20px;
}
.g-stars {
    margin:0;
    padding:0;
}
.g-stars img {
    margin-top:2px;
    margin-left:-3px;
    padding:0;
}
.g-review p,
.g-review-footer p {
    color:#393939;
    font-weight:500;
    font-size:14px !important;
    letter-spacing:-2%;
    margin:0 !important;
    margin-left:20px !important;
    margin-right:5px !important;
}
.g-review-footer p {
    color:#EBEBEB;
}

/* positioning adjustments */
.oma2-diensten-main .g-review {
    margin-top:35px;
}
.oma2-overons-main .g-review {
    margin-top:70px;
}
.oma2-cases-main .g-review {
    margin-top:70px;
}
.oma2-products-main .g-review {
    margin-top:40px;
    margin-bottom:5px;
}
.oma2-block-blog-intro .g-review {
    margin-top:40px;
    margin-bottom:15px;
}
@media (max-width: 1000px) {

    .oma2-diensten-main .g-review {
        margin-top:30px;
        margin-bottom:5px;
    }
    .oma2-overons-main .g-review {
        margin-top:50px;
    }
    .oma2-cases-main .g-review {
        margin-top:50px;
    }
    .oma2-products-main .g-review {
        margin-top:30px;
        margin-bottom:0x;
    }
    .oma2-block-blog-intro .g-review {
        margin-top:30px;
        margin-bottom:30px;
    }

}
@media (max-width: 650px) {

    .oma2-diensten-main .g-review {
        margin-top:10px;
        margin-bottom:10px;
    }
    .oma2-overons-main .g-review {
        margin-top:10px;
    }
    .oma2-cases-main .g-review {
        margin-top:35px;
    }
    .oma2-products-main .g-review {
        margin-top:10px;
    }
    .oma2-block-blog-intro .g-review {
        margin-top:30px;
        margin-bottom:30px;
    }

}

/* hover animation */
.g-stars img {
    transition:transform 0.3s cubic-bezier(.5, 1, 0.2, 2);
}
.g-review.wave .g-stars img {
    animation:wave 0.4s cubic-bezier(.5, 1, 0.2, 2) both;
}
@keyframes wave {
    0%   { transform:scale(1); }
    50%  { transform:scale(1.4); }
    100% { transform:scale(1); }
}
.g-review.wave .g-stars img:nth-child(1) { animation-delay:0s; }
.g-review.wave .g-stars img:nth-child(2) { animation-delay:0.1s; }
.g-review.wave .g-stars img:nth-child(3) { animation-delay:0.2s; }
.g-review.wave .g-stars img:nth-child(4) { animation-delay:0.3s; }
.g-review.wave .g-stars img:nth-child(5) { animation-delay:0.4s; }

@media (max-width: 650px) {

    .g-review {
        margin-top:35px;
        transform:scale(.65);
        transform-origin:top left;
    }  
    .g-review p {
        display:none;
    }

}