/* Film pages: neutral background; catalogue thumbnails remain stored separately. */
body.south-film-page58{background:#101011;--bg:#101011}
.south-film-page58 .film-heading-main{display:block}
.south-film-page58 .film-heading-main>div{width:100%;min-width:0}
.south-film-page58 .film-heading h1{max-width:none;width:100%;overflow-wrap:anywhere}
.south-film-page58 .south-film-players{padding-bottom:22px}
.film-countries58{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
.film-countries58 a{display:inline-flex;align-items:center;gap:8px;padding:0;border:0;border-radius:0;background:transparent;color:#b9b9bc;font-size:13px;text-decoration:none}
.film-countries58 .flag{font-size:21px;line-height:1}
.film-countries58 a:hover{color:#007db9}
.film-countries58 a:focus-visible,.film-all58 a:focus-visible{outline:2px solid #007db9;outline-offset:5px}
.film-all58{text-align:center;padding-block:36px 60px}
.film-all58 a{display:inline-flex;align-items:center;color:inherit;font:600 12px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.035em}
.film-all58 a:hover{color:#007db9}
@media(min-width:1100px){#relatedFilms58{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.film-countries58{gap:10px 18px}.film-countries58 a{font-size:12px}.film-all58{padding-block:28px 45px}}

.film-countries60-label{font-size:13px;color:#a6a5a4;white-space:nowrap}
.film-countries58 a{transition:transform .2s ease,color .2s ease}
.film-countries58 a:hover,.film-countries58 a:focus-visible{transform:translateY(-3px);color:#007db9}
@media(prefers-reduced-motion:reduce){.film-countries58 a{transition:none}.film-countries58 a:hover,.film-countries58 a:focus-visible{transform:none}}

/* Compact catalogue return link immediately after the related cards. */
.south-film-page58 .related-section{padding-bottom:18px}
.south-film-page58 .film-all58{text-align:left;padding-top:42px;padding-bottom:110px}

/* Raise the whole film flow and keep the map within the credits column. */
.south-film-page58 .south-film-intro{margin-top:-50px}
.south-film-page58 .film-info{border-top:0;align-items:start}
.south-film-page58 .film-credits .credit{border-bottom:0}
.south-film-page58 .film-credits{min-width:0}

/* Consistent section titles and more legible credits. */
.south-film-page58 .film-section-title66{margin:0 0 24px;color:#f1f0ed;font:600 26px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.south-film-page58 .film-credits dl{margin:0}
.south-film-page58 .film-credits .credit{font-size:13px;line-height:1.5;grid-template-columns:minmax(110px,calc(46.5% - 46px)) minmax(0,1fr);column-gap:24px}
.south-film-page58 .film-credits .credit dt,.south-film-page58 .film-credits .credit dd{min-width:0;overflow-wrap:break-word}
@media(max-width:700px){.south-film-page58 .film-section-title66{font-size:22px}}
@media(max-width:420px){.south-film-page58 .film-credits .credit{grid-template-columns:minmax(110px,calc(45% - 43px)) minmax(0,1fr);column-gap:18px}}

/* Extra breathing room above both editorial columns. */
.south-film-page58 .film-description,.south-film-page58 .film-credits{padding-top:0}

/* STEP 70 - Editorial headings match Awards & Recognition. */
.south-film-page58 .film-section-title66{color:#f5f5f5;font-family:inherit;font-size:clamp(25px,3vw,39px);font-weight:500;line-height:normal;letter-spacing:-.035em;text-transform:none}

/* STEP 72 - Override description paragraph margins for section pre-titles. */
.south-film-page58 .film-info .south-awards__eyebrow{margin:0 0 12px;line-height:1.4}

/* STEP 75 - Filming countries follow the map, before the world-map link. */
.south-film-page58 .south-film-map .film-countries58{margin:18px 0 0;padding:0;width:100%;gap:12px 20px}

/* STEP 87 - Full-width location section and alternating film-page bands. */
body.south-film-page58{--film-dark87:#101011;--film-light87:#171718}
.south-film-page58 .south-film-location87{width:100%;max-width:none;margin:0;padding:110px 0 0;background:var(--film-light87)}
.south-film-page58 .south-film-location87 .south-film-map__canvas{width:min(90%,1500px);max-width:1500px;margin-inline:auto;height:clamp(280px,calc(21vw + 40px),400px);border:0;border-radius:0}
.south-film-page58 .south-film-location87 .section-heading{margin-bottom:40px}
.south-film-page58 .south-film-location87 .south-film-map__body87{padding-top:26px;padding-bottom:110px}
.south-film-page58 .south-film-location87 .film-countries58{margin:0;gap:14px 32px}
.south-film-page58 .south-film-location87 .film-countries58 a{font-size:16px;gap:11px;min-height:44px;color:#d2d2d5}
.south-film-page58 .south-film-location87 .film-countries58 a:hover{color:#007db9}
.south-film-page58 .south-film-location87 .film-countries58 .flag{font-size:24.0064px}
.south-film-map__explore87{display:inline-flex;align-items:center;margin-top:26px;color:inherit;font:600 12px/1.4 Arial,Helvetica,sans-serif;letter-spacing:.035em;text-decoration:none}
.south-film-map__explore87:hover{color:#007db9}
.south-film-map__explore87:focus-visible{outline:2px solid #007db9;outline-offset:5px}
.south-film-page58 .gallery-section{background:var(--film-dark87)}
.south-film-page58 .south-related-band87{background:var(--film-light87)}
.south-film-page58 .south-share36{background:var(--film-dark87)}
.south-film-page58 .south-common-footer{background:var(--film-light87)}
@media(max-width:700px){
 .south-film-page58 .south-film-location87{padding-top:72px}
 .south-film-page58 .south-film-location87 .south-film-map__canvas{height:clamp(220px,calc(50vw + 40px),280px)}
 .south-film-page58 .south-film-location87 .south-film-map__body87{padding-top:20px;padding-bottom:72px}
 .south-film-page58 .south-film-location87 .film-countries58{gap:8px 22px}
 .south-film-page58 .south-film-location87 .film-countries58 a{font-size:14px;gap:9px}
 .south-film-page58 .south-film-location87 .film-countries58 .flag{font-size:20.9088px}
}

/* STEP 88 - Keep the mobile player close to the film title. */
@media(max-width:700px){
 body.south-film-page58 .south-film-intro{padding-bottom:12px}
 body.south-film-page58 .south-film-intro h1{margin-bottom:0}
 body.south-film-page58 .south-film-players{padding-top:0}
}

@media(max-width:540px){.south-film-page58 .film-all58{padding-bottom:85px}}

/* Narrower credits, wider story; compact only the empty gap before a linked project. */
@media(min-width:901px){.south-film-page58 .film-info{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:7%}}
.south-film-page58 .film-credits .credit{grid-template-columns:minmax(100px,32%) minmax(0,1fr);column-gap:18px}
.south-film-page58 .film-info--project102{padding-bottom:62.5px}
@media(max-width:800px){.south-film-page58 .film-info--project102{padding-bottom:39px}}
@media(max-width:420px){.south-film-page58 .film-credits .credit{grid-template-columns:minmax(100px,32%) minmax(0,1fr);column-gap:16px}}

/* World-map link sits beside the section title, above the map. */
.south-film-page58 .south-film-location87 .section-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:28px;align-items:end}
.south-film-page58 .south-film-location87 .section-heading .eyebrow{grid-column:1/-1}
.south-film-page58 .south-film-location87 .section-heading .south-film-map__explore87{margin-top:0;margin-bottom:6px;justify-self:end;white-space:nowrap}
@media(max-width:1000px){
 .south-film-page58 .south-film-location87 .section-heading{grid-template-columns:minmax(0,1fr)}
 .south-film-page58 .south-film-location87 .section-heading .south-film-map__explore87{margin-top:18px;margin-bottom:0}
}

/* STEP 119 - Film editorial dividers match the portfolio category separator. */
.south-film-page58 .film-info .film-section-title66,
.south-film-page58 .south-awards__heading > h2 {
    display: block;
    width: 100%;
    padding-bottom: 21px;
    border-bottom: 1px solid var(--line);
}
/* STEP 120 - Lower mobile dividers without moving the following content. */
@media (max-width: 700px) {
    .south-film-page58 .film-info { row-gap: 76px; }
    .south-film-page58 .film-info .film-section-title66,
    .south-film-page58 .south-awards__heading > h2 { padding-bottom: 20px; }
    .south-film-page58 .film-info .film-section-title66 { margin-bottom: 20px; }
    .south-film-page58 .south-awards__heading { margin-bottom: 26px; }
}
