/* Kontaktseite (/kontakt/): page-kontakt.php + inc/sa-kontakt.php */
.sa-th--kt{--kt-ink:#17141a;--kt-paper:#fbf8f2;--kt-paper2:#f3ecdf;--kt-gold:#d6b06a;--kt-gold2:#b38a45;--kt-wein:#7b2a33;--kt-linie:#e2d6c0;--kt-text:#2a2529;--kt-grau:#6c6266;--kt-wa:#1f8f55;background:var(--kt-paper);color:var(--kt-text);font-size:17px;line-height:1.6}
.sa-th--kt h2,.sa-th--kt h3{font-family:"SA Cormorant",Georgia,serif;font-weight:600;color:var(--kt-ink)}

/* Kopf */
.kt-hero{position:relative;padding:62px 24px 58px;background:radial-gradient(60% 120% at 50% 0,#3a2f40 0,#1b171f 62%,var(--kt-ink) 100%);border-bottom:3px solid var(--kt-gold);color:#efe9dd;text-align:center;overflow:hidden}
.kt-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(28% 60% at 50% 0,rgba(214,176,106,.18),transparent 70%);pointer-events:none}
.kt-hero__in{position:relative;max-width:760px;margin:0 auto}
.sa-th .kt-kicker{margin:0 0 8px;font-size:14px;letter-spacing:.24em;text-transform:uppercase;color:var(--kt-gold)}
.sa-th h1.kt-titel{margin:0 0 14px;padding:0;font-family:"SA Cormorant",Georgia,serif;font-size:64px;font-weight:600;line-height:1.05;color:#fff}
.sa-th .kt-lead{max-width:640px;margin:0 auto 28px;font-size:19px;line-height:1.6;color:#efe9dd}
.sa-th ul.kt-fakten{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 14px;margin:0;padding:0;list-style:none}
.kt-fakten li{margin:0;padding:8px 18px;border:1px solid rgba(214,176,106,.55);border-radius:999px;font-size:15px;color:#e5dccb}
.kt-fakten strong{color:#fff;font-weight:600}

/* Abschnittsköpfe */
.kt-blog,.kt-prod{max-width:1240px;margin:0 auto;padding:54px 24px 10px}
.kt-prod{padding-bottom:70px}
.kt-kopf{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:22px;padding-bottom:12px;border-bottom:1px solid var(--kt-linie)}
.sa-th .kt-kopf h2{margin:0;padding:0;font-size:40px;line-height:1.1}
.sa-th a.kt-alle{flex:none;color:var(--kt-wein);font-size:16px;font-weight:500;text-decoration:none}
.sa-th a.kt-alle:hover,.sa-th a.kt-alle:focus-visible{color:var(--kt-ink);text-decoration:underline;text-underline-offset:3px}

/* Blog-Karten */
.sa-th ul.kt-blog__liste{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:0;padding:0;list-style:none}
.kt-blog__karte{margin:0;min-width:0}
.sa-th .kt-blog__karte a{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--kt-linie);color:var(--kt-text);text-decoration:none;transition:box-shadow .3s,transform .3s}
.sa-th .kt-blog__karte a:hover,.sa-th .kt-blog__karte a:focus-visible{box-shadow:0 16px 34px rgba(23,20,26,.14);transform:translateY(-3px)}
.kt-blog__bild{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--kt-ink)}
.sa-th .kt-blog__bild img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.kt-blog__karte a:hover .kt-blog__bild img{transform:scale(1.05)}
.kt-blog__kat{display:block;margin:16px 18px 4px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--kt-gold2)}
.kt-blog__titel{display:block;margin:0 18px 12px;font-family:"SA Cormorant",Georgia,serif;font-size:23px;font-weight:600;line-height:1.18;color:var(--kt-ink);hyphens:auto;overflow-wrap:break-word}
.kt-blog__mehr{display:block;margin:auto 18px 16px;font-size:15px;color:var(--kt-wein)}

/* Formular + Infospalte */
.kt-haupt{max-width:1240px;margin:0 auto;padding:44px 24px 20px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:30px;align-items:start}
.kt-karte{padding:40px 44px 36px;background:#fff;border:1px solid var(--kt-linie);border-top:4px solid var(--kt-gold);box-shadow:0 18px 50px rgba(23,20,26,.08)}
.sa-th .kt-karte__titel{margin:0 0 6px;padding:0;font-size:42px;line-height:1.1}
.kt-karte > p{margin:0 0 18px;color:var(--kt-grau)}
.kt-form{margin-top:18px}
.kt-meldung{margin:0 0 22px;padding:14px 18px;border-left:4px solid var(--kt-gold);background:var(--kt-paper2);font-size:16px}
.kt-meldung--ok{border-color:var(--kt-wa);background:#eaf5ee;color:#16402b}
.kt-meldung--fehler{border-color:#b32d2e;background:#fbecec;color:#6b1414}
.kt-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.kt-gruppe{margin:0 0 22px;padding:0;border:0;min-width:0}
.kt-legende,.kt-feld label,.kt-label{display:block;margin:0 0 8px;padding:0;font-size:15px;font-weight:600;color:var(--kt-ink)}
.kt-pflicht{color:var(--kt-wein)}
.kt-optional{font-weight:400;color:var(--kt-grau)}
.kt-chips{display:flex;flex-wrap:wrap;gap:8px}
.kt-chip,.kt-weg{position:relative;margin:0;cursor:pointer}
.kt-chip input,.kt-weg input{position:absolute;opacity:0;width:1px;height:1px}
.kt-chip span{display:block;padding:9px 16px;border:1px solid var(--kt-linie);border-radius:999px;background:var(--kt-paper);font-size:15px;line-height:1.3;color:var(--kt-text);transition:background .2s,border-color .2s,color .2s}
.kt-chip:hover span{border-color:var(--kt-gold)}
.kt-chip input:checked + span{background:var(--kt-ink);border-color:var(--kt-ink);color:#fff}
.kt-chip input:focus-visible + span,.kt-weg input:focus-visible + span{outline:2px solid var(--kt-gold2);outline-offset:2px}
.kt-wege{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
.kt-weg span{display:flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 10px;border:1px solid var(--kt-linie);background:var(--kt-paper);font-size:16px;font-weight:500;color:var(--kt-text);transition:background .2s,border-color .2s,color .2s}
.kt-weg svg{width:22px;height:22px;flex:none}
.kt-weg:hover span{border-color:var(--kt-gold)}
.kt-weg input:checked + span{background:var(--kt-ink);border-color:var(--kt-ink);color:#fff}
.kt-weg--wa input:checked + span{background:var(--kt-wa);border-color:var(--kt-wa)}
.kt-reihe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}
.kt-feld{margin:0 0 18px;min-width:0}
.sa-th .kt-feld input[type=text],.sa-th .kt-feld input[type=email],.sa-th .kt-feld input[type=tel],.sa-th .kt-feld textarea{display:block;width:100%;max-width:none;margin:0;padding:12px 14px;border:1px solid #d3c6ae;border-radius:0;background:var(--kt-paper);box-shadow:none;font:inherit;font-size:16px;color:var(--kt-text);transition:border-color .2s,background .2s}
.sa-th .kt-feld textarea{min-height:150px;resize:vertical}
.sa-th .kt-feld input:focus,.sa-th .kt-feld textarea:focus{outline:0;border-color:var(--kt-gold2);background:#fff;box-shadow:0 0 0 3px rgba(214,176,106,.25)}
.sa-th .kt-feld .kt-ungueltig{border-color:#b32d2e;background:#fff7f7}
.kt-feld--wa.kt-hervor label{color:var(--kt-wa)}
.sa-th .kt-feld--wa.kt-hervor input{border-color:var(--kt-wa);background:#f3faf5}

/* Dateien */
.kt-feld .kt-drop,.kt-drop{position:relative;display:flex;margin:0;font-weight:400;flex-direction:column;align-items:center;gap:4px;padding:26px 18px;border:2px dashed #cdbb98;background:var(--kt-paper);text-align:center;cursor:pointer;transition:background .2s,border-color .2s}
.kt-drop:hover,.kt-drop.kt-drop--aktiv{border-color:var(--kt-gold2);background:#fff8ea}
.kt-drop svg{width:34px;height:34px;color:var(--kt-gold2)}
.kt-drop__text{font-size:16px;color:var(--kt-ink)}
.kt-drop__text strong{color:var(--kt-wein)}
.kt-drop__info{font-size:14px;color:var(--kt-grau)}
.kt-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.sa-th ul.kt-liste{margin:10px 0 0;padding:0;list-style:none}
.kt-liste li{display:flex;align-items:center;gap:10px;margin:0 0 6px;padding:8px 10px;background:var(--kt-paper2);font-size:15px}
.kt-liste img,.kt-liste .kt-liste__typ{flex:none;width:40px;height:40px;object-fit:cover;background:#fff}
.kt-liste .kt-liste__typ{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--kt-wein);border:1px solid var(--kt-linie)}
.kt-liste__name{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.kt-liste__groesse{flex:none;color:var(--kt-grau);font-size:14px}
.sa-th .kt-liste button{flex:none;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--kt-grau);font-size:20px;line-height:1;cursor:pointer}
.sa-th .kt-liste button:hover{background:#fff;color:#b32d2e}
.kt-liste__fehler{color:#b32d2e}

.kt-check{display:flex;gap:10px;align-items:flex-start;margin:4px 0 22px;font-size:15px;line-height:1.5;color:var(--kt-grau);cursor:pointer}
.kt-check input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--kt-ink)}
.kt-check a{color:var(--kt-wein)}
.kt-senden{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:0}
.sa-th .kt-knopf{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 34px;border:0;border-radius:0;background:#000;color:#fff;font:inherit;font-size:17px;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background .2s}
.sa-th .kt-knopf:hover,.sa-th .kt-knopf:focus-visible{background:var(--kt-wein);color:#fff}
.sa-th .kt-knopf[disabled]{opacity:.7;cursor:wait}
.kt-knopf.kt-laedt::after{content:"";width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:kt-dreh .8s linear infinite}
@keyframes kt-dreh{to{transform:rotate(360deg)}}
.kt-hinweis{font-size:14px;color:var(--kt-grau)}
.kt-form.kt-fertig > :not(.kt-meldung){display:none}

/* Infospalte */
.kt-info{display:flex;flex-direction:column;gap:16px}
.kt-info__box{padding:22px 22px 20px;background:var(--kt-paper2);border-left:3px solid var(--kt-gold)}
.sa-th .kt-info__box h3{margin:0 0 6px;padding:0;font-size:25px;line-height:1.15}
.sa-th .kt-info__box p{margin:0;font-size:16px;line-height:1.55}
.kt-info__box--wa{background:var(--kt-ink);border-color:var(--kt-wa);color:#e5dccb}
.sa-th .kt-info__box--wa h3{color:#fff}
.sa-th .kt-info__box ul{margin:0 0 12px;padding:0;list-style:none}
.kt-info__box li{margin:0;border-bottom:1px dotted #cdbb98}
.sa-th .kt-info__box li a{display:block;padding:8px 0;color:var(--kt-wein);text-decoration:none}
.sa-th .kt-info__box li a:hover{color:var(--kt-ink)}
.sa-th .kt-info__mail a{color:var(--kt-wein)}

/* Produkt-Karten */
.sa-th ul.kt-prod__liste{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 22px;margin:0;padding:0;list-style:none}
.kt-prod__karte{margin:0;min-width:0}
.sa-th .kt-prod__karte a{display:block;color:var(--kt-text);text-align:center;text-decoration:none}
.kt-prod__bild{display:flex;align-items:center;justify-content:center;aspect-ratio:1;padding:14px;background:var(--kt-paper2);transition:box-shadow .3s}
.sa-th .kt-prod__bild img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.kt-prod__karte a:hover .kt-prod__bild,.kt-prod__karte a:focus-visible .kt-prod__bild{box-shadow:0 14px 28px rgba(23,20,26,.14)}
.kt-prod__titel{display:block;margin-top:10px;font-family:"SA Cormorant",Georgia,serif;font-size:20px;font-weight:600;line-height:1.2;color:var(--kt-ink);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.kt-prod__kuenstler{display:block;font-size:14px;color:var(--kt-grau);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.kt-prod__preis{display:block;margin-top:2px;font-size:15px;font-weight:600;color:var(--kt-wein)}

@media (max-width:1023px){
	.kt-haupt{grid-template-columns:minmax(0,1fr)}
	.kt-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
	.sa-th ul.kt-blog__liste{grid-template-columns:repeat(2,minmax(0,1fr))}
	.sa-th ul.kt-prod__liste{grid-template-columns:repeat(3,minmax(0,1fr))}
	.kt-prod__karte:nth-child(n+7){display:none}
}
@media (max-width:640px){
	.sa-th--kt{font-size:16px}
	.kt-hero{padding:40px 16px 38px}
	.sa-th h1.kt-titel{font-size:44px}
	.sa-th .kt-lead{font-size:17px;margin-bottom:22px}
	.kt-fakten li{padding:6px 14px;font-size:14px}
	.kt-blog,.kt-prod{padding:38px 16px 6px}
	.kt-prod{padding-bottom:48px}
	.kt-kopf{flex-wrap:wrap;gap:4px 16px}
	.sa-th .kt-kopf h2{font-size:31px}
	.sa-th a.kt-alle{font-size:15px}
	/* Blog: zum Wischen */
	.sa-th ul.kt-blog__liste{display:flex;gap:14px;margin:0 -16px;padding:0 16px 8px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 16px;scrollbar-width:none}
	.sa-th ul.kt-blog__liste::-webkit-scrollbar{display:none}
	.kt-blog__karte{flex:0 0 78%;scroll-snap-align:start}
	.kt-blog__titel{font-size:21px}
	.kt-haupt{padding:30px 0 10px;gap:20px}
	.kt-karte{padding:28px 16px 26px;border-left:0;border-right:0;box-shadow:none}
	.sa-th .kt-karte__titel{font-size:34px}
	.kt-reihe{grid-template-columns:minmax(0,1fr)}
	.kt-wege{gap:6px}
	.kt-weg span{flex-direction:column;gap:2px;height:62px;font-size:14px}
	.kt-chip span{padding:8px 13px;font-size:14px}
	.kt-drop__oder{display:none}
	.kt-senden{flex-direction:column;align-items:stretch}
	.sa-th .kt-knopf{width:100%}
	.kt-info{display:flex;padding:0 16px}
	.sa-th ul.kt-prod__liste{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}
	.kt-prod__karte:nth-child(n+7){display:block}
	.kt-prod__bild{padding:8px}
	.kt-prod__titel{font-size:18px}
}
