/* webe CMP: Coming-Soon-Seite */

*,*::before,*::after{box-sizing:border-box}
html,body{height:100%}
body.webe-cmp{
	margin:0;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;
	color:var(--webe-cmp-text);background:var(--webe-cmp-bg);
	font-family:var(--webe-cmp-text-font);font-weight:var(--webe-cmp-text-weight);
	font-size:clamp(16px,1.05vw + 12px,19px);line-height:1.6;
	-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility
}

/* Hintergrund */
.webe-cmp-bg{position:fixed;inset:0;z-index:0;overflow:hidden;background:var(--webe-cmp-bg)}
.webe-cmp-bg-img,.webe-cmp-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--webe-cmp-position)}
.webe-cmp-bg-img,.webe-cmp-video,.webe-cmp-embed{filter:blur(var(--webe-cmp-blur));transform:scale(1.06)}
.webe-cmp--bg-color .webe-cmp-bg-img{display:none}

/* YouTube und Vimeo füllen die Fläche, Titel und Logo des Anbieters liegen außerhalb */
.webe-cmp-embed{position:absolute;inset:0;pointer-events:none}
.webe-cmp-embed .webe-cc-embed{position:absolute;inset:0;max-width:none!important;margin:0;border-radius:0;background:transparent}
.webe-cmp-embed .webe-cc-embed::before{display:none}
.webe-cmp-embed .webe-cc-embed__overlay{display:none}
.webe-cmp-embed .webe-cc-embed iframe,.webe-cmp-embed iframe{position:absolute;inset:auto;top:50%;left:50%;width:max(120vw,213.34vh);height:max(120vh,67.5vw);
	transform:translate(-50%,-50%);border:0}
@media (prefers-reduced-motion:reduce){.webe-cmp-embed,.webe-cmp-video{display:none}}

.webe-cmp-overlay{position:fixed;inset:0;z-index:1;background:var(--webe-cmp-overlay);opacity:var(--webe-cmp-overlay-alpha);pointer-events:none}

/* Inhalt */
.webe-cmp-main{position:relative;z-index:2;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
	width:100%;max-width:880px;margin:0 auto;padding:clamp(48px,8vh,96px) 24px;text-align:center}
.webe-cmp-logo{margin:0 0 clamp(24px,5vh,48px)}
.webe-cmp-logo img{display:block;width:var(--webe-cmp-logo);max-width:70vw;height:auto;margin:0 auto}
.webe-cmp-logo--text{font-family:var(--webe-cmp-heading-font);font-weight:var(--webe-cmp-heading-weight);font-size:1.25em;letter-spacing:.02em}
.webe-cmp-title{margin:0;font-family:var(--webe-cmp-heading-font);font-weight:var(--webe-cmp-heading-weight);
	font-size:clamp(32px,4.2vw + 12px,64px);line-height:1.15;letter-spacing:-.01em;text-wrap:balance;color:inherit}
.webe-cmp-text{max-width:640px;margin:clamp(16px,3vh,28px) auto 0}
.webe-cmp-text p{margin:0 0 .8em}
.webe-cmp-text p:last-child{margin-bottom:0}
.webe-cmp-main a,.webe-cmp-foot a{color:inherit;text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}
.webe-cmp-main a:hover,.webe-cmp-foot a:hover{text-decoration-thickness:2px}
.webe-cmp-main a:focus-visible,.webe-cmp-foot a:focus-visible{outline:2px solid currentColor;outline-offset:3px;border-radius:2px}

.webe-cmp-contact{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 32px;margin:clamp(24px,4vh,40px) 0 0;padding:0;list-style:none}

/* Eigenes HTML */
.webe-cmp-custom{margin:clamp(24px,4vh,40px) 0 0}

/* Ausrichtung */
.webe-cmp--x-left .webe-cmp-main{align-items:flex-start;text-align:left}
.webe-cmp--x-right .webe-cmp-main{align-items:flex-end;text-align:right}
.webe-cmp--x-left .webe-cmp-foot,.webe-cmp--x-left .webe-cmp-contact{justify-content:flex-start}
.webe-cmp--x-right .webe-cmp-foot,.webe-cmp--x-right .webe-cmp-contact{justify-content:flex-end}
.webe-cmp--x-left .webe-cmp-foot,.webe-cmp--x-right .webe-cmp-foot{padding-left:clamp(24px,6vw,96px);padding-right:clamp(24px,6vw,96px)}
.webe-cmp--x-left .webe-cmp-text{margin-left:0}
.webe-cmp--x-right .webe-cmp-text{margin-right:0}
.webe-cmp--x-left .webe-cmp-logo img{margin-left:0}
.webe-cmp--x-right .webe-cmp-logo img{margin-right:0}
.webe-cmp--x-left .webe-cmp-main,.webe-cmp--x-right .webe-cmp-main{max-width:1400px;padding-left:clamp(24px,6vw,96px);padding-right:clamp(24px,6vw,96px)}
.webe-cmp--y-top .webe-cmp-main{justify-content:flex-start}
.webe-cmp--y-bottom .webe-cmp-main{justify-content:flex-end}

/* Fußzeile */
.webe-cmp-foot{position:relative;z-index:2;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 32px;padding:20px 24px 28px;font-size:.85em}
