/* Case Studies Grid Pro - Styles */
.csas-grid-wrapper {
    display:flex;
    flex-direction:column;
    gap:3rem;
}
.csas-card {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:2rem;
    align-items:start;
	margin-bottom:100px;
}
.csas-card--image-left .csas-card-image { 
    order:1;
    padding: 37px;
    border: 1px solid;
    height: 100%;
    border-radius: 19px;
 }
.csas-card--image-left .csas-card-content { 
    order:2;
    height: 100%;
 }
.csas-card--image-right .csas-card-image { 
    order:2; 
    padding: 37px;
    border: 1px solid;
    height: 100%;
    border-radius: 19px;
}
.csas-card--image-right .csas-card-content { 
    order:1;
    height: 100%;
 }

.csas-card-image img,
.csas-thumb-placeholder {
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:8px;
    min-height:250px;
    background-color:#f5f5f5;
}
.csas-card-content {
    display:flex;
    flex-direction:column;
}
.csas-title {
    margin:0 0 0.75rem 0;
    font-size:1.5rem;
    line-height:1.3;
}
.csas-tags {
    display:flex;
    flex-wrap:wrap;
    gap:0.5rem;
    margin-bottom:0.75rem;
}
.csas-tag {
    background-color: rgb(189 189 189 / 5%);
    padding: 5px 30px;
    font-size: 0.75rem;
    color: white;
    border: 1px solid white;
    border-radius: 19px;
}
.csas-heading {
    margin:0.5rem 0 0.25rem;
    font-size:1rem;
    font-weight:600;
    color:white;
}
.csas-text {
    margin:0 0 0.5rem;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
    line-height:1.5;
    color:#ffffff;

}
.csas-card-footer {
    margin-top:auto;
    text-align:left;
}
.csas-card-footer a.csas-button {
    display:inline-block;
    border: 1px solid;
    background: transparent;
    color:#fff;
    padding:0.6rem 1.2rem;
    border-radius:6px;
    text-decoration:none;
    font-size:0.9rem;
    transition:transform 0.15s ease, background-color 0.2s ease;
}
.csas-button:hover {
    background-color:#3746c3;
    transform: translateY(-1px);
}
.csas-pagination {
    text-align:center;
    margin-top:3rem;
}
.csas-pagination .csas-page-numbers {
    display:inline-flex;
    gap:0.5rem;
    list-style:none;
    margin:0;
    padding:0;
}
.csas-pagination a,
.csas-pagination span {
    padding:0.5rem 0.75rem;
    border:1px solid #e0e0e0;
    border-radius:6px;
    text-decoration:none;
    color:#374151;
    font-weight:500;
}
.csas-pagination span.current {
    background-color:#4a56e2;
    color:#fff;
    border-color:#4a56e2;
}
.csas-cta {
    text-align:center;
    margin-top:4rem;
}
.csas-cta-button {
    background-color:#4a56e2;
    color:#fff;
    padding:0.8rem 1.6rem;
    border-radius:6px;
    text-decoration:none;
    font-size:1rem;
    display:inline-block;
}
.csas-cta-button:hover {
    background-color:#3746c3;
}
@media (max-width: 768px) {
    .csas-card {
        grid-template-columns:1fr;
    }
    .csas-card-image img,
    .csas-thumb-placeholder {
        min-height:200px;
    }
}

.ast-single-post .entry-content a, .ast-comment-content a:not(.ast-comment-edit-reply-wrap a) {
    text-decoration: none;
    color: white;
}

.csas-card .csas-card--image-right{
	margin-bottom:40px;	
}

/* Header css */
/* === Header directional slide (no resize) === */
/* animate only the targets — use WIDGET containers */
.elementor-location-header .elementor-element[data-id="cf8e6bb"],      /* logo widget */
.elementor-location-header .elementor-element[data-id="727113e"] {     /* button widget */
  transition: transform 220ms ease, opacity 220ms ease;
  will-change: transform;
  transform: translateX(0); /* default position */
}

/* compact state toggled by JS */
.elementor-location-header.is-compact{
  box-shadow: 0 6px 18px rgba(0,0,0,.12);
}

/* Move inwards only (no scale) */
.elementor-location-header.is-compact .elementor-element[data-id="cf8e6bb"]{
  transform: translateX(60px);   /* left logo widget nudges to the right */
  opacity: 0.98;
}

.elementor-location-header.is-compact .elementor-element[data-id="727113e"]{
  transform: translateX(-60px);  /* right button widget nudges to the left */
  opacity: 0.98;
}

/* (Optional) If you want to keep anchor/button transitions too */
.elementor-location-header .elementor-element[data-id="cf8e6bb"] a,
.elementor-location-header .elementor-element[data-id="727113e"] .elementor-button {
  display: inline-block; /* ensures transforms/hover behave predictably */
  transition: transform 220ms ease, opacity 220ms ease;
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce){
  .elementor-location-header, .elementor-location-header *{ transition: none !important; }
}


/* Target images inside your container */
.elementor-widget-image img {
  filter: grayscale(100%);
  transition: filter 0.4s ease;
}

.elementor-widget-image img:hover {
  filter: grayscale(0%);
}


/* circle mark with paragraph  */
.csas-text .dashicons {
    font-size: 22px;
    line-height: 1;
	color: #d9dae3;
    margin-right: 6px;
    vertical-align: middle;
}



/* upper end */

/* Pin the section just under the fixed main menu */
.implement-strategies-container.is-pinned {
  position: fixed;
  top: var(--isc-top, 0px); /* set from JS = header height */
  left: 0;
  right: 0;
  z-index: 50;             /* keep below your fixed menu if needed */
}

/* Spacer prevents layout jump when section is fixed */
.isc-spacer { width: 100%; height: 0; }

/* Optional: tiny smoothing (JS already sets transition inline) */
.container-1, .container-2, .container-3 {
  will-change: opacity;
}