 /* ── Variables ── */
 :root {
     --ks-primary: #eb9a11;
     --ks-primary-dk: #c9820c;
     --ks-text: #2a2a2a;
     --ks-text-light: #53585c;
     --ks-bg: #f6f6fa;
     --ks-bg-page: #f9fafb;
     --ks-white: #ffffff;
     --ks-border: #e4e5ea;
     --ks-border-light: #eef0f3; 
     --ks-shadow: 0 4px 24px rgba(83, 88, 92, .10);
     --ks-shadow-hov: 0 12px 40px rgba(83, 88, 92, .18);
     --ks-shadow-card: 0 4px 16px rgba(0, 0, 0, 0.04);
     --ks-shadow-card-hov: 0 12px 30px rgba(0, 0, 0, 0.08);
     --ks-radius: 14px;
     --ks-radius-card: 12px;   
     --ks-card-w: 280px;
     --ks-gap: 22px;
     --ks-transition: .32s cubic-bezier(.4, 0, .2, 1);
 }

 .ks-authors-section {background: var(--ks-bg); padding: 35px 5px; font-family: inherit; overflow: hidden; margin: 1em 0 1.5em;}
 .ks-authors-header { margin-bottom: 25px; padding: 0 20px;gap: 12px;}
 .ks-authors-title {font-size: clamp(1.6rem, 3vw, 2.2rem); font-weight: 700; letter-spacing: -.5px;}
 .ks-authors-title-accent {color: var(--ks-primary);}
 .ks-authors-slider-wrapper {position: relative; padding: 0 52px;max-width: 1200px;margin: 0 auto;}
 .ks-authors-track-outer {overflow: hidden;border-radius: 6px;}
 .ks-authors-track {display: flex; gap: var(--ks-gap); transition: transform var(--ks-transition); will-change: transform; cursor: grab; user-select: none;}
 .ks-authors-track.ks-is-dragging {cursor: grabbing;transition: none;}
 .ks-author-card {flex: 0 0 var(--ks-card-w); width: var(--ks-card-w);}
 .ks-author-card-inner {
     background: var(--ks-white);
     border-radius: var(--ks-radius);
     box-shadow: var(--ks-shadow);
     padding: 0 0 20px;
     display: flex;
     flex-direction: column;
     transition: transform var(--ks-transition), box-shadow var(--ks-transition), border-color var(--ks-transition);
     height: 100%;
     overflow: hidden;
     border: 1.5px solid transparent;
 }

 .ks-author-card:hover .ks-author-card-inner {transform: translateY(-5px); box-shadow: var(--ks-shadow-hov); border-color: var(--ks-primary);}
 .ks-card-accent-bar {
     height: 5px;
     background: linear-gradient(90deg, var(--ks-primary) 0%, var(--ks-primary-dk) 100%);
     border-radius: var(--ks-radius) var(--ks-radius) 0 0;
     flex-shrink: 0;
 }
 .ks-card-avatar-wrap {
     position: relative;
     display: flex;
     justify-content: center;
     padding: 24px 20px 10px;
     flex-shrink: 0;
 }

 .ks-card-avatar {
     width: 88px !important;
     height: 88px !important;
     border-radius: 50%;
     object-fit: cover;
     border: 3px solid var(--ks-border);
     transition: border-color var(--ks-transition);
     display: block;
 }

 .ks-author-card:hover .ks-card-avatar {border-color: var(--ks-primary);}

 .ks-card-badge {
     position: absolute;
     bottom: 6px;
     right: calc(50% - 58px);
     background: var(--ks-primary);
     color: #fff;
     font-size: .65rem;
     font-weight: 700;
     padding: 2px 8px;
     border-radius: 20px;
     white-space: nowrap;
     letter-spacing: .3px;
 }

 /* Info */
 .ks-card-info {
     padding: 4px 22px 12px;
     flex: 1;
     display: flex;
     flex-direction: column;
 }

 .ks-card-name-row {
     gap: 6px;
     margin-bottom: 4px;
 }

 .ks-card-name {
     font-size: 1.02rem;
     font-weight: 700;
     color: var(--ks-text);
     line-height: 1.2;
     margin: 0 !important;
 }

 .ks-card-shield {
     flex-shrink: 0;
     opacity: .75;
 }

 .ks-card-role {
     display: inline-block;
     font-size: .72rem;
     font-weight: 600;
     color: var(--ks-primary);
     text-transform: uppercase;
     letter-spacing: .6px;
     margin-bottom: 10px;
 }

 .ks-card-bio {
     font-size: .84rem;
     color: var(--ks-text-light);
     line-height: 1.55;
     flex: 1;
 }

 /* Footer */
 .ks-card-footer {
     padding: 12px 22px 12px;
     border-top: 1px solid var(--ks-border);
     margin-top: 14px;
     flex-shrink: 0;
     min-height: 57px;
 }

 .ks-card-socials {
     gap: 5px;
 }

 .ks-social-link {
     display: flex;
     align-items: center;
     justify-content: center;
     width: 32px;
     height: 32px;
     border-radius: 8px;
     border: 1.5px solid var(--ks-border);
     color: var(--ks-text-light);
     text-decoration: none;
     transition: background var(--ks-transition), color var(--ks-transition), border-color var(--ks-transition);
 }

 .ks-social-link:hover {
     border-color: var(--ks-primary);
     color: #fff;
 }


 .ks-card-cta {
     display: inline-flex;
     align-items: center;
     gap: 5px;
     font-size: .78rem;
     font-weight: 700;
     color: var(--ks-text);
     text-decoration: none;
     letter-spacing: .2px;
     transition: color var(--ks-transition);
 }

 .ks-card-cta:hover {
     color: var(--ks-primary);
 }

 .ks-card-cta svg {
     transition: transform var(--ks-transition);
 }

 .ks-card-cta:hover svg {
     transform: translateX(3px);
 }

 /* ── Arrows ── */
 .ks-slider-nav {
     position: absolute;
     top: 50%;
     transform: translateY(-50%);
     z-index: 10;
     width: 40px;
     height: 40px;
     border-radius: 50%;
     border: 2px solid var(--ks-border);
     background: var(--ks-white);
     color: var(--ks-text);
     display: flex;
     align-items: center;
     justify-content: center;
     cursor: pointer;
     box-shadow: 0 2px 10px rgba(0, 0, 0, .1);
     transition: background var(--ks-transition), color var(--ks-transition),
         border-color var(--ks-transition), transform var(--ks-transition),
         opacity var(--ks-transition);
 }

 .ks-slider-nav:hover {
     background: var(--ks-primary);
     color: #fff;
     border-color: var(--ks-primary);
     transform: translateY(-50%) scale(1.08);
 }

 .ks-slider-prev {
     left: 0;
 }

 .ks-slider-next {
     right: 0;
 }

 .ks-slider-nav.ks-is-disabled {
     opacity: .35;
     pointer-events: none;
 }

 /* ── Dots ── */
 .ks-slider-dots {
     display: flex;
     justify-content: center;
     gap: 8px;
     margin-top: 28px;
     flex-wrap: wrap;
 }

 .ks-dot {
     width: 8px;
     height: 8px;
     border-radius: 50%;
     background: var(--ks-border);
     border: none;
     cursor: pointer;
     padding: 0;
     transition: background var(--ks-transition), width var(--ks-transition);
 }

 .ks-dot.ks-is-active {
     background: var(--ks-primary);
     width: 22px;
     border-radius: 4px;
 }

 /* ── Empty state ── */
 .ks-authors-empty {
     text-align: center;
     color: var(--ks-text-light);
     padding: 40px;
 }

 /* ── "All authors" button ── */
 .ks-authors-btn {
     font-size: 15px;
     line-height: 24px;
     font-weight: 600;
     color: #2a2a2a;
     display: inline-flex;
     align-items: center;
     gap: 4px;
     text-decoration: none;
     transition: transform .3s ease, color .3s ease;
 }

 .ks-authors-btn .arrow {
     display: block;
     line-height: 1;
 }

 .ks-authors-btn:hover {
     text-decoration: none;
     transform: scale(1.06);
 }

 .ks-authors-btn:hover .arrow svg path {
     stroke: var(--ks-primary);
 }

 /* ── Responsive ── */
 @media (max-width: 900px) {
     :root {
         --ks-card-w: 250px;
     }

     .ks-authors-slider-wrapper {
         padding: 0 44px;
     }
 }

 @media (max-width: 600px) {
     :root {
         --ks-card-w: 230px;
         --ks-gap: 16px;
     }

     .ks-authors-slider-wrapper {
         padding: 0 38px;
     }

     .ks-authors-section {
         padding: 40px 0 36px;
     }

     .ks-slider-nav {
         width: 34px;
         height: 34px;
     }
 }

 @media (max-width: 420px) {
     :root {
         --ks-card-w: calc(100vw - 90px);
     }
 }

 /*  AUTHORS LISTING PAGE  (template-authors) */

 .ks-ext-authors-template {font-family: inherit; line-height: 1.6; margin-top: 80px;}
 .ks-ext-authors-template * {box-sizing: border-box;}
 .ks-ext-breadcrumbs {font-size: 0.95rem; color: var(--ks-text-light); font-weight: 500;}
 .ks-ext-breadcrumbs a {color: var(--ks-text-light);text-decoration: none; transition: color 0.2s; text-transform: capitalize;}
 .ks-ext-breadcrumbs a:hover {color: var(--ks-primary);}
 .ks-ext-breadcrumbs .sep {margin: 0 6px; opacity: 0.6;}
 .ks-ext-hero {
     background: var(--ks-white);
     padding: 10px 0 40px;
     position: relative;
     border-bottom: 1px solid var(--ks-border-light);
 }

 .ks-ext-hero::before {
     content: '';
     position: absolute;
     top: 0; left: 0; right: 0; bottom: 0;
     background: linear-gradient(135deg, rgba(235, 154, 17, 0) 40%, rgba(235, 154, 17, 0.08) 100%);
     pointer-events: none;
 }

 .ks-hero-inner {
     position: relative;
     z-index: 1;
     max-width: 800px;
 }

 .ks-ext-title {
     font-size: clamp(2.2rem, 5vw, 3.2rem);
     font-weight: 800;
     color: var(--ks-text);
     margin: 0 0 16px;
     letter-spacing: -0.5px;
 }

 .ks-ext-desc {
     font-size: 1.1rem;
     color: var(--ks-text-light);
     margin: 0;
 }

 .ks-ext-directory {
     background: var(--ks-bg-page);
     padding: 60px 0 40px;
 }

 .ks-authors-cont > .row {
     row-gap: 24px;
 }

 .ks-ext-card {
     background: linear-gradient(180deg, #ffffff 0%, #fcfcfc 100%);
     border-radius: var(--ks-radius-card);
     border: 1px solid var(--ks-border-light);
     box-shadow: var(--ks-shadow-card);
     transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease;
     display: flex;
     flex-direction: column;
     height: 100%;
     overflow: hidden;
     position: relative;
     z-index: 1;
 }

 .ks-ext-card:hover {
     transform: translateY(-8px);
     box-shadow: var(--ks-shadow-card-hov);
     border-color: rgba(235, 154, 17, 0.3);
     z-index: 2;
 }

 .ks-ext-card-top {
     position: relative;
     padding: 0;
     text-align: center;
     z-index: 1;
     background: #fdf5ea;
 }

 .ks-ext-avatar-link {
     display: block;
     width: 100%;
     overflow: hidden;
     position: relative;
     border-bottom: 1px solid var(--ks-border-light);
 }

 .ks-ext-avatar, .ks-ext-card-top img {
     width: 100%;
     height: 100%;
     object-fit: contain;
     transition: transform 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
 }

 .ks-ext-card:hover .ks-ext-avatar {
     transform: scale(1.08);
 }

 .ks-ext-badge {
     position: absolute;
     bottom: 0;
     left: 0;
     width: 100%;
     background: rgba(17, 24, 39, 0.82);
     color: #fff;
     font-size: 0.72rem;
     font-weight: 700;
     padding: 8px 0;
     text-align: center;
     backdrop-filter: blur(4px);
     transition: background 0.3s ease;
     text-transform: uppercase;
     letter-spacing: 0.6px;
 }

 .ks-ext-avatar-link:hover .ks-ext-badge {
     background: var(--ks-primary);
 }

 .ks-ext-card-body {
     padding: 24px 16px 0;
     text-align: center;
     flex-grow: 1;
     display: flex;
     flex-direction: column;
     z-index: 1;
 }

 .ks-ext-name {
     font-size: 1.25rem;
     font-weight: 800;
     color: var(--ks-text);
     margin: 0 0 6px;
     line-height: 1.3;
     text-transform: uppercase;
 }

 .ks-ext-name a {
     color: inherit;
     text-decoration: none;
     transition: color 0.2s;
 }

 .ks-ext-name a:hover {color: var(--ks-primary);}
 .ks-ext-role {font-size: 0.8rem; font-weight: 700; color: var(--ks-primary); text-transform: uppercase; letter-spacing: 0.5px;}
 .ks-pagination {margin-top: 40px; text-align: center;}
 .ks-pagination .page-numbers {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     min-width: 40px;
     height: 40px;
     padding: 0 12px;
     border-radius: 8px;
     background: var(--ks-white);
     color: var(--ks-text);
     font-weight: 600;
     text-decoration: none;
     margin: 0 4px;
     border: 1px solid var(--ks-border-light);
     transition: all 0.2s ease;
 }

 .ks-pagination .page-numbers:hover,
 .ks-pagination .page-numbers.current {
     background: var(--ks-primary);
     color: #fff !important;
     border-color: var(--ks-primary);
 }

 /* Responsive – listing page */
 @media (max-width: 768px) {
     .ks-ext-hero {padding: 30px 0 40px;}
     .ks-ext-directory { padding: 40px 0 60px;}
 }

.ks-authors-section .ks-author-card .ks-card-avatar-wrap img {border-radius: 50%; height: 100%; object-fit: cover;}
section.ks-authors-section h2.ks-authors-title.mb-0 { margin-top: 0 !important;}
.ks-ext-directory .ks-ext-card-top{ min-height:254px; max-height:254px;}
.ks-ext-directory  .ks-ext-avatar-link{ height:100%;display: flex; justify-content: center; align-items: center;}
.ks-ext-directory  .ks-ext-avatar{ display:flex; justify-content:center; align-items:center}
.ks-authors-section .ks-author-card { text-align: center; }
.ks-card-name-row.d-flex.align-items-center { margin: 0 auto; }
section.ks-authors-section .ks-author-name { font-weight: 600; margin-top: 10px; }
section.ks-authors-section .ks-author-role { font-size: 14px; color: #777; }
.ks-authors-section .ks-authors-track { display: flex; gap: 20px; will-change: transform; -webkit-transform: translateZ(0); }
section.ks-authors-section .ks-authors-wrapper { overflow: hidden; }
section.ks-authors-section .ks-author-card { flex: 0 0 auto;}
.page-template-authors-template #wrapper-footer { margin-top: 0px;}

@media (max-width: 768px) {
    .ks-authors-section .ks-author-card {min-width: 100%; max-width: 100%; }
    .ks-authors-section .ks-authors-title { margin-top: 0; }
}