/* Arko Portfolio v3.9 common CSS bundle — generated from retained source files. */

/* ===== director-focus.css ===== */
/* ============================================================
   DIRECTOR-FIRST CINEMATIC HIERARCHY — v3.0
   Adds emphasis without removing the original portfolio content.
   Lightweight: no looping full-screen animation, no extra libraries.
   ============================================================ */

:root {
  --director-ink: #070708;
  --director-paper: #f4ead7;
  --director-gold: #d3a15a;
  --director-line: rgba(211,161,90,.24);
  --director-muted: rgba(244,234,215,.66);
}

/* Brand lockup */
.nav-logo { display:inline-flex; align-items:baseline; gap:.55rem; }
.nav-logo--mark{ align-items:center; gap:.6rem; }
.nav-logo-mark{
  width:58px; height:58px; object-fit:contain; display:block;
  filter:drop-shadow(0 0 6px rgba(245,230,204,.18));
  animation:arkoLogoFloat 5s ease-in-out infinite;
  transition:transform .35s cubic-bezier(.2,.8,.2,1), filter .35s ease;
  transform-origin:50% 60%;
}
.nav-logo--mark:hover .nav-logo-mark,
.nav-logo--mark:focus-visible .nav-logo-mark{
  transform:scale(1.08) rotate(-4deg);
  filter:drop-shadow(0 0 12px rgba(245,230,204,.4));
}
.nav-logo-word{ display:inline-flex; align-items:baseline; gap:.55rem; }
@keyframes arkoLogoFloat{
  0%,100%{ transform:translateY(0) rotate(0deg); }
  50%{ transform:translateY(-3px) rotate(-2deg); }
}
@media (max-width:720px){ .nav-logo-mark{ width:46px; height:46px; } }
@media (prefers-reduced-motion:reduce){
  .nav-logo-mark{ animation:none; }
  .nav-logo--mark:hover .nav-logo-mark,
  .nav-logo--mark:focus-visible .nav-logo-mark{ transform:none; }
}
.nav-logo small {
  font-family:var(--font-body);
  font-size:.48rem;
  font-weight:500;
  letter-spacing:.22em;
  color:rgba(250,250,245,.62);
  white-space:nowrap;
}

/* Home hero: director is the first thing read */
.hero { height:auto; min-height:100svh; padding:clamp(6.5rem,9vh,8rem) 0 clamp(5.5rem,8vh,7rem); }
.hero-content { max-width:1500px; margin:0 auto; }
.director-primary-label {
  display:flex;
  align-items:center;
  gap:.7rem;
  margin-bottom:.75rem;
  font-family:var(--font-body);
  font-size:clamp(.68rem,.85vw,.8rem);
  font-weight:600;
  letter-spacing:.26em;
  color:var(--warm-amber);
  text-transform:uppercase;
}
.director-primary-label::before {
  content:"";
  width:34px;
  height:1px;
  background:currentColor;
}
.director-primary-label span { color:rgba(245,230,204,.38); }

.director-hero-actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:.8rem 1.2rem;
  margin-top:1.8rem;
}
.director-primary-cta,
.director-secondary-cta {
  position:relative;
  z-index:3;
  text-decoration:none;
  font-family:var(--font-body);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.67rem;
  transition:transform .25s ease, border-color .25s ease, background .25s ease, color .25s ease;
}
.director-primary-cta {
  display:inline-flex;
  gap:1rem;
  align-items:center;
  padding:.95rem 1.1rem;
  background:var(--warm-amber);
  color:var(--cinema-black);
  border:1px solid var(--warm-amber);
  font-weight:700;
}
.director-primary-cta:hover { transform:translateY(-2px); background:var(--architectural-white); border-color:var(--architectural-white); }
.director-primary-cta span { font-size:1rem; }
.director-secondary-cta {
  padding:.95rem .1rem;
  color:var(--architectural-white);
  border-bottom:1px solid rgba(245,230,204,.35);
}
.director-secondary-cta:hover { color:var(--warm-amber); border-color:var(--warm-amber); }

.director-hero-meta {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  width:min(620px,100%);
  margin-top:1.7rem;
  border-top:1px solid rgba(201,146,74,.22);
  border-bottom:1px solid rgba(201,146,74,.14);
}
.director-hero-meta > div {
  display:flex;
  align-items:center;
  gap:.75rem;
  padding:.9rem .8rem .9rem 0;
}
.director-hero-meta > div + div { border-left:1px solid rgba(201,146,74,.14); padding-left:1rem; }
.director-hero-meta strong {
  font-family:var(--font-display);
  font-size:1.15rem;
  color:var(--architectural-white);
  letter-spacing:-.04em;
}
.director-hero-meta span {
  font-size:.57rem;
  line-height:1.35;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(245,230,204,.58);
}

.cinema-hud {
  position:absolute;
  inset:clamp(5.5rem,9vh,7rem) clamp(1.1rem,3vw,3rem) clamp(5.5rem,9vh,7rem);
  z-index:8;
  pointer-events:none;
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-template-rows:1fr 1fr;
  font-family:var(--font-body);
  font-size:.5rem;
  letter-spacing:.18em;
  color:rgba(245,230,204,.48);
}
.cinema-hud::before,
.cinema-hud::after {
  content:"";
  position:absolute;
  inset:0;
  border:1px solid rgba(245,230,204,.08);
  clip-path:polygon(0 0,70px 0,70px 1px,1px 1px,1px 70px,0 70px,0 0,100% 0,100% 70px,calc(100% - 1px) 70px,calc(100% - 1px) 1px,calc(100% - 70px) 1px,calc(100% - 70px) 0,100% 0,100% 100%,calc(100% - 70px) 100%,calc(100% - 70px) calc(100% - 1px),calc(100% - 1px) calc(100% - 1px),calc(100% - 1px) calc(100% - 70px),100% calc(100% - 70px),100% 100%,0 100%,0 calc(100% - 70px),1px calc(100% - 70px),1px calc(100% - 1px),70px calc(100% - 1px),70px 100%,0 100%);
}
.cinema-hud > span:nth-child(2) { justify-self:end; }
.cinema-hud > span:nth-child(3) { align-self:end; }
.cinema-hud .hud-timecode { justify-self:end; align-self:end; font-variant-numeric:tabular-nums; }
.hud-rec { display:flex; align-items:center; gap:.45rem; }
.hud-rec i { width:6px; height:6px; border-radius:50%; background:var(--accent-coral); box-shadow:0 0 0 3px rgba(224,123,109,.1); }

/* Director-first editorial block */
.director-focus {
  position:relative;
  padding:clamp(5.5rem,10vw,10rem) clamp(1.15rem,8vw,8rem);
  background:
    linear-gradient(180deg,#09090b 0%,#0d0d10 54%,#080809 100%);
  border-top:1px solid rgba(201,146,74,.15);
  overflow:hidden;
}
.director-focus::before {
  content:"DIRECTOR";
  position:absolute;
  right:-.05em;
  top:.05em;
  font-family:var(--font-display);
  font-weight:800;
  font-size:clamp(7rem,20vw,22rem);
  line-height:.75;
  letter-spacing:-.08em;
  color:rgba(245,230,204,.018);
  pointer-events:none;
}
.director-focus-shell { max-width:1440px; margin:0 auto; position:relative; z-index:2; }
.director-focus-head {
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.58fr);
  gap:clamp(2rem,6vw,7rem);
  align-items:end;
  padding-bottom:clamp(2.5rem,5vw,5rem);
  border-bottom:1px solid var(--director-line);
}
.director-focus-kicker {
  margin-bottom:1.2rem;
  font-size:.62rem;
  font-weight:600;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:var(--warm-amber);
}
.director-focus-head h2 {
  max-width:930px;
  font-family:var(--font-display);
  font-size:clamp(3rem,7.4vw,8rem);
  line-height:.84;
  letter-spacing:-.06em;
  text-transform:uppercase;
  color:var(--architectural-white);
}
.director-focus-head h2 em {
  display:block;
  font-family:var(--font-accent);
  font-weight:400;
  text-transform:none;
  letter-spacing:-.04em;
  color:var(--warm-amber);
}
.director-focus-head p {
  max-width:560px;
  font-size:.95rem;
  line-height:1.85;
  color:var(--film-grain);
}
.director-reel-layout {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);
  gap:clamp(1rem,2.4vw,2.2rem);
  margin-top:clamp(2rem,4vw,4rem);
}
.director-reel-frame {
  position:relative;
  display:block;
  min-height:0;
  aspect-ratio:2.39/1;
  overflow:hidden;
  background:#111;
  border:1px solid rgba(201,146,74,.2);
  color:var(--architectural-white);
  text-decoration:none;
  isolation:isolate;
}
.director-reel-frame img {
  width:100%; height:100%; object-fit:cover;
  filter:contrast(1.12) saturate(.82) brightness(.82);
  transform:scale(1.005);
  transition:transform .8s cubic-bezier(.2,.65,.2,1), filter .6s ease;
}
.director-reel-frame:hover img { transform:scale(1.035); filter:contrast(1.1) saturate(.95) brightness(.92); }
.reel-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(5,5,6,.1),rgba(5,5,6,.18) 45%,rgba(5,5,6,.9)); }
.reel-index,.reel-caption,.reel-play { position:absolute; z-index:2; }
.reel-index { top:1rem; left:1rem; font-size:.52rem; letter-spacing:.19em; color:var(--warm-amber); }
.reel-play {
  inset:50% auto auto 50%;
  transform:translate(-50%,-50%);
  display:flex; align-items:center; gap:.85rem;
  padding:.8rem 1rem;
  border:1px solid rgba(245,230,204,.5);
  backdrop-filter:blur(6px);
  background:rgba(7,7,8,.24);
  font-size:.58rem; letter-spacing:.18em;
}
.reel-play b { color:var(--warm-amber); }
.reel-caption { left:1rem; bottom:1rem; right:1rem; font-size:.52rem; letter-spacing:.16em; line-height:1.5; color:rgba(245,230,204,.76); }

.director-language {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  align-content:stretch;
  background:var(--director-line);
  border:1px solid var(--director-line);
}
.director-language-card { background:#0b0b0d; padding:clamp(1.2rem,2vw,1.8rem); }
.director-language-card small { color:var(--warm-amber); letter-spacing:.18em; font-size:.52rem; }
.director-language-card h3 { margin:1.6rem 0 .65rem; font-family:var(--font-display); font-size:clamp(1.05rem,1.55vw,1.45rem); line-height:1.02; letter-spacing:-.035em; }
.director-language-card p { font-size:.75rem; line-height:1.62; color:rgba(212,197,169,.72); }

.director-slate {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  margin-top:1px;
  border:1px solid var(--director-line);
  background:var(--director-line);
  gap:1px;
}
.director-slate span {
  min-width:0;
  padding:1.05rem 1rem;
  background:#0b0b0d;
  color:rgba(245,230,204,.48);
  font-size:.52rem;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.director-slate strong { display:block; margin-top:.35rem; color:var(--architectural-white); font-family:var(--font-display); font-size:.78rem; letter-spacing:.015em; overflow-wrap:anywhere; }

.secondary-discipline-note {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:1rem;
  padding:1rem clamp(1.1rem,8vw,8rem);
  background:#0b0b0d;
  border-top:1px solid rgba(201,146,74,.12);
  border-bottom:1px solid rgba(201,146,74,.12);
  color:rgba(245,230,204,.58);
  text-align:center;
  font-size:.64rem;
  line-height:1.5;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.secondary-discipline-note span { color:var(--warm-amber); font-weight:700; letter-spacing:.2em; }

/* Film page hierarchy */
.director-page-badge {
  display:inline-flex;
  align-items:center;
  gap:.6rem;
  margin-bottom:1rem;
  padding:.55rem .7rem;
  border:1px solid rgba(201,146,74,.32);
  background:rgba(8,8,9,.38);
  font-size:.58rem;
  letter-spacing:.18em;
  color:var(--architectural-white);
  text-transform:uppercase;
}
.director-page-badge span { width:7px; height:7px; border-radius:50%; background:var(--accent-coral); }
.director-editorial { padding-top:clamp(4rem,7vw,7rem); }
.director-page-stats {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-bottom:clamp(4rem,7vw,7rem);
  border-top:1px solid var(--director-line);
  border-bottom:1px solid var(--director-line);
}
.director-page-stats > div { min-width:0; padding:1.4rem 1.1rem 1.4rem 0; display:flex; gap:.8rem; align-items:flex-start; }
.director-page-stats > div + div { border-left:1px solid var(--director-line); padding-left:1.2rem; }
.director-page-stats strong { font-family:var(--font-display); font-size:clamp(1.8rem,3vw,3.1rem); line-height:.85; color:var(--warm-amber); letter-spacing:-.06em; }
.director-page-stats span { font-size:.58rem; line-height:1.5; letter-spacing:.13em; color:rgba(245,230,204,.6); text-transform:uppercase; }
.director-feature-head { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.58fr); gap:clamp(2rem,5vw,6rem); align-items:end; margin-bottom:clamp(2.5rem,5vw,4.5rem); }
.director-feature-grid {
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(230px,.5fr);
  grid-template-rows:1fr 1fr;
  gap:.65rem;
  min-height:min(72vw,760px);
}
.director-feature-grid figure { margin:0; position:relative; overflow:hidden; border:1px solid rgba(201,146,74,.16); background:#0b0b0d; }
.director-feature-grid img { width:100%; height:100%; object-fit:cover; filter:contrast(1.1) saturate(.82) brightness(.84); }
.director-feature-main { grid-row:1/3; }
.director-feature-main img { object-position:center 40%; }
.director-feature-grid figcaption { position:absolute; left:0; right:0; bottom:0; padding:1rem; background:linear-gradient(to top,rgba(4,4,5,.92),transparent); color:var(--architectural-white); }
.director-feature-main figcaption { padding:clamp(1rem,3vw,2.2rem); }
.director-feature-main figcaption span { display:block; margin-bottom:.55rem; font-size:.55rem; letter-spacing:.2em; color:var(--warm-amber); }
.director-feature-main figcaption strong { display:block; max-width:620px; font-family:var(--font-display); font-size:clamp(1.4rem,2.8vw,3rem); line-height:.96; letter-spacing:-.045em; }
.director-feature-side figcaption { font-size:.58rem; letter-spacing:.14em; text-transform:uppercase; }

/* About and contact director priority */
.director-identity-band { background:#09090b; border-top:1px solid var(--director-line); border-bottom:1px solid var(--director-line); }
.director-identity-copy { max-width:1100px; }
.director-identity-copy .section-copy { margin-top:1.5rem; }
.director-identity-copy .arko-button { margin-top:2rem; }
.director-contact-priority { padding:1.25rem var(--page-pad); background:var(--warm-amber); color:var(--cinema-black); }
.director-contact-line { max-width:1400px; margin:0 auto; display:grid; grid-template-columns:auto 1fr auto; gap:1.5rem; align-items:center; }
.director-contact-line span { font-size:.58rem; letter-spacing:.2em; font-weight:700; }
.director-contact-line strong { font-family:var(--font-display); font-size:clamp(.8rem,1.25vw,1rem); letter-spacing:-.015em; }
.director-contact-line a { color:var(--cinema-black); text-decoration:none; font-size:.65rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; border-bottom:1px solid rgba(10,10,12,.35); }

/* Film page gets the strongest navigation cue */
body.page-slug-films .nav-logo small,
body.page-id-films .nav-logo small { color:var(--warm-amber); }

@media (max-width: 1100px) {
  .director-focus-head,.director-feature-head { grid-template-columns:1fr; gap:1.5rem; }
  .director-reel-layout { grid-template-columns:1fr; }
  .director-language { grid-template-columns:repeat(4,1fr); }
  .director-page-stats { grid-template-columns:1fr 1fr; }
  .director-page-stats > div:nth-child(3) { border-left:0; }
  .director-slate { grid-template-columns:repeat(3,1fr); }
}

@media (max-width: 780px) {
  .nav-logo small { display:none; }
  .cinema-hud { display:none; }
  .director-primary-label { font-size:.57rem; letter-spacing:.18em; gap:.45rem; }
  .director-primary-label::before { width:22px; }
  .director-hero-actions { align-items:stretch; flex-direction:column; width:min(100%,390px); }
  .director-primary-cta,.director-secondary-cta { width:100%; justify-content:space-between; }
  .director-secondary-cta { padding:.8rem 0; }
  .director-hero-meta { grid-template-columns:1fr 1fr 1fr; }
  .director-hero-meta > div { flex-direction:column; align-items:flex-start; gap:.25rem; padding:.75rem .5rem .75rem 0; }
  .director-hero-meta > div + div { padding-left:.7rem; }
  .director-hero-meta strong { font-size:.95rem; }
  .director-hero-meta span { font-size:.48rem; }
  .director-focus { padding-left:1.15rem; padding-right:1.15rem; }
  .director-focus-head h2 { font-size:clamp(2.65rem,14vw,5.3rem); }
  .director-reel-frame { aspect-ratio:16/9; }
  .director-language { grid-template-columns:1fr 1fr; }
  .director-slate { grid-template-columns:1fr 1fr; }
  .secondary-discipline-note { flex-direction:column; gap:.35rem; padding:1rem 1.15rem; }
  .director-page-stats { grid-template-columns:1fr 1fr; }
  .director-feature-grid { grid-template-columns:1fr 1fr; grid-template-rows:auto auto; min-height:0; }
  .director-feature-main { grid-column:1/-1; grid-row:auto; aspect-ratio:16/10; }
  .director-feature-side { aspect-ratio:16/10; }
  .director-contact-line { grid-template-columns:1fr; gap:.55rem; }
  .director-contact-line a { width:max-content; }
}

@media (max-width: 480px) {
  .director-primary-label { max-width:90vw; line-height:1.5; flex-wrap:wrap; }
  .director-hero-meta { grid-template-columns:1fr; border-bottom:0; }
  .director-hero-meta > div { flex-direction:row; align-items:center; border-left:0!important; border-bottom:1px solid rgba(201,146,74,.14); padding:.55rem 0!important; }
  .director-language { grid-template-columns:1fr; }
  .director-slate { grid-template-columns:1fr; }
  .director-page-stats { grid-template-columns:1fr; }
  .director-page-stats > div + div { border-left:0; border-top:1px solid var(--director-line); padding-left:0; }
  .director-feature-grid { grid-template-columns:1fr; }
  .director-feature-main,.director-feature-side { grid-column:1; aspect-ratio:16/10; }
  .reel-play { padding:.65rem .75rem; font-size:.52rem; }
}

@media (prefers-reduced-motion: reduce) {
  .director-reel-frame img,
  .director-primary-cta,
  .director-secondary-cta { transition:none!important; transform:none!important; }
}


/* ===== assembly-motion.css ===== */
/* ============================================================
   ARKO PORTFOLIO — CINEMATIC ASSEMBLY MOTION / v3.1
   Lightweight motion graphics using transform, opacity and wipes.
   No third-party animation library; all existing content remains.
   ============================================================ */

:root{
  --arko-ease:cubic-bezier(.16,1,.3,1);
  --arko-fast:cubic-bezier(.22,.8,.2,1);
}

/* ---------- Typography assembly ---------- */
.arko-assemble-text{
  position:relative;
}
.hero-title .line > span.arko-assemble-text{
  opacity:1!important;
  transform:none!important;
  animation:none!important;
}
.arko-assemble-text .arko-piece{
  display:inline-block;
  opacity:0;
  transform:translate3d(var(--ax,0),var(--ay,34px),0) rotate(var(--ar,0deg));
  filter:blur(3px);
  will-change:transform,opacity;
  transition:
    transform .95s var(--arko-ease) var(--ad,0ms),
    opacity .58s ease var(--ad,0ms),
    filter .75s ease var(--ad,0ms);
}
.arko-assemble-text.is-assembled .arko-piece{
  opacity:1;
  transform:translate3d(0,0,0) rotate(0);
  filter:blur(0);
}
.hero-title .arko-piece{
  animation:none!important;
  transition-duration:1.05s,.62s,.85s;
}

/* ---------- Label / microtype fly-in ---------- */
.arko-micro-assemble{
  opacity:0;
  transform:translate3d(var(--micro-x,-34px),var(--micro-y,0),0);
  clip-path:inset(0 100% 0 0);
  transition:opacity .5s ease,transform .8s var(--arko-ease),clip-path .85s var(--arko-ease);
}
.arko-micro-assemble.is-assembled{
  opacity:1;
  transform:none;
  clip-path:inset(0 0 0 0);
}
.hero-label.arko-micro-assemble{
  animation:none!important;
}

/* ---------- Card/table/slate assembly ---------- */
.arko-panel-assemble{
  position:relative;
  opacity:0;
  transform:translate3d(var(--panel-x,0),var(--panel-y,56px),0) rotate(var(--panel-r,0deg)) scale(.985);
  transform-origin:50% 50%;
  transition:
    transform .9s var(--arko-ease) var(--panel-delay,0ms),
    opacity .52s ease var(--panel-delay,0ms);
  will-change:transform,opacity;
}
.arko-panel-assemble.is-assembled{
  opacity:1;
  transform:translate3d(0,0,0) rotate(0) scale(1);
}
.arko-panel-assemble > .arko-panel-wipe{
  position:absolute!important;
  display:block!important;
  z-index:20;
  inset:-1px;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  pointer-events:none;
  background:linear-gradient(90deg,#0a0a0c 0%,#c9924a 48%,#0a0a0c 100%)!important;
  transform:scaleX(1);
  transform-origin:var(--wipe-origin,left) center;
  transition:transform .8s var(--arko-ease) calc(var(--panel-delay,0ms) + 120ms);
}
.arko-panel-assemble.is-assembled > .arko-panel-wipe{
  transform:scaleX(0);
}

/* Film rows get a more editorial, table-like lock-in. */
.film-card.arko-panel-assemble,
.film-row-pro.arko-panel-assemble,
.timeline-row.arko-panel-assemble,
.director-slate > .arko-panel-assemble,
.director-page-stats > .arko-panel-assemble{
  backface-visibility:hidden;
}
.film-card.arko-panel-assemble.is-assembled::before{
  transition-delay:.25s;
}

/* One-shot cinematic edge line after assembly. */
.director-slate,
.director-page-stats,
.films-container,
.timeline{
  position:relative;
}
.director-slate::after,
.director-page-stats::after,
.films-container::after,
.timeline::after{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--warm-amber),transparent);
  transform:scaleX(0);
  transform-origin:left;
  opacity:.7;
  transition:transform 1.1s var(--arko-ease) .15s;
  pointer-events:none;
}
.arko-sequence-live::after{transform:scaleX(1);}

/* ---------- Footer credit ---------- */
.footer-credit{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:.38rem .55rem;
}
.footer-credit b{
  color:rgba(212,197,169,.28);
  font-weight:400;
}
.footer-credit strong{
  color:var(--warm-amber);
  font-size:.62rem;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
}

/* ---------- Responsive hardening ---------- */
html,body{width:100%;max-width:100%;overflow-x:hidden;overflow-x:clip;}
body.menu-open{overflow:hidden!important;}
main,section,div,article,figure,a{min-width:0;}
img,video,iframe{max-width:100%;height:auto;}
.contact-block a,.contact-card a,.footer-text,.section-copy,.about-text,.film-roles{
  overflow-wrap:anywhere;
  word-break:normal;
}

@media (max-width:900px){
  .nav{padding:1rem 1.15rem!important;}
  .nav-logo{gap:.35rem;max-width:calc(100vw - 76px);}
  .nav-links{width:100dvw!important;height:100dvh!important;max-height:100dvh;overscroll-behavior:contain;}
  .hamburger{display:flex;min-width:44px;min-height:44px;align-items:center;justify-content:center;}
  .director-focus-head,.director-feature-head,.section-topline,.split-story,.contact-content,.credentials-grid{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .director-reel-layout{grid-template-columns:minmax(0,1fr)!important;}
  .director-language{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .director-slate{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .director-feature-grid{min-height:0!important;}
  .footer{align-items:flex-start!important;}
  .footer-credit{justify-content:flex-start;}
}

@media (max-width:680px){
  :root{--mobile-pad:1rem;}
  .nav{padding:.85rem var(--mobile-pad)!important;background:linear-gradient(to bottom,rgba(10,10,12,.96),rgba(10,10,12,.72),transparent)!important;}
  .nav-logo{font-size:1.12rem!important;}
  .nav-logo small{display:none!important;}
  .nav-links{padding:5.3rem 1.1rem 2rem!important;gap:.3rem!important;justify-content:flex-start!important;align-items:stretch!important;background:rgba(8,8,10,.985)!important;backdrop-filter:blur(12px);}
  .nav-links li{width:100%;}
  .nav-links a{display:flex!important;align-items:center;min-height:54px;padding:.85rem .2rem!important;border-bottom:1px solid rgba(201,146,74,.12);font-size:.85rem!important;letter-spacing:.16em;}
  body.menu-open{overflow:hidden!important;}

  .hero{min-height:100svh!important;height:auto!important;padding:5.9rem 0 2.6rem!important;align-items:flex-end!important;}
  .hero-content{padding:0 var(--mobile-pad)!important;}
  .hero-title{font-size:clamp(2.5rem,15vw,4.35rem)!important;line-height:.9!important;letter-spacing:-.055em!important;margin-bottom:1.15rem!important;}
  .hero-subtitle{font-size:.9rem!important;line-height:1.62!important;max-width:34rem!important;}
  .director-primary-label{font-size:.52rem!important;letter-spacing:.14em!important;gap:.35rem!important;}
  .director-hero-actions{width:100%!important;margin-top:1.35rem!important;}
  .director-primary-cta,.director-secondary-cta{min-height:48px!important;display:flex!important;align-items:center!important;}
  .director-hero-meta{width:100%!important;margin-top:1.25rem!important;}
  .letterbox-top,.letterbox-bottom{height:2.1vh!important;}

  .about,.filmography-header,.films-container,.architecture,.credentials,.contact,.footer,.page-section,.page-portal,.director-focus{
    padding-left:var(--mobile-pad)!important;
    padding-right:var(--mobile-pad)!important;
  }
  .director-focus{padding-top:4.5rem!important;padding-bottom:4.5rem!important;}
  .director-focus-head h2,.section-display,.about-heading,.filmography-title,.architecture-title,.credentials-title,.contact-heading,.inner-title{
    max-width:100%;overflow-wrap:normal!important;word-break:normal!important;hyphens:none;
  }
  .director-focus-head h2{font-size:clamp(2.55rem,13.5vw,4.7rem)!important;}
  .director-focus-head p{font-size:.88rem!important;line-height:1.72!important;}
  .director-reel-frame{aspect-ratio:16/10!important;}
  .director-language{grid-template-columns:minmax(0,1fr)!important;}
  .director-language-card{padding:1.15rem!important;}
  .director-language-card h3{margin:1rem 0 .55rem!important;font-size:1.15rem!important;}
  .director-slate{grid-template-columns:minmax(0,1fr)!important;}
  .director-slate span{padding:.9rem!important;}

  .film-card{grid-template-columns:1fr!important;gap:.45rem!important;padding:1.2rem 0!important;}
  .film-year,.film-info,.film-roles{grid-column:1!important;grid-row:auto!important;}
  .film-title{font-size:clamp(1.25rem,8vw,2rem)!important;line-height:1!important;}
  .film-meta{flex-wrap:wrap;}
  .film-roles{display:block!important;text-align:left!important;font-size:.76rem!important;line-height:1.5!important;}
  .film-row-pro{grid-template-columns:minmax(0,1fr) 24px!important;gap:.5rem!important;}
  .film-row-pro .yr,.film-row-pro h3,.film-row-pro .roles{grid-column:1!important;}
  .film-row-pro .arr{grid-column:2!important;grid-row:1/4!important;align-self:center;}

  .feature-grid,.process-grid,.contact-cards,.page-portal-grid,.gallery-grid,.arch-grid,.about-stats,.director-page-stats{
    grid-template-columns:minmax(0,1fr)!important;
  }
  .feature-card,.process-step,.contact-card,.page-portal-card{padding:1.15rem!important;}
  .arch-item,.arch-item:nth-child(n){grid-column:1!important;grid-row:auto!important;display:block!important;min-height:245px!important;}
  .gallery-shot,.gallery-shot:nth-child(n){grid-column:1!important;min-height:0!important;aspect-ratio:4/3!important;}
  .story-image{min-height:0!important;aspect-ratio:4/5!important;}
  .director-feature-grid{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important;}
  .director-feature-main,.director-feature-side{grid-column:1!important;grid-row:auto!important;aspect-ratio:16/10!important;}
  .director-page-stats > div + div{border-left:0!important;border-top:1px solid var(--director-line);padding-left:0!important;}

  .social-links{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem!important;}
  .social-link{min-height:46px;display:flex!important;align-items:center;justify-content:center;}
  .arko-button{width:100%!important;min-height:48px;white-space:normal!important;text-align:center;justify-content:center;}
  .cta-band{flex-direction:column!important;align-items:stretch!important;gap:1.1rem!important;padding:1.2rem!important;}

  .footer{display:flex!important;flex-direction:column!important;gap:.7rem!important;padding-top:1.25rem!important;padding-bottom:1.4rem!important;text-align:left!important;}
  .footer-text{width:100%;font-size:.62rem!important;line-height:1.6;}
  .footer-credit{justify-content:flex-start!important;gap:.25rem .4rem;}
  .footer-credit b{display:none;}
  .footer-credit strong{display:block;width:100%;margin-top:.2rem;font-size:.58rem;}

  /* Smaller motion travel on touch/mobile. */
  .arko-assemble-text .arko-piece{filter:blur(1.5px);}
  .arko-panel-assemble{transform:translate3d(var(--panel-x,0),var(--panel-y,26px),0) rotate(0deg) scale(.992);}
  .arko-panel-wipe{opacity:.78;}
}

@media (max-width:380px){
  :root{--mobile-pad:.85rem;}
  .hero-title{font-size:clamp(2.2rem,14.7vw,3.35rem)!important;}
  .director-primary-label::before{display:none;}
  .director-primary-label{display:block!important;}
  .director-hero-meta > div{gap:.5rem!important;}
  .inner-hero{padding-left:var(--mobile-pad)!important;padding-right:var(--mobile-pad)!important;}
  .inner-title{font-size:clamp(2.25rem,13vw,3.55rem)!important;}
  .section-display{font-size:clamp(2.1rem,11.5vw,3.15rem)!important;}
  .contact-block a{font-size:.9rem;}
}

@media (hover:none),(pointer:coarse){
  .cursor,.cursor-dot{display:none!important;}
  body,body.arko-inner-page{cursor:auto!important;}
  [data-tilt],[data-magnetic]{transform:none!important;}
}

@media (prefers-reduced-motion:reduce){
  .arko-assemble-text .arko-piece,
  .arko-micro-assemble,
  .arko-panel-assemble,
  .arko-panel-wipe{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    clip-path:none!important;
    transition:none!important;
  }
  .director-slate::after,.director-page-stats::after,.films-container::after,.timeline::after{display:none!important;}
}

/* ============================================================
   v3.2 — FILMS PAGE COMPOSITION / CURSOR RESPONSE / ART DIRECTION
   Keeps all content. Fixes invisible media occupying large height,
   makes the pointer track instantly, and gives each film section a
   distinct dark-grade + type treatment within one cinematic system.
   ============================================================ */

/* Cursor: position follows pointer directly; only hover scale eases. */
@media (hover:hover) and (pointer:fine){
  .cursor{
    width:16px!important;
    height:16px!important;
    left:0;
    top:0;
    transform:translate(-50%,-50%) scale(1)!important;
    transition:transform .055s linear,background .055s linear,border-color .055s linear!important;
    mix-blend-mode:normal!important;
    will-change:translate,transform;
  }
  .cursor-dot{
    width:4px!important;
    height:4px!important;
    left:0;
    top:0;
    transform:translate(-50%,-50%)!important;
    transition:none!important;
    will-change:translate;
  }
  .cursor.active{
    transform:translate(-50%,-50%) scale(1.75)!important;
    background:rgba(201,146,74,.12)!important;
  }
}

/* The film feature must never disappear and leave an empty block.
   Motion JS adds .arko-panel-assemble progressively; without JS the
   figures remain fully visible. */
.director-feature-grid .cinematic-media-assemble{
  clip-path:none!important;
  opacity:1;
}
.director-feature-grid .cinematic-media-assemble.arko-panel-assemble{
  opacity:0;
}
.director-feature-grid .cinematic-media-assemble.arko-panel-assemble.is-assembled{
  opacity:1;
}

/* Reduce the oversized gap while keeping all three director images. */
@media (min-width:901px){
  .director-feature-grid{
    min-height:clamp(430px,48vw,620px)!important;
    max-height:620px;
  }
}
@media (min-width:681px) and (max-width:900px){
  .director-feature-grid{
    grid-template-columns:minmax(0,1.45fr) minmax(190px,.55fr)!important;
    grid-template-rows:1fr 1fr!important;
    height:clamp(320px,52vw,430px)!important;
    min-height:0!important;
  }
  .director-feature-main{
    grid-column:1!important;
    grid-row:1/3!important;
    aspect-ratio:auto!important;
  }
  .director-feature-side{
    grid-column:2!important;
    grid-row:auto!important;
    aspect-ratio:auto!important;
  }
}
@media (max-width:680px){
  .director-feature-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    gap:.45rem!important;
  }
  .director-feature-main{
    grid-column:1/-1!important;
    grid-row:auto!important;
    aspect-ratio:16/9!important;
  }
  .director-feature-side{
    grid-column:auto!important;
    grid-row:auto!important;
    aspect-ratio:4/3!important;
  }
  .director-feature-main figcaption strong{font-size:clamp(1.1rem,5vw,1.65rem)!important;}
  .director-feature-side figcaption{font-size:.48rem!important;padding:.65rem!important;}
}
@media (max-width:390px){
  .director-feature-main{aspect-ratio:1.85/1!important;}
  .director-feature-side{aspect-ratio:1.2/1!important;}
}

/* Tighter editorial rhythm: no cinematic section needs a dead 9rem pad. */
.director-editorial.page-section{
  padding-top:clamp(3.4rem,5.6vw,5.7rem)!important;
  padding-bottom:clamp(3.8rem,6vw,6.2rem)!important;
}
.director-page-stats{margin-bottom:clamp(2.6rem,4.5vw,4.5rem)!important;}
.director-feature-head{margin-bottom:clamp(1.8rem,3vw,2.8rem)!important;}
.filmography-section,.visual-archive-section,.process-section,.recognition-section,.film-cta-section{
  padding-top:clamp(3.8rem,6vw,6.3rem)!important;
  padding-bottom:clamp(3.8rem,6vw,6.3rem)!important;
}

/* -------- Section-by-section dark grading -------- */
.director-editorial.page-section{
  background:
    radial-gradient(circle at 78% 18%,rgba(42,123,139,.075),transparent 34%),
    linear-gradient(180deg,#07090c 0%,#09090c 100%)!important;
}
.filmography-section{
  background:
    radial-gradient(circle at 14% 12%,rgba(201,146,74,.075),transparent 30%),
    #0d0b0a!important;
  border-top:1px solid rgba(201,146,74,.16);
}
.visual-archive-section{
  background:
    radial-gradient(circle at 84% 30%,rgba(42,123,139,.10),transparent 34%),
    #081012!important;
}
.process-section{
  background:
    radial-gradient(circle at 50% 0%,rgba(224,123,109,.055),transparent 28%),
    #101014!important;
}
.recognition-section{
  background:
    radial-gradient(circle at 16% 24%,rgba(201,146,74,.09),transparent 30%),
    #17120d!important;
}
.film-cta-section{
  background:#070709!important;
  border-top:1px solid rgba(245,230,204,.06);
}

/* -------- Distinct typography per section, same 3 loaded families -------- */
.director-editorial .section-display{
  font-family:var(--font-display)!important;
  font-weight:700;
  text-transform:none;
  letter-spacing:-.055em;
}
.filmography-section .section-display{
  font-family:var(--font-body)!important;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:-.065em;
}
.filmography-section .section-display .accent{
  font-family:var(--font-accent)!important;
  font-weight:400;
  text-transform:none;
  letter-spacing:-.035em;
}
.visual-archive-section .section-display{
  font-family:var(--font-accent)!important;
  font-weight:400;
  text-transform:none;
  letter-spacing:-.035em;
  line-height:.94;
}
.visual-archive-section .section-display .accent{
  font-family:var(--font-display)!important;
  font-style:normal;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:-.045em;
  font-size:.82em;
}
.process-section .section-display{
  font-family:var(--font-display)!important;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:-.07em;
}
.process-section .section-display .accent{
  font-family:var(--font-accent)!important;
  text-transform:none;
  font-weight:400;
  letter-spacing:-.035em;
}
.recognition-section .section-display{
  font-family:var(--font-body)!important;
  font-weight:500;
  text-transform:none;
  letter-spacing:-.055em;
}
.recognition-section .section-display .accent{
  font-family:var(--font-accent)!important;
  font-weight:400;
}
.film-cta-section .cta-band h2{
  font-family:var(--font-accent)!important;
  font-weight:400;
  letter-spacing:-.035em;
  text-transform:none;
}

/* Cards inherit their section's film-stock grade instead of looking identical. */
.filmography-section .film-row-pro{border-color:rgba(201,146,74,.16)!important;}
.visual-archive-section .gallery-shot{background:#0c1719!important;border:1px solid rgba(42,123,139,.16);}
.process-section .process-grid{background:rgba(224,123,109,.10)!important;}
.process-section .process-step{background:#0b0b0f!important;}
.recognition-section .story-image{box-shadow:0 0 0 1px rgba(201,146,74,.12);}

@media (max-width:680px){
  .director-editorial.page-section,.filmography-section,.visual-archive-section,.process-section,.recognition-section,.film-cta-section{
    padding-top:3.4rem!important;
    padding-bottom:3.4rem!important;
  }
  .director-page-stats{margin-bottom:2.2rem!important;}
  .director-feature-head{margin-bottom:1.5rem!important;}
  .filmography-section .section-display,.process-section .section-display{letter-spacing:-.045em;}
}

/* Page-level dark stocks + typography identities.
   Different, but deliberately related—not random. */
body.page-slug-about{
  background:#0d0b0b;
}
body.page-slug-about .inner-hero{
  background:#0d0b0b;
}
body.page-slug-about .page-section{
  background:#0f0c0b;
}
body.page-slug-about .page-section.alt{background:#15100e!important;}
body.page-slug-about .section-display{
  font-family:var(--font-accent)!important;
  font-weight:400;
  text-transform:none;
  letter-spacing:-.035em;
}
body.page-slug-about .section-display .accent{
  font-family:var(--font-display)!important;
  font-style:normal;
  font-weight:700;
}

body.page-slug-architecture{
  background:#081013;
}
body.page-slug-architecture .inner-hero{
  background:#081013;
}
body.page-slug-architecture .page-section{
  background:#091114;
}
body.page-slug-architecture .page-section.alt{background:#0d1719!important;}
body.page-slug-architecture .page-section.soft{background:#12191a!important;}
body.page-slug-architecture .section-display{
  font-family:var(--font-body)!important;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:-.065em;
}
body.page-slug-architecture .section-display .accent{
  font-family:var(--font-accent)!important;
  text-transform:none;
  font-weight:400;
}

body.page-slug-contact{
  background:#0d0b0f;
}
body.page-slug-contact .inner-hero{
  background:#0d0b0f;
}
body.page-slug-contact .page-section{
  background:#100d12;
}
body.page-slug-contact .page-section.alt{background:#151117!important;}
body.page-slug-contact .section-display{
  font-family:var(--font-display)!important;
  font-weight:700;
  letter-spacing:-.06em;
  text-transform:none;
}
body.page-slug-contact .section-display .accent{
  font-family:var(--font-accent)!important;
  font-weight:400;
}
body.page-slug-contact .cta-band h2{
  font-family:var(--font-accent)!important;
  font-weight:400;
}

/* Give each inner-page hero its own title character as well. */
body.page-slug-films .inner-title{font-family:var(--font-display)!important;}
body.page-slug-about .inner-title{font-family:var(--font-accent)!important;text-transform:none;letter-spacing:-.04em;}
body.page-slug-about .inner-title em{font-family:var(--font-display)!important;font-style:normal;text-transform:uppercase;font-size:.72em;}
body.page-slug-architecture .inner-title{font-family:var(--font-body)!important;font-weight:600;letter-spacing:-.07em;}
body.page-slug-contact .inner-title{font-family:var(--font-accent)!important;text-transform:none;letter-spacing:-.04em;}


/* ===== filmfreeway-premium.css ===== */
/* ============================================================
   ARKO PORTFOLIO — FILMFREEWAY / PREMIUM DIRECTOR PASS v3.3
   Director-first name lockup, FilmFreeway dossier/archive,
   lightweight cinematic motion, kingfisher cursor and responsive hardening.
   ============================================================ */

:root{
  --ff-ink:#07080a;
  --ff-ink-2:#0b0d11;
  --ff-warm:#c9924a;
  --ff-cream:#f5e6cc;
  --ff-teal:#2f8194;
  --ff-blue:#2e72a6;
  --ff-orange:#e47d2f;
  --ff-line:rgba(201,146,74,.18);
  --ff-ease:cubic-bezier(.16,1,.3,1);
}

/* ---------- Refined hero identity ---------- */
.hero-title.hero-title-signature{
  width:min(780px,100%);
  font-size:inherit!important;
  line-height:1!important;
  letter-spacing:0!important;
  margin:1rem 0 1.45rem!important;
}
.hero-title-signature .hero-name-overline{
  margin-bottom:.35rem;
  overflow:visible!important;
}
.hero-title-signature .hero-name-overline>span{
  font-family:var(--font-body)!important;
  font-size:clamp(.72rem,1.15vw,1rem)!important;
  font-weight:500!important;
  letter-spacing:.28em!important;
  line-height:1.4!important;
  text-transform:uppercase!important;
  color:rgba(250,250,245,.84)!important;
}
.hero-title-signature .hero-name-main{
  display:flex!important;
  align-items:flex-end;
  gap:clamp(.7rem,2vw,1.6rem);
  overflow:visible!important;
}
.hero-title-signature .hero-name-main>span{
  font-family:var(--font-accent)!important;
  font-size:clamp(4.1rem,8.6vw,8.4rem)!important;
  font-weight:400!important;
  font-style:italic!important;
  line-height:.78!important;
  letter-spacing:-.065em!important;
  color:var(--warm-amber)!important;
  text-transform:none!important;
  text-shadow:0 16px 60px rgba(0,0,0,.35);
}
.hero-title-signature .hero-name-main small{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  margin-bottom:.45rem;
  font-family:var(--font-body);
  font-size:.62rem;
  font-weight:500;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:rgba(245,230,204,.72);
  white-space:nowrap;
}
.hero-title-signature .hero-name-main small::before{
  content:"";
  width:30px;
  height:1px;
  background:var(--warm-amber);
}
.hero .hero-bg{
  transform:scale(1.025);
  transform-origin:50% 38%;
  animation:arkoCameraBreath 15s ease-in-out infinite alternate;
  will-change:transform;
}
@keyframes arkoCameraBreath{
  from{transform:scale(1.025) translate3d(0,0,0)}
  to{transform:scale(1.075) translate3d(-.55%,.35%,0)}
}
.hero::after{
  content:"";
  position:absolute;
  inset:8vh 0;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0 48%,rgba(201,146,74,.055) 49%,transparent 50% 100%);
  background-size:220% 100%;
  animation:arkoLensScan 8s ease-in-out infinite;
  opacity:.65;
}
@keyframes arkoLensScan{
  0%,58%,100%{background-position:150% 0;opacity:0}
  68%{opacity:.55}
  84%{background-position:-80% 0;opacity:0}
}

/* ---------- Kingfisher cursor ---------- */
@media (hover:hover) and (pointer:fine){
  body{cursor:none!important;}
  .cursor.cursor-kingfisher{
    width:58px!important;
    height:42px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    mix-blend-mode:normal!important;
    left:0!important;
    top:0!important;
    transform:translate(-12px,-18px) scale(1)!important;
    transform-origin:18px 22px!important;
    overflow:visible!important;
    transition:transform .06s linear!important;
    filter:none!important;
    will-change:translate,transform!important;
  }
  .cursor.cursor-kingfisher svg{
    width:58px;
    height:42px;
    display:block;
    overflow:visible;
  }
  .cursor.cursor-kingfisher .kf-wing{
    transform-box:fill-box;
    transform-origin:75% 65%;
    transition:transform .14s var(--ff-ease);
  }
  .cursor.cursor-kingfisher.active{
    transform:translate(-12px,-18px) scale(1.12) rotate(-5deg)!important;
  }
  .cursor.cursor-kingfisher.active .kf-wing{
    transform:rotate(-22deg) translateY(-2px);
  }
  .cursor.cursor-kingfisher.is-diving{
    transform:translate(-7px,-15px) scale(.92) rotate(14deg)!important;
    filter:none!important;
  }
  .cursor.cursor-kingfisher.is-diving .kf-wing{transform:rotate(24deg) scaleY(.72);}
  .cursor-dot{display:none!important;}
}

/* ---------- Home / FilmFreeway director dossier ---------- */
.ff-home-dossier{
  position:relative;
  padding:clamp(4.8rem,8vw,8rem) 8vw;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 15%,rgba(47,129,148,.1),transparent 28%),
    radial-gradient(circle at 82% 82%,rgba(201,146,74,.08),transparent 32%),
    #080a0d;
  border-top:1px solid rgba(201,146,74,.12);
  border-bottom:1px solid rgba(201,146,74,.12);
}
.ff-home-shell{max-width:1500px;margin:0 auto;}
.ff-home-head{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.65fr);
  gap:clamp(2rem,7vw,8rem);
  align-items:end;
  margin-bottom:clamp(2.4rem,5vw,5rem);
}
.ff-source-kicker{
  display:flex;
  align-items:center;
  gap:.8rem;
  margin-bottom:1rem;
  font:500 .65rem/1.2 var(--font-body);
  letter-spacing:.25em;
  text-transform:uppercase;
  color:var(--warm-amber);
}
.ff-source-kicker::before{content:"";width:34px;height:1px;background:currentColor;}
.ff-home-head h2{
  max-width:850px;
  font:700 clamp(2.5rem,5.6vw,6.6rem)/.9 var(--font-display);
  letter-spacing:-.065em;
  color:var(--architectural-white);
}
.ff-home-head h2 em{font-family:var(--font-accent);font-weight:400;color:var(--warm-amber);}
.ff-home-copy{color:var(--film-grain);font-size:.95rem;line-height:1.8;}
.ff-home-facts{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-block:1px solid var(--ff-line);
  margin-bottom:clamp(2.4rem,5vw,4.5rem);
}
.ff-home-fact{padding:1.4rem 1.2rem;border-right:1px solid var(--ff-line);}
.ff-home-fact:last-child{border-right:0;}
.ff-home-fact strong{display:block;font:700 clamp(1.5rem,3vw,2.9rem)/1 var(--font-display);color:var(--architectural-white);}
.ff-home-fact span{display:block;margin-top:.5rem;font:.62rem/1.45 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:rgba(245,230,204,.6);}
.ff-home-images{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-auto-rows:78px;
  gap:.65rem;
}
.ff-home-image{position:relative;overflow:hidden;background:#111;border:1px solid rgba(245,230,204,.08);}
.ff-home-image:nth-child(1){grid-column:span 4;grid-row:span 5;}
.ff-home-image:nth-child(2){grid-column:span 5;grid-row:span 3;}
.ff-home-image:nth-child(3){grid-column:span 3;grid-row:span 3;}
.ff-home-image:nth-child(4){grid-column:span 3;grid-row:span 2;}
.ff-home-image:nth-child(5){grid-column:span 5;grid-row:span 2;}
.ff-home-image:nth-child(6){grid-column:span 4;grid-row:span 2;}
.ff-home-image img{width:100%;height:100%;object-fit:cover;filter:contrast(1.05) saturate(.88);transition:transform .9s var(--ff-ease),filter .7s ease;}
.ff-home-image:hover img{transform:scale(1.055);filter:contrast(1.08) saturate(1.05);}
.ff-home-image figcaption{position:absolute;left:.8rem;bottom:.7rem;z-index:2;padding:.35rem .5rem;background:rgba(5,6,8,.74);font:.55rem/1 var(--font-body);letter-spacing:.13em;text-transform:uppercase;color:var(--ff-cream);}
.ff-home-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem;}
.ff-link-primary,.ff-link-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.85rem 1.15rem;border:1px solid rgba(201,146,74,.42);font:.68rem/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;}
.ff-link-primary{background:var(--warm-amber);color:#09090a;}
.ff-link-secondary{color:var(--ff-cream);background:rgba(255,255,255,.015);}

/* ---------- FilmFreeway detailed film dossier ---------- */
.ff-dossier-section{
  padding:clamp(4.2rem,7vw,7.5rem) 0;
  background:
    radial-gradient(circle at 75% 8%,rgba(47,129,148,.075),transparent 30%),
    #08090b;
  border-top:1px solid var(--ff-line);
}
.ff-dossier-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.6fr);gap:clamp(2rem,7vw,7rem);align-items:end;margin-bottom:3rem;}
.ff-dossier-intro .section-copy{max-width:560px;}
.ff-projects{display:grid;gap:1.2rem;}
.ff-project{
  border:1px solid rgba(201,146,74,.16);
  background:linear-gradient(180deg,rgba(255,255,255,.012),transparent),#0a0b0e;
  overflow:hidden;
}
.ff-project summary{
  list-style:none;
  display:grid;
  grid-template-columns:95px minmax(0,1fr) auto;
  gap:1.2rem;
  align-items:center;
  min-height:98px;
  padding:1.15rem 1.3rem;
  cursor:pointer;
  border-bottom:1px solid transparent;
  user-select:none;
}
.ff-project summary::-webkit-details-marker{display:none;}
.ff-project[open] summary{border-bottom-color:rgba(201,146,74,.12);}
.ff-project-year{font:500 .78rem/1 var(--font-display);letter-spacing:.12em;color:var(--warm-amber);}
.ff-project-name h3{font:700 clamp(1.35rem,2.8vw,2.8rem)/.95 var(--font-display);letter-spacing:-.045em;color:var(--architectural-white);}
.ff-project-name small{display:block;margin-top:.38rem;font:.58rem/1.4 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:rgba(245,230,204,.5);}
.ff-project-toggle{width:42px;height:42px;border:1px solid rgba(201,146,74,.25);border-radius:50%;display:grid;place-items:center;color:var(--warm-amber);font-size:1.15rem;transition:transform .4s var(--ff-ease);}
.ff-project[open] .ff-project-toggle{transform:rotate(45deg);}
.ff-project-body{padding:clamp(1.3rem,3vw,2.5rem);}
.ff-project-overview{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(1.6rem,5vw,5rem);align-items:start;}
.ff-project-synopsis{font:400 clamp(1.15rem,2vw,1.65rem)/1.55 var(--font-accent);color:var(--ff-cream);}
.ff-project-statement{margin-top:1.2rem;padding-left:1rem;border-left:2px solid var(--warm-amber);font:.88rem/1.7 var(--font-body);color:rgba(245,230,204,.7);}
.ff-project-meta{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--ff-line);border-left:1px solid var(--ff-line);}
.ff-project-meta div{padding:.8rem .85rem;border-right:1px solid var(--ff-line);border-bottom:1px solid var(--ff-line);}
.ff-project-meta dt{font:.52rem/1.2 var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:rgba(245,230,204,.45);}
.ff-project-meta dd{margin:.25rem 0 0;font:.76rem/1.35 var(--font-body);color:var(--architectural-white);}
.ff-credit-line{margin-top:1.2rem;color:var(--film-grain);font:.78rem/1.7 var(--font-body);}
.ff-credit-line strong{color:var(--architectural-white);font-weight:500;}
.ff-project-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.4rem;}
.ff-project-actions a{display:inline-flex;align-items:center;min-height:44px;padding:.7rem .9rem;border:1px solid rgba(201,146,74,.25);color:var(--ff-cream);text-decoration:none;font:.58rem/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase;transition:background .25s ease,border-color .25s ease;}
.ff-project-actions a:hover{background:rgba(201,146,74,.08);border-color:rgba(201,146,74,.55);}

/* All FilmFreeway imagery: local, lazy-loaded. */
.ff-photo-label{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:2rem;padding-top:1.2rem;border-top:1px solid rgba(201,146,74,.12);}
.ff-photo-label h4{font:600 .7rem/1 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:var(--warm-amber);}
.ff-photo-label span{font:.55rem/1 var(--font-body);letter-spacing:.14em;text-transform:uppercase;color:rgba(245,230,204,.42);}
.ff-archive-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:80px;gap:.55rem;margin-top:1rem;}
.ff-archive-shot{position:relative;overflow:hidden;background:#101114;border:1px solid rgba(255,255,255,.045);min-height:0;cursor:zoom-in;}
.ff-archive-shot:nth-child(9n+1){grid-column:span 4;grid-row:span 5;}
.ff-archive-shot:nth-child(9n+2){grid-column:span 5;grid-row:span 3;}
.ff-archive-shot:nth-child(9n+3){grid-column:span 3;grid-row:span 3;}
.ff-archive-shot:nth-child(9n+4){grid-column:span 3;grid-row:span 2;}
.ff-archive-shot:nth-child(9n+5){grid-column:span 5;grid-row:span 2;}
.ff-archive-shot:nth-child(9n+6){grid-column:span 4;grid-row:span 2;}
.ff-archive-shot:nth-child(9n+7){grid-column:span 4;grid-row:span 3;}
.ff-archive-shot:nth-child(9n+8){grid-column:span 4;grid-row:span 3;}
.ff-archive-shot:nth-child(9n+9){grid-column:span 4;grid-row:span 3;}
.ff-archive-shot img{width:100%;height:100%;object-fit:cover;display:block;filter:contrast(1.04) saturate(.9);transition:transform .85s var(--ff-ease),filter .5s ease;}
.ff-archive-shot:hover img{transform:scale(1.05);filter:contrast(1.08) saturate(1.04);}
.ff-archive-shot::after{content:"VIEW";position:absolute;right:.55rem;bottom:.5rem;padding:.28rem .38rem;background:rgba(7,8,10,.76);font:.48rem/1 var(--font-body);letter-spacing:.16em;color:rgba(245,230,204,.76);opacity:0;transform:translateY(5px);transition:.25s ease;}
.ff-archive-shot:hover::after{opacity:1;transform:none;}

/* ---------- Stronger but cheap assembly motion ---------- */
[data-ff-motion]{
  opacity:0;
  transform:translate3d(var(--ff-x,0),var(--ff-y,48px),0) rotate(var(--ff-r,0deg)) scale(.985);
  clip-path:inset(var(--ff-clip,0 0 0 0));
  transition:opacity .55s ease var(--ff-delay,0ms),transform .95s var(--ff-ease) var(--ff-delay,0ms),clip-path .95s var(--ff-ease) var(--ff-delay,0ms);
  will-change:transform,opacity;
}
[data-ff-motion].is-in{opacity:1;transform:none;clip-path:inset(0 0 0 0);}
.ff-project[open] .ff-project-body{animation:ffBodyIn .5s var(--ff-ease) both;}
@keyframes ffBodyIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ---------- Native lightbox ---------- */
.ff-lightbox{
  position:fixed;
  inset:0;
  z-index:20000;
  display:none;
  place-items:center;
  padding:clamp(1rem,4vw,3rem);
  background:rgba(2,3,4,.94);
  backdrop-filter:blur(10px);
}
.ff-lightbox.is-open{display:grid;}
.ff-lightbox img{max-width:min(94vw,1500px);max-height:88vh;width:auto;height:auto;box-shadow:0 24px 80px rgba(0,0,0,.55);}
.ff-lightbox button{position:fixed;top:1rem;right:1rem;width:48px;height:48px;border:1px solid rgba(245,230,204,.22);background:#0b0c0e;color:var(--ff-cream);font-size:1.4rem;cursor:pointer;}
.ff-lightbox-caption{position:fixed;left:1rem;bottom:1rem;max-width:70vw;font:.62rem/1.5 var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:rgba(245,230,204,.65);}

/* ---------- Page title refinements ---------- */
body.page-slug-films .inner-title{max-width:930px;font-size:clamp(3.2rem,7.5vw,8rem)!important;}
body.page-slug-about .inner-title{max-width:1040px;}
.director-page-badge{max-width:100%;}

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .ff-home-head,.ff-dossier-intro,.ff-project-overview{grid-template-columns:1fr;}
  .ff-home-facts{grid-template-columns:repeat(2,1fr);}
  .ff-home-fact:nth-child(2){border-right:0;}
  .ff-home-fact:nth-child(-n+2){border-bottom:1px solid var(--ff-line);}
  .ff-home-images{grid-auto-rows:64px;}
  .ff-project summary{grid-template-columns:72px minmax(0,1fr) 42px;}
}
@media (max-width:680px){
  .hero-title.hero-title-signature{margin:.7rem 0 1rem!important;}
  .hero-title-signature .hero-name-overline>span{font-size:.58rem!important;letter-spacing:.18em!important;}
  .hero-title-signature .hero-name-main{align-items:flex-start;flex-direction:column;gap:.45rem;}
  .hero-title-signature .hero-name-main>span{font-size:clamp(3.55rem,20vw,5.8rem)!important;line-height:.78!important;}
  .hero-title-signature .hero-name-main small{margin:0;font-size:.54rem;}
  .hero::after{display:none;}
  .hero .hero-bg{animation:none!important;transform:none!important;}

  .ff-home-dossier{padding:4rem 1rem;}
  .ff-home-head h2{font-size:clamp(2.55rem,13vw,4.6rem);}
  .ff-home-facts{grid-template-columns:1fr 1fr;}
  .ff-home-fact{padding:1rem .7rem;}
  .ff-home-fact strong{font-size:1.55rem;}
  .ff-home-images{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:.45rem;}
  .ff-home-image,.ff-home-image:nth-child(n){grid-column:auto;grid-row:auto;aspect-ratio:4/3;}
  .ff-home-image:first-child{grid-column:1/-1;aspect-ratio:16/10;}

  .ff-dossier-section{padding:3.7rem 0;}
  .ff-project summary{grid-template-columns:54px minmax(0,1fr) 38px;gap:.7rem;min-height:84px;padding:.9rem .75rem;}
  .ff-project-year{font-size:.64rem;}
  .ff-project-name h3{font-size:clamp(1.2rem,7.5vw,1.9rem);}
  .ff-project-toggle{width:36px;height:36px;}
  .ff-project-body{padding:1rem .75rem 1.25rem;}
  .ff-project-meta{grid-template-columns:1fr;}
  .ff-project-overview{gap:1.1rem;}
  .ff-project-synopsis{font-size:1.08rem;}
  .ff-archive-grid{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:.42rem;}
  .ff-archive-shot,.ff-archive-shot:nth-child(n){grid-column:auto;grid-row:auto;aspect-ratio:4/3;}
  .ff-archive-shot:first-child{grid-column:1/-1;aspect-ratio:16/10;}
  .ff-photo-label{align-items:flex-start;flex-direction:column;gap:.35rem;}
  .ff-lightbox-caption{max-width:85vw;}
}
@media (max-width:390px){
  .hero-title-signature .hero-name-main>span{font-size:clamp(3.1rem,19vw,4.6rem)!important;}
  .ff-home-facts{grid-template-columns:1fr;}
  .ff-home-fact{border-right:0!important;border-bottom:1px solid var(--ff-line)!important;}
  .ff-home-fact:last-child{border-bottom:0!important;}
  .ff-project-name small{letter-spacing:.09em;}
  .ff-project-meta dd{font-size:.72rem;}
}
@media (hover:none),(pointer:coarse){
  body{cursor:auto!important;}
  .cursor,.cursor-dot{display:none!important;}
}
@media (prefers-reduced-motion:reduce){
  .hero .hero-bg,.hero::after{animation:none!important;}
  [data-ff-motion]{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important;}
  .ff-project[open] .ff-project-body{animation:none!important;}
  .cursor.cursor-kingfisher .kf-wing{transition:none!important;}
}


/* ===== cinematic-color-motion-v34.css ===== */
/* ============================================================
   ARKO PORTFOLIO — CINEMATIC COLOR + KINETIC MOTION v3.4
   Purpose: stronger hero/name assembly, richer filmic palette,
   more front-page motion graphics, without adding heavy libraries.
   ============================================================ */

:root{
  --arko-ivory:#efe8dc;
  --arko-ivory-muted:#bdb7ae;
  --arko-steel:#6e8fae;
  --arko-blue:#486f9b;
  --arko-teal:#4f9694;
  --arko-sea:#2f777f;
  --arko-rust:#b66345;
  --arko-coral:#c77b66;
  --arko-amber:#b9894e;
  --arko-moss:#7d9275;
  --arko-plum:#85667d;
  --arko-night:#06080b;
  --arko-night-blue:#071018;
  --arko-night-teal:#071112;
  --arko-night-rust:#100b09;
  --arko-ease-v34:cubic-bezier(.16,1,.3,1);
  --warm-amber:#b46d4d;
}

/* ---------- Hero identity: prominent, readable, editorial ---------- */
.hero{
  --hero-accent:var(--arko-teal);
  --hero-secondary:var(--arko-steel);
  background-color:var(--arko-night);
  isolation:isolate;
}
.hero-content{z-index:7!important;}
.hero-title.hero-title-signature{
  width:min(1060px,100%)!important;
  margin:1.05rem 0 1.35rem!important;
}
.hero-title-signature .hero-name-overline{
  display:flex!important;
  flex-wrap:wrap;
  align-items:baseline;
  gap:.16em .5em;
  margin:0 0 .45rem!important;
  overflow:visible!important;
}
.hero-title-signature .hero-name-overline>span{
  display:inline-block;
  font-family:var(--font-display)!important;
  font-size:clamp(1.8rem,3.8vw,4.25rem)!important;
  font-weight:650!important;
  letter-spacing:-.055em!important;
  line-height:.9!important;
  text-transform:none!important;
  text-wrap:balance;
}
.hero-title-signature .hero-name-chowdhury{
  color:var(--arko-ivory)!important;
}
.hero-title-signature .hero-name-asif{
  color:var(--arko-steel)!important;
}
.hero-title-signature .hero-name-main{
  display:flex!important;
  align-items:flex-end;
  gap:clamp(.9rem,2.4vw,2rem);
  overflow:visible!important;
}
.hero-title-signature .hero-name-main>span.hero-name-arko{
  font-family:var(--font-accent)!important;
  font-size:clamp(4.4rem,9.2vw,9rem)!important;
  font-weight:400!important;
  font-style:italic!important;
  line-height:.76!important;
  letter-spacing:-.07em!important;
  color:var(--arko-rust)!important;
  text-shadow:0 18px 64px rgba(0,0,0,.38),0 0 42px rgba(182,99,69,.08);
}
.hero-title-signature .hero-name-main small{
  color:rgba(239,232,220,.72)!important;
}
.hero-title-signature .hero-name-main small::before{
  background:var(--arko-teal)!important;
}
.director-primary-label{color:var(--arko-teal)!important;}
.director-primary-label span{color:var(--arko-rust)!important;}
.hero-label{color:rgba(239,232,220,.62)!important;}
.hero-subtitle{color:rgba(239,232,220,.78)!important;}
.director-primary-cta{
  background:var(--arko-teal)!important;
  border-color:var(--arko-teal)!important;
  color:#061012!important;
}
.director-primary-cta:hover{background:var(--arko-ivory)!important;border-color:var(--arko-ivory)!important;}
.director-secondary-cta{border-color:rgba(110,143,174,.48)!important;color:var(--arko-ivory)!important;}
.director-secondary-cta:hover{background:rgba(110,143,174,.12)!important;border-color:var(--arko-steel)!important;}
.director-hero-meta{border-color:rgba(79,150,148,.22)!important;}
.director-hero-meta>div+div{border-color:rgba(110,143,174,.17)!important;}
.director-hero-meta strong{color:var(--arko-ivory)!important;}
.director-hero-meta>div:nth-child(1) strong{color:var(--arko-teal)!important;}
.director-hero-meta>div:nth-child(2) strong{color:var(--arko-rust)!important;}
.director-hero-meta>div:nth-child(3) strong{color:var(--arko-steel)!important;}
.cinema-hud{color:rgba(239,232,220,.52)!important;}
.cinema-hud .hud-rec{color:var(--arko-coral)!important;}
.cinema-hud .hud-rec i{background:var(--arko-coral)!important;}
.scroll-indicator{color:rgba(239,232,220,.48)!important;}
.scroll-line{background:linear-gradient(to bottom,var(--arko-teal),transparent)!important;}

/* Hero letter pieces now really assemble from all directions. */
.hero-title-signature .arko-piece{
  transform:translate3d(var(--ax,0),var(--ay,0),0) rotate(var(--ar,0deg)) scale(.68)!important;
  filter:blur(8px)!important;
  opacity:0!important;
  transition:
    transform 1.18s var(--arko-ease-v34) var(--ad,0ms),
    opacity .46s ease var(--ad,0ms),
    filter .86s ease var(--ad,0ms)!important;
}
.hero-title-signature .is-assembled .arko-piece,
.hero-title-signature .arko-assemble-text.is-assembled .arko-piece{
  transform:translate3d(0,0,0) rotate(0) scale(1)!important;
  filter:blur(0)!important;
  opacity:1!important;
}
.hero-name-chowdhury .arko-piece:nth-child(3n+1){color:var(--arko-ivory);}
.hero-name-chowdhury .arko-piece:nth-child(3n+2){color:#d9d2c7;}
.hero-name-chowdhury .arko-piece:nth-child(3n){color:#f7f2e9;}
.hero-name-asif .arko-piece:nth-child(3n+1){color:var(--arko-steel);}
.hero-name-asif .arko-piece:nth-child(3n+2){color:#7ba0be;}
.hero-name-asif .arko-piece:nth-child(3n){color:#5e819f;}
.hero-name-arko .arko-piece:nth-child(odd){color:var(--arko-rust);}
.hero-name-arko .arko-piece:nth-child(even){color:var(--arko-coral);}

/* ---------- Kinetic film graphics ---------- */
.hero-kinetic{
  --kx:0px;
  --ky:0px;
  position:absolute;
  inset:0;
  z-index:5;
  pointer-events:none;
  overflow:hidden;
  opacity:0;
  transition:opacity .7s ease .12s;
}
.hero.is-kinetic-live .hero-kinetic{opacity:1;}
.kinetic-beam,.kinetic-orbit,.kinetic-tick,.kinetic-corner{
  position:absolute;
  display:block;
  will-change:transform,opacity;
}
.kinetic-beam{
  height:1px;
  transform-origin:left center;
  opacity:.54;
}
.kinetic-beam-a{
  width:31vw;left:-6vw;top:22%;
  background:linear-gradient(90deg,transparent,var(--arko-steel),transparent);
  transform:rotate(-13deg) scaleX(.15);
  animation:v34BeamA 7.2s var(--arko-ease-v34) infinite;
}
.kinetic-beam-b{
  width:24vw;right:-3vw;top:43%;
  background:linear-gradient(90deg,transparent,var(--arko-rust),transparent);
  transform-origin:right center;
  transform:rotate(21deg) scaleX(.2);
  animation:v34BeamB 8.6s var(--arko-ease-v34) .7s infinite;
}
.kinetic-beam-c{
  width:19vw;right:16vw;bottom:17%;
  background:linear-gradient(90deg,transparent,var(--arko-teal),transparent);
  transform:rotate(-32deg) scaleX(.2);
  animation:v34BeamC 6.8s var(--arko-ease-v34) 1.2s infinite;
}
@keyframes v34BeamA{0%,100%{opacity:.1;transform:translate3d(-7vw,0,0) rotate(-13deg) scaleX(.18)}38%{opacity:.72;transform:translate3d(12vw,2vh,0) rotate(-13deg) scaleX(1)}62%{opacity:.16;transform:translate3d(32vw,4vh,0) rotate(-13deg) scaleX(.34)}}
@keyframes v34BeamB{0%,100%{opacity:.08;transform:translate3d(8vw,0,0) rotate(21deg) scaleX(.2)}40%{opacity:.62;transform:translate3d(-9vw,-2vh,0) rotate(21deg) scaleX(1)}70%{opacity:.12;transform:translate3d(-26vw,-5vh,0) rotate(21deg) scaleX(.28)}}
@keyframes v34BeamC{0%,100%{opacity:.1;transform:translate3d(0,4vh,0) rotate(-32deg) scaleX(.18)}44%{opacity:.58;transform:translate3d(-10vw,-2vh,0) rotate(-32deg) scaleX(1)}72%{opacity:.08;transform:translate3d(-20vw,-7vh,0) rotate(-32deg) scaleX(.22)}}
.kinetic-orbit{
  border-radius:50%;
  border:1px solid transparent;
  mix-blend-mode:screen;
}
.kinetic-orbit-a{
  width:clamp(210px,31vw,520px);aspect-ratio:1;
  right:6vw;top:10%;
  border-top-color:rgba(110,143,174,.34);
  border-right-color:rgba(79,150,148,.18);
  transform:translate3d(var(--kx),var(--ky),0) rotate(14deg);
  animation:v34OrbitA 17s linear infinite;
}
.kinetic-orbit-b{
  width:clamp(130px,18vw,300px);aspect-ratio:1;
  left:5vw;bottom:8%;
  border-left-color:rgba(182,99,69,.32);
  border-bottom-color:rgba(199,123,102,.15);
  animation:v34OrbitB 13s linear infinite reverse;
}
@keyframes v34OrbitA{to{transform:translate3d(var(--kx),var(--ky),0) rotate(374deg)}}
@keyframes v34OrbitB{to{transform:rotate(360deg)}}
.kinetic-tick{
  font:500 .54rem/1 var(--font-body);
  letter-spacing:.22em;
  text-transform:uppercase;
  white-space:nowrap;
  opacity:.5;
}
.kinetic-tick-a{right:8vw;top:21%;color:var(--arko-steel);animation:v34TickFloat 5.6s ease-in-out infinite alternate;}
.kinetic-tick-b{left:4.2vw;top:47%;color:var(--arko-teal);animation:v34TickFloat 6.5s ease-in-out .5s infinite alternate-reverse;}
.kinetic-tick-c{right:5vw;bottom:14%;color:var(--arko-rust);animation:v34TickFloat 7.2s ease-in-out 1s infinite alternate;}
@keyframes v34TickFloat{from{transform:translate3d(0,-6px,0);opacity:.24}to{transform:translate3d(9px,7px,0);opacity:.62}}
.kinetic-corner{width:72px;height:72px;opacity:.42;}
.kinetic-corner::before,.kinetic-corner::after{content:"";position:absolute;background:currentColor;}
.kinetic-corner::before{width:100%;height:1px;}
.kinetic-corner::after{width:1px;height:100%;}
.kinetic-corner-a{right:3.5vw;top:14%;color:var(--arko-teal);animation:v34CornerIn 1.15s var(--arko-ease-v34) .3s both;}
.kinetic-corner-b{left:3.5vw;bottom:12%;color:var(--arko-rust);transform:rotate(180deg);animation:v34CornerIn 1.15s var(--arko-ease-v34) .5s both;}
@keyframes v34CornerIn{from{opacity:0;clip-path:inset(0 100% 100% 0);transform:scale(.65)}to{opacity:.42;clip-path:inset(0);transform:scale(1)}}

/* ---------- Do not make every assembly wipe gold ---------- */
.arko-panel-assemble{--panel-accent:var(--arko-steel);}
.arko-panel-assemble>.arko-panel-wipe{
  background:linear-gradient(90deg,#07090c 0%,var(--panel-accent) 48%,#07090c 100%)!important;
}
.director-hero-meta>div:nth-child(1),.director-language-card:nth-child(3n+1),.film-card:nth-child(3n+1),.film-row-pro:nth-child(3n+1),.ff-home-fact:nth-child(1){--panel-accent:var(--arko-teal);}
.director-hero-meta>div:nth-child(2),.director-language-card:nth-child(3n+2),.film-card:nth-child(3n+2),.film-row-pro:nth-child(3n+2),.ff-home-fact:nth-child(2){--panel-accent:var(--arko-rust);}
.director-hero-meta>div:nth-child(3),.director-language-card:nth-child(3n),.film-card:nth-child(3n),.film-row-pro:nth-child(3n),.ff-home-fact:nth-child(3){--panel-accent:var(--arko-steel);}
.ff-home-fact:nth-child(4){--panel-accent:var(--arko-moss);}
.process-step:nth-child(4n+1),.feature-card:nth-child(4n+1),.contact-card:nth-child(4n+1),.credential-item:nth-child(4n+1){--panel-accent:var(--arko-teal);}
.process-step:nth-child(4n+2),.feature-card:nth-child(4n+2),.contact-card:nth-child(4n+2),.credential-item:nth-child(4n+2){--panel-accent:var(--arko-rust);}
.process-step:nth-child(4n+3),.feature-card:nth-child(4n+3),.contact-card:nth-child(4n+3),.credential-item:nth-child(4n+3){--panel-accent:var(--arko-steel);}
.process-step:nth-child(4n),.feature-card:nth-child(4n),.contact-card:nth-child(4n),.credential-item:nth-child(4n){--panel-accent:var(--arko-moss);}
.director-slate::after,.director-page-stats::after,.films-container::after,.timeline::after{
  background:linear-gradient(90deg,transparent,var(--arko-teal),var(--arko-rust),var(--arko-steel),transparent)!important;
}

/* ---------- Front-page scene palette: same dark film, different color moods ---------- */
.grade-strip>div:nth-child(1){background:#405e7b!important;}
.grade-strip>div:nth-child(2){background:#3f7775!important;}
.grade-strip>div:nth-child(3){background:#a55d45!important;}
.grade-strip>div:nth-child(4){background:#8b7a58!important;}
.grade-strip>div:nth-child(5){background:#69657c!important;}

.director-focus{
  --scene-accent:var(--arko-teal);
  background:radial-gradient(circle at 78% 18%,rgba(79,150,148,.08),transparent 34%),#07100f!important;
  border-color:rgba(79,150,148,.14)!important;
}
.director-focus-kicker{color:var(--arko-teal)!important;}
.director-focus-head h2 em{color:var(--arko-rust)!important;}
.director-language-card:nth-child(1) .director-language-index{color:var(--arko-teal)!important;}
.director-language-card:nth-child(2) .director-language-index{color:var(--arko-rust)!important;}
.director-language-card:nth-child(3) .director-language-index{color:var(--arko-steel)!important;}
.director-language-card:nth-child(4) .director-language-index{color:var(--arko-moss)!important;}

.ff-home-dossier{
  --scene-accent:var(--arko-steel);
  background:
    radial-gradient(circle at 16% 16%,rgba(72,111,155,.13),transparent 28%),
    radial-gradient(circle at 84% 80%,rgba(182,99,69,.075),transparent 30%),
    #080b10!important;
  border-color:rgba(110,143,174,.15)!important;
}
.ff-source-kicker{color:var(--arko-steel)!important;}
.ff-home-head h2 em{color:var(--arko-rust)!important;}
.ff-home-facts{border-color:rgba(110,143,174,.18)!important;}
.ff-home-fact{border-color:rgba(110,143,174,.16)!important;}
.ff-home-fact:nth-child(1) strong{color:var(--arko-teal)!important;}
.ff-home-fact:nth-child(2) strong{color:var(--arko-rust)!important;}
.ff-home-fact:nth-child(3) strong{color:var(--arko-steel)!important;}
.ff-home-fact:nth-child(4) strong{color:var(--arko-moss)!important;}
.ff-link-primary{background:var(--arko-steel)!important;border-color:var(--arko-steel)!important;color:#071018!important;}
.ff-link-secondary{border-color:rgba(182,99,69,.38)!important;color:var(--arko-ivory)!important;}
.ff-home-image:nth-child(3n+1){border-color:rgba(79,150,148,.18)!important;}
.ff-home-image:nth-child(3n+2){border-color:rgba(182,99,69,.18)!important;}
.ff-home-image:nth-child(3n){border-color:rgba(110,143,174,.18)!important;}

.about{background:radial-gradient(circle at 12% 10%,rgba(125,146,117,.06),transparent 30%),#0b0d0b!important;}
.about .section-label{color:var(--arko-moss)!important;}
.about-heading .accent{color:var(--arko-teal)!important;}
.filmography{background:radial-gradient(circle at 82% 14%,rgba(110,143,174,.07),transparent 34%),#080b10!important;}
.filmography .section-label{color:var(--arko-steel)!important;}
.filmography-title .accent{color:var(--arko-rust)!important;}
.film-card:nth-child(5n+1) .film-year{color:var(--arko-teal)!important;}
.film-card:nth-child(5n+2) .film-year{color:var(--arko-rust)!important;}
.film-card:nth-child(5n+3) .film-year{color:var(--arko-steel)!important;}
.film-card:nth-child(5n+4) .film-year{color:var(--arko-moss)!important;}
.film-card:nth-child(5n) .film-year{color:var(--arko-plum)!important;}
.architecture{background:radial-gradient(circle at 78% 12%,rgba(79,150,148,.06),transparent 32%),#071012!important;}
.architecture .section-label{color:var(--arko-teal)!important;}
.architecture-title .accent{color:var(--arko-steel)!important;}
.credentials{background:#0d0b0a!important;}
.credentials .section-label{color:var(--arko-rust)!important;}
.credentials-title .accent{color:var(--arko-moss)!important;}
.contact{background:radial-gradient(circle at 18% 12%,rgba(133,102,125,.08),transparent 28%),#0d0a0f!important;}
.contact .section-label{color:var(--arko-plum)!important;}
.contact-heading .accent{color:var(--arko-coral)!important;}
.page-portal{background:#080b0d!important;}
.page-portal .section-label{color:var(--arko-steel)!important;}

/* Motion texture on major front sections: a quiet colored scan rather than more gold. */
body:not(.arko-inner-page) section:not(.hero){position:relative;overflow:hidden;}
body:not(.arko-inner-page) section:not(.hero)::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:linear-gradient(108deg,transparent 0 43%,rgba(110,143,174,.018) 48%,rgba(79,150,148,.026) 50%,rgba(182,99,69,.014) 53%,transparent 58% 100%);
  transform:translate3d(-42%,0,0);
  animation:v34SectionScan 15s ease-in-out infinite;
}
body:not(.arko-inner-page) section:not(.hero)::before{
  content:"";
  position:absolute;
  z-index:3;
  left:8vw;right:8vw;top:0;
  height:1px;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--scene-accent,var(--arko-steel)),transparent);
  transform:scaleX(0);
  opacity:.58;
  transition:transform 1.15s var(--arko-ease-v34) .08s;
}
body:not(.arko-inner-page) section.v34-scene-live::before{transform:scaleX(1);}
@keyframes v34SectionScan{0%,58%,100%{transform:translate3d(-42%,0,0);opacity:0}68%{opacity:1}82%{transform:translate3d(44%,0,0);opacity:0}}

/* ---------- Inner page color identities ---------- */
body.page-slug-films{--page-accent:var(--arko-steel);--page-accent-2:var(--arko-rust);background:#070b10!important;}
body.page-slug-about{--page-accent:var(--arko-moss);--page-accent-2:var(--arko-teal);background:#0c0c0a!important;}
body.page-slug-architecture{--page-accent:var(--arko-teal);--page-accent-2:var(--arko-steel);background:#071012!important;}
body.page-slug-contact{--page-accent:var(--arko-plum);--page-accent-2:var(--arko-coral);background:#0c090e!important;}
.arko-inner-page .inner-kicker,.arko-inner-page .section-label,.arko-inner-page .director-page-badge{color:var(--page-accent,var(--arko-steel))!important;}
.arko-inner-page .inner-title .accent,.arko-inner-page .section-display .accent{color:var(--page-accent-2,var(--arko-rust))!important;}
.arko-inner-page .arko-button,.arko-inner-page .director-primary-cta{border-color:var(--page-accent,var(--arko-steel))!important;}
.arko-inner-page .current-page{color:var(--page-accent,var(--arko-steel))!important;}
.arko-inner-page .footer-credit strong{color:var(--page-accent,var(--arko-steel))!important;}
body.page-slug-films .ff-project:nth-child(5n+1){border-color:rgba(79,150,148,.22)!important;}
body.page-slug-films .ff-project:nth-child(5n+2){border-color:rgba(182,99,69,.22)!important;}
body.page-slug-films .ff-project:nth-child(5n+3){border-color:rgba(110,143,174,.22)!important;}
body.page-slug-films .ff-project:nth-child(5n+4){border-color:rgba(125,146,117,.22)!important;}
body.page-slug-films .ff-project:nth-child(5n){border-color:rgba(133,102,125,.22)!important;}

/* Footer credit stays clear but no longer defaults to gold. */
.footer-credit strong{color:var(--arko-steel)!important;}

/* ---------- Stronger front assembly, still transform/opacity only ---------- */
body:not(.arko-inner-page) [data-ff-motion],body:not(.arko-inner-page) .arko-panel-assemble{
  transition-duration:.58s,1.05s,.95s!important;
}
body:not(.arko-inner-page) .ff-home-image.is-in:nth-child(odd),
body:not(.arko-inner-page) .arko-panel-assemble.is-assembled:nth-child(odd){filter:none;}
body:not(.arko-inner-page) .ff-home-image::before,
body:not(.arko-inner-page) .film-card::after,
body:not(.arko-inner-page) .director-language-card::after{
  content:"";
  position:absolute;
  pointer-events:none;
  width:36%;height:1px;
  top:0;left:0;
  background:var(--panel-accent,var(--arko-teal));
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .9s var(--arko-ease-v34) .22s;
  opacity:.65;
}
body:not(.arko-inner-page) .ff-home-image.is-in::before,
body:not(.arko-inner-page) .film-card.is-assembled::after,
body:not(.arko-inner-page) .director-language-card.is-assembled::after{transform:scaleX(1);}

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .hero-title-signature .hero-name-overline>span{font-size:clamp(1.55rem,5vw,3.3rem)!important;}
  .hero-title-signature .hero-name-main>span.hero-name-arko{font-size:clamp(4.2rem,13vw,7rem)!important;}
  .kinetic-orbit-a{right:-10vw;}
  .kinetic-tick-a{right:3vw;}
}
@media (max-width:680px){
  .hero-title.hero-title-signature{margin:.65rem 0 1rem!important;}
  .hero-title-signature .hero-name-overline{
    display:grid!important;
    gap:.08rem!important;
    margin-bottom:.4rem!important;
  }
  .hero-title-signature .hero-name-overline>span{
    font-size:clamp(1.55rem,8.7vw,2.8rem)!important;
    line-height:.88!important;
    letter-spacing:-.045em!important;
  }
  .hero-title-signature .hero-name-asif{padding-left:clamp(1.2rem,7vw,2.6rem);}
  .hero-title-signature .hero-name-main{gap:.42rem!important;}
  .hero-title-signature .hero-name-main>span.hero-name-arko{
    font-size:clamp(4.05rem,22vw,6.5rem)!important;
    line-height:.75!important;
  }
  .hero-title-signature .hero-name-main small{font-size:.5rem!important;letter-spacing:.13em!important;white-space:normal!important;max-width:160px;line-height:1.45;}
  .hero-title-signature .arko-piece{filter:blur(4px)!important;}
  .hero-kinetic{opacity:.65!important;}
  .kinetic-orbit-a{width:210px;right:-90px;top:13%;opacity:.55;}
  .kinetic-orbit-b{width:130px;left:-55px;bottom:19%;opacity:.45;}
  .kinetic-beam-a{width:55vw;top:25%;}
  .kinetic-beam-b{width:50vw;top:52%;}
  .kinetic-beam-c{display:none;}
  .kinetic-tick-a{right:1rem;top:18%;font-size:.44rem;}
  .kinetic-tick-b{left:1rem;top:56%;font-size:.44rem;}
  .kinetic-tick-c{display:none;}
  .kinetic-corner{width:42px;height:42px;}
  .kinetic-corner-a{right:1rem;top:12%;}
  .kinetic-corner-b{left:1rem;bottom:12%;}
  body:not(.arko-inner-page) section:not(.hero)::after{animation-duration:18s;}
}
@media (max-width:390px){
  .hero-title-signature .hero-name-overline>span{font-size:clamp(1.42rem,8.5vw,2.2rem)!important;}
  .hero-title-signature .hero-name-main>span.hero-name-arko{font-size:clamp(3.8rem,21vw,5.3rem)!important;}
  .hero-title-signature .hero-name-main small{max-width:130px;font-size:.47rem!important;}
}
@media (hover:none),(pointer:coarse){
  .hero-kinetic{--kx:0px;--ky:0px;}
}
@media (prefers-reduced-motion:reduce){
  .hero-title-signature .arko-piece{opacity:1!important;transform:none!important;filter:none!important;transition:none!important;}
  .hero-kinetic{opacity:.38!important;}
  .hero-kinetic *,body:not(.arko-inner-page) section:not(.hero)::after{animation:none!important;}
  .kinetic-beam{transform:none!important;opacity:.18!important;}
}


/* ===== professional-grid-v37.css ===== */
/* ============================================================
   ARKO PORTFOLIO — PROFESSIONAL GRID v3.7
   Production pass: disciplined editorial grid, consistent type,
   compact vertical rhythm, no scattered margin copy or dead acreage.
   ============================================================ */

:root{
  --pro-shell:1280px;
  --pro-gutter:clamp(1.4rem,4vw,4.5rem);
  --pro-section-y:clamp(4.25rem,6.2vw,6.75rem);
  --pro-section-y-sm:clamp(3.4rem,4.8vw,5rem);
  --pro-gap:clamp(2rem,4vw,4.5rem);
  --pro-line:rgba(239,232,220,.10);
  --pro-line-strong:rgba(239,232,220,.16);
  --pro-cream:#efe8dc;
  --pro-muted:rgba(239,232,220,.68);
  --pro-teal:#68aaa7;
  --pro-steel:#7999b8;
  --pro-rust:#c97756;
  --pro-moss:#8fa483;
  --pro-coral:#d58b75;
  --pro-plum:#a47b98;
  --pro-accent:var(--pro-teal);
  --pro-accent-2:var(--pro-rust);
  --pro-ease:cubic-bezier(.16,1,.3,1);
}

body.page-slug-films{--pro-accent:var(--pro-teal);--pro-accent-2:var(--pro-rust)}
body.page-slug-about{--pro-accent:var(--pro-steel);--pro-accent-2:var(--pro-coral)}
body.page-slug-architecture{--pro-accent:var(--pro-moss);--pro-accent-2:var(--pro-steel)}
body.page-slug-contact{--pro-accent:var(--pro-coral);--pro-accent-2:var(--pro-plum)}
body:not(.arko-inner-page){--pro-accent:var(--pro-teal);--pro-accent-2:var(--pro-rust)}

/* Legacy experimental scene/margin elements are intentionally retired. */
.v35-scene-atmosphere,.v35-motion-divider,.v36-human-card,.v36-human-mini,.v36-margin-human{display:none!important}

html,body{max-width:100%;overflow-x:hidden;overflow-x:clip}
.arko-inner-page main{overflow:hidden}

/* ============================================================
   GLOBAL CONTENT WIDTH + VERTICAL RHYTHM
   ============================================================ */
.arko-inner-page .section-shell,
.arko-inner-page .inner-hero-content,
body:not(.arko-inner-page) .director-focus-shell,
body:not(.arko-inner-page) .ff-home-shell,
body:not(.arko-inner-page) .about-grid,
body:not(.arko-inner-page) .filmography-header,
body:not(.arko-inner-page) .films-container,
body:not(.arko-inner-page) .credentials > .section-label,
body:not(.arko-inner-page) .credentials > .about-heading,
body:not(.arko-inner-page) .credentials > .line-accent,
body:not(.arko-inner-page) .credentials-grid,
body:not(.arko-inner-page) .page-portal > .section-label,
body:not(.arko-inner-page) .page-portal > .about-heading,
body:not(.arko-inner-page) .page-portal > .line-accent,
body:not(.arko-inner-page) .page-portal > .about-text,
body:not(.arko-inner-page) .page-portal-grid,
body:not(.arko-inner-page) .contact-content,
body:not(.arko-inner-page) .architecture > .section-label,
body:not(.arko-inner-page) .architecture > .about-heading,
body:not(.arko-inner-page) .architecture > .line-accent,
body:not(.arko-inner-page) .architecture > .about-text,
body:not(.arko-inner-page) .architecture > .arch-grid,
body:not(.arko-inner-page) .architecture > .secondary-discipline-note{
  width:min(var(--pro-shell),calc(100% - (var(--pro-gutter) * 2)))!important;
  max-width:var(--pro-shell)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.arko-inner-page .page-section,
.arko-inner-page .ff-dossier-section,
.arko-inner-page .director-identity-band{
  padding:var(--pro-section-y) 0!important;
  min-height:0!important;
}
.arko-inner-page .quote-panel{padding:var(--pro-section-y-sm) var(--pro-gutter)!important;min-height:0!important}
.arko-inner-page .page-section + .page-section,
.arko-inner-page .ff-dossier-section + .page-section,
.arko-inner-page .page-section + .ff-dossier-section{
  border-top:1px solid rgba(239,232,220,.045);
}

/* Home sections: compact, content-led, never viewport-height traps. */
body:not(.arko-inner-page) .director-focus,
body:not(.arko-inner-page) .ff-home-dossier,
body:not(.arko-inner-page) .about,
body:not(.arko-inner-page) .filmography,
body:not(.arko-inner-page) .architecture,
body:not(.arko-inner-page) .credentials,
body:not(.arko-inner-page) .page-portal,
body:not(.arko-inner-page) .contact{
  min-height:0!important;
  padding-top:var(--pro-section-y)!important;
  padding-bottom:var(--pro-section-y)!important;
}
body:not(.arko-inner-page) .about,
body:not(.arko-inner-page) .architecture,
body:not(.arko-inner-page) .contact{padding-left:0!important;padding-right:0!important;background-attachment:scroll!important}

/* ============================================================
   TYPOGRAPHY — ONE SYSTEM ACROSS ALL FIVE PAGES
   ============================================================ */
.arko-inner-page .inner-title,
.arko-inner-page .section-display,
.arko-inner-page .cta-band h2,
.arko-inner-page .quote-panel blockquote,
body:not(.arko-inner-page) .director-focus-head h2,
body:not(.arko-inner-page) .ff-home-head h2,
body:not(.arko-inner-page) .about-heading,
body:not(.arko-inner-page) .filmography-title,
body:not(.arko-inner-page) .contact-heading{
  font-family:var(--font-display)!important;
  font-weight:700!important;
  text-transform:none!important;
  letter-spacing:-.045em!important;
}
.arko-inner-page .inner-title{font-size:clamp(3.35rem,6vw,6.4rem)!important;line-height:.92!important;max-width:1000px!important}
.arko-inner-page .section-display{font-size:clamp(2.55rem,4.5vw,4.9rem)!important;line-height:.98!important;max-width:900px}
.arko-inner-page .section-display .accent,
.arko-inner-page .inner-title em,
body:not(.arko-inner-page) .about-heading .highlight,
body:not(.arko-inner-page) .contact-heading .accent,
body:not(.arko-inner-page) .director-focus-head h2 em,
body:not(.arko-inner-page) .ff-home-head h2 em{
  font-family:var(--font-accent)!important;
  font-style:italic!important;
  font-weight:400!important;
  color:var(--pro-accent)!important;
}
.arko-inner-page .section-copy,
.arko-inner-page .inner-lede,
body:not(.arko-inner-page) .about-text,
body:not(.arko-inner-page) .director-focus-head p,
body:not(.arko-inner-page) .ff-home-copy{
  font-family:var(--font-body)!important;
  font-size:clamp(.95rem,1vw,1.05rem)!important;
  line-height:1.75!important;
  color:var(--pro-muted)!important;
  max-width:650px;
}
.arko-inner-page .inner-kicker,
.arko-inner-page .section-label,
body:not(.arko-inner-page) .section-label,
body:not(.arko-inner-page) .director-focus-kicker,
body:not(.arko-inner-page) .ff-source-kicker{
  color:var(--pro-accent)!important;
  letter-spacing:.18em!important;
}

/* ============================================================
   INNER HERO — STRONG INTRO, NOT A GIANT EMPTY VIEWPORT
   ============================================================ */
.arko-inner-page .inner-hero{
  min-height:clamp(510px,62vh,650px)!important;
  padding:clamp(8rem,10vw,10rem) 0 clamp(3.8rem,5vw,5rem)!important;
  align-items:flex-end!important;
}
.arko-inner-page .inner-hero-content{padding:0!important}
.arko-inner-page .inner-lede{max-width:670px!important;margin-top:1.45rem!important}
.arko-inner-page .inner-hero-media::after{
  background:linear-gradient(100deg,rgba(7,9,11,.96) 4%,rgba(7,9,11,.78) 52%,rgba(7,9,11,.32) 100%),linear-gradient(to top,#080a0d 0%,transparent 46%)!important;
}

/* ============================================================
   EDITORIAL GRIDS — CONTENT ALWAYS USES THE AVAILABLE WIDTH
   ============================================================ */
.arko-inner-page .section-topline,
.arko-inner-page .director-feature-head,
.arko-inner-page .ff-dossier-intro{
  display:grid!important;
  grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr)!important;
  gap:var(--pro-gap)!important;
  align-items:start!important;
  margin-bottom:clamp(2.4rem,3.8vw,4rem)!important;
}
.arko-inner-page .section-topline.is-pro-single,
.arko-inner-page .director-feature-head.is-pro-single,
.arko-inner-page .ff-dossier-intro.is-pro-single{
  grid-template-columns:minmax(0,1fr)!important;
}
.arko-inner-page .section-topline.is-pro-single > *,
.arko-inner-page .director-feature-head.is-pro-single > *,
.arko-inner-page .ff-dossier-intro.is-pro-single > *{max-width:920px!important}
.arko-inner-page .section-topline > .section-copy,
.arko-inner-page .director-feature-head > .section-copy,
.arko-inner-page .ff-dossier-intro > div:nth-child(2){
  padding-top:.45rem;
  border-top:1px solid color-mix(in srgb,var(--pro-accent) 42%,transparent);
}

.arko-inner-page .split-story{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:clamp(2.5rem,5vw,5.5rem)!important;
  align-items:center!important;
}
.arko-inner-page .story-image{
  min-height:0!important;
  height:auto!important;
  aspect-ratio:4/3!important;
  border:1px solid var(--pro-line)!important;
  background:#0b0d10;
}
.arko-inner-page .story-image img{position:absolute!important;width:100%!important;height:100%!important;object-fit:cover!important}
.arko-inner-page .story-stack{gap:1rem!important}
.arko-inner-page .story-block{padding:1.2rem 0!important;border-bottom:1px solid var(--pro-line)!important}

/* About: pair the primary-director statement with a real visual instead of a floating note. */
.page-slug-about .director-identity-band .section-shell{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.72fr);
  gap:var(--pro-gap);
  align-items:stretch;
}
.page-slug-about .director-identity-band .section-shell::after{
  content:"";
  min-height:320px;
  background:
    linear-gradient(180deg,transparent 52%,rgba(7,9,11,.72)),
    url('../../images/arko-film.jpg') center 36%/cover no-repeat;
  border:1px solid var(--pro-line-strong);
  box-shadow:inset 0 0 0 10px rgba(7,9,11,.26);
}
.page-slug-about .director-identity-copy{max-width:none!important;align-self:center}

/* ============================================================
   CARDS / TABLES / GALLERIES — DENSE, READABLE, CONSISTENT
   ============================================================ */
.arko-inner-page .feature-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:1rem!important;
  background:none!important;
  border:0!important;
}
.arko-inner-page .feature-card{
  min-height:220px;
  padding:1.5rem!important;
  border:1px solid var(--pro-line)!important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--pro-accent) 5%,#0a0c0f),#090b0e 62%)!important;
}
.arko-inner-page .feature-card h3{font-size:clamp(1.2rem,1.6vw,1.55rem)!important;margin-top:1.25rem!important}
.arko-inner-page .feature-card p{font-size:.82rem!important;line-height:1.65!important;color:var(--pro-muted)!important}

.arko-inner-page .process-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:1rem!important;
  background:none!important;
}
.arko-inner-page .process-step{
  min-height:220px;
  padding:1.45rem!important;
  border:1px solid var(--pro-line)!important;
  background:#0a0c0f!important;
}
.arko-inner-page .process-step h3{font-size:1.25rem!important;margin:.85rem 0 .65rem!important}
.arko-inner-page .process-step p{font-size:.82rem!important;line-height:1.65!important;color:var(--pro-muted)!important}

.arko-inner-page .contact-cards{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:1rem!important;
  background:none!important;
}
.arko-inner-page .contact-card{min-height:190px;padding:1.5rem!important;border:1px solid var(--pro-line)!important;background:#0a0c0f!important}

.arko-inner-page .gallery-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:1rem!important;
}
.arko-inner-page .gallery-shot,
.arko-inner-page .gallery-shot:nth-child(n){
  grid-column:auto!important;
  min-height:0!important;
  aspect-ratio:16/10!important;
  border:1px solid var(--pro-line)!important;
}
.arko-inner-page .gallery-shot img{width:100%!important;height:100%!important;object-fit:cover!important}

.arko-inner-page .director-page-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important;margin-bottom:3rem!important}
.arko-inner-page .director-page-stats > div{padding:1.2rem!important;border:1px solid var(--pro-line)!important}
.arko-inner-page .director-page-stats > div + div{border-left:1px solid var(--pro-line)!important}

.arko-inner-page .ff-projects{gap:.85rem!important}
.arko-inner-page .ff-project{border-color:var(--pro-line)!important}
.arko-inner-page .ff-project summary{padding:1rem 1.2rem!important;min-height:88px!important}
.arko-inner-page .ff-archive-grid{grid-auto-rows:72px!important;gap:.6rem!important}

.arko-inner-page .cta-band{
  padding:clamp(1.8rem,3vw,3rem)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:2rem!important;
  align-items:center!important;
  border:1px solid var(--pro-line-strong)!important;
  background:linear-gradient(120deg,color-mix(in srgb,var(--pro-accent) 7%,#090b0e),#090b0e 65%)!important;
}
.arko-inner-page .cta-band h2{font-size:clamp(1.8rem,3.2vw,3.25rem)!important;line-height:1!important;max-width:780px}

/* ============================================================
   HOME PAGE — SAME PROFESSIONAL GRID
   ============================================================ */
body:not(.arko-inner-page) .director-focus-head,
body:not(.arko-inner-page) .ff-home-head,
body:not(.arko-inner-page) .contact-content{
  display:grid!important;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)!important;
  gap:var(--pro-gap)!important;
  align-items:start!important;
}
body:not(.arko-inner-page) .director-focus-head{margin-bottom:3rem!important}
body:not(.arko-inner-page) .director-focus-head h2,
body:not(.arko-inner-page) .ff-home-head h2{font-size:clamp(2.8rem,4.8vw,5.1rem)!important;line-height:.96!important}
body:not(.arko-inner-page) .director-reel-layout{gap:1rem!important}
body:not(.arko-inner-page) .director-language{gap:1rem!important}
body:not(.arko-inner-page) .director-language-card{min-height:200px!important;padding:1.4rem!important;border:1px solid var(--pro-line)!important}
body:not(.arko-inner-page) .director-slate{margin-top:1.2rem!important}
body:not(.arko-inner-page) .director-slate span{padding:1rem!important}

body:not(.arko-inner-page) .ff-home-facts{gap:1rem!important;margin-top:2.2rem!important}
body:not(.arko-inner-page) .ff-home-fact{border:1px solid var(--pro-line)!important;padding:1.1rem!important}
body:not(.arko-inner-page) .ff-home-images{gap:.7rem!important;margin-top:1rem!important}

body:not(.arko-inner-page) .about-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;gap:clamp(2.5rem,5vw,5.5rem)!important}
body:not(.arko-inner-page) .about-visual{height:auto!important;min-height:0!important;aspect-ratio:4/5!important;max-height:660px!important}
body:not(.arko-inner-page) .about-stats{margin-top:2rem!important}

body:not(.arko-inner-page) .filmography-header{padding:0!important;margin-bottom:2.6rem!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:2rem!important;align-items:end!important}
body:not(.arko-inner-page) .films-container{padding:0!important}
body:not(.arko-inner-page) .film-card{padding:1.5rem 0!important;grid-template-columns:88px minmax(0,1fr) minmax(190px,.34fr)!important;gap:1.5rem!important}
body:not(.arko-inner-page) .film-card:hover{padding-left:1rem!important}

body:not(.arko-inner-page) .architecture{background-position:center!important}
body:not(.arko-inner-page) .architecture > .about-heading{font-size:clamp(2.8rem,4.8vw,5rem)!important;line-height:.98!important;max-width:900px!important}
body:not(.arko-inner-page) .architecture > .about-text{max-width:700px!important}
body:not(.arko-inner-page) .arch-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:none!important;
  grid-auto-rows:minmax(240px,28vw)!important;
  max-height:none!important;
  gap:1rem!important;
  margin-top:3rem!important;
}
body:not(.arko-inner-page) .arch-item,
body:not(.arko-inner-page) .arch-item:nth-child(n){grid-column:auto!important;grid-row:auto!important;min-height:0!important}
body:not(.arko-inner-page) .arch-item:first-child{grid-column:span 2!important;grid-row:span 2!important}
body:not(.arko-inner-page) .arch-item-bg{min-height:100%!important}

body:not(.arko-inner-page) .credentials-grid{gap:1rem!important;margin-top:2.5rem!important}
body:not(.arko-inner-page) .credential-block{padding:1.5rem!important}
body:not(.arko-inner-page) .page-portal-grid{gap:1rem!important;margin-top:2.5rem!important}
body:not(.arko-inner-page) .page-portal-card{min-height:220px!important;padding:1.5rem!important}
body:not(.arko-inner-page) .contact-content{align-items:center!important}
body:not(.arko-inner-page) .contact-info{padding-top:0!important}
body:not(.arko-inner-page) .contact-bg-text{font-size:clamp(6rem,18vw,16rem)!important;opacity:.025!important}

/* ============================================================
   ALINDIGITAL — VISIBLE SIGNATURE, PROFESSIONAL MOTION
   ============================================================ */
.alin-digital-beacon{
  position:fixed;
  right:clamp(.75rem,1.35vw,1.2rem);
  bottom:clamp(.75rem,1.35vw,1.2rem);
  z-index:9997;
  width:auto;
  min-width:188px;
  padding:.66rem .8rem .62rem;
  border:1px solid rgba(104,170,167,.34);
  background:rgba(6,9,11,.86);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  box-shadow:0 12px 34px rgba(0,0,0,.32),inset 0 0 0 1px rgba(255,255,255,.025);
  overflow:hidden;
  pointer-events:none;
}
.alin-digital-beacon::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(105deg,transparent 28%,rgba(104,170,167,.18) 48%,rgba(201,119,86,.14) 54%,transparent 72%);
  transform:translateX(-120%);
  animation:proAlinSweep 3.2s ease-in-out infinite;
}
.alin-digital-beacon .ad-label{position:relative;display:block;margin-bottom:.28rem;font:600 .42rem/1 var(--font-body);letter-spacing:.18em;text-transform:uppercase;color:rgba(239,232,220,.5)}
.alin-digital-beacon strong{position:relative;display:flex;align-items:center;justify-content:space-between;gap:.8rem;font:700 .76rem/1 var(--font-display);letter-spacing:.075em;text-transform:uppercase;color:#f3eee6;animation:proAlinPulse 2.7s ease-in-out infinite}
.footer-credit strong{color:var(--pro-teal)!important;animation:proAlinPulse 2.7s ease-in-out infinite!important}
@keyframes proAlinSweep{0%,52%{transform:translateX(-120%)}76%,100%{transform:translateX(120%)}}
@keyframes proAlinPulse{0%,70%,100%{color:#f3eee6;text-shadow:none}78%{color:#91d7d0;text-shadow:0 0 14px rgba(104,170,167,.38)}86%{color:#e7aa92;text-shadow:0 0 10px rgba(201,119,86,.24)}}

/* Human touch: small imperfect underline stays attached to content, never floating in margins. */
.arko-inner-page .section-display::after,
body:not(.arko-inner-page) .about-heading::after{
  content:"";
  display:block;
  width:clamp(70px,8vw,112px);
  height:1px;
  margin-top:1.15rem;
  background:linear-gradient(90deg,var(--pro-accent),transparent);
  transform:rotate(-1.2deg);
  opacity:.72;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1100px){
  :root{--pro-gutter:clamp(1.25rem,3vw,2.25rem)}
  .arko-inner-page .section-topline,
  .arko-inner-page .director-feature-head,
  .arko-inner-page .ff-dossier-intro,
  .arko-inner-page .split-story,
  .page-slug-about .director-identity-band .section-shell,
  body:not(.arko-inner-page) .director-focus-head,
  body:not(.arko-inner-page) .ff-home-head,
  body:not(.arko-inner-page) .contact-content{
    grid-template-columns:minmax(0,1fr)!important;
    gap:2rem!important;
  }
  .page-slug-about .director-identity-band .section-shell::after{min-height:0;aspect-ratio:16/8}
  .arko-inner-page .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .arko-inner-page .process-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .arko-inner-page .contact-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body:not(.arko-inner-page) .arch-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:minmax(230px,32vw)!important}
  body:not(.arko-inner-page) .arch-item:first-child{grid-column:span 2!important;grid-row:span 1!important}
  body:not(.arko-inner-page) .film-card{grid-template-columns:72px minmax(0,1fr)!important}
  body:not(.arko-inner-page) .film-roles{grid-column:2!important;text-align:left!important}
}

@media (max-width:760px){
  :root{--pro-gutter:1.1rem;--pro-section-y:3.6rem;--pro-section-y-sm:3rem}
  .arko-inner-page .inner-hero{min-height:460px!important;padding:7rem 0 3.2rem!important}
  .arko-inner-page .inner-title{font-size:clamp(2.7rem,12vw,4.3rem)!important;line-height:.96!important}
  .arko-inner-page .section-display{font-size:clamp(2.2rem,10vw,3.55rem)!important;line-height:1!important}
  .arko-inner-page .section-topline,
  .arko-inner-page .director-feature-head,
  .arko-inner-page .ff-dossier-intro{margin-bottom:2rem!important}
  .arko-inner-page .feature-grid,
  .arko-inner-page .process-grid,
  .arko-inner-page .contact-cards,
  .arko-inner-page .gallery-grid,
  .arko-inner-page .director-page-stats{grid-template-columns:minmax(0,1fr)!important}
  .arko-inner-page .feature-card,.arko-inner-page .process-step,.arko-inner-page .contact-card{min-height:0!important}
  .arko-inner-page .story-image{aspect-ratio:4/3!important}
  .arko-inner-page .cta-band{grid-template-columns:minmax(0,1fr)!important;gap:1.25rem!important}
  .arko-inner-page .arko-button{width:auto!important;justify-self:start!important}
  body:not(.arko-inner-page) .about-grid{grid-template-columns:minmax(0,1fr)!important;gap:2rem!important}
  body:not(.arko-inner-page) .about-visual{max-height:none!important;aspect-ratio:4/5!important}
  body:not(.arko-inner-page) .filmography-header{grid-template-columns:minmax(0,1fr)!important;align-items:start!important}
  body:not(.arko-inner-page) .filmography-header > div:last-child{justify-content:flex-start!important}
  body:not(.arko-inner-page) .film-card{grid-template-columns:56px minmax(0,1fr)!important;padding:1.2rem 0!important;gap:1rem!important}
  body:not(.arko-inner-page) .arch-grid{grid-template-columns:minmax(0,1fr)!important;grid-auto-rows:260px!important}
  body:not(.arko-inner-page) .arch-item:first-child{grid-column:auto!important;grid-row:auto!important}
  body:not(.arko-inner-page) .credentials-grid{grid-template-columns:minmax(0,1fr)!important}
  body:not(.arko-inner-page) .page-portal-grid{grid-template-columns:minmax(0,1fr)!important}
  .alin-digital-beacon{right:.6rem;bottom:.6rem;min-width:160px;padding:.58rem .66rem .54rem}
  .alin-digital-beacon strong{font-size:.66rem}
}

@media (max-width:420px){
  .arko-inner-page .inner-hero{min-height:430px!important;padding-top:6.6rem!important}
  .arko-inner-page .inner-title{font-size:clamp(2.45rem,12.5vw,3.4rem)!important}
  .arko-inner-page .section-display{font-size:clamp(2.05rem,10.5vw,3rem)!important}
  .arko-inner-page .section-copy,.arko-inner-page .inner-lede{font-size:.93rem!important;line-height:1.7!important}
  body:not(.arko-inner-page) .film-card{grid-template-columns:minmax(0,1fr)!important}
  body:not(.arko-inner-page) .film-year,body:not(.arko-inner-page) .film-roles{grid-column:1!important}
  .alin-digital-beacon{min-width:148px}
}

@media (prefers-reduced-motion:reduce){
  .alin-digital-beacon::before,.alin-digital-beacon strong,.footer-credit strong{animation:none!important}
}

/* Home direct-child alignment refinements. */
body:not(.arko-inner-page) .credentials > .line-accent,
body:not(.arko-inner-page) .page-portal > .line-accent,
body:not(.arko-inner-page) .architecture > .line-accent{
  width:82px!important;
  max-width:none!important;
  margin-left:max(var(--pro-gutter),calc((100% - var(--pro-shell))/2))!important;
  margin-right:auto!important;
}
body:not(.arko-inner-page) .page-portal > .about-text{max-width:720px!important}
body:not(.arko-inner-page) .arch-grid{
  grid-auto-rows:clamp(220px,22vw,320px)!important;
}
body:not(.arko-inner-page) .arch-item:first-child{grid-column:auto!important;grid-row:auto!important}
@media (max-width:1100px){
  body:not(.arko-inner-page) .arch-item:first-child{grid-column:auto!important;grid-row:auto!important}
}


/* ===== professional-density-v38.css ===== */
/* ============================================================
   ARKO PORTFOLIO — PROFESSIONAL DENSITY v3.8
   Fixes dead-space caused by invisible clip media, tightens section
   rhythm, and keeps visual/content balance without scattered copy.
   ============================================================ */

:root{
  --pro-section-y:clamp(3.25rem,4.6vw,5rem);
  --pro-section-y-sm:clamp(2.7rem,3.8vw,4rem);
  --pro-gap:clamp(1.6rem,3vw,3.5rem);
}

/* Critical fail-safe: media must never reserve space while invisible.
   Text can animate; portfolio imagery must always render. */
.arko-inner-page [data-reveal="clip"]{
  clip-path:none!important;
  opacity:1!important;
  transform:none!important;
  transition:filter .45s ease,transform .65s cubic-bezier(.16,1,.3,1)!important;
}
.arko-inner-page .gallery-shot.arko-panel-assemble{
  opacity:1!important;
  transform:none!important;
}
.arko-inner-page .gallery-shot > .arko-panel-wipe{display:none!important}

/* Compact inner-page rhythm. */
.arko-inner-page .page-section,
.arko-inner-page .ff-dossier-section,
.arko-inner-page .director-identity-band{
  padding-top:var(--pro-section-y)!important;
  padding-bottom:var(--pro-section-y)!important;
}
.arko-inner-page .section-topline,
.arko-inner-page .director-feature-head,
.arko-inner-page .ff-dossier-intro{
  margin-bottom:clamp(1.5rem,2.6vw,2.6rem)!important;
}
.arko-inner-page .inner-hero{
  min-height:clamp(430px,52vh,560px)!important;
  padding:clamp(7rem,8.5vw,8.8rem) 0 clamp(2.8rem,4vw,4rem)!important;
}
.arko-inner-page .marquee{min-height:0!important}

/* Use the full shell; don't create a narrow island in a wide section. */
.arko-inner-page .section-topline.is-pro-single > *,
.arko-inner-page .director-feature-head.is-pro-single > *,
.arko-inner-page .ff-dossier-intro.is-pro-single > *{max-width:1050px!important}

/* Visual archive: a real visual strip, not a tall invisible placeholder. */
.page-slug-films .visual-archive-section .gallery-grid,
.page-slug-architecture .gallery-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(.65rem,1vw,1rem)!important;
}
.page-slug-films .visual-archive-section .gallery-shot,
.page-slug-films .visual-archive-section .gallery-shot:nth-child(n),
.page-slug-architecture .gallery-shot,
.page-slug-architecture .gallery-shot:nth-child(n){
  grid-column:auto!important;
  aspect-ratio:4/3!important;
  min-height:0!important;
  background:#0b1113!important;
}
.arko-inner-page .gallery-shot img{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.arko-inner-page .gallery-shot:hover img{transform:scale(1.035)!important}

/* Short split sections stay balanced without forcing excessive image height. */
.page-slug-films .recognition-section .story-image{aspect-ratio:16/9!important;max-height:430px}
.page-slug-contact .split-story .story-image{aspect-ratio:4/3!important;max-height:560px}
.page-slug-architecture .split-story .story-image{aspect-ratio:4/3!important;max-height:560px}
.arko-inner-page .split-story{align-items:center!important}

/* Cards: content-led height instead of minimum-height acreage. */
.arko-inner-page .feature-card,
.arko-inner-page .process-step,
.arko-inner-page .contact-card{min-height:0!important}
.arko-inner-page .feature-card{padding:1.3rem!important}
.arko-inner-page .process-step{padding:1.25rem!important}
.arko-inner-page .contact-card{padding:1.3rem!important}
.arko-inner-page .process-grid,
.arko-inner-page .feature-grid,
.arko-inner-page .contact-cards{gap:.85rem!important}

/* CTA should read as a closing bar, not another oversized section. */
.arko-inner-page .film-cta-section,
.arko-inner-page .page-section:has(.cta-band){padding-top:clamp(2.5rem,3.6vw,3.8rem)!important;padding-bottom:clamp(2.5rem,3.6vw,3.8rem)!important}
.arko-inner-page .cta-band{padding:clamp(1.4rem,2.2vw,2.1rem)!important}

/* AlinDigital: explicit external credit, no "Human Made" suffix. */
.alin-digital-beacon{
  pointer-events:auto!important;
  cursor:pointer;
  text-decoration:none!important;
  color:inherit;
}
.alin-digital-beacon strong::after{content:none!important;display:none!important}
.alin-digital-beacon:hover,
.alin-digital-beacon:focus-visible{
  border-color:rgba(104,170,167,.72)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.38),0 0 24px rgba(104,170,167,.13)!important;
  outline:none;
}
.alindigital-link{
  color:var(--pro-teal)!important;
  text-decoration:none!important;
  font-weight:700!important;
  letter-spacing:.08em;
  text-transform:uppercase;
  animation:proAlinPulse 2.7s ease-in-out infinite;
}
.alindigital-link:hover,.alindigital-link:focus-visible{color:#f3eee6!important;text-decoration:underline!important;text-underline-offset:.25em}

/* Home footer copy uses the same link treatment. */
body:not(.arko-inner-page) .footer-credit .alindigital-link{font-size:.62rem}

@media (max-width:1100px){
  .page-slug-films .visual-archive-section .gallery-grid,
  .page-slug-architecture .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .arko-inner-page .inner-hero{min-height:420px!important}
}

@media (max-width:760px){
  :root{--pro-section-y:3rem;--pro-section-y-sm:2.6rem}
  .arko-inner-page .inner-hero{min-height:390px!important;padding:6.5rem 0 2.7rem!important}
  .arko-inner-page .section-topline,
  .arko-inner-page .director-feature-head,
  .arko-inner-page .ff-dossier-intro{margin-bottom:1.5rem!important}
  .page-slug-films .visual-archive-section .gallery-grid,
  .page-slug-architecture .gallery-grid{grid-template-columns:1fr!important}
  .page-slug-films .visual-archive-section .gallery-shot,
  .page-slug-architecture .gallery-shot{aspect-ratio:16/10!important}
  .page-slug-films .recognition-section .story-image{max-height:none;aspect-ratio:16/10!important}
  .alin-digital-beacon{max-width:calc(100vw - 1.2rem)}
}

@media (prefers-reduced-motion:reduce){
  .alindigital-link,.alin-digital-beacon strong{animation:none!important}
}

