/* Portfólio de mídias: quatro serviços e projetos associados. */
.hero{--hero-accent:var(--mint)}
.hero h1,.hero .service-word,.hero .hero-eyebrow,.hero .hero-footer,.hero .hero-side,.hero .circle-link{color:var(--hero-accent);transition:color .35s,border-color .35s}
.hero .live-dot{background:var(--hero-accent);box-shadow:none;transition:background .35s}
.hero .circle-link,.hero .motion-toggle{border-color:var(--hero-accent)}
.hero .circle-link:hover{background:var(--hero-accent);color:var(--black)}
.hero .hero-footer{border-color:var(--hero-accent)}
.about .section-top,.clients .section-top{justify-content:flex-end}
.about-carousel{background:#1e2922}
.about-slides{position:absolute;inset:0}
.about-photo .about-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease;transform:none}
.about-photo .about-slide.is-active{opacity:1}
.about-photo:hover .about-slide{transform:none}
.about-photo>.about-photo-caption{padding:18px 20px 67px;pointer-events:none}
.about-carousel-controls{position:absolute;z-index:2;left:20px;right:20px;bottom:15px;display:flex;justify-content:space-between;align-items:center;color:var(--mint)}
.about-carousel-controls>button{width:34px;height:34px;border:1px solid rgba(197,223,199,.7);border-radius:50%;background:rgba(2,2,3,.4);font-size:17px}
.about-carousel-controls>button:hover{background:var(--mint);color:var(--black)}
.about-dots{display:flex;align-items:center;gap:8px}
.about-dots button{height:24px;width:24px;border:0;padding:8px;background:transparent}
.about-dots button:after{content:'';display:block;width:8px;height:8px;background:transparent;border:1px solid var(--mint);border-radius:50%}
.about-dots button[aria-current=true]:after{background:var(--mint)}
.services{grid-template-columns:1fr 1.12fr;column-gap:9vw;row-gap:32px;align-items:start}
.service-intro{grid-column:1;grid-row:1}
.service-list{grid-column:2;grid-row:1 / span 2}
.service-media{grid-column:1;grid-row:2;min-width:0}
.media-panel{animation:media-reveal .3s ease}
.media-panel[hidden]{display:none}
.media-panel video{width:100%;height:auto;max-height:560px;display:block;background:#111613;object-fit:contain}
.media-caption{font-size:9px;line-height:1.6;color:#415c45;margin-top:12px}
.media-panel#media-ia video,.media-panel#media-social video{max-height:560px;aspect-ratio:9/16;width:auto;max-width:100%;margin:auto}
.project-photos{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.project-photos>a:first-child{grid-column:1 / -1}
.project-photos img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;transition:filter .2s}
.project-photos a:hover img{filter:brightness(1.07)}
.person-photo.person-logo{border-radius:0;padding:8px}
.person-photo.person-logo img{object-fit:contain}
.person-photo img.joao-portrait{position:absolute;width:184.6%;max-width:none;height:230.6%;left:0;top:-43.75%;object-fit:fill}
.testimonial-track{scroll-behavior:smooth}
.stat-value{min-width:0}
@keyframes media-reveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){
 .services{display:grid;grid-template-columns:1fr;gap:0}
 .service-intro,.service-list,.service-media{grid-column:1;grid-row:auto}
 .service-media{margin-top:28px}
 .service-intro h3{margin-bottom:30px}
 .media-panel video{max-height:560px}
 .stat{gap:20px}
 .stat-value{font-size:clamp(60px,18vw,82px)}
 .about-photo>.about-photo-caption{font-size:8px;padding-left:15px;padding-right:15px}
 .about-carousel-controls{left:15px;right:15px;bottom:12px}
}
@media(prefers-reduced-motion:reduce){.about-photo .about-slide{transition:none}.media-panel{animation:none}.testimonial-track{scroll-behavior:auto}}

@media(max-width:360px){
 .stat{min-width:0;gap:12px}
 .stat-value{font-size:clamp(48px,16vw,57px)}
}
