/* LIMAH Studios. Poppins selbst gehostet (DSGVO 2.4), SIL Open Font License. */
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;
  src:url('../fonts/poppins-latin-500.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;
  src:url('../fonts/poppins-latin-ext-500.woff2') format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;
  src:url('../fonts/poppins-latin-700.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Poppins';font-style:normal;font-weight:700;font-display:swap;
  src:url('../fonts/poppins-latin-ext-700.woff2') format('woff2');
  unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}

/* --- Basis (aus dem Design uebernommen) --- */
:root{--violett-900:#3B1F6E;--violett-700:#4C1D95;--violett-500:#7C3AED;--violett-400:#9A6BE8;--lavendel-300:#B49BD8;--lavendel-200:#C3A6EF;--lavendel-150:#C9B3EF;--dunkel-pflaume:#171030;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--dunkel-pflaume);color:var(--lavendel-200);font-family:'Poppins','Trebuchet MS','Segoe UI',sans-serif;font-weight:500;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:var(--lavendel-200);text-decoration-thickness:1.5px;text-underline-offset:3px;}
a:hover{color:#FFFFFF;}
button,input,textarea,select{font:inherit;}
::selection{background:var(--violett-500);color:#FFFFFF;}
::placeholder{color:var(--lavendel-300);opacity:1;}
:focus{outline:none;}
:focus-visible{outline:2px solid var(--violett-400);outline-offset:2px;border-radius:4px;}
.lm-skip{position:fixed;left:-999px;top:14px;z-index:2000;background:var(--violett-500);color:#FFFFFF;padding:12px 20px;border-radius:12px;text-decoration:none;font-weight:500;}
.lm-skip:focus{left:14px;}
body.lm-cursor-on,body.lm-cursor-on a,body.lm-cursor-on button,body.lm-cursor-on input,body.lm-cursor-on textarea,body.lm-cursor-on label{cursor:none;}
@keyframes lm-pre-out{to{opacity:0;visibility:hidden;}}
@keyframes lm-grain{0%{transform:translate(0,0);}25%{transform:translate(-1.6%,1.2%);}50%{transform:translate(1.1%,-1.6%);}75%{transform:translate(-1.2%,-1.1%);}100%{transform:translate(1.6%,1.4%);}}
@keyframes lm-cue{0%,100%{transform:translateY(0);opacity:1;}50%{transform:translateY(11px);opacity:.55;}}
@media(max-width:1023px){
.lm-stack{grid-template-columns:1fr!important;}
.lm-baus-outer{height:auto!important;}
.lm-baus-pin{position:static!important;height:auto!important;overflow:visible!important;}
.lm-baus-track{transform:none!important;flex-direction:column!important;width:auto!important;padding-right:64px!important;}
.lm-baus-card{width:100%!important;}
.lm-g5{grid-template-columns:repeat(2,1fr)!important;}
.lm-pv-stage{perspective:none!important;flex-wrap:wrap!important;min-height:0!important;}
.lm-pv-card{transform:none!important;}
}
body.lm-rm .lm-baus-outer{height:auto!important;}
body.lm-rm .lm-baus-pin{position:static!important;height:auto!important;overflow:visible!important;}
body.lm-rm .lm-baus-track{transform:none!important;flex-direction:column!important;width:auto!important;padding-right:64px!important;}
body.lm-rm .lm-baus-card{width:100%!important;}
body.lm-rm *{animation:none!important;}
@media(max-width:900px){.lm-g3{grid-template-columns:1fr!important;}}
@media(max-width:767px){
.lm-wrap{padding-left:20px!important;padding-right:20px!important;}
.lm-sec{padding-top:92px!important;padding-bottom:92px!important;}
.lm-baus-track{padding-left:20px!important;padding-right:20px!important;}
}
@media(max-width:599px){.lm-g5{grid-template-columns:1fr!important;}}
@media(max-width:479px){.lm-hbtn{padding:11px 16px!important;font-size:.875rem!important;}}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto;}
#lm-preloader{display:none!important;}
*{animation:none!important;}
}

/* --- Bedingte Bloecke. display:contents laesst die Kinder im Flex/Grid des Elternteils liegen. --- */
lm-if{display:contents;}
lm-if[hidden]{display:none;}

/* --- Hover-Zustaende (im Design als style-hover notiert).
     Nur fuer Geraete, die wirklich schweben koennen. Auf Touchgeraeten
     wuerde der erste Tipp sonst als Hover verbraucht und ein zweiter
     Tipp waere noetig, um den Button auszuloesen. --- */
@media (hover: hover) and (pointer: fine) {
	.lm-hv-1:hover{box-shadow:0 8px 28px rgba(124,58,237,.5);}
	.lm-hv-2:hover{box-shadow:0 12px 38px rgba(124,58,237,.5);}
	.lm-hv-3:hover{box-shadow:0 10px 32px rgba(124,58,237,.5);}
	.lm-hv-4:hover{transform:translateY(-14px) rotateX(5deg) rotateY(-4deg);box-shadow:0 36px 76px rgba(23,16,48,.6);}
	.lm-hv-5:hover{transform:translateY(-14px) rotateX(5deg) rotateY(-4deg);box-shadow:0 36px 76px rgba(23,16,48,.6);}
	.lm-hv-6:hover{transform:translateY(-14px) rotateX(5deg) rotateY(-4deg);box-shadow:0 36px 76px rgba(23,16,48,.6);}
	.lm-hv-7:hover{transform:translateY(-14px) rotateX(5deg) rotateY(-4deg);box-shadow:0 36px 76px rgba(23,16,48,.6);}
	.lm-hv-8:hover{transform:translateY(-14px) rotateX(5deg) rotateY(-4deg);box-shadow:0 36px 76px rgba(23,16,48,.6);}
	.lm-hv-9:hover{transform:translateY(-14px) rotateX(5deg) rotateY(-4deg);box-shadow:0 36px 76px rgba(23,16,48,.6);}
	.lm-hv-10:hover{border-color:#9A6BE8;}
	.lm-hv-11:hover{border-color:#9A6BE8;}
	.lm-hv-12:hover{border-color:#9A6BE8;}
	.lm-hv-13:hover{border-color:#9A6BE8;}
	.lm-hv-14:hover{border-color:#9A6BE8;}
	.lm-hv-15:hover{border-color:#9A6BE8;}
	.lm-hv-16:hover{border-color:#9A6BE8;}
	.lm-hv-17:hover{border-color:#9A6BE8;color:#FFFFFF;}
	.lm-hv-18:hover{box-shadow:0 10px 32px rgba(124,58,237,.5);}
	.lm-hv-19:hover{box-shadow:0 10px 32px rgba(124,58,237,.5);}
}
/* .lm-hv-2: transform entfaellt, der Magnet-Effekt (data-mag) setzt transform inline. */

/* --- Inhaltsseiten (page.php, index.php). Nutzt Typografie und Farben der Startseite. --- */
.lm-prose h2{margin:44px 0 16px;font-weight:700;font-size:1.75rem;line-height:1.2;letter-spacing:-.01em;color:#FFFFFF;}
.lm-prose h3{margin:32px 0 12px;font-weight:700;font-size:1.25rem;line-height:1.25;color:#FFFFFF;}
.lm-prose p{margin:0 0 18px;}
.lm-prose ul,.lm-prose ol{margin:0 0 18px;padding-left:22px;}
.lm-prose li{margin:0 0 8px;}
.lm-prose a{color:#C9B3EF;}
.lm-prose strong{color:#FFFFFF;font-weight:700;}
.lm-prose table{border-collapse:collapse;width:100%;margin:0 0 18px;}
.lm-prose th,.lm-prose td{border:1px solid #3B1F6E;padding:10px 12px;text-align:left;}

/* --- Nur fuer Screenreader. Kein sichtbarer Text, kein Einfluss auf das Layout. --- */
.lm-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;}
