.actor-hero{position:relative;min-height:0;aspect-ratio:2560/1708;background:#17100b;overflow:hidden;color:#fff}
.actor-hero-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center center}
.actor-hero-copy{position:absolute;z-index:2;top:50%;right:clamp(4vw,7vw,110px);width:min(43vw,650px);padding:clamp(28px,3.6vw,54px);transform:translateY(-50%);border:1px solid rgba(244,231,201,.16);border-radius:36px 18px 42px 22px;background:rgba(20,16,12,.64);box-shadow:0 24px 70px rgba(0,0,0,.22);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.actor-hero-kicker{margin:0 0 18px;color:#b7d4b8;font:800 11px/1.2 "Nunito Sans",sans-serif;letter-spacing:.25em}
.actor-hero h1{margin:0 0 24px;color:#fff;font:800 clamp(39px,4.2vw,68px)/.99 "Nunito Sans",sans-serif;letter-spacing:-.045em}
.actor-hero h1 em{color:#e4bd7b;font-style:normal}
.actor-hero-copy>p:not(.actor-hero-kicker){max-width:590px;margin:0 0 15px;color:rgba(255,255,255,.9);font:600 clamp(14px,1.15vw,17px)/1.65 "Nunito Sans",sans-serif}
.actor-hero-copy ul{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0 0;padding:0;list-style:none}
.actor-hero-copy li{padding:8px 14px;border:1px solid rgba(231,198,139,.58);border-radius:999px;background:rgba(16,33,24,.42);font:800 10px/1 "Nunito Sans",sans-serif;letter-spacing:.04em}
.actor-hero-spark{position:absolute;z-index:3;color:#e4bd7b;text-shadow:0 0 20px rgba(228,189,123,.45)}
.actor-hero-spark-one{top:12%;left:47%;font-size:27px}.actor-hero-spark-two{right:2.6%;top:14%;font-size:26px}
.actor-transition{position:relative;z-index:3;min-height:190px;margin:-48px 0 -28px;display:flex;align-items:center;justify-content:center;gap:28px;padding:45px 7vw 52px;text-align:center;color:#173b2b;background:linear-gradient(180deg,#e8dfc9 0%,#f6f1e6 34%,#f8f5ed 68%,#eee8dc 100%);overflow:hidden;box-shadow:0 -18px 42px rgba(20,54,39,.18),0 18px 38px rgba(112,91,57,.12)}
.actor-transition:before,.actor-transition:after{content:"";position:absolute;left:-5%;width:110%;height:70px;pointer-events:none}.actor-transition:before{top:-48px;background:#173b2b;border-radius:0 0 50% 50%;opacity:.72}.actor-transition:after{bottom:-53px;background:#f7f4ec;border-radius:50% 50% 0 0}
.actor-transition p{position:relative;z-index:1;margin:0;padding:16px 64px;display:flex;flex-direction:column;gap:3px}
.actor-transition small{font:800 10px/1.2 "Nunito Sans",sans-serif;letter-spacing:.32em;color:#7d653d}
.actor-transition strong{font:700 clamp(30px,3.2vw,52px)/1 "Caveat",cursive;letter-spacing:.01em;white-space:nowrap}
.actor-transition-line{width:min(16vw,210px);height:1px;background:linear-gradient(90deg,transparent,#9b7b43)}
.actor-transition-line:last-child{background:linear-gradient(90deg,#9b7b43,transparent)}
.actor-intro{padding:100px 10vw;text-align:center;background:#f8f6f0}.actor-intro h2{max-width:850px;margin:14px auto 20px;font:800 clamp(40px,5vw,68px)/1.02 "Nunito Sans",sans-serif;letter-spacing:-.045em}.actor-intro>p:last-child{max-width:680px;margin:auto;color:#636865;font-size:17px;line-height:1.7}
.actor-gallery{padding:105px 7vw 120px;background:#f8f6f0;text-align:center}.actor-gallery h2{margin:10px 0 45px;font:800 clamp(42px,5vw,70px)/1 "Nunito Sans",sans-serif;letter-spacing:-.045em}.actor-gallery-grid{max-width:1320px;margin:auto;display:grid;grid-template-columns:1fr 1fr 1fr;grid-auto-rows:270px;gap:18px}.actor-gallery figure{margin:0;border-radius:28px;overflow:hidden;background:#d8bd8f;cursor:zoom-in;position:relative}.actor-gallery figure:after{content:"＋ ampliar";position:absolute;right:14px;bottom:14px;padding:8px 12px;border-radius:999px;background:rgba(8,7,12,.72);color:#fff;font:700 10px "Nunito Sans",sans-serif;letter-spacing:.08em;opacity:0;transform:translateY(5px);transition:.2s ease}.actor-gallery figure:hover:after,.actor-gallery figure:focus-within:after{opacity:1;transform:none}.actor-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.actor-gallery figure:hover img{transform:scale(1.025)}.actor-gallery .gallery-feature{grid-column:1/-1;grid-row:span 2}.actor-gallery .gallery-feature img{object-fit:contain;background:#08070c}.actor-gallery .gallery-wide{grid-column:span 2}.actor-gallery .gallery-tall{grid-row:span 2}.actor-gallery .gallery-medium{grid-column:span 2}.actor-gallery .gallery-portrait img{object-position:center top}
.gallery-lightbox{position:fixed;z-index:100;inset:0;display:grid;grid-template-columns:minmax(50px,1fr) minmax(0,1100px) minmax(50px,1fr);align-items:center;padding:35px;background:rgba(8,7,12,.94);opacity:0;visibility:hidden;transition:.22s ease}.gallery-lightbox.open{opacity:1;visibility:visible}.gallery-lightbox>img{grid-column:2;max-width:100%;max-height:calc(100vh - 90px);width:auto;height:auto;object-fit:contain;justify-self:center;border-radius:8px;box-shadow:0 22px 70px rgba(0,0,0,.5)}.lightbox-close,.lightbox-arrow{border:0;background:rgba(255,255,255,.12);color:#fff;cursor:pointer}.lightbox-close{position:absolute;right:24px;top:20px;width:46px;height:46px;border-radius:50%;font-size:34px;line-height:1}.lightbox-arrow{width:48px;height:70px;border-radius:24px;font-size:42px;justify-self:center}.lightbox-previous{grid-column:1}.lightbox-next{grid-column:3}.lightbox-count{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);color:#fff;font:700 12px "Nunito Sans",sans-serif;letter-spacing:.12em}.lightbox-close:hover,.lightbox-arrow:hover{background:rgba(255,255,255,.24)}body.lightbox-open{overflow:hidden}
@media(max-width:820px){.actor-hero{min-height:auto;padding-top:72vw;background:#21160f}.actor-hero-photo{height:72vw;min-height:390px;object-position:34% center}.actor-hero-copy{position:relative;top:auto;right:auto;width:auto;margin:-30px 5vw 0;padding:30px 26px 34px;transform:none;border-radius:28px 14px 30px 18px;background:rgba(24,18,13,.93);backdrop-filter:none;-webkit-backdrop-filter:none}.actor-hero h1{font-size:clamp(36px,9vw,54px)}.actor-hero-spark-one{top:6%;left:auto;right:8%}.actor-hero-spark-two{display:none}.actor-transition{min-height:130px;margin:-25px 0 -18px;gap:13px;padding:32px 4vw 36px}.actor-transition:before,.actor-transition:after{height:38px}.actor-transition:before{top:-27px}.actor-transition:after{bottom:-29px}.actor-transition p{padding:10px 18px}.actor-transition strong{font-size:clamp(23px,5.8vw,36px);white-space:normal}.actor-transition-line{display:none}.actor-intro{padding:75px 7vw}.actor-gallery{padding:75px 5vw 85px}.actor-gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:205px;gap:10px}.actor-gallery figure{border-radius:18px}.actor-gallery .gallery-feature{grid-column:span 2;grid-row:span 2}.actor-gallery .gallery-wide,.actor-gallery .gallery-medium{grid-column:span 2}.actor-gallery .gallery-tall{grid-row:span 2}}
@media(max-width:600px){.gallery-lightbox{grid-template-columns:42px minmax(0,1fr) 42px;padding:18px 8px}.lightbox-arrow{width:38px;height:54px;font-size:32px}.lightbox-close{right:12px;top:12px}.actor-gallery figure:after{opacity:1;transform:none;padding:6px 9px;font-size:8px}}

/* Galeria compacta: uma imagem principal e miniaturas expansíveis */
.actor-gallery-grid{max-width:1120px;grid-template-columns:repeat(5,1fr);grid-auto-rows:145px;gap:12px}
.actor-gallery .gallery-feature{grid-column:1/-1;grid-row:auto;height:520px;margin-bottom:10px}
.actor-gallery figure:not(.gallery-feature){grid-column:span 1;grid-row:span 1}
@media(max-width:820px){.actor-gallery-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:120px;gap:8px}.actor-gallery figure{border-radius:14px}.actor-gallery .gallery-feature{grid-column:1/-1;grid-row:auto;height:360px;margin-bottom:8px}.actor-gallery figure:not(.gallery-feature){grid-column:span 1;grid-row:span 1}}

/* Galeria leve: uma foto principal e miniaturas pequenas/medias sem sobreposicao */
.actor-gallery-grid{max-width:1180px;grid-template-columns:repeat(8,minmax(0,1fr));grid-auto-rows:94px;grid-auto-flow:row;gap:20px 24px;align-items:stretch}
.actor-gallery .gallery-feature{grid-column:1/-1;grid-row:auto;height:500px;margin:0 0 18px}
.actor-gallery figure:not(.gallery-feature){grid-column:span 1;grid-row:span 1}
.actor-gallery .gallery-medium,.actor-gallery .gallery-wide{grid-column:span 2}
.actor-gallery .gallery-tall{grid-column:span 1;grid-row:span 2}
.actor-gallery figure:after{content:"↗ trocar com a principal"}
.actor-gallery .gallery-feature:after{content:"＋ ampliar"}
.actor-gallery figure.gallery-swap-out img{animation:gallerySwapOut .32s ease both}
.actor-gallery figure.gallery-swap-in img{animation:gallerySwapIn .55s cubic-bezier(.2,.8,.2,1) both}
.actor-gallery figure{box-shadow:0 10px 28px rgba(27,46,35,.08)}
.actor-gallery figure:focus-visible{outline:3px solid #9b7b43;outline-offset:4px}
@keyframes gallerySwapOut{to{opacity:0;transform:scale(.92) rotate(-1deg)}}
@keyframes gallerySwapIn{0%{opacity:0;transform:scale(.88) translateY(18px)}70%{transform:scale(1.015) translateY(0)}100%{opacity:1;transform:scale(1)}}
@media(max-width:820px){.actor-gallery-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:88px;gap:12px}.actor-gallery .gallery-feature{grid-column:1/-1;height:350px;margin-bottom:12px}.actor-gallery .gallery-medium,.actor-gallery .gallery-wide{grid-column:span 2}.actor-gallery .gallery-tall{grid-column:span 1;grid-row:span 2}}
@media(max-width:520px){.actor-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:82px}.actor-gallery .gallery-feature{height:290px}.actor-gallery .gallery-medium,.actor-gallery .gallery-wide{grid-column:span 2}}
@media(prefers-reduced-motion:reduce){.actor-gallery figure.gallery-swap-out img,.actor-gallery figure.gallery-swap-in img{animation:none}}

/* Carrossel teatral — proposta 2 */
.actor-gallery{overflow:hidden;background:radial-gradient(circle at 50% 28%,#fff 0,#f8f6f0 43%,#eee8dc 100%)}
.theatre-carousel{position:relative;max-width:1240px;margin:auto;padding:0 72px}
.actor-gallery-grid{display:block;position:relative;max-width:none;height:640px;margin:0;isolation:isolate}
.actor-gallery figure,.actor-gallery .gallery-feature,.actor-gallery figure:not(.gallery-feature),.actor-gallery .gallery-medium,.actor-gallery .gallery-wide,.actor-gallery .gallery-tall{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;border-radius:34px;opacity:0;visibility:hidden;transform:translateX(9%) scale(.92);transition:opacity .55s ease,transform .75s cubic-bezier(.2,.8,.2,1),visibility .75s;box-shadow:0 32px 80px rgba(26,40,31,.2);background:#090a09;cursor:zoom-in}
.actor-gallery figure.is-active{z-index:2;opacity:1;visibility:visible;transform:none}
.actor-gallery figure.was-active{z-index:1;opacity:0;visibility:visible;transform:translateX(-9%) scale(.92)}
.actor-gallery figure img,.actor-gallery .gallery-feature img{width:100%;height:100%;object-fit:contain;background:#090a09;transform:none}
.actor-gallery figure:hover img{transform:none}
.actor-gallery figure:after{content:"＋ ampliar";opacity:1;transform:none}
.theatre-arrow{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:58px;height:58px;border:1px solid rgba(23,59,43,.18);border-radius:50%;background:#f7f2e8;color:#173b2b;font:300 42px/1 serif;box-shadow:0 12px 28px rgba(23,59,43,.13);cursor:pointer;transition:.25s ease}
.theatre-arrow:hover{background:#173b2b;color:#fff;transform:translateY(-50%) scale(1.07)}
.theatre-prev{left:0}.theatre-next{right:0}
.theatre-carousel-footer{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:22px;padding:24px 8px 0;color:#173b2b}
.theatre-progress{height:2px;background:rgba(23,59,43,.13);overflow:hidden}.theatre-progress i{display:block;width:6.666%;height:100%;background:#9b7b43;transition:width .55s ease}
.theatre-counter{font:800 12px "Nunito Sans",sans-serif;letter-spacing:.16em}.theatre-carousel-footer small{font:700 10px "Nunito Sans",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#7d7568}
@media(max-width:820px){.theatre-carousel{padding:0 46px}.actor-gallery-grid{height:430px}.actor-gallery figure,.actor-gallery .gallery-feature,.actor-gallery figure:not(.gallery-feature),.actor-gallery .gallery-medium,.actor-gallery .gallery-wide,.actor-gallery .gallery-tall{height:100%;border-radius:22px}.theatre-arrow{width:42px;height:42px;font-size:32px}.theatre-carousel-footer{grid-template-columns:1fr auto}.theatre-carousel-footer small{display:none}}
@media(max-width:520px){.theatre-carousel{padding:0 34px}.actor-gallery-grid{height:330px}.theatre-arrow{width:34px;height:34px;font-size:27px}.theatre-prev{left:-2px}.theatre-next{right:-2px}}

/* Galeria aberta — todas as imagens visiveis */
.theatre-carousel{max-width:1240px;padding:0}
.theatre-arrow,.theatre-carousel-footer{display:none}
.actor-gallery-grid{display:grid;position:static;height:auto;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:112px;grid-auto-flow:row dense;gap:22px}
.actor-gallery figure,.actor-gallery .gallery-feature,.actor-gallery figure:not(.gallery-feature),.actor-gallery .gallery-medium,.actor-gallery .gallery-wide,.actor-gallery .gallery-tall{position:relative;inset:auto;display:block;width:auto;height:auto;margin:0;border-radius:24px;opacity:1;visibility:visible;transform:none;transition:transform .35s ease,box-shadow .35s ease;box-shadow:0 14px 35px rgba(26,40,31,.12);background:#090a09;cursor:zoom-in}
.actor-gallery .gallery-feature{grid-column:span 4;grid-row:span 4}
.actor-gallery figure:not(.gallery-feature){grid-column:span 1;grid-row:span 1}
.actor-gallery .gallery-medium,.actor-gallery .gallery-wide{grid-column:span 2;grid-row:span 2}
.actor-gallery .gallery-tall{grid-column:span 1;grid-row:span 2}
.actor-gallery figure img,.actor-gallery .gallery-feature img{width:100%;height:100%;object-fit:cover;background:#090a09}
.actor-gallery .gallery-feature img{object-fit:contain}
.actor-gallery figure:hover{transform:translateY(-5px);box-shadow:0 22px 48px rgba(26,40,31,.18)}
.actor-gallery figure:hover img{transform:scale(1.025)}
.actor-gallery figure:after{content:"＋ ampliar"}
@media(max-width:820px){.theatre-carousel{padding:0}.actor-gallery-grid{display:grid;height:auto;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:100px;gap:13px}.actor-gallery figure,.actor-gallery .gallery-feature,.actor-gallery figure:not(.gallery-feature),.actor-gallery .gallery-medium,.actor-gallery .gallery-wide,.actor-gallery .gallery-tall{height:auto;border-radius:17px}.actor-gallery .gallery-feature{grid-column:span 4;grid-row:span 3}.actor-gallery .gallery-medium,.actor-gallery .gallery-wide{grid-column:span 2;grid-row:span 2}.actor-gallery .gallery-tall{grid-column:span 1;grid-row:span 2}}
@media(max-width:520px){.theatre-carousel{padding:0}.actor-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:88px;gap:10px}.actor-gallery .gallery-feature{grid-column:span 3;grid-row:span 3}.actor-gallery .gallery-medium,.actor-gallery .gallery-wide{grid-column:span 2;grid-row:span 2}}
.photo-credit{margin:24px auto 0;text-align:center;color:#6d746d;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}

/* Preserve the complete original portrait at every viewport size. */
@media(max-width:820px){
  .actor-hero{aspect-ratio:auto;padding-top:66.72vw}
  .actor-hero-photo{height:auto;min-height:0;aspect-ratio:2560/1708;object-fit:contain;object-position:center center}
}
.actor-video-modal{position:fixed;z-index:200;inset:0;display:none;place-items:center;padding:70px 4vw 35px;background:rgba(8,7,12,.94);backdrop-filter:blur(8px)}
.actor-video-modal.is-open{display:grid}.actor-video-modal-inner{position:relative;width:min(1100px,92vw)}
.actor-video-modal video{display:block;width:100%;max-height:78vh;border:1px solid rgba(228,189,123,.45);border-radius:22px;background:#000;box-shadow:0 28px 90px rgba(0,0,0,.55)}
.actor-video-modal-close{position:absolute;right:0;top:-50px;width:44px;height:44px;border:1px solid rgba(255,255,255,.28);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font:300 32px/1 sans-serif;cursor:pointer}
.actor-video-modal-title{margin:14px 0 0;color:#fff;text-align:center;font:700 14px "Nunito Sans",sans-serif;letter-spacing:.08em}
