.tq-services-page { position: relative; padding: 8% 0 60px; background: linear-gradient(135deg, #f0f9fe 0%, #e5f2f7 50%, #dbeef3 100%); overflow: hidden; } .tq-services-page::before { content: ''; position: absolute; width: 400px; height: 400px; top: -120px; right: -80px; border-radius: 50%; background: rgba(255, 52, 72, .10); filter: blur(60px); pointer-events: none; } .tq-services-page::after { content: ''; position: absolute; width: 350px; height: 350px; bottom: -100px; left: -60px; border-radius: 50%; background: rgba(6, 180, 200, .10); filter: blur(60px); pointer-events: none; } .tq-services-container { position: relative; z-index: 2; width: min(1320px, calc(100% - 48px)); margin: 0 auto; } .tq-services-breadcrumb { margin-bottom: 30px; font-size: 14px; color: var(--muted); } .tq-services-breadcrumb a { color: var(--cyan-dark); text-decoration: none; font-weight: 600; transition: color .2s; } .tq-services-breadcrumb a:hover { color: var(--red); } .tq-services-breadcrumb .sep { margin: 0 10px; color: var(--border); } .tq-services-breadcrumb .current { color: var(--navy); font-weight: 600; } .tq-services-hero { text-align: center; margin-bottom: 50px; } .tq-services-hero h1 { font-size: clamp(36px, 5vw, 56px); font-weight: 800; color: var(--navy); margin: 0 0 10px; line-height: 1.15; letter-spacing: -1px; } .tq-services-hero h1 span { color: var(--cyan-dark); } .tq-services-hero p { max-width: 580px; margin: 0 auto; color: var(--muted); font-size: 17px; line-height: 1.7; } .tq-services-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; } .tq-service-card { background: #fff; border-radius: 24px; border: 1px solid var(--border); box-shadow: 0 12px 30px rgba(34, 38, 45, .05); padding: 28px 24px; transition: transform .35s ease, box-shadow .35s ease; text-decoration: none; display: flex; flex-direction: column; align-items: flex-start; gap: 12px; color: var(--navy); } .tq-service-card:hover { transform: translateY(-6px); box-shadow: 0 20px 45px rgba(34, 38, 45, .10); } .tq-service-icon { width: 56px; height: 56px; display: flex; align-items: center; justify-content: center; border-radius: 16px; background: rgba(6, 180, 200, .08); color: var(--cyan-dark); flex-shrink: 0; } .tq-service-icon img { width: 32px; height: 32px; object-fit: contain; } .tq-service-name { font-size: 18px; font-weight: 700; margin: 0; line-height: 1.3; } .tq-service-description { font-size: 14px; color: var(--muted); margin: 0; line-height: 1.6; flex: 1; } .tq-service-link { display: inline-flex; align-items: center; gap: 6px; color: var(--red); font-weight: 700; font-size: 13px; text-decoration: none; margin-top: 4px; transition: transform .2s; } .tq-service-link:hover { transform: translateX(4px); } .tq-services-empty { text-align: center; padding: 60px 20px; color: var(--muted); } .tq-services-empty svg { margin-bottom: 20px; } .tq-services-pagination { display: flex; justify-content: center; margin-top: 50px; } .tq-services-pagination .pagination { display: flex; gap: 8px; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; } .tq-services-pagination .page-item { display: inline-block; } .tq-services-pagination .page-link { display: flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 14px; border-radius: 50px; background: #fff; border: 1px solid var(--border); color: var(--navy); font-size: 14px; font-weight: 600; text-decoration: none; transition: all .25s ease; } .tq-services-pagination .page-link:hover { background: var(--soft); border-color: var(--cyan); transform: translateY(-2px); box-shadow: 0 8px 20px rgba(6, 180, 200, .08); } .tq-services-pagination .page-item.active .page-link { background: linear-gradient(135deg, var(--red), var(--red-dark)); border-color: var(--red); color: #fff; box-shadow: 0 8px 24px rgba(255, 52, 72, .25); transform: translateY(-2px); } .tq-services-pagination .page-item.disabled .page-link { opacity: .5; pointer-events: none; background: #f5f7f8; } @media (max-width: 992px) { .tq-services-grid { grid-template-columns: repeat(2, 1fr); } } @media (max-width: 700px) { .tq-services-grid { grid-template-columns: 1fr; } .tq-services-page { padding: 6% 0 40px; } .tq-services-hero h1 { font-size: 32px; } } @media (max-width: 480px) { .tq-service-card { padding: 20px 16px; } }