/* Home-page art direction: edge-to-edge photography, overlaid navigation,
   large continuous project track. Shared service pages keep their reading layout. */
.home>header{position:absolute;inset:0 0 auto;background:transparent;padding-top:30px;padding-bottom:25px;border:0;color:#fff}
.home .hero{padding:0;position:relative;height:100svh;min-height:740px;isolation:isolate;overflow:hidden;background:#151817}
.home .hero-visual{position:absolute;inset:0;aspect-ratio:auto;margin:0;z-index:-2;max-height:none}
.home .hero-visual picture,.home .hero-visual img{width:100%;height:100%}
.home .hero-visual img{object-position:58% 54%;transform-origin:center}
.home .hero-visual:after{inset:0;background:linear-gradient(180deg,#070c0b85 0%,#070c0b1a 43%,#070c0b08 62%,#070c0bd9 100%),linear-gradient(90deg,#070c0b52,transparent 60%)}
.home .hero-heading{position:absolute;left:var(--pad);right:var(--pad);top:clamp(135px,18vh,210px);padding:0;display:block;pointer-events:none}
.home .hero h1{font-family:Barlow,Arial,sans-serif;font-weight:500;letter-spacing:-.035em;font-size:clamp(48px,5.8vw,86px);line-height:1.03;max-width:970px;color:#fff}
.home .hero-intro{margin:25px 0 0;padding:0;display:block;min-width:0}
.home .hero-intro p{color:#f5f5f1;font-size:17px;line-height:1.6}
.home .hero-intro .text-link{display:none}
.home .hero-caption{left:auto;right:var(--pad);bottom:150px;text-align:right;gap:4px}
.home .hero-caption strong{font-size:18px}.home .hero-caption>span{font-size:14px}
.home .hero-visual .photo-action{right:var(--pad);bottom:220px;width:44px;height:44px}
.home .hero-bottom{position:absolute;bottom:0;left:0;right:0;padding:30px var(--pad) 38px;border:0;display:flex;align-items:end;color:#fff}
.home .hero-bottom p{font-size:18px}.home .hero-bottom p>span{display:block;margin:5px 0 0;color:#e0e5df;font-size:15px}
.home .hero-watch{font-size:16px;margin:0}.home .hero-watch>span{color:#e0e5df}
.home .film-section{grid-template-columns:minmax(240px,.7fr) minmax(0,1.5fr);padding-top:120px;padding-bottom:120px;padding-right:0;gap:5vw}
.home .film-copy h2{font-size:clamp(34px,3.2vw,50px)}
.home .film-bottom{padding-right:var(--pad)}
.home .film-player{aspect-ratio:16/9}
.home .film-launch>img{object-fit:cover}
.home .work{background:#101311;color:var(--ink);color-scheme:dark}
.home .work-sticky{padding:0;position:relative}
.home .work .section-head{position:absolute;inset:38px var(--pad) auto;z-index:3;margin:0;pointer-events:none}
.home .work .section-head>*{pointer-events:auto}
.home .work .section-head .text-link{color:#fff}
.home .work-controls button{color:#fff;border-color:#ffffff90;background:#13171480}
.home .work-controls button:hover{background:var(--accent);color:var(--bg)}
.home .work-window{margin:0;padding:0;width:100%;max-width:none}
.home .work-track{gap:0}
.home .work-window{scrollbar-width:none}.home .work-window::-webkit-scrollbar{display:none}
.home .project{flex-basis:100%;position:relative;color:#fff}
.home .project-photo,.home .work.motion .project-photo{height:100svh;min-height:700px;max-height:none;aspect-ratio:auto}
.home .project-photo picture{display:block;width:100%;height:100%}
.home .project-photo img{object-position:50% 55%}
.home .project-photo:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#040905b8,transparent 27%,transparent 63%,#040905e8)}
.home .project-photo .photo-action{z-index:2;bottom:85px;right:var(--pad)}
.home .project-caption{position:absolute;bottom:68px;left:var(--pad);right:calc(var(--pad) + 70px);z-index:2;padding:0;display:block}
.home .project-caption h3{font-family:'Barlow Condensed',Arial,sans-serif;font-weight:600;font-size:clamp(42px,5vw,70px);margin-bottom:12px}
.home .project-caption>span{color:#eceee9;font-size:17px;text-align:left}
.home .work.motion .work-sticky{min-height:700px;display:block}
.home .section-head h2{font-size:clamp(38px,4.1vw,60px)}
.home .work-progress{position:absolute;z-index:3;bottom:30px;left:var(--pad);right:var(--pad);background:#ffffff50;margin:0}
.home .work-progress span{background:var(--accent)}
.home .services{padding-top:125px;padding-bottom:110px;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}
.home .services-heading{position:sticky;top:45px}
.home .services-visual{margin:42px 0 0 calc(-1 * var(--pad));position:relative}
.home .services-visual img{height:340px;object-fit:cover;object-position:center 50%}
.home .services-visual figcaption{margin:15px 0 0 var(--pad);font-size:14px;color:var(--muted)}
.home .service-list{padding-top:14px}
.home .service-list summary{padding:30px 0}
.home .service-list summary h3{font-size:32px}
.home .process{padding:100px var(--pad);display:flex;position:relative;isolation:isolate;min-height:850px;overflow:hidden;align-items:center}
.home .process:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#11161310 10%,#1116137a 43%,#111613f5 65%,#111613 100%)}
.home .process-image{position:absolute;inset:0;min-height:0;z-index:-2}
.home .process-image img{object-position:25% 50%;height:100%;width:100%;object-fit:cover}
.home .process-copy{padding:0;width:43%;margin-left:auto}
.home .process-copy>p,.home .process li p{color:#e0e5df}
.home .process li{border-color:#ffffff50}
.home .process h2{font-size:clamp(42px,4.4vw,66px)}
.home .contact{padding-top:115px;padding-bottom:110px;background:#111613;color:var(--ink);border-top:1px solid #ffffff20}
.home .contact p,.home .contact-links>a>span{color:#bcc7ba}
.home .contact-links>a{border-color:#ffffff40}
.home .contact-links svg{color:var(--accent)}
.home .contact h2{font-size:clamp(58px,7vw,96px)}
@media(max-width:1000px){
  .home .hero h1{font-size:7vw}
  .home .film-section{gap:5vw;grid-template-columns:.8fr 1.2fr;padding-top:85px;padding-bottom:85px}
  .home .film-copy h2{font-size:36px}.home .film-copy>p{font-size:16px}
  .home .film-player{aspect-ratio:16/9}
  .home .services{padding-top:90px;padding-bottom:90px}
  .home .process{min-height:800px}.home .process-copy{width:48%}
}
@media(max-width:700px){
  .home>header{padding-top:20px;padding-bottom:20px}
  .home header.open nav{background:#171918}
  .home .hero{min-height:730px;height:100svh;max-height:1050px}
  .home .hero-heading{top:135px}
  .home .hero h1{font-size:clamp(37px,8.5vw,56px);line-height:1.08;letter-spacing:-.03em;max-width:560px}
  .home .hero-intro{margin-top:20px}.home .hero-intro p{font-size:16px;line-height:1.55}
  .home .hero-visual img{object-fit:contain;object-position:center 58%;mask-image:linear-gradient(180deg,transparent 8%,#000 27%,#000 77%,transparent 94%)}
  .home .hero-visual:after{background:linear-gradient(180deg,#070c0bb8,#070c0b32 38%,#070c0b00 60%,#070c0bd9)}
  .home .hero-caption{left:var(--pad);right:calc(var(--pad) + 58px);bottom:155px;text-align:left}
  .home .hero-caption strong{font-size:16px}.home .hero-caption>span{font-size:13px}
  .home .hero-visual .photo-action{bottom:155px}
  .home .hero-bottom{display:block;padding:20px var(--pad) 26px}
  .home .hero-bottom p{font-size:16px;display:flex;justify-content:space-between;gap:10px;align-items:baseline}
  .home .hero-bottom p>span{font-size:14px;margin:0}
  .home .hero-watch{margin-top:20px;min-height:44px}.home .hero-watch>span{margin-left:auto}
  .home .film-section{grid-template-columns:1fr;padding:72px 0 65px;gap:30px}
  .home .film-copy{padding:0 var(--pad)}.home .film-copy h2{font-size:39px}
  .home .film-player{aspect-ratio:16/9}.home .film-bottom{padding:0 var(--pad)}
  .home .film-stop,.home .film-status{margin-left:var(--pad)}
  .home .work-sticky{padding:0}
  .home .work .section-head{top:28px;gap:14px}
  .home .work .section-head h2{font-size:38px;flex-basis:100%}
  .home .work .section-head .text-link{margin-left:auto;order:initial}
  .home .project{flex-basis:100%}.home .project-photo{height:84svh;min-height:630px}
  .home .project-photo img{object-fit:cover;object-position:50% 50%;background:#101311}
  .home .project-photo:after{background:linear-gradient(180deg,#101311c9,transparent 32%,transparent 61%,#101311e8)}
  .home .project-caption{left:var(--pad);bottom:48px;right:calc(var(--pad) + 45px);padding:0}
  .home .project-caption h3{font-size:43px;margin-bottom:9px}.home .project-caption>span{font-size:16px}
  .home .project-photo .photo-action{bottom:70px;width:44px;height:44px}
  .home .work-track{gap:0}
.home .work-window{scrollbar-width:none}.home .work-window::-webkit-scrollbar{display:none}
  .home .services{padding-top:75px;padding-bottom:75px}
  .home .services{grid-template-columns:1fr}.home .services-heading{position:static}
  .home .services-visual{margin:30px calc(-1 * var(--pad)) 0}.home .services-visual img{height:300px}
  .home .services-visual figcaption{margin:13px var(--pad) 0}
  .home .service-list{padding-top:0}.home .service-list summary h3{font-size:27px}
  .home .process{display:block;min-height:0;padding:340px var(--pad) 65px}
  .home .process-image{inset:0 0 auto;height:530px;aspect-ratio:auto;min-height:0}
  .home .process-image img{object-position:35% 50%}
  .home .process:after{background:linear-gradient(180deg,transparent 160px,#111613aa 325px,#111613 480px)}
  .home .process-copy{padding:0;width:100%;margin:0;position:relative}
  .home .process h2{font-size:44px}
  .home .contact{padding-top:75px;padding-bottom:75px}.home .contact h2{font-size:64px}
}
@media(prefers-reduced-motion:reduce){.home .hero-visual img{transform:none!important}}
