.red-signal{--paper:#ee3b27;--ink:#151313;--muted:#65251c;--line:#ad2a1c;--accent:#ffe24b;font-family:Arial,Helvetica,sans-serif}
.red-signal .site-header{border-bottom:1px solid #ad2a1c}
.hero-red{padding-top:15px}
.red-meta{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.07em}
.hero-red h1{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(100px,15vw,240px);line-height:.82;letter-spacing:-.045em;text-transform:uppercase;position:relative;margin-top:40px;max-width:none;width:100%}
.asterisk{font-family:Arial,sans-serif;position:absolute;right:5vw;bottom:0;font-size:25vw;font-weight:500;line-height:1}
.red-footer{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:4vw;align-items:end;margin-top:35px}
.red-footer p{font-size:10px;line-height:1.5}
.red-footer .hero-film{height:150px;filter:contrast(1.1)}
.red-footer>a{font-size:12px;text-align:right}
.red-signal .work{background:#f0ece2}
.red-signal .work .section-meta{border-color:#aaa;color:#111}
.index-row{display:grid;grid-template-columns:40px 1fr 190px 40px;gap:30px;align-items:center;color:#111;border-top:1px solid #aaa;padding:30px 0}
.index-row>span{font-size:11px}
.index-row h2{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(32px,4.2vw,70px);line-height:1.02;letter-spacing:-.025em;max-width:20ch}
.index-row p{font-size:10px;margin-top:15px}
.index-image{height:150px;background:#ddd}
.index-image img{width:100%;height:100%;object-fit:cover;filter:grayscale(1);transition:.4s}
.index-row:hover .index-image img{filter:grayscale(0)}
.index-row .row-arrow{font-size:35px}
.red-signal .more{background:#151313;color:#efeee8}
.red-signal .more .section-meta{border-color:#555}
.red-signal .brief h2{font-family:Impact,'Arial Narrow',sans-serif;font-size:5vw;letter-spacing:-.02em}
.red-signal .case-opening{background:#ee3b27}
.red-signal .case-headline{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(75px,11vw,175px);letter-spacing:-.035em;max-width:17ch}
.red-signal .case-hero{margin-left:18vw}
.red-signal .case-overview,.red-signal .case-motion,.red-signal .case-visuals{background:#f0ece2;--muted:#666;--line:#aaa}
.red-signal .case-overview{grid-template-columns:1fr 2fr}
.red-signal .case-motion{display:grid;grid-template-columns:1fr 2fr;gap:5vw}
.red-signal .case-section-label h2{font-family:Impact,'Arial Narrow',sans-serif;font-size:4.5vw;letter-spacing:-.02em}
.red-signal .films{gap:20px}
.red-signal .case-visuals .visuals{grid-template-columns:repeat(3,minmax(0,1fr))}
.red-signal .visual-item:first-child{grid-column:1/3}
.red-signal .visual-item:nth-child(5n){grid-column:auto}
.red-signal .footer-cta{font-family:Impact,'Arial Narrow',sans-serif;letter-spacing:-.025em;font-size:7vw}
.red-signal .site-footer{background:#151313;color:#ee3b27}
.red-signal .site-footer>div{border-color:#555;color:#999}
@media(max-width:760px){.hero-red h1{font-size:26vw;max-width:none;margin-top:55px}
.asterisk{right:0;bottom:-30px;font-size:40vw}
.red-footer{grid-template-columns:1fr 1.3fr;margin-top:65px}
.red-footer .hero-film{height:140px}
.red-footer>a{grid-column:1/-1;text-align:left;font-size:10px}
.index-row{grid-template-columns:22px 1fr 65px;gap:15px;padding:25px 0}
.index-row h2{font-size:27px}
.index-image{height:80px}
.index-row .row-arrow{display:none}
.red-signal .brief h2{font-size:9vw}
.red-signal .case-headline{font-size:15vw}
.red-signal .case-hero{margin-left:0}
.red-signal .case-overview,.red-signal .case-motion{grid-template-columns:1fr;gap:24px}
.red-signal .case-section-label h2{font-size:42px}
.red-signal .case-visuals .visuals{grid-template-columns:1fr}
.red-signal .visual-item:first-child{grid-column:auto}
.red-signal .footer-cta{font-size:12vw}}
.red-signal{--accent:#e84b2c;--paper:#f0ece2;--ink:#151313;background:var(--paper)}
.red-signal .site-header{background:var(--accent);border-bottom:0;position:relative;z-index:2}
.hero-red{position:relative;isolation:isolate;overflow:hidden;min-height:calc(100svh - 132px);background:#080e17;padding:24px 4vw 40px;color:#b2b9bb}
.sergio-hero{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-1}
.hero-red .red-meta{position:relative;font-size:8px;color:#98a0a7}
.hero-red h1{color:var(--accent);font-size:clamp(100px,13.5vw,235px);margin-top:30px;line-height:.85;width:45%;letter-spacing:-.035em}
.hero-red .red-footer{display:flex;justify-content:space-between;align-items:end;position:absolute;bottom:12%;left:4vw;right:4vw;margin:0}
.hero-red .red-footer a{color:#c2c9cd;font-size:10px}
.hero-red .red-footer p{font-size:9px}
.red-signal .case-kicker{display:block;color:var(--accent);font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(25px,2.5vw,42px);line-height:1;letter-spacing:-.02em;margin-bottom:5px}
.red-signal .index-row>span:first-child,.red-signal .row-arrow,.red-signal .section-meta>span:first-child{color:var(--accent)}
.red-signal .index-row{border-top-color:#c9b6a7}
.red-signal .index-row:hover .row-arrow{transform:translate(4px,-4px)}
.red-signal .more{border-top:5px solid var(--accent)}
.red-signal .more-grid a:hover{color:var(--accent)}
.red-signal .brief{border-top:1px solid #c9b6a7}
.red-signal .brief h2,.red-signal .brief h3,.red-signal .brief summary{color:var(--accent)}
.red-signal .case-opening{background:var(--paper);padding-top:30px}
.red-signal .case-opening-kicker{font-size:clamp(35px,5vw,80px);margin:35px 0 8px}
.red-signal .case-client{color:#6c5f57}
.red-signal .case-headline{margin-top:0}
.red-signal .case-top{border-bottom:1px solid #c9b6a7}
.red-signal .case-top>a{color:var(--accent)}
.red-signal .case-section-label>span,.red-signal figcaption,.red-signal .next,.red-signal .thinking summary{color:var(--accent)}
.red-signal .film-thumb b,.red-signal .visual-thumb>span{background:var(--accent);color:#111}
.red-signal .film-thumb{border-bottom:3px solid var(--accent)}
.red-signal .footer-cta{color:var(--accent)}
.red-signal a:focus-visible,.red-signal button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
@media(max-width:760px){.hero-red{min-height:740px;padding:20px 5vw}
.sergio-hero{object-position:57% center}
.hero-red:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#03081199,transparent 75%);z-index:-1}
.hero-red h1{font-size:23vw;width:65%;margin-top:45px}
.hero-red .red-meta span:last-child{display:none}
.hero-red .red-footer{left:5vw;right:5vw;bottom:35px}
.hero-red .red-footer a{max-width:120px}
.red-signal .case-opening-kicker{font-size:40px}
.red-signal .case-kicker{font-size:27px}}
.red-signal .case-prefix{display:block;color:var(--accent);font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(35px,5vw,80px);margin:35px 0 8px;line-height:1;letter-spacing:-.02em}
.red-signal .other-kicker{display:block;color:var(--accent);font-family:Impact,'Arial Narrow',sans-serif;font-size:26px;margin:0 0 12px}
.red-signal .more-grid img{margin-bottom:15px}
@media(max-width:760px){.red-signal .case-prefix{font-size:40px}}
.red-signal .other-title{display:block;font-family:Impact,Arial,sans-serif;font-size:32px;line-height:1.05;margin-bottom:20px;max-width:22ch}
.red-signal .brand span{white-space:nowrap}
.red-signal .hero-red .red-footer{align-items:end}
.red-signal .hero-red .red-footer>a{font-size:12px;border-bottom:1px solid var(--accent);padding-bottom:9px;color:var(--accent);text-align:left}
.red-signal .hero-red .red-footer>p{text-align:right}
.red-signal .contact-links{display:flex;gap:7vw;padding:30px 0 40px;font-family:Arial,Helvetica,sans-serif;font-size:11px;letter-spacing:.05em}
.red-signal .contact-links a{color:var(--accent)}
.red-signal .contact-links span{display:block;color:#efeee8;font-size:17px;margin-top:12px;letter-spacing:0}
.red-signal .contact-links a:hover span{text-decoration:underline}
@media(max-width:760px){.red-signal .brand span{font-size:7px}
.red-signal .hero-red .red-footer>a{font-size:10px;max-width:180px}
.red-signal .contact-links{flex-direction:column;gap:25px}
.red-signal .contact-links span{font-size:16px}}
.red-signal .brief details summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:12px 0;border-bottom:1px solid #c9b6a7;cursor:pointer;font-size:11px}
.red-signal .credentials-toggle:after{content:'+';font-size:20px}
.red-signal details[open] .credentials-toggle:after{content:'−'}
.red-signal .brief details>a{display:inline-block;min-height:44px;padding:15px 0;color:var(--accent);font-size:12px;text-decoration:underline}
.red-signal .case-hero{margin-left:0;width:100%}
.red-signal .case-hero img{display:block;width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:2.4;object-fit:cover}
.red-signal .case-motion{display:block}
.red-signal .case-section-label{margin-bottom:30px}
.red-signal .case-section-label h2{font-size:clamp(36px,4.5vw,80px);max-width:22ch;line-height:1;letter-spacing:-.025em}
.red-signal .films{display:block}
.red-signal .film-item{margin:0 0 45px}
.red-signal .films .film-item:first-child{grid-column:auto}
.red-signal .film-thumb,.red-signal .films iframe{width:100%;aspect-ratio:16/9;height:auto;display:block}
.red-signal .film-thumb img{width:100%;height:100%;object-fit:cover}
.red-signal .case-visuals .visuals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:8px;gap:20px;align-items:start}
.red-signal .visual-item,.red-signal .visual-item:first-child,.red-signal .visual-item:nth-child(5n){grid-column:auto;margin:0}
.red-signal .visual-thumb{display:block;width:100%;background:transparent}
.red-signal .visual-thumb img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.red-signal .visual-item figcaption{margin-top:12px}
.red-signal .case-awards{display:flex;gap:25px;flex-wrap:wrap;margin:12px 0 25px;padding:12px 0;border-top:1px solid #c9b6a7;border-bottom:1px solid #c9b6a7;font-size:12px}
.red-signal .case-awards p{margin:0}
.red-signal .case-awards strong{color:var(--accent)}
.red-signal .case-results{padding:60px 4vw 70px;background:#151313;color:#f0ece2}
.red-signal .results-label{font-size:10px;color:var(--accent)}
.red-signal .case-results h2{font-family:Impact,'Arial Narrow',sans-serif;font-size:clamp(40px,5vw,85px);line-height:1;max-width:22ch;font-weight:400;margin:30px 0 45px}
.red-signal .results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4vw}
.red-signal .results-grid article{border-top:1px solid #65554c;padding-top:25px}
.red-signal .results-grid strong{font-family:Impact,Arial,sans-serif;font-size:clamp(55px,7vw,120px);color:var(--accent);font-weight:400}
.red-signal .results-grid h3{font-size:18px;margin:15px 0}
.red-signal .results-grid p{font-size:14px;line-height:1.5;max-width:32ch;color:#c8c2bb}
.red-signal .case-results>a{display:inline-block;margin-top:35px;font-size:10px;color:#c8c2bb;text-decoration:underline}
@media(max-width:1000px){.red-signal .case-visuals .visuals{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.red-signal .case-hero img{aspect-ratio:1.6;min-height:0}
.red-signal .case-visuals .visuals{grid-template-columns:1fr}
.red-signal .results-grid{grid-template-columns:1fr;gap:30px}
.red-signal .case-results{padding:40px 6vw}
.red-signal .case-awards{font-size:11px}
.red-signal .case-section-label h2{font-size:40px}}
.red-signal .case-motion{padding-bottom:28px}
.red-signal .case-motion .film-item:last-child{margin-bottom:0}
.red-signal .case-visuals{padding-top:28px;position:relative}
.red-signal .case-visuals:before{content:'';position:absolute;top:0;left:4vw;right:4vw;height:1px;background:#c9b6a7}
.red-signal .case-visuals .case-section-label{margin-bottom:24px}
@media(max-width:760px){.red-signal .case-motion{padding-bottom:24px}
.red-signal .case-visuals{padding-top:24px}
.red-signal .case-visuals:before{left:5vw;right:5vw}}
@media(max-width:760px){.red-signal .hero-red .sergio-hero{object-position:30% center}
.red-signal .visual-thumb>span{position:static;display:block;width:100%;text-align:right;padding:12px 14px;min-height:44px}
.red-signal .site-header nav a{display:flex;align-items:center;min-height:44px}
.red-signal .case-top>a{display:flex;align-items:center;min-height:44px}
.red-signal .case-top select{min-height:44px}
.red-signal .hero-red .red-footer>a{min-height:44px;display:flex;align-items:center}
.red-signal .case-section-label h2{font-size:clamp(32px,9vw,40px)}}
.red-signal .ai-credit{display:block;text-align:right;color:#efeee8;font-family:Arial,Helvetica,sans-serif;font-size:9px;letter-spacing:.07em;line-height:1.5}
.red-signal .ai-credit small{font-size:8px;color:var(--accent);margin-top:4px}
.red-signal .ai-credit:hover{color:var(--accent)}
@media(max-width:760px){.red-signal .ai-credit{font-size:7px;max-width:130px}
.red-signal .ai-credit small{font-size:7px}}
.red-signal .ai-credit{max-width:310px}
.red-signal .ai-credit small{font-size:7px;line-height:1.6;letter-spacing:.04em}
@media(max-width:760px){.red-signal .ai-credit{max-width:150px}
.red-signal .ai-credit small{font-size:6px}}
.red-signal .hero-red .sergio-home-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;z-index:-1}
@media(max-width:760px){.red-signal .hero-red .sergio-home-video{object-position:30% center}}
html{scroll-padding-top:24px}
.media-missing{display:grid;place-items:center;background:#ded8cc;min-height:100px;color:#655c52;font-size:11px}

/* A full-width lead item, followed by a configurable media grid. */
.red-signal .films{display:grid;grid-template-columns:repeat(var(--film-columns,2),minmax(0,1fr));gap:28px 24px;align-items:start}
.red-signal .films .film-item{margin:0;min-width:0}
.red-signal .films .film-item:first-child{grid-column:1/-1}
.red-signal .case-visuals .visuals{grid-template-columns:repeat(var(--gallery-columns,3),minmax(0,1fr))}
.red-signal .case-visuals .visual-item:first-child{grid-column:1/-1}
@media(max-width:760px){.red-signal .films,.red-signal .case-visuals .visuals{grid-template-columns:1fr;gap:24px}.red-signal .films .film-item:first-child,.red-signal .case-visuals .visual-item:first-child{grid-column:1}}

.red-signal .case-motion .films{display:block}
.red-signal .case-extra-films{padding:0 4vw 28px}
.red-signal .secondary-films .film-item:first-child{grid-column:auto}
@media(max-width:760px){.red-signal .case-extra-films{padding:0 5vw 24px}}

.red-signal .secondary-films,.red-signal .case-visuals .visuals{grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-flow:row}
.red-signal .secondary-films .film-item,.red-signal .secondary-films .film-item:first-child,.red-signal .case-visuals .visual-item,.red-signal .case-visuals .visual-item:first-child{grid-column:span var(--item-span,2)}
@media(max-width:760px){.red-signal .secondary-films,.red-signal .case-visuals .visuals{grid-template-columns:1fr}.red-signal .secondary-films .film-item,.red-signal .secondary-films .film-item:first-child,.red-signal .case-visuals .visual-item,.red-signal .case-visuals .visual-item:first-child{grid-column:1}}

.red-signal .gallery-film .film-thumb,.red-signal .gallery-film iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0}.red-signal .gallery-film .film-thumb img{width:100%;height:100%;object-fit:cover}

.red-signal .film-thumb,.red-signal .films iframe,.red-signal .gallery-film .film-thumb,.red-signal .gallery-film iframe{aspect-ratio:var(--video-ratio,16/9);height:auto}.red-signal .case-motion .vertical-film{max-width:480px;margin-inline:auto}.red-signal .gallery-film .film-thumb img{aspect-ratio:var(--video-ratio,16/9);object-fit:cover}
@media(min-width:761px){.red-signal .results-grid>article:last-child:nth-child(3n+1):not(:first-child){grid-column:2}}

.red-signal .case-end .previous,.red-signal .case-end .next{font-family:Arial,Helvetica,sans-serif;font-size:20px;color:var(--accent);min-height:44px;display:flex;align-items:center}.red-signal .case-end a:hover{text-decoration:underline}@media(max-width:600px){.red-signal .case-end .previous,.red-signal .case-end .next{font-size:13px}}

.gallery-lightbox{border:0;padding:55px 20px 20px;background:#151313;color:#efeee8;max-width:96vw;max-height:95svh}.gallery-lightbox::backdrop{background:#000d}.gallery-lightbox img{max-width:90vw;max-height:80svh;width:auto;height:auto;object-fit:contain;margin:auto}.gallery-close{position:absolute;top:8px;right:15px;min-height:44px;color:#e84b2c;font-size:12px;letter-spacing:.06em}.red-signal button.visual-thumb{cursor:zoom-in}

/* Keep mixed media in editor order, aligned at the top of each row. */
.red-signal .case-visuals .visuals{grid-auto-rows:auto;align-items:start}

@media(max-width:760px){
 .red-signal .case-end{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}
 .red-signal .case-end .previous,.red-signal .case-end .next{white-space:nowrap;gap:4px;font-size:clamp(11px,3.2vw,13px)}
}

.red-signal .case-credits{display:flex;flex-wrap:wrap;gap:12px 32px;margin:12px 0 28px;font:12px/1.5 Arial,Helvetica,sans-serif}
.red-signal .case-credits strong{color:var(--accent);font-weight:400}

/* Static tiled grain adds texture without another video or animation. */
.red-signal .hero-red:has(.sergio-home-video)::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:url("assets/home-grain.png") repeat;background-size:192px 192px;opacity:.22;mix-blend-mode:soft-light}
.red-signal .hero-red .red-meta,.red-signal .hero-red h1,.red-signal .hero-red .red-footer{z-index:1}
