/* UPMD — direction, light and rhythm. A small presentation layer over the
   existing static site; no layout engine, animation library or remote assets. */
:root{--muted:#aaa;--line:#ffffff30;--ease-out:cubic-bezier(.16,1,.3,1)}
body{line-height:1.5}
:where(.chapter-light,.manifesto,.formats,.contact) :is(a,button,summary):focus-visible{outline-color:var(--ink)}
.chapter-light ::selection{background:var(--ink);color:var(--paper)}
.v-page h1,.v-page h2,.v-page h3{hyphens:none}
.v-page .chapter-lead,.v-page .section-heading>p:not(.v-kicker){text-wrap:pretty}
.site-header nav{gap:clamp(1.2rem,2.2vw,2.4rem);font-size:.875rem}
.site-header .nav-contact{padding:.7rem 1rem;min-height:44px;display:inline-flex;align-items:center}
.site-header nav>a[aria-current=page]:after{transform:scaleX(1)}
.site-header .header-caption{font-size:.75rem;letter-spacing:.04em}
.menu-trigger{width:44px;height:44px;align-items:center;flex-shrink:0}
.menu-trigger span:last-child{align-self:auto;margin:0 0 0 9px}
.menu-trigger:hover span:last-child{margin-left:0}
.menu-dialog nav{margin-top:clamp(1rem,3svh,2rem)}
.menu-dialog nav>a,.menu-dialog nav>button{font-size:clamp(1.8rem,min(5.2vw,7.2svh),6.5rem);line-height:1.05;padding:.8rem 0;min-height:56px}
.menu-dialog nav span{flex-shrink:0}
.menu-dialog>p{margin:1.5rem 0 2rem}
.dialog-top{font-size:.8125rem;line-height:1.5}
.dialog-top button{min-width:44px;min-height:44px}
.eyebrow,.text-action{font-size:.8125rem;line-height:1.6}
.footer-top>a:not(.brand){min-height:44px;display:inline-flex;align-items:center}
.social-links a{width:44px;height:44px}

/* Cinematic light: a calm top edge, legible type, and a gradual black floor. */
.hero-media:after{background:linear-gradient(180deg,#08080899 0%,#08080812 35%,#08080820 52%,#080808e8 100%),linear-gradient(90deg,#08080855,transparent 68%)}
.hero-media>img,.hero-media>video{filter:saturate(.88) contrast(1.04)}
.hero h1{text-shadow:0 4px 48px #0004}
.motion-enabled .intro{animation-duration:.65s;animation-delay:.1s}
.hero-topline{font-size:.75rem;line-height:1.65;letter-spacing:.045em}
.hero-bottom{min-height:52px}
.scroll-hint{font-size:.75rem;line-height:1.5}
.reel-trigger small{color:#ddd;letter-spacing:.025em}
.ambient-pause,.chapter-caption .ambient-pause{min-width:44px;min-height:44px;margin-left:0;font-size:1rem;display:grid;place-items:center;flex-shrink:0}
.hero .ambient-pause{background:#0b0b0b55}
.hero .play-disc{background:#0b0b0b30}
.manifesto-bottom p{line-height:1.6}
.manifesto-bottom>.eyebrow{font-size:.75rem;line-height:1.6}
.film-gradient{background:linear-gradient(180deg,#08080880,transparent 32%,#08080820 48%,#080808d9 100%)}
.film-link{outline:1px solid #ffffff15;outline-offset:-1px}
.film-top>span,.film-spec{font-size:.75rem;line-height:1.5}
.sequence-caption{font-size:.8125rem;letter-spacing:.015em}
.portfolio-bridge{display:flex;justify-content:space-between;align-items:center;gap:1.5rem 3rem;padding:2rem var(--gutter) 3.5rem;border-top:1px solid var(--line)}
.portfolio-bridge>span{font-size:.75rem;color:#aaa;letter-spacing:.04em}
.portfolio-bridge>a{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;font-size:1rem;min-height:44px;border-bottom:1px solid #ffffff60}
.portfolio-bridge>a>span{font-size:1.5rem}
.ratio-controls button{font-size:.8125rem;line-height:1.5}
.ratio-controls button span{font-size:1.25rem}
.format-lab:before,.format-label{font-size:.75rem;letter-spacing:.035em}
.format-lab{background:radial-gradient(ellipse at 50% 30%,#efefef,#d5d5d5)}
.format-screen{box-shadow:0 25px 55px #0003,0 0 0 1px #0002}
.format-copy>p,.studio-description>p{font-size:1.0625rem;line-height:1.7}
.format-copy>p{max-width:29rem}
.studio{row-gap:3.5rem}
.studio-work{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:5vw;align-items:start}
.studio-still{position:sticky;top:110px;margin:0;overflow:hidden}
.studio-still>div{position:relative;aspect-ratio:16/10;background:#151515}
.studio-still img{object-fit:contain;filter:saturate(.8)}
.studio-still>div:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#0b0b0b99,transparent 40%)}
.studio-still figcaption{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line);font-size:.75rem;line-height:1.6;color:#aaa}
.studio-work .process{grid-column:auto;margin:0}
.studio-work .process summary{grid-template-columns:2rem 1fr 1.5rem;gap:.5rem;padding:1.3rem 0}
.studio-work .process summary h3{font-size:clamp(1.7rem,3vw,3.2rem);line-height:1.05}
.studio-work .process summary>span:first-child{font-size:.8125rem;padding-top:.2rem}
.studio-work .process details>div{margin-left:2.5rem;display:block;padding-bottom:1.5rem}
.studio-work .process details p{font-size:1rem;line-height:1.7}
.studio-work .process details>div>span{display:block;font-size:.75rem;line-height:1.6;text-align:left;margin-top:1rem}
.contact-bottom p{font-size:1rem;line-height:1.6}
.contact-circle{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.75rem}

/* Content sets the height; complete frames also fit ultrawide screens. */
.chapter-hero{--hero-surface:var(--ink)}
.chapter-hero--paper{--hero-surface:var(--paper)}
.v-page .chapter-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:1vw;min-height:0;height:auto;padding:1.25rem var(--gutter) 2rem}
.v-page .chapter-hero .chapter-title{grid-column:1;grid-row:1;max-width:none;min-width:0;padding:0;order:0}
.v-page .chapter-hero h1{font-size:clamp(3.3rem,6.6vw,7.6rem);max-width:14ch}
.v-page .chapter-hero .chapter-image{position:relative;grid-column:2;grid-row:1;inset:auto;clip-path:none;width:calc(100% + 7vw);height:auto;margin:0 0 0 -7vw;aspect-ratio:16/9;background:var(--hero-surface);overflow:hidden;order:1}
.v-page .chapter-hero .chapter-image img,.v-page .chapter-hero .chapter-image video{object-fit:contain;object-position:center;transform:none;filter:saturate(.9) contrast(1.03)}
.v-page .chapter-hero .chapter-image:after{display:block;content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--hero-surface),transparent 22%,transparent 96%,var(--hero-surface)),linear-gradient(0deg,var(--hero-surface),transparent 14%,transparent 96%,var(--hero-surface))}
.chapter-lead{max-width:31rem;line-height:1.7;margin-top:1.25rem}
.hero-explore{display:inline-flex;align-items:center;justify-content:space-between;gap:2rem;font-size:.875rem;line-height:1.5;border-bottom:1px solid currentColor;margin-top:1.25rem;min-height:44px;padding:.4rem 0}
.hero-explore>span{font-size:1.25rem}
.chapter-caption{font-size:.75rem;letter-spacing:.025em;bottom:.5rem}
/* Four actual vertical frames: no tilt, crop or stretching. */
.portrait-montage{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;aspect-ratio:9/4;gap:0;overflow:hidden;background:#dfcc00}
.portrait-montage>img{display:block;width:100%;height:100%;min-width:0;aspect-ratio:9/16;object-fit:contain;object-position:center;filter:none;transform:none}
.v-page .chapter-hero--montage{gap:3vw;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);padding-bottom:2.5rem}
.v-page .chapter-hero--montage .chapter-image{width:100%;margin:0;aspect-ratio:9/4;background:transparent}
.v-page .chapter-hero--montage .chapter-image:after{display:none}
.v-page .chapter-hero--montage .chapter-image img{filter:none}
.gallery-picture--montage,.service-tile-visual--montage{display:grid;place-items:center;background:#dfcc00}
.service-page--videos-gastronomicos .chapter-hero{--hero-surface:var(--ink);background:var(--ink);color:var(--paper)}
.service-page--videos-gastronomicos .chapter-lead{color:#c9c9c9}
.service-page--videos-gastronomicos .chapter-image img{filter:none}
.service-page--videos-gastronomicos .photo-editorial{background:#dedbd4;color:var(--ink);color-scheme:light}
.service-page--videos-gastronomicos .photo-editorial :is(.section-heading>p:not(.v-kicker),figcaption,.photo-credit){color:#48443f}
.service-page--videos-gastronomicos .photo-slide figcaption>span:first-child{color:var(--ink)}
.service-page--videos-gastronomicos .photo-controls button{border-color:#0007}
.service-page--videos-gastronomicos .photo-controls button:not(:disabled):hover{background:var(--ink);color:var(--paper)}
.service-page--videos-gastronomicos .photo-editorial :is(a,button):focus-visible{outline-color:var(--ink)}
.about-page .chapter-hero--editorial .chapter-image{width:calc(100% + 14vw);margin-left:-14vw}
.about-page .chapter-hero--editorial .chapter-image:after{background:linear-gradient(0deg,var(--ink),transparent 18%),linear-gradient(90deg,var(--ink),transparent 22%,transparent 96%,var(--ink))}
.chapter-nav{padding:.55rem var(--gutter);gap:clamp(1.5rem,4vw,4.5rem)}
.chapter-nav a{display:flex;align-items:center;min-height:44px;position:relative;color:#bcbcbc;text-decoration:none}
.chapter-nav a:after{content:"";position:absolute;left:0;right:0;bottom:-.55rem;height:2px;background:var(--paper);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease-out)}
.chapter-nav a[aria-current=location]{color:var(--paper)}
.chapter-nav a[aria-current=location]:after{transform:scaleX(1)}
.scene-viewport{box-shadow:0 18px 40px #0002;background:#151515}
.scene-image img{object-fit:contain}
.scene-inline-image{display:none}
.scene-counter{font-size:.8125rem;background:#0b0b0be6;color:var(--paper)}
.scene-copy p{max-width:38rem;line-height:1.8}
.production-steps li>span{font-size:clamp(4rem,6vw,6rem);color:#8b8b8b}
.production-steps li{min-height:14rem}
.production-steps h3{line-height:1.15}
.service-index-heading{display:flex;justify-content:space-between;gap:2rem;align-items:start}
.service-index-heading .v-kicker{padding-top:.5rem;max-width:15rem}
.service-index-heading h2{font-size:clamp(2.8rem,5vw,5rem);max-width:14ch}
.service-deck:not(.service-deck--compact){grid-template-columns:repeat(2,minmax(0,1fr));gap:3.5rem 2.5vw;align-items:start}
.service-deck:not(.service-deck--compact)>.service-tile{display:block;min-height:0;padding:0;border:0;background:transparent;grid-column:auto}
.service-deck:not(.service-deck--compact)>.service-tile:after{display:none}
.service-tile-visual{position:relative;aspect-ratio:16/9;overflow:hidden;background:#161616}
.service-tile-visual>img{object-fit:contain;object-position:center;transition:filter .35s}
.service-tile:hover .service-tile-visual>img{filter:brightness(1.06)}
.service-tile-copy{position:relative;z-index:1}
.service-deck:not(.service-deck--compact) .service-tile-copy{padding-top:1.2rem}
.service-deck:not(.service-deck--compact) h3{font-size:clamp(1.8rem,3vw,3.2rem);max-width:18ch;line-height:1.03}
.service-tile-copy>p{max-width:32rem;color:#bcbcbc;margin-top:.85rem}
.service-tile .tile-arrow{background:#0b0b0bc4;width:2.5rem;height:2.5rem;display:grid;place-items:center;line-height:1;font-size:1.5rem}
.service-deck--compact .service-tile{background:#121212;border:1px solid #ffffff1a}
.service-deck--compact .service-tile-visual{position:absolute;inset:0;z-index:-2;aspect-ratio:auto}
.service-deck--compact .service-tile:after{background:linear-gradient(0deg,#080808f2,transparent 100%)}
.service-tile-visual--montage{background:#dfcc00}
.service-index #possibilidades{padding-top:2rem}
.service-index #possibilidades>.section-heading{margin-bottom:2rem}

/* A portfolio that shows the extent of each series without extra clicks. */
.gallery-picture,.portfolio-collection.is-filtered .gallery-picture{aspect-ratio:16/9}
.gallery-picture img{object-fit:contain;transform:none!important}
.gallery-link:hover .gallery-picture img{filter:brightness(1.07)}
.gallery-duration{backdrop-filter:blur(8px);background:#0b0b0bc9;font-size:.8125rem}
.film-gallery--index{row-gap:4.5rem}
.collection-picks{display:grid;grid-template-columns:repeat(auto-fit,minmax(8.5rem,1fr));gap:.6rem;margin-top:1.3rem;padding-top:1rem;border-top:1px solid var(--line)}
.collection-picks a{display:flex;align-items:center;gap:.6rem;min-height:44px;line-height:1.5;font-size:.8125rem;padding:.35rem;background:#161616;transition:background .2s}
.collection-picks img{width:3rem;height:3rem;object-fit:contain;flex-shrink:0;background:#090909}
.collection-picks a>span:first-of-type{flex:1;min-width:0}
.collection-picks a>span:last-child{padding-right:.35rem}
.collection-picks a:hover{background:#292929}
.portfolio-collection.is-filtered .gallery-item>.gallery-link{display:block}
.portfolio-collection.is-filtered .gallery-item .gallery-caption h3{font-size:clamp(1.8rem,3vw,3.2rem);max-width:none}
.gallery-filters button{min-height:44px}
.gallery-play{width:3.25rem;height:3.25rem}
.watch-stage{background:radial-gradient(ellipse at 50% 0%,#252525,#0b0b0b 80%);padding-top:1.2rem;padding-bottom:1.2rem}
.watch-stage .project-player{box-shadow:0 12px 70px #0007}
.watch-stage video{object-fit:contain;background:#000}
.watch-heading h1{font-size:clamp(2.5rem,5.5vw,6.2rem);line-height:1.01}
.scene-strip .small-note{font-size:.8125rem!important}
.series-rail>a{transition:border-color .25s}
.series-rail [aria-current=page]{background:linear-gradient(0deg,#ffffff0e,transparent 80%)}
.next-project{min-height:23rem}
.next-project>img{object-fit:contain;object-position:75% center;transform:none!important;filter:saturate(.85)}
.next-project:after{background:linear-gradient(90deg,#080808f2,#0808088c 48%,#08080833)}
.next-project h2{font-size:clamp(2.7rem,5.5vw,6rem);max-width:20ch}
.closing-note{display:flex;justify-content:space-between;align-items:center;gap:3rem;padding:3.5rem var(--gutter);border-top:1px solid var(--line)}
.closing-note h2{font-size:clamp(2rem,3.8vw,4rem);max-width:19ch;margin-top:.8rem;line-height:1.04}
.closing-note .v-button{flex-shrink:0}
.closing-note .v-kicker{font-size:.75rem;color:#aaa}
.closing-scene{min-height:30rem}
.closing-image img{object-fit:contain;object-position:right center;transform:none;filter:saturate(.8)}
.closing-image:after{background:linear-gradient(90deg,#080808f5 10%,#080808d9 37%,#08080855 100%),linear-gradient(0deg,#080808b3,transparent 50%)}
.closing-scene h2{font-size:clamp(3.5rem,7vw,7.5rem);max-width:13ch}
.v-button{border:1px solid transparent;transition:background .25s,color .25s,border-color .25s;min-height:48px}
.v-button:hover{background:#1b1b1b;color:var(--paper);border-color:#ffffff6b}

/* Cases unfold beside their own source image. No invented performance figures. */
.case-director{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6vw;align-items:start;background:#161616}
.case-still{position:sticky;top:155px;padding-top:1rem}
.case-still figure{margin:0}
.case-still img{height:auto;aspect-ratio:16/9;object-fit:contain;background:var(--ink)}
.case-still figcaption{display:flex;flex-direction:column;gap:.3rem;padding:1rem 0;border-bottom:1px solid var(--line)}
.case-still figcaption>span{font-size:.75rem;line-height:1.6;color:#aaa}
.case-decisions>section{position:relative;padding:2.5rem 0 3rem;border-top:1px solid var(--line)}
.case-decisions .decision-number{position:absolute;right:0;top:.65rem;font:700 6rem/1 var(--display);color:#ffffff18;pointer-events:none}
.case-decisions .v-kicker{color:#aaa;padding-bottom:1.3rem;position:relative}
.case-decisions h2{font-size:clamp(2.3rem,3.4vw,4rem);max-width:18ch;line-height:1.03;position:relative}
.case-decisions p:not(.v-kicker){font-size:1rem;line-height:1.8;color:#bcbcbc;margin-top:1.4rem;max-width:38rem}
.case-films .film-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
.case-films .gallery-caption h3{font-size:clamp(1.65rem,2.4vw,2.7rem)}
.case-collection{padding-bottom:3rem}
.guide-section-heading{padding-top:2.5rem;padding-bottom:1rem}
.case-collection .gallery-picture{aspect-ratio:16/9}
.history-line strong{color:var(--paper);font-variant-numeric:tabular-nums}
.history-line li{position:relative;border-top-color:#ffffff50}
.history-line li:before{content:"";width:7px;height:7px;background:var(--paper);border-radius:50%;position:absolute;top:-4px;left:0;box-shadow:0 0 0 6px var(--ink)}
.company-vision{background:#dedbd4}
.guide-article{background:#e6e3dc}
.guide-copy section{scroll-margin-top:120px}
.guide-copy h2{max-width:20ch}
.guide-copy section>p:last-child{max-width:41rem;line-height:1.8}
.guide-takeaway{border-left:3px solid var(--ink);padding:1.5rem 0 1.5rem 1.7rem;background:linear-gradient(90deg,#00000009,transparent)}
.guide-aside nav a{min-height:36px;display:flex;align-items:center}
.quote-visual{min-height:38rem}
.quote-visual>img{object-fit:contain;background:var(--ink);object-position:center top}
.quote-visual:after{background:linear-gradient(0deg,#080808fa,#08080888 60%,transparent)}
.direct-contact a{min-height:44px;display:inline-flex;align-items:center}
.brief-inline .brief-heading h2{font-size:clamp(2.6rem,4vw,4.2rem);line-height:1}
.brief-dialog input,.brief-dialog textarea,.brief-dialog select{border-color:#ffffff66}
.brief-dialog input::placeholder,.brief-dialog textarea::placeholder{color:#aaa}

@media(min-width:1600px){
 .studio-work,.portfolio-bridge{max-width:1800px;margin-inline:auto}
}
@media(max-width:1100px){
 .site-header .header-caption{display:none}
 .studio-work{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:4vw}

 .collection-picks{grid-template-columns:repeat(2,minmax(0,1fr))}
 .closing-note{gap:2rem}
 .closing-note .v-button{max-width:19rem}
 .case-films .film-gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
 .site-header{gap:1rem;height:86px}
 .site-header nav{gap:.6rem}
 .site-header .nav-contact{display:inline-flex;font-size:.75rem;padding:.5rem .7rem;white-space:nowrap}
 .site-header .nav-contact span{margin-left:.5rem}
 .hero{height:auto;min-height:100svh;padding-top:125px;padding-bottom:1.5rem}
 .hero h1{font-size:21vw;margin-top:auto;margin-bottom:2rem;padding-top:2.5rem}
 .hero h1 .hero-descriptor{font-size:.75rem;line-height:1.6;letter-spacing:.02em;margin-bottom:1.3rem}
 .hero-topline{font-size:.6875rem;letter-spacing:.025em;gap:1rem}
 .hero-topline>span:last-child{max-width:10.5rem}
 .hero-bottom{display:grid;grid-template-columns:1fr 44px;gap:1rem .8rem}
 .hero .reel-trigger{grid-column:1;grid-row:1;max-width:none;margin:0;gap:.9rem;min-height:52px;font-size:.8125rem}
 .hero .reel-trigger small{font-size:.75rem;line-height:1.4;max-width:none}
 .hero .play-disc{width:48px;height:48px}
 .hero .ambient-pause{grid-column:2;grid-row:1;width:44px;height:44px}
 .hero .scroll-hint{grid-column:1/-1;grid-row:2;max-width:none;font-size:.75rem;justify-content:space-between;padding-top:.6rem;border-top:1px solid #ffffff35}
 .hero .long-arrow{order:2;font-size:1.5rem}
 .hero-media:after{background:linear-gradient(180deg,#08080899, #08080822 35%, #08080833 55%,#080808f5),linear-gradient(90deg,#08080830,transparent)}
 .manifesto>.eyebrow,.format-copy>.eyebrow,.studio-heading>.eyebrow,.contact>.eyebrow{font-size:.75rem;line-height:1.6}
 .manifesto-bottom p,.format-copy>p,.studio-description>p,.contact-bottom p{font-size:1rem;line-height:1.7}
 .manifesto-bottom>.eyebrow{font-size:.75rem}
 .sequence-heading>.eyebrow{font-size:.75rem;line-height:1.5}
 .film-top>span,.film-spec{font-size:.75rem}
 .portfolio-bridge{display:grid;grid-template-columns:1fr;padding-top:1.5rem;padding-bottom:2rem;gap:.8rem}
 .portfolio-bridge>span{margin-bottom:.2rem}
 .portfolio-bridge>a{font-size:.9375rem}
 .ratio-controls button{font-size:.75rem;padding:.85rem .6rem}
 .format-lab{height:480px;padding:55px 18px 60px}
 .format-lab:before,.format-label{font-size:.6875rem;letter-spacing:.025em;line-height:1.5}
 .format-label{bottom:1.2rem;left:1rem;right:1rem;align-items:end}
 .format-label>span:last-child{max-width:9rem}
 .studio{row-gap:2rem}
 .studio-work{display:flex;flex-direction:column;gap:1.8rem;min-width:0}
 .studio-still{position:relative;top:auto;width:100%}
 .studio-still>div{aspect-ratio:16/9}
 .studio-work .process{width:100%}
 .studio-work .process summary h3{font-size:clamp(1.7rem,6.5vw,2.5rem)}
 .studio-work .process details>div{margin-left:0}
 .studio-work .process details>div>span{font-size:.75rem}
 .contact-circle{width:108px;height:108px;flex-shrink:0}
 .contact-bottom{gap:1rem}
 .v-page .chapter-hero{display:flex;flex-direction:column;align-items:stretch;gap:0;min-height:0;padding:1rem var(--gutter) 1.5rem}
 .v-page .chapter-hero .chapter-title{max-width:100%;order:0;padding:0}
 .v-page .chapter-hero h1{font-size:clamp(3rem,12.5vw,5.1rem);max-width:15ch;line-height:.98}
 .chapter-lead{font-size:1rem;line-height:1.7;margin-top:1.2rem;max-width:34rem}
 .hero-explore{font-size:.8125rem;margin-top:1rem;min-height:44px}
 .v-page .chapter-hero .chapter-image{order:1;width:calc(100% + 2*var(--gutter));aspect-ratio:16/9;height:auto;margin:1.5rem calc(-1*var(--gutter)) 0;position:relative;inset:auto}
 .v-page .chapter-hero .chapter-image:after{background:linear-gradient(0deg,var(--hero-surface),transparent 17%,transparent 92%,var(--hero-surface))}
 .v-page .chapter-hero .chapter-caption{bottom:.6rem;font-size:.6875rem;left:auto;right:var(--gutter);max-width:90%}
 .v-page .chapter-hero--montage{padding-bottom:2.5rem}
 .v-page .chapter-hero--montage .chapter-image{aspect-ratio:9/4}
 .v-page .chapter-hero--montage .chapter-image:after{display:none}
 .chapter-nav{top:68px;padding:.35rem var(--gutter);gap:1.5rem}
 .chapter-nav a{font-size:.8125rem}
 .chapter-nav a:after{bottom:-.35rem}
 .v-page [id]{scroll-margin-top:140px}
 .scene-switcher{display:block}
 .scene-viewport{display:none}
 .scene-inline-image{display:block;margin:.4rem 0 1.3rem;aspect-ratio:16/9;background:#151515;overflow:hidden}
 .scene-inline-image img{object-fit:contain}
 .scene-chapters summary{padding:1.3rem 0}
 .scene-chapters h3{font-size:1.8rem}
 .scene-copy p{font-size:1rem;line-height:1.8}
 .production-steps li{min-height:12rem}
 .production-steps li>span{font-size:4rem}
 .production-steps h3{font-size:1.4rem}
 .service-index-heading{display:block}
 .service-index-heading h2{font-size:2.8rem;max-width:16ch}
 .service-index-heading .v-kicker{max-width:none;margin-bottom:1.1rem}
 .service-deck--compact .service-tile{min-height:20rem;flex-basis:80vw}
 .service-deck:not(.service-deck--compact){grid-template-columns:1fr;gap:2.75rem}
 .service-deck:not(.service-deck--compact) h3{font-size:2.2rem}
 .film-gallery--index{row-gap:3rem}
 .gallery-caption h3{font-size:2.1rem;line-height:1.06}
 .collection-picks{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}
 .collection-picks a{font-size:.75rem;gap:.5rem;line-height:1.5}
 .collection-picks img{width:2.6rem;height:2.6rem}
 .collection-picks a>span:last-child{display:none}
 .watch-stage{padding:.7rem 0}
 .watch-stage .project-player{margin:0 auto}
 .watch-heading h1{font-size:clamp(2.4rem,10.5vw,4rem)}
 .next-project{min-height:22rem}
 .next-project>img{object-position:center top}
 .next-project h2{font-size:2.8rem;max-width:17ch}
 .closing-note{display:block;padding:2.5rem var(--gutter) 3rem}
 .closing-note h2{font-size:2.65rem;max-width:18ch}
 .closing-note .v-button{margin-top:1.5rem;max-width:none;font-size:.9375rem;gap:1.2rem}
 .closing-scene{min-height:29rem;padding-top:4rem;padding-bottom:4rem}
 .closing-image img{object-position:center top}
 .closing-image:after{background:linear-gradient(0deg,#080808f2 8%,#080808d9 46%,#08080833 100%)}
 .closing-scene h2{font-size:3.6rem;max-width:14ch}
 .case-director{grid-template-columns:1fr;gap:2rem}
 .case-still{position:relative;top:auto;padding:0}
 .case-decisions>section{padding:1.8rem 0 2.2rem}
 .case-decisions h2{font-size:2.5rem;max-width:19ch}
 .case-decisions .decision-number{font-size:5.5rem}
 .case-films .film-gallery{grid-template-columns:1fr}
 .case-films .gallery-caption h3{font-size:2.1rem}
 .guide-article{padding-top:2rem}
 .guide-takeaway{font-size:1.8rem;padding:1rem 0 1rem 1.2rem}
 .quote-visual{min-height:24rem}
 .quote-visual h1{font-size:4.8rem}
 .quote-visual:after{background:linear-gradient(0deg,#080808f5,#0808088c 60%,transparent)}
 .direct-contact a{font-size:.875rem;overflow-wrap:anywhere}
 .footer-top{font-size:.8125rem;gap:.6rem 1rem}
 .footer-bottom{font-size:.75rem}
}
@media(max-width:360px){
 .brand{width:94px}.site-header nav{gap:.2rem}.site-header .nav-contact{padding:.4rem .5rem;font-size:.6875rem}
 .hero-topline{font-size:.625rem}.hero h1 .hero-descriptor{font-size:.6875rem}
 .collection-picks{grid-template-columns:1fr}.contact-bottom p{font-size:.875rem}
 .chapter-nav{gap:1.2rem}.chapter-nav a{font-size:.75rem}
}
@media(prefers-reduced-motion:no-preference){
 .hero-explore>span,.portfolio-bridge>a>span,.v-button>span{transition:transform .35s var(--ease-out)}
 .hero-explore:hover>span{transform:translateY(4px)}
 .portfolio-bridge>a:hover>span,.v-button:hover>span{transform:translate(3px,-3px)}
 .scene-image{transition:opacity .45s ease}
}
@media(prefers-reduced-motion:reduce){
 .chapter-nav a:after,.v-button,.collection-picks a{transition:none}
}
@media print{
 .portfolio-bridge,.hero-explore,.closing-note,.collection-picks,.studio-still{display:none!important}
 .studio-work,.case-director{display:block}.case-still{position:static}
 .scene-inline-image{display:block;height:auto}.case-decisions>section{break-inside:avoid}
}

.reduced-motion [data-reveal]{opacity:1!important;transform:none!important}

/* Preencher as miniaturas de "Encontre seu filme" */
.home-services .service-tile-visual > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
