/* Transparent feathering dissolves generated media into each surrounding surface. */
.ace-film-media,.ace-specialty-art,.ace-choice-art{background:transparent!important;border-radius:0!important;border:0!important;box-shadow:none!important}
.ace-film-media{isolation:auto;overflow:visible;mix-blend-mode:lighten}
.ace-film-media img,.ace-film-media video,.ace-specialty-art img,.ace-choice-art img,.ace-home-specialty>img,.lg4-stage>img,.lg4-fit img{
 -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 13%,#000 87%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 13%,#000 86%,transparent 100%);
 -webkit-mask-composite:source-in;
 mask-image:linear-gradient(to right,transparent 0%,#000 13%,#000 87%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 13%,#000 86%,transparent 100%);
 mask-composite:intersect;
 border-radius:0!important;
}
.ace-specialty-art,.ace-choice-art,.ace-home-specialty>img,.lg4-stage>img,.lg4-fit img{mix-blend-mode:lighten}
.ace-specialty-art{margin-bottom:18px}.ace-specialty-atlas .spec-card{box-shadow:none!important}.ace-film figcaption{font-size:11px;color:#bfb0cf}
.ace-specialty-page .ace-specialty-side{gap:20px}.ace-specialty-page .hero-grid{align-items:center}
.js body{padding-bottom:0}
@media(max-width:650px){.ace-visual-page .ace-hero-grid{gap:22px}.ace-visual-page .ace-hero-copy h1{font-size:clamp(36px,10.5vw,43px)}.ace-visual-page .mech-hero{padding-bottom:34px}.ace-film-media{aspect-ratio:1.6!important}.ace-specialty-page .hero-grid{gap:28px}.ace-visual-page .ace-hero-copy .lead{font-size:18px}.ace-specialty-atlas .spec-card{padding:24px}.ace-specialty-art img{aspect-ratio:1.65;object-fit:cover}.ace-hero-actions{gap:16px}}
@media(max-width:360px){.ace-visual-page .ace-hero-copy h1{font-size:36px}.ace-visual-page .ace-hero-actions .btn{padding:13px 16px}}
.ace-visual-page .grid-3>*{min-width:0}
@media(max-width:650px){.ace-visual-page .grid-3{grid-template-columns:minmax(0,1fr)}}
/* Specialty tiles: the loop sits over its still and fades in once it plays. */
.fx-tile{position:relative;display:block}
.fx-tile>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .4s;pointer-events:none}
.fx-tile.is-playing>video{opacity:1}
.ace-home-specialty .fx-tile{margin-bottom:20px}.ace-home-specialty .fx-tile>img{margin-bottom:0}
.ace-home-specialty .fx-tile>video,.ace-specialty-art .fx-tile>video{border-radius:4px}
.ace-home-specialty:first-child .fx-tile>video{object-position:right center}
.ace-home-specialty .fx-tile>:is(img,video),.ace-specialty-art .fx-tile>video{-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 13%,#000 87%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 13%,#000 86%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent 0%,#000 13%,#000 87%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 13%,#000 86%,transparent 100%);mask-composite:intersect}
.ace-home-specialty .fx-tile>:is(img,video){mix-blend-mode:lighten}
.fx-card-art .fx-tile{height:100%}.fx-card-art .fx-tile>video{transition:opacity .4s,transform .5s cubic-bezier(.2,.7,.2,1)}
.lg6-fit>a:hover .fx-card-art video{transform:scale(1.03)}
@media(prefers-reduced-motion:reduce){.fx-tile>video{display:none}}
