:root {
    --primary: #0EA5E9;
    --primary-dark: #0284C7;
    --accent: #F97316;
    --dark: #0F172A;
    --light: #F8FAFC;
    --gradient-1: linear-gradient(135deg, #0EA5E9 0%, #2563EB 100%);
    --gradient-2: linear-gradient(135deg, #F97316 0%, #EF4444 100%);
    --glass: rgba(255, 255, 255, 0.1);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: "Zalando Sans Expanded", sans-serif !important;
    overflow-x: hidden;
    color: var(--dark);
    background: var(--light);
}

/* Hero Section */
.hero {
    min-height: 100vh;
    background: var(--gradient-1);
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    padding: 80px 20px;
}

.hero::before {
    content: '';
    position: absolute;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 70%);
    top: -200px;
    right: -200px;
    animation: pulse 4s ease-in-out infinite;
}

.hero::after {
    content: '';
    position: absolute;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.05) 0%, transparent 70%);
    bottom: -100px;
    left: -100px;
    animation: pulse 5s ease-in-out infinite;
}

@keyframes pulse {

    0%,
    100% {
        transform: scale(1);
        opacity: 0.5;
    }

    50% {
        transform: scale(1.1);
        opacity: 0.8;
    }
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
    position: relative;
    z-index: 2;
}

.hero-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

.hero-content h1 {
    font-family: "Zalando Sans Expanded", sans-serif !important;
    font-size: 4.5rem;
    font-weight: 800;
    color: white;
    line-height: 1.1;
    margin-bottom: 24px;
    letter-spacing: -0.02em;
}

.hero-content .subtitle {
    font-size: 1.5rem;
    color: rgba(255, 255, 255, 0.9);
    margin-bottom: 16px;
    font-weight: 500;
}

.hero-content .description {
    font-size: 1.1rem;
    color: rgba(255, 255, 255, 0.8);
    line-height: 1.7;
    margin-bottom: 40px;
}

.cta-group {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

.btn {
    padding: 16px 36px;
    border-radius: 12px !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: pointer !important;
    border: none !important;
}

.btn.btn-primary {
    background: white !important;
    color: var(--primary) !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2) !important;
}

.btn.btn-primary:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3) !important;
}

.btn.btn-secondary {
    background: rgba(255, 255, 255, 0.15) !important;
    color: white !important;
    backdrop-filter: blur(10px) !important;
    border: 2px solid rgba(255, 255, 255, 0.3) !important;
}

.btn.btn-secondary:hover {
    background: rgba(255, 255, 255, 0.25) !important;
    border-color: rgba(255, 255, 255, 0.5) !important;
}

/* Chat Window Mockup */
.chat-mockup {
    background: white;
    border-radius: 24px;
    box-shadow: 0 40px 100px rgba(0, 0, 0, 0.3);
    overflow: hidden;
    animation: floatUp 1s ease-out, float 6s ease-in-out 1s infinite;
}

@keyframes floatUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes float {

    0%,
    100% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-20px);
    }
}

.chat-header {
    background: var(--gradient-1);
    padding: 20px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.chat-user {
    display: flex;
    align-items: center;
    gap: 12px;
}

.avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--gradient-2);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 1.1rem;
    position: relative;
}

.avatar::after {
    content: '';
    position: absolute;
    width: 14px;
    height: 14px;
    background: #10B981;
    border: 3px solid white;
    border-radius: 50%;
    bottom: -2px;
    right: -2px;
}

.user-info h3 {
    color: white;
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 2px;
}

.user-info p {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.85rem;
}

.chat-actions {
    display: flex;
    gap: 8px;
}

button.chat-action-btn {
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.15) !important;
    border: none;
    color: white !important;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
}

.chat-action-btn:hover {
    background: rgba(255, 255, 255, 0.25) !important;
}

/* Pinned Message Banner */
.pinned-message-banner {
    background: linear-gradient(135deg, rgba(249, 115, 22, 0.1) 0%, rgba(239, 68, 68, 0.1) 100%);
    border-bottom: 1px solid rgba(249, 115, 22, 0.2);
    padding: 12px 24px;
    display: flex;
    align-items: center;
    gap: 12px;
    animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.pin-icon {
    color: var(--accent);
    font-size: 1.1rem;
    transform: rotate(45deg);
}

.pinned-message-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.pinned-message-label {
    font-size: 0.75rem;
    color: var(--accent);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.pinned-message-text {
    font-size: 13px;
    color: var(--dark);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.close-pinned {
    width: 24px !important;
    height: 24px !important;
    border-radius: 50% !important;
    background: rgba(0, 0, 0, 0.05) !important;
    border: none;
    color: #64748B !important;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
    font-size: 15px;
}

.close-pinned:hover {
    background: rgba(0, 0, 0, 0.1) !important;
}

.chat-messages {
    padding: 24px;
    height: 400px;
    overflow-y: auto;
    background: linear-gradient(180deg, #F8FAFC 0%, #F1F5F9 100%);
}

.message {
    margin-bottom: 16px;
    animation: slideIn 0.4s ease-out;
    position: relative;
    display: flex;
    justify-content: flex-start;
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.message-wrapper {
    position: relative;
}

.message-actions {
    position: absolute;
    top: -10px;
    right: 10px;
    background: white;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    display: none;
    flex-direction: row;
    gap: 4px;
    padding: 4px;
    z-index: 10;
}

.message-action-btn {
    width: 32px !important;
    height: 32px !important;
    border-radius: 6px !important;
    background: transparent !important;
    border: none;
    color: #64748B !important;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
    font-size: 0.9rem;
}

.message-action-btn:hover {
    background: #F1F5F9 !important;
    color: var(--primary) !important;
}

.message-action-btn.pinned {
    color: var(--accent) !important;
}

.message.received .message-bubble {
    background: white;
    color: var(--dark);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.message.sent {
    justify-content: flex-end;
}

.message.sent .message-bubble {
    background: var(--gradient-1);
    color: white;
}

.message.pinned-msg .message-bubble::before {
    content: '';
    position: absolute;
    left: -8px;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 70%;
    background: var(--accent);
    border-radius: 2px;
}

.forwarded-label {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.75rem;
    opacity: 0.7;
    margin-bottom: 4px;
    font-style: italic;
}

.forwarded-label i {
    font-size: 0.85rem;
}

.message-bubble {
    padding: 14px 18px;
    border-radius: 16px;
    font-size: 0.95rem;
    line-height: 1.5;
    word-wrap: break-word;
    position: relative;
}

.message-time {
    font-size: 0.75rem;
    opacity: 0.6;
    margin-top: 4px;
    display: block;
}

.voice-message {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: var(--gradient-1);
    border-radius: 16px;
    max-width: 75%;
    margin-left: auto;
}

.voice-play-btn {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: white !important;
    border: none !important;
    color: var(--primary) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.voice-wave {
    display: flex;
    align-items: center;
    gap: 2px;
    flex: 1;
}

.wave-bar {
    width: 3px;
    height: 20px;
    background: rgba(255, 255, 255, 0.6);
    border-radius: 2px;
    animation: wave 1s ease-in-out infinite;
}

.wave-bar:nth-child(2) {
    animation-delay: 0.1s;
}

.wave-bar:nth-child(3) {
    animation-delay: 0.2s;
}

.wave-bar:nth-child(4) {
    animation-delay: 0.3s;
}

.wave-bar:nth-child(5) {
    animation-delay: 0.4s;
}

.wave-bar:nth-child(6) {
    animation-delay: 0.5s;
}

@keyframes wave {

    0%,
    100% {
        height: 12px;
    }

    50% {
        height: 24px;
    }
}

.voice-time {
    color: white;
    font-size: 0.85rem;
    opacity: 0.9;
}

.typing-indicator {
    display: flex;
    gap: 4px;
    padding: 12px 16px;
    background: white;
    border-radius: 16px;
    width: fit-content;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.typing-dot {
    width: 8px;
    height: 8px;
    background: #94A3B8;
    border-radius: 50%;
    animation: typing 1.4s infinite;
}

.typing-dot:nth-child(2) {
    animation-delay: 0.2s;
}

.typing-dot:nth-child(3) {
    animation-delay: 0.4s;
}

@keyframes typing {

    0%,
    60%,
    100% {
        transform: translateY(0);
    }

    30% {
        transform: translateY(-10px);
    }
}

.chat-input {
    padding: 20px 24px;
    background: white;
    border-top: 1px solid #E2E8F0;
    display: flex;
    gap: 12px;
    align-items: center;
}

.input-actions {
    display: flex;
    gap: 8px;
}

button.input-btn {
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    background: #F1F5F9;
    border: none;
    color: #64748B;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
}

button.input-btn:hover {
    background: var(--primary) !important;
    color: white !important;
}

.chat-input button {
    width: auto;
    height: auto;
}

.input-field {
    flex: 1;
    padding: 12px 16px;
    border: 2px solid #E2E8F0;
    border-radius: 10px;
    font-size: 0.95rem;
    outline: none;
    transition: all 0.2s;
}

.input-field:focus {
    border-color: var(--primary);
}

/* Section Styles */
.section {
    padding: 120px 20px;
}

.section-header {
    text-align: center;
    max-width: 800px;
    margin: 0 auto 80px;
}

.section-header h2 {
    font-family: "Zalando Sans Expanded", sans-serif !important;
    font-size: 3.5rem;
    font-weight: 800;
    margin-bottom: 24px;
    letter-spacing: -0.02em;
}

.section-header p {
    font-size: 1.25rem;
    color: #64748B;
    line-height: 1.7;
}

/* Features Grid */
.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 32px;
    margin-top: 60px;
}

.feature-card {
    background: white;
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid #E2E8F0;
}

.feature-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.12);
    border-color: var(--primary);
}

.feature-icon {
    width: 64px;
    height: 64px;
    background: var(--gradient-1);
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    margin-bottom: 24px;
}

.feature-card h3 {
    font-family: "Zalando Sans Expanded", sans-serif !important;
    font-size: 1.4rem;
    font-weight: 700;
    margin-bottom: 12px;
}

.feature-card p {
    color: #64748B;
    line-height: 1.7;
}

/* Demo Section */
.demo-section {
    background: linear-gradient(180deg, var(--light) 0%, white 100%);
}

.demo-showcase {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}

.demo-chat-window {
    background: white;
    border-radius: 24px;
    box-shadow: 0 20px 80px rgba(0, 0, 0, 0.15);
    overflow: hidden;
}

/* Premium Section */
.premium-section {
    background: var(--dark);
    color: white;
    position: relative;
    overflow: hidden;
}

.premium-section::before {
    content: '';
    position: absolute;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(249, 115, 22, 0.1) 0%, transparent 70%);
    top: -200px;
    right: -200px;
}

.premium-badge {
    display: inline-block;
    padding: 8px 20px;
    background: var(--gradient-2);
    border-radius: 50px;
    font-weight: 700;
    font-size: 0.85rem;
    letter-spacing: 0.5px;
    margin-bottom: 24px;
}

.premium-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}

.premium-features {
    display: grid;
    gap: 20px;
    margin-top: 32px;
}

.premium-feature {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 12px;
    backdrop-filter: blur(10px);
}

.premium-feature i {
    font-size: 1.5rem;
    color: var(--accent);
}

/* Stats Section */
.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
    margin-top: 60px;
}

.stat-card {
    text-align: center;
    padding: 40px 20px;
    background: white;
    border-radius: 20px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}

.stat-value {
    font-family: "Zalando Sans Expanded", sans-serif !important;
    font-size: 3rem;
    font-weight: 800;
    background: var(--gradient-1);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 8px;
}

.stat-label {
    color: #64748B;
    font-weight: 500;
}

/* CTA Section */
.cta-section {
    background: var(--gradient-1);
    text-align: center;
    color: white;
}

.cta-section h2 {
    font-family: "Zalando Sans Expanded", sans-serif !important;
    font-size: 3.5rem;
    font-weight: 800;
    margin-bottom: 24px;
}

.footer-grid .footer-contact-table i {
    display: flex;
    align-items: center;
    justify-content: center;
}

.products-dropdown-content {
    top: 10px;
    border: none;
    float: none;
    border-radius: 0px 0px 4px 4px;
}

.logo-nav-left1 ul li {
    border-bottom: solid;
    border-width: 2px;
    border-color: transparent;
}

/* ========================================
       FRESH MODERN POPULAR PRODUCTS SECTION
       ======================================== */

.popular-products-section {
    position: relative;
    overflow: hidden;
    background: var(--gradient-1);
}

.popular-products-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image:
        radial-gradient(circle at 20% 30%, rgba(14, 165, 233, 0.03) 0%, transparent 50%),
        radial-gradient(circle at 80% 70%, rgba(249, 115, 22, 0.03) 0%, transparent 50%);
    pointer-events: none;
}

.popular-products-section .section-header {
    position: relative;
    z-index: 2;
    margin-bottom: 50px;
}

.popular-products-section .hdg {
    color: #fff !important;
}

.popular-products-section .heading-bar {
    display: none !important;
}

.popular-products-section .section-subtitle {
    color: #fff;
    text-align: center;
    max-width: 600px;
    margin: 0 auto;
    opacity: 0.9;
}

.recent-grids {
    background: #FFFFFF !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
    border: 1px solid #E2E8F0 !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.recent-grids:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08) !important;
    border-color: #CBD5E1 !important;
}

.recent-left {
    position: relative !important;
    overflow: hidden !important;
    background: #F8FAFC !important;
}

.recent-left>a {
    /* position: relative !important; */
    display: block !important;
    width: 100% !important;
}

.recent-left img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform 0.4s ease !important;
}

.recent-grids:hover .recent-left img {
    transform: scale(1.05) !important;
}

.product-badge {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(10px) !important;
    padding: 6px 12px !important;
    border-radius: 6px !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    color: #0EA5E9 !important;
    z-index: 2 !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}

.recent-right {
    padding: 20px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    flex: 1 !important;
}

.best2 {
    margin: 0 !important;
    min-height: auto !important;
}

.best2 a {
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    color: #0F172A !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    line-height: 1.4 !important;
    transition: color 0.2s ease !important;
}

.best2 a:hover {
    color: #0EA5E9 !important;
}

.product-info-grid {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    gap: 12px !important;
    align-items: center !important;
    padding-top: 12px !important;
    border-top: 1px solid #F1F5F9 !important;
    margin-top: auto !important;
}

.block {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.block i {
    color: #FBBF24 !important;
    font-size: 0.9rem !important;
}

.rating-count {
    font-size: 0.8rem !important;
    color: #94A3B8 !important;
    margin-left: 6px !important;
}

.price-in1 {
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #0EA5E9 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

.quick-view-btn {
    position: absolute !important;
    bottom: 0px !important;
    left: 50% !important;
    transform: translateX(-50%) translateY(10px) !important;
    opacity: 0 !important;
    background: #0EA5E9 !important;
    color: white !important;
    padding: 10px 24px !important;
    border-radius: 8px 8px 0px 0px !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    z-index: 3 !important;
    box-shadow: 0 4px 12px rgba(14, 165, 233, 0.3) !important;
}

.recent-grids:hover .quick-view-btn {
    opacity: 1 !important;
    transform: translateX(-50%) translateY(0) !important;
}

.quick-view-btn:hover {
    background: #0284C7 !important;
    color: #fff !important;
}

.product-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin-top: 8px !important;
}

.product-tag {
    font-size: 0.75rem !important;
    padding: 4px 10px !important;
    background: #F1F5F9 !important;
    color: #475569 !important;
    border-radius: 4px !important;
    font-weight: 500 !important;
}

.popular-products-slider {
    position: relative;
    z-index: 2;
    margin-top: 40px;
}

.popular-products-slider.owl-theme .owl-stage-outer {
    padding: 10px 0px 20px !important;
}

.popular-products-slider.owl-theme .owl-item {
    padding: 0 10px !important;
    height: 380px;
}

.popular-products-slider.owl-theme .owl-nav {
    position: absolute;
    top: -70px;
    right: 0;
    display: flex;
    gap: 8px;
}

.popular-products-slider.owl-theme .owl-nav button {
    width: 44px !important;
    height: 44px !important;
    border-radius: 8px !important;
    background: #F8FAFC !important;
    border: 1px solid #E2E8F0 !important;
    color: #475569 !important;
    font-size: 1.2rem !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.popular-products-slider.owl-theme .owl-nav button:hover {
    background: #0EA5E9 !important;
    color: white !important;
    border-color: #0EA5E9 !important;
}

.popular-products-slider.owl-theme .owl-nav button.disabled {
    opacity: 0.3 !important;
    cursor: not-allowed !important;
}

.popular-products-slider.owl-theme .owl-dots {
    text-align: center;
    margin-top: 30px;
    display: flex;
    justify-content: center;
    gap: 8px;
}

.popular-products-slider.owl-theme .owl-dot {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: #CBD5E1 !important;
    transition: all 0.3s ease !important;
    border: none !important;
    padding: 0 !important;
}

.popular-products-slider.owl-theme .owl-dot.active {
    width: 24px !important;
    border-radius: 4px !important;
    background: #0EA5E9 !important;
}

.recent-row {
    margin: 0 !important;
}

.thumbnail {
    border: none !important;
    padding: 0 !important;
}

.bounce-hover {
    animation: none !important;
}

.clearfix {
    display: none !important;
}

.img-responsive {
    display: block;
    max-width: 100%;
    height: auto;
}

.list-unstyled li:hover {
    /* transform: translateY(-5px); */
}

.single-features-item {
    transition: transform 0.5s ease;
}

.single-features-item:hover {
    transform: translateY(-10px);
}

a {
    text-decoration: none;
}

.col-xs-1,
.col-sm-1,
.col-md-1,
.col-lg-1,
.col-xs-2,
.col-sm-2,
.col-md-2,
.col-lg-2,
.col-xs-3,
.col-sm-3,
.col-md-3,
.col-lg-3,
.col-xs-4,
.col-sm-4,
.col-md-4,
.col-lg-4,
.col-xs-5,
.col-sm-5,
.col-md-5,
.col-lg-5,
.col-xs-6,
.col-sm-6,
.col-md-6,
.col-lg-6,
.col-xs-7,
.col-sm-7,
.col-md-7,
.col-lg-7,
.col-xs-8,
.col-sm-8,
.col-md-8,
.col-lg-8,
.col-xs-9,
.col-sm-9,
.col-md-9,
.col-lg-9,
.col-xs-10,
.col-sm-10,
.col-md-10,
.col-lg-10,
.col-xs-11,
.col-sm-11,
.col-md-11,
.col-lg-11,
.col-xs-12,
.col-sm-12,
.col-md-12,
.col-lg-12 {
    position: relative;
    min-height: 1px;
    padding-right: 15px;
    padding-left: 15px;
}

.row.cbn_products_slider>*,
.row.products-slider>* {
    padding-right: 0px;
    padding-left: 0px;
}

.cart_total_wrap {
    display: flex;
    justify-content: flex-end;
    width: 100%;
}

/* ============================================ TABLET RESPONSIVE (768px - 1024px) ============================================ */
@media (max-width: 1024px) and (min-width: 769px) {
    .hero {
        padding: 60px 20px;
        min-height: auto;
    }

    .hero-grid {
        gap: 40px;
    }

    .hero-content h1 {
        font-size: 3.5rem;
    }

    .hero-content .subtitle {
        font-size: 1.3rem;
    }

    .hero-content .description {
        font-size: 1rem;
    }

    .chat-messages {
        height: 350px;
    }

    .avatar {
        width: 40px;
        height: 40px;
        font-size: 1rem;
    }

    .avatar::after {
        width: 12px;
        height: 12px;
    }

    .section {
        padding: 80px 20px;
    }

    .section-header h2,
    .popular-products-section .hdg {
        font-size: 2.8rem !important;
    }

    .section-header p,
    .popular-products-section .section-subtitle {
        font-size: 1.1rem;
    }

    .features-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .feature-card {
        padding: 30px;
    }

    .feature-icon {
        width: 56px;
        height: 56px;
        font-size: 1.5rem;
    }

    .feature-card h3 {
        font-size: 1.2rem;
    }

    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 24px;
    }

    .stat-value {
        font-size: 2.5rem;
    }

    .premium-grid {
        gap: 50px;
    }

    .premium-section h2 {
        font-size: 2.8rem !important;
    }

    .cta-section h2 {
        font-size: 2.8rem;
    }

    .popular-products-section .hdg {
        font-size: 2.2rem !important;
    }

    .popular-products-section .section-subtitle {
        font-size: 1rem;
    }

    .recent-right {
        padding: 18px !important;
    }

    .best2 a {
        font-size: 1rem !important;
    }

    .price-in1 {
        font-size: 1rem !important;
    }

    .popular-products-slider.owl-theme .owl-nav {
        top: -65px;
    }

    .popular-products-slider.owl-theme .owl-nav button {
        width: 40px !important;
        height: 40px !important;
    }
}

@media (min-width: 768px) {
    .navbar-expand-lg .navbar-collapse {
        display: flex !important;
        flex-basis: auto;
    }

    .navbar-expand-lg .navbar-nav {
        flex-direction: row;
    }

    .navbar-expand-lg .navbar-toggler {
        display: none;
    }
}

@media (max-width: 1024px) {
    .mail-grids-wrap-contact .mail-top {
        flex-wrap: wrap;
    }

    .mail-grids-wrap-contact .mail-grid {
        width: 100%;
    }
}

/* ============================================ MOBILE RESPONSIVE (320px - 768px) ============================================ */
@media (max-width: 768px) {
    .hero {
        padding: 40px 15px;
        min-height: auto;
    }

    .hero-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .hero-content {
        text-align: center;
    }

    .hero-content h1 {
        font-size: 2.5rem;
        margin-bottom: 16px;
    }

    .hero-content .subtitle {
        font-size: 1.1rem;
        margin-bottom: 12px;
    }

    .hero-content .description {
        font-size: 0.95rem;
        margin-bottom: 24px;
    }

    .cta-group {
        justify-content: center;
        gap: 12px;
    }

    .btn {
        padding: 12px 24px;
        font-size: 0.9rem !important;
        width: 100%;
        justify-content: center;
    }

    .chat-mockup {
        border-radius: 16px;
    }

    .chat-header {
        padding: 16px 20px;
    }

    .avatar {
        width: 36px;
        height: 36px;
        font-size: 0.9rem;
    }

    .avatar::after {
        width: 10px;
        height: 10px;
    }

    .user-info h3 {
        font-size: 0.9rem;
    }

    .user-info p {
        font-size: 0.75rem;
    }

    .chat-action-btn {
        width: 36px !important;
        height: 36px !important;
        font-size: 0.9rem;
    }

    .chat-actions {
        gap: 6px;
    }

    .chat-actions button:last-child {
        display: none;
    }

    .pinned-message-banner {
        padding: 10px 16px;
        gap: 8px;
    }

    .pin-icon {
        font-size: 0.95rem;
    }

    .pinned-message-label {
        font-size: 0.7rem;
    }

    .pinned-message-text {
        font-size: 12px;
    }

    .close-pinned {
        width: 20px !important;
        height: 20px !important;
        font-size: 13px;
    }

    .chat-messages {
        padding: 16px;
        height: 300px;
    }

    .message {
        margin-bottom: 12px;
    }

    .message-bubble {
        padding: 12px 14px;
        font-size: 0.85rem;
    }

    .message-time {
        font-size: 0.7rem;
    }

    .voice-message {
        padding: 10px 12px;
        gap: 10px;
        max-width: 85%;
    }

    .voice-play-btn {
        width: 32px !important;
        height: 32px !important;
    }

    .wave-bar {
        height: 16px;
    }

    .voice-time {
        font-size: 0.8rem;
    }

    .chat-input {
        padding: 12px 16px;
        gap: 8px;
        flex-wrap: wrap;
    }

    .input-actions {
        gap: 6px;
    }

    .input-btn {
        width: 36px !important;
        height: 36px !important;
        font-size: 0.9rem;
    }

    .input-field {
        padding: 10px 12px;
        font-size: 0.85rem;
        min-width: 100%;
    }

    .chat-input .btn-primary {
        width: 100%;
        margin-top: 8px;
        padding: 10px 20px !important;
    }

    .section {
        padding: 60px 15px;
    }

    .section-header {
        margin-bottom: 40px;
    }

    .section-header h2,
    .popular-products-section .hdg {
        font-size: 2rem !important;
        margin-bottom: 16px;
    }

    .section-header p,
    .popular-products-section .section-subtitle {
        font-size: 1rem;
    }

    .features-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-top: 30px;
    }

    .feature-card {
        padding: 24px;
    }

    .feature-icon {
        width: 52px;
        height: 52px;
        font-size: 1.4rem;
        margin-bottom: 16px;
    }

    .feature-card h3 {
        font-size: 1.1rem;
        margin-bottom: 8px;
    }

    .feature-card p {
        font-size: 0.9rem;
    }

    .stats-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-top: 30px;
    }

    .stat-card {
        padding: 30px 20px;
    }

    .stat-value {
        font-size: 2.5rem;
    }

    .stat-label {
        font-size: 0.9rem;
    }

    .demo-showcase {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .premium-section {
        padding: 60px 15px;
    }

    .premium-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .premium-badge {
        padding: 6px 16px;
        font-size: 0.75rem;
        margin-bottom: 16px;
    }

    .premium-section h2 {
        font-size: 2rem !important;
        margin-bottom: 16px;
    }

    .premium-section p {
        font-size: 1rem;
        margin-bottom: 24px;
    }

    .premium-features {
        gap: 16px;
        margin-top: 24px;
    }

    .premium-feature {
        padding: 16px;
        gap: 12px;
    }

    .premium-feature i {
        font-size: 1.3rem;
    }

    .premium-feature strong {
        font-size: 0.95rem;
    }

    .premium-feature p {
        font-size: 0.85rem !important;
    }

    .demo-chat-window>div {
        padding: 40px 20px !important;
        min-height: 350px !important;
    }

    .demo-chat-window .live-call-badge {
        font-size: 0.75rem;
        padding: 6px 12px;
    }

    .demo-chat-window>div>div:first-of-type {
        gap: 12px !important;
    }

    .demo-chat-window i.bi-person-fill {
        font-size: 3rem !important;
    }

    .demo-chat-window>div>div:last-of-type {
        bottom: 20px;
        gap: 12px;
    }

    .demo-chat-window>div>div:last-of-type button {
        width: 48px !important;
        height: 48px !important;
    }

    .cta-section {
        padding: 60px 15px;
    }

    .cta-section h2 {
        font-size: 2rem;
        margin-bottom: 16px;
    }

    .cta-section>.container>p:first-of-type {
        font-size: 1rem !important;
        margin-bottom: 24px !important;
    }

    .cta-section>.container>p:last-of-type {
        font-size: 0.85rem;
        margin-top: 16px;
    }

    .popular-products-section .section-header {
        margin-bottom: 35px;
    }

    .popular-products-section .hdg {
        font-size: 1.8rem !important;
        margin-bottom: 10px !important;
    }

    .popular-products-section .section-subtitle {
        font-size: 0.95rem;
    }

    .recent-grids {
        border-radius: 12px !important;
    }

    .recent-grids:hover {
        transform: translateY(-2px) !important;
    }

    .recent-right {
        padding: 16px !important;
        gap: 10px !important;
    }

    .best2 a {
        font-size: 0.95rem !important;
    }

    .product-info-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        padding-top: 10px !important;
    }

    .block {
        justify-content: space-between !important;
    }

    .price-in1 {
        font-size: 1rem !important;
        text-align: right !important;
    }

    .product-badge {
        font-size: 0.7rem !important;
        padding: 5px 10px !important;
    }

    .product-tags {
        gap: 4px !important;
        margin-top: 6px !important;
    }

    .product-tag {
        font-size: 0.7rem !important;
        padding: 3px 8px !important;
    }

    .quick-view-btn {
        bottom: 12px !important;
        padding: 8px 20px !important;
        font-size: 0.85rem !important;
    }

    .popular-products-slider.owl-theme .owl-nav {
        position: static;
        justify-content: center;
        margin-top: 20px;
    }

    .popular-products-slider.owl-theme .owl-nav button {
        width: 40px !important;
        height: 40px !important;
        font-size: 1.1rem !important;
    }

    .popular-products-slider.owl-theme .owl-dots {
        margin-top: 20px;
    }

    .popular-products-slider.owl-theme .owl-dot {
        width: 6px !important;
        height: 6px !important;
    }

    .popular-products-slider.owl-theme .owl-dot.active {
        width: 20px !important;
    }

    .popular-products-slider.owl-theme .owl-stage-outer {
        padding: 10px 0px 15px !important;
    }

    .popular-products-slider.owl-theme .owl-item {
        padding: 0 5px !important;
    }

    .footer-grids {
        text-align: center;
    }

    .footer-grid {
        margin-bottom: 30px;
    }

    .footer-grid h4 {
        font-size: 1.1rem;
        margin-bottom: 16px;
    }

    .footer-grid ul li,
    .footer-grid p {
        font-size: 0.9rem;
    }

    .footer-contact-table {
        margin: 0 auto;
    }

    .social-icon {
        justify-content: center;
    }

    .copy-section {
        padding: 20px 15px;
    }

    .copy-section>.container {
        flex-direction: column;
        gap: 12px;
        text-align: center;
    }

    .copy-left,
    .copy-right {
        width: 100%;
    }

    .popular-products-slider.owl-theme .owl-item {
        height: 100%;
    }
}

/* ============================================ SMALL MOBILE (320px - 480px) ============================================ */
@media (max-width: 480px) {
    .hero-content h1 {
        font-size: 2rem;
    }

    .hero-content .subtitle {
        font-size: 1rem;
    }

    .hero-content .description {
        font-size: 0.9rem;
    }

    .section-header h2,
    .popular-products-section .hdg {
        font-size: 1.75rem !important;
    }

    .section-header p,
    .popular-products-section .section-subtitle {
        font-size: 0.95rem;
    }

    .btn {
        padding: 10px 20px;
        font-size: 0.85rem !important;
    }

    .chat-messages {
        height: 250px;
    }

    .feature-card {
        padding: 20px;
    }

    .stat-value {
        font-size: 2rem;
    }

    .premium-section h2,
    .cta-section h2 {
        font-size: 1.75rem !important;
    }

    .popular-products-section .hdg {
        font-size: 1.6rem !important;
    }

    .popular-products-section .section-subtitle {
        font-size: 0.9rem;
    }

    .recent-right {
        padding: 14px !important;
    }

    .best2 a {
        font-size: 0.9rem !important;
    }

    .price-in1 {
        font-size: 1rem !important;
    }

    .popular-products-slider.owl-theme .owl-nav button {
        width: 48px !important;
        height: 48px !important;
        font-size: 1.2rem !important;
    }
}

/* ============================================ LANDSCAPE MOBILE FIX ============================================ */
@media (max-width: 768px) and (orientation: landscape) {
    .hero {
        min-height: auto;
        padding: 40px 15px;
    }

    .chat-messages {
        height: 250px;
    }

    .section {
        padding: 50px 15px;
    }

    .recent-left {
        aspect-ratio: 16/9 !important;
    }
}

@media (max-width:900px) {
    .container.gallary .row {
        margin-left: 0;
    }
}

@media(max-width:800px) {

    .arrival-grid,
    .cap-left {
        float: left;
        width: 50%;
    }

    .arrival-grid:nth-child(3),
    .arrival-grid:nth-child(4) {
        margin-top: 0;
        margin-bottom: 2em;
    }
}

@media (max-width:767px) {
    .content {
        /* padding: 15px 0px 0px 0px !important; */
    }

    .grid_4 .col-md-8 p,
    .grid_4 .col-md-8 ol li {
        font-size: 14px !important;
    }

    .cd-hero__slider {
        height: calc(100vh - 40px);
    }

    .cd-hero__content h1 {
        font-size: 2rem;
    }

    .cd-hero__content p {
        font-size: 15px;
        line-height: 1.3;
    }
}

@media (max-width:600px) {
    .filter-search {
        position: relative;
        margin-bottom: 10px;
        margin-left: -15px;
        right: 0;
    }

    .arrival-grid,
    .cap-left {
        float: left;
        width: 100%;
    }

    .logo-nav-left img {
        height: 32px;
        margin: 15px 0 0 0px;
    }

    .logo-nav-left1 {
        margin-top: 0.3em;
    }

    .header-right2 {
        margin-top: 10px !important;
    }

    .arrival-grid:nth-child(2) {
        margin-top: 0;
        margin-bottom: 2em;
    }
}

.hero-content h1 {
    font-family: "Zalando Sans Expanded", sans-serif !important;
    font-size: 72px;
    font-weight: 800;
    color: white;
    line-height: 1.1;
    margin-bottom: 24px;
    letter-spacing: -0.02em;
}

.hero-content .subtitle {
    font-size: 24px;
}

.hero-content .description {
    font-size: 17.6px;
}

.btn {
    font-size: 16px !important;
}

.avatar {
    font-size: 17.6px;
}

.user-info h3 {
    font-size: 16px;
}

.user-info p {
    font-size: 13.6px;
}

.pin-icon {
    font-size: 17.6px;
}

.pinned-message-label {
    font-size: 12px;
}

.message-action-btn {
    font-size: 14.4px;
}

.forwarded-label {
    font-size: 12px;
}

.forwarded-label i {
    font-size: 13.6px;
}

.message-bubble {
    font-size: 15.2px;
}

.message-time {
    font-size: 12px;
}

.voice-time {
    font-size: 13.6px;
}

.input-field {
    font-size: 15.2px;
}

.section-header h2 {
    font-size: 56px;
}

.section-header p {
    font-size: 20px;
}

.feature-icon {
    font-size: 28.8px;
}

.feature-card h3 {
    font-size: 22.4px;
}

.premium-badge {
    font-size: 13.6px;
}

.premium-feature i {
    font-size: 24px;
}

.stat-value {
    font-size: 48px;
}

.cta-section h2 {
    font-size: 56px;
}

.product-badge {
    font-size: 12px !important;
}

.best2 a {
    font-size: 16.8px !important;
}

.block i {
    font-size: 14.4px !important;
}

.rating-count {
    font-size: 12.8px !important;
}

.price-in1 {
    font-size: 16px !important;
}

.quick-view-btn {
    font-size: 14.4px !important;
}

.product-tag {
    font-size: 12px !important;
}

/* ===== TABLET ===== */
@media (max-width: 1024px) and (min-width: 769px) {

    .hero-content h1 {
        font-size: 56px;
    }

    .hero-content .subtitle {
        font-size: 20.8px;
    }

    .hero-content .description {
        font-size: 16px;
    }

    .avatar {
        font-size: 16px;
    }

    .section-header h2,
    .popular-products-section .hdg {
        font-size: 44.8px !important;
    }

    .section-header p,
    .popular-products-section .section-subtitle {
        font-size: 17.6px;
    }

    .feature-icon {
        font-size: 24px;
    }

    .feature-card h3 {
        font-size: 19.2px;
    }

    .stat-value {
        font-size: 40px;
    }

    .premium-section h2 {
        font-size: 44.8px !important;
    }

    .cta-section h2 {
        font-size: 44.8px;
    }

    .popular-products-section .hdg {
        font-size: 35.2px !important;
    }

    .popular-products-section .section-subtitle {
        font-size: 16px;
    }

    .best2 a {
        font-size: 16px !important;
    }

    .price-in1 {
        font-size: 16px !important;
    }
}

/* ===== MOBILE ===== */
@media (max-width: 768px) {

    .hero-content h1 {
        font-size: 40px;
    }

    .hero-content .subtitle {
        font-size: 17.6px;
    }

    .hero-content .description {
        font-size: 15.2px;
    }

    .btn {
        font-size: 14.4px !important;
    }

    .avatar {
        font-size: 14.4px;
    }

    .user-info h3 {
        font-size: 14.4px;
    }

    .user-info p {
        font-size: 12px;
    }

    .chat-action-btn {
        font-size: 14.4px;
    }

    .pin-icon {
        font-size: 15.2px;
    }

    .pinned-message-label {
        font-size: 11.2px;
    }
}

/* ================================================================
   SINGLE PRODUCT PAGE — styles moved from inline <style>
   ================================================================ */
body.single .header {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100
}

.product-hero-section {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    overflow: hidden;
    background: #080c12
}

.hero-bg-layer {
    position: absolute;
    inset: 0;
    z-index: 0;
    background: radial-gradient(ellipse 70% 55% at 8% 15%, rgba(0, 136, 204, .22) 0%, transparent 60%), radial-gradient(ellipse 50% 45% at 92% 85%, rgba(255, 107, 53, .12) 0%, transparent 55%), linear-gradient(160deg, #080c12 0%, #0a1628 40%, #080c12 100%)
}

.hero-noise-layer {
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: .03;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E")
}

.hero-grid-layer {
    position: absolute;
    inset: 0;
    z-index: 1;
    background-image: linear-gradient(rgba(0, 136, 204, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 136, 204, .05) 1px, transparent 1px);
    background-size: 50px 50px;
    mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 40%, transparent 100%);
    -webkit-mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 40%, transparent 100%)
}

.hero-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(90px);
    z-index: 1;
    animation: orbFloat 10s ease-in-out infinite
}

.hero-orb-1 {
    width: 500px;
    height: 500px;
    background: rgba(0, 136, 204, .14);
    top: -150px;
    left: -120px;
    animation-delay: 0s
}

.hero-orb-2 {
    width: 350px;
    height: 350px;
    background: rgba(255, 107, 53, .08);
    bottom: -100px;
    right: 8%;
    animation-delay: -4s
}

.hero-orb-3 {
    width: 220px;
    height: 220px;
    background: rgba(251, 191, 36, .07);
    top: 35%;
    right: 3%;
    animation-delay: -7s
}

.hero-orb-4 {
    width: 180px;
    height: 180px;
    background: rgba(0, 136, 204, .1);
    bottom: 20%;
    left: 20%;
    animation-delay: -2s;
    animation-duration: 12s
}

@keyframes orbFloat {

    0%,
    100% {
        transform: translate(0, 0) scale(1)
    }

    25% {
        transform: translate(15px, -25px) scale(1.04)
    }

    50% {
        transform: translate(25px, 10px) scale(.97)
    }

    75% {
        transform: translate(-10px, 20px) scale(1.02)
    }
}

.hero-lines-layer {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
    pointer-events: none
}

.hero-line {
    position: absolute;
    width: 1px;
    height: 60%;
    background: linear-gradient(to bottom, transparent, rgba(0, 136, 204, .15), transparent);
    transform-origin: top center
}

.hero-line:nth-child(1) {
    left: 15%;
    top: 10%;
    transform: rotate(15deg);
    height: 40%;
    opacity: .5
}

.hero-line:nth-child(2) {
    left: 85%;
    top: 20%;
    transform: rotate(-10deg);
    height: 35%;
    opacity: .4
}

.hero-line:nth-child(3) {
    left: 50%;
    top: 5%;
    transform: rotate(5deg);
    height: 20%;
    opacity: .3
}

.product-hero-inner {
    position: relative;
    z-index: 2;
    width: 100%;
    padding: 160px 0 110px
}

.product-hero-grid {
    display: flex;
    gap: 40px;
    align-items: center
}

.product-hero-info {
    color: #fff;
    width: 50%
}

.product-hero-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 28px;
    font-size: .75rem;
    color: #8b949e;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-family: 'Open Sans', sans-serif
}

.product-hero-breadcrumb a {
    color: #8b949e !important;
    text-decoration: none !important;
    transition: color .2s
}

.product-hero-breadcrumb a:hover {
    color: #0088cc !important
}

.product-hero-breadcrumb .bc-sep {
    color: rgba(0, 136, 204, .4);
    font-size: .6rem
}

.product-hero-breadcrumb .bc-current {
    color: #0088cc
}

.product-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, rgba(0, 136, 204, .18), rgba(0, 136, 204, .06));
    border: 1px solid rgba(0, 136, 204, .35);
    color: #5bc4f5;
    padding: 7px 18px;
    border-radius: 50px;
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 22px;
    backdrop-filter: blur(12px);
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase
}

.pulse-dot {
    width: 7px;
    height: 7px;
    background: #0088cc;
    border-radius: 50%;
    box-shadow: 0 0 8px #0088cc;
    animation: pulse-dot 2s infinite;
    flex-shrink: 0
}

@keyframes pulse-dot {

    0%,
    100% {
        opacity: 1;
        box-shadow: 0 0 8px #0088cc
    }

    50% {
        opacity: .5;
        box-shadow: 0 0 18px #0088cc, 0 0 30px rgba(0, 136, 204, .3)
    }
}

.product-hero-title {
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif !important;
    font-size: clamp(2rem, 3.8vw, 3.4rem);
    font-weight: 800;
    color: #fff;
    line-height: 1.12;
    margin-bottom: 24px;
    letter-spacing: -.03em
}

.product-hero-title .title-highlight {
    background: linear-gradient(135deg, #4db8ff, #0088cc, #79d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    background-size: 200% 200%;
    animation: gradientShift 4s ease infinite
}

@keyframes gradientShift {

    0%,
    100% {
        background-position: 0% 50%
    }

    50% {
        background-position: 100% 50%
    }
}

.product-hero-meta {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 24px;
    flex-wrap: wrap
}

.product-hero-price-wrap {
    display: flex;
    align-items: baseline;
    gap: 4px
}

.price-currency {
    font-size: 1.4rem;
    font-weight: 700;
    color: rgba(255, 255, 255, .5);
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif
}

.product-hero-price {
    font-size: 3rem;
    font-weight: 800;
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif !important;
    color: #fff;
    line-height: 1;
    letter-spacing: -.04em
}

.product-hero-cat {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .1);
    color: #8b9eb0;
    padding: 6px 14px;
    border-radius: 6px;
    font-size: .8rem;
    font-weight: 500;
    font-family: 'Open Sans', sans-serif
}

.product-hero-rating {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px
}

.stars-display {
    display: flex;
    gap: 2px
}

.stars-display i {
    color: #fbbf24;
    font-size: .85rem
}

.rating-text {
    font-size: .82rem;
    color: #6e7f8d;
    font-family: 'Open Sans', sans-serif
}

.rating-divider {
    width: 1px;
    height: 14px;
    background: rgba(255, 255, 255, .1)
}

.product-hero-overview {
    color: #8b949e;
    font-size: 1rem;
    line-height: 1.8;
    margin-bottom: 36px;
    padding: 20px 24px;
    border-left: 3px solid rgba(0, 136, 204, .5);
    background: rgba(0, 136, 204, .04);
    border-radius: 0 10px 10px 0
}

.product-hero-cta {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 32px
}

.btn-add-cart {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 16px 36px;
    background: linear-gradient(135deg, #0088cc, #0066aa);
    color: #fff !important;
    font-weight: 700;
    font-size: 1rem;
    border-radius: 12px !important;
    border: none;
    cursor: pointer;
    text-decoration: none !important;
    transition: all .3s cubic-bezier(.4, 0, .2, 1);
    box-shadow: 0 8px 32px rgba(0, 136, 204, .4), inset 0 1px 0 rgba(255, 255, 255, .15);
    position: relative;
    overflow: hidden;
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif;
    letter-spacing: -.01em;
    height: 100% !important;
    width: fit-content !important
}

.btn-add-cart::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .15), transparent);
    transition: left .5s ease
}

.btn-add-cart:hover::before {
    left: 100%
}

.btn-add-cart:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 50px rgba(0, 136, 204, .5);
    background: linear-gradient(135deg, #009ae0, #0077bb)
}

.btn-add-cart-outline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 16px 28px;
    background: rgba(255, 255, 255, .04);
    color: #c8dae8 !important;
    font-weight: 600;
    font-size: 1rem;
    border-radius: 12px;
    border: 1px solid rgba(255, 255, 255, .12);
    cursor: pointer;
    text-decoration: none !important;
    transition: all .3s ease;
    backdrop-filter: blur(12px);
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif
}

.btn-add-cart-outline:hover {
    background: rgba(255, 255, 255, .08);
    border-color: rgba(0, 136, 204, .45);
    transform: translateY(-2px)
}

.trust-badges {
    display: flex;
    gap: 6px;
    flex-wrap: wrap
}

.trust-badge {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #5a6e7d;
    font-size: .78rem;
    font-weight: 500;
    background: rgba(255, 255, 255, .03);
    border: 1px solid rgba(255, 255, 255, .07);
    padding: 7px 12px;
    border-radius: 8px;
    transition: all .2s
}

.trust-badge:hover {
    background: rgba(0, 136, 204, .08);
    border-color: rgba(0, 136, 204, .2);
    color: #8bb8cc
}

.trust-badge i {
    color: #0088cc;
    font-size: .85rem
}

.product-hero-visual {
    position: relative;
    width: 50%
}

.product-image-card {
    background: rgba(15, 21, 32, .9);
    border: 1px solid rgba(0, 136, 204, .15);
    border-radius: 22px;
    overflow: visible;
    backdrop-filter: blur(20px);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, .04), 0 40px 100px rgba(0, 0, 0, .6), 0 0 120px rgba(0, 136, 204, .06);
    position: relative
}

.product-image-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 15%;
    right: 15%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .7), transparent);
    z-index: 1
}

.product-image-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 30%;
    right: 30%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .3), transparent)
}

.product-image-card-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 14px 20px;
    background: rgba(0, 0, 0, .4);
    border-bottom: 1px solid rgba(48, 54, 61, .5);
    border-radius: 22px 22px 0 0;
    position: relative;
    z-index: 2
}

.window-dot {
    width: 11px;
    height: 11px;
    border-radius: 50%
}

.window-dot:nth-child(1) {
    background: #ff5f57;
    box-shadow: 0 0 6px rgba(255, 95, 87, .4)
}

.window-dot:nth-child(2) {
    background: #febc2e;
    box-shadow: 0 0 6px rgba(254, 188, 46, .4)
}

.window-dot:nth-child(3) {
    background: #28c840;
    box-shadow: 0 0 6px rgba(40, 200, 64, .4)
}

.card-header-label {
    margin-left: auto;
    font-family: 'Open Sans', sans-serif;
    font-size: .7rem;
    color: rgba(255, 255, 255, .2);
    letter-spacing: .5px
}

.product-image-main-wrap {
    padding: 16px;
    border-radius: 0 0 22px 22px;
    overflow: hidden
}

.product-main-slider {
    border-radius: 12px;
    overflow: hidden;
    background: #0a0f1a
}

.product-main-slider .slick-slide img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    object-position: top center;
    border-radius: 10px;
    display: block;
    background: #fff
}

.product-main-slider .slick-prev,
.product-main-slider .slick-next {
    z-index: 10;
    width: 36px !important;
    height: 36px !important;
    background: rgba(0, 0, 0, .6) !important;
    border-radius: 50% !important;
    border: 1px solid rgba(255, 255, 255, .15) !important
}

.product-main-slider .slick-prev {
    left: 10px !important
}

.product-main-slider .slick-next {
    right: 10px !important
}

.product-main-slider .slick-prev:before,
.product-main-slider .slick-next:before {
    font-size: 20px !important;
    opacity: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100% !important;
    height: 100% !important
}

.product-nav-slider {
    margin-top: 10px;
    padding: 0 2px
}

.product-nav-slider .slick-slide {
    padding: 0 4px;
    cursor: pointer
}

.product-nav-slider .slick-slide img {
    width: 100%;
    height: 62px;
    object-fit: cover;
    object-position: top center;
    border-radius: 6px;
    display: block;
    background: #fff;
    border: 2px solid transparent;
    transition: border-color .2s, opacity .2s;
    opacity: .6
}

.product-nav-slider .slick-current img,
.product-nav-slider .slick-slide:hover img {
    border-color: #0088cc;
    opacity: 1
}

.product-stat-chip {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(8, 12, 18, .92);
    border: 1px solid rgba(0, 136, 204, .2);
    border-radius: 14px;
    padding: 10px 16px;
    backdrop-filter: blur(20px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, .5);
    z-index: 10;
    animation: chipFloat 5s ease-in-out infinite
}

.product-stat-chip-1 {
    top: -18px;
    left: -24px;
    animation-delay: 0s
}

.product-stat-chip-2 {
    bottom: -30px;
    right: -24px;
    animation-delay: -2.5s
}

@keyframes chipFloat {

    0%,
    100% {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-10px)
    }
}

.chip-icon {
    width: 36px;
    height: 36px;
    border-radius: 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    flex-shrink: 0
}

.chip-icon.blue {
    background: rgba(0, 136, 204, .2);
    color: #5bc4f5
}

.chip-icon.green {
    background: rgba(40, 200, 64, .15);
    color: #28c840
}

.chip-text-label {
    font-size: .65rem;
    color: #5a6e7d;
    line-height: 1;
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    letter-spacing: .5px
}

.chip-text-val {
    font-size: .92rem;
    font-weight: 700;
    color: #e6edf3;
    line-height: 1.5;
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif
}

.product-details-modern {
    background: #fff;
    padding: 0
}

.section-wave {
    display: block;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    background: #080c12
}

.section-wave svg {
    display: block
}

.product-details-header {
    text-align: center;
    padding: 80px 0 60px;
    position: relative
}

.product-details-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    height: 80px;
    background: linear-gradient(to bottom, rgba(0, 136, 204, .5), transparent)
}

.section-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #0088cc;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    margin-bottom: 16px;
    font-family: 'Open Sans', sans-serif
}

.section-eyebrow::before,
.section-eyebrow::after {
    content: '';
    width: 30px;
    height: 1px;
    background: rgba(0, 136, 204, .4)
}

.product-details-heading {
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif !important;
    font-size: clamp(1.8rem, 3vw, 2.6rem);
    font-weight: 800;
    color: #0d1117;
    letter-spacing: -.03em;
    margin-bottom: 0
}

.product-details-content-wrap {
    max-width: 920px;
    margin: 0 auto;
    padding: 0 20px 80px
}

.product-details-box {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 20px;
    overflow: hidden
}

.product-details-box-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 18px 28px;
    background: linear-gradient(135deg, #0d1117, #161b22);
    border-bottom: 1px solid rgba(48, 54, 61, .8)
}

.details-box-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%
}

.details-box-dot:nth-child(1) {
    background: #ff5f57
}

.details-box-dot:nth-child(2) {
    background: #febc2e
}

.details-box-dot:nth-child(3) {
    background: #28c840
}

.details-box-title {
    color: #6e7f8d;
    font-size: .78rem;
    margin-left: 8px;
    font-weight: 500;
    font-family: 'Open Sans', sans-serif
}

.product-details-body {
    padding: 40px
}

.product-details-body h1,
.product-details-body h2,
.product-details-body h3,
.product-details-body h4,
.product-details-body h5,
.product-details-body h6 {
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif !important;
    color: #0088cc !important;
    font-weight: 600 !important;
    margin-top: 20px !important;
    margin-bottom: 12px !important
}

.product-details-body h1 {
    font-size: 1.7rem !important
}

.product-details-body h2 {
    font-size: 1.5rem !important
}

.product-details-body h3 {
    font-size: 1.3rem !important
}

.product-details-body h4 {
    font-size: 1.15rem !important
}

.product-details-body h5,
.product-details-body h6 {
    font-size: 1rem !important
}

.product-details-body p {
    color: #374151 !important;
    font-size: 1rem !important
}

.product-details-body ul {
    padding-left: 0 !important;
    margin-bottom: 20px !important
}

.product-details-body ul li {
    list-style: none !important;
    position: relative;
    padding: 8px 0 8px 28px !important;
    color: #374151 !important;
    font-size: .97rem !important;
    border-bottom: 1px solid #f1f5f9
}

.product-details-body ul li:last-child {
    border-bottom: none
}

.product-details-body ul li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #0088cc;
    font-weight: 700;
    font-size: .9rem
}

.product-details-body a {
    color: #0088cc !important;
    font-weight: 600 !important;
    text-decoration: underline !important
}

.product-details-body a:hover {
    color: #006faa !important
}

.product-feature-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 36px
}

.feature-chip {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 16px;
    background: #e8f4fd;
    border: 1px solid rgba(0, 136, 204, .2);
    color: #0055aa;
    border-radius: 8px;
    font-size: .82rem;
    font-weight: 600;
    transition: all .2s
}

.feature-chip:hover {
    background: #0088cc;
    color: #fff;
    transform: translateY(-2px)
}

.cb_single-wl3 {
    padding: 0
}

@media(max-width:991px) {
    .product-hero-grid {
        flex-direction: column;
        gap: 60px
    }

    .product-hero-visual,
    .product-hero-info {
        width: 100%
    }

    .product-hero-inner {
        padding: 140px 0 70px
    }

    .product-stat-chip-1 {
        top: -10px;
        left: 0
    }

    .product-stat-chip-2 {
        bottom: 10px;
        right: 0
    }
}

@media(max-width:767px) {
    .product-hero-title {
        font-size: 1.8rem
    }

    .product-hero-price {
        font-size: 2.2rem
    }

    .btn-add-cart,
    .btn-add-cart-outline {
        width: 100% !important;
        justify-content: center
    }

    .product-details-body {
        padding: 24px
    }

    .product-details-header {
        padding: 60px 0 40px
    }

    .product-stat-chip {
        display: none
    }
}

@media(max-width:450px) {
    .product-details-content-wrap {
        padding: 0 0 60px
    }

    .trust-badge {
        width: 100%
    }
}


/* ================================================================
   PRODUCT LIST PAGES — Hero + Grid
   All with heavy overrides against style.css conflicts
   ================================================================ */

/* ── Hero ── */
.pl-hero {
    background: #080c12;
    position: relative;
    overflow: hidden;
    padding: 140px 0 90px;
    text-align: center;
}

.pl-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 60% 60% at 20% 50%, rgba(0, 136, 204, .2) 0%, transparent 60%),
        radial-gradient(ellipse 50% 50% at 80% 50%, rgba(14, 165, 233, .12) 0%, transparent 60%),
        linear-gradient(160deg, #080c12 0%, #0a1628 50%, #080c12 100%);
}

.pl-hero::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(0, 136, 204, .04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 136, 204, .04) 1px, transparent 1px);
    background-size: 50px 50px;
    mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 30%, transparent 100%);
    -webkit-mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 30%, transparent 100%);
}

.pl-hero-inner {
    position: relative;
    z-index: 2;
}

.pl-hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, rgba(0, 136, 204, .18), rgba(0, 136, 204, .06));
    border: 1px solid rgba(0, 136, 204, .35);
    color: #5bc4f5;
    padding: 6px 18px;
    border-radius: 50px;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 20px;
    font-family: 'Open Sans', sans-serif;
}

.pl-hero h1 {
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif !important;
    font-size: clamp(2rem, 5vw, 3.8rem);
    font-weight: 800;
    color: #fff !important;
    letter-spacing: -.03em;
    line-height: 1.1;
    margin-bottom: 16px;
}

.pl-hero h1 .hl {
    background: linear-gradient(135deg, #4db8ff, #0088cc, #79d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.pl-hero>.pl-hero-inner>p,
.pl-hero .pl-hero-inner p.pl-hero-desc {
    color: #8b949e !important;
    font-size: 1.05rem !important;
    line-height: 1.7 !important;
    max-width: 540px !important;
    margin: 0 auto 36px !important;
}

/* Override style.css input#filter-products — must be very specific */
.pl-hero #pl-search-input,
.pl-search-box #pl-search-input {
    width: 100% !important;
    padding: 13px 20px 13px 48px !important;
    background: rgba(255, 255, 255, .07) !important;
    border: 1px solid rgba(0, 136, 204, .25) !important;
    border-bottom: 1px solid rgba(0, 136, 204, .25) !important;
    border-radius: 14px !important;
    color: #e6edf3 !important;
    font-size: .95rem !important;
    font-family: 'Open Sans', sans-serif !important;
    outline: none !important;
    backdrop-filter: blur(12px) !important;
    transition: all .3s ease !important;
    box-shadow: none !important;
}

.pl-hero #pl-search-input::placeholder {
    color: #5a6e7d !important;
}

.pl-hero #pl-search-input:focus,
.pl-hero #pl-search-input:hover {
    border-color: rgba(0, 136, 204, .6) !important;
    background: rgba(255, 255, 255, .1) !important;
    box-shadow: 0 0 0 3px rgba(0, 136, 204, .1) !important;
    width: 100% !important;
}

.pl-search-wrap {
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 2;
}

.pl-search-box {
    position: relative;
    width: 100%;
    max-width: 500px;
}

.pl-search-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #5a6e7d;
    font-size: 1rem;
    pointer-events: none;
    z-index: 1;
}

.pl-wave {
    display: block;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    background: #080c12;
}

.pl-wave svg {
    display: block;
}

/* ── Filter tabs ── override style.css .categories.products ul li a */
.pl-grid-section .pl-filters {
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
    padding: 36px 20px 0 !important;
    text-align: center !important;
}

.pl-grid-section .pl-filters .pl-filter-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 9px 20px !important;
    border-radius: 10px !important;
    font-size: .84rem !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all .2s ease !important;
    font-family: 'Open Sans', sans-serif !important;
    background: #f1f5f9 !important;
    color: #475569 !important;
    border: 1px solid #e2e8f0 !important;
    border-bottom: 1px solid #e2e8f0 !important;
    text-decoration: none !important;
    float: none !important;
}

.pl-grid-section .pl-filters .pl-filter-btn:hover,
.pl-grid-section .pl-filters .pl-filter-btn.active {
    background: #0088cc !important;
    color: #fff !important;
    border-color: #0088cc !important;
    border-bottom-color: #0088cc !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 16px rgba(0, 136, 204, .3) !important;
}

/* ── Grid wrapper ── */
.pl-grid-section {
    background: #fff;
    padding-bottom: 80px;
}

.pl-grid-container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px;
}

.pl-grid-section .zero-product-error {
    display: none;
    text-align: center;
    padding: 60px 20px;
    color: #64748b;
    font-size: 1rem;
}

/* ════════════════════════════════════════════════
   THE CARD GRID — defeats .arrivals-grids flex,
   .col-md-4 float, .grid-arr min-height, .thumbnail
   ════════════════════════════════════════════════ */
/* .pl-card-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 28px !important;
    padding-top: 36px !important;
    flex-wrap: unset !important;
    margin-top: 0 !important;
    float: none !important;
    height: auto !important;
} */

/* Each card item — kill col-md-4 float + width */
/* .pl-card-grid .pl-card-item {
    width: auto !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: unset !important;
    min-height: unset !important;
    max-height: unset !important;
    display: block !important;
    position: initial !important;
    transform: none !important;
    perspective: none !important;
    transition: none !important;
    transform-style: initial !important;
} */

/* ── 1. Enable card grid (was commented out in new-style.css) ── */
.pl-card-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 28px !important;
    padding-top: 36px !important;
    /* Kill any legacy Bootstrap / style.css flow */
    flex-wrap: unset !important;
    margin-top: 0 !important;
    float: none !important;
    height: auto !important;
    /* Reset arrivals-grids row margin */
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* ── 2. Each card item — kill col-md-3 float + width ── */
.pl-card-grid .pl-card-item {
    width: auto !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: unset !important;
    min-height: unset !important;
    max-height: unset !important;
    height: auto !important;
    display: block;
    position: relative !important;
}

@media (max-width: 1024px) {
    .pl-card-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 22px !important;
    }
}

@media (max-width: 600px) {
    .pl-card-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
}

.pl-grid-section .new-arrivals-w3agile,
.pl-grid-section .arrivals-grids {
    display: block !important;
    float: none !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* The card box itself */
.pl-card-grid .pl-card-item .pl-card {
    background: #fff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    transition: all .3s cubic-bezier(.4, 0, .2, 1) !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    position: relative !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .06) !important;
    /* Reset all old card styles */
    min-height: unset !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
}

.pl-card-grid .pl-card-item .pl-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, .1) !important;
    border-color: rgba(0, 136, 204, .3) !important;
}

/* Image wrapper — fixed aspect ratio, no full-bleed */
.pl-card-grid .pl-card-item .pl-card .pl-img-wrap {
    position: relative !important;
    overflow: hidden !important;
    width: 100% !important;
    height: 200px !important;
    background: #f1f5f9 !important;
    display: block !important;
    float: none !important;
    margin: 0 !important;
    line-height: 0 !important;
    flex-shrink: 0 !important;
}

.pl-card-grid .pl-card-item .pl-card .pl-img-wrap a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    float: none !important;
    position: static !important;
    z-index: auto !important;
}

/* Override ALL image rules from style.css */
.pl-card-grid .pl-card-item .pl-card .pl-img-wrap img,
.pl-card-grid .pl-card-item .pl-card .pl-img-wrap a img {
    width: 100% !important;
    height: 200px !important;
    object-fit: cover !important;
    object-position: top center !important;
    display: block !important;
    transition: transform .4s ease !important;
    border: none !important;
    border-bottom: none !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
}

.pl-card-grid .pl-card-item .pl-card:hover .pl-img-wrap img {
    transform: scale(1.05) !important;
}

/* Price badge */
.pl-card-grid .pl-card-item .pl-card .pl-price-badge {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    left: auto !important;
    background: #0088cc !important;
    color: #fff !important;
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif !important;
    font-weight: 800 !important;
    font-size: .9rem !important;
    padding: 12px !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(0, 136, 204, .35) !important;
    z-index: 3 !important;
    width: auto !important;
    letter-spacing: -.02em !important;
}

/* Hover overlay */
.pl-card-grid .pl-card-item .pl-card .pl-img-overlay {
    position: absolute !important;
    bottom: 0px;
    width: 100%;
    background: linear-gradient(to top, rgba(8, 12, 18, .65) 0%, transparent 55%) !important;
    opacity: 0 !important;
    transition: opacity .3s ease !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    z-index: 2 !important;
}

.pl-card-grid .pl-card-item .pl-card:hover .pl-img-overlay {
    opacity: 1 !important;
}

.pl-card-grid .pl-card-item .pl-card .pl-img-overlay a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 12px 20px !important;
    background: rgba(255, 255, 255, .95) !important;
    color: #0088cc !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    border-radius: 9px 9px 0px 0px !important;
    text-decoration: none !important;
    font-family: 'Open Sans', sans-serif !important;
    border-bottom: none !important;
}

.pl-card-grid .pl-card-item .pl-card .pl-img-overlay a>i {
    font-size: 16px;
}

.pl-card-grid .pl-card-item .pl-card .pl-btn>i {
    font-size: 15px;
}

.pl-card-grid .pl-card-item .pl-card .pl-img-overlay a:hover {
    background: #0088cc !important;
    color: #fff !important;
}

/* Card body */
.pl-card-grid .pl-card-item .pl-card .pl-body {
    padding: 18px 20px 20px !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    margin-top: 0 !important;
    /* kills .grid-arr .women margin-top:-21px */
    background: #fff !important;
}

/* Category chip */
.pl-card-grid .pl-card-item .pl-card .pl-cat {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: .7rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #0088cc !important;
    background: #e8f4fd !important;
    border: 1px solid rgba(0, 136, 204, .2) !important;
    padding: 3px 9px !important;
    border-radius: 6px !important;
    margin-bottom: 9px !important;
    width: fit-content !important;
    font-family: 'Open Sans', sans-serif !important;
}

/* Title */
.pl-card-grid .pl-card-item .pl-card .pl-title {
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif !important;
    font-size: .97rem !important;
    font-weight: 700 !important;
    color: #0d1117 !important;
    line-height: 1.35 !important;
    margin: 0 0 8px 0 !important;
    letter-spacing: -.01em !important;
    text-decoration: none !important;
    display: block !important;
    transition: color .2s !important;
    /* Kill old .women h6 / .grid-arr .women h6 a */
    text-transform: none !important;
    font-size: .97rem !important;
}

.pl-card-grid .pl-card-item .pl-card .pl-title:hover {
    color: #0088cc !important;
}

/* Description */
.pl-card-grid .pl-card-item .pl-card .pl-desc {
    color: #64748b !important;
    font-size: .85rem !important;
    line-height: 1.6 !important;
    margin: 0 0 14px 0 !important;
    flex: 1 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

/* Footer */
.pl-card-grid .pl-card-item .pl-card .pl-footer {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding-top: 14px !important;
    margin-top: auto !important;
    border-top: 1px solid #f1f5f9 !important;
}

.pl-card-grid .pl-card-item .pl-card .pl-price {
    font-family: 'Zalando Sans Expanded', 'Open Sans', sans-serif !important;
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    color: #0088cc !important;
    letter-spacing: -.03em !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    font-style: normal !important;
}

.pl-card-grid .pl-card-item .pl-card .pl-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 7px 16px !important;
    background: linear-gradient(135deg, #0088cc, #0066aa) !important;
    color: #fff !important;
    font-weight: 600 !important;
    font-size: .8rem !important;
    border-radius: 9px !important;
    text-decoration: none !important;
    transition: all .2s ease !important;
    font-family: 'Open Sans', sans-serif !important;
    border: none !important;
    white-space: nowrap !important;
}

.pl-card-grid .pl-card-item .pl-card .pl-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(0, 136, 204, .4) !important;
    background: linear-gradient(135deg, #009ae0, #0077bb) !important;
    color: #fff !important;
}

/* ── Responsive ── */
@media(max-width:1024px) {
    .pl-card-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 22px !important;
    }

    .pl-hero {
        padding: 120px 0 70px;
    }
}

@media(max-width:600px) {
    .pl-card-grid {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .pl-hero {
        padding: 110px 0 60px;
    }

    .pl-hero h1 {
        font-size: 2rem !important;
    }

    .pl-filters {
        gap: 6px !important;
        padding: 24px 16px 0 !important;
    }

    .pl-filter-btn {
        padding: 7px 14px !important;
        font-size: .8rem !important;
    }

    .pl-grid-container {
        padding: 0 16px;
    }
}

/* ================================================================
   LEGACY SERVICE PAGES  —  custom-cms-experts / ecommerce-experts
   (and any other page using the same old wp-page-about-area template)
   These classes are already partly in style.css — these entries
   add the missing inline overrides so the <style> block can be removed.
   ================================================================ */

/* .card / .circle  — scoped inside .wp-page-about-area to avoid Bootstrap conflicts */
.wp-page-about-area .card {
    background-color: #f5f5f5;
    padding: 20px;
    border-radius: 6px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .1);
    margin-bottom: 20px;
}

.wp-page-about-area .card h3 {
    color: #0073b1;
    font-weight: bold;
    margin-top: 0;
}

.wp-page-about-area .card p {
    color: #777;
    margin-bottom: 0;
}

.wp-page-about-area .circle {
    width: 60px;
    height: 60px;
    background-color: #d4e6e2;
    border-radius: 50%;
    display: inline-block;
    text-align: center;
    line-height: 60px;
    margin-right: 20px;
}

.wp-page-about-area .circle .icon {
    border: 2px solid #0073b1;
    width: 20px;
    height: 20px;
    margin: 0 auto;
}

/* SVG colour overrides used in ecommerce-experts image */
g#Awning>g>g>polygon {
    fill: #0088cc !important;
}

g.leaves>g>path {
    fill: #a7cc00 !important;
    stroke: green;
}

/* Responsive */
@media (max-width: 768px) {
    .wp-page-about-area .circle {
        margin-bottom: 10px;
    }

    .wp-page-about-area .card {
        text-align: center;
    }

    .wp-page-about-area .card h3,
    .wp-page-about-area .card p {
        text-align: center;
    }
}

@media (max-width: 480px) {
    .wp-page-about-area .circle {
        width: 50px;
        height: 50px;
        line-height: 50px;
    }

    .wp-page-about-area .circle .icon {
        width: 15px;
        height: 15px;
    }
}

/* ================================================================
   SERVICES PAGE  —  services.php   (classes: srv-*)
   ================================================================ */

.services-page-wrap {
    background: #0a0a0f;
    min-height: 100vh;
    font-family: "Zalando Sans Expanded", sans-serif !important;
}

/* ---- Hero ---- */
.srv-hero {
    position: relative;
    background: #0a0a0f;
    overflow: hidden;
    padding: 100px 0 80px;
    text-align: center;
}

.srv-hero::before {
    content: '';
    position: absolute;
    top: -200px;
    left: 50%;
    transform: translateX(-50%);
    width: 900px;
    height: 500px;
    background: radial-gradient(ellipse at center, rgba(0, 136, 204, .35) 0%, rgba(0, 136, 204, .08) 40%, transparent 70%);
    pointer-events: none;
}

.srv-hero::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .4), transparent);
}

.srv-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(0, 136, 204, .12);
    border: 1px solid rgba(0, 136, 204, .3);
    border-radius: 50px;
    padding: 8px 20px;
    color: #0088cc;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 28px;
}

.srv-hero-badge span {
    width: 7px;
    height: 7px;
    background: #0088cc;
    border-radius: 50%;
    display: inline-block;
    animation: srv-blink 1.5s ease-in-out infinite;
}

@keyframes srv-blink {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.3;
    }
}

.srv-hero h1 {
    font-size: clamp(2.4rem, 5vw, 4rem) !important;
    font-weight: 800 !important;
    color: #fff !important;
    line-height: 1.15 !important;
    margin-bottom: 20px !important;
    letter-spacing: -0.02em;
}

.srv-hero h1 .highlight {
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.srv-hero p {
    color: rgba(255, 255, 255, .6) !important;
    font-size: 1.1rem !important;
    max-width: 600px;
    margin: 0 auto 40px !important;
    line-height: 1.7 !important;
}

.srv-hero-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #0088cc, #0065a0);
    color: #fff !important;
    padding: 15px 36px;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1rem;
    text-decoration: none !important;
    transition: all .3s ease;
    box-shadow: 0 0 30px rgba(0, 136, 204, .4);
}

.srv-hero-cta:hover {
    transform: translateY(-3px);
    box-shadow: 0 0 50px rgba(0, 136, 204, .6);
    color: #fff !important;
}

/* ---- Stats ---- */
.srv-stats {
    background: #0d0d14;
    border-top: 1px solid rgba(255, 255, 255, .06);
    border-bottom: 1px solid rgba(255, 255, 255, .06);
    padding: 36px 0;
}

.srv-stats-grid {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.srv-stat-item {
    flex: 1;
    min-width: 160px;
    text-align: center;
    padding: 20px 30px;
    position: relative;
}

.srv-stat-item:not(:last-child)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 20%;
    height: 60%;
    width: 1px;
    background: rgba(255, 255, 255, .08);
}

.srv-stat-val {
    font-size: 2.4rem;
    font-weight: 800;
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1;
    margin-bottom: 6px;
}

.srv-stat-label {
    color: rgba(255, 255, 255, .5);
    font-size: .85rem;
    font-weight: 500;
}

/* ---- Section ---- */
.srv-section {
    padding: 90px 0 70px;
}

.srv-section-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #0088cc;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.srv-section-label::before,
.srv-section-label::after {
    content: '';
    height: 1px;
    width: 40px;
    background: rgba(0, 136, 204, .5);
}

.srv-section h2 {
    font-size: clamp(1.8rem, 3.5vw, 2.8rem) !important;
    font-weight: 800 !important;
    color: #fff !important;
    text-align: center;
    margin-bottom: 14px !important;
    letter-spacing: -0.02em;
}

.srv-section p.sub {
    color: rgba(255, 255, 255, .55) !important;
    text-align: center;
    font-size: 1rem !important;
    max-width: 560px;
    margin: 0 auto 60px !important;
    line-height: 1.7 !important;
}

/* ---- Tabs ---- */
.srv-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-bottom: 50px;
}

button.srv-tab-btn {
    width: auto;
    height: auto;
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .1);
    color: rgba(255, 255, 255, .6);
    padding: 10px 22px;
    border-radius: 6px;
    font-size: .875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all .25s ease;
    font-family: "Zalando Sans Expanded", sans-serif !important;
}

button.srv-tab-btn:hover,
button.srv-tab-btn.active {
    background: rgba(0, 136, 204, .2);
    border-color: rgba(0, 136, 204, .5);
    color: #fff;
}

.srv-tab-content {
    display: none;
}

.srv-tab-content.active {
    display: block;
    animation: tabFadeIn .3s ease;
}

@keyframes tabFadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ---- Category blocks ---- */
.srv-cat-block {
    margin-bottom: 52px;
}

.srv-cat-block:last-child {
    margin-bottom: 0;
}

.srv-cat-title {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #0088cc;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    margin-bottom: 22px;
}

.srv-cat-title::before {
    content: '';
    width: 28px;
    height: 1px;
    background: rgba(0, 136, 204, .6);
    display: block;
}

.srv-cat-sep {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .05), transparent);
    margin: 46px 0;
}

/* ---- Featured grid ---- */
.srv-featured-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-bottom: 22px;
}

.srv-featured-card {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    padding: 40px 36px;
    display: flex;
    align-items: flex-start;
    gap: 26px;
    position: relative;
    overflow: hidden;
    transition: all .35s ease;
}

.srv-featured-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
    opacity: 0;
    transition: opacity .35s ease;
}

.srv-featured-card:hover {
    border-color: rgba(0, 136, 204, .3);
    transform: translateY(-4px);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .3);
}

.srv-featured-card:hover::before {
    opacity: 1;
}

.srv-featured-icon {
    width: 68px;
    height: 68px;
    min-width: 68px;
    background: linear-gradient(135deg, rgba(0, 136, 204, .2), rgba(0, 136, 204, .05));
    border: 1px solid rgba(0, 136, 204, .3);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.srv-featured-icon img {
    width: 42px !important;
    height: 42px !important;
    object-fit: contain;
}

.srv-featured-icon i {
    font-size: 1.8rem !important;
    color: #0088cc;
}

.srv-featured-content h3 {
    color: #fff !important;
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    margin-bottom: 10px !important;
}

.srv-featured-content p {
    color: rgba(255, 255, 255, .5) !important;
    font-size: .88rem !important;
    line-height: 1.6 !important;
    margin-bottom: 16px !important;
}

.srv-featured-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 4px;
}

/* ---- Regular cards ---- */
.srv-cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
    gap: 22px;
}

.srv-card {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    padding: 32px 28px;
    position: relative;
    overflow: hidden;
    transition: all .35s ease;
    cursor: pointer;
}

.srv-card::before {
    /* content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(0, 136, 204, .07) 0%, transparent 60%);
    opacity: 0;
    transition: opacity .35s ease;
    border-radius: 16px; */
}

.srv-card:hover {
    border-color: rgba(0, 136, 204, .35);
    transform: translateY(-6px);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .4), 0 0 0 1px rgba(0, 136, 204, .1);
}

.srv-card:hover::before {
    opacity: 1;
}

.srv-card-glow {
    position: absolute;
    top: -40px;
    right: -40px;
    width: 120px;
    height: 120px;
    background: radial-gradient(circle, rgba(0, 136, 204, .2) 0%, transparent 70%);
    border-radius: 50%;
    opacity: 0;
    transition: opacity .35s ease;
}

.srv-card:hover .srv-card-glow {
    opacity: 1;
}

.srv-card-icon {
    width: 54px;
    height: 54px;
    background: rgba(0, 136, 204, .12);
    border: 1px solid rgba(0, 136, 204, .2);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    transition: all .35s ease;
}

.srv-card:hover .srv-card-icon {
    background: rgba(0, 136, 204, .25);
    border-color: rgba(0, 136, 204, .5);
}

.srv-card-icon img {
    width: 32px !important;
    height: 32px !important;
    object-fit: contain;
}

.srv-card h3 {
    color: #fff !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    margin-bottom: 10px !important;
}

.srv-card p {
    color: rgba(255, 255, 255, .5) !important;
    font-size: .85rem !important;
    line-height: 1.65 !important;
    margin-bottom: 20px !important;
}

.srv-card-tag {
    display: inline-block;
    background: rgba(0, 136, 204, .12);
    border: 1px solid rgba(0, 136, 204, .2);
    color: #0088cc;
    font-size: .72rem;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 4px;
    margin-right: 5px;
    margin-bottom: 5px;
}

.srv-card-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #0088cc !important;
    font-size: .85rem;
    font-weight: 700;
    text-decoration: none !important;
    margin-top: 16px;
    transition: gap .2s ease;
}

.srv-card-link:hover {
    gap: 10px;
    color: #00b4ff !important;
}

/* ---- Process ---- */
.srv-process {
    background: #0d0d14;
    border-top: 1px solid rgba(255, 255, 255, .05);
    border-bottom: 1px solid rgba(255, 255, 255, .05);
    padding: 90px 0;
}

.srv-process-steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 2px;
    margin-top: 60px;
    position: relative;
}

.srv-process-steps::before {
    content: '';
    position: absolute;
    top: 38px;
    left: 10%;
    right: 10%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .4), transparent);
    z-index: 0;
}

.srv-step {
    text-align: center;
    padding: 40px 30px;
    position: relative;
    z-index: 1;
}

.srv-step-num {
    width: 56px;
    height: 56px;
    background: #0d0d14;
    border: 2px solid rgba(0, 136, 204, .4);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 1.1rem;
    color: #0088cc;
    margin: 0 auto 24px;
    position: relative;
    z-index: 2;
}

.srv-step h4 {
    color: #fff !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    margin-bottom: 10px !important;
}

.srv-step p {
    color: rgba(255, 255, 255, .45) !important;
    font-size: .85rem !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

/* ---- CTA ---- */
.srv-cta {
    padding: 100px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.srv-cta::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 800px;
    height: 400px;
    background: radial-gradient(ellipse, rgba(0, 136, 204, .15) 0%, transparent 65%);
    pointer-events: none;
}

.srv-cta h2 {
    font-size: clamp(2rem, 4vw, 3.2rem) !important;
    font-weight: 800 !important;
    color: #fff !important;
    margin-bottom: 20px !important;
    letter-spacing: -0.02em;
}

.srv-cta p {
    color: rgba(255, 255, 255, .55) !important;
    font-size: 1.05rem !important;
    max-width: 520px;
    margin: 0 auto 40px !important;
    line-height: 1.7 !important;
}

.srv-cta-btns {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}

.srv-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #0088cc, #0065a0);
    color: #fff !important;
    padding: 15px 36px;
    border-radius: 8px;
    font-weight: 700;
    font-size: .95rem;
    text-decoration: none !important;
    transition: all .3s ease;
    box-shadow: 0 0 30px rgba(0, 136, 204, .35);
}

.srv-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 0 50px rgba(0, 136, 204, .5);
    color: #fff !important;
}

.srv-btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: transparent;
    color: rgba(255, 255, 255, .75) !important;
    padding: 15px 36px;
    border-radius: 8px;
    font-weight: 600;
    font-size: .95rem;
    text-decoration: none !important;
    border: 1px solid rgba(255, 255, 255, .15);
    transition: all .3s ease;
}

.srv-btn-secondary:hover {
    border-color: rgba(255, 255, 255, .35);
    color: #fff !important;
    background: rgba(255, 255, 255, .05);
}

/* ---- Services responsive ---- */
@media (max-width: 1100px) {
    .srv-featured-grid {
        grid-template-columns: 1fr;
    }

    .srv-cards-grid {
        grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    }
}

@media (max-width: 992px) {
    .srv-hero {
        padding: 80px 0 60px;
    }

    .srv-section {
        padding: 70px 0 50px;
    }

    .srv-process {
        padding: 70px 0;
    }

    .srv-cta {
        padding: 80px 0;
    }

    .srv-process-steps {
        grid-template-columns: repeat(2, 1fr);
    }

    .srv-process-steps::before {
        display: none;
    }

    .srv-stat-item {
        padding: 16px 20px;
    }

    .srv-stat-val {
        font-size: 2rem;
    }
}

@media (max-width: 768px) {
    .srv-hero {
        padding: 60px 16px 50px;
    }

    .srv-hero h1 {
        font-size: clamp(1.75rem, 7vw, 2.5rem) !important;
        line-height: 1.2 !important;
    }

    .srv-hero p {
        font-size: .95rem !important;
        padding: 0 8px;
    }

    .srv-hero-cta {
        padding: 13px 28px;
        font-size: .95rem;
    }

    .srv-stats {
        padding: 24px 0;
    }

    .srv-stat-item {
        flex: 1 1 50%;
        min-width: 50%;
        padding: 18px 16px;
        border-bottom: 1px solid rgba(255, 255, 255, .06);
    }

    .srv-stat-item:not(:last-child)::after {
        display: none;
    }

    .srv-stat-item:nth-child(odd) {
        border-right: 1px solid rgba(255, 255, 255, .06);
    }

    .srv-stat-val {
        font-size: 1.75rem;
    }

    .srv-section {
        padding: 55px 0 40px;
    }

    .srv-section h2 {
        font-size: clamp(1.5rem, 6vw, 2.2rem) !important;
    }

    .srv-section p.sub {
        font-size: .9rem !important;
        margin-bottom: 40px !important;
        padding: 0 8px;
    }

    .srv-tabs {
        gap: 7px;
        margin-bottom: 36px;
    }

    button.srv-tab-btn {
        padding: 8px 16px;
        font-size: .8rem;
    }

    .srv-featured-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .srv-featured-card {
        flex-direction: column;
        padding: 26px 20px;
        gap: 18px;
    }

    .srv-featured-icon {
        width: 58px;
        height: 58px;
        min-width: 58px;
    }

    .srv-featured-content h3 {
        font-size: 1.1rem !important;
    }

    .srv-cards-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .srv-card {
        padding: 26px 22px;
    }

    .srv-cat-block {
        margin-bottom: 40px;
    }

    .srv-cat-sep {
        margin: 34px 0;
    }

    .srv-process {
        padding: 55px 0;
    }

    .srv-process-steps {
        grid-template-columns: 1fr 1fr;
        gap: 0;
        margin-top: 40px;
    }

    .srv-step {
        padding: 28px 18px;
        border: 1px solid rgba(255, 255, 255, .05);
    }

    .srv-cta {
        padding: 60px 16px;
    }

    .srv-cta h2 {
        font-size: clamp(1.6rem, 6vw, 2.4rem) !important;
    }

    .srv-cta p {
        font-size: .9rem !important;
        padding: 0 8px;
    }

    .srv-cta-btns {
        flex-direction: column;
        align-items: center;
        gap: 12px;
    }

    .srv-btn-primary,
    .srv-btn-secondary {
        width: 100%;
        max-width: 320px;
        justify-content: center;
        padding: 14px 28px;
    }
}

@media (max-width: 576px) {
    .srv-stat-item {
        flex: 1 1 100%;
        min-width: 100%;
        border-right: none !important;
    }

    .srv-stat-item:nth-child(odd) {
        border-right: none !important;
    }

    .srv-hero-badge {
        font-size: 11px;
        padding: 7px 14px;
    }

    .srv-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        justify-content: flex-start;
        padding-bottom: 6px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .srv-tabs::-webkit-scrollbar {
        display: none;
    }

    button.srv-tab-btn {
        white-space: nowrap;
        flex-shrink: 0;
    }

    .srv-process-steps {
        grid-template-columns: 1fr;
    }

    .srv-step {
        padding: 22px 14px;
    }

    .srv-featured-card {
        padding: 20px 16px;
    }

    .srv-featured-content h3 {
        font-size: 1rem !important;
    }

    .srv-card {
        padding: 22px 18px;
    }

    .srv-card-icon {
        width: 48px;
        height: 48px;
        margin-bottom: 16px;
    }

    .srv-card h3 {
        font-size: 1rem !important;
    }
}


/* ================================================================
   EXPERT PAGES  —  wordpress / shopify / social-engine / etc.
   Single shared class set  .exp-*  replaces individual prefixes
   (wpe- / shp- / se-  all renamed to  exp-  in the PHP files)
   ================================================================ */

.exp-page {
    background: #0a0a0f;
    font-family: "Zalando Sans Expanded", sans-serif !important;
    color: #fff;
}

/* ---- Hero ---- */
.exp-hero {
    position: relative;
    background: #0a0a0f;
    overflow: hidden;
    padding: 110px 0 90px;
    text-align: center;
}

.exp-hero::before {
    content: '';
    position: absolute;
    top: -220px;
    left: 50%;
    transform: translateX(-50%);
    width: 1000px;
    height: 560px;
    background: radial-gradient(ellipse at center, rgba(0, 136, 204, .30) 0%, rgba(0, 136, 204, .07) 45%, transparent 70%);
    pointer-events: none;
}

.exp-hero::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .4), transparent);
}

.exp-hero-particle {
    position: absolute;
    border-radius: 50%;
    background: rgba(0, 136, 204, .15);
    animation: exp-float linear infinite;
    pointer-events: none;
}

@keyframes exp-float {
    0% {
        transform: translateY(0) rotate(0deg);
        opacity: 0;
    }

    10% {
        opacity: 1;
    }

    90% {
        opacity: 1;
    }

    100% {
        transform: translateY(-300px) rotate(360deg);
        opacity: 0;
    }
}

.exp-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(0, 136, 204, .12);
    border: 1px solid rgba(0, 136, 204, .3);
    border-radius: 50px;
    padding: 8px 22px;
    color: #0088cc;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 30px;
}

.exp-hero-badge span {
    width: 7px;
    height: 7px;
    background: #0088cc;
    border-radius: 50%;
    display: inline-block;
    animation: exp-blink 1.5s ease-in-out infinite;
}

@keyframes exp-blink {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: 0.25;
    }
}

.exp-hero h1 {
    font-size: clamp(2.2rem, 5vw, 3.8rem) !important;
    font-weight: 800 !important;
    color: #fff !important;
    line-height: 1.15 !important;
    margin-bottom: 22px !important;
    letter-spacing: -0.02em;
}

.exp-hero h1 .exp-hl {
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.exp-hero .exp-hero-desc {
    color: rgba(255, 255, 255, .58) !important;
    font-size: 1.1rem !important;
    max-width: 620px;
    margin: 0 auto 44px !important;
    line-height: 1.75 !important;
}

.exp-hero-btns {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
}

.exp-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background: linear-gradient(135deg, #0088cc, #0065a0);
    color: #fff !important;
    padding: 15px 36px;
    border-radius: 8px;
    font-weight: 700;
    font-size: .95rem;
    text-decoration: none !important;
    transition: all .3s ease;
    box-shadow: 0 0 30px rgba(0, 136, 204, .35);
}

.exp-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 0 55px rgba(0, 136, 204, .6);
    color: #fff !important;
    text-decoration: none !important;
}

button.exp-btn-ghost {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .15);
    color: rgba(255, 255, 255, .85) !important;
    padding: 15px 36px;
    border-radius: 8px;
    font-weight: 600;
    font-size: .95rem;
    text-decoration: none !important;
    transition: all .3s ease;
}

button.exp-btn-ghost:hover {
    background: rgba(255, 255, 255, .1);
    border-color: rgba(0, 136, 204, .4);
    color: #fff !important;
    text-decoration: none !important;
}

/* ---- Stats bar ---- */
.exp-stats {
    background: #0d0d14;
    border-top: 1px solid rgba(255, 255, 255, .05);
    border-bottom: 1px solid rgba(255, 255, 255, .05);
    padding: 36px 0;
}

.exp-stats-grid {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.exp-stat-item {
    flex: 1;
    min-width: 150px;
    text-align: center;
    padding: 20px 28px;
    position: relative;
}

.exp-stat-item:not(:last-child)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 20%;
    height: 60%;
    width: 1px;
    background: rgba(255, 255, 255, .07);
}

.exp-stat-val {
    font-size: 2.2rem;
    font-weight: 800;
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1;
    margin-bottom: 6px;
}

.exp-stat-lbl {
    color: rgba(255, 255, 255, .48);
    font-size: .82rem;
    font-weight: 500;
}

/* ---- Shared section ---- */
.exp-section {
    padding: 90px 0 70px;
}

.exp-section-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #0088cc;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2.5px;
    text-transform: uppercase;
    margin-bottom: 14px;
}

.exp-section-label::before,
.exp-section-label::after {
    content: '';
    height: 1px;
    width: 36px;
    background: rgba(0, 136, 204, .5);
}

.exp-section h2 {
    font-size: clamp(1.7rem, 3.5vw, 2.7rem) !important;
    font-weight: 800 !important;
    color: #fff !important;
    text-align: center;
    margin-bottom: 14px !important;
    letter-spacing: -0.02em;
}

.exp-section .exp-sub {
    color: rgba(255, 255, 255, .52) !important;
    text-align: center;
    font-size: 1rem !important;
    max-width: 560px;
    margin: 0 auto 60px !important;
    line-height: 1.7 !important;
}

.exp-bg-alt {
    background: #0d0d14;
}

/* ---- Why / split layout ---- */
.exp-why-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px;
    align-items: center;
}

.exp-why-img {
    border-radius: 20px;
    overflow: hidden;
    position: relative;
}

.exp-why-img img {
    width: 100% !important;
    height: auto;
    display: block;
    border-radius: 20px;
}

.exp-why-img-badge {
    position: absolute;
    bottom: 24px;
    left: 24px;
    background: rgba(10, 10, 15, .9);
    border: 1px solid rgba(0, 136, 204, .3);
    border-radius: 12px;
    padding: 14px 18px;
    backdrop-filter: blur(12px);
}

.exp-why-img-badge .exp-badge-num {
    font-size: 1.8rem;
    font-weight: 800;
    color: #0088cc;
    line-height: 1;
}

.exp-why-img-badge .exp-badge-lbl {
    font-size: .72rem;
    color: rgba(255, 255, 255, .5);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: 2px;
}

.exp-why-content .exp-section-label {
    justify-content: flex-start;
}

.exp-why-content h2 {
    text-align: left !important;
}

.exp-why-content p {
    color: rgba(255, 255, 255, .52) !important;
    font-size: .95rem !important;
    line-height: 1.8 !important;
    margin-bottom: 28px !important;
}

.exp-why-checklist {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 36px;
}

.exp-why-item {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 10px;
    padding: 12px 16px;
    font-size: .88rem;
    color: rgba(255, 255, 255, .8);
    font-weight: 500;
    transition: all .25s ease;
}

.exp-why-item:hover {
    border-color: rgba(0, 136, 204, .3);
    background: rgba(0, 136, 204, .06);
}

.exp-why-item i {
    color: #0088cc;
    font-size: 1rem;
    flex-shrink: 0;
}

/* ---- Featured grid ---- */
.exp-featured-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
    margin-bottom: 22px;
}

.exp-featured-card {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    padding: 38px 34px;
    display: flex;
    align-items: flex-start;
    gap: 24px;
    position: relative;
    overflow: hidden;
    transition: all .35s ease;
}

.exp-featured-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
    opacity: 0;
    transition: opacity .35s ease;
}

.exp-featured-card:hover {
    border-color: rgba(0, 136, 204, .3);
    transform: translateY(-4px);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .35);
}

.exp-featured-card:hover::before {
    opacity: 1;
}

.exp-featured-icon {
    width: 66px;
    height: 66px;
    min-width: 66px;
    background: linear-gradient(135deg, rgba(0, 136, 204, .2), rgba(0, 136, 204, .04));
    border: 1px solid rgba(0, 136, 204, .28);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.exp-featured-icon img {
    width: 38px !important;
    height: 38px !important;
    object-fit: contain;
    filter: brightness(0) invert(1) sepia(1) saturate(2) hue-rotate(180deg);
}

.exp-featured-icon i {
    font-size: 1.8rem !important;
    color: #0088cc;
}

.exp-featured-content h3 {
    color: #fff !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    margin-bottom: 9px !important;
}

.exp-featured-content p {
    color: rgba(255, 255, 255, .5) !important;
    font-size: .87rem !important;
    line-height: 1.65 !important;
    margin-bottom: 0 !important;
}

/* ---- Regular cards ---- */
.exp-cards-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 22px;
}

.exp-card {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    padding: 30px 26px;
    position: relative;
    overflow: hidden;
    transition: all .35s ease;
    cursor: pointer;
}

.exp-card::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(0, 136, 204, .07) 0%, transparent 60%);
    opacity: 0;
    transition: opacity .35s ease;
    border-radius: 16px;
}

.exp-card:hover {
    border-color: rgba(0, 136, 204, .35);
    transform: translateY(-6px);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .4), 0 0 0 1px rgba(0, 136, 204, .1);
}

.exp-card:hover::before {
    opacity: 1;
}

.exp-card-glow {
    position: absolute;
    top: -40px;
    right: -40px;
    width: 120px;
    height: 120px;
    background: radial-gradient(circle, rgba(0, 136, 204, .2) 0%, transparent 70%);
    border-radius: 50%;
    opacity: 0;
    transition: opacity .35s ease;
}

.exp-card:hover .exp-card-glow {
    opacity: 1;
}

.exp-card-icon {
    width: 54px;
    height: 54px;
    background: rgba(0, 136, 204, .12);
    border: 1px solid rgba(0, 136, 204, .2);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    transition: all .35s ease;
}

.exp-card:hover .exp-card-icon {
    background: rgba(0, 136, 204, .25);
    border-color: rgba(0, 136, 204, .5);
}

.exp-card-icon img {
    width: 32px !important;
    height: 32px !important;
    object-fit: contain;
    filter: invert(1);
}

.exp-card-icon i {
    font-size: 1.4rem;
    color: #0088cc;
}

.exp-card h3 {
    color: #fff !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    margin-bottom: 10px !important;
}

.exp-card p {
    color: rgba(255, 255, 255, .5) !important;
    font-size: .84rem !important;
    line-height: 1.65 !important;
    margin-bottom: 18px !important;
}

.exp-card-tag {
    display: inline-block;
    background: rgba(0, 136, 204, .12);
    border: 1px solid rgba(0, 136, 204, .2);
    color: #0088cc;
    font-size: .72rem;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 4px;
    margin-right: 5px;
    margin-bottom: 5px;
}

.exp-card-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #0088cc !important;
    font-size: .85rem;
    font-weight: 700;
    text-decoration: none !important;
    margin-top: 14px;
    transition: gap .2s ease;
}

.exp-card-link:hover {
    gap: 10px;
    color: #00b4ff !important;
}

/* ---- Features grid ---- */
.exp-features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 20px;
}

.exp-feature-card {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    padding: 34px 28px;
    text-align: center;
    position: relative;
    overflow: hidden;
    transition: all .35s ease;
}

.exp-feature-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
    opacity: 0;
    transition: opacity .35s ease;
}

.exp-feature-card:hover {
    border-color: rgba(0, 136, 204, .3);
    transform: translateY(-5px);
    box-shadow: 0 16px 50px rgba(0, 0, 0, .35);
}

.exp-feature-card:hover::after {
    opacity: 1;
}

.exp-feature-icon-wrap {
    width: 72px;
    height: 72px;
    background: linear-gradient(135deg, rgba(0, 136, 204, .2), rgba(0, 136, 204, .05));
    border: 1px solid rgba(0, 136, 204, .25);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    transition: all .35s ease;
}

.exp-feature-card:hover .exp-feature-icon-wrap {
    background: linear-gradient(135deg, rgba(0, 136, 204, .35), rgba(0, 136, 204, .1));
    box-shadow: 0 0 30px rgba(0, 136, 204, .3);
}

.exp-feature-icon-wrap img {
    width: 38px !important;
    height: 38px !important;
    object-fit: contain;
    filter: brightness(0) invert(1) sepia(1) saturate(2) hue-rotate(180deg);
}

.exp-feature-icon-wrap i {
    font-size: 1.6rem;
    color: #0088cc;
}

.exp-feature-card h3 {
    color: #fff !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    margin-bottom: 10px !important;
    text-transform: uppercase;
    letter-spacing: .5px;
}

.exp-feature-card p {
    color: rgba(255, 255, 255, .48) !important;
    font-size: .86rem !important;
    line-height: 1.65 !important;
    margin: 0 !important;
}

/* ---- Process ---- */
.exp-process {
    background: #0d0d14;
    border-top: 1px solid rgba(255, 255, 255, .05);
}

.exp-process-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 22px;
    position: relative;
}

.exp-process-grid::before {
    content: '';
    position: absolute;
    top: 38px;
    left: 10%;
    right: 10%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .3), transparent);
    pointer-events: none;
}

.exp-process-card {
    /* background: #111118; */
    border: 1px solid rgba(255, 255, 255, .06);
    border-radius: 16px;
    padding: 36px 24px 30px;
    text-align: center;
    position: relative;
    transition: all .35s ease;
}

.exp-process-card:hover {
    border-color: rgba(0, 136, 204, .3);
    transform: translateY(-5px);
    box-shadow: 0 16px 50px rgba(0, 0, 0, .3);
}

.exp-process-num {
    width: 52px;
    height: 52px;
    background: linear-gradient(135deg, #0088cc, #0065a0);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    font-weight: 800;
    color: #fff;
    margin: 0 auto 20px;
    box-shadow: 0 0 24px rgba(0, 136, 204, .4);
    position: relative;
    z-index: 1;
}

.exp-process-card h3 {
    color: #0088cc !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    margin-bottom: 10px !important;
}

.exp-process-card p {
    color: rgba(255, 255, 255, .48) !important;
    font-size: .86rem !important;
    line-height: 1.65 !important;
    margin: 0 !important;
}

/* ---- CTA ---- */
.exp-cta {
    position: relative;
    overflow: hidden;
    text-align: center;
    padding: 90px 0;
    background: #0a0a0f;
}

.exp-cta::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 700px;
    height: 400px;
    background: radial-gradient(ellipse at center, rgba(0, 136, 204, .22) 0%, rgba(0, 136, 204, .05) 45%, transparent 70%);
    pointer-events: none;
}

.exp-cta h2 {
    font-size: clamp(1.8rem, 4vw, 3rem) !important;
    font-weight: 800 !important;
    color: #fff !important;
    margin-bottom: 16px !important;
    letter-spacing: -0.02em;
    position: relative;
    z-index: 1;
}

.exp-cta p {
    color: rgba(255, 255, 255, .55) !important;
    font-size: 1rem !important;
    max-width: 520px;
    margin: 0 auto 38px !important;
    line-height: 1.7 !important;
    position: relative;
    z-index: 1;
}

.exp-cta-btns {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    flex-wrap: wrap;
    position: relative;
    z-index: 1;
}

/* ---- Expert pages responsive ---- */
@media (max-width: 1100px) {
    .exp-why-grid {
        gap: 44px;
    }
}

@media (max-width: 992px) {
    .exp-why-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .exp-why-img {
        max-width: 480px;
        margin: 0 auto;
    }

    .exp-why-content h2 {
        text-align: center !important;
    }

    .exp-why-content .exp-section-label {
        justify-content: center;
    }

    .exp-featured-grid {
        grid-template-columns: 1fr;
    }

    .exp-process-grid::before {
        display: none;
    }
}

@media (max-width: 768px) {
    .exp-hero {
        padding: 80px 0 70px;
    }

    .exp-section {
        padding: 60px 0 50px;
    }

    .exp-why-checklist {
        grid-template-columns: 1fr;
    }

    .exp-stat-item {
        min-width: 120px;
        padding: 16px 18px;
    }

    .exp-stat-val {
        font-size: 1.8rem;
    }

    .exp-featured-card {
        flex-direction: column;
        gap: 16px;
    }
}

@media (max-width: 576px) {
    .exp-hero h1 {
        font-size: 2rem !important;
    }

    .exp-hero-btns {
        flex-direction: column;
        align-items: stretch;
    }

    .exp-btn-primary,
    .exp-btn-ghost {
        justify-content: center;
    }

    .exp-cards-grid {
        grid-template-columns: 1fr;
    }

    .exp-features-grid {
        grid-template-columns: 1fr;
    }

    .exp-process-grid {
        grid-template-columns: 1fr;
    }

    .exp-cta-btns {
        flex-direction: column;
        align-items: stretch;
    }
}

/* ================================================================
   EXP-* ADDITIONS — missing classes used in expert page pattern
   ================================================================ */

/* Checklist <li> items inside exp-why-checklist (wordpress-experts pattern) */
.exp-why-checklist li {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 10px;
    padding: 12px 16px;
    font-size: .88rem;
    color: rgba(255, 255, 255, .8);
    font-weight: 500;
    transition: all .25s ease;
    list-style: none;
}

.exp-why-checklist li::before {
    content: '\f00c';
    font-family: 'FontAwesome', sans-serif;
    color: #0088cc;
    font-size: .85rem;
    flex-shrink: 0;
}

.exp-why-checklist li:hover {
    border-color: rgba(0, 136, 204, .3);
    background: rgba(0, 136, 204, .06);
}

/* Tag pills used inside featured cards */
.exp-tag {
    display: inline-block;
    background: rgba(0, 136, 204, .12);
    border: 1px solid rgba(0, 136, 204, .2);
    color: #0088cc;
    font-size: .72rem;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 4px;
    margin-right: 5px;
    margin-bottom: 5px;
}

/* ================================================================
   SHARED: DARK PAGE HERO BANNER
   Used by: contact, portfolio, Carts, checkout, refund, terms, privacy
   ================================================================ */
.pg-hero {
    position: relative;
    background: #0a0a0f;
    overflow: hidden;
    padding: 90px 0 70px;
    text-align: center;
}

.pg-hero::before {
    content: '';
    position: absolute;
    top: -180px;
    left: 50%;
    transform: translateX(-50%);
    width: 800px;
    height: 440px;
    background: radial-gradient(ellipse at center, rgba(0, 136, 204, .30) 0%, rgba(0, 136, 204, .07) 45%, transparent 70%);
    pointer-events: none;
}

.pg-hero::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .4), transparent);
}

.pg-hero h1 {
    font-size: clamp(2rem, 5vw, 3.4rem) !important;
    font-weight: 800 !important;
    color: #fff !important;
    letter-spacing: -0.02em;
    margin: 0 !important;
    position: relative;
    z-index: 1;
}

.pg-hero h1 .pg-hl {
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.pg-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(0, 136, 204, .12);
    border: 1px solid rgba(0, 136, 204, .3);
    border-radius: 50px;
    padding: 6px 18px;
    color: #0088cc;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 20px;
    position: relative;
    z-index: 1;
}

.pg-hero-badge span {
    width: 6px;
    height: 6px;
    background: #0088cc;
    border-radius: 50%;
    display: inline-block;
    animation: srv-blink 1.5s ease-in-out infinite;
}

/* ================================================================
   POLICY / TEXT PAGES — refund, terms, privacy
   ================================================================ */
.pg-policy-wrap {
    background: #0a0a0f;
    min-height: 60vh;
    padding: 70px 0 80px;
}

.pg-policy-card {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    padding: 48px 52px;
    position: relative;
    overflow: hidden;
}

.pg-policy-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
}

.pg-policy-section {
    margin-bottom: 36px;
}

.pg-policy-section:last-child {
    margin-bottom: 0;
}

.pg-policy-section h3 {
    color: #0088cc !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 14px !important;
    display: flex;
    align-items: center;
    gap: 10px;
}

.pg-policy-section h3::before {
    content: '';
    width: 24px;
    height: 1px;
    background: rgba(0, 136, 204, .5);
    display: block;
}

.pg-policy-section p {
    color: rgba(255, 255, 255, .6) !important;
    font-size: .95rem !important;
    line-height: 1.8 !important;
    margin-bottom: 10px !important;
}

.pg-policy-section a {
    color: #0088cc !important;
    text-decoration: none !important;
}

.pg-policy-section a:hover {
    color: #00d4ff !important;
}

@media (max-width: 768px) {
    .pg-policy-card {
        padding: 30px 20px;
    }
}

/* ================================================================
   LOGIN PAGE
   ================================================================ */
.pg-login-wrap {
    background: #0a0a0f;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 80px 16px;
}

.pg-login-card {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 20px;
    padding: 52px 48px;
    width: 100%;
    max-width: 460px;
    position: relative;
    overflow: hidden;
}

.pg-login-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
}

.pg-login-card h3 {
    color: #fff !important;
    font-size: 1.8rem !important;
    font-weight: 800 !important;
    text-align: center;
    margin-bottom: 32px !important;
    letter-spacing: -0.02em;
}

.pg-login-card .key {
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 10px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 16px;
    margin-bottom: 16px;
    transition: border-color .25s ease;
}

.pg-login-card .key:focus-within {
    border-color: rgba(0, 136, 204, .5);
}

.pg-login-card .key i {
    color: #0088cc;
    font-size: .95rem;
    flex-shrink: 0;
}

.pg-login-card .key input {
    background: transparent !important;
    border: none !important;
    outline: none !important;
    color: #fff !important;
    font-size: .9rem;
    padding: 14px 0 !important;
    width: 100%;
    flex: 1;
}

.pg-login-card .key input::placeholder {
    color: rgba(255, 255, 255, .35);
}

.pg-login-card input[type="submit"] {
    width: 100%;
    background: linear-gradient(135deg, #0088cc, #0065a0) !important;
    color: #fff !important;
    border: none !important;
    padding: 14px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    font-size: .95rem !important;
    cursor: pointer;
    transition: all .3s ease;
    box-shadow: 0 0 26px rgba(0, 136, 204, .35);
    margin-top: 8px;
}

.pg-login-card input[type="submit"]:hover {
    transform: translateY(-2px);
    box-shadow: 0 0 45px rgba(0, 136, 204, .55);
}

.pg-login-forg {
    text-align: center;
    margin-top: 20px;
}

.pg-login-forg a {
    color: #0088cc !important;
    font-size: .88rem;
    text-decoration: none !important;
}

.pg-login-forg a:hover {
    color: #00d4ff !important;
}

@media (max-width: 576px) {
    .pg-login-card {
        padding: 36px 24px;
    }
}

/* ================================================================
   CONTACT PAGE
   ================================================================ */
.pg-contact-wrap {
    background: #0a0a0f;
    padding: 70px 0 80px;
}

.pg-contact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    max-width: 760px;
    margin: 0 auto;
}

.pg-contact-card {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    padding: 40px 32px;
    text-align: center;
    position: relative;
    overflow: hidden;
    transition: all .35s ease;
}

.pg-contact-card::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
    opacity: 0;
    transition: opacity .35s ease;
}

.pg-contact-card:hover {
    border-color: rgba(0, 136, 204, .3);
    transform: translateY(-5px);
    box-shadow: 0 16px 50px rgba(0, 0, 0, .35);
}

.pg-contact-card:hover::after {
    opacity: 1;
}

.pg-contact-icon {
    width: 62px;
    height: 62px;
    background: linear-gradient(135deg, rgba(0, 136, 204, .2), rgba(0, 136, 204, .05));
    border: 1px solid rgba(0, 136, 204, .3);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 18px;
    transition: all .35s ease;
}

.pg-contact-card:hover .pg-contact-icon {
    background: linear-gradient(135deg, rgba(0, 136, 204, .35), rgba(0, 136, 204, .1));
    box-shadow: 0 0 28px rgba(0, 136, 204, .3);
}

.pg-contact-icon i {
    color: #0088cc;
    font-size: 1.3rem;
}

.pg-contact-card h5 {
    color: #0088cc !important;
    font-size: .8rem !important;
    font-weight: 700 !important;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 10px !important;
}

.pg-contact-card p {
    color: rgba(255, 255, 255, .6) !important;
    font-size: .9rem !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}

.pg-contact-card a {
    color: rgba(255, 255, 255, .6) !important;
    text-decoration: none !important;
    transition: color .2s ease;
}

.pg-contact-card a:hover {
    color: #0088cc !important;
}

@media (max-width: 576px) {
    .pg-contact-grid {
        grid-template-columns: 1fr;
    }
}

/* ================================================================
   PORTFOLIO PAGE
   ================================================================ */
.pg-portfolio-wrap {
    background: #0a0a0f;
    padding: 60px 0 80px;
}

.pg-portfolio-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 20px;
}

.pg-portfolio-item {
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .07);
    position: relative;
    cursor: pointer;
    transition: all .35s ease;
}

.pg-portfolio-item:hover {
    border-color: rgba(0, 136, 204, .35);
    transform: translateY(-5px);
    box-shadow: 0 16px 50px rgba(0, 0, 0, .4);
}

.pg-portfolio-item img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover;
    display: block;
    transition: transform .4s ease;
}

.pg-portfolio-item:hover img {
    transform: scale(1.05);
}

.pg-portfolio-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 136, 204, .7) 0%, transparent 60%);
    opacity: 0;
    transition: opacity .35s ease;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 20px;
}

.pg-portfolio-item:hover .pg-portfolio-overlay {
    opacity: 1;
}

.pg-portfolio-overlay i {
    color: #fff;
    font-size: 1.4rem;
}

@media (max-width: 768px) {
    .pg-portfolio-grid {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
        gap: 14px;
    }
}

@media (max-width: 480px) {
    .pg-portfolio-grid {
        grid-template-columns: 1fr 1fr;
    }
}

/* ================================================================
   CART & CHECKOUT PAGES
   ================================================================ */
.pg-cart-wrap {
    background: #0a0a0f;
    padding: 60px 0 80px;
}

.pg-cart-table-wrap {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 28px;
}

.pg-cart-table-wrap table {
    margin: 0 !important;
}

.pg-cart-table-wrap thead th {
    background: rgba(0, 136, 204, .1) !important;
    color: #0088cc !important;
    font-size: .78rem !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    padding: 16px 20px !important;
    border: none !important;
}

.pg-cart-table-wrap tbody td,
.pg-cart-table-wrap tfoot th {
    color: rgba(255, 255, 255, .75) !important;
    background: transparent !important;
    padding: 14px 20px !important;
    border-color: rgba(255, 255, 255, .06) !important;
    vertical-align: middle;
}

.pg-cart-table-wrap tfoot th {
    font-weight: 700 !important;
}

.pg-cart-table-wrap tfoot tr:last-child th {
    color: #fff !important;
    font-size: 1.05rem !important;
}

.pg-cart-total-box {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    padding: 28px 32px;
}

.pg-cart-total-box h2 {
    color: #fff !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    margin-bottom: 18px !important;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.pg-qty-wrap {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 8px;
    overflow: hidden;
}

.pg-qty-wrap button {
    background: rgba(255, 255, 255, .06) !important;
    border: none !important;
    color: #fff !important;
    width: 34px;
    height: 34px;
    font-size: 1.1rem;
    cursor: pointer;
    transition: background .2s ease;
}

.pg-qty-wrap button:hover {
    background: rgba(0, 136, 204, .2) !important;
}

.pg-qty-wrap input {
    background: transparent !important;
    border: none !important;
    color: #fff !important;
    text-align: center;
    width: 80px;
    height: 34px;
    font-size: 15px;
    padding-left: 10px;
}

.pg-del-btn {
    color: rgba(255, 100, 100, .7) !important;
    font-size: 1rem;
    transition: color .2s ease;
    text-decoration: none !important;
    display: inline-block;
}

.pg-del-btn:hover {
    color: #ff4444 !important;
}

.pg-empty-cart {
    background: rgba(0, 136, 204, .06);
    border: 1px solid rgba(0, 136, 204, .2);
    border-radius: 12px;
    padding: 40px 32px;
    text-align: center;
}

.pg-empty-cart i {
    font-size: 2.8rem;
    color: #0088cc;
    margin-bottom: 16px;
    display: block;
}

.pg-empty-cart .pg-return-link>i {
    font-size: 1.5rem;
    margin-bottom: 0px;
}

.pg-return-link:hover>i {
    color: #00d4ff !important;
}

.pg-empty-cart p {
    color: rgba(255, 255, 255, .6) !important;
    margin: 0 0 20px !important;
}

.pg-return-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #0088cc !important;
    font-weight: 600;
    text-decoration: none !important;
    transition: gap .2s ease;
}

.pg-return-link:hover {
    gap: 12px;
    color: #00d4ff !important;
}

/* Checkout specific */
.pg-checkout-wrap {
    background: #0a0a0f;
    padding: 50px 0 80px;
}

.pg-checkout-section {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    padding: 36px 40px;
    margin-bottom: 24px;
}

.pg-checkout-section h2 {
    color: #fff !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    margin-bottom: 24px !important;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, .07);
}

.pg-checkout-section label {
    color: rgba(255, 255, 255, .7) !important;
    font-size: .85rem !important;
    font-weight: 600 !important;
    margin-bottom: 6px !important;
    display: block;
}

.pg-checkout-section .form-control {
    background: rgba(255, 255, 255, .04) !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 11px 14px !important;
    font-size: .9rem !important;
    transition: border-color .25s ease !important;
}

.pg-checkout-section .form-control:focus {
    border-color: rgba(0, 136, 204, .5) !important;
    box-shadow: none !important;
    outline: none !important;
}

.pg-checkout-section select.form-control option {
    background: #111118;
    color: #fff;
}

.pg-checkout-section small.txt {
    color: rgba(255, 255, 255, .35) !important;
    font-size: .75rem !important;
}

.pg-login-notice {
    background: rgba(0, 136, 204, .06);
    border: 1px solid rgba(0, 136, 204, .2);
    border-radius: 10px;
    padding: 14px 20px;
    margin-bottom: 24px;
    color: rgba(255, 255, 255, .7) !important;
    font-size: .9rem;
}

.pg-login-notice a {
    color: #0088cc !important;
    font-weight: 700;
}

.pg-payment-icons {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
    margin: 16px 0;
}

.pg-payment-icons img {
    height: 28px;
    opacity: .8;
}

.pg-payment-icons small {
    color: rgba(255, 255, 255, .4) !important;
    font-size: .75rem;
    letter-spacing: 1px;
    text-transform: uppercase;
    display: block;
    width: 100%;
    margin-bottom: 8px;
}

/* ================================================================
   USER DASHBOARD — purchased, history, downloads, edit
   ================================================================ */
.pg-dash-hero {
    background: linear-gradient(135deg, #0a0a0f 0%, #0d1520 100%);
    border-bottom: 1px solid rgba(0, 136, 204, .15);
    padding: 32px 0;
}

.pg-dash-hero h2 {
    color: #fff !important;
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    margin: 0 !important;
}

.pg-dash-hero h2 span {
    color: #0088cc;
}

.pg-dash-wrap {
    background: #0a0a0f;
    min-height: 60vh;
    padding: 40px 0 80px;
}

.pg-dash-sidebar {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 24px;
}

.pg-dash-sidebar>.nav-tabs>li {
    width: 100%;
}

.pg-period-box {
    background: rgba(0, 136, 204, .06);
    border-top: 1px solid rgba(0, 136, 204, .15);
    padding: 20px 24px;
}

.pg-period-box h4 {
    color: #0088cc !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 10px !important;
}

.pg-period-box p,
.pg-period-box div {
    color: rgba(255, 255, 255, .6) !important;
    font-size: 10px !important;
}

.pg-dash-content {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    overflow: hidden;
}

.pg-dash-sidebar>.nav-tabs>li>a>i {
    color: #fff;
}

.pg-dash-sidebar>.nav-tabs>li>a {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    padding: 14px 15px;
    line-height: normal;
    border: none !important;
    outline: none !important;
    border-radius: 0px !important;
    font-size: 14px;
    font-weight: 600;
    margin-right: 0px;
}

.pg-dash-sidebar>.nav-tabs>li.active>a,
.pg-dash-sidebar>.nav-tabs>li:hover>a {
    background: linear-gradient(135deg, #0088cc, #0065a0) !important;
    color: #fff !important;
}

/* Stat cards */
.pg-stat-cards {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 24px;
}

.pg-stat-card {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 14px;
    padding: 24px;
    text-align: center;
    transition: all .3s ease;
    position: relative;
    overflow: hidden;
}

.pg-stat-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
}

.pg-stat-card:hover {
    border-color: rgba(0, 136, 204, .3);
    transform: translateY(-3px);
}

.pg-stat-card h3 {
    font-size: 3rem !important;
    font-weight: 800 !important;
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    margin-bottom: 6px !important;
}

.pg-stat-card h5 {
    color: rgba(255, 255, 255, .5) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin: 0 !important;
}

.pg-stat-card-footer {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid rgba(255, 255, 255, .06);
}

.pg-stat-card-footer a {
    color: #0088cc !important;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none !important;
}

/* Dashboard tables */
.pg-dash-table {
    margin: 0 !important;
}

.pg-dash-table thead th {
    background: rgba(0, 136, 204, .08) !important;
    color: #0088cc !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 14px 20px !important;
    border: none !important;
    white-space: nowrap;
}

.pg-dash-table tbody tr {
    transition: background .2s ease;
}

.pg-dash-table tbody tr:hover {
    background: rgba(255, 255, 255, .02) !important;
}

.pg-dash-table tbody td {
    color: rgba(255, 255, 255, .7) !important;
    background: transparent !important;
    padding: 13px 20px !important;
    border-color: rgba(255, 255, 255, .05) !important;
    vertical-align: middle;
    font-size: 0.88rem !important;
}

.pg-dash-table tbody td a {
    color: #ffffff !important;
    text-decoration: none !important;
    background-color: #0088cc !important;
    padding: 5px 10px;
    border-radius: 6px;
}

.pg-dash-table tbody td a:hover {
    color: #ffffff !important;
    background-color: #00d4ff !important;
}

/* Profile info table */
.pg-profile-table {
    margin: 0 !important;
}

.pg-profile-table th {
    color: rgba(255, 255, 255, .45) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 12px 20px !important;
    border-color: rgba(255, 255, 255, .05) !important;
    background: transparent !important;
    white-space: nowrap;
    width: 200px;
}

.pg-profile-table td {
    color: rgba(255, 255, 255, .8) !important;
    font-size: 12px !important;
    padding: 12px 20px !important;
    border-color: rgba(255, 255, 255, .05) !important;
    background: transparent !important;
}

/* Edit profile form */
.pg-edit-form {
    padding: 32px 36px;
}

.pg-edit-form label {
    color: rgba(255, 255, 255, .65) !important;
    font-size: .83rem !important;
    font-weight: 600 !important;
    margin-bottom: 6px !important;
    display: block;
}

.pg-edit-form .form-control {
    background: rgba(255, 255, 255, .04) !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 10px 14px !important;
    transition: border-color .25s ease !important;
}

.pg-edit-form .form-control:focus {
    border-color: rgba(0, 136, 204, .5) !important;
    box-shadow: none !important;
    outline: none !important;
}

.pg-edit-form select.form-control option {
    background: #111118;
    color: #fff;
}

.pg-edit-form .btn-submit {
    background: linear-gradient(135deg, #0088cc, #0065a0) !important;
    color: #fff !important;
    border: none !important;
    padding: 12px 32px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    font-size: .9rem !important;
    cursor: pointer !important;
    transition: all .3s ease !important;
    box-shadow: 0 0 24px rgba(0, 136, 204, .3);
    margin-top: 8px;
}

.pg-edit-form .btn-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 0 40px rgba(0, 136, 204, .5) !important;
}

.pg-edit-form .form-control::placeholder {
    color: #646464;
}

/* Download button */
.pg-dl-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: linear-gradient(135deg, #0088cc, #0065a0);
    color: #fff !important;
    padding: 7px 16px;
    border-radius: 6px;
    font-size: .8rem;
    font-weight: 700;
    text-decoration: none !important;
    transition: all .3s ease;
    box-shadow: 0 0 16px rgba(0, 136, 204, .3);
    white-space: nowrap;
}

.pg-dl-btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 0 28px rgba(0, 136, 204, .5);
    color: #fff !important;
}

/* Alerts for dark theme */
.pg-alert {
    border-radius: 10px;
    padding: 16px 20px;
    margin-bottom: 20px;
    font-size: .9rem;
}

.pg-alert-info {
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .25);
    color: rgba(255, 255, 255, .75) !important;
}

.pg-alert-success {
    background: rgba(0, 200, 100, .08);
    border: 1px solid rgba(0, 200, 100, .25);
    color: rgba(255, 255, 255, .75) !important;
}

.pg-alert-danger {
    background: rgba(220, 50, 50, .08);
    border: 1px solid rgba(220, 50, 50, .25);
    color: rgba(255, 255, 255, .75) !important;
}

.pg-alert a {
    color: #0088cc !important;
}

.pg-alert i {
    margin-right: 8px;
}

.cb_account_table_wrap .pg-edit-form label {
    font-size: 13px !important;
    font-weight: 500 !important;
}

.cb_account_table_wrap .pg-edit-form .form-control {
    font-size: 13px !important;
}

.cb_account_table_wrap .pg-edit-form .btn-submit {
    font-size: 14px !important;
    font-weight: 500 !important;
}

.cb_account_table_wrap .pg-dash-table tbody td {
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: normal;
    letter-spacing: 0;
}

.cb_account_table_wrap .pg-dash-table thead th {
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: normal;
    letter-spacing: 0;
}

.cb_account_table_wrap .pg-dash-table tbody td a {
    background-color: transparent !important;
    font-size: 12px;
    font-weight: 500;
}

.cb_account_table_wrap .pg-alert {
    font-size: 12px;
}

.cb_account_table_wrap .containerRB input {
    opacity: 1;
}

/* Dashboard responsive */
@media (max-width: 768px) {
    .pg-stat-cards {
        grid-template-columns: 1fr;
    }

    .pg-checkout-section {
        padding: 24px 20px;
    }

    .pg-edit-form {
        padding: 24px 16px;
    }

    .pg-dash-table thead th {
        font-size: .7rem !important;
        padding: 12px 10px !important;
    }

    .pg-dash-table tbody td {
        padding: 10px 10px !important;
    }

    .pg-profile-table th,
    .pg-profile-table td {
        padding: 10px 14px !important;
    }
}


/* ================================================================
   ABOUT PAGE — about.php
   ================================================================ */

/* About hero section */
.about-section-wrap {
    background: #0a0a0f;
}

/* Main about split section */
.about-wrap {
    background: #0a0a0f;
    padding: 80px 0 60px;
}

.about-wrap .about-content {
    padding-right: 20px;
}

.about-wrap .content-title h2 {
    color: #fff !important;
    font-size: clamp(1.5rem, 3vw, 2.2rem) !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    margin-bottom: 20px !important;
}

.about-wrap .content-title p {
    color: rgba(255, 255, 255, .6) !important;
    font-size: .95rem !important;
    line-height: 1.8 !important;
    margin-bottom: 28px !important;
}

/* Progress bars dark theme */
.progressbar-wrap {
    margin-top: 24px;
}

.progress-text {
    display: flex;
    justify-content: space-between;
    margin-bottom: 6px;
}

.progress-text strong {
    color: rgba(255, 255, 255, .75) !important;
    font-size: .78rem !important;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.progress-text span {
    color: #0088cc !important;
    font-size: .78rem;
    font-weight: 700;
}

.about-wrap .progress {
    background: rgba(255, 255, 255, .08) !important;
    border-radius: 50px !important;
    height: 6px !important;
    margin-bottom: 18px;
    overflow: visible !important;
}

.about-wrap .progress-bar {
    background: linear-gradient(90deg, #0088cc, #00d4ff) !important;
    border-radius: 50px !important;
    position: relative;
    box-shadow: 0 0 12px rgba(0, 136, 204, .5);
}

/* About image */
.about-img-wrap {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
}

.about-img-wrap::before {
    content: '';
    position: absolute;
    inset: 0;
    border: 1px solid rgba(0, 136, 204, .2);
    border-radius: 20px;
    z-index: 1;
    pointer-events: none;
}

.about-img-wrap img {
    width: 100% !important;
    height: auto !important;
    display: block;
    border-radius: 20px;
    filter: brightness(.92);
    transition: filter .4s ease;
}

.about-img-wrap:hover img {
    filter: brightness(1);
}

/* Why Choose / feature cards section */
.why-chose-about-wrap {
    background: #0d0d14;
    padding: 60px 0 80px;
    border-top: 1px solid rgba(255, 255, 255, .05);
}

.why-chose-about-wrap .about-content {
    padding-left: 24px;
}

.why-chose-about-wrap .content-title h2 {
    color: #fff !important;
    font-size: clamp(1.4rem, 2.8vw, 2rem) !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    margin-bottom: 14px !important;
}

.why-chose-about-wrap .content-title>p {
    color: rgba(255, 255, 255, .55) !important;
    font-size: .93rem !important;
    line-height: 1.75 !important;
    margin-bottom: 28px !important;
}

/* Feature cards inside about */
.about-wrap .feature-card,
.why-chose-about-wrap .feature-card {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    background: rgba(255, 255, 255, .03);
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 14px;
    padding: 20px 22px;
    margin-bottom: 16px;
    transition: all .3s ease;
    position: relative;
    overflow: hidden;
}

.about-wrap .feature-card::before,
.why-chose-about-wrap .feature-card::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 2px;
    background: linear-gradient(to bottom, transparent, #0088cc, transparent);
    opacity: 0;
    transition: opacity .3s ease;
}

.about-wrap .feature-card:hover,
.why-chose-about-wrap .feature-card:hover {
    border-color: rgba(0, 136, 204, .3);
    background: rgba(0, 136, 204, .05);
    transform: translateX(4px);
}

.about-wrap .feature-card:hover::before,
.why-chose-about-wrap .feature-card:hover::before {
    opacity: 1;
}

.about-wrap .feature-icon,
.why-chose-about-wrap .feature-icon {
    width: 48px;
    height: 48px;
    min-width: 48px;
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .25);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s ease;
}

.about-wrap .feature-card:hover .feature-icon,
.why-chose-about-wrap .feature-card:hover .feature-icon {
    background: rgba(0, 136, 204, .2);
    box-shadow: 0 0 20px rgba(0, 136, 204, .3);
}

.about-wrap .feature-icon svg,
.why-chose-about-wrap .feature-icon svg {
    width: 24px !important;
    height: 24px !important;
    fill: #0088cc !important;
}

/* Override inline SVG fill colours */
.about-wrap .feature-icon svg path,
.why-chose-about-wrap .feature-icon svg path {
    fill: #0088cc !important;
}

.about-wrap .feature-icon svg .blueprint_een,
.why-chose-about-wrap .feature-icon svg .blueprint_een {
    fill: #0088cc !important;
}

.about-wrap .feature-icon svg .st0,
.why-chose-about-wrap .feature-icon svg .st0 {
    fill: #0088cc !important;
}

.about-wrap .feature-text h4,
.why-chose-about-wrap .feature-text h4 {
    color: #fff !important;
    font-size: .95rem !important;
    font-weight: 700 !important;
    margin-bottom: 6px !important;
}

.about-wrap .feature-text p,
.why-chose-about-wrap .feature-text p {
    color: rgba(255, 255, 255, .55) !important;
    font-size: .85rem !important;
    line-height: 1.65 !important;
    margin: 0 !important;
}

@media (max-width: 768px) {
    .about-wrap {
        padding: 50px 0 40px;
    }

    .about-wrap .about-content {
        padding-right: 0;
        margin-bottom: 32px;
    }

    .why-chose-about-wrap {
        padding: 40px 0 60px;
    }

    .why-chose-about-wrap .about-content {
        padding-left: 0;
        margin-top: 28px;
    }
}

/* ================================================================
   SUPPORT PAGE — support.php
   ================================================================ */
.pg-support-wrap {
    background: #0a0a0f;
    padding: 40px 0 80px;
}

.pg-support-heading {
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    margin-bottom: 6px !important;
}

.pg-support-subheading {
    color: rgba(255, 255, 255, .5) !important;
    font-size: 12px !important;
    margin-bottom: 28px !important;
}

/* Support form card */
.pg-support-form-card {
    background: #111118;
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 16px;
    padding: 36px 40px;
    position: relative;
    overflow: hidden;
}

.pg-support-form-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
}

.pg-support-form-card h5 {
    color: rgba(255, 255, 255, .7) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    margin-bottom: 5px !important;
}

/* Radio buttons — custom dark style */
.containerRB {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, .65) !important;
    font-size: 14px;
    cursor: pointer;
    margin-right: 15px;
    margin-bottom: 0px;
    margin-top: 15px;
    position: relative;
    padding-left: 0;
    user-select: none;
}

.containerRB input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255, 255, 255, .2);
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    transition: all .2s ease;
    flex-shrink: 0;
    position: relative;
    margin-top: 0px;
}

.containerRB input[type="radio"]:checked {
    border-color: #0088cc;
    background: #0088cc;
    box-shadow: 0 0 10px rgba(0, 136, 204, .4);
}

.containerRB input[type="radio"]:checked::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 6px;
    height: 6px;
    background: #fff;
    border-radius: 50%;
}

.containerRB .checkmark {
    display: none;
}

/* hide old checkmark if still present */

/* Support text inputs */
.pg-support-form-card input[type="text"],
.pg-support-form-card textarea {
    width: 100% !important;
    background: rgba(255, 255, 255, .04) !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;
    border-radius: 10px !important;
    color: #fff !important;
    padding: 12px 16px !important;
    font-size: 12px !important;
    transition: border-color .25s ease !important;
    resize: vertical;
    outline: none !important;
    box-sizing: border-box;
}

.pg-support-form-card input[type="text"]::placeholder,
.pg-support-form-card textarea::placeholder {
    color: rgba(255, 255, 255, .3);
}

.pg-support-form-card input[type="text"]:focus,
.pg-support-form-card textarea:focus {
    border-color: rgba(0, 136, 204, .5) !important;
}

.pg-support-form-card textarea {
    min-height: 160px;
    margin-top: 4px;
}

.pg-support-form-card input[type="submit"] {
    background: linear-gradient(135deg, #0088cc, #0065a0) !important;
    color: #fff !important;
    border: none !important;
    padding: 13px 40px !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    letter-spacing: .5px;
    cursor: pointer !important;
    transition: all .3s ease !important;
    box-shadow: 0 0 24px rgba(0, 136, 204, .3);
    margin-top: 15px;
    width: 100% !important;
}

.pg-support-form-card input[type="submit"]:hover {
    transform: translateY(-2px);
    box-shadow: 0 0 40px rgba(0, 136, 204, .5) !important;
}

/* Validation error */
.pg-support-form-card span.error {
    color: #ff6b6b !important;
    font-size: 10px;
    display: block;
}

/* ================================================================
   MY SERVICES PAGE — my-services.php
   ================================================================ */
.pg-myservices-empty {
    background: rgba(0, 136, 204, .06);
    border: 1px solid rgba(0, 136, 204, .2);
    border-radius: 12px;
    padding: 28px 24px;
}

.pg-myservices-empty a {
    color: #0088cc !important;
    text-decoration: none !important;
    font-weight: 600;
    transition: color .2s ease;
}

.pg-myservices-empty a:hover {
    color: #00d4ff !important;
}

@media (max-width: 768px) {
    .pg-support-form-card {
        padding: 24px 20px;
    }
}


/* ================================================================
   PANEL.PHP — HOMEPAGE  (Full redesign)
   ================================================================ */

/* ──────────────────────────────────────────
   HERO SLIDER  (hs-*)
────────────────────────────────────────── */
.hs-hero {
    position: relative;
    width: 100%;
    height: 100vh;
    min-height: 620px;
    max-height: 900px;
    overflow: hidden;
    background: #060b14;
}

/* Track holds all slides stacked */
.hs-track {
    position: absolute;
    inset: 0;
}

/* Individual slide */
.hs-slide {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    transition: opacity .7s ease, transform .7s ease;
    transform: translateX(40px);
    /* Dark overlay on bg image */
    background: linear-gradient(105deg,
            rgba(4, 10, 20, .92) 0%,
            rgba(4, 10, 20, .75) 50%,
            rgba(4, 10, 20, .55) 100%), var(--bg) center / cover no-repeat;
}

.hs-slide.active {
    opacity: 1;
    pointer-events: auto;
    transform: translateX(0);
    z-index: 2;
}

.hs-slide.leaving {
    opacity: 0;
    transform: translateX(-40px);
    z-index: 1;
}

/* Glowing bottom-left light blob on each slide */
.hs-slide::before {
    content: '';
    position: absolute;
    bottom: -100px;
    left: -60px;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(0, 136, 204, .18) 0%, transparent 65%);
    pointer-events: none;
}

/* Inner layout — two columns */
.hs-slide-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 48px;
    padding: 0 15px;
    width: 100%;
    position: relative;
    z-index: 1;
}

.hs-reverse {
    flex-direction: row-reverse;
}

/* Text column */
.hs-text {
    flex: 1;
    max-width: 580px;
}

/* Category label */
.hs-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(0, 136, 204, .12);
    border: 1px solid rgba(0, 136, 204, .35);
    color: #0088cc;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: 1.8px;
    text-transform: uppercase;
    padding: 6px 16px;
    border-radius: 50px;
    margin-bottom: 22px;
}

.hs-label .fa {
    font-size: .5rem;
    animation: srv-blink 1.4s ease-in-out infinite;
}

/* Headline */
.hs-text h1 {
    font-size: clamp(2.2rem, 5vw, 3.6rem) !important;
    font-weight: 900 !important;
    color: #fff !important;
    line-height: 1.1 !important;
    margin: 0 0 20px !important;
    letter-spacing: -0.03em;
}

.hs-text h1 span {
    background: linear-gradient(135deg, #0088cc 0%, #00d4ff 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Description */
.hs-text p {
    color: rgba(255, 255, 255, .65) !important;
    font-size: 1rem !important;
    line-height: 1.75 !important;
    margin: 0 0 32px !important;
    max-width: 500px;
}

/* CTA buttons */
.hs-btns {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.hs-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, #0088cc, #0060a8);
    color: #fff !important;
    font-size: .9rem;
    font-weight: 700;
    padding: 13px 30px;
    border-radius: 8px;
    text-decoration: none !important;
    transition: all .3s ease;
    box-shadow: 0 0 30px rgba(0, 136, 204, .4), 0 4px 15px rgba(0, 0, 0, .3);
    white-space: nowrap;
}

.hs-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 0 50px rgba(0, 136, 204, .6), 0 8px 25px rgba(0, 0, 0, .3);
    color: #fff !important;
}

.hs-btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .2);
    color: #fff !important;
    font-size: .9rem;
    font-weight: 600;
    padding: 13px 28px;
    border-radius: 8px;
    text-decoration: none !important;
    transition: all .3s ease;
    backdrop-filter: blur(8px);
    white-space: nowrap;
}

.hs-btn-outline:hover {
    background: rgba(255, 255, 255, .12);
    border-color: rgba(255, 255, 255, .4);
    color: #fff !important;
    transform: translateY(-3px);
}

/* Image column */
.hs-img {
    flex: 0 0 auto;
    width: 42%;
    max-width: 480px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hs-img-glow {
    position: absolute;
    width: 320px;
    height: 320px;
    background: radial-gradient(circle, rgba(0, 136, 204, .25) 0%, transparent 70%);
    border-radius: 50%;
    pointer-events: none;
}

.hs-img img {
    max-height: 380px;
    max-width: 100%;
    object-fit: contain;
    position: relative;
    z-index: 1;
    filter: drop-shadow(0 20px 50px rgba(0, 136, 204, .3));
    animation: hs-float 4s ease-in-out infinite;
}

@keyframes hs-float {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-16px);
    }
}

/* Floating particles */
.hs-particles {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.hs-particles span {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: var(--s);
    height: var(--s);
    background: rgba(0, 136, 204, .5);
    border-radius: 50%;
    animation: hs-particle 5s var(--d) ease-in-out infinite;
}

@keyframes hs-particle {

    0%,
    100% {
        transform: translate(0, 0);
        opacity: .5;
    }

    50% {
        transform: translate(12px, -18px);
        opacity: 1;
    }
}

/* Progress bar */
.hs-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: rgba(255, 255, 255, .08);
    z-index: 10;
    overflow: hidden;
}

.hs-progress-bar {
    height: 100%;
    width: 100%;
    /* always full-width */
    transform: scaleX(0);
    /* JS drives scaleX 0→1 */
    transform-origin: left center;
    background: linear-gradient(90deg, #0088cc, #00d4ff);
    box-shadow: 0 0 8px rgba(0, 136, 204, .6);
}

/* Dot navigation */
.hs-dots {
    position: absolute;
    bottom: 26px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 8px;
    z-index: 10;
}

.hs-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .25);
    border: none;
    cursor: pointer;
    padding: 0;
    transition: all .3s ease;
}

.hs-dot.active {
    background: #0088cc;
    width: 28px;
    border-radius: 4px;
    box-shadow: 0 0 10px rgba(0, 136, 204, .6);
}

/* Arrow buttons */
.hs-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 255, 255, .15);
    color: #fff;
    font-size: .9rem;
    cursor: pointer;
    z-index: 10;
    transition: all .3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(8px);
}

.hs-arrow:hover {
    background: rgba(0, 136, 204, .3);
    border-color: rgba(0, 136, 204, .6);
    box-shadow: 0 0 20px rgba(0, 136, 204, .4);
}

.hs-prev {
    left: 24px;
}

.hs-next {
    right: 24px;
}

/* Slide counter */
.hs-counter {
    position: absolute;
    bottom: 24px;
    right: 28px;
    display: flex;
    align-items: center;
    gap: 4px;
    z-index: 10;
    color: rgba(255, 255, 255, .5);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: 1px;
}

.hs-counter-current {
    color: #0088cc;
    font-size: .95rem;
}

.hs-counter-sep {
    margin: 0 2px;
}

/* Hero responsive */
@media (max-width: 900px) {
    .hs-hero {
        height: auto;
        min-height: 520px;
        max-height: none;
        padding: 80px 0;
    }

    .hs-slide-inner {
        flex-direction: column !important;
        text-align: center;
        gap: 28px;
    }

    .hs-reverse {
        flex-direction: column !important;
    }

    .hs-text {
        max-width: 100%;
    }

    .hs-text p {
        max-width: 100%;
    }

    .hs-btns {
        justify-content: center;
    }

    .hs-img {
        width: 70%;
        max-width: 280px;
    }

    .hs-img img {
        max-height: 220px;
        animation: none;
    }

    .hs-arrow {
        display: none;
    }
}

@media (max-width: 576px) {
    .hs-text h1 {
        font-size: 2rem !important;
    }

    .hs-btn-primary,
    .hs-btn-outline {
        font-size: .82rem;
        padding: 11px 20px;
    }
}

/* ──────────────────────────────────────────
   STATS BAR
────────────────────────────────────────── */
.pnl-stats-bar {
    background: #0d1520;
    border-top: 1px solid rgba(0, 136, 204, .2);
    border-bottom: 1px solid rgba(0, 136, 204, .2);
    padding: 24px 0;
}

.pnl-stats-grid {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    flex-wrap: wrap;
}

.pnl-stat-item {
    flex: 1;
    min-width: 130px;
    text-align: center;
    padding: 12px 20px;
}

.pnl-stat-item strong {
    display: block;
    font-size: 1.9rem;
    font-weight: 900;
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    line-height: 1;
    margin-bottom: 5px;
}

.pnl-stat-item span {
    color: rgba(255, 255, 255, .45);
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.pnl-stat-divider {
    width: 1px;
    height: 44px;
    background: rgba(255, 255, 255, .08);
    flex-shrink: 0;
}

@media (max-width: 576px) {
    .pnl-stat-divider {
        display: none;
    }

    .pnl-stat-item {
        min-width: 45%;
    }
}

/* ──────────────────────────────────────────
   SHARED SECTION TITLE
────────────────────────────────────────── */
.pnl-section-title {
    text-align: center;
    margin-bottom: 54px;
}

.pnl-section-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .25);
    color: #0088cc;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 50px;
    margin-bottom: 16px;
}

.pnl-section-title h2 {
    color: #fff !important;
    font-size: clamp(1.6rem, 3.5vw, 2.4rem) !important;
    font-weight: 800 !important;
    margin: 0 0 14px !important;
    letter-spacing: -0.02em;
    line-height: 1.2 !important;
}

.pnl-section-title h2 span {
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.pnl-section-title p {
    color: rgba(255, 255, 255, .45) !important;
    font-size: .9rem !important;
    max-width: 540px;
    margin: 0 auto !important;
    line-height: 1.7 !important;
}

/* ──────────────────────────────────────────
   OUR PRODUCTS SECTION
────────────────────────────────────────── */
.pnl-products-wrap {
    background: #0a0a0f;
    padding: 80px 0 90px;
}

.recent-products-box {
    background: #111118 !important;
    border: 1px solid rgba(255, 255, 255, .07) !important;
    border-radius: 18px !important;
    overflow: hidden;
    transition: all .35s ease !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative;
}

.recent-products-box::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
    opacity: 0;
    transition: opacity .35s ease;
}

.recent-products-box:hover {
    border-color: rgba(0, 136, 204, .3) !important;
    transform: translateY(-6px);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .4) !important;
}

.recent-products-box:hover::after {
    opacity: 1;
}

.recent-products-box .price-box {
    position: absolute;
    top: 16px;
    right: 16px;
    background: linear-gradient(135deg, #0088cc, #0065a0);
    color: #fff !important;
    font-size: .78rem;
    font-weight: 800;
    padding: 5px 13px;
    border-radius: 50px;
    z-index: 2;
    box-shadow: 0 0 16px rgba(0, 136, 204, .5);
    letter-spacing: .5px;
}

span.backgroung_product {
    background-position: center !important;
    background-size: contain !important;
    display: block !important;
    height: 190px !important;
    background-repeat: no-repeat !important;
    background-color: rgba(255, 255, 255, 1);
    border-bottom: 1px solid rgba(255, 255, 255, .05);
    transition: transform .4s ease;
}

.recent-products-box:hover span.backgroung_product {
    transform: scale(1.04);
}

.recent-products-details {
    padding: 18px 20px 22px !important;
}

.recent-products-details h5 {
    color: #fff !important;
    font-size: .93rem !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
    line-height: 1.35 !important;
}

.recent-products-details h5 a {
    color: #fff !important;
    text-decoration: none !important;
}

.recent-products-details h5 a:hover {
    color: #0088cc !important;
}

.recent-products-details .cat-box {
    display: inline-block;
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .2);
    color: #0088cc !important;
    font-size: .68rem;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 4px;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.recent-products-details a {
    color: rgba(255, 255, 255, .5) !important;
    font-size: .8rem !important;
    line-height: 1.6;
    text-decoration: none !important;
}

/* ──────────────────────────────────────────
   CTA BANNER
────────────────────────────────────────── */
.pnl-cta {
    position: relative;
    overflow: hidden;
    text-align: center;
    padding: 100px 20px;
    background: #060b14;
}

.pnl-cta::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 80% 60% at 50% 50%, rgba(0, 136, 204, .14) 0%, transparent 70%);
    pointer-events: none;
}

/* Grid pattern overlay */
.pnl-cta::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(0, 136, 204, .04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 136, 204, .04) 1px, transparent 1px);
    background-size: 50px 50px;
    pointer-events: none;
}

.pnl-cta-inner {
    position: relative;
    z-index: 1;
    max-width: 760px;
    margin: 0 auto;
}

.pnl-cta-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .25);
    color: #0088cc;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 1.8px;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 50px;
    margin-bottom: 20px;
}

.pnl-cta h2 {
    color: #fff !important;
    font-size: clamp(2rem, 4.5vw, 3.2rem) !important;
    font-weight: 900 !important;
    margin: 0 0 18px !important;
    letter-spacing: -0.025em;
    line-height: 1.15 !important;
}

.pnl-cta p {
    color: rgba(255, 255, 255, .55) !important;
    font-size: 1rem !important;
    line-height: 1.75 !important;
    margin: 0 0 36px !important;
    max-width: 620px;
    margin-left: auto !important;
    margin-right: auto !important;
}

.pnl-cta-btns {
    display: flex;
    gap: 14px;
    justify-content: center;
    flex-wrap: wrap;
}

.pnl-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #0088cc, #0060a8);
    color: #fff !important;
    font-size: .95rem;
    font-weight: 700;
    padding: 14px 38px;
    border-radius: 10px;
    text-decoration: none !important;
    transition: all .3s ease;
    box-shadow: 0 0 40px rgba(0, 136, 204, .4), 0 6px 20px rgba(0, 0, 0, .3);
}

.pnl-cta-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 0 60px rgba(0, 136, 204, .6), 0 10px 30px rgba(0, 0, 0, .3);
    color: #fff !important;
}

.pnl-cta-btn-ghost {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .15);
    color: rgba(255, 255, 255, .8) !important;
    font-size: .95rem;
    font-weight: 600;
    padding: 14px 32px;
    border-radius: 10px;
    text-decoration: none !important;
    transition: all .3s ease;
    backdrop-filter: blur(6px);
}

.pnl-cta-btn-ghost:hover {
    background: rgba(255, 255, 255, .1);
    border-color: rgba(255, 255, 255, .3);
    color: #fff !important;
    transform: translateY(-3px);
}

/* ──────────────────────────────────────────
   SERVICES SECTION
────────────────────────────────────────── */
.pnl-services-wrap {
    background: #0d0d14;
    padding: 80px 0 90px;
    position: relative;
}

.pnl-services-wrap::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .3), transparent);
}

.single-services-card {
    background: #111118 !important;
    border: 1px solid rgba(255, 255, 255, .07) !important;
    border-radius: 18px !important;
    overflow: hidden;
    transition: all .35s ease !important;
    position: relative;
    display: flex !important;
    flex-direction: column;
    height: 100%;
}

.single-services-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
    opacity: 0;
    transition: opacity .35s ease;
}

.single-services-card:hover {
    border-color: rgba(0, 136, 204, .3) !important;
    transform: translateY(-6px);
    box-shadow: 0 20px 55px rgba(0, 0, 0, .45) !important;
}

.single-services-card:hover::before {
    opacity: 1;
}

.services-img {
    background: rgba(255, 255, 255, .02);
    border-bottom: 1px solid rgba(255, 255, 255, .05);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 28px 24px;
    min-height: 100px;
}

.services-img img {
    max-height: 58px;
    max-width: 90%;
    object-fit: contain;
    filter: brightness(.85);
    transition: filter .3s ease, transform .3s ease;
}

.single-services-card:hover .services-img img {
    filter: brightness(1.1);
    transform: scale(1.08);
}

.services-content {
    padding: 20px 22px 24px !important;
    flex: 1;
}

.services-content h3 {
    color: #fff !important;
    font-size: .97rem !important;
    font-weight: 700 !important;
    margin-bottom: 9px !important;
    line-height: 1.3 !important;
}

.services-content p {
    color: rgba(255, 255, 255, .5) !important;
    font-size: .8rem !important;
    line-height: 1.65 !important;
    margin-bottom: 16px !important;
}

.services-content .default-btn.for-card {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    background: transparent !important;
    border: 1px solid rgba(0, 136, 204, .35) !important;
    color: #0088cc !important;
    font-size: .75rem !important;
    font-weight: 700 !important;
    padding: 7px 15px !important;
    border-radius: 6px !important;
    text-decoration: none !important;
    transition: all .25s ease !important;
    letter-spacing: .3px;
}

.services-content .default-btn.for-card:hover {
    background: rgba(0, 136, 204, .1) !important;
    border-color: #0088cc !important;
    transform: none !important;
    gap: 10px !important;
}

.single-services-card .number {
    position: absolute;
    bottom: 14px;
    right: 16px;
    pointer-events: none;
}

.single-services-card .number span {
    font-size: 3rem;
    font-weight: 900;
    color: rgba(255, 255, 255, .03);
    line-height: 1;
    display: block;
    letter-spacing: -2px;
}

/* ──────────────────────────────────────────
   RECENT PROJECTS SECTION
────────────────────────────────────────── */
.pnl-projects-wrap {
    background: #0a0a0f;
    padding: 80px 0 90px;
    position: relative;
}

.pnl-projects-wrap::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .25), transparent);
}

.recent-projects-container .thumbnail {
    border-radius: 14px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 255, 255, .07) !important;
    transition: all .35s ease !important;
    margin: 0 !important;
    font-size: 0;
}

.recent-projects-container .thumbnail:hover {
    border-color: rgba(0, 136, 204, .4) !important;
    transform: translateY(-5px);
    box-shadow: 0 16px 48px rgba(0, 0, 0, .45) !important;
}

.recent-projects-container a.venobox.vbox-item {
    background-size: cover !important;
    background-position: center !important;
    height: 250px !important;
    width: 100% !important;
    display: block !important;
    transition: transform .45s ease;
}

.recent-projects-container .thumbnail:hover a.venobox.vbox-item {
    transform: scale(1.04);
}

/* ──────────────────────────────────────────
   PROCESS SECTION
────────────────────────────────────────── */
.process-container {
    background: #0d0d14 !important;
    padding: 80px 0 90px !important;
    position: relative;
}

.process-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .25), transparent);
}

.process-wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 22px;
    margin-top: 0;
}

.process-box {
    background: #111118 !important;
    border: 1px solid rgba(255, 255, 255, .07) !important;
    border-radius: 18px !important;
    padding: 28px 26px 28px 26px !important;
    display: flex;
    flex-direction: column;
    gap: 0;
    transition: all .3s ease;
    position: relative;
    overflow: hidden;
}

.process-box::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
    opacity: 0;
    transition: opacity .3s ease;
}

.process-box:hover {
    border-color: rgba(0, 136, 204, .3) !important;
    transform: translateY(-5px);
    box-shadow: 0 16px 50px rgba(0, 0, 0, .4) !important;
}

.process-box:hover::after {
    opacity: 1;
}

/* Step number badge */
.process-box-num {
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: 2px;
    color: #0088cc;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.process-box-num::after {
    content: '';
    flex: 1;
    height: 1px;
    background: rgba(0, 136, 204, .2);
}

.process-box-icon {
    width: 62px;
    height: 62px;
    min-width: 62px;
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .2);
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all .3s ease;
    margin-bottom: 18px;
}

.process-box:hover .process-box-icon {
    background: rgba(0, 136, 204, .2);
    box-shadow: 0 0 24px rgba(0, 136, 204, .35);
    border-color: rgba(0, 136, 204, .5);
}

.process-box-icon img {
    width: 50px;
    height: 50px;
    object-fit: contain;
    filter: brightness(0) invert(1) sepia(1) saturate(5) hue-rotate(180deg);
}

.process-box-text h3 {
    color: #fff !important;
    font-size: .95rem !important;
    font-weight: 700 !important;
    margin-bottom: 10px !important;
}

.process-box-text p {
    color: rgba(255, 255, 255, .48) !important;
    font-size: .8rem !important;
    line-height: 1.7 !important;
    margin: 0 !important;
}

@media (max-width: 768px) {
    .process-wrapper {
        grid-template-columns: 1fr;
    }
}

/* ──────────────────────────────────────────
   TESTIMONIALS SECTION
────────────────────────────────────────── */
.testimonials-wrapper {
    background: #0a0a0f !important;
    padding: 80px 0 90px !important;
    position: relative;
}

.testimonials-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .25), transparent);
}

.review-box {
    background: #111118 !important;
    border: 1px solid rgba(255, 255, 255, .07) !important;
    border-radius: 18px !important;
    padding: 30px 28px 26px !important;
    margin: 0 10px !important;
    position: relative;
    overflow: hidden;
    transition: all .3s ease;
    height: 100%;
}

.review-box::before {
    content: '\201C';
    position: absolute;
    top: 10px;
    right: 22px;
    font-size: 6rem;
    line-height: 1;
    color: rgba(0, 136, 204, .08);
    font-family: Georgia, serif;
    pointer-events: none;
}

.review-box:hover {
    border-color: rgba(0, 136, 204, .25) !important;
    transform: translateY(-4px);
    box-shadow: 0 14px 45px rgba(0, 0, 0, .35) !important;
}

.review-box-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
}

.client-avatar {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid rgba(0, 136, 204, .35);
    flex-shrink: 0;
}

.client-avatar img {
    border-radius: 0px;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    object-position: center;
}

.review-stars {
    color: #f59e0b;
    font-size: .75rem;
    letter-spacing: 2px;
}

.review-text {
    color: rgba(255, 255, 255, .6) !important;
    font-size: .85rem !important;
    line-height: 1.75 !important;
    margin-bottom: 20px !important;
}

.review-text b {
    color: #fff !important;
    display: block;
    margin-bottom: 8px;
    font-size: .93rem;
}

.client-details {
    font-size: .78rem;
    color: rgba(255, 255, 255, .35) !important;
    border-top: 1px solid rgba(255, 255, 255, .06);
    padding-top: 14px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.client-details .fa {
    color: #0088cc;
}

.client-details span {
    color: #0088cc !important;
    font-weight: 700;
}

/* ──────────────────────────────────────────
   CLIENT LOGOS SECTION
────────────────────────────────────────── */
.cb_client_logo_container {
    background: #0d0d14;
    padding: 60px 0 70px;
    position: relative;
}

.cb_client_logo_container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .2), transparent);
}

.cb_client_logo_container h2 {
    color: rgba(255, 255, 255, .35) !important;
    font-size: .72rem !important;
    font-weight: 700 !important;
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 40px !important;
    text-align: center;
}

.cb_clients_logo_wrapper .bxslider li {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
}

.cb_clients_logo_wrapper img {
    max-height: 42px;
    max-width: 130px;
    object-fit: contain;
    opacity: .3;
    filter: brightness(0) invert(1);
    transition: opacity .3s ease, filter .3s ease;
}

.cb_clients_logo_wrapper img:hover {
    opacity: .8;
    filter: brightness(0) invert(1) sepia(1) saturate(3) hue-rotate(180deg);
}

/* ══════════════════════════════════════════════
   OWL CAROUSEL — Complete dark theme overrides
   Arrows + dots for ALL carousels on the page
══════════════════════════════════════════════ */

/* --- Arrows --- */
.owl-nav {
    margin-top: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
}

.owl-nav button.owl-prev,
.owl-nav button.owl-next {
    background: #111118 !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;
    color: rgba(255, 255, 255, .7) !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    font-size: .9rem !important;
    transition: all .25s ease !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
    box-shadow: 0 2px 12px rgba(0, 0, 0, .3) !important;
    position: static !important;
    /* prevent owl's absolute positioning */
}

.owl-nav button.owl-prev span,
.owl-nav button.owl-next span {
    font-size: 1.8rem !important;
    line-height: normal !important;
    display: block !important;
    margin-top: 0px !important;
}

.owl-nav button.owl-prev:hover,
.owl-nav button.owl-next:hover {
    background: rgba(0, 136, 204, .15) !important;
    border-color: rgba(0, 136, 204, .5) !important;
    color: #0088cc !important;
    box-shadow: 0 0 20px rgba(0, 136, 204, .25) !important;
    transform: none !important;
}

.owl-nav button.disabled {
    opacity: .3 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
}

/* --- Dots --- */
.owl-dots {
    margin-top: 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
}

.owl-dots .owl-dot {
    margin: 0 !important;
}

.owl-dots .owl-dot span {
    width: 8px !important;
    height: 8px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, .18) !important;
    border: none !important;
    transition: all .3s ease !important;
    margin: 0 !important;
    display: block !important;
}

.owl-dots .owl-dot.active span,
.owl-dots .owl-dot:hover span {
    background: #0088cc !important;
    width: 24px !important;
    border-radius: 4px !important;
    box-shadow: 0 0 10px rgba(0, 136, 204, .5) !important;
}

/* Give breathing room below carousel content before dots/arrows */
.owl-carousel .owl-stage-outer {
    padding-bottom: 4px !important;
}

/* ══════════════════════════════════════════════
   CLIENT LOGOS SECTION — Redesigned
   Beautiful marquee-style ticker strip
══════════════════════════════════════════════ */
.cb_client_logo_container {
    background: #0a0a0f;
    padding: 0;
    position: relative;
    overflow: hidden;
}

.cb_client_logo_container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .3), transparent);
}

.cb_client_logo_container::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .15), transparent);
}

/* Top label row */
.cb_logo_label_row {
    padding: 48px 0 32px;
    text-align: center;
}

.cb_logo_label_row h2 {
    color: rgba(255, 255, 255, .3) !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    letter-spacing: 3.5px !important;
    text-transform: uppercase !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
}

.cb_logo_label_row h2::before,
.cb_logo_label_row h2::after {
    content: '';
    width: 60px;
    height: 1px;
    background: rgba(255, 255, 255, .12);
    display: block;
}

/* Ticker strip */
.cb_logo_ticker_wrap {
    position: relative;
    overflow: hidden;
    padding: 10px 0 25px;
    -webkit-mask-image: linear-gradient(90deg, transparent 0%, black 10%, black 90%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0%, black 10%, black 90%, transparent 100%);
}

.cb_logo_ticker {
    display: flex;
    gap: 0;
    width: max-content;
    animation: cb-ticker 28s linear infinite;
}

.cb_logo_ticker:hover {
    animation-play-state: paused;
}

@keyframes cb-ticker {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

.cb_logo_item {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 44px;
    flex-shrink: 0;
}

.cb_logo_item img {
    max-height: 80px;
    max-width: 120px;
    object-fit: contain;
    opacity: 0.50;
    /* filter: brightness(0) invert(1); */
    transition: opacity .4s ease, transform .3s ease;
}

.cb_logo_item:hover img {
    opacity: 1;
    transform: scale(1.08);
    filter: contrast(0.5);
}

/* Hide the old bxSlider default markup if still used */
.cb_clients_logo_wrapper {
    display: none;
}

/* ════════════════════════════════════════════════════════════════
   PANEL.PHP — COMPREHENSIVE RESPONSIVE STYLES
   Breakpoints:
     1200px  large tablet / small desktop
      992px  tablet landscape
      768px  tablet portrait
      576px  large phone
      420px  small phone
════════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────
   1. HERO SLIDER
───────────────────────────────────────── */
@media (max-width: 1100px) {
    .hs-text h1 {
        font-size: clamp(1.9rem, 4vw, 2.8rem) !important;
    }

    .hs-img {
        width: 44%;
    }
}

@media (max-width: 900px) {

    /* Already defined — extend it */
    .hs-hero {
        padding: 60px 0 70px;
    }

    .hs-slide-inner {
        padding: 0 20px;
        gap: 24px;
    }

    .hs-label {
        font-size: .68rem;
        padding: 5px 13px;
    }

    .hs-text h1 {
        font-size: clamp(1.8rem, 5vw, 2.4rem) !important;
    }

    .hs-text p {
        font-size: .9rem !important;
    }

    .hs-img {
        width: 55%;
        max-width: 260px;
    }

    .hs-img img {
        max-height: 200px;
    }

    .hs-counter {
        bottom: 52px;
        right: 16px;
    }

    .hs-dots {
        bottom: 52px;
    }
}

@media (max-width: 576px) {
    .hs-hero {
        padding: 52px 0 60px;
    }

    .hs-slide-inner {
        gap: 18px;
    }

    .hs-text h1 {
        font-size: 1.7rem !important;
    }

    .hs-text p {
        font-size: .85rem !important;
        display: none;
    }

    /* hide on tiny screens */
    .hs-btns {
        gap: 10px;
    }

    .hs-btn-primary,
    .hs-btn-outline {
        font-size: .78rem;
        padding: 10px 18px;
    }

    .hs-img {
        width: 65%;
        max-width: 200px;
    }

    .hs-img img {
        max-height: 160px;
    }

    .hs-counter {
        display: none;
    }

    .hs-dots {
        bottom: 14px;
    }

    .hs-progress {
        height: 2px;
    }
}

@media (max-width: 400px) {
    .hs-text h1 {
        font-size: 1.45rem !important;
    }

    .hs-btn-outline {
        display: none;
    }

    /* only primary CTA on tiny phones */
}

/* ─────────────────────────────────────────
   2. STATS BAR
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pnl-stats-bar {
        padding: 18px 0;
    }

    .pnl-stats-grid {
        flex-wrap: wrap;
        gap: 0;
    }

    .pnl-stat-item {
        min-width: 50%;
        padding: 14px 12px;
    }

    .pnl-stat-item strong {
        font-size: 1.5rem;
    }

    .pnl-stat-divider {
        display: none;
    }
}

@media (max-width: 420px) {
    .pnl-stat-item {
        min-width: 50%;
        padding: 12px 8px;
    }

    .pnl-stat-item strong {
        font-size: 1.3rem;
    }

    .pnl-stat-item span {
        font-size: .65rem;
        letter-spacing: .8px;
    }
}

/* ─────────────────────────────────────────
   3. SECTION TITLES (shared)
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pnl-section-title {
        margin-bottom: 36px;
    }

    .pnl-section-title h2 {
        font-size: 1.5rem !important;
    }

    .pnl-section-title p {
        font-size: .83rem !important;
        padding: 0 10px;
    }
}

@media (max-width: 420px) {
    .pnl-section-title h2 {
        font-size: 1.3rem !important;
    }

    .pnl-section-tag {
        font-size: .65rem;
        padding: 4px 10px;
        letter-spacing: 1.5px;
    }
}

/* ─────────────────────────────────────────
   4. PRODUCTS SECTION
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pnl-products-wrap {
        padding: 54px 0 60px;
    }

    span.backgroung_product {
        height: 160px !important;
    }

    .recent-products-details {
        padding: 14px 16px 18px !important;
    }

    .recent-products-details h5 {
        font-size: .88rem !important;
    }
}

@media (max-width: 576px) {
    .pnl-products-wrap {
        padding: 44px 0 50px;
    }

    span.backgroung_product {
        height: 145px !important;
    }

    .recent-products-box .price-box {
        font-size: .72rem;
        padding: 4px 10px;
    }
}

/* ─────────────────────────────────────────
   5. CTA BANNER
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pnl-cta {
        padding: 70px 24px;
    }

    .pnl-cta h2 {
        font-size: 1.7rem !important;
    }

    .pnl-cta p {
        font-size: .88rem !important;
    }
}

@media (max-width: 576px) {
    .pnl-cta {
        padding: 56px 20px;
    }

    .pnl-cta h2 {
        font-size: 1.45rem !important;
    }

    .pnl-cta-btns {
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }

    .pnl-cta-btn,
    .pnl-cta-btn-ghost {
        width: 100%;
        max-width: 280px;
        justify-content: center;
        padding: 13px 24px;
        font-size: .88rem;
    }
}

@media (max-width: 420px) {
    .pnl-cta h2 {
        font-size: 1.25rem !important;
    }

    .pnl-cta p {
        font-size: .82rem !important;
    }
}

/* ─────────────────────────────────────────
   6. SERVICES CAROUSEL
───────────────────────────────────────── */
@media (max-width: 992px) {
    .pnl-services-wrap {
        padding: 56px 0 64px;
    }

    .services-img {
        padding: 22px 18px;
        min-height: 85px;
    }

    .services-img img {
        max-height: 48px;
    }

    .services-content {
        padding: 16px 18px 20px !important;
    }

    .services-content h3 {
        font-size: .9rem !important;
    }
}

@media (max-width: 768px) {
    .pnl-services-wrap {
        padding: 44px 0 52px;
    }

    .services-img {
        min-height: 75px;
    }

    .services-content p {
        font-size: .78rem !important;
    }

    .single-services-card .number span {
        font-size: 2rem;
    }
}

@media (max-width: 576px) {
    .services-img img {
        max-height: 42px;
    }

    .services-content h3 {
        font-size: .88rem !important;
    }

    .services-content .default-btn.for-card {
        font-size: .72rem !important;
        padding: 6px 13px !important;
    }
}

/* ─────────────────────────────────────────
   7. RECENT PROJECTS
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pnl-projects-wrap {
        padding: 52px 0 60px;
    }

    .recent-projects-container a.venobox.vbox-item {
        height: 200px !important;
    }
}

@media (max-width: 576px) {
    .pnl-projects-wrap {
        padding: 40px 0 48px;
    }

    .recent-projects-container a.venobox.vbox-item {
        height: 170px !important;
    }

    .recent-projects-container .thumbnail {
        border-radius: 10px !important;
    }
}

/* ─────────────────────────────────────────
   8. PROCESS SECTION
───────────────────────────────────────── */
@media (max-width: 992px) {
    .process-container {
        padding: 56px 0 64px !important;
    }

    .process-wrapper {
        grid-template-columns: repeat(2, 1fr);
        gap: 16px;
    }
}

@media (max-width: 768px) {
    .process-container {
        padding: 44px 0 52px !important;
    }

    .process-wrapper {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .process-box {
        padding: 22px 20px !important;
        gap: 0;
        flex-direction: row;
    }

    .process-box-num {
        font-size: .62rem;
        margin-bottom: 12px;
    }

    .process-box-icon {
        width: 44px;
        height: 44px;
        min-width: 44px;
        border-radius: 10px;
        margin-bottom: 14px;
    }

    .process-box-icon img {
        width: 22px;
        height: 22px;
    }

    .process-box-text h3 {
        font-size: .88rem !important;
    }

    .process-box-text p {
        font-size: .78rem !important;
    }
}

@media (max-width: 576px) {
    .process-box {
        flex-direction: column;
    }

    .process-box-icon {
        margin-bottom: 12px;
    }
}

/* ─────────────────────────────────────────
   9. TESTIMONIALS
───────────────────────────────────────── */
@media (max-width: 992px) {
    .testimonials-wrapper {
        padding: 56px 0 64px !important;
    }

    .review-box {
        padding: 24px 22px 20px !important;
    }
}

@media (max-width: 768px) {
    .testimonials-wrapper {
        padding: 44px 0 52px !important;
    }

    .review-box {
        margin: 0 6px !important;
    }

    .review-text {
        font-size: .82rem !important;
    }

    .review-text b {
        font-size: .88rem;
    }

    .review-box::before {
        font-size: 4rem;
        top: 6px;
        right: 14px;
    }
}

@media (max-width: 576px) {
    .review-box {
        padding: 20px 18px 18px !important;
    }

    .client-avatar {
        width: 44px;
        height: 44px;
    }

    .review-stars {
        font-size: .68rem;
    }

    .client-details {
        font-size: .72rem;
    }
}

/* ─────────────────────────────────────────
   10. CLIENT LOGOS TICKER
───────────────────────────────────────── */
@media (max-width: 768px) {
    .cb_logo_label_row {
        padding: 36px 0 24px;
    }

    .cb_logo_label_row h2 {
        font-size: .62rem !important;
        letter-spacing: 2.5px !important;
    }

    .cb_logo_label_row h2::before,
    .cb_logo_label_row h2::after {
        width: 32px;
    }

    .cb_logo_item {
        padding: 0 28px;
    }

    .cb_logo_item img {
        max-height: 32px;
        max-width: 90px;
    }

    .cb_logo_ticker {
        animation-duration: 20s;
    }
}

@media (max-width: 576px) {
    .cb_logo_ticker_wrap {
        padding: 6px 0 20px;
    }

    .cb_logo_item {
        padding: 0 20px;
    }

    .cb_logo_item img {
        max-height: 26px;
        max-width: 76px;
    }

    .cb_logo_ticker {
        animation-duration: 16s;
    }
}

/* ─────────────────────────────────────────
   11. OWL CAROUSEL ARROWS & DOTS
        (all carousels on the page)
───────────────────────────────────────── */
@media (max-width: 768px) {
    .owl-nav {
        margin-top: 20px !important;
        gap: 10px !important;
    }

    .owl-nav button.owl-prev,
    .owl-nav button.owl-next {
        width: 38px !important;
        height: 38px !important;
        font-size: .8rem !important;
    }

    .owl-dots {
        margin-top: 18px !important;
        gap: 6px !important;
    }

    .owl-dots .owl-dot span {
        width: 7px !important;
        height: 7px !important;
    }

    .owl-dots .owl-dot.active span {
        width: 20px !important;
    }
}

@media (max-width: 576px) {

    .owl-nav button.owl-prev,
    .owl-nav button.owl-next {
        width: 34px !important;
        height: 34px !important;
    }
}

/* ─────────────────────────────────────────
   12. DASHBOARD PAGES (pg-dash-*)
       purchased, downloads, edit, support
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pg-dash-wrap {
        padding: 24px 0 50px;
    }

    .pg-dash-hero {
        padding: 22px 0;
    }

    .pg-dash-hero h2 {
        font-size: 1.2rem !important;
    }

    /* Stack sidebar below on mobile */
    .pg-dash-wrap .row {
        flex-direction: column;
    }

    .pg-dash-sidebar {
        margin-bottom: 20px;
        border-radius: 12px;
    }

    /* Stat cards */
    .pg-stat-cards {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }

    .pg-stat-card {
        padding: 18px 14px;
    }

    .pg-stat-card h3 {
        font-size: 1.5rem !important;
    }

    /* Profile table */
    .pg-profile-table th,
    .pg-profile-table td {
        padding: 10px 14px !important;
        font-size: 12px !important;
    }

    .pg-profile-table th {
        width: 120px;
    }

    /* Dashboard table */
    .pg-dash-table thead th {
        font-size: .68rem !important;
        padding: 10px 10px !important;
    }

    .pg-dash-table tbody td {
        font-size: .78rem !important;
        padding: 9px 10px !important;
    }

    /* Edit form */
    .pg-edit-form {
        padding: 20px 16px;
    }

    /* Download button */
    .pg-dl-btn {
        padding: 6px 12px;
        font-size: .72rem;
    }
}

@media (max-width: 576px) {
    .pg-stat-cards {
        grid-template-columns: 1fr;
    }

    .pg-stat-card {
        padding: 16px;
    }

    .pg-dash-content {
        border-radius: 12px;
        overflow: auto;
    }

    /* Horizontal scroll on dashboard tables */
    .pg-dash-content .table-responsive {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .pg-dash-table {
        min-width: 480px;
    }
}

/* ─────────────────────────────────────────
   13. POLICY / LEGAL PAGES
       refund, terms, privacy
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pg-policy-wrap {
        padding: 44px 0 56px;
    }

    .pg-policy-card {
        padding: 28px 22px;
    }

    .pg-policy-section h3 {
        font-size: .85rem !important;
    }

    .pg-policy-section p {
        font-size: .87rem !important;
    }
}

@media (max-width: 576px) {
    .pg-policy-card {
        padding: 22px 16px;
        border-radius: 12px;
    }
}

/* ─────────────────────────────────────────
   14. CONTACT PAGE
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pg-contact-wrap {
        padding: 44px 0 56px;
    }

    .pg-contact-grid {
        grid-template-columns: 1fr;
        max-width: 420px;
        gap: 16px;
    }

    .pg-contact-card {
        padding: 28px 22px;
    }
}

/* ─────────────────────────────────────────
   15. LOGIN PAGE
───────────────────────────────────────── */
@media (max-width: 576px) {
    .pg-login-wrap {
        padding: 50px 12px;
    }

    .pg-login-card {
        padding: 30px 18px;
        border-radius: 14px;
    }

    .pg-login-card h3 {
        font-size: 1.5rem !important;
        margin-bottom: 24px !important;
    }
}

/* ─────────────────────────────────────────
   16. ABOUT PAGE
───────────────────────────────────────── */
@media (max-width: 992px) {

    .about-wrap,
    .why-chose-about-wrap {
        padding: 54px 0 60px;
    }
}

@media (max-width: 768px) {
    .about-wrap {
        padding: 44px 0 48px;
    }

    .about-wrap .col-lg-6:first-child {
        margin-bottom: 32px;
    }

    .why-chose-about-wrap {
        padding: 36px 0 48px;
    }

    .why-chose-about-wrap .col-lg-6:last-child {
        margin-top: 24px;
    }

    .about-img-wrap {
        margin-bottom: 24px;
    }

    .about-wrap .content-title h2,
    .why-chose-about-wrap .content-title h2 {
        font-size: 1.4rem !important;
    }

    .about-wrap .feature-card,
    .why-chose-about-wrap .feature-card {
        padding: 16px 18px;
    }

    .progress-text strong,
    .progress-text span {
        font-size: .72rem !important;
    }
}

@media (max-width: 576px) {

    .about-wrap .content-title h2,
    .why-chose-about-wrap .content-title h2 {
        font-size: 1.25rem !important;
    }

    .about-wrap .content-title p,
    .why-chose-about-wrap .content-title>p {
        font-size: .83rem !important;
    }
}

/* ─────────────────────────────────────────
   17. SUPPORT PAGE
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pg-support-form-card {
        padding: 24px 18px;
        border-radius: 12px;
    }

    .pg-support-heading {
        font-size: 13px !important;
    }

    .pg-support-subheading {
        font-size: 11px !important;
        margin-bottom: 20px !important;
    }

    .containerRB {
        font-size: 12px;
    }

    .pg-support-form-card input[type="text"],
    .pg-support-form-card textarea {
        font-size: 12px !important;
        padding: 10px 13px !important;
    }

    .pg-support-form-card input[type="submit"] {
        width: 100%;
        padding: 12px 20px !important;
    }
}

/* ─────────────────────────────────────────
   18. CART & CHECKOUT PAGES
───────────────────────────────────────── */
@media (max-width: 992px) {
    .pg-checkout-wrap .row {
        flex-direction: column;
    }

    .pg-checkout-section {
        padding: 24px 20px;
        border-radius: 12px;
    }
}

@media (max-width: 768px) {
    .pg-cart-wrap {
        padding: 40px 0 56px;
    }

    .pg-cart-table-wrap thead th {
        font-size: .7rem !important;
        padding: 12px 12px !important;
    }

    .pg-cart-table-wrap tbody td {
        padding: 12px 12px !important;
        font-size: .83rem;
    }

    .pg-cart-total-box {
        padding: 20px 18px;
    }

    .pg-qty-wrap input {
        width: 40px;
    }

    .pg-empty-cart {
        padding: 28px 18px;
    }

    .pg-empty-cart i {
        font-size: 2rem;
    }
}

@media (max-width: 576px) {
    .pg-cart-table-wrap {
        overflow-x: auto;
    }

    .pg-cart-table-wrap table {
        min-width: 420px;
    }

    .pg-checkout-section .row {
        margin: 0;
    }

    .pg-checkout-section .col-sm-6 {
        width: 100%;
        padding: 0;
    }

    .pg-login-notice {
        font-size: .82rem;
    }

    .pg-payment-icons img {
        height: 22px;
    }
}

/* ─────────────────────────────────────────
   19. PORTFOLIO PAGE
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pg-portfolio-wrap {
        padding: 44px 0 56px;
    }

    .pg-portfolio-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .pg-portfolio-item img {
        height: 170px !important;
    }
}

@media (max-width: 420px) {
    .pg-portfolio-grid {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .pg-portfolio-item img {
        height: 140px !important;
    }
}

/* ─────────────────────────────────────────
   20. HERO / PG-HERO (policy/contact pages)
───────────────────────────────────────── */
@media (max-width: 768px) {
    .pg-hero {
        padding: 60px 0 46px;
    }

    .pg-hero h1 {
        font-size: clamp(1.5rem, 5vw, 2.2rem) !important;
    }

    .pg-hero-badge {
        font-size: .68rem;
        padding: 5px 13px;
    }
}

@media (max-width: 420px) {
    .pg-hero {
        padding: 48px 0 38px;
    }

    .pg-hero h1 {
        font-size: 1.5rem !important;
    }
}

/* ─────────────────────────────────────────
   21. GLOBAL UTILITY FIXES FOR MOBILE
───────────────────────────────────────── */
@media (max-width: 768px) {

    /* Prevent horizontal overflow */
    .pnl-products-wrap,
    .pnl-services-wrap,
    .pnl-projects-wrap,
    .pnl-cta,
    .process-container,
    .testimonials-wrapper,
    .cb_client_logo_container,
    .pnl-stats-bar {
        overflow-x: hidden;
    }

    /* Container padding on mobile */
    .container {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    /* Section padding reduction */
    .pnl-products-wrap,
    .pnl-services-wrap,
    .pnl-projects-wrap {
        padding: 44px 0 52px;
    }

    .process-container {
        padding: 44px 0 52px !important;
    }

    .testimonials-wrapper {
        padding: 44px 0 52px !important;
    }
}

@media (max-width: 576px) {

    /* Tighter padding on small phones */
    .pnl-products-wrap,
    .pnl-services-wrap,
    .pnl-projects-wrap {
        padding: 36px 0 44px;
    }

    .process-container {
        padding: 36px 0 44px !important;
    }

    .testimonials-wrapper {
        padding: 36px 0 44px !important;
    }

    /* No hover transforms on touch — prevents stuck states */
    .recent-products-box:hover,
    .single-services-card:hover,
    .process-box:hover,
    .review-box:hover,
    .pg-stat-card:hover,
    .pg-contact-card:hover,
    .pg-portfolio-item:hover {
        transform: none !important;
    }
}

/* ================================================================
   LICENSE.PHP & DETAIL.PHP — Dashboard inner pages
   Uses same pg-dash-* layout as other dashboard pages
   ================================================================ */

/* ── Back link button ── */
.pg-back-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .1);
    color: rgba(255, 255, 255, .65) !important;
    font-size: 12px;
    font-weight: 600;
    padding: 9px 18px;
    border-radius: 8px;
    text-decoration: none !important;
    transition: all .25s ease;
    width: fit-content;
    margin-bottom: 10px;
}

.pg-back-btn:hover {
    background: rgba(0, 136, 204, .08);
    border-color: rgba(0, 136, 204, .35);
    color: #0088cc !important;
    text-decoration: none !important;
}


/* ── Shared content card used inside pg-dash-content ── */
.pg-inner-card {
    padding: 32px 36px;
}

.pg-inner-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 28px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, .06);
}

.pg-inner-card-title {
    color: rgba(255, 255, 255, .35);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 6px;
}

.pg-inner-card-heading {
    color: #fff;
    font-size: 1.25rem;
    font-weight: 800;
    margin: 0;
    letter-spacing: -0.01em;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

/* ── LICENSE page: URL form rows ── */
.pg-url-block {
    margin-bottom: 22px;
}

.pg-url-block:last-of-type {
    margin-bottom: 0;
}

.pg-url-label {
    display: flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, .5);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.pg-url-label span {
    background: rgba(0, 136, 204, .12);
    border: 1px solid rgba(0, 136, 204, .25);
    color: #0088cc;
    font-size: 11px;
    padding: 2px 9px;
    border-radius: 50px;
    font-weight: 800;
    letter-spacing: 1px;
}

.pg-url-input {
    background: rgba(255, 255, 255, .04) !important;
    border: 1px solid rgba(255, 255, 255, .1) !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 11px 16px !important;
    font-size: 12px !important;
    width: 100%;
    transition: border-color .25s ease, box-shadow .25s ease;
}

.pg-url-input:focus {
    border-color: rgba(0, 136, 204, .5) !important;
    box-shadow: 0 0 0 3px rgba(0, 136, 204, .08) !important;
    outline: none !important;
}

.pg-url-input::placeholder {
    color: rgba(255, 255, 255, .2);
}

.pg-url-meta {
    display: flex;
    align-items: center;
    gap: 6px;
    color: rgba(255, 255, 255, .25);
    font-size: 11px;
    margin-top: 7px;
    padding-left: 2px;
}

.pg-url-meta i {
    color: rgba(0, 136, 204, .4);
    font-size: .65rem;
}

.pg-url-divider {
    height: 1px;
    background: rgba(255, 255, 255, .05);
    margin: 22px 0;
}

.pg-license-footer {
    padding: 24px 36px;
    background: rgba(0, 136, 204, .04);
    border-top: 1px solid rgba(0, 136, 204, .1);
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 14px;
}

.pg-license-footer-note {
    color: rgba(255, 255, 255, .3);
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.pg-license-footer-note i {
    color: rgba(0, 136, 204, .4);
}

.pg-license-submit {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, #0088cc, #0065a0) !important;
    color: #fff !important;
    border: none !important;
    padding: 12px 32px !important;
    border-radius: 8px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all .3s ease !important;
    box-shadow: 0 0 24px rgba(0, 136, 204, .3);
    text-decoration: none !important;
}

.pg-license-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 0 40px rgba(0, 136, 204, .5) !important;
    color: #fff !important;
}

/* ── DETAIL page: section heading inside card ── */
.pg-section-divider {
    padding: 14px 20px;
    background: rgba(0, 136, 204, .05);
    border-bottom: 1px solid rgba(255, 255, 255, .05);
    border-top: 1px solid rgba(255, 255, 255, .05);
}

.pg-section-divider h4 {
    color: rgba(255, 255, 255, .45) !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin: 0 !important;
    display: flex;
    align-items: center;
    gap: 10px;
}

.pg-section-divider h4::after {
    content: '';
    flex: 1;
    height: 1px;
    background: rgba(255, 255, 255, .07);
}

.pg-section-divider h4 i {
    color: #0088cc;
    font-size: .75rem;
}

/* Order total strip */
.pg-order-total-strip {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 20px;
    padding: 16px 24px;
    background: rgba(0, 136, 204, .06);
    border-top: 1px solid rgba(0, 136, 204, .15);
    flex-wrap: wrap;
}

.pg-order-total-strip .label-txt {
    color: rgba(255, 255, 255, .4);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.pg-details-table.pg-dash-table tbody td,
.pg-details-table.pg-dash-table thead th {
    font-size: 12px !important;
    font-weight: 500 !important;
    vertical-align: middle;
}

.pg-order-total-strip .value-txt {
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-size: 1.3rem;
    font-weight: 900;
    letter-spacing: -0.02em;
}

/* Status badge */
.pg-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .8px;
    text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 50px;
    white-space: nowrap;
}

.pg-status::before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: currentColor;
    display: block;
    flex-shrink: 0;
}

.pg-status-completed {
    background: rgba(0, 200, 120, .1);
    border: 1px solid rgba(0, 200, 120, .25);
    color: #00c878 !important;
}

.pg-status-pending {
    background: rgba(255, 165, 0, .1);
    border: 1px solid rgba(255, 165, 0, .25);
    color: #ffa500 !important;
}

.pg-status-processing {
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .25);
    color: #0088cc !important;
}

.pg-status-failed {
    background: rgba(255, 80, 80, .1);
    border: 1px solid rgba(255, 80, 80, .25);
    color: #ff5050 !important;
}

.pg-status-cancelled {
    background: rgba(255, 80, 80, .1);
    border: 1px solid rgba(255, 80, 80, .25);
    color: #ff5050 !important;
}

/* ================================================================
   ERROR 404 PAGE  (e404-*)
   ================================================================ */
.e404-wrap {
    background: #060b14;
    min-height: 85vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 80px 20px;
    position: relative;
    overflow: hidden;
}

/* Radial glow */
.e404-wrap::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 700px;
    height: 500px;
    background: radial-gradient(ellipse at center,
            rgba(0, 136, 204, .12) 0%,
            transparent 65%);
    pointer-events: none;
}

/* Grid pattern */
.e404-wrap::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(0, 136, 204, .04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 136, 204, .04) 1px, transparent 1px);
    background-size: 60px 60px;
    pointer-events: none;
}

.e404-inner {
    position: relative;
    z-index: 1;
    text-align: center;
    max-width: 620px;
    width: 100%;
}

/* Giant 404 number */
.e404-number {
    font-size: clamp(7rem, 20vw, 13rem);
    font-weight: 900;
    line-height: .9;
    margin-bottom: 8px;
    background: linear-gradient(135deg,
            rgba(0, 136, 204, .15) 0%,
            rgba(0, 136, 204, .08) 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    position: relative;
    display: inline-block;
    letter-spacing: -6px;
}

/* Blue outline stroke on the number */
.e404-number::before {
    content: '404';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    -webkit-text-stroke: 1px transparent;
    filter: blur(0);
    opacity: .18;
    pointer-events: none;
}

/* Glowing line under the number */
.e404-line {
    width: 80px;
    height: 3px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
    margin: 20px auto 32px;
    border-radius: 2px;
    box-shadow: 0 0 16px rgba(0, 136, 204, .5);
}

/* Badge / tag */
.e404-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .25);
    color: #0088cc;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding: 5px 16px;
    border-radius: 50px;
    margin-bottom: 22px;
}

.e404-tag::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #0088cc;
    animation: e404-blink 1.4s ease-in-out infinite;
}

@keyframes e404-blink {

    0%,
    100% {
        opacity: 1;
    }

    50% {
        opacity: .25;
    }
}

/* Heading */
.e404-heading {
    color: #fff !important;
    font-size: clamp(1.5rem, 4vw, 2.2rem) !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em;
    margin: 0 0 16px !important;
    line-height: 1.2 !important;
}

/* Sub-text */
.e404-sub {
    color: rgba(255, 255, 255, .45) !important;
    font-size: .95rem !important;
    line-height: 1.75 !important;
    margin: 0 0 40px !important;
    max-width: 460px;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* CTA buttons row */
.e404-btns {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 48px;
}

.e404-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, #0088cc, #0060a8);
    color: #fff !important;
    font-size: .88rem;
    font-weight: 700;
    padding: 13px 30px;
    border-radius: 8px;
    text-decoration: none !important;
    transition: all .3s ease;
    box-shadow: 0 0 30px rgba(0, 136, 204, .4);
    white-space: nowrap;
}

.e404-btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 0 50px rgba(0, 136, 204, .6);
    color: #fff !important;
}

.e404-btn-ghost {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .12);
    color: rgba(255, 255, 255, .7) !important;
    font-size: .88rem;
    font-weight: 600;
    padding: 12px 24px;
    border-radius: 8px;
    text-decoration: none !important;
    transition: all .3s ease;
    white-space: nowrap;
}

.e404-btn-ghost:hover {
    background: rgba(255, 255, 255, .09);
    border-color: rgba(255, 255, 255, .25);
    color: #fff !important;
    transform: translateY(-3px);
}

/* Quick links strip */
.e404-links {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    flex-wrap: wrap;
}

.e404-links-label {
    color: rgba(255, 255, 255, .25);
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-right: 4px;
}

.e404-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: rgba(255, 255, 255, .4) !important;
    font-size: .78rem;
    font-weight: 600;
    text-decoration: none !important;
    padding: 5px 12px;
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, .07);
    background: rgba(255, 255, 255, .03);
    transition: all .25s ease;
}

.e404-link:hover {
    color: #0088cc !important;
    border-color: rgba(0, 136, 204, .3);
    background: rgba(0, 136, 204, .06);
}

.e404-link i {
    font-size: .65rem;
    opacity: .6;
}

/* Floating particles */
.e404-particles {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

.e404-particles span {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: var(--s);
    height: var(--s);
    background: rgba(0, 136, 204, .35);
    border-radius: 50%;
    animation: e404-float var(--d) ease-in-out infinite;
}

@keyframes e404-float {

    0%,
    100% {
        transform: translate(0, 0);
        opacity: .3;
    }

    50% {
        transform: translate(8px, -14px);
        opacity: .8;
    }
}


/* Responsive */
@media (max-width: 768px) {
    .pg-inner-card {
        padding: 22px 18px;
    }

    .pg-license-footer {
        padding: 18px 18px;
    }

    .pg-inner-card-heading {
        font-size: 1rem;
    }

    .pg-order-total-strip {
        justify-content: space-between;
        padding: 14px 18px;
    }
}

@media (max-width: 576px) {
    .pg-inner-card {
        padding: 18px 14px;
    }

    .pg-back-btn {
        font-size: 12px;
        padding: 8px 14px;
    }

    .pg-license-submit {
        width: 100%;
        justify-content: center;
        padding: 12px 20px !important;
    }

    .pg-license-footer {
        flex-direction: column;
        align-items: flex-start;
    }

    .pg-order-total-strip {
        flex-direction: column;
        align-items: flex-end;
        gap: 4px;
    }

    e404-wrap {
        padding: 60px 16px;
        min-height: 80vh;
    }

    .e404-number {
        letter-spacing: -3px;
    }

    .e404-btns {
        flex-direction: column;
        align-items: center;
    }

    .e404-btn-primary,
    .e404-btn-ghost {
        width: 100%;
        max-width: 280px;
        justify-content: center;
    }

    .e404-sub {
        font-size: .87rem !important;
    }

    .e404-heading {
        font-size: 1.5rem !important;
    }
}

/* ================================================================
   SINGLE PRODUCT PAGE — FAQ SECTION  (spg-faq-*)
   Bootstrap 5 accordion, dark theme
   ================================================================ */

.spg-faq-section {
    background: #0d0d14;
    padding: 80px 0 90px;
    position: relative;
    overflow: hidden;
}

/* subtle top separator line */
.spg-faq-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 204, .3), transparent);
}

/* faint grid background */
.spg-faq-section::after {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(0, 136, 204, .03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 136, 204, .03) 1px, transparent 1px);
    background-size: 56px 56px;
    pointer-events: none;
}

/* ── Section heading ── */
.spg-faq-header {
    text-align: center;
    margin-bottom: 50px;
    position: relative;
    z-index: 1;
}

.spg-faq-tag {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .25);
    color: #0088cc;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding: 5px 14px;
    border-radius: 50px;
    margin-bottom: 16px;
}

.spg-faq-title {
    color: #fff !important;
    font-size: clamp(1.6rem, 3.5vw, 2.3rem) !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em;
    margin: 0 0 12px !important;
    line-height: 1.2 !important;
}

.spg-faq-title span {
    background: linear-gradient(135deg, #0088cc, #00d4ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.spg-faq-sub {
    color: rgba(255, 255, 255, .4) !important;
    font-size: .88rem !important;
    margin: 0 auto !important;
    max-width: 440px;
}

/* ── Accordion wrapper ── */
.spg-faq-accordion {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* ── Each item ── */
.spg-faq-item {
    background: #111118 !important;
    border: 1px solid rgba(255, 255, 255, .07) !important;
    border-radius: 14px !important;
    overflow: hidden;
    transition: border-color .3s ease, box-shadow .3s ease;
}

.spg-faq-item:has(.accordion-button:not(.collapsed)) {
    border-color: rgba(0, 136, 204, .35) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, .3) !important;
}

/* ── Question button ── */
.spg-faq-btn {
    background: transparent !important;
    color: rgba(255, 255, 255, .85) !important;
    font-size: .93rem !important;
    font-weight: 600 !important;
    padding: 20px 24px !important;
    border: none !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    width: 100% !important;
    text-align: left !important;
    transition: color .25s ease, background .25s ease !important;
    position: relative;
}

/* open state */
.spg-faq-btn:not(.collapsed) {
    color: #fff !important;
    background: rgba(0, 136, 204, .06) !important;
}

/* remove default BS5 arrow — we use ::after below */
.spg-faq-btn::after {
    content: '\f078' !important;
    /* fa-chevron-down */
    font-family: 'Font Awesome 5 Pro', 'Font Awesome 5 Free', FontAwesome !important;
    font-weight: 900 !important;
    font-size: .65rem !important;
    color: rgba(0, 136, 204, .6) !important;
    background-image: none !important;
    margin-left: auto !important;
    flex-shrink: 0 !important;
    transition: transform .3s ease !important;
    width: auto !important;
    height: auto !important;
}

.spg-faq-btn:not(.collapsed)::after {
    transform: rotate(180deg) !important;
    color: #0088cc !important;
}

/* numbered badge on each question */
.spg-faq-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 28px;
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .2);
    border-radius: 6px;
    color: #0088cc;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .5px;
    flex-shrink: 0;
    transition: background .25s ease, border-color .25s ease;
}

.spg-faq-btn:not(.collapsed) .spg-faq-num {
    background: rgba(0, 136, 204, .18);
    border-color: rgba(0, 136, 204, .4);
}

/* top blue line that appears when item is open */
.spg-faq-item:has(.accordion-button:not(.collapsed))::before {
    content: '';
    display: block;
    height: 2px;
    background: linear-gradient(90deg, transparent, #0088cc, transparent);
}

/* ── Answer body ── */
.spg-faq-body {
    background: rgba(0, 0, 0, .2) !important;
    color: rgba(255, 255, 255, .6) !important;
    font-size: .88rem !important;
    line-height: 1.8 !important;
    padding: 0 24px 22px 66px !important;
    /* indent to align with question text */
    border-top: 1px solid rgba(255, 255, 255, .05) !important;
}

/* style any links inside the answer */
.spg-faq-body a {
    color: #0088cc !important;
    text-decoration: underline !important;
    transition: color .2s ease;
}

.spg-faq-body a:hover {
    color: #00d4ff !important;
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .spg-faq-section {
        padding: 56px 0 64px;
    }

    .spg-faq-header {
        margin-bottom: 36px;
    }

    .spg-faq-title {
        font-size: 1.5rem !important;
    }

    .spg-faq-btn {
        font-size: .87rem !important;
        padding: 16px 18px !important;
        gap: 11px !important;
    }

    .spg-faq-body {
        padding: 0 18px 18px 18px !important;
        font-size: .83rem !important;
    }

    .spg-faq-num {
        min-width: 24px;
        height: 24px;
        font-size: .62rem;
    }
}

@media (max-width: 576px) {
    .spg-faq-section {
        padding: 44px 0 52px;
    }

    .spg-faq-title {
        font-size: 1.3rem !important;
    }

    .spg-faq-accordion {
        gap: 8px;
    }

    .spg-faq-item {
        border-radius: 10px !important;
    }
}

/* ================================================================
   AGREEMENT / EULA PAGE  (agr-*)
   Reuses pg-hero, pg-policy-wrap, pg-policy-card as base layout
   ================================================================ */

/* ── Section heading inside agreement ── */
.agr-section {
    margin-bottom: 44px;
    padding-bottom: 44px;
    border-bottom: 1px solid rgba(255, 255, 255, .05);
}

.agr-section:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.agr-section-title {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}

.agr-section-title h3 {
    color: #fff !important;
    font-size: 1rem !important;
    font-weight: 800 !important;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    margin: 0 !important;
    line-height: 1.3 !important;
}

.agr-section-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .25);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0088cc;
    font-size: .82rem;
}

/* ── Body text ── */
.agr-text {
    color: rgba(255, 255, 255, .55) !important;
    font-size: .92rem !important;
    line-height: 1.85 !important;
    margin-bottom: 16px !important;
}

.agr-text:last-child {
    margin-bottom: 0 !important;
}

.agr-text strong {
    color: rgba(255, 255, 255, .8) !important;
    font-weight: 700;
}

/* ── Numbered ordered list ── */
.agr-list-ordered {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 8px !important;
    display: flex;
    flex-direction: column;
    gap: 10px;
    counter-reset: agr-counter;
}

.agr-list-ordered li {
    counter-increment: agr-counter;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    background: rgba(255, 255, 255, .02);
    border: 1px solid rgba(255, 255, 255, .05);
    border-radius: 10px;
    padding: 14px 18px;
    color: rgba(255, 255, 255, .55) !important;
    font-size: .88rem !important;
    line-height: 1.75 !important;
    transition: border-color .25s ease, background .25s ease;
}

.agr-list-ordered li:hover {
    border-color: rgba(0, 136, 204, .2);
    background: rgba(0, 136, 204, .04);
}

.agr-list-ordered li::before {
    content: counter(agr-counter, decimal-leading-zero);
    min-width: 28px;
    height: 28px;
    background: rgba(0, 136, 204, .1);
    border: 1px solid rgba(0, 136, 204, .25);
    border-radius: 6px;
    color: #0088cc;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .5px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 1px;
}

/* ── Bullet unordered list ── */
.agr-list-bullet {
    list-style: none !important;
    padding: 0 !important;
    margin: 12px 0 !important;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.agr-list-bullet li {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    color: rgba(255, 255, 255, .55) !important;
    font-size: .88rem !important;
    line-height: 1.75 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
}

.agr-list-bullet li::before {
    content: '';
    width: 6px;
    height: 6px;
    min-width: 6px;
    border-radius: 50%;
    background: #0088cc;
    margin-top: 8px;
    opacity: .7;
    flex-shrink: 0;
}

/* ── Sub-label inside a section (e.g. "Web Designing Services") ── */
.agr-sub-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: rgba(0, 136, 204, .08);
    border: 1px solid rgba(0, 136, 204, .2);
    color: #0088cc;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    padding: 4px 14px;
    border-radius: 50px;
    margin: 16px 0 10px;
}

/* ── Warning / important callout box ── */
.agr-callout {
    background: rgba(0, 136, 204, .06);
    border: 1px solid rgba(0, 136, 204, .2);
    border-left: 3px solid #0088cc;
    border-radius: 0 10px 10px 0;
    padding: 16px 20px;
    margin: 20px 0 0;
    color: rgba(255, 255, 255, .6) !important;
    font-size: .85rem !important;
    line-height: 1.75 !important;
}

.agr-callout strong {
    color: #0088cc !important;
    font-weight: 700;
    display: block;
    margin-bottom: 5px;
    font-size: .72rem;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

/* ── Responsive ── */
@media (max-width: 768px) {
    .agr-section {
        margin-bottom: 32px;
        padding-bottom: 32px;
    }

    .agr-section-title h3 {
        font-size: .88rem !important;
    }

    .agr-list-ordered li {
        padding: 12px 14px;
        gap: 12px;
    }

    .agr-list-ordered li::before {
        min-width: 24px;
        height: 24px;
        font-size: .62rem;
    }

    .agr-text {
        font-size: .87rem !important;
    }
}

@media (max-width: 576px) {
    .agr-section {
        margin-bottom: 24px;
        padding-bottom: 24px;
    }

    .agr-list-ordered li {
        font-size: .83rem !important;
        padding: 10px 12px;
        gap: 10px;
    }

    .agr-list-bullet li {
        font-size: .83rem !important;
    }
}