/* anatmanfilms.com v3 — lapisan di atas site.css. 15 Okt 2026.
   Acuan: A24 (kolom judul besar di kiri, gambar besar, garis rambut), Netflix "new to watch" & BBC Documentary Unit
   (berbasis gambar, langsung bisa ditonton). Palet hitam-putih Anatman Pictures; judul Archivo huruf biasa; label IBM Plex Mono. */
:root{
  --af-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --af-rule:1px solid var(--line);
}
body.af{background:var(--paper)}
.af h1,.af h2,.af h3{font-family:var(--display);text-transform:none!important;font-stretch:100%!important;letter-spacing:-.025em!important;font-weight:600!important}
.af .label,.af .more,.af .tag,.af .l-top,.af .l-bot,.af .facts dt,.af .credits-grid h3,.af .chapters h3,.af .foot-grid h2,.af .note,.af .player-cap,.af .meta,.af .legal,.af .yt .dur{font-family:var(--af-mono)!important}
.af .label{font-size:.7rem;font-weight:500;letter-spacing:.12em}
.af .credits-grid h3,.af .chapters h3,.af .foot-grid h2{font-size:.68rem!important;letter-spacing:.12em!important;text-transform:uppercase!important;font-weight:500!important}

/* ---- kepala situs: tiga zona seperti A24 ---- */
.af-top{border-bottom:var(--af-rule);background:var(--paper)}
.af-top-in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px 24px;padding-block:14px;padding-inline:max(16px,env(safe-area-inset-left,0px)) max(16px,env(safe-area-inset-right,0px));padding-inline:var(--gutter)}
.af-nav{display:flex;gap:6px 22px;flex-wrap:wrap;font-family:var(--af-mono);font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}
.af-nav a{text-decoration:none;border-bottom:1px solid transparent;padding-block:4px}
.af-nav a:hover,.af-nav a[aria-current="page"]{border-bottom-color:var(--ink)}
.af-top .brand{justify-self:center}
.brand img.logo.af{height:34px;width:auto;aspect-ratio:1906/428}
.af-tools{justify-self:end;display:flex;align-items:center;gap:16px;font-family:var(--af-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.af-tools a{text-decoration:none}
.af-tools .lang{border:1px solid var(--line);padding:4px 8px}
.af-contact{border-bottom:1px solid var(--ink)}
@media (max-width:860px){
  .af-top-in{grid-template-columns:1fr auto}
  .af-top .brand{grid-column:1;grid-row:1;justify-self:start}
  .af-tools{grid-column:2;grid-row:1}
  .af-nav{grid-column:1/-1;grid-row:2}
  .brand img.logo.af{height:28px}
}

/* ---- film unggulan (Netflix/BBC) ---- */
.af-feature{position:relative;overflow:hidden;min-height:clamp(340px,46vw,600px);display:flex;align-items:flex-end;isolation:isolate}
.af-feature > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.af-feature::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(12,13,12,.88) 0%,rgba(12,13,12,.35) 55%,rgba(12,13,12,.1) 100%)}
.af-feature-in{padding:clamp(24px,4vw,56px) var(--gutter);max-width:820px}
.af-feature h2{font-size:clamp(2.4rem,6vw,5rem);line-height:.98;margin:10px 0 0}
.af-feature h2 a{text-decoration:none}
.af-feature-lede{max-width:56ch;margin-top:14px;font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.5;color:var(--mute-on-ink)}
.af-btn{display:inline-block;margin-top:20px;font-family:var(--af-mono);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;background:var(--paper);color:var(--ink);padding:12px 20px}
.af-btn:hover{background:transparent;color:var(--paper);box-shadow:inset 0 0 0 1px var(--paper)}

/* ---- tata letak A24: kolom judul kiri, grid gambar kanan ---- */
.af-split-in{display:grid;grid-template-columns:minmax(260px,1fr) 2.8fr}
.af-side{border-right:var(--af-rule)}
.af-side-in{position:sticky;top:0;padding:clamp(24px,3vw,40px) var(--gutter) 40px}
.af-side h1{font-size:clamp(1.9rem,2.9vw,3rem);line-height:1.02;margin-top:12px;overflow-wrap:break-word;hyphens:auto}
.af-side .lede{margin-top:16px;font-size:1rem;line-height:1.55;color:var(--mute);max-width:34ch}
.af-count{margin-top:20px;font-family:var(--af-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.af-filter{display:flex;flex-direction:column;gap:6px;margin-top:22px;padding-top:16px;border-top:var(--af-rule);font-family:var(--af-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}
.af-filter a{text-decoration:none}
.af-filter a:hover{text-decoration:underline;text-underline-offset:3px}
.af-main{padding:clamp(24px,3vw,40px) var(--gutter) clamp(48px,6vw,96px);min-width:0}
@media (max-width:860px){.af-split-in{grid-template-columns:1fr}.af-side{border-right:0;border-bottom:var(--af-rule)}.af-side-in{position:static}.af-filter{flex-direction:row;flex-wrap:wrap;gap:6px 18px}}

.af-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(36px,4vw,56px) clamp(18px,2.4vw,32px)}
@media (min-width:1500px){.af-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.af-grid{grid-template-columns:1fr}}
.af-card{display:grid;gap:14px;text-decoration:none}
.af-card figure{position:relative;margin:0;aspect-ratio:16/10;max-width:100%;overflow:hidden;background:var(--ink-2)}
.af-card figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .6s ease,transform .8s ease}
.af-card figure.fit img.main-img{object-fit:contain;background:var(--paper-2)}
.af-card .alt-img{opacity:0}
.af-card:hover .main-img{transform:scale(1.02)}
.af-card.cycling .alt-img.on{opacity:1}
.af-badge{position:absolute;left:12px;bottom:12px;font-family:var(--af-mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;background:var(--paper);color:var(--ink);padding:5px 9px}
.af-cap h3{font-size:clamp(1.35rem,2vw,1.75rem);line-height:1.05}
.af-cap .alt{font-family:var(--text);font-style:italic;color:var(--mute);margin-top:4px}
.af-cap .meta{margin-top:8px;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.af-honor{margin-top:6px;font-family:var(--af-mono);font-size:.68rem;letter-spacing:.06em;color:var(--ink)}
.af-hide{display:none!important}
.af-sentinel{height:1px}
.af-more-wrap{margin-top:40px}
.af-more-btn{font-family:var(--af-mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;background:none;border:1px solid var(--ink);color:var(--ink);padding:12px 20px;cursor:pointer}
.af-more-btn:hover{background:var(--ink);color:var(--paper)}

/* ---- kepala halaman biasa (About, Publications): ringkas ---- */
.af-head{padding-block:clamp(32px,5vw,60px) clamp(20px,3vw,32px);border-bottom:var(--af-rule)}
.af-head h1{font-size:clamp(2.4rem,5.4vw,4.4rem);line-height:1;margin-top:10px;max-width:20ch}
.af-head .lede{max-width:52ch;margin-top:14px;font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.55;color:var(--mute)}

/* ---- halaman film ---- */
.af .film-hero.has-media{min-height:clamp(280px,38vw,500px)!important}
.af .film-hero h1{font-size:clamp(2.6rem,6.6vw,5.6rem)!important;line-height:.96!important}
.af .section-head h2,.af .split h2{font-size:clamp(2rem,4vw,3.2rem)!important;line-height:1!important}

/* ---- About: logo festival & daftar penghargaan ---- */
.af-mail{margin-top:1.4em;display:grid;gap:4px}
.af-mail a{font-family:var(--display);font-weight:600;font-size:1.5rem;letter-spacing:-.02em}
.af-logos h2.label{display:block;text-align:center;margin:clamp(36px,5vw,56px) 0 22px;font-family:var(--af-mono)!important;text-transform:uppercase!important;font-size:.7rem!important;letter-spacing:.12em!important;font-weight:500!important}
.af-logos h2.label:first-child{margin-top:0}
.logo-row{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center}
.logo-row img{width:auto;height:auto;max-width:100%;object-fit:contain}
.logo-row.major{gap:28px 44px}
.logo-row.major img{max-height:104px;max-width:200px}
.logo-row.support{gap:24px 48px}
.logo-row.support img{max-height:70px;max-width:150px}
.logo-row.minor{gap:18px 26px;padding-top:24px;border-top:var(--af-rule)}
.logo-row.minor img{max-height:64px;max-width:116px;opacity:.86}
@media (max-width:600px){.logo-row.major img{max-height:70px;max-width:140px}.logo-row.minor img{max-height:50px;max-width:92px}}
.af-awards .note{max-width:60ch}
.aw-list{list-style:none;margin:28px 0 0;padding:0;border-top:var(--af-rule)}
.aw-year{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:8px 20px;padding:16px 0;border-bottom:var(--af-rule)}
.aw-year .yr{font-family:var(--af-mono);font-size:.85rem;font-variant-numeric:tabular-nums;color:var(--mute);padding-top:3px}
.aw-year ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.aw-year li{display:grid;gap:1px;line-height:1.4}
.aw-title{font-family:var(--display);font-size:1.05rem;font-weight:600;letter-spacing:-.01em}
.aw-meta{font-size:.9rem;color:var(--mute)}
@media (max-width:520px){.aw-year{grid-template-columns:1fr}}

/* ---- kaki ---- */
.foot-grid img.logo.af{height:44px;width:auto;aspect-ratio:1906/428}
.foot-note{font-size:.9375rem;line-height:1.6;opacity:.8;margin:0}
.foot-note a{text-decoration:underline;text-underline-offset:3px}
@media (prefers-reduced-motion:reduce){.af-card figure img{transition:none}}

/* ================= v4 · slider unggulan, tag filter, sister company ================= */
.af-slider{position:relative;overflow:hidden;background:var(--ink)}
.af-track{list-style:none;margin:0;padding:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}
.af-track::-webkit-scrollbar{display:none}
.af-slide{position:relative;flex:0 0 100%;scroll-snap-align:start;min-height:clamp(380px,48vw,620px);display:flex;align-items:flex-end;isolation:isolate}
.af-slide-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.af-slide::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(12,13,12,.9) 0%,rgba(12,13,12,.45) 50%,rgba(12,13,12,.12) 100%),linear-gradient(90deg,rgba(12,13,12,.55) 0%,rgba(12,13,12,0) 60%)}
.af-slide-in{padding:clamp(28px,4vw,64px) var(--gutter) clamp(56px,6vw,80px);max-width:860px}
.af-slide h2{font-size:clamp(2.2rem,5.6vw,4.8rem);line-height:.98;margin:10px 0 0}
.af-slide h2 a{text-decoration:none}
.af-fest{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:20px}
.af-fest img{height:clamp(38px,4.4vw,56px);width:auto;max-width:150px;object-fit:contain;filter:brightness(0) invert(1);opacity:.92}
.af-arrow{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border:1px solid rgba(245,245,241,.5);background:rgba(12,13,12,.35);color:var(--paper);font-size:1.8rem;line-height:1;cursor:pointer;display:grid;place-items:center}
.af-arrow:hover{background:var(--paper);color:var(--ink)}
.af-arrow.prev{left:max(12px,env(safe-area-inset-left,0px))}
.af-arrow.next{right:max(12px,env(safe-area-inset-right,0px))}
.af-dots{position:absolute;right:var(--gutter);bottom:22px;display:flex;gap:8px}
.af-dot{width:26px;height:3px;border:0;padding:0;background:rgba(245,245,241,.35);cursor:pointer}
.af-dot[aria-current="true"]{background:var(--paper)}
@media (max-width:640px){.af-arrow{display:none}.af-dots{left:var(--gutter);right:auto}}

.af-anchor{position:relative;top:-80px;display:block;height:0}
.af-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;padding-top:16px;border-top:var(--af-rule)}
.af-tags button{font-family:var(--af-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;background:transparent;color:var(--ink);border:1px solid var(--line);padding:8px 12px;cursor:pointer}
.af-tags button span{color:var(--mute);margin-left:4px}
.af-tags button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.af-tags button[aria-pressed="true"] span{color:var(--mute-on-ink)}
.af-grid li.af-off{display:none!important}

.af-sister{border-top:var(--af-rule)}
.af-sister-link a{font-family:var(--display);font-weight:600;font-size:clamp(1.4rem,2.6vw,2rem);letter-spacing:-.02em;text-decoration:none;border-bottom:2px solid var(--ink)}
.af-sister .note{margin-top:10px}
/* v5: laurel asli putih/berwarna ditampilkan gelap di latar terang (file tidak diubah) */
.logo-row img.tone-white{filter:brightness(0)}
.logo-row img.tone-color{filter:grayscale(1) contrast(1.15) brightness(.85)}
/* v5b: tinggi logo festival di slider dihitung per logo (--h), lebar mengikuti proporsi asli */
.af-fest{gap:14px 30px}
.af-fest img{height:calc(var(--h,52) * 1px);max-width:none;width:auto}
@media (max-width:600px){.af-fest img{height:calc(var(--h,52) * .78px)}}
/* v5c: keterangan kecil di bawah logo */
.logo-row li.has-cap{display:flex;flex-direction:column;align-items:center;gap:8px}
.logo-row .logo-cap{font-family:var(--af-mono);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;opacity:.7}
/* v5d: laurel kecil di kartu film */
.af-card-laurel{margin-top:10px}
.af-card-laurel .laurel{color:var(--ink)}
.af-card-laurel .lb{width:16px;height:40px;opacity:.75}
.af-card-laurel .l-txt{text-align:center}
.af-card-laurel .l-mid{font-size:.78rem;line-height:1.25}
.af-card-laurel .l-top,.af-card-laurel .l-bot{font-size:.52rem}
