/* =========================================================
   FFF Diagonal Split Section
   ========================================================= */

/* SECTION */
.fff-diagonal-section{
  background:#4267b2 !important;
  padding:0 !important;
  --fff-baseline:44px;
}

/* ROW */
.fff-diagonal-row{
  width:90% !important;
  max-width:1400px !important;
  margin:0 auto !important;
  padding:0 !important;
}

/* Divi gaps */
.fff-diagonal-row .et_pb_column{
  padding:0 !important;
  margin:0 !important;
}

/* LEFT */
.fff-diagonal-left{
  min-height:340px;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  position:relative;
}

.fff-diagonal-title{
  padding:0 48px var(--fff-baseline) 48px !important;
  margin:0 !important;
  max-width:420px;
}

.fff-diagonal-title *{
  color:#fff !important;
  text-align:left !important;
  word-break:normal !important;
  white-space:normal !important;
  word-spacing:normal !important;
}

.fff-diagonal-title h1,
.fff-diagonal-title h2,
.fff-diagonal-title h3{
  text-transform:uppercase;
  font-weight:800;
  letter-spacing:0.04em;
  line-height:1.05;
  margin:0 !important;
}

/* Link hover on title (desktop) */
.fff-diagonal-title a{
  color:#fff !important;
  text-decoration:none !important;
  display:inline-block;
  transition:opacity .25s ease, transform .25s ease, letter-spacing .25s ease;
}
.fff-diagonal-title a:hover{
  opacity:.92;
  transform:translateX(2px);
  letter-spacing:0.05em;
}

/* RIGHT (background image column) */
.fff-diagonal-right{
  min-height:340px;
  position:relative;
  overflow:hidden;
}

/* Diagonal wedge over image */
.fff-diagonal-right:before{
  content:"";
  position:absolute;
  top:0;
  left:-90px;
  width:180px;
  height:100%;
  background:#4267b2;
  transform:skewX(-14deg);
  transform-origin:left top;
  z-index:5;
  pointer-events:none;
}

/* CREDIT: target the real inner wrapper (not p) */
.fff-diagonal-right .fff-photo-credit{
  position:absolute !important;
  left:28px !important;
  bottom:var(--fff-baseline) !important;
  top:auto !important;
  right:auto !important;
  margin:0 !important;
  padding:0 !important;
  width:auto !important;
  max-width:72% !important;
  z-index:50 !important;
}

.fff-diagonal-right .fff-photo-credit .et_pb_text_inner{
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  color:rgba(255,255,255,0.92) !important;
  font-size:13px !important;
  font-weight:600 !important;
  line-height:1.25 !important;
  letter-spacing:0.01em !important;
  text-shadow:0 2px 12px rgba(0,0,0,0.60) !important;
}

/* =========================================================
   DESKTOP HOVER EFFECT (no layout shift)
   - No scale on column (it caused the top shift)
   - Visual overlay + slight filter
   ========================================================= */
@media (hover:hover){

  /* IMPORTANT: no filter on the whole column (it darkens the blue wedge) */
  .fff-diagonal-right{
    transition: none !important;
  }

  /* Overlay placed BELOW the blue diagonal wedge */
  .fff-diagonal-right:after{
    content:"";
    position:absolute;
    inset:0;
    background: rgba(0,0,0,0.18);
    opacity:0;
    transition: opacity .35s ease;
    z-index:4; /* below :before (5), above background image */
    pointer-events:none;
  }

  .fff-diagonal-right:hover:after{
    opacity:1;
  }
}

/* =========================================================
   MOBILE CLEANUP
   ========================================================= */
@media (max-width:980px){

  /* Section: add back a clean top breathing space */
  .fff-diagonal-section{
    padding-top:22px !important;
    padding-bottom:26px !important;
  }

  /* Make the stack look like a card layout */
  .fff-diagonal-row{
    width:94% !important;
  }

  /* LEFT: no forced height, clean spacing */
  .fff-diagonal-left{
    min-height:auto !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    padding:0 0 10px 0 !important;
  }

  .fff-diagonal-title{
    max-width:560px !important;
    padding:0 24px 0 24px !important;
  }

  /* RIGHT: no diagonal wedge on mobile + inset image look */
  .fff-diagonal-right:before{
    display:none !important;
  }

  .fff-diagonal-right{
    min-height:240px !important;
    margin:16px 24px 18px 24px !important; /* creates breathing space under image */
    border-radius:4px !important;
    overflow:hidden !important;
  }

  /* Credit: keep inside the image card */
  .fff-diagonal-right .fff-photo-credit{
    left:16px !important;
    bottom:14px !important;
    max-width:85% !important;
  }

  .fff-diagonal-right .fff-photo-credit .et_pb_text_inner{
    font-size:13px !important;
    font-weight:700 !important;
  }

  /* Tap feedback (since hover is not real on mobile) */
  .fff-diagonal-title a:active{
    opacity:.9;
  }
}