/* Wildix Kite Team Widget Styles v1.2.2 */
.wildix-team-container {
    width: 100%;
    margin: 0 auto;
}

.wildix-team-grid {
    display: grid;
    gap: 30px;
    grid-template-columns: repeat(3, 1fr);
}

.wildix-team-member {
    background: #ffffff;
    border-radius: 12px;
    padding: 30px;
    text-align: center;
    transition: all 0.3s ease;
    border: 1px solid #e0e0e0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    position: relative;
}

.wildix-team-member:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

.wildix-team-member:hover .wildix-team-image {
    box-shadow: 0 16px 38px rgba(7, 22, 45, 0.22), 0 4px 12px rgba(0, 0, 0, 0.12) !important;
}

/* Image */
.wildix-team-image {
    width: 150px !important;
    height: 150px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    margin: 0 auto 20px !important;
    display: block !important;
    border: 0 !important;
    outline: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    overflow: hidden !important;
    box-shadow: 0 10px 28px rgba(7, 22, 45, 0.18), 0 2px 10px rgba(0, 0, 0, 0.10) !important;
}

.wildix-team-member .wildix-team-image,
.elementor-widget-wildix_team .wildix-team-image,
.wildix-team-member img.wildix-team-image {
    border-radius: 50% !important;
}

/* Content */
.wildix-team-content {
    margin-top: 20px;
}

.wildix-team-name {
    font-size: 24px;
    font-weight: 700;
    margin: 0 0 8px 0;
    color: #333;
}

.wildix-team-position {
    font-size: 16px;
    color: #666;
    margin: 0 0 15px 0;
    font-weight: 500;
}

.wildix-team-bio {
    font-size: 14px;
    color: #666;
    line-height: 1.6;
    margin: 15px 0;
}

/* Presence text status */
.wkt-pres-dot {
    transition: background 0.3s;
}

/* Contact */
.wildix-team-contact {
    margin: 20px 0;
    text-align: left;
}

.wildix-contact-item {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 10px 0;
    font-size: 14px;
    color: #555;
}

.wildix-contact-item a {
    color: #2196F3;
    text-decoration: none;
    transition: color 0.2s;
}

.wildix-contact-item a:hover {
    color: #1976D2;
    text-decoration: underline;
}

.wildix-icon {
    flex-shrink: 0;
    opacity: 0.7;
}

/* ==========================================
   BUTTONS - Modern pill style
   ========================================== */
.wildix-team-actions {
    display: flex;
    gap: 10px;
    margin-top: 20px;
    flex-wrap: wrap;
    justify-content: center;
}

.wildix-action-button,
.wildix-team-actions .wildix-action-button,
a.wildix-action-button,
.elementor-widget-wildix_team .wildix-action-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 22px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none !important;
    transition: all 0.25s ease;
    border: none;
    cursor: pointer;
    flex: 1;
    min-width: 130px;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(0,0,0,0.15);
    letter-spacing: 0.2px;
    color: #ffffff !important;
}

.wildix-action-button span,
a.wildix-action-button span,
.elementor-widget-wildix_team .wildix-action-button span {
    color: #ffffff !important;
}

.wildix-action-button svg,
a.wildix-action-button svg {
    fill: #ffffff !important;
    color: #ffffff !important;
}

.wildix-action-button:hover {
    transform: translateY(-2px);
    text-decoration: none !important;
    color: #ffffff !important;
}

/* Chat */
.wildix-chat-button,
.wildix-team-actions .wildix-chat-button,
a.wildix-chat-button,
a.wildix-chat-button span {
    background: linear-gradient(135deg, #4CAF50 0%, #43A047 100%);
    color: #ffffff !important;
}
.wildix-chat-button:hover {
    box-shadow: 0 4px 14px rgba(76, 175, 80, 0.45);
    color: #ffffff !important;
}

/* Calendar */
.wildix-calendar-button,
.wildix-team-actions .wildix-calendar-button,
a.wildix-calendar-button,
a.wildix-calendar-button span {
    background: linear-gradient(135deg, #2196F3 0%, #1E88E5 100%);
    color: #ffffff !important;
}
.wildix-calendar-button:hover {
    box-shadow: 0 4px 14px rgba(33, 150, 243, 0.45);
    color: #ffffff !important;
}

/* WhatsApp */
.wildix-whatsapp-button,
.wildix-team-actions .wildix-whatsapp-button,
a.wildix-whatsapp-button,
a.wildix-whatsapp-button span {
    background: linear-gradient(135deg, #25D366 0%, #20BA5A 100%);
    color: #ffffff !important;
}
.wildix-whatsapp-button:hover {
    box-shadow: 0 4px 14px rgba(37, 211, 102, 0.45);
    color: #ffffff !important;
}

/* SMS */
.wildix-sms-button,
.wildix-team-actions .wildix-sms-button,
a.wildix-sms-button,
a.wildix-sms-button span {
    background: linear-gradient(135deg, #ea671f 0%, #d45a18 100%);
    color: #ffffff !important;
}
.wildix-sms-button:hover {
    box-shadow: 0 4px 14px rgba(234, 103, 31, 0.45);
    color: #ffffff !important;
}

/* Phone link */
.wildix-phone-link {
    color: #2196F3;
    text-decoration: none;
    transition: color 0.2s;
}
.wildix-phone-link:hover {
    color: #1976D2;
    text-decoration: underline;
}

/* ==========================================
   RESPONSIVE
   ========================================== */
@media (max-width: 1024px) {
    .wildix-team-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .wildix-team-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .wildix-team-member {
        padding: 20px;
    }
    .wildix-team-image {
        width: 120px;
        height: 120px;
    }
    .wildix-team-actions {
        flex-direction: column;
    }
    .wildix-action-button {
        width: 100%;
        min-width: 100%;
    }
}

/* Auto fallback: only if JavaScript has not resolved the local Elementor background yet.
   Important: never style every card from the operating-system color scheme, because
   Elementor sections can use a different light/dark scheme than the OS. */
@media (prefers-color-scheme: dark) {
    .wildix-team-container.wkt-theme-auto:not(.wkt-theme-light):not(.wkt-theme-dark) .wildix-team-member,
    .wkt-person-section.wkt-theme-auto:not(.wkt-theme-light):not(.wkt-theme-dark) .wkt-person-card {
        background:#082233;
        border-color:rgba(109,200,242,.20);
        color:#fff;
    }
}

/* Accessibility */
.wildix-action-button:focus {
    outline: 3px solid #FFC107;
    outline-offset: 2px;
}

/* Print */
@media print {
    .wildix-team-actions {
        display: none;
    }
    .wildix-team-member {
        break-inside: avoid;
        page-break-inside: avoid;
    }
}


/* Zentrale Ansprechpartner Karten im mc4 Corporate Design */
.wkt-person-section {
    margin: 0 0 32px;
    font-family: inherit;
}

.wkt-person-card {
    position: relative;
    overflow: visible;
    background: #ffffff;
    border-radius: 28px;
    padding: 34px;
    box-shadow: 0 22px 60px rgba(7, 22, 45, 0.10);
    border: 1px solid rgba(0, 159, 227, 0.16);
}

/* Seiten-Verlaufsstrich entfernt */
.wkt-person-accent {
    display: none !important;
}

.wkt-person-eyebrow {
    color: #009FE3;
    font-weight: 700;
    font-size: 17px;
    letter-spacing: .02em;
    margin: 0 0 22px;
}

/* Layout bewusst nach unten statt nebeneinander */
.wkt-person-inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
    align-items: start;
}

.wkt-person-image-wrap {
    position: relative;
    width: 100%;
}

.wkt-person-image {
    width: min(100%, 315px);
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 0;
    display: block;
    background: #f3f7fb;
    box-shadow: none;
}

.wkt-person-content {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.wkt-person-name {
    margin: 0;
    color: #07162d;
    font-size: clamp(30px, 5vw, 44px);
    line-height: 1.08;
    font-weight: 800;
    overflow-wrap: anywhere;
}

.wkt-person-position {
    margin: 12px 0 0;
    color: #485768;
    font-size: clamp(20px, 3vw, 27px);
    line-height: 1.25;
}

.wkt-person-presence {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 16px 0 0;
    color: #526171;
    font-size: 16px;
}

.wkt-person-presence .wkt-pres-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #9E9E9E;
    display: inline-block;
}

.wkt-person-bio {
    margin: 18px 0 0;
    color: #526171;
    font-size: 16px;
    line-height: 1.65;
}

.wkt-person-contact {
    display: grid;
    gap: 10px;
    margin-top: 20px;
}

.wkt-person-contact a {
    display: flex;
    align-items: center;
    gap: 12px;
    color: #485768;
    text-decoration: none !important;
    font-size: 18px;
    line-height: 1.35;
    min-width: 0;
    overflow-wrap: anywhere;
}

.wkt-person-contact a:hover {
    color: #009FE3;
    text-decoration: none !important;
}

.wkt-person-contact span {
    display: inline-flex;
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(0, 159, 227, 0.10);
    color: #009FE3;
    font-size: 14px;
}

.wkt-person-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 26px;
    width: 100%;
}

.wkt-person-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 54px;
    padding: 14px 24px;
    border-radius: 999px;
    text-decoration: none !important;
    font-weight: 700;
    font-size: 16px;
    border: 1px solid rgba(0, 159, 227, 0.25);
    color: #07162d !important;
    background: #ffffff;
    transition: all .18s ease;
    white-space: nowrap;
}

.wkt-person-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(7, 22, 45, 0.10);
}

.wkt-person-btn-primary {
    background: #009FE3;
    color: #ffffff !important;
    border-color: #009FE3;
}

.wkt-person-btn-secondary {
    background: #ea671f;
    color: #ffffff !important;
    border-color: #ea671f;
}

.wkt-team-shortcode-grid {
    display: grid;
    grid-template-columns: repeat(var(--wkt-columns, 3), minmax(0, 1fr));
    gap: 28px;
}

.wkt-team-shortcode-grid .wkt-person-section {
    margin: 0;
}

.wkt-team-shortcode-grid .wkt-person-card {
    height: 100%;
    padding: 28px;
}

.wkt-team-shortcode-grid .wkt-person-image {
    margin: 0 auto;
}

.wkt-team-shortcode-grid .wkt-person-contact a,
.wkt-team-shortcode-grid .wkt-person-presence,
.wkt-team-shortcode-grid .wkt-person-actions {
    justify-content: center;
    text-align: center;
}

.wkt-team-shortcode-title {
    color: #07162d;
    margin: 0 0 24px;
    font-size: 36px;
}

@media (max-width: 767px) {
    .wkt-person-card {
        padding: 26px 22px;
        border-radius: 24px;
    }

    .wkt-person-image {
        width: 100%;
        max-width: 315px;
        margin: 0 auto;
    }

    .wkt-person-contact a,
    .wkt-person-presence {
        justify-content: flex-start;
        text-align: left;
    }

    .wkt-person-actions {
        flex-direction: column;
    }

    .wkt-person-btn {
        width: 100%;
    }

    .wkt-team-shortcode-grid {
        grid-template-columns: 1fr !important;
    }
}


/* mc4 Fix v1.2.2: Abstand, Link-Unterstreichung und Button-Farben */
.elementor-widget-wildix_team .wkt-person-section,
.wkt-person-section:first-child {
    margin-top: 0 !important;
}

.elementor-widget-wildix_team .wkt-person-card {
    margin-top: 0 !important;
}

.elementor-widget-wildix_team .wkt-person-contact a,
.elementor-widget-wildix_team .wkt-person-contact a:visited,
.elementor-widget-wildix_team .wkt-person-contact a:hover,
.elementor-widget-wildix_team .wkt-person-contact a:focus,
.elementor-widget-wildix_team .wkt-person-contact a:active,
.wkt-person-contact a,
.wkt-person-contact a:visited,
.wkt-person-contact a:hover,
.wkt-person-contact a:focus,
.wkt-person-contact a:active {
    text-decoration: none !important;
}

.elementor-widget-wildix_team .wkt-person-btn,
.elementor-widget-wildix_team .wkt-person-btn:visited,
.elementor-widget-wildix_team .wkt-person-btn:hover,
.elementor-widget-wildix_team .wkt-person-btn:focus,
.elementor-widget-wildix_team .wkt-person-btn:active,
.wkt-person-btn-primary,
.wkt-person-btn-primary:visited,
.wkt-person-btn-primary:hover,
.wkt-person-btn-primary:focus,
.wkt-person-btn-primary:active,
.wkt-person-btn-secondary,
.wkt-person-btn-secondary:visited,
.wkt-person-btn-secondary:hover,
.wkt-person-btn-secondary:focus,
.wkt-person-btn-secondary:active {
    color: #ffffff !important;
    text-decoration: none !important;
}

.elementor-widget-wildix_team .wkt-person-btn *,
.wkt-person-btn-primary *,
.wkt-person-btn-secondary * {
    color: #ffffff !important;
    text-decoration: none !important;
}


/* mc4 Fix v1.2.3: Button-Links komplett ohne Unterstrich, auch durch Theme/Elementor */
.elementor-widget-wildix_team .wkt-person-actions a,
.elementor-widget-wildix_team .wkt-person-actions a:link,
.elementor-widget-wildix_team .wkt-person-actions a:visited,
.elementor-widget-wildix_team .wkt-person-actions a:hover,
.elementor-widget-wildix_team .wkt-person-actions a:focus,
.elementor-widget-wildix_team .wkt-person-actions a:active,
.wkt-person-actions a,
.wkt-person-actions a:link,
.wkt-person-actions a:visited,
.wkt-person-actions a:hover,
.wkt-person-actions a:focus,
.wkt-person-actions a:active {
    color: #ffffff !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
}

.elementor-widget-wildix_team .wkt-person-actions a *,
.elementor-widget-wildix_team .wkt-person-actions a *:hover,
.wkt-person-actions a *,
.wkt-person-actions a *:hover {
    color: #ffffff !important;
    text-decoration: none !important;
    text-decoration-line: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
}

.elementor-widget-wildix_team .wkt-person-actions a::before,
.elementor-widget-wildix_team .wkt-person-actions a::after,
.wkt-person-actions a::before,
.wkt-person-actions a::after {
    text-decoration: none !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    background-image: none !important;
}


/* ================================================================
   v1.3.3 - Borderless avatars enforced
   Elementor writes widget Style controls with an element ID selector. Therefore
   the theme colors intentionally use !important so the selected color scheme
   always wins over old/default saved Elementor card colors.
   ================================================================ */

/* Ansprechpartner / Single Member */
.wkt-person-section.wkt-theme-light .wkt-person-card,
.wkt-theme-light .wkt-person-card {
    background:#fff !important;
    color:#07162d !important;
    border-color:rgba(0,159,227,.16) !important;
    box-shadow:0 22px 60px rgba(7,22,45,.10) !important;
}
.wkt-person-section.wkt-theme-light .wkt-person-eyebrow,
.wkt-theme-light .wkt-person-eyebrow { color:#009FE3 !important; }
.wkt-person-section.wkt-theme-light .wkt-person-name,
.wkt-theme-light .wkt-person-name { color:#07162d !important; }
.wkt-person-section.wkt-theme-light .wkt-person-position,
.wkt-person-section.wkt-theme-light .wkt-person-presence,
.wkt-person-section.wkt-theme-light .wkt-person-bio,
.wkt-person-section.wkt-theme-light .wkt-person-contact a,
.wkt-theme-light .wkt-person-position,
.wkt-theme-light .wkt-person-presence,
.wkt-theme-light .wkt-person-bio,
.wkt-theme-light .wkt-person-contact a { color:#485768 !important; }

.wkt-person-section.wkt-theme-dark .wkt-person-card,
.wkt-theme-dark .wkt-person-card {
    background:#082233 !important;
    color:#fff !important;
    border-color:rgba(109,200,242,.20) !important;
    box-shadow:0 22px 60px rgba(0,0,0,.28) !important;
}
.wkt-person-section.wkt-theme-dark .wkt-person-eyebrow,
.wkt-theme-dark .wkt-person-eyebrow { color:#6DC8F2 !important; }
.wkt-person-section.wkt-theme-dark .wkt-person-name,
.wkt-theme-dark .wkt-person-name { color:#fff !important; }
.wkt-person-section.wkt-theme-dark .wkt-person-position,
.wkt-person-section.wkt-theme-dark .wkt-person-presence,
.wkt-person-section.wkt-theme-dark .wkt-person-bio,
.wkt-person-section.wkt-theme-dark .wkt-person-contact a,
.wkt-theme-dark .wkt-person-position,
.wkt-theme-dark .wkt-person-presence,
.wkt-theme-dark .wkt-person-bio,
.wkt-theme-dark .wkt-person-contact a { color:rgba(255,255,255,.72) !important; }
.wkt-theme-dark .wkt-person-contact a:hover { color:#6DC8F2 !important; }
.wkt-theme-dark .wkt-person-contact span {
    background:rgba(109,200,242,.10) !important;
    color:#6DC8F2 !important;
}
.wkt-theme-dark .wkt-person-btn:not(.wkt-person-btn-primary):not(.wkt-person-btn-secondary) {
    background:rgba(255,255,255,.06) !important;
    color:#fff !important;
    border-color:rgba(109,200,242,.22) !important;
}

/* Team Elementor Widget */
.wildix-team-container.wkt-theme-light .wildix-team-member {
    background:#fff !important;
    color:#333 !important;
    border-color:#e0e0e0 !important;
    box-shadow:0 2px 8px rgba(0,0,0,.10) !important;
}
.wildix-team-container.wkt-theme-light .wildix-team-name { color:#07162d !important; }
.wildix-team-container.wkt-theme-light .wildix-team-position,
.wildix-team-container.wkt-theme-light .wildix-team-bio,
.wildix-team-container.wkt-theme-light .wildix-contact-item { color:#555 !important; }
.wildix-team-container.wkt-theme-light .wildix-contact-item a,
.wildix-team-container.wkt-theme-light .wildix-phone-link { color:#2196F3 !important; }

.wildix-team-container.wkt-theme-dark .wildix-team-member {
    background:#082233 !important;
    color:#fff !important;
    border-color:rgba(109,200,242,.20) !important;
    box-shadow:0 18px 45px rgba(0,0,0,.24) !important;
}
.wildix-team-container.wkt-theme-dark .wildix-team-name { color:#fff !important; }
.wildix-team-container.wkt-theme-dark .wildix-team-position,
.wildix-team-container.wkt-theme-dark .wildix-team-bio,
.wildix-team-container.wkt-theme-dark .wildix-contact-item { color:rgba(255,255,255,.72) !important; }
.wildix-team-container.wkt-theme-dark .wildix-contact-item a,
.wildix-team-container.wkt-theme-dark .wildix-phone-link { color:#6DC8F2 !important; }
.wildix-team-container.wkt-theme-dark .wildix-team-image { box-shadow:0 14px 34px rgba(0,0,0,.34), 0 2px 10px rgba(0,0,0,.16) !important; }
.wildix-team-container.wkt-theme-light .wildix-team-image { box-shadow:0 10px 24px rgba(7,22,45,.14), 0 2px 8px rgba(0,0,0,.08) !important; }

/* Auto is resolved by JS from the nearest actual Elementor/container background. */
.wkt-theme-auto { transition:color .15s ease, background-color .15s ease; }


/* v1.3.3 force borderless avatars even when Elementor injects image border styles */
.wildix-team-container .wildix-team-image,
.elementor-widget-wildix_team .wildix-team-image {
    border: 0 !important;
    outline: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}
