/* ============================================================
   Case Studies – all pages (EN + PT same layout)
   ============================================================ */

/* Listing page – card links */
.cs-card-img-link { display: block; overflow: hidden; }
.cs-card-img-link:hover img { opacity: .85; }
.cs-card-title a { color: inherit; text-decoration: none; }
.cs-card-title a:hover { color: inherit; text-decoration: none; }

/* Detail pages */
body { padding-top: 60px; }
.cs-hero { background-color: #f5f5f3; padding: 56px 0 52px; border-bottom: 1px solid #e8e8e8; }
.cs-hero-inner { display: flex; align-items: center; gap: 48px; }
.cs-logo-col { flex: 0 0 180px; display: flex; flex-direction: column; align-items: end; gap: 20px; border-right: 2px solid #d0d0d0; padding-right: 48px; }
.cs-logo-col img { max-width: 200px; max-height: 120px; object-fit: contain; }
.cs-title-col { flex: 1; }
.cs-breadcrumb { font-size: 13px; color: #888; margin-bottom: 16px; }
.cs-breadcrumb a { color: #888; text-decoration: none; }
.cs-breadcrumb a:hover { color: #f8485e; }
.cs-breadcrumb .sep { margin: 0 6px; color: #f8485e; font-size: 10px; }
.cs-breadcrumb .current { color: #f8485e; }
.cs-title-col h1 { font-size: 40px; font-weight: 800; color: #1a1a1a; line-height: 1.2; margin: 0; }
.cs-body { padding: 56px 0 80px; }
.cs-layout { display: flex; gap: 56px; align-items: flex-start; }
.cs-share { flex: 0 0 120px; position: sticky; top: 80px; }
.cs-share-title { font-size: 13px; font-weight: 700; color: #1a1a1a; margin-bottom: 12px; letter-spacing: .04em; }
.cs-share-btn { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border: 2px solid #f8485e; border-radius: 50%; color: #f8485e; font-size: 15px; text-decoration: none; transition: background .2s, color .2s; }
.cs-share-btn:hover { background: #f8485e; color: #fff; }
.cs-share-icons-row { display: flex; flex-direction: row; gap: 10px; }
.cs-main { flex: 1; min-width: 0; }
.cs-pdf-btn { display: inline-block; border: 2px solid #f8485e; color: #f8485e; padding: 10px 22px; border-radius: 30px; font-size: 14px; font-weight: 600; text-decoration: none; margin-bottom: 40px; transition: background .2s, color .2s; }
.cs-pdf-btn:hover { background: #f8485e; color: #fff; text-decoration: none; }
.cs-pdf-btn i { margin-right: 6px; }
.cs-section-heading { font-size: 26px; font-weight: 800; color: #1a1a1a; margin: 0 0 24px; }
.cs-snapshot-grid { display: flex; gap: 16px; margin-bottom: 48px; }
.cs-snapshot-card { flex: 1; border: 1px solid #e0e0e0; border-radius: 4px; padding: 28px 22px; }
.cs-snapshot-num { display: block; font-size: 52px; font-weight: 900; color: #f8485e; line-height: 1; margin-bottom: 16px; }
.cs-snapshot-card p { font-size: 14px; color: #3c3c3a; margin: 0; line-height: 1.6; }
.cs-snapshot-card p strong { color: #1a1a1a; }
.cs-section { margin-bottom: 40px; }
.cs-section p { font-size: 15px; color: #3c3c3a; line-height: 1.75; margin-bottom: 14px; }
.cs-section ul { list-style-type: disc; padding-left: 22px; margin-bottom: 14px; }
.cs-section ul li { font-size: 15px; color: #3c3c3a; line-height: 1.75; margin-bottom: 6px; }
.cs-section ul li::marker { color: #f8485e; font-size: 12px; }
.cs-solution-item { display: flex; align-items: center; gap: 18px; margin-bottom: 24px; }
.cs-solution-icon { flex: 0 0 42px; width: 42px; height: 42px; background: #f8485e; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 18px; margin-top: 2px; }
.cs-solution-text { flex: 1; font-size: 15px; color: #3c3c3a; line-height: 1.6; }
.cs-solution-text strong { color: #1a1a1a; }
.cs-related-grid { display: flex; gap: 24px; flex-wrap: wrap; }
.cs-related-card { border: 1px solid #e0e0e0; border-radius: 4px; padding: 20px 24px; text-align: center; flex: 0 0 auto; min-width: 160px; transition: border-color .2s; display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 100px}
.cs-related-card:hover { border-color: #f8485e; text-decoration: none; }
.cs-related-card img { max-width: 180px; max-height: 100px; object-fit: contain; }
.cs-back-link { display: inline-block; margin-top: 40px; color: #f8485e; font-size: 14px; font-weight: 600; text-decoration: none; }
.cs-back-link:hover { text-decoration: underline; color: #f8485e; }
.cs-cta { margin-top: 56px; border-radius: 4px; overflow: hidden; background: linear-gradient(135deg, rgba(26,26,26,0.6) 0%, rgba(45,45,45,0.6) 100%), url('/images/usecasesfooterbg.jpg') center/cover no-repeat; padding: 56px 48px; display: flex; align-items: center; gap: 48px; }
.cs-cta-left { flex: 1; }
.cs-cta-title { font-size: 32px; font-weight: 800; color: #fff; margin: 0 0 16px; line-height: 1.2; }
.cs-cta-sep { width: 1px; height: 80px; background: rgba(255,255,255,.3); flex: 0 0 1px; }
.cs-cta-right { flex: 1; }
.cs-cta-right p { color: rgba(255,255,255,.85); font-size: 16px; line-height: 1.65; margin-bottom: 24px; }
.cs-cta-btn { display: inline-flex; align-items: center; gap: 8px; background: #f8485e; color: #fff; padding: 12px 28px; border-radius: 30px; font-size: 15px; font-weight: 700; text-decoration: none; transition: background .2s; }
.cs-cta-btn:hover { background: #d93248; color: #fff; text-decoration: none; }

@media (max-width: 991px) {
    .cs-hero-inner { flex-direction: column; gap: 24px; }
    .cs-logo-col { flex: none; border-right: none; padding-right: 0; border-bottom: 1px solid #d0d0d0; padding-bottom: 24px; flex-direction: row; }
    .cs-layout { flex-direction: column; gap: 32px; }
    .cs-share { position: static; }
    .cs-snapshot-grid { flex-direction: column; }
    .cs-cta { flex-direction: column; gap: 24px; }
    .cs-cta-sep { width: 80px; height: 1px; }
}
@media (max-width: 767px) {
    .cs-title-col h1 { font-size: 28px; }
    .cs-section-heading { font-size: 22px; }
    .cs-cta-title { font-size: 24px; }
}