/* =============================================================================
   UXArmy — Author Archive Page
   All typography/colour/layout properties use !important to defeat
   Elementor, theme, and plugin stylesheet overrides.
   ============================================================================= */

/* ── Brand tokens ─────────────────────────────────────────────────────────── */
.uxarmy-author-page {
    --ux-primary:       #1D4FFD;
    --ux-primary-deep:  #2E62E9;
    --ux-primary-tint:  #EAEFFD;
    --ux-ink:           #01122B;
    --ux-body:          #333333;
    --ux-muted:         #707070;
    --ux-line:          #E5E7EB;
    --ux-bg:            #FFFFFF;
    --shadow:           0 6px 24px rgba(1,18,43,.07);
    font-family:        'Inter', sans-serif !important;
    color:              #333333 !important;
    background:         #FFFFFF !important;
    line-height:        1.65 !important;
    font-size:          16px !important;
    /* Prevent iOS Safari from bumping font-size on landscape orientation. */
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust:         100% !important;
}

/* Force Inter on every descendant so Elementor/Poppins can't leak in */
.uxarmy-author-page *,
.uxarmy-author-page *::before,
.uxarmy-author-page *::after {
    font-family: 'Inter', sans-serif !important;
    box-sizing:  border-box !important;
}

/* ── Utility ──────────────────────────────────────────────────────────────── */
.uxarmy-author-page .author-sr-only {
    position:   absolute !important;
    width:      1px      !important;
    height:     1px      !important;
    padding:    0        !important;
    margin:     -1px     !important;
    overflow:   hidden   !important;
    clip:       rect(0,0,0,0) !important;
    white-space: nowrap  !important;
    border:     0        !important;
}

/* ── Inner container ──────────────────────────────────────────────────────── */
.uxarmy-author-page .author-wrap {
    max-width:   1200px  !important;
    margin-left: auto    !important;
    margin-right: auto   !important;
    padding-left:  24px  !important;
    padding-right: 24px  !important;
    box-sizing:  border-box !important;
}

/* ── Breadcrumb ───────────────────────────────────────────────────────────── */
.uxarmy-author-page .author-breadcrumb {
    max-width:      1200px  !important;
    margin-left:    auto    !important;
    margin-right:   auto    !important;
    padding:        40px 24px 12px !important;
    box-sizing:     border-box !important;
    font-size:      14px    !important;
    color:          #707070 !important;
    font-weight:    400     !important;
    line-height:    1.5     !important;
}
.uxarmy-author-page .author-breadcrumb ol {
    list-style:  none    !important;
    display:     flex    !important;
    flex-wrap:   wrap    !important;
    gap:         6px     !important;
    align-items: center  !important;
    margin:      0       !important;
    padding:     0       !important;
}
.uxarmy-author-page .author-breadcrumb li {
    display:     inline-flex !important;
    align-items: center      !important;
    line-height: 1.2         !important;
    margin:      0           !important;
    padding:     0           !important;
}
.uxarmy-author-page .author-breadcrumb li + li::before {
    content:     "›"          !important;
    display:     inline-flex  !important;
    align-items: center       !important;
    margin-right: 6px         !important;
    color:       #A9A9BC      !important;
    font-size:   16px         !important;
    line-height: 1            !important;
    transform:   translateY(-1px) !important;
}
.uxarmy-author-page .author-breadcrumb a,
.uxarmy-author-page .author-breadcrumb span {
    display:     inline-flex !important;
    align-items: center      !important;
    line-height: 1.2         !important;
}
.uxarmy-author-page .author-breadcrumb a {
    color:           #707070 !important;
    text-decoration: none    !important;
    font-size:       14px    !important;
}
.uxarmy-author-page .author-breadcrumb a:hover { color: #1D4FFD !important; }
.uxarmy-author-page .author-breadcrumb [aria-current] {
    color:       #01122B !important;
    font-weight: 500     !important;
}

/* ── Author hero ──────────────────────────────────────────────────────────── */
.uxarmy-author-page .author-hero {
    padding:       36px 0 44px !important;
    border-bottom: 1px solid #E5E7EB !important;
    background:    #FFFFFF !important;
    margin:        0 !important;
}
.uxarmy-author-page .author-hero-grid {
    display:               grid    !important;
    grid-template-columns: minmax(280px, 420px) 1fr !important;
    gap:                   40px    !important;
    align-items:           start   !important;
    max-width:             1200px  !important;
    margin-left:           auto    !important;
    margin-right:          auto    !important;
    padding-left:          24px    !important;
    padding-right:         24px    !important;
    box-sizing:            border-box !important;
}

/* ── Left column ──────────────────────────────────────────────────────────── */
.uxarmy-author-page .author-left-col {
    display:        flex   !important;
    flex-direction: column !important;
    gap:            16px   !important;
    min-width:      0      !important;
}

.uxarmy-author-page .avatar-ring {
    position:      relative !important;
    width:         100%     !important;
    border-radius: 14px     !important;
    overflow:      hidden   !important;
}
.uxarmy-author-page .avatar-ring img {
    width:         100%     !important;
    height:        auto     !important;
    aspect-ratio:  1 / 1    !important;
    object-fit:    cover    !important;
    border-radius: 14px     !important;
    background:    #fff     !important;
    display:       block    !important;
    max-width:     100%     !important;
    margin:        0        !important;
    padding:       0        !important;
}

.uxarmy-author-page .author-social-links {
    display:   flex !important;
    flex-wrap: wrap !important;
    gap:       10px !important;
    margin:    0    !important;
    padding:   0    !important;
}
.uxarmy-author-page .author-social-links a {
    display:         inline-flex !important;
    align-items:     center      !important;
    gap:             6px         !important;
    font-size:       14px        !important;
    font-weight:     500         !important;
    text-decoration: none        !important;
    color:           #01122B     !important;
    background:      #fff        !important;
    border:          1px solid #E5E7EB !important;
    border-radius:   999px       !important;
    padding:         7px 14px    !important;
    white-space:     nowrap      !important;
    line-height:     1.45        !important;
}
.uxarmy-author-page .author-social-links a:hover {
    border-color: #1D4FFD !important;
    color:        #1D4FFD !important;
    background:   #fff    !important;
}

.uxarmy-author-page .availability-card {
    display:          flex             !important;
    align-items:      center           !important;
    justify-content:  space-between    !important;
    gap:              12px             !important;
    padding:          14px 16px        !important;
    border-left:      4px solid #1D4FFD !important;
    border-top:       none             !important;
    border-right:     none             !important;
    border-bottom:    none             !important;
    background:       #fff             !important;
    border-radius:    8px              !important;
    box-shadow:       0 6px 24px rgba(1,18,43,.07) !important;
    margin:           0                !important;
}
.uxarmy-author-page .availability-card p {
    margin:      0       !important;
    padding:     0       !important;
    font-size:   16px    !important;
    font-weight: 400     !important;
    color:       #01122B !important;
    line-height: 1.45    !important;
}
.uxarmy-author-page .availability-card a {
    display:         inline-flex !important;
    align-items:     center      !important;
    justify-content: center      !important;
    gap:             8px         !important;
    white-space:     nowrap      !important;
    background:      #1D4FFD     !important;
    color:           #fff        !important;
    text-decoration: none        !important;
    border-radius:   8px         !important;
    padding:         10px 18px   !important;
    font-weight:     600         !important;
    font-size:       14px        !important;
    line-height:     1.45        !important;
}
.uxarmy-author-page .availability-card a:hover { background: #2E62E9 !important; }
.uxarmy-author-page .availability-card a svg {
    width:           15px        !important;
    height:          15px        !important;
    stroke:          currentColor !important;
    fill:            none        !important;
    stroke-width:    2           !important;
    stroke-linecap:  round       !important;
    stroke-linejoin: round       !important;
    flex-shrink:     0           !important;
}

/* ── Right column ─────────────────────────────────────────────────────────── */
.uxarmy-author-page .author-right-col {
    min-width: 0 !important;
    display:   block !important;
}

.uxarmy-author-page .author-eyebrow {
    display:        inline-block !important;
    font-size:      12px         !important;
    font-weight:    600          !important;
    letter-spacing: .12em        !important;
    text-transform: uppercase    !important;
    color:          #1D4FFD      !important;
    background:     #EAEFFD      !important;
    padding:        8px 12px     !important;
    border-radius:  999px        !important;
    margin-bottom:  10px         !important;
    margin-top:     0            !important;
    line-height:    1.4          !important;
}
.uxarmy-author-page .author-eyebrow-mobile {
    display:    none         !important;
    align-self: flex-start   !important;
}

.uxarmy-author-page .author-hero h1 {
    font-size:      clamp(24px, 3.2vw, 34px) !important;
    font-weight:    700                       !important;
    color:          #01122B                   !important;
    line-height:    1.2                       !important;
    letter-spacing: -.02em                    !important;
    margin:         0 0 6px                   !important;
    padding:        0                         !important;
}

.uxarmy-author-page h2 { letter-spacing: -.01em !important; }
.uxarmy-author-page h3 { letter-spacing: -.01em !important; }

.uxarmy-author-page .author-role {
    font-size:   16px         !important;
    font-weight: 400          !important;
    color:       #333333      !important;
    margin-top:  6px          !important;
    margin-bottom: 0          !important;
    display:     flex         !important;
    align-items: center       !important;
    gap:         10px         !important;
    flex-wrap:   nowrap       !important;
    line-height: 1.45         !important;
    padding:     0            !important;
}
.uxarmy-author-page .author-role > span:last-child { flex: 1 !important; }
.uxarmy-author-page .author-role .author-company {
    color:       #1D4FFD !important;
    font-weight: 500     !important;
}

.uxarmy-author-page .author-icon {
    display:         inline-flex !important;
    align-items:     center      !important;
    justify-content: center      !important;
    width:           24px        !important;
    height:          24px        !important;
    color:           #333333     !important;
    flex:            none        !important;
    margin-top:      0           !important;
    flex-shrink:     0           !important;
}
.uxarmy-author-page .author-icon svg {
    width:           20px        !important;
    height:          20px        !important;
    stroke:          currentColor !important;
    fill:            none        !important;
    stroke-width:    1.8         !important;
    stroke-linecap:  round       !important;
    stroke-linejoin: round       !important;
}

.uxarmy-author-page .author-info-stack {
    list-style:     none   !important;
    margin:         14px 0 0 !important;
    padding:        0      !important;
    display:        flex   !important;
    flex-direction: column !important;
    gap:            12px   !important;
}
.uxarmy-author-page .author-info-stack li {
    display:     flex        !important;
    align-items: center      !important;
    gap:         12px        !important;
    color:       #01122B     !important;
    font-size:   16px        !important;
    line-height: 1.45        !important;
    font-weight: 400         !important;
    margin:      0           !important;
    padding:     0           !important;
    list-style:  none        !important;
}
.uxarmy-author-page .author-info-stack li span {
    font-size:   16px    !important;
    font-weight: 400     !important;
    color:       #01122B !important;
    line-height: 1.45    !important;
}

.uxarmy-author-page .author-stats {
    display:    flex    !important;
    flex-wrap:  wrap    !important;
    gap:        6px 20px !important;
    margin:     14px 0 0 !important;
    padding:    0       !important;
    list-style: none    !important;
    font-size:  15px    !important;
    color:      #333333 !important;
    font-weight: 400    !important;
}
.uxarmy-author-page .author-stats li {
    margin:     0       !important;
    padding:    0       !important;
    list-style: none    !important;
    font-size:  15px    !important;
    color:      #333333 !important;
    line-height: 1.45   !important;
}
.uxarmy-author-page .author-stats li strong {
    color:       #01122B !important;
    font-weight: 600     !important;
    font-size:   15px    !important;
}

.uxarmy-author-page .author-meta-row {
    display:        flex         !important;
    flex-direction: column       !important;
    align-items:    flex-start   !important;
    gap:            10px         !important;
    margin-top:     18px         !important;
    margin-bottom:  0            !important;
    padding:        0            !important;
}
.uxarmy-author-page .author-meta-row > h2 {
    font-size:   16px    !important;
    line-height: 1.4     !important;
    font-weight: 600     !important;
    color:       #01122B !important;
    margin:      0       !important;
    padding:     0       !important;
}

.uxarmy-author-page .author-expertise {
    display:    flex   !important;
    flex-wrap:  wrap   !important;
    gap:        10px   !important;
    margin:     4px 0 0 !important;
    padding:    0      !important;
    list-style: none   !important;
}
.uxarmy-author-page .author-expertise li {
    font-size:     13.5px  !important;
    font-weight:   500     !important;
    color:         #2E62E9 !important;
    background:    #EAEFFD !important;
    border-radius: 999px   !important;
    padding:       6px 14px !important;
    list-style:    none    !important;
    margin:        0       !important;
    line-height:   1.45    !important;
}

.uxarmy-author-page .author-bio-inline { margin-top: 22px !important; }
.uxarmy-author-page .author-bio-inline > h2 {
    font-size:     20px    !important;
    font-weight:   600     !important;
    color:         #01122B !important;
    margin-bottom: 10px    !important;
    margin-top:    0       !important;
    padding:       0       !important;
    line-height:   1.3     !important;
}
.uxarmy-author-page .author-bio-inline p {
    font-size:     15.5px  !important;
    line-height:   1.6     !important;
    margin-bottom: 12px    !important;
    margin-top:    0       !important;
    color:         #333333 !important;
    padding:       0       !important;
}

/* ── Articles section ─────────────────────────────────────────────────────── */
.uxarmy-author-page .author-articles {
    padding:    36px 0 12px !important;
    margin:     0           !important;
}
.uxarmy-author-page .author-articles > h2 {
    font-size:     24px    !important;
    font-weight:   600     !important;
    color:         #01122B !important;
    margin-bottom: 14px    !important;
    margin-top:    0       !important;
    padding:       0       !important;
    line-height:   1.3     !important;
}
.uxarmy-author-page .author-articles > h2 .author-article-count {
    font-size:   18px    !important;
    font-weight: 400     !important;
    color:       #707070 !important;
    margin-left: 6px     !important;
}

/* ── Newsletter section ───────────────────────────────────────────────────── */
.uxarmy-author-page .author-subscribe {
    border-top:            1px solid #E5E7EB !important;
    margin:                44px 0 0          !important;
    padding:               44px 0 80px       !important;
    display:               grid              !important;
    grid-template-columns: 1fr 1fr           !important;
    gap:                   48px              !important;
    align-items:           start             !important;
}
.uxarmy-author-page .author-subscribe .author-nl-intro {
    font-size:   17px    !important;
    line-height: 1.6     !important;
    color:       #333333 !important;
    max-width:   460px   !important;
    margin:      0       !important;
    padding:     0       !important;
}
.uxarmy-author-page .author-subscribe .author-nl-intro p {
    font-size:   17px    !important;
    line-height: 1.6     !important;
    color:       #333333 !important;
    margin:      0       !important;
    padding:     0       !important;
}
.uxarmy-author-page .author-subscribe .author-nl-intro strong {
    color:       #01122B !important;
    font-weight: 600     !important;
}

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
    .uxarmy-author-page .author-hero-grid {
        grid-template-columns: minmax(250px, 300px) 1fr !important;
        gap: 28px !important;
    }
    .uxarmy-author-page .author-social-links a { font-size: 13px !important; padding: 6px 12px !important; }
    .uxarmy-author-page .availability-card { padding: 12px 14px !important; }
    .uxarmy-author-page .availability-card p { font-size: 15px !important; }
}
@media (max-width: 760px) {
    .uxarmy-author-page .author-hero-grid {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }
    .uxarmy-author-page .author-left-col   { max-width: 520px !important; margin: 0 auto !important; }
    .uxarmy-author-page .author-eyebrow-mobile { display: inline-block !important; }
    .uxarmy-author-page .author-eyebrow:not(.author-eyebrow-mobile) { display: none !important; }
}
@media (max-width: 640px) {
    .uxarmy-author-page .author-wrap            { padding: 0 16px !important; }
    .uxarmy-author-page .author-breadcrumb      { padding: 16px 16px 10px !important; }
    .uxarmy-author-page .author-hero            { padding: 24px 0 30px !important; }
    .uxarmy-author-page .author-hero-grid       { gap: 30px !important; padding: 0 16px !important; }
    .uxarmy-author-page .author-left-col        { max-width: 420px !important; width: 100% !important; }
    .uxarmy-author-page .author-social-links    { gap: 8px !important; }
    .uxarmy-author-page .author-social-links a  { font-size: 13px !important; padding: 7px 12px !important; }
    .uxarmy-author-page .availability-card {
        width:          100%         !important;
        flex-direction: column       !important;
        align-items:    flex-start   !important;
        gap:            16px         !important;
        padding:        20px 14px 16px !important;
        margin:         8px 0 6px    !important;
    }
    .uxarmy-author-page .availability-card p   { font-size: 17px !important; line-height: 1.4 !important; font-weight: 500 !important; }
    .uxarmy-author-page .availability-card a   { width: 100% !important; justify-content: center !important; }
    .uxarmy-author-page .author-right-col      { display: flex !important; flex-direction: column !important; gap: 0 !important; }
    .uxarmy-author-page .author-eyebrow-mobile { display: inline-block !important; margin-bottom: 10px !important; }
    .uxarmy-author-page .author-right-col > .author-eyebrow:not(.author-eyebrow-mobile) { display: none !important; }
    .uxarmy-author-page .author-hero h1         { margin-top: 12px !important; padding: 12px 0 !important; }
    .uxarmy-author-page .author-role            { margin-top: 0 !important; font-size: 15px !important; }
    .uxarmy-author-page .author-info-stack      { margin-top: 10px !important; }
    .uxarmy-author-page .author-info-stack li   { font-size: 15px !important; }
    .uxarmy-author-page .author-meta-row        { margin-top: 22px !important; gap: 12px !important; padding: 8px 0 !important; }
    .uxarmy-author-page .author-meta-row > h2   { font-size: 20px !important; font-weight: 600 !important; }
    .uxarmy-author-page .author-bio-inline      { margin-top: 22px !important; padding: 8px 0 !important; }
    .uxarmy-author-page .author-bio-inline > h2 { margin-bottom: 12px !important; }
    .uxarmy-author-page .author-subscribe       { grid-template-columns: 1fr !important; gap: 26px !important; padding: 36px 0 52px !important; }
}
@media (max-width: 420px) {
    .uxarmy-author-page .author-social-links a { flex: 1 !important; justify-content: center !important; }
}