/**
 * 零点心理 - 完整设计系统 v11
 * 强制覆盖所有Elementor样式，包含背景图注入
 */

/* ============================================
   RESET & BASE
   ============================================ */
.elementor-11,
.elementor-11 * {
    box-sizing: border-box !important;
}

.elementor-11 {
    overflow-x: hidden !important;
}

/* ============================================
   HERO SECTION - 全屏背景 + 居中内容
   ============================================ */
.elementor-11 .elementor-element-hero-section {
    min-height: 100vh !important;
    height: 100vh !important;
    max-height: 100vh !important;
    position: relative !important;
    overflow: hidden !important;
}

/* 强制注入背景图（覆盖Elementor的none） */
.elementor-11 .elementor-element-hero-section > .elementor-background-default,
.elementor-11 .elementor-element-hero-section > .elementor-background-slideshow,
.elementor-11 .elementor-element-hero-section {
    background-image: url('https://www.lingdianxinli.com/wp-content/uploads/2026/04/therapy-hero.jpg') !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-attachment: scroll !important;
}

.elementor-11 .elementor-element-hero-section::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(135deg, rgba(22,60,61,0.88) 0%, rgba(13,38,39,0.75) 50%, rgba(22,60,61,0.85) 100%) !important;
    z-index: 0 !important;
}

/* Hero内容居中 */
.elementor-11 .elementor-element-hero-container {
    min-height: 100vh !important;
    height: 100vh !important;
    position: relative !important;
    z-index: 1 !important;
}

.elementor-11 .elementor-element-hero-container > .elementor-element-populated,
.elementor-11 .elementor-element-hero-container > .elementor-widget-wrap {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 100vh !important;
    height: 100vh !important;
    padding: 0 20px !important;
}

.elementor-11 .elementor-element-hero-container > .elementor-element-populated > .elementor-wrap,
.elementor-11 .elementor-element-hero-container > .elementor-widget-wrap > .elementor-widget {
    width: 100% !important;
    max-width: 900px !important;
    margin: 0 auto !important;
    text-align: center !important;
}

.elementor-11 .elementor-element-hero-title {
    margin-bottom: 16px !important;
}

.elementor-11 .elementor-element-hero-title .elementor-heading-title {
    font-family: 'Noto Serif SC', 'Songti SC', 'SimSun', serif !important;
    font-size: clamp(3rem, 7vw, 5rem) !important;
    font-weight: 700 !important;
    color: #FFFFFF !important;
    text-shadow: 0 4px 40px rgba(0,0,0,0.3) !important;
    letter-spacing: -0.02em !important;
    line-height: 1.15 !important;
    margin: 0 !important;
}

.elementor-11 .elementor-element-hero-subtitle .elementor-widget-container,
.elementor-11 .elementor-element-hero-subtitle .elementor-text-editor {
    font-size: clamp(1.1rem, 2.5vw, 1.35rem) !important;
    color: rgba(255, 255, 255, 0.9) !important;
    line-height: 1.9 !important;
    max-width: 680px !important;
    margin: 0 auto !important;
}

.elementor-11 .elementor-element-hero-buttons {
    margin-top: 40px !important;
    display: flex !important;
    justify-content: center !important;
    gap: 16px !important;
}

.elementor-11 .elementor-element-hero-buttons .elementor-widget-container {
    display: flex !important;
    justify-content: center !important;
    gap: 16px !important;
}

.elementor-11 .elementor-element-hero-buttons .elementor-button {
    font-family: 'Noto Sans SC', 'PingFang SC', sans-serif !important;
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    padding: 14px 32px !important;
    border-radius: 9999px !important;
    letter-spacing: 0.03em !important;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-11 .elementor-element-hero-buttons .elementor-button:first-child {
    background: #E8A87C !important;
    color: #163C3D !important;
    border: 2px solid #E8A87C !important;
}

.elementor-11 .elementor-element-hero-buttons .elementor-button:first-child:hover {
    background: #FFFFFF !important;
    color: #163C3D !important;
    border-color: #FFFFFF !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3) !important;
}

.elementor-11 .elementor-element-hero-buttons .elementor-button:last-child {
    background: transparent !important;
    color: #FFFFFF !important;
    border: 2px solid rgba(255,255,255,0.5) !important;
}

.elementor-11 .elementor-element-hero-buttons .elementor-button:last-child:hover {
    background: rgba(255,255,255,0.15) !important;
    border-color: #FFFFFF !important;
    transform: translateY(-3px) !important;
}

/* ============================================
   TRUST SECTION
   ============================================ */
.elementor-11 .elementor-element-trust-section {
    padding: 50px 20px !important;
    background: #FFFFFF !important;
}

.elementor-11 .elementor-section-wrap[data-id="trust-section"] .elementor-container,
.elementor-11 .elementor-element-trust-section > .elementor-container {
    max-width: 1100px !important;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
}

.elementor-11 .elementor-element-trust-1,
.elementor-11 .elementor-element-trust-2,
.elementor-11 .elementor-element-trust-3 {
    background: #FFFFFF !important;
    border-radius: 20px !important;
    padding: 28px 24px !important;
    box-shadow: 0 4px 24px rgba(22,60,61,0.10) !important;
    border: 1px solid rgba(22,60,61,0.06) !important;
    text-align: center !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-11 .elementor-element-trust-1:hover,
.elementor-11 .elementor-element-trust-2:hover,
.elementor-11 .elementor-element-trust-3:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 16px 50px rgba(22,60,61,0.16) !important;
}

.elementor-11 .elementor-element-trust-1 .elementor-icon,
.elementor-11 .elementor-element-trust-2 .elementor-icon,
.elementor-11 .elementor-element-trust-3 .elementor-icon {
    background: #E2EDDF !important;
    color: #163C3D !important;
    fill: #163C3D !important;
    border-radius: 50% !important;
    width: 64px !important;
    height: 64px !important;
    font-size: 26px !important;
    margin: 0 auto 16px auto !important;
    transition: all 0.4s ease !important;
}

.elementor-11 .elementor-element-trust-1:hover .elementor-icon,
.elementor-11 .elementor-element-trust-2:hover .elementor-icon,
.elementor-11 .elementor-element-trust-3:hover .elementor-icon {
    background: #163C3D !important;
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
}

.elementor-11 .elementor-element-trust-1 .elementor-icon-box-title,
.elementor-11 .elementor-element-trust-2 .elementor-icon-box-title,
.elementor-11 .elementor-element-trust-3 .elementor-icon-box-title {
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    color: #163C3D !important;
    margin-bottom: 6px !important;
}

.elementor-11 .elementor-element-trust-1 .elementor-icon-box-description,
.elementor-11 .elementor-element-trust-2 .elementor-icon-box-description,
.elementor-11 .elementor-element-trust-3 .elementor-icon-box-description {
    font-size: 0.88rem !important;
    color: #6B7280 !important;
    line-height: 1.6 !important;
}

/* ============================================
   SECTION TITLES - 统一标题样式
   ============================================ */
.elementor-11 .elementor-element-team-title .elementor-heading-title,
.elementor-11 .elementor-element-services-title .elementor-heading-title,
.elementor-11 .elementor-element-knowledge-title .elementor-heading-title,
.elementor-11 .elementor-element-testimonials-title .elementor-heading-title {
    font-family: 'Noto Serif SC', 'Songti SC', serif !important;
    font-size: clamp(1.8rem, 3vw, 2.4rem) !important;
    font-weight: 700 !important;
    color: #163C3D !important;
    letter-spacing: -0.01em !important;
    text-align: center !important;
    position: relative !important;
    display: block !important;
}

.elementor-11 .elementor-element-team-title,
.elementor-11 .elementor-element-services-title,
.elementor-11 .elementor-element-knowledge-title,
.elementor-11 .elementor-element-testimonials-title {
    text-align: center !important;
    margin-bottom: 44px !important;
}

/* ============================================
   TEAM SECTION
   ============================================ */
.elementor-11 .elementor-element-team-section {
    padding: 80px 20px !important;
    background: #F9F7F4 !important;
}

.elementor-11 .elementor-element-team-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.elementor-11 .elementor-element-team-member-1,
.elementor-11 .elementor-element-team-member-2,
.elementor-11 .elementor-element-team-member-3,
.elementor-11 .elementor-element-team-member-4 {
    background: #FFFFFF !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(22,60,61,0.08) !important;
    border: 1px solid rgba(22,60,61,0.05) !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-11 .elementor-element-team-member-1:hover,
.elementor-11 .elementor-element-team-member-2:hover,
.elementor-11 .elementor-element-team-member-3:hover,
.elementor-11 .elementor-element-team-member-4:hover {
    transform: translateY(-12px) !important;
    box-shadow: 0 20px 60px rgba(22,60,61,0.2) !important;
}

.elementor-11 .elementor-element-team-member-1 .elementor-image-box-img,
.elementor-11 .elementor-element-team-member-2 .elementor-image-box-img,
.elementor-11 .elementor-element-team-member-3 .elementor-image-box-img,
.elementor-11 .elementor-element-team-member-4 .elementor-image-box-img {
    width: 100% !important;
    height: 240px !important;
    overflow: hidden !important;
    margin: 0 !important;
}

.elementor-11 .elementor-element-team-member-1 .elementor-image-box-img img,
.elementor-11 .elementor-element-team-member-2 .elementor-image-box-img img,
.elementor-11 .elementor-element-team-member-3 .elementor-image-box-img img,
.elementor-11 .elementor-element-team-member-4 .elementor-image-box-img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: top center !important;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-11 .elementor-element-team-member-1:hover .elementor-image-box-img img,
.elementor-11 .elementor-element-team-member-2:hover .elementor-image-box-img img,
.elementor-11 .elementor-element-team-member-3:hover .elementor-image-box-img img,
.elementor-11 .elementor-element-team-member-4:hover .elementor-image-box-img img {
    transform: scale(1.07) !important;
}

.elementor-11 .elementor-element-team-member-1 .elementor-image-box-content,
.elementor-11 .elementor-element-team-member-2 .elementor-image-box-content,
.elementor-11 .elementor-element-team-member-3 .elementor-image-box-content,
.elementor-11 .elementor-element-team-member-4 .elementor-image-box-content {
    padding: 18px 16px !important;
}

.elementor-11 .elementor-element-team-member-1 .elementor-image-box-title,
.elementor-11 .elementor-element-team-member-2 .elementor-image-box-title,
.elementor-11 .elementor-element-team-member-3 .elementor-image-box-title,
.elementor-11 .elementor-element-team-member-4 .elementor-image-box-title {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #163C3D !important;
    margin-bottom: 4px !important;
}

.elementor-11 .elementor-element-team-member-1 .elementor-image-box-description,
.elementor-11 .elementor-element-team-member-2 .elementor-image-box-description,
.elementor-11 .elementor-element-team-member-3 .elementor-image-box-description,
.elementor-11 .elementor-element-team-member-4 .elementor-image-box-description {
    font-size: 0.82rem !important;
    color: #6B7280 !important;
    line-height: 1.5 !important;
}

/* ============================================
   SERVICES SECTION
   ============================================ */
.elementor-11 .elementor-element-services-section {
    padding: 80px 20px !important;
    background: #FFFFFF !important;
}

.elementor-11 .elementor-element-services-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 20px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.elementor-11 .elementor-element-service-1,
.elementor-11 .elementor-element-service-2,
.elementor-11 .elementor-element-service-3,
.elementor-11 .elementor-element-service-4 {
    background: #FFFFFF !important;
    border-radius: 20px !important;
    padding: 32px 24px !important;
    box-shadow: 0 4px 20px rgba(22,60,61,0.08) !important;
    border: 1px solid rgba(22,60,61,0.06) !important;
    text-align: center !important;
    position: relative !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    overflow: hidden !important;
}

.elementor-11 .elementor-element-service-1::before,
.elementor-11 .elementor-element-service-2::before,
.elementor-11 .elementor-element-service-3::before,
.elementor-11 .elementor-element-service-4::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 4px !important;
    background: linear-gradient(90deg, #163C3D, #E8A87C) !important;
    transform: scaleX(0) !important;
    transform-origin: left !important;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-11 .elementor-element-service-1:hover::before,
.elementor-11 .elementor-element-service-2:hover::before,
.elementor-11 .elementor-element-service-3:hover::before,
.elementor-11 .elementor-element-service-4:hover::before {
    transform: scaleX(1) !important;
}

.elementor-11 .elementor-element-service-1:hover,
.elementor-11 .elementor-element-service-2:hover,
.elementor-11 .elementor-element-service-3:hover,
.elementor-11 .elementor-element-service-4:hover {
    transform: translateY(-10px) !important;
    box-shadow: 0 20px 60px rgba(22,60,61,0.18) !important;
    background: #EBF2EE !important;
}

.elementor-11 .elementor-element-service-1 .elementor-icon,
.elementor-11 .elementor-element-service-2 .elementor-icon,
.elementor-11 .elementor-element-service-3 .elementor-icon,
.elementor-11 .elementor-element-service-4 .elementor-icon {
    background: #E2EDDF !important;
    color: #163C3D !important;
    fill: #163C3D !important;
    border-radius: 16px !important;
    width: 64px !important;
    height: 64px !important;
    font-size: 26px !important;
    margin: 0 auto 18px auto !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-11 .elementor-element-service-1:hover .elementor-icon,
.elementor-11 .elementor-element-service-2:hover .elementor-icon,
.elementor-11 .elementor-element-service-3:hover .elementor-icon,
.elementor-11 .elementor-element-service-4:hover .elementor-icon {
    background: #163C3D !important;
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
    transform: scale(1.1) rotate(-4deg) !important;
}

.elementor-11 .elementor-element-service-1 .elementor-icon-box-title,
.elementor-11 .elementor-element-service-2 .elementor-icon-box-title,
.elementor-11 .elementor-element-service-3 .elementor-icon-box-title,
.elementor-11 .elementor-element-service-4 .elementor-icon-box-title {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #163C3D !important;
    margin-bottom: 8px !important;
}

.elementor-11 .elementor-element-service-1 .elementor-icon-box-description,
.elementor-11 .elementor-element-service-2 .elementor-icon-box-description,
.elementor-11 .elementor-element-service-3 .elementor-icon-box-description,
.elementor-11 .elementor-element-service-4 .elementor-icon-box-description {
    font-size: 0.88rem !important;
    color: #6B7280 !important;
    line-height: 1.7 !important;
}

/* ============================================
   AUDIENCE SECTION
   ============================================ */
.elementor-11 .elementor-element-audience-section {
    padding: 80px 20px !important;
    background: #163C3D !important;
}

.elementor-11 .elementor-element-audience-tags .elementor-text-editor p,
.elementor-11 .elementor-element-audience-tags .elementor-widget-container {
    font-size: 0 !important;
    line-height: 0 !important;
}

.elementor-11 .elementor-element-audience-tags .elementor-text-editor p span,
.elementor-11 .elementor-element-audience-tags .elementor-text-editor p {
    display: inline-block !important;
    background: rgba(255,255,255,0.1) !important;
    color: rgba(255,255,255,0.9) !important;
    font-size: 0.95rem !important;
    padding: 10px 24px !important;
    border-radius: 9999px !important;
    border: 1px solid rgba(255,255,255,0.2) !important;
    margin: 5px !important;
    line-height: 1.5 !important;
    transition: all 0.3s ease !important;
}

.elementor-11 .elementor-element-audience-tags .elementor-text-editor p span:hover,
.elementor-11 .elementor-element-audience-tags .elementor-text-editor p:hover {
    background: #E8A87C !important;
    color: #163C3D !important;
    border-color: #E8A87C !important;
    transform: translateY(-3px) !important;
}

/* ============================================
   TESTIMONIALS SECTION
   ============================================ */
.elementor-11 .elementor-element-testimonials-section {
    padding: 80px 20px !important;
    background: #EBF2EE !important;
}

.elementor-11 .elementor-element-testimonials-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.elementor-11 .elementor-element-testimonial-1,
.elementor-11 .elementor-element-testimonial-2,
.elementor-11 .elementor-element-testimonial-3 {
    background: #FFFFFF !important;
    border-radius: 20px !important;
    padding: 32px 28px !important;
    box-shadow: 0 4px 20px rgba(22,60,61,0.08) !important;
    border: 1px solid rgba(22,60,61,0.05) !important;
    position: relative !important;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-11 .elementor-element-testimonial-1::before,
.elementor-11 .elementor-element-testimonial-2::before,
.elementor-11 .elementor-element-testimonial-3::before {
    content: '\201C' !important;
    position: absolute !important;
    top: 16px !important;
    left: 24px !important;
    font-family: Georgia, serif !important;
    font-size: 3.5rem !important;
    color: #E2EDDF !important;
    line-height: 1 !important;
    font-weight: 700 !important;
}

.elementor-11 .elementor-element-testimonial-1:hover,
.elementor-11 .elementor-element-testimonial-2:hover,
.elementor-11 .elementor-element-testimonial-3:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 20px 60px rgba(22,60,61,0.16) !important;
}

/* ============================================
   KNOWLEDGE SECTION
   ============================================ */
.elementor-11 .elementor-element-knowledge-section {
    padding: 80px 20px !important;
    background: #FFFFFF !important;
}

.elementor-11 .elementor-element-knowledge-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    max-width: 900px !important;
    margin: 0 auto !important;
}

.elementor-11 .elementor-element-article-1,
.elementor-11 .elementor-element-article-2,
.elementor-11 .elementor-element-article-3 {
    background: #FFFFFF !important;
    border-radius: 16px !important;
    box-shadow: 0 3px 16px rgba(22,60,61,0.08) !important;
    border: 1px solid rgba(22,60,61,0.05) !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: row !important;
    min-height: 110px !important;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-11 .elementor-element-article-1:hover,
.elementor-11 .elementor-element-article-2:hover,
.elementor-11 .elementor-element-article-3:hover {
    transform: translateX(10px) !important;
    box-shadow: 0 10px 36px rgba(22,60,61,0.15) !important;
    border-color: rgba(22,60,61,0.12) !important;
}

.elementor-11 .elementor-element-article-1 .elementor-image-box-wrapper,
.elementor-11 .elementor-element-article-2 .elementor-image-box-wrapper,
.elementor-11 .elementor-element-article-3 .elementor-image-box-wrapper {
    display: flex !important;
    flex-direction: row !important;
    width: 100% !important;
    min-height: 110px !important;
}

.elementor-11 .elementor-element-article-1 .elementor-image-box-img,
.elementor-11 .elementor-element-article-2 .elementor-image-box-img,
.elementor-11 .elementor-element-article-3 .elementor-image-box-img {
    width: 160px !important;
    min-width: 160px !important;
    height: auto !important;
    min-height: 110px !important;
    margin: 0 !important;
    overflow: hidden !important;
}

.elementor-11 .elementor-element-article-1 .elementor-image-box-img img,
.elementor-11 .elementor-element-article-2 .elementor-image-box-img img,
.elementor-11 .elementor-element-article-3 .elementor-image-box-img img {
    width: 100% !important;
    height: 100% !important;
    min-height: 110px !important;
    object-fit: cover !important;
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.elementor-11 .elementor-element-article-1:hover .elementor-image-box-img img,
.elementor-11 .elementor-element-article-2:hover .elementor-image-box-img img,
.elementor-11 .elementor-element-article-3:hover .elementor-image-box-img img {
    transform: scale(1.08) !important;
}

.elementor-11 .elementor-element-article-1 .elementor-image-box-content,
.elementor-11 .elementor-element-article-2 .elementor-image-box-content,
.elementor-11 .elementor-element-article-3 .elementor-image-box-content {
    padding: 18px 24px !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

.elementor-11 .elementor-element-article-1 .elementor-image-box-title,
.elementor-11 .elementor-element-article-2 .elementor-image-box-title,
.elementor-11 .elementor-element-article-3 .elementor-image-box-title {
    font-size: 1rem !important;
    font-weight: 600 !important;
    color: #163C3D !important;
    margin-bottom: 6px !important;
    transition: color 0.3s ease !important;
}

.elementor-11 .elementor-element-article-1:hover .elementor-image-box-title,
.elementor-11 .elementor-element-article-2:hover .elementor-image-box-title,
.elementor-11 .elementor-element-article-3:hover .elementor-image-box-title {
    color: #E8A87C !important;
}

.elementor-11 .elementor-element-article-1 .elementor-image-box-description,
.elementor-11 .elementor-element-article-2 .elementor-image-box-description,
.elementor-11 .elementor-element-article-3 .elementor-image-box-description {
    font-size: 0.85rem !important;
    color: #6B7280 !important;
    line-height: 1.65 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

/* ============================================
   CTA SECTION
   ============================================ */
.elementor-11 .elementor-element-cta-section {
    padding: 100px 20px !important;
    background: linear-gradient(135deg, #163C3D 0%, #0D2627 50%, #163C3D 100%) !important;
    text-align: center !important;
}

.elementor-11 .elementor-element-cta-title .elementor-heading-title {
    font-family: 'Noto Serif SC', 'Songti SC', serif !important;
    font-size: clamp(1.8rem, 3.5vw, 2.5rem) !important;
    color: #FFFFFF !important;
    font-weight: 700 !important;
    margin-bottom: 12px !important;
}

.elementor-11 .elementor-element-cta-subtitle .elementor-widget-container {
    color: rgba(255,255,255,0.8) !important;
    font-size: 1.05rem !important;
    margin-bottom: 28px !important;
}

.elementor-11 .elementor-element-cta-button .elementor-button {
    background: #E8A87C !important;
    color: #163C3D !important;
    font-weight: 600 !important;
    padding: 16px 40px !important;
    border-radius: 9999px !important;
    font-size: 1rem !important;
    border: none !important;
    transition: all 0.35s ease !important;
}

.elementor-11 .elementor-element-cta-button .elementor-button:hover {
    background: #FFFFFF !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 30px rgba(0,0,0,0.3) !important;
}

/* ============================================
   CONTACT SECTION
   ============================================ */
.elementor-11 .elementor-element-contact-section {
    padding: 80px 20px !important;
    background: #F9F7F4 !important;
}

.elementor-11 .elementor-element-contact-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    max-width: 700px !important;
    margin: 0 auto !important;
}

.elementor-11 .elementor-element-contact-grid > .elementor-widget-icon-box,
.elementor-11 .elementor-element-contact-info > .elementor-widget-icon-box {
    background: #FFFFFF !important;
    border-radius: 16px !important;
    padding: 16px 24px !important;
    box-shadow: 0 3px 14px rgba(22,60,61,0.07) !important;
    border: 1px solid rgba(22,60,61,0.05) !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 16px !important;
    transition: all 0.35s ease !important;
}

.elementor-11 .elementor-element-contact-grid > .elementor-widget-icon-box:hover,
.elementor-11 .elementor-element-contact-info > .elementor-widget-icon-box:hover {
    transform: translateX(8px) !important;
    box-shadow: 0 8px 28px rgba(22,60,61,0.13) !important;
}

.elementor-11 .elementor-element-contact-grid .elementor-icon,
.elementor-11 .elementor-element-contact-info .elementor-icon {
    background: #E2EDDF !important;
    color: #163C3D !important;
    fill: #163C3D !important;
    border-radius: 50% !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    font-size: 20px !important;
    transition: all 0.35s ease !important;
}

.elementor-11 .elementor-element-contact-grid > .elementor-widget-icon-box:hover .elementor-icon,
.elementor-11 .elementor-element-contact-info > .elementor-widget-icon-box:hover .elementor-icon {
    background: #163C3D !important;
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
}

.elementor-11 .elementor-element-contact-grid .elementor-icon-box-content,
.elementor-11 .elementor-element-contact-info .elementor-icon-box-content {
    flex: 1 !important;
}

.elementor-11 .elementor-element-contact-grid .elementor-icon-box-title,
.elementor-11 .elementor-element-contact-info .elementor-icon-box-title {
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    color: #163C3D !important;
    margin-bottom: 2px !important;
}

.elementor-11 .elementor-element-contact-grid .elementor-icon-box-description,
.elementor-11 .elementor-element-contact-info .elementor-icon-box-description {
    font-size: 0.9rem !important;
    color: #374151 !important;
    line-height: 1.6 !important;
}

.elementor-11 .elementor-element-contact-map .elementor-widget-container iframe {
    border-radius: 16px !important;
    overflow: hidden !important;
}

/* ============================================
   SITE FOOTER / COPYRIGHT
   ============================================ */
.elementor-11 .elementor-element-copyright {
    padding: 20px !important;
    background: #163C3D !important;
    text-align: center !important;
}

.elementor-11 .elementor-element-copyright .elementor-widget-container {
    color: rgba(255,255,255,0.6) !important;
    font-size: 0.82rem !important;
}

/* ============================================
   POLISH & ACCESSIBILITY
   ============================================ */
html { scroll-behavior: smooth; }
.elementor-11 *:focus-visible { outline: 2px solid #E8A87C !important; outline-offset: 3px !important; }
.elementor-11 ::selection { background: #E2EDDF !important; color: #163C3D !important; }
::-webkit-scrollbar { width: 7px; }
::-webkit-scrollbar-track { background: #F9F7F4; }
::-webkit-scrollbar-thumb { background: #E2EDDF; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #163C3D; }

.elementor-11 .elementor-container,
.elementor-11 .elementor-element-populated > .elementor-container {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 1024px) {
    .elementor-11 .elementor-element-team-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .elementor-11 .elementor-element-services-grid { grid-template-columns: repeat(2, 1fr) !important; }
    .elementor-11 .elementor-element-testimonials-grid { grid-template-columns: repeat(2, 1fr) !important; }
}

@media (max-width: 767px) {
    /* Hero mobile */
    .elementor-11 .elementor-element-hero-section { min-height: 100svh !important; height: auto !important; }
    .elementor-11 .elementor-element-hero-container { min-height: 100svh !important; height: auto !important; }
    .elementor-11 .elementor-element-hero-container > .elementor-element-populated,
    .elementor-11 .elementor-element-hero-container > .elementor-widget-wrap {
        min-height: 100svh !important;
        height: auto !important;
        padding-top: 80px !important;
        padding-bottom: 80px !important;
    }
    .elementor-11 .elementor-element-hero-buttons {
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    .elementor-11 .elementor-element-hero-buttons .elementor-widget-container {
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    .elementor-11 .elementor-element-hero-buttons .elementor-button {
        width: 100% !important;
        max-width: 240px !important;
    }

    /* Section grids → single column */
    .elementor-11 .elementor-element-trust-section > .elementor-container,
    .elementor-11 .elementor-element-team-grid,
    .elementor-11 .elementor-element-services-grid,
    .elementor-11 .elementor-element-testimonials-grid { grid-template-columns: 1fr !important; gap: 14px !important; }

    /* Articles */
    .elementor-11 .elementor-element-article-1,
    .elementor-11 .elementor-element-article-2,
    .elementor-11 .elementor-element-article-3 { flex-direction: column !important; }
    .elementor-11 .elementor-element-article-1 .elementor-image-box-img,
    .elementor-11 .elementor-element-article-2 .elementor-image-box-img,
    .elementor-11 .elementor-element-article-3 .elementor-image-box-img {
        width: 100% !important;
        height: 180px !important;
        min-width: unset !important;
        min-height: unset !important;
    }

    /* Section spacing */
    .elementor-11 .elementor-element-team-section,
    .elementor-11 .elementor-element-services-section,
    .elementor-11 .elementor-element-audience-section,
    .elementor-11 .elementor-element-testimonials-section,
    .elementor-11 .elementor-element-knowledge-section,
    .elementor-11 .elementor-element-cta-section { padding: 50px 16px !important; }

    /* Contact */
    .elementor-11 .elementor-element-contact-grid > .elementor-widget-icon-box,
    .elementor-11 .elementor-element-contact-info > .elementor-widget-icon-box {
        flex-direction: row !important;
        padding: 14px 16px !important;
    }
}
