/* A5.21.8 — LAST CLEANUP
   Fix the remaining visual snags found in the successful full-site QA:
   mobile live crop, mobile depth stacking, portrait evidence media, and tiny action chrome. */

/* Selected work: readable, deliberate action treatment */
.cast58 .file-action small{display:none!important}
.cast58 .file-action{
  margin-top:12px!important;
  justify-self:start!important;
  text-align:left!important;
}
.cast58 .file-action .file-link{
  display:inline-block!important;
  width:auto!important;
  padding:0 0 4px!important;
  border:0!important;
  border-bottom:1px solid currentColor!important;
  background:transparent!important;
  font-size:12px!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* Homepage card text should not disappear into the layout. */
.v2-work-meta p{
  font-size:15px!important;
  line-height:1.5!important;
}
.v2-work-meta small{
  font-size:11px!important;
}

/* Mobile only */
@media(max-width:900px){
  /* Scrambled: fill the frame while keeping both faces safe. */
  .v2-work-card:nth-child(1) .v2-work-media{
    aspect-ratio:4/3!important;
    overflow:hidden!important;
  }
  .v2-work-card:nth-child(1) .v2-work-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 31%!important;
  }

  /* The brain section must actually stack, not impersonate a newspaper column. */
  .v2-depth-wrap{
    display:block!important;
    width:100%!important;
  }
  .v2-depth-copy,
  .v2-depth-stats{
    width:100%!important;
    max-width:none!important;
  }
  .v2-depth-stats{
    display:block!important;
    margin-top:44px!important;
  }
  .v2-stat{
    display:block!important;
    width:100%!important;
    padding:20px 0 22px!important;
  }
  .v2-stat strong,
  .v2-stat span{
    display:block!important;
    width:100%!important;
    max-width:31ch!important;
  }

  /* Casting cards: larger copy, fewer micro labels. */
  .cast58 .file-copy h3{
    font-size:30px!important;
    line-height:1!important;
  }
  .cast58 .file-copy p{
    font-size:15px!important;
    line-height:1.5!important;
  }
  .cast58 .file-copy .mono{
    font-size:10px!important;
  }
  .cast58 .file-action .file-link{
    font-size:13px!important;
  }

  /* Project evidence: match the container to the actual media orientation.
     This removes the weird half-black / half-image treatment on mobile. */
  .project-file.scrambled-file .evidence-media,
  .project-file.wimpb-file .evidence-media,
  .project-file.montis-file .evidence-media{
    min-height:0!important;
    height:auto!important;
    aspect-ratio:9/16!important;
    max-height:680px!important;
    background:#101721!important;
  }
  .project-file.centerline-file .evidence-media{
    min-height:0!important;
    height:auto!important;
    aspect-ratio:16/10!important;
    background:#eef1f5!important;
  }
  .project-file .evidence-media img,
  .project-file .evidence-media video{
    position:absolute!important;
    inset:0!important;
    left:0!important;
    right:0!important;
    top:0!important;
    bottom:0!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    transform:none!important;
    object-position:center!important;
  }
  .project-file.scrambled-file .evidence-media img,
  .project-file.wimpb-file .evidence-media video,
  .project-file.montis-file .evidence-media video{
    object-fit:contain!important;
  }
  .project-file.centerline-file .evidence-media img{
    object-fit:cover!important;
  }
}

@media(max-width:560px){
  .v2-work-meta p{font-size:15px!important}
  .v2-work-meta small{font-size:10px!important}
  .cast58 .file-list{gap:38px!important}
  .cast58 .file-row{padding-bottom:28px!important}
  .project-file .evidence-copy h2{
    font-size:48px!important;
    line-height:.94!important;
  }
}


/* ABOUT LAUREN — the bridge between the headline and the receipts */
.v2-about{
  padding:clamp(94px,10vw,158px) clamp(24px,6vw,94px)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.02fr) minmax(340px,.78fr)!important;
  gap:clamp(54px,8vw,126px)!important;
  align-items:center!important;
  background:#f4f1ea!important;
}
.v2-about-copy{
  max-width:720px!important;
}
.v2-about h2{
  margin:0!important;
  max-width:9ch!important;
  font-size:clamp(58px,6.2vw,98px)!important;
  line-height:.88!important;
  letter-spacing:-.067em!important;
  text-wrap:balance!important;
}
.v2-about h2 em{
  font-family:Georgia,'Times New Roman',serif!important;
  font-style:italic!important;
  font-weight:400!important;
  color:#2458ff!important;
  letter-spacing:-.055em!important;
}
.v2-about-lead{
  margin:34px 0 0!important;
  max-width:35ch!important;
  font-size:clamp(20px,1.7vw,25px)!important;
  line-height:1.5!important;
  color:#08111f!important;
}
.v2-about-copy>p:not(.v2-section-label):not(.v2-about-lead){
  margin:20px 0 0!important;
  max-width:42ch!important;
  font-size:17px!important;
  line-height:1.65!important;
  color:rgba(8,17,31,.68)!important;
}
.v2-about-signature{
  margin-top:36px!important;
  border-top:1px solid rgba(8,17,31,.18)!important;
}
.v2-about-signature span{
  display:block!important;
  padding:12px 0!important;
  border-bottom:1px solid rgba(8,17,31,.12)!important;
  font-size:clamp(24px,2.5vw,38px)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
}
.v2-about-signature span:nth-child(2){
  font-family:Georgia,'Times New Roman',serif!important;
  font-style:italic!important;
  color:#2458ff!important;
}
.v2-about-photo{
  margin:0!important;
  width:100%!important;
  max-width:510px!important;
  justify-self:end!important;
  aspect-ratio:3/4!important;
  overflow:hidden!important;
  background:#dfe5ee!important;
}
.v2-about-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 36%!important;
  display:block!important;
}

@media(max-width:900px){
  .v2-about{
    display:block!important;
    padding:78px 22px!important;
  }
  .v2-about-copy{
    max-width:none!important;
  }
  .v2-about h2{
    max-width:8ch!important;
    font-size:clamp(56px,14vw,78px)!important;
  }
  .v2-about-lead{
    font-size:19px!important;
    max-width:31ch!important;
  }
  .v2-about-copy>p:not(.v2-section-label):not(.v2-about-lead){
    font-size:16px!important;
    max-width:35ch!important;
  }
  .v2-about-signature{
    margin-top:30px!important;
  }
  .v2-about-signature span{
    font-size:30px!important;
  }
  .v2-about-photo{
    max-width:none!important;
    width:100%!important;
    aspect-ratio:4/5!important;
    margin:42px 0 0!important;
  }
}

@media(max-width:560px){
  .v2-about{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  .v2-about-photo{
    aspect-ratio:3/4!important;
  }
}
