/* Portrait-first advertisement layout — 9:16, no crops to user video. */
:root { --film-ink:#23292c; --film-hairline:rgba(42,47,47,.13); }
.films-section{padding-block:clamp(65px,8vw,125px);}
.film-grid.portrait-film-grid{
  width:min(1240px,100%);max-width:1240px;margin:42px auto 0;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;
}
.portrait-film-card{
  --film-paper:#f2ece3;
  min-width:0;display:grid;grid-template-columns:minmax(144px,42%) minmax(0,1fr);
  align-items:center;gap:clamp(14px,2.3vw,30px);
  padding:clamp(13px,2.2vw,25px);border-radius:17px;
  background:linear-gradient(150deg,#fbfaf7,#f1ede7);
  border:1px solid var(--film-hairline);
  box-shadow:0 13px 40px #32302b0c;
}
.portrait-film-card--aiteam{
  --film-paper:#192a36;
  color:#edf3f4;background:linear-gradient(144deg,#243642,#16262f);
  border-color:#314653;
}
.portrait-film-card .portrait-film-cover{
  box-sizing:border-box;display:grid;place-items:center;
  width:100%;height:auto;aspect-ratio:9 / 16;
  min-height:0;max-height:none;border:6px solid #171c1f;
  border-radius:21px;overflow:hidden;isolation:isolate;
  background-size:cover;background-position:center;
  box-shadow:0 16px 30px rgba(10,14,17,.2);
  transition:transform .2s ease,box-shadow .2s ease;
}
.portrait-film-cover:hover{transform:translateY(-2px);box-shadow:0 22px 43px #1014193d}
.portrait-film-cover:focus-visible{outline:3px solid #8bb5cb;outline-offset:5px}
.portrait-film-cover .film-pill{font-size:9px;top:17px;left:12px;line-height:1.5;letter-spacing:.1em}
.portrait-film-cover .film-length{font-size:9px;left:12px;bottom:18px}
.portrait-film-cover .film-icon{height:57px;width:57px;line-height:1;font-size:20px}
.film-ratio{
  position:absolute;top:40px;left:12px;
  color:#fff;font-size:10px;letter-spacing:.12em;font-weight:750;
  background:rgba(20,23,25,.42);padding:5px 8px;border-radius:5px;
}
.portrait-film-copy{min-width:0;display:flex;flex-direction:column;gap:12px;align-items:flex-start}
.portrait-film-copy .film-eyebrow{font-size:10px;letter-spacing:.16em;font-weight:700;color:#877b70;text-transform:uppercase}
.portrait-film-card--aiteam .film-eyebrow{color:#b0c9d6}
.portrait-film-card .portrait-film-copy h3{
  font-size:clamp(20px,2.25vw,29px);letter-spacing:-.04em;
  line-height:1.32;margin:0;font-weight:650;
}
.portrait-film-card .portrait-film-copy p{
  font-size:13px;line-height:1.85;margin:0;color:#766f67;
}
.portrait-film-card--aiteam .portrait-film-copy p{color:#c6d2d8}
.portrait-film-meta{display:flex;flex-wrap:wrap;gap:7px}
.portrait-film-meta span{
  border:1px solid #d8d2ca;border-radius:6px;padding:6px 8px;
  font-size:10px;color:#655f58;white-space:nowrap;
}
.portrait-film-card--aiteam .portrait-film-meta span{border-color:#566a75;color:#c1d2da}
.portrait-film-actions{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.portrait-film-card .upload-film{
  background:#333a3b;color:#fff;border:1px solid #333a3b;
  border-radius:8px;padding:11px 15px;font-size:12px;min-height:42px;
}
.portrait-film-card--aiteam .upload-film{background:#eff4f5;color:#1b2d39;border-color:#eff4f5}
.portrait-film-card .film-demo-link{
  font-size:12px;color:#3f4241;text-decoration:underline;
  text-underline-offset:4px;padding:5px 0;
}
.portrait-film-card--aiteam .film-demo-link{color:#cfdde4}
.portrait-film-note{font-size:11px!important;line-height:1.65!important;opacity:.89}
.video-inline{max-width:1160px;}
.video-inline .portrait-film-card{max-width:860px;margin:0 auto;grid-template-columns:minmax(205px,285px) minmax(0,1fr);gap:35px;padding:32px}
.video-inline .portrait-film-cover{aspect-ratio:9 / 16;height:auto;max-height:none}
.video-inline .portrait-film-card--aiteam .portrait-film-copy p{color:#c6d2d8}
/* A dialog with the same format as the source movie. Actual video pixels are never cropped. */
.video-dialog.portrait-video-dialog{
  box-sizing:border-box;width:min(460px,96vw);max-height:min(94dvh,980px);
  padding:15px 17px 18px;border:1px solid #394651;
  background:#162127;border-radius:16px;color:#fff;overflow-y:auto;
}
.portrait-video-dialog .video-dialog-head{gap:10px;padding:3px 0 11px}
.portrait-video-dialog .video-dialog-head button{
  min-width:44px;min-height:44px;border-radius:8px;
  background:#ffffff16;border:1px solid #ffffff30;
}
.portrait-video-frame{
  position:relative;box-sizing:border-box;
  width:min(100%,calc(70dvh * 9 / 16));max-height:70dvh;
  margin-inline:auto;background:#080c0d;border-radius:11px;overflow:hidden;
  aspect-ratio:9 / 16;border:1px solid #53616a;
}
.video-dialog.portrait-video-dialog video{
  display:block;width:100%;height:100%;max-height:none;
  background:#080c0d;object-fit:contain;
}
.video-fit-status{color:#d4e0e6;font-size:11px;line-height:1.6;margin:11px 1px 0;text-align:center}
.video-fit-status[data-level="warning"]{color:#ffd9a1}
.portrait-video-dialog p{margin:9px 0 0;color:#bacbd4;text-align:center;line-height:1.6}
@media(max-width:1080px){
  .film-grid.portrait-film-grid{grid-template-columns:1fr 1fr;gap:14px}
  .portrait-film-card{grid-template-columns:minmax(132px,42%) minmax(0,1fr);gap:14px}
  .portrait-film-card .portrait-film-copy h3{font-size:22px}
}
@media(max-width:850px){
  .film-grid.portrait-film-grid{grid-template-columns:1fr;max-width:660px;margin-top:25px}
  .portrait-film-card{grid-template-columns:minmax(155px,38%) minmax(0,1fr);gap:22px}
  .video-inline .portrait-film-card{grid-template-columns:minmax(155px,38%) minmax(0,1fr);gap:22px;padding:21px}
}
@media(max-width:520px){
  .portrait-film-card,.video-inline .portrait-film-card{
    grid-template-columns:minmax(112px,40%) minmax(0,1fr);gap:13px;
    padding:12px;border-radius:12px;
  }
  .portrait-film-card .portrait-film-cover{border-width:4px;border-radius:15px}
  .portrait-film-cover .film-pill{font-size:8px;top:10px;left:7px}
  .portrait-film-cover .film-length{font-size:8px;left:7px;bottom:12px}
  .portrait-film-cover .film-ratio{top:30px;left:7px;font-size:8px;padding:4px 5px}
  .portrait-film-cover .film-icon{width:45px;height:45px}
  .portrait-film-copy{gap:9px}
  .portrait-film-card .portrait-film-copy h3{font-size:19px}
  .portrait-film-card .portrait-film-copy p{font-size:11.5px;line-height:1.65}
  .portrait-film-meta{gap:4px}
  .portrait-film-meta span{font-size:9px;padding:4px 5px}
  .portrait-film-card .upload-film{font-size:11px;padding:8px 9px;min-height:37px}
  .portrait-film-card .film-demo-link{font-size:11px}
  .portrait-film-note{font-size:10px!important}
  .video-dialog.portrait-video-dialog{padding:10px 12px 14px}
  .portrait-video-frame{width:min(100%,calc(69dvh * 9 / 16));max-height:69dvh}
}
@media(prefers-reduced-motion:reduce){
  .portrait-film-card .portrait-film-cover{transition:none!important;transform:none!important}
}