/*
Theme Name: reichweitenagentur Child
Theme URI: http://underscores.me/
Template: rwag
Author: Patrick Juchem
Author URI: http://www.der-juchem.de
Description: Theme für reichweitenagentur.de
Tags: custom-background,custom-logo,custom-menu,featured-images,threaded-comments,translation-ready
Version: 1.0.0.1710358523
Updated: 2024-03-13 20:35:23

*/

@import url("https://use.typekit.net/hpd1lax.css");

* {
	scroll-behavior: smooth;
}

/* Editor */ 

html :where(.wp-block) {
	margin: 0 auto;
	max-width:1920px;
}

:where(.wp-block-columns.is-layout-flex) {
	gap: 5vw;
} 


::placeholder  {
	text-transform:uppercase;
	font-size:.7em;
	color:rba(0,0,0,0.4);
	letter-spacing:2px;
	padding-left:5px;
}





.entry-content {
	background-image:url('img/play-icon-bg.webp');
	background-repeat:no-repeat;
	background-position: left -130px top 0;
}



body {
	background-image:url('img/page-bg-half.webp');
	background-repeat:no-repeat;
	font-size: clamp(14px, 16px, 1.5vw);
	overflow-x:hidden;
	font-family: futura-pt, sans-serif;
}

@media (min-width: 1440px) {
	body {
	font-size: clamp(14px, 18px, 1.5vw);
	}
}

.bg-frame-outline {
	position:relative;
   
}

.bg-frame-outline:after {
  	border:1px solid #c2c2c2;
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    left: -30px;
    z-index: 1;
    bottom: -30px;
}

.kundenstimmen-img {
	max-width:400px;
	margin:0 auto;
}
.wp-block-video video {
position:relative;
z-index:9999;
}

@media (max-width: 1280px) { 
	.bg-frame-outline:after 
	{display:none;}
}


.bg-frame-outline img {
	 z-index: 2;
	position:relative;
	width:100%;
}
.wp-block-image img {

    z-index: 2;
    position: relative;
}




.bg-frame-outline-right  {
	position:relative;
   
}

.bg-frame-outline-right:after {
  	border:1px solid #c2c2c2;
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    right: -30px;
    z-index: 1;
    bottom: -30px;
}

@media (max-width: 1280px) {
	.bg-frame-outline-right:after 
	{display:none;}
}


.bg-frame-outline-right img {
	 z-index: 2;
	position:relative;
	width:100%;
}



.polaroid img {
	max-width: unset;
    width: 100%;
    border: 10px solid #f8f8f840;
   -webkit-box-shadow: 0px 10px 13px -7px #00000010, 5px 5px 15px 5px rgba(0,0,0,0); 
box-shadow: 0px 10px 13px -7px #00000010, 5px 5px 15px 5px rgba(0,0,0,0);
}


.polaroid video {
	max-width: unset;
    width: 100%;
    border: 10px solid #f8f8f850;
   -webkit-box-shadow: 0px 10px 13px -7px #00000020, 5px 5px 15px 5px rgba(0,0,0,0); 
box-shadow: 0px 10px 13px -7px #00000020, 5px 5px 15px 5px rgba(0,0,0,0);
}


body.privacy-policy {
	background-attachment:fixed;
}

em {
	font-family: ltc-bodoni-175, serif;
}


@media (min-width: 1921px) {
	body {
		background-size:cover;
	} }



@keyframes bounce {
	0%, 20%, 50%, 80%, 100% {
		transform: translateY(0);
	}
	40% {
		transform: translateY(-30px);
	}
	60% {
		transform: translateY(-15px);
	}
}

.bouncing-arrow {
	animation: bounce 2s infinite;
	text-align: left;
	display: block;
	font-size: 24px; /* Größe des Pfeils anpassen */

}



.op-8 {
	opacity:0.8;
}


@media (min-width: 1441px) {
	
.huge-type {
	font-size: clamp(52px, 79px, 8vw);
	line-height:1;
	font-weight:bold;
}

.big-type {
	font-size: clamp(34px, 52px, 4vw);
	line-height:1;
	font-weight:bold;
}



.mid-type {
	font-size: clamp(26px, 34px, 2vw);
	font-weight:bold;	
	line-height:1;
}


.small-type {
	font-size: clamp(14px, 26px, 1vw);

	line-height:1;
}	
	
.big-text {
	font-size:1.9rem;
	line-height:1.2;
}

.mid-text {
	font-size:1.6rem;

}

.small-text {
	font-size:1.3rem;
	
}
}

@media (max-width: 1440px) {
	
	.huge-type {
	font-size: clamp(52px, 79px, 8vw);
	line-height:1;
	font-weight:bold;
}

.big-type {
	font-size: clamp(28px, 52px, 4vw);
	line-height:1;
	font-weight:bold;
}



.mid-type {
	font-size: clamp(20px, 34px, 2vw);
	font-weight:bold;	
	line-height:1;
}


.small-type {
	font-size: clamp(14px, 26px, 1vw);

	line-height:1;
}
	
.big-text {
	font-size: clamp(14px, 18px, 1.5vw);
}

.mid-text {
	font-size: clamp(14px, 18px, 1.5vw);
}

.small-text {
	font-size: clamp(14px, 18px, 1.5vw);
}
}



/* Farben */ 

.text-white {
	color:#fff;
}
.text-dark {
	color:#404040;
}
.bg-white {
	background-color:#fff;
}

.phone * {
	color:#404040!important;
	text-decoration:none;
}


/* Overlap Image */

.overlap-img-top {
	margin-top:-12vw;
}

/* Abstand Sektionen unten */ 

.m-0 {
	margin:0!important;
}

.mt-0 {
	margin-top:0!important;
}

.mb-0 {
	margin-bottom:0!important;
}

.mb-20 {
	margin-bottom:20px!important;
}

.mb-50 {
	margin-bottom:50px!important;
}

.mb-100 {
	margin-bottom:100px!important;
}
.mt-5p {
	margin-top:5%;
}


.pt-0 {
	padding-top:0!important;
}


.pt-100 {
	padding-top:100px!important;
}

.pb-0 {
	padding-bottom:0px!important;
}

/* Gaps */ 

.gap-10 {
	gap:10px;
	column-gap:10px;
	row-gap:10px;
}

/* Containerbreite  */ 

@media (min-width: 1200px) {
	.container {
		max-width: 1420px;
	} }


/* Header */ 


header#masthead {
	background: #fff;
	max-width: 1920px;
	margin-top: 10px;
	padding: 20px 10%; 

	display: flex;
	align-items: center;
	margin: 0 auto;
	position: sticky;
	top: 0;
	width: 100%;
	z-index: 1000;
	transition: all 0.6s ease-in-out;
}


#masthead {
	transform: translateY(0px);
	
}

#masthead.slide-up {
	transform: translateY(-100%);
}


/* Angebot anfordern */ 

#angebot-anfordern {
    transform: translateY(500px); /* Verschiebt das Element komplett nach unten aus dem Sichtbereich */
    transition: all 0.5s ease-in-out; /* Glatte Animation */
}

#angebot-anfordern.slide-down {
    transform: translateY(0px); /* Verschiebt das Element komplett nach unten aus dem Sichtbereich */
    transition: all 0.5s ease-in-out; /* Glatte Animation */
}



/* Navigation */ 


ul#primary-menu {
	width: 100%;
	align-items: center;
	justify-content: flex-end;
	margin-left: auto;
	margin-right: 0;
	gap: 30px;
	text-transform: uppercase;
	letter-spacing: 2px;
}

nav#site-navigation {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	column-gap: 30px;
	width: 100%;

}


/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 80em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
	
	


}
@media screen and (max-width: 79em) {
	nav#site-navigation {
		gap:0;
	}
	
}

@media screen and (max-width: 1280px) {
	header#masthead {
	transform: translateY(0px);
	
}


		
	
}


.main-navigation.toggled .menu-menue-container {
	position: absolute;
	height: 100vh;
	width: 100vw;
	background: #fff;
	left: 0;
	top: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	z-index: -1;
	font-size:2rem;
}

button.menu-toggle {
	background: none;
	border: none;
	padding: 0;
}
header a {
	color: #7a1165;
}




/* Body */ 
.page,
.post{
	margin:0;
	width: 100%;
	margin: 0 auto;
}

main#primary {
	margin: 0 auto;
	max-width: 1920px;

}
/*Footer*/ 



footer#colophon {

	margin: 0 auto;

	background:#fff;
	text-align:left;
	position:relative;
	z-index:2;
	padding:5% 0;
	    background-image: url(https://reichweitenagentur.de/wp-content/uploads/2024/04/topline.webp);
   
    background-repeat: no-repeat;
    background-position: bottom;
   

}

footer#colophon ul {
	list-style-type:none;
	padding:0;
	margin:0;
}


footer#colophon ul li {
	color: #000;
    padding-left: 20px;
    background-image: url(img/play-icon-text.webp);
    background-repeat: no-repeat;
    background-position: left top 6px;
    background-size: 12px;
}
footer#colophon  a,
footer#colophon ul li a {
	color:#000;
	text-decoration:none;
}

footer#colophon .social-media-footer ul li {
	padding:0;
	background:none;
}
	.footer-wrapper {
    width: 80%;
    display: grid;
    margin: 0 auto;
    justify-content: space-between;
    flex-direction: column;
    gap: 30px;
    grid-template-columns:1fr 1fr 1fr 1fr 1fr  ;		
}


.footer-logo {order:1; margin-top:-20px;}
.footer-menu {order:2;}
.berlin {order:4;}
.muenchen {order:5;}
.small-links {order:3;}
.proven-expert {order:6;}

.site-info {
    max-width: 370px;
}


@media only screen and (max-width: 1280px) {
	.footer-wrapper {
    width: 80%;
    display: grid;
    margin: 0 auto;
    justify-content: space-between;
    flex-direction: column;
    gap: 30px;
    grid-template-columns: 1fr 1fr 1fr;		
}

	footer#colophon {
			padding:10vw 0 13vw 0;
	}
	
}


@media only screen and (max-width: 1024px) {
	.footer-wrapper {
    width: 80%;
    display: grid;
    margin: 0 auto;
    justify-content: space-between;
    flex-direction: column;
    gap: 30px;
    grid-template-columns: 1fr 1fr;		
}
	.footer-logo {order:1;}
.footer-menu {order:5;}
.berlin {order:3;}
.muenchen {order:4;}
.small-links {order:6;}
.proven-expert {order:2;}

	footer#colophon {

	margin: 0 auto;

	padding:50px 0;
	
}}

@media only screen and (max-width: 479px) {
	.footer-wrapper {
   
    grid-template-columns: 1fr;		
}}



.social-media-footer {
    align-items: flex-start;
    display: flex;
}

.footer-navi {
	width: 100%;

}


span.edit-link {
	margin: 20px auto 0 auto;
	text-align: center;
	display: block;
	font-size: 0.7rem;
}




/* Breite und Abstand */ 


.content {
	margin: 0 auto;
	max-width: 1920px;
	padding:5% 10%; 

}

.content-top-less {
	margin: 0 auto;
	max-width: 1920px;
	padding:5% 10%; 

}

@media only screen and (max-width: 768px) {
	.content {
		margin: 0 auto;

		padding:10%; 

	}
}


.section-title {
	color:#FD4B49;
	padding-left:20px;
	background-image:url('img/play-icon-text.webp');
	background-repeat:no-repeat;
	background-position:left top 6px;
	background-size:12px;

}



/* Module */ 



.hero-section-with-form  {

	display: flex;
	width: 100%;
	align-items: center;
	margin: 0 auto;

}

input.wpcf7-form-control.wpcf7-submit.has-spinner {
	background: rgb(253,75,73);
	background: linear-gradient(4deg, rgba(253,75,73,1) 0%, rgba(253,116,73,1) 100%);

	color: #fff;
	display: block;
	width: 100%;
	padding:15px 0px;
	border: none;
	border-radius: 0px;
	background-size: cover;
	border-radius:2px;
	letter-spacing: 2px;
	text-transform: uppercase;
	font-weight:400;
	margin-bottom:0;
	font-size:0.9rem;
	text-shadow:0px 1px 2px #0008;
}

span.wpcf7-spinner {
	position: absolute;
}

.hero-section-with-form .wp-block-group__inner-container {
	margin-left: unset !important;
	margin-right: unset !important;
	width: 100%;
}


.contact-section-with-form  {

	display: flex;
	width: 100%;
	align-items: center;
	margin: 0 auto;
	background-image:url('img/contact-bg.webp');
	background-repeat:no-repeat;
	background-position:bottom;

}

.contact-section-with-form .wp-block-group__inner-container {
	margin-left: unset !important;
	margin-right: unset !important;
	width: 100%;
}


.contact-form {
	padding: 25px 15px;
	border-radius: 0;
	backdrop-filter: blur(10px);
	background-color: rgba(255, 255, 255, 0.2);
	color: #fff;
	max-width: 340px;
	margin: 0 auto !important;

}

.contact-form a {
	color:#fff;
}


.contact-form-headline {
	margin:0px 0px 40px 0px;

}

.contact-form form p {
	margin-top:0;
	margin-bottom:5px;
}
.contact-form input.wpcf7-form-control.wpcf7-text, .contact-form input.wpcf7-form-control.wpcf7-email {
	border: none;
	width: 100%;
	border-radius: 0;
	margin-bottom: 15px;
	line-height: 2;
	outline:0;
	font-size:0.8rem;
}
.contact-form label {
	font-size: 0.7rem;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.contact-form .wpcf7-acceptance .wpcf7-list-item {
	margin: 20px 0 20px 0;
	line-height:1;
}

.contact-form .wpcf7-acceptance label {
	font-size: 0.85rem;
	text-transform:none;
	letter-spacing: 0px;
}

.contact-form form input.wpcf7-form-control .wpcf7-email,
.contact-form form input.wpcf7-form-control .wpcf7-text{
	border: none;
	border-bottom: 3px solid #8273DA;
	width: 100%;
	border-radius: 0;
}

span.wpcf7-not-valid-tip {
	position: absolute;
	left: unset;
	right: 0;
	text-align: right;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #FE506E;
	margin-top: 7px;
	color:#fff;
	padding:0 5px;
	z-index: 999;
	margin: 0;
	top: 0;	
}

.wpcf7 form .wpcf7-response-output {
	margin: 0;
	padding: 0.2em 1em;
	border: 2px solid #00a0d2;
	margin-top: 30px;
}

/* Leistungen Carousel */ 

.carousel-leistungen {
	background: rgb(248,248,248);
	background: linear-gradient(rgba(255,255,255,0) 40%, rgba(255,255,255,1) 40%, rgba(240,240,240,1) 100%);
	padding:5% 10%; 

}

.carousel-leistungen .slick-track {
	gap: 20px;
	display: flex;
}

.carousel-leistungen figure.wp-block-video.aligncenter {

	text-align: center;
	margin: 0 auto;
}


.carousel-leistungen .slick-slide .wp-block-cb-carousel .slick-slide {
	padding:0;

}

.carousel-leistungen .slick-slide .wp-block-cb-carousel .slick-track {
	gap:0;
}

.carousel-leistungen.wp-block-cb-carousel .wp-block-image>img {
	max-width: 450px;
	width: 100%;
	max-height:450px;
}

.social-ads-grid {

	height:auto;
}

/* Expertise */ 

.expertise {
	background-image:url('img/page-bg-half.webp');
	background-repeat:no-repeat;
}

.carousel-expertise {
	background: rgb(248,248,248);
	background: linear-gradient(rgba(255,255,255,0) 40%, rgba(255,255,255,1) 40%, rgba(240,240,240,1) 100%);
	padding:5% 10%;  

}

.carousel-expertise .slick-track {
	gap: 20px;
	display: flex;
}


.carousel-expertise figure.wp-block-video {
	text-align: center;
	margin: 0 auto;
}


.carousel-expertise .slick-slide .wp-block-cb-carousel .slick-slide {
	padding:0;

}


.carousel-expertise.wp-block-cb-carousel .wp-block-image>img {
	max-width: unset;
	width: 100%;
}



/* Social Media Bar */ 

.social-media-bar {
	background-image:url('img/social-media-bar-bg.webp');
	background-repeat:no-repeat;
	background-size:cover;
	background-position:bottom center;


}

.social-media-bar-title {
	color:#fff;
	font-size: clamp(16px, 22px, 1.75vw);
}


.color-tile {
	background-image:url('img/page-bg-half.webp');
	background-repeat:no-repeat;
	text-align:center;
	padding:2.5% 5%;
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
}


@media only screen and (max-width: 768px) {
	.color-tile {padding:25px;}
}
	


.tile-1 { background-position:bottom right;}
.tile-2 { background-position:bottom left;}
.tile-3 { background-position:bottom center;}

.color-tile p {
	margin: 0;
}


.hide-mobile {
	display:none;
}

.hide-desktop {
	display:block;
}

.privacy-policy .entry-content a {
	color:#fff;
}


#angebot-anfordern {
	position: fixed;
	bottom: 20px;
	right: 40px;
	width: 140px;
	z-index:3;
}
#angebot-anfordern span {
	position: absolute;
	top: -10px;
	left: 0;
	justify-content: flex-start;
	display: flex;
	align-items: center;
	bottom: 0;
	right: 0;
	text-align: left;
	color: #fff;
	padding-left: 14px;
	font-size: 1.2rem;
	line-height: 1;
	width:100px;
}

/* Anpassungen 02.10 */

.raster .wp-block-gallery {
    margin: 0 !important;
    gap: 0 !important;
}

.content.raster {
    padding: 0!important;
    max-width: 1920px;
}

.gap-0 {
	gap:0px;
	column-gap:0px;
	row-gap:0px;
}

.expert-title strong {
	font-size:1.2rem;
}
.expert-title {
	font-size:1.0rem;
}



.expert-mail a {
	color:#FD4B49;
	font-size:1rem;
	line-height:1;
}

/* Kundenstimmen */ 

.kundenstimmen em {
	line-height:1.4;
	font-size:80%;
}


/* erfolggeschichten */ 

.erfolgsgeschichte .post-title {
    margin-top: 20px;
    margin-bottom: 0px;
}

.erfolgsgeschichte .post-category {
	margin-bottom:20px;
}


/* Blog Grid */ 

.post-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

.post-item {
    text-align: center;
}

.post-thumbnail {
    width: 100%;
    padding-top: 100%; /* Macht den Container quadratisch */
    position: relative;
    overflow: hidden;
}

.post-thumbnail img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Das Bild wird skaliert, um den Container zu füllen und das Seitenverhältnis zu bewahren */
}
.post-title {
    margin: 10px 0;
}

@media (max-width: 769px) {
    .post-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}



/* Media Queries */ 

@media only screen and (max-width: 768px) {
	:where(.wp-block-columns.is-layout-flex) {
		gap: 2em;
	}
	.carousel-leistungen .slick-track ,
	.carousel-expertise .slick-track {
		gap:0px!important;
	}	

	.overlap-img-top {
		margin:0px!important;
	}



	.hide-mobile {
		display:block;
	}

	.hide-desktop {
		display:none;
	}
div#angebot-anfordern {
    right: 0;
    bottom: -20px;
   
}
	#angebot-anfordern.slide-down {
    transform: translateY(0px) scale(0.7); /* Verschiebt das Element komplett nach unten aus dem Sichtbereich */
    transition: all 0.5s ease-in-out; /* Glatte Animation */
}


}
