/* =========================================================
   CyberTech PC — Header Services Dropdown v2.9
   Top-header trigger + UL/LI row dropdown
   ========================================================= */

.ct-services-nav-item {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    overflow: visible !important;
    z-index: 50 !important;
}

.ct-services-nav-trigger {
    appearance: none !important;
    -webkit-appearance: none !important;

    height: 40px !important;
    min-width: 86px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;

    padding: 0 11px !important;

    border: 1px solid rgba(148,163,184,.28) !important;
    border-radius: 12px !important;

    background: rgba(255,255,255,.82) !important;
    color: #172033 !important;

    font: inherit !important;
    font-size: 12.5px !important;
    font-weight: 800 !important;

    line-height: 1 !important;
    cursor: pointer !important;

    box-shadow: 0 5px 15px rgba(15,23,42,.06) !important;

    transition:
        transform .2s ease,
        color .2s ease,
        border-color .2s ease,
        background .2s ease,
        box-shadow .2s ease !important;
}

.ct-services-nav-trigger:hover,
.ct-services-nav-item.is-open .ct-services-nav-trigger,
.ct-services-nav-item:focus-within .ct-services-nav-trigger {
    color: #1d4ed8 !important;
    border-color: rgba(37,99,235,.34) !important;
    background: #fff !important;
    box-shadow: 0 9px 24px rgba(37,99,235,.13) !important;
}

.ct-services-nav-trigger-icon {
    width: 17px !important;
    height: 17px !important;
    display: grid !important;
    place-items: center !important;
    color: #2563eb !important;
}

.ct-services-nav-trigger-icon svg,
.ct-services-row-icon svg {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.9 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.ct-services-nav-chevron {
    font-size: 10px !important;
    transition: transform .2s ease !important;
}

.ct-services-nav-item:hover .ct-services-nav-chevron,
.ct-services-nav-item.is-open .ct-services-nav-chevron,
.ct-services-nav-item:focus-within .ct-services-nav-chevron {
    transform: rotate(180deg) !important;
}

/* Dropdown */
.ct-services-dropdown {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    left: 0 !important;
    right: auto !important;

    width: min(390px, calc(100vw - 24px)) !important;

    padding: 44px 8px 36px !important;

    direction: rtl !important;

    border: 1px solid rgba(120,142,190,.22) !important;
    border-radius: 17px !important;

    background:
        linear-gradient(180deg, rgba(7,15,31,.985), rgba(4,10,23,.985)) !important;

    box-shadow:
        0 24px 60px rgba(2,6,23,.32),
        0 0 0 1px rgba(59,130,246,.05) !important;

    overflow: hidden !important;

    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;

    transform: translateY(-8px) scale(.985) !important;
    transform-origin: top left !important;

    transition:
        opacity .18s ease,
        visibility .18s ease,
        transform .18s ease !important;

    z-index: 2147483646 !important;
}

.ct-services-nav-item:hover .ct-services-dropdown,
.ct-services-nav-item:focus-within .ct-services-dropdown,
.ct-services-nav-item.is-open .ct-services-dropdown {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) scale(1) !important;
}

/* Header of dropdown */
.ct-services-dropdown-head {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: 0 !important;

    height: 42px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;

    padding: 7px 12px !important;

    border-bottom: 1px solid rgba(148,163,184,.13) !important;
    background: rgba(4,10,23,.96) !important;

    z-index: 8 !important;
}

.ct-services-dropdown-head > div {
    min-width: 0 !important;
}

.ct-services-dropdown-head strong {
    display: block !important;
    color: #fff !important;
    font-size: 11.5px !important;
    line-height: 1.25 !important;
}

.ct-services-dropdown-head span {
    display: block !important;
    margin-top: 1px !important;
    color: #8190a8 !important;
    font-size: 9px !important;
    line-height: 1.2 !important;
}

.ct-services-dropdown-head a {
    flex: 0 0 auto !important;
    color: #60a5fa !important;
    font-size: 9.5px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

/* Scroll body */
.ct-services-dropdown-scroll {
    position: relative !important;
    max-height: 330px !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;

    padding: 1px 0 !important;

    overscroll-behavior: contain !important;
    scroll-behavior: smooth !important;

    scrollbar-width: thin !important;
    scrollbar-color: #2563eb rgba(255,255,255,.04) !important;
}

.ct-services-dropdown-scroll::-webkit-scrollbar {
    width: 5px !important;
}

.ct-services-dropdown-scroll::-webkit-scrollbar-track {
    background: rgba(255,255,255,.035) !important;
}

.ct-services-dropdown-scroll::-webkit-scrollbar-thumb {
    border-radius: 999px !important;
    background: linear-gradient(180deg, #2563eb, #38bdf8) !important;
}

.ct-services-dropdown-list {
    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;

    list-style: none !important;
}

.ct-services-dropdown-row {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* LI row */
.ct-services-dropdown-row > a {
    display: grid !important;
    grid-template-columns: 38px minmax(0, 1fr) 16px !important;
    align-items: center !important;
    gap: 10px !important;

    min-height: 62px !important;
    padding: 8px 10px !important;

    border: 1px solid rgba(148,163,184,.13) !important;
    border-radius: 11px !important;

    background: rgba(255,255,255,.035) !important;
    color: #fff !important;

    text-decoration: none !important;

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease !important;
}

.ct-services-dropdown-row > a:hover,
.ct-services-dropdown-row > a:focus-visible {
    transform: translateX(-2px) !important;
    background: rgba(37,99,235,.14) !important;
    border-color: rgba(59,130,246,.38) !important;
    outline: none !important;
}

.ct-services-row-icon {
    width: 38px !important;
    height: 38px !important;

    display: grid !important;
    place-items: center !important;

    padding: 9px !important;

    border-radius: 10px !important;

    color: #fff !important;
    background: linear-gradient(135deg, #2563eb, #4f46e5) !important;

    box-sizing: border-box !important;

    box-shadow:
        0 7px 17px rgba(37,99,235,.26),
        inset 0 1px 0 rgba(255,255,255,.18) !important;
}

.ct-services-row-text {
    display: block !important;
    min-width: 0 !important;
}

.ct-services-row-text strong {
    display: block !important;

    margin: 0 0 2px !important;

    color: #fff !important;

    font-size: 11.5px !important;
    font-weight: 900 !important;
    line-height: 1.35 !important;
}

.ct-services-row-text small {
    display: -webkit-box !important;

    overflow: hidden !important;

    color: #9aa9be !important;

    font-size: 9.5px !important;
    font-weight: 500 !important;
    line-height: 1.45 !important;

    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

.ct-services-row-arrow {
    color: #60a5fa !important;
    font-size: 15px !important;
    line-height: 1 !important;
}

/* Info rows */
.ct-services-info-row > div {
    padding: 9px 11px !important;

    border: 1px dashed rgba(96,165,250,.16) !important;
    border-radius: 10px !important;

    background: rgba(37,99,235,.045) !important;
}

.ct-services-info-row strong {
    display: block !important;
    color: #dbeafe !important;
    font-size: 10.5px !important;
    line-height: 1.3 !important;
}

.ct-services-info-row small {
    display: block !important;
    margin-top: 2px !important;
    color: #8190a8 !important;
    font-size: 9px !important;
    line-height: 1.35 !important;
}

/* Hover scroll zones */
.ct-services-hover-scroll {
    position: absolute !important;
    right: 0 !important;
    left: 0 !important;

    height: 28px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    color: #60a5fa !important;

    font-size: 9px !important;
    line-height: 1 !important;

    cursor: default !important;
    user-select: none !important;

    opacity: .72 !important;

    z-index: 9 !important;

    transition: opacity .18s ease, color .18s ease !important;
}

.ct-services-hover-scroll:hover {
    opacity: 1 !important;
    color: #38bdf8 !important;
}

.ct-services-hover-scroll--up {
    top: 42px !important;
    background: linear-gradient(to bottom, rgba(4,10,23,.96), rgba(4,10,23,0)) !important;
}

.ct-services-hover-scroll--down {
    bottom: 0 !important;
    background: linear-gradient(to top, rgba(4,10,23,.98), rgba(4,10,23,0)) !important;
}

/* Prevent header clipping */
html body > header.header.white-glass-header,
html body > header.header.white-glass-header .header-actions {
    overflow: visible !important;
}

/* Dark mode already uses dark dropdown; only trigger changes */
html[data-theme="dark"] .ct-services-nav-trigger {
    background: rgba(15,27,46,.88) !important;
    border-color: rgba(148,163,184,.18) !important;
    color: #e5edf8 !important;
}

/* Tablet/mobile */
@media (max-width: 820px) {
    .ct-services-nav-trigger {
        min-width: 42px !important;
        width: 42px !important;
        padding: 0 !important;
    }

    .ct-services-nav-label,
    .ct-services-nav-chevron {
        display: none !important;
    }

    .ct-services-nav-trigger-icon {
        width: 19px !important;
        height: 19px !important;
    }

    .ct-services-dropdown {
        position: fixed !important;

        top: var(--ct-services-menu-top, 76px) !important;
        left: 8px !important;
        right: 8px !important;

        width: auto !important;
        max-width: none !important;

        transform-origin: top center !important;
    }

    .ct-services-dropdown-scroll {
        max-height: min(370px, calc(100vh - 150px)) !important;
    }
}

@media (max-width: 480px) {
    .ct-services-dropdown {
        left: 5px !important;
        right: 5px !important;
    }

    .ct-services-dropdown-row > a {
        min-height: 58px !important;
        grid-template-columns: 36px minmax(0, 1fr) 14px !important;
        gap: 8px !important;
        padding: 7px 8px !important;
    }

    .ct-services-row-icon {
        width: 36px !important;
        height: 36px !important;
        padding: 8px !important;
    }
}


/* v3.0 alignment patch */
html[dir="rtl"] .ct-services-nav-item .ct-services-dropdown {
    direction: rtl !important;
}

html body > header.header.white-glass-header .header-actions {
    overflow: visible !important;
}

html body > header.header.white-glass-header .ct-services-nav-item {
    overflow: visible !important;
}
