/* HAK Lehrerteam – passt zum Theme „HAK/HAS Bad Ischl“ 3.0 (Entwurf 3), funktioniert aber auch allein. */
.lk-team {
	--lk-ink: var(--wp--preset--color--ink, #1F1B19);
	--lk-muted: var(--wp--preset--color--muted, #5C5550);
	--lk-orange: var(--wp--preset--color--orange, #E4572E);
	--lk-rost: var(--wp--preset--color--rost, #C2451F);
	--lk-yellow: var(--wp--preset--color--yellow, #FFD93B);
	--lk-cream: var(--wp--preset--color--cream, #F5F0EA);
	--lk-salmon: var(--wp--preset--color--salmon, #FDEEE6);
	--lk-line: #E6DDD4;
	--lk-head: var(--wp--preset--font-family--heading, Outfit, Arial, sans-serif);
	--lk-body: var(--wp--preset--font-family--body, Inter, Arial, sans-serif);
	--lk-r: 18px;
	font-family: var(--lk-body);
	color: var(--lk-ink);
	line-height: 1.45;
}
/* Im Theme: so breit wie die Seite */
.is-layout-constrained > .lk-team { max-width: var(--wp--style--global--wide-size, 1440px) !important; margin-left: max(0px, calc((100% - var(--wp--style--global--wide-size, 1440px)) / 2)) !important; margin-right: auto !important; }
.lk-team *, .lk-team *::before, .lk-team *::after { box-sizing: border-box; }
.lk-team .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.lk-team:not(.lk-team--kompakt) .lk-team__untertitel { font-family: var(--lk-head); font-weight: 700; }
.lk-team .lk-team__untertitel {
	max-width: none; margin: 0 0 12px; font-size: clamp(30px, 3.2vw, 44px);
	line-height: 1.08; letter-spacing: -0.02em; color: var(--lk-ink);
}
.lk-team .lk-team__hinweis { max-width: 760px; margin: 0 0 28px; font-size: 18px; color: var(--lk-muted); }

/* Suche und Filter */
.lk-team__filter { display: flex; flex-direction: column; gap: 18px; margin-bottom: 32px; }
.lk-team__suche { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.lk-team__suche label { position: relative; display: block; width: min(400px, 100%); margin: 0; }
.lk-team__suche svg { position: absolute; left: 18px; top: 15px; width: 20px; height: 20px; fill: none; stroke: var(--lk-muted); stroke-width: 2; stroke-linecap: round; pointer-events: none; }
.lk-team__input { width: 100%; height: 50px; margin: 0; padding: 0 18px 0 48px; border: 2px solid var(--lk-line); border-radius: 999px; background: #fff; font: inherit; font-size: 17px; color: var(--lk-ink); outline: none; transition: border-color .15s; }
.lk-team__input:focus { border-color: var(--lk-ink); }
.lk-team__count { margin: 0; font-size: 17px; color: var(--lk-muted); }
.lk-team__count b { color: var(--lk-ink); }
.lk-team__gruppen { display: flex; flex-wrap: wrap; gap: 8px; }
.lk-chip {
	cursor: pointer; margin: 0; padding: 10px 18px; border: 0; border-radius: 999px; background: var(--lk-cream); color: var(--lk-ink);
	font-family: var(--lk-head); font-weight: 500; font-size: 17px; line-height: 1.2; text-transform: none; letter-spacing: 0;
	transition: background-color .15s, color .15s;
}
.lk-chip:hover { background: #FFF6D8; }
.lk-chip.is-active { background: var(--lk-ink); color: #fff; }
.lk-chip:focus-visible, .lk-team__mehr:focus-visible, .lk-card__mail:focus-visible { outline: 3px solid var(--lk-orange); outline-offset: 2px; }

.lk-team__leer { padding: 48px; border-radius: var(--lk-r); background: var(--lk-cream); text-align: center; font-size: 18px; color: var(--lk-muted); }

/* Karten */
.lk-team__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 24px; }
.lk-card { display: flex; flex-direction: column; background: var(--lk-cream); border-radius: var(--lk-r); overflow: hidden; }
.lk-card[hidden] { display: none; }
.lk-card__foto { position: relative; height: 290px; background: var(--lk-salmon); overflow: hidden; }
.lk-team .lk-card__img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-width: none; object-fit: cover; object-position: center 20%; border-radius: 0 !important; }
.lk-card__silhouette { position: absolute; left: 50%; bottom: 0; width: 210px; height: 210px; transform: translateX(-50%); fill: #F6D6C7; }
/* Etikett mit dem Fach auf dem Foto: ausgeblendet (passt nicht immer) */
.lk-card__tag { display: none !important; }

.lk-card__kopf { display: flex; flex-direction: column; padding: 18px 22px 10px; }
.lk-card__pre, .lk-card__post { font-size: 17px; line-height: 1.35; color: var(--lk-muted); }
.lk-team:not(.lk-team--kompakt) .lk-card .lk-card__name { font-family: var(--lk-head); }
.lk-card .lk-card__name { margin: 0; max-width: none; font-weight: 700; font-size: 24px; line-height: 1.12; text-transform: none; letter-spacing: -0.01em; color: var(--lk-ink); }
.lk-card__faecher { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0 22px 12px; list-style: none; }
.lk-card__faecher li { margin: 0; padding: 3px 12px; border-radius: 14px; background: #fff; font-size: 17px; font-weight: 500; line-height: 1.35; }
.lk-card__funktionen {
	margin: 0 22px 14px !important; padding: 0; font-size: 17px; line-height: 1.45; color: var(--lk-muted);
	display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;
}
.lk-card__fuss { display: flex; flex-direction: column; gap: 12px; margin-top: auto; padding: 14px 22px 22px; border-top: 1px solid var(--lk-line); }
.lk-card__sprech { display: flex; gap: 8px; align-items: flex-start; margin: 0; font-size: 17px; line-height: 1.4; }
.lk-card__sprech svg { flex-shrink: 0; width: 18px; height: 18px; margin-top: 2px; fill: none; stroke: var(--lk-rost); stroke-width: 2; stroke-linecap: round; }
.lk-team .lk-card__mail {
	display: flex; align-items: center; justify-content: center; gap: 8px; height: 46px; border-radius: 999px; background: #fff; color: var(--lk-ink) !important; text-decoration: none !important;
	font-family: var(--lk-head); font-weight: 600; font-size: 17px; text-transform: none; letter-spacing: 0; white-space: nowrap; transition: background-color .15s;
}
.lk-team .lk-card__mail:hover { background: var(--lk-yellow); }
.lk-card__mail svg { width: 19px; height: 19px; fill: none; stroke: var(--lk-rost); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.lk-card__mail:hover svg { stroke: var(--lk-ink); }

.lk-team__mehr {
	display: block; width: 100%; height: 52px; margin-top: 20px; border: 2px solid var(--lk-ink); border-radius: 999px; background: #fff; cursor: pointer;
	font-family: var(--lk-head); font-weight: 600; font-size: 18px; text-transform: none; color: var(--lk-ink); transition: background-color .15s, color .15s;
}
.lk-team__mehr:hover { background: var(--lk-ink); color: #fff; }
.lk-team__mehr[hidden] { display: none; }


/* Handy: kompakte Karten */
@media (max-width: 600px) {
	.lk-team__filter { gap: 12px; margin-bottom: 16px; }
	.lk-team__suche { gap: 12px; }
	.lk-team__suche label { width: 100%; }
	.lk-team__gruppen { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; scrollbar-width: none; }
	.lk-team__gruppen::-webkit-scrollbar { display: none; }
	.lk-chip { flex-shrink: 0; }
	.lk-team__count { order: 3; }
	.lk-team__grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	.lk-card { display: grid; grid-template-columns: 84px minmax(0, 1fr) 48px; column-gap: 14px; row-gap: 10px; align-items: start; padding: 16px; }
	.lk-card__foto { grid-column: 1; grid-row: 1; width: 84px; height: 104px; border-radius: 12px; }
	.lk-card__silhouette { width: 80px; height: 80px; }
	.lk-card__funktionen { display: none; }
	.lk-card__kopf { grid-column: 2; grid-row: 1; padding: 0; }
	.lk-card .lk-card__name { font-size: 21px; }
	.lk-card__faecher { grid-column: 1 / -1; padding: 0; }
	.lk-card__fuss { display: contents; }
	.lk-card__sprech { grid-column: 1 / -1; }
	.lk-team .lk-card__mail { grid-column: 3; grid-row: 1; width: 48px; height: 48px; padding: 0; }
	.lk-card__mail span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.lk-card__mail svg { width: 20px; height: 20px; }
}

/* Theme-Regeln für Listen/Text im Inhalt nicht auf die Karten anwenden */
.lk-team ul.lk-card__faecher { padding: 0 22px 12px !important; max-width: none; margin-left: 0 !important; }
.lk-team p { max-width: none; }
@media (max-width: 600px) { .lk-team ul.lk-card__faecher { padding: 0 !important; } }

/* Schutz gegen Theme-Stile (z. B. Avada): keine Versalien, keine Silbentrennung, keine Aufzählungszeichen */
.lk-team, .lk-team * { hyphens: manual !important; -webkit-hyphens: manual !important; word-break: normal; overflow-wrap: break-word; }
.lk-team h2, .lk-team h3, .lk-team .lk-card__name, .lk-team .lk-chip, .lk-team .lk-card__mail, .lk-team .lk-team__mehr { text-transform: none !important; letter-spacing: normal; }
.lk-team .lk-card .lk-card__name { font-size: 23px !important; line-height: 1.15 !important; font-weight: 700 !important; letter-spacing: -0.01em !important; padding: 0 !important; }
.lk-team li { list-style: none !important; background-image: none; }
.lk-team li::before, .lk-team li::after { content: none !important; display: none !important; }
.lk-team .lk-card__faecher li { line-height: 1.35 !important; margin: 0 !important; padding: 3px 12px !important; }
.lk-team .lk-chip { line-height: 1.2 !important; height: auto !important; min-height: 0 !important; box-shadow: none !important; }
.lk-team .lk-team__input { box-shadow: none !important; }
.lk-team img { border-radius: 0 !important; max-width: none; }

/* ============================================================
   Kompakte Darstellung (automatisch in fremden Themes wie Avada):
   Schriftarten und -größen der Website, kleinere Bilder und Karten
   ============================================================ */
.lk-team--kompakt { --lk-r: 12px; font-family: inherit; font-size: inherit; line-height: inherit; color: inherit; }
.lk-team--kompakt .lk-team__untertitel { font-size: 1.5em; line-height: 1.2; letter-spacing: normal; color: inherit; margin-bottom: 8px; }
.lk-team--kompakt .lk-team__hinweis { font-size: 1em; margin-bottom: 20px; }
.lk-team--kompakt .lk-team__filter { gap: 12px; margin-bottom: 22px; }
.lk-team--kompakt .lk-team__suche { gap: 14px; }
.lk-team--kompakt .lk-team__suche label { width: min(320px, 100%); }
.lk-team--kompakt .lk-team__suche svg { left: 14px; top: 11px; width: 16px; height: 16px; }
.lk-team--kompakt .lk-team__input { height: 38px; padding-left: 38px; font-size: 0.95em; border-width: 1px; }
.lk-team--kompakt .lk-team__count { font-size: 0.95em; }
.lk-team--kompakt .lk-team__gruppen { gap: 6px; }
.lk-team--kompakt .lk-chip { padding: 6px 13px; font-family: inherit; font-size: 0.9em; font-weight: 500; }
.lk-team--kompakt .lk-team__grid { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 16px; }
.lk-team--kompakt .lk-card__foto { height: auto; aspect-ratio: 4 / 5; }
.lk-team--kompakt .lk-card__silhouette { width: 70%; height: 70%; }
.lk-team--kompakt .lk-card__kopf { padding: 12px 14px 8px; }
.lk-team--kompakt .lk-card__pre, .lk-team--kompakt .lk-card__post { font-size: 0.85em; }
.lk-team.lk-team--kompakt .lk-card .lk-card__name { font-size: 1.1em !important; line-height: 1.25 !important; letter-spacing: normal !important; }
.lk-team--kompakt .lk-card__faecher { gap: 4px; }
.lk-team.lk-team--kompakt ul.lk-card__faecher { padding: 0 14px 10px !important; }
.lk-team.lk-team--kompakt .lk-card__faecher li { padding: 2px 9px !important; border-radius: 10px; font-size: 0.88em; font-weight: 400; line-height: 1.35 !important; }
.lk-team--kompakt .lk-card__funktionen { margin: 0 14px 10px !important; font-size: 0.85em; }
.lk-team--kompakt .lk-card__fuss { gap: 8px; padding: 10px 14px 14px; }
.lk-team--kompakt .lk-card__sprech { font-size: 0.85em; }
.lk-team--kompakt .lk-card__sprech svg { width: 15px; height: 15px; }
.lk-team.lk-team--kompakt .lk-card__mail { height: 34px; font-family: inherit; font-size: 0.85em; font-weight: 600; }
.lk-team--kompakt .lk-card__mail svg { width: 16px; height: 16px; }
.lk-team--kompakt .lk-team__mehr { height: 42px; font-family: inherit; font-size: 1em; }
@media (max-width: 600px) {
	.lk-team--kompakt .lk-team__grid { grid-template-columns: minmax(0, 1fr); gap: 10px; }
	.lk-team--kompakt .lk-card { grid-template-columns: 64px minmax(0, 1fr) 40px; column-gap: 12px; padding: 12px; }
	.lk-team--kompakt .lk-card__foto { width: 64px; height: 80px; aspect-ratio: auto; border-radius: 8px; }
	.lk-team--kompakt .lk-card__kopf { padding: 0; }
	.lk-team.lk-team--kompakt ul.lk-card__faecher { padding: 0 !important; }
	.lk-team.lk-team--kompakt .lk-card__mail { width: 40px; height: 40px; }
}

/* Kompakt: eckig wie die bestehende Website (keine runden Ecken) */
.lk-team.lk-team--kompakt { --lk-r: 0; }
.lk-team.lk-team--kompakt .lk-card,
.lk-team.lk-team--kompakt .lk-card__foto,
.lk-team.lk-team--kompakt .lk-team__input,
.lk-team.lk-team--kompakt .lk-chip,
.lk-team.lk-team--kompakt .lk-card__faecher li,
.lk-team.lk-team--kompakt .lk-card__mail,
.lk-team.lk-team--kompakt .lk-team__mehr,
.lk-team.lk-team--kompakt .lk-team__leer { border-radius: 0 !important; }
