.site-introduction { margin-top: 20px; margin-bottom: 0; max-width: 68ch; color: var(--muted-light); font-size: clamp(.9rem, 1.3vw, 1.05rem); line-height: 1.8; }
.client-needs { border-top: 1px solid var(--line); }
.client-needs h2 { max-width: 19ch; font-size: clamp(2.6rem, 5vw, 4.5rem); }
.needs-list { border-top: 1px solid var(--line); }
.need-item { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px 7%; padding-block: 26px; border-bottom: 1px solid var(--line); }
.need-item h3 { max-width: 29ch; font-size: clamp(1.1rem, 1.65vw, 1.45rem); line-height: 1.4; letter-spacing: -.025em; }
.need-item p { max-width: 58ch; color: var(--muted-light); font-size: .9rem; line-height: 1.8; }
.need-item .text-link { margin-top: 12px; line-height: 1.6; }
.client-needs .expertise-links { border-top: 0; padding-top: 0; }
@media (min-width: 921px) and (max-width: 1250px) {
  .header:not(.profile-header) { height: auto; min-height: 72px; grid-template-columns: auto minmax(0,1fr); gap: 12px; padding-top: 13px; }
  .header:not(.profile-header) nav { grid-column: 1 / -1; grid-row: 2; justify-content: space-between; gap: 10px; border-top: 1px solid var(--line); padding: 11px 0; }
}
@media (max-width: 920px) {
  .header:not(.profile-header) nav { flex-wrap: wrap; justify-content: flex-start; gap: 12px 20px; }
}
@media (max-width: 700px) {
  .need-item { grid-template-columns: 1fr; gap: 12px; padding-block: 23px; }
  .need-item h3 { max-width: 32ch; }
}
.expertise-links { margin-top: 42px; padding-top: 26px; border-top: 1px solid var(--line); }
.expertise-links h3 { font-size: 1.1rem; letter-spacing: -.03em; }
.expertise-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-top: 18px; }
.expertise-grid a { display: flex; align-items: center; justify-content: space-between; gap: 15px; border: 1px solid var(--line); border-radius: 3px; padding: 18px; font-size: .82rem; line-height: 1.5; }
.expertise-grid a:hover { border-color: var(--red); color: var(--ceramic); }
.expertise-grid a svg { flex-shrink: 0; color: var(--red); }
.editorial-main { max-width: 1280px; padding-block: clamp(42px,6vw,90px); }
.breadcrumbs { display: flex; gap: 8px 14px; flex-wrap: wrap; color: var(--muted); margin-bottom: 36px; font-size: .72rem; line-height: 1.8; }
.breadcrumbs a { text-decoration: underline; text-underline-offset: 4px; }
.editorial-main h1 { max-width: 22ch; font-size: clamp(2.3rem,5.5vw,5.3rem); line-height: 1.04; letter-spacing: -.06em; }
.editorial-lead { max-width: 70ch; margin-top: 28px; font-size: clamp(1rem,1.3vw,1.15rem); color: var(--muted-light); line-height: 1.85; }
.editorial-nav { display: flex; gap: 14px 26px; flex-wrap: wrap; margin-top: 28px; font-size: .78rem; }
.editorial-nav a { text-decoration: underline; text-underline-offset: 5px; }
.editorial-section { margin-top: 52px; max-width: 76ch; }
.editorial-main h2 { font-size: clamp(1.4rem,2.6vw,2rem); line-height: 1.2; letter-spacing: -.035em; }
.editorial-section p { margin-top: 16px; color: var(--muted-light); font-size: .95rem; line-height: 1.85; }
.editorial-main a:hover { color: var(--red); }
.editorial-main p a { text-decoration: underline; text-underline-offset: 4px; }
.editorial-work { margin-top: 60px; border-top: 1px solid var(--line); padding-top: 28px; }
.editorial-work .film-grid { margin-top: 24px; }
.editorial-faq { max-width: 80ch; margin-top: 52px; }
.editorial-faq h2 { margin-bottom: 12px; }
.editorial-faq details { border-bottom: 1px solid var(--line); padding-block: 18px; }
.editorial-faq summary { cursor: pointer; font-size: .95rem; font-weight: 600; line-height: 1.6; }
.editorial-faq p { margin-top: 14px; color: var(--muted-light); font-size: .9rem; line-height: 1.8; }
.editorial-contact { margin-top: 60px; padding-top: 28px; border-top: 1px solid var(--line); }
.editorial-contact p { max-width: 65ch; color: var(--muted-light); font-size: .95rem; line-height: 1.8; margin-top: 16px; }
.editorial-contact .outline { margin-top: 22px; }
.editorial-services { margin-top: 44px; }
.watch-player { margin-top: 34px; background: #090808; border: 1px solid var(--line); border-radius: 4px; overflow: hidden; }
.watch-player video { display: block; width: 100%; height: auto; max-height: 78svh; object-fit: contain; margin-inline: auto; }
.watch-player.portrait video { width: auto; max-width: 100%; }
.watch-meta { display: flex; flex-wrap: wrap; gap: 12px 30px; padding-block: 16px; color: var(--muted-light); border-bottom: 1px solid var(--line); font-size: .72rem; }
.watch-replay { margin-top: 24px; }
.watch-extended { margin-top: 42px; scroll-margin-top: 25px; }
.watch-extended h2 { margin-bottom: 20px; }
.watch-credit { margin-top: 18px; max-width: 75ch; color: var(--muted); font-size: .76rem; line-height: 1.75; }
.site-map-list { padding-left: 20px; margin-top: 20px; }
.site-map-list li { margin-block: 12px; line-height: 1.7; font-size: .95rem; }
.site-map-list a { text-decoration: underline; text-underline-offset: 4px; }
.kairos-follow { margin-top: 32px; padding: 24px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.kairos-follow h3 { font-size: clamp(1.1rem, 1.8vw, 1.4rem); line-height: 1.3; letter-spacing: -.025em; }
.kairos-follow p { max-width: 70ch; margin-top: 12px; color: var(--muted-light); font-size: .87rem; line-height: 1.8; }
.kairos-social-links { display: flex; flex-wrap: wrap; gap: 12px 26px; }
.kairos-follow .kairos-social-links { margin-top: 16px; }
.kairos-social-links a { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; font-size: .78rem; text-decoration: underline; text-underline-offset: 5px; }
.kairos-social-links a .button-icon { width: 16px; height: 16px; color: var(--red); flex-shrink: 0; }
.kairos-social-links a:hover, .kairos-social-links a:focus-visible { color: var(--red); }
.kairos-social-links a:focus-visible { outline: 1px solid var(--red); outline-offset: 5px; }
.footer-network { display:grid; grid-template-columns:minmax(120px,.55fr) minmax(0,1.6fr); align-items:start; gap:20px 48px; padding-block:32px; margin-top:0; border-block:1px solid var(--line); }
.footer-network p { margin: 0; font-size: .72rem; color: var(--muted-light); }
@media(max-width:900px) { .expertise-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:550px) { .expertise-grid { grid-template-columns: 1fr; } .editorial-main .film-grid { grid-template-columns: 1fr; } .editorial-main h1 { font-size: clamp(2rem,9.5vw,3rem); } .editorial-nav { gap: 14px 20px; } }

/* The original films and studio stay distinct after the editorial update. */
.world-kairos { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:28px 7%; border-top:1px solid #73514a; margin-top:36px; padding-top:28px; }
.world-kairos h3 { font-size:clamp(1.35rem,2.1vw,2rem); font-weight:800; letter-spacing:-.055em; }
.world-kairos h4 { margin-top:20px; font-size:clamp(2.8rem,5vw,4.8rem); font-weight:800; line-height:1.05; letter-spacing:-.055em; }
.world-kairos-copy p { margin-top:18px; }
.world-kairos-visual { display:block; border:1px solid var(--line); background:var(--graphite); overflow:hidden; }
.world-kairos-visual img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; transition:transform .3s ease; }
.world-kairos-visual:hover img { transform:scale(1.025); }
.world-kairos-visual:focus-visible { outline:2px solid var(--red); outline-offset:5px; }
.world-kairos-caption { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; font-size:.66rem; color:var(--muted-light); }
.world-kairos-caption svg { color:var(--red); flex-shrink:0; }
.world-kairos p { color:var(--muted-light); font-size:.9rem; line-height:1.8; max-width:65ch; }
.world-kairos .text-link { margin-top:16px; }
.studio-layout { align-items:start; }
.studio-layout > .studio-scope { padding-top:50px; }
.worlds .art-index { display:none; }
@media (max-width:920px) { .studio-layout > .studio-scope { padding-top:0; } }
@media (max-width:700px) { .world-kairos { grid-template-columns:1fr; gap:14px; } }

.case-copy .case-motto { margin-top:20px; color:var(--ceramic); font-weight:600; }
.footer-linkedin { font-size:.78rem; text-decoration:underline; text-underline-offset:4px; }

.footer-network h2 { font-size:1.3rem; line-height:1.2; letter-spacing:-.035em; }
.footer-network-grid { display:grid; grid-template-columns:1fr 2fr; gap:24px; min-width:0; }
.footer-network-group h3 { margin-bottom:8px; font-size:.7rem; font-weight:500; line-height:1.6; letter-spacing:.08em; text-transform:uppercase; color:var(--muted-light); }
.footer-network .footer-linkedin { display:inline-flex; align-items:center; min-height:36px; gap:8px; }
.footer-network .footer-linkedin svg { color:var(--red); }
.footer-network .kairos-social-links { gap:8px 20px; }
@media (max-width:700px) { .footer-network { grid-template-columns:1fr; gap:20px; } }
@media (max-width:550px) { .footer-network-grid { grid-template-columns:1fr; gap:18px; } }
