/* Completely scoped to this Elementor widget. No global body/html/theme selectors. */
.elementor-widget-de_silva_team_widget .dste-root,
.elementor-widget-de_silva_team_widget .dste-root * {
    box-sizing: border-box !important;
}

.elementor-widget-de_silva_team_widget .dste-root {
    --dste-bg: #071f2a;
    --dste-hero: #001823;
    --dste-card: #132c36;
    --dste-heading: #ffffff;
    --dste-text: #bcc9ce;
    --dste-muted: #d1dade;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: var(--dste-bg) !important;
    color: var(--dste-heading) !important;
    font-family: Arial, Helvetica, sans-serif;
    line-height: 1.5;
    isolation: isolate;
}

.elementor-widget-de_silva_team_widget .dste-root img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
}

.elementor-widget-de_silva_team_widget .dste-shell {
    width: 100% !important;
    max-width: 1040px;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 24px;
    padding-right: 24px;
}

.elementor-widget-de_silva_team_widget .dste-hero {
    width: 100% !important;
    min-height: 440px;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--dste-hero) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

.elementor-widget-de_silva_team_widget .dste-hero-inner { padding-top: 96px !important; padding-bottom: 88px !important; }
.elementor-widget-de_silva_team_widget .dste-hero-title {
    margin: 0 !important;
    padding: 0 !important;
    color: var(--dste-heading) !important;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: clamp(38px,4.3vw,64px);
    line-height: .98;
    font-weight: 500;
    letter-spacing: -.025em;
}
.elementor-widget-de_silva_team_widget .dste-hero-description {
    margin: 24px auto 0 !important;
    padding: 0 !important;
    max-width: 680px;
    color: var(--dste-heading) !important;
    font-size: 14px;
    line-height: 1.65;
}

.elementor-widget-de_silva_team_widget .dste-team-section {
    width: 100% !important;
    margin: 0 !important;
    padding: 112px 0 120px !important;
    background: var(--dste-bg) !important;
}
.elementor-widget-de_silva_team_widget .dste-team-grid {
    display: grid !important;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: 18px;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
.elementor-widget-de_silva_team_widget .dste-card {
    min-width: 0 !important;
    min-height: 510px;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    background: var(--dste-card) !important;
    border: 1px solid rgba(255,255,255,.075) !important;
    border-radius: 14px;
    box-shadow: none !important;
}
.elementor-widget-de_silva_team_widget .dste-card-image { height: 245px; object-fit: cover !important; object-position: center !important; flex: 0 0 auto; }
.elementor-widget-de_silva_team_widget .dste-card-copy { padding: 18px 18px 22px !important; margin: 0 !important; }
.elementor-widget-de_silva_team_widget .dste-card-name {
    margin: 0 0 3px !important; padding: 0 !important; color: var(--dste-heading) !important;
    font-size: 15px; line-height: 1.3; font-weight: 600;
}
.elementor-widget-de_silva_team_widget .dste-card-role {
    display: block !important; margin: 0 0 12px !important; padding: 0 !important;
    color: var(--dste-muted) !important; font-size: 11px; line-height: 1.35;
}
.elementor-widget-de_silva_team_widget .dste-card-bio {
    margin: 0 !important; padding: 0 !important; color: var(--dste-text) !important;
    font-size: 11.5px; line-height: 1.56;
}

.elementor-widget-de_silva_team_widget .dste-story {
    width: 100% !important; display: grid !important; grid-template-columns: 1.1fr .82fr;
    gap: 72px; align-items: center !important; margin-left: 0 !important; margin-right: 0 !important;
}
.elementor-widget-de_silva_team_widget .dste-story-one { margin-top: 92px !important; }
.elementor-widget-de_silva_team_widget .dste-story-two { margin-top: 92px !important; grid-template-columns: .82fr 1.1fr; }
.elementor-widget-de_silva_team_widget .dste-photo-block { margin: 0 !important; padding: 0 !important; }
.elementor-widget-de_silva_team_widget .dste-story-image { height: 380px; object-fit: cover !important; object-position: center !important; }
.elementor-widget-de_silva_team_widget .dste-photo-block figcaption {
    margin: 12px 0 0 !important; padding: 0 !important; text-align: center !important;
    color: var(--dste-heading) !important; font-size: 12px; line-height: 1.4;
}
.elementor-widget-de_silva_team_widget .dste-story-card {
    margin: 0 !important; padding: 30px 30px 32px !important; background: var(--dste-card) !important;
    border: 1px solid rgba(255,255,255,.075) !important; border-radius: 15px; box-shadow: none !important;
}
.elementor-widget-de_silva_team_widget .dste-story-title {
    margin: 0 0 5px !important; padding: 0 !important; color: var(--dste-heading) !important;
    font-family: Georgia, 'Times New Roman', serif; font-size: 30px; line-height: 1.15; font-weight: 500;
}
.elementor-widget-de_silva_team_widget .dste-story-subtitle {
    margin: 0 0 20px !important; padding: 0 !important; color: var(--dste-heading) !important;
    font-size: 14px; line-height: 1.4; font-weight: 600;
}
.elementor-widget-de_silva_team_widget .dste-warmth-title { margin-bottom: 16px !important; font-size: 17px; }
.elementor-widget-de_silva_team_widget .dste-story-text {
    margin: 0 !important; padding: 0 !important; color: var(--dste-text) !important;
    font-size: 14px; line-height: 1.72;
}
.elementor-widget-de_silva_team_widget .dste-closing {
    margin: 140px 0 0 !important; padding: 0 !important; text-align: center !important;
    color: var(--dste-heading) !important; font-size: 13px; line-height: 1.65;
}

.elementor-widget-de_silva_team_widget .dste-reveal { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
.elementor-widget-de_silva_team_widget .dste-reveal.dste-visible { opacity: 1; transform: translateY(0); }
.elementor-editor-active .elementor-widget-de_silva_team_widget .dste-reveal { opacity: 1; transform: none; }

@media (max-width: 1024px) {
    .elementor-widget-de_silva_team_widget .dste-team-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .elementor-widget-de_silva_team_widget .dste-card { min-height: 0; }
    .elementor-widget-de_silva_team_widget .dste-story,
    .elementor-widget-de_silva_team_widget .dste-story-two { grid-template-columns: 1fr; gap: 32px; }
    .elementor-widget-de_silva_team_widget .dste-story-two .dste-photo-block { order: -1; }
    .elementor-widget-de_silva_team_widget .dste-story-image { height: 420px; }
}

@media (max-width: 767px) {
    .elementor-widget-de_silva_team_widget .dste-shell { padding-left: 12px; padding-right: 12px; }
    .elementor-widget-de_silva_team_widget .dste-hero { min-height: 350px; }
    .elementor-widget-de_silva_team_widget .dste-hero-inner { padding-top: 72px !important; padding-bottom: 64px !important; }
    .elementor-widget-de_silva_team_widget .dste-hero-title { font-size: 38px; line-height: 1.03; }
    .elementor-widget-de_silva_team_widget .dste-hero-description { font-size: 13px; }
    .elementor-widget-de_silva_team_widget .dste-team-section { padding-top: 64px !important; padding-bottom: 80px !important; }
    .elementor-widget-de_silva_team_widget .dste-team-grid { grid-template-columns: 1fr; gap: 16px; }
    .elementor-widget-de_silva_team_widget .dste-card-image { height: 300px; }
    .elementor-widget-de_silva_team_widget .dste-card-copy { padding: 20px !important; }
    .elementor-widget-de_silva_team_widget .dste-card-bio { font-size: 13px; }
    .elementor-widget-de_silva_team_widget .dste-story-one,
    .elementor-widget-de_silva_team_widget .dste-story-two { margin-top: 64px !important; }
    .elementor-widget-de_silva_team_widget .dste-story-image { height: 300px; }
    .elementor-widget-de_silva_team_widget .dste-story-card { padding: 24px 22px !important; }
    .elementor-widget-de_silva_team_widget .dste-story-title { font-size: 28px; }
    .elementor-widget-de_silva_team_widget .dste-story-text { font-size: 13px; }
    .elementor-widget-de_silva_team_widget .dste-closing { margin-top: 90px !important; font-size: 12px; }
}

@media (prefers-reduced-motion: reduce) {
    .elementor-widget-de_silva_team_widget .dste-reveal { opacity: 1; transform: none; transition: none; }
}
