
/* Kompakte WundPal Kontaktseite */

.kontakt-hero{
background:linear-gradient(135deg,#fff7fa,#fde7ef);
padding:40px 20px 25px;
text-align:center;
    padding:25px 20px 20px;
}

.kontakt-hero .container{
        max-width:780px;
    margin:auto;
    }

.kontakt-hero h1{
   font-size:32px;
color: #eb557d;
    margin-bottom:8px;
    line-height:1.15;
}

.kontakt-hero p{
font-size:15px;
line-height:1.5;
color:#666;
margin:0;
}

.kontakt{
padding:35px 30px;
background:#fff;
}

.kontakt-grid{
max-width:1280px;
margin:auto;
display:grid;
grid-template-columns:360px 1fr;
gap:25px;
align-items:start;
}

.kontakt-info{position:sticky;top:100px;}

.kontakt-portrait{

    width:170px;

    height:auto;

    display:block;

    margin:0 auto 18px;

    border-radius:0;

    border:none;

    box-shadow:none;

}

.kontakt-info h2{
text-align:center;
font-size:28px;
color:#4a4a4a;
margin-bottom:6px;
}

.titel{
text-align:center;
font-size:14px;
line-height:1.4;
margin-bottom:18px;
color:#777;
}

.kontakt-box,
.visitenkarte p{

    margin-top:12px;

    text-align:center;

    font-size:13px;

    line-height:1.5;

    color:#777;

}

.kontakt-box h3,
.visitenkarte h3{
font-size:17px;
margin-bottom:6px;
color:#4a4a4a;
text-align:center
}

.kontakt-box p,
.visitenkarte p{
font-size:14px;
line-height:1.45;
color:#555;
margin:0;
}

.visitenkarte img{
width:155px;
display:block;
margin:auto;
border-radius:10px;
box-shadow:0 6px 16px rgba(0,0,0,.12);
}

.hinweis,.klein,.upload-info,.formular-hinweis{
font-size:12px;
line-height:1.4;
color:#777;
margin-top:6px;
}

.kontakt-formular{
background:#fff;
padding:24px;
border-radius:18px;
box-shadow:0 10px 25px rgba(0,0,0,.08);
}

.kontakt-formular h2{
font-size:28px;
margin-bottom:18px;
color:#4a4a4a;
}

.kontakt-formular form{display:flex;flex-direction:column;}

.kontakt-formular label{
font-size:14px;
font-weight:600;
margin:12px 0 5px;
}

.kontakt-formular input[type=text],
.kontakt-formular input[type=email],
.kontakt-formular input[type=tel],
.kontakt-formular textarea{
width:100%;
padding:10px 12px;
font-size:14px;
border:1px solid #ddd;
border-radius:10px;
transition:.3s;
}

.kontakt-formular textarea{
min-height:110px;
resize:vertical;
}

.kontakt-formular input:focus,
.kontakt-formular textarea:focus{
outline:none;
border-color:var(--rosa);
box-shadow:0 0 0 3px rgba(242,127,166,.15);
}

.radio{
display:flex;
align-items:flex-start;
gap:8px;
font-size:14px;
line-height:1.4;
margin-top:10px;
}

.checkbox{
display:flex;
align-items:center;
gap:8px;
font-size:14px;
line-height:1.4;
margin-top:10px;
}

.radio input{
margin-top:3px;
accent-color:var(--rosa);
}

.checkbox input{
margin:0;
accent-color:var(--rosa);
flex-shrink:0;
}

.kontakt-formular input[type=file]{
padding:10px;
border:2px dashed #f3bfd0;
border-radius:10px;
background:#fff9fb;
}

.formular-button{
margin-top:18px;
padding:12px;
font-size:15px;
border:none;
border-radius:30px;
background:#4a4a4a;
color:#fff;
font-weight:600;
cursor:pointer;
box-shadow:0 8px 18px rgba(242,127,166,.28);
transition:.3s;
}

.formular-button:hover{
transform:translateY(-2px);
background:#df6f94;
}

.honeypot{display:none;}

@media (max-width:1100px){
.kontakt-grid{grid-template-columns:1fr;}
.kontakt-info{position:static;}
.kontakt-portrait{width:145px;height:145px;}
}

@media (max-width:768px){
.kontakt{padding:25px 16px;}
.kontakt-hero{padding:30px 15px 20px;}
.kontakt-hero h1{font-size:32px;}
.kontakt-hero p{font-size:15px;}
.kontakt-formular{padding:18px;}
.visitenkarte img{width:140px;}
.formular-button{width:100%;}
}
.whatsapp-link{
    display:inline-flex;
    align-items:center;
    gap:5px;
    text-decoration:none;
    color:#444;
    font-weight:600;
    font-size:15px;
}

.wa-icon{
    width:14px !important;
    height:14px !important;
    min-width:14px;
    max-width:14px;
    object-fit:contain;
    display:inline-block;
    vertical-align:middle;
    flex:0 0 14px;
}
/* ==========================
   Einsatzgebiet Karte
========================== */

.karte-vorschau{

    width:180px;
    margin:20px auto;
    text-align:center;

}

.karte-vorschau img{

    display:block;
    width:100%;
    margin:0 auto;

    border-radius:12px;
    box-shadow:0 8px 20px rgba(0,0,0,.12);

    cursor:pointer;
    transition:transform .25s ease;

}

.karte-vorschau img:hover{

    transform:scale(1.03);

}

.karte-vorschau img{

    width:180px;
    border-radius:12px;
    cursor:pointer;
    transition:.3s;
    box-shadow:0 8px 18px rgba(0,0,0,.12);

}

.karte-vorschau img:hover{

    transform:scale(1.04);

}

/* ==========================
   Lightbox
========================== */

.lightbox{

    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.85);
    z-index:9999;

    justify-content:center;
    align-items:center;

}

.lightbox img{

    max-width:95vw;
    max-height:65vh;

    width:auto;
    height:auto;

    object-fit:contain;

    border-radius:12px;
    box-shadow:0 20px 60px rgba(0,0,0,.5);

}

.lightbox-close{

    position:absolute;
    top:25px;
    right:40px;

    color:white;
    font-size:48px;
    cursor:pointer;

    user-select:none;

}
.upload-hint
{
    margin-top: 6px;
    margin-bottom: 18px;

    font-size: 0.9rem;

    color: #777;

    font-style: italic;
}
/* ===== Bildvorschau ===== */

.upload-image
{
    width: 80px;
    height: 80px;

    object-fit: cover;

    border-radius: 8px;

    cursor: pointer;

    border: 1px solid #ddd;

    flex-shrink: 0;
}

.upload-row
{
    display: flex;
    align-items: center;
    gap: 15px;
}

.image-preview-overlay
{
    position: fixed;

    inset: 0;

    background: rgba(0,0,0,.85);

    display: none;

    justify-content: center;

    align-items: center;

    z-index: 9999;
}

.image-preview-overlay img
{
    max-width: 90vw;
    max-height: 90vh;

    border-radius: 12px;

    box-shadow: 0 0 30px rgba(0,0,0,.5);
}

.image-preview-overlay.show
{
    display: flex;
}
/* ===== Kontaktlinks Weinrot ===== */

.kontakt-box a {
    color: #911e64;
}

.kontakt-box a:hover {
    color: #911e64;
}

/* WhatsApp-Link ebenfalls Weinrot */
.kontakt-box .whatsapp-link {
    color: #911e64;
}