/* FastFingerType — homepage sections (shortcodes)
   All styles scoped under .fft-* so they never clash with your theme/Elementor. */

/* ============ [fft_video_journey] — Start Your Typing Journey ============ */
.fft-vj{
  --fft-navy:#072e5e;
  position:relative;
  font-family:'Roboto',system-ui,-apple-system,sans-serif;
  background:rgba(80,193,242,.1);
  border-radius:35px;
  padding:clamp(20px,3vw,34px);
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);
  gap:clamp(24px,5vw,64px);
  align-items:start;
  color:var(--fft-navy);
}
.fft-vj,.fft-vj *{box-sizing:border-box;margin:0}

/* blue video frame */
.fft-vj__media{position:relative;background:#71c0e2;border-radius:26px;padding:clamp(10px,1.4vw,14px);box-shadow:0 16px 40px rgba(7,46,94,.12)}
.fft-vj__iframe,.fft-vj__placeholder{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:18px;background:rgba(255,255,255,.22)}
.fft-vj__placeholder{display:flex;align-items:center;justify-content:center}
.fft-vj__play{width:76px;height:76px;border-radius:50%;background:#fff;color:#0fa8e9;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 28px rgba(7,46,94,.2)}
.fft-vj__play svg{margin-left:5px}

/* mascot standing on the panel's right edge */
.fft-vj__mascot{position:absolute;right:clamp(-78px,-6vw,-52px);bottom:-16px;width:clamp(96px,10vw,134px);height:auto;pointer-events:none;-webkit-user-select:none;user-select:none;z-index:2;filter:drop-shadow(0 10px 14px rgba(7,46,94,.18))}

/* text column */
.fft-vj__content{padding-top:clamp(2px,1vw,10px)}
.fft-vj__title{font-size:clamp(26px,3.2vw,40px);font-weight:800;line-height:1.22;color:var(--fft-navy);letter-spacing:-.01em}
.fft-vj__text{margin-top:14px;font-size:clamp(16px,1.6vw,21px);line-height:1.55;color:rgba(7,46,94,.85);max-width:44ch}

/* responsive */
@media (max-width:900px){
  .fft-vj{grid-template-columns:1fr;gap:22px;border-radius:26px}
  .fft-vj__content{order:-1;text-align:center;padding-top:4px}
  .fft-vj__text{margin-left:auto;margin-right:auto}
  .fft-vj__mascot{display:none}
}
